@lit-protocol/vincent-ability-aerodrome-swap 0.1.0 → 0.2.0-alpha1
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 +10 -0
- package/dist/CHANGELOG.md +19 -0
- package/dist/package.json +6 -5
- package/dist/src/generated/lit-action.js +2 -2
- package/dist/src/generated/vincent-ability-metadata.json +1 -1
- package/dist/src/generated/vincent-bundled-ability.js +5 -9
- package/dist/src/generated/vincent-bundled-ability.js.map +1 -1
- package/dist/src/index.js +2 -7
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib/ability-checks/check-erc20-allowance.js +3 -7
- package/dist/src/lib/ability-checks/check-erc20-allowance.js.map +1 -1
- package/dist/src/lib/ability-checks/check-erc20-balance.js +3 -7
- package/dist/src/lib/ability-checks/check-erc20-balance.js.map +1 -1
- package/dist/src/lib/ability-checks/check-native-token-balance.js +1 -5
- package/dist/src/lib/ability-checks/check-native-token-balance.js.map +1 -1
- package/dist/src/lib/ability-checks/index.js +3 -6
- package/dist/src/lib/ability-checks/index.js.map +1 -1
- package/dist/src/lib/ability-helpers/find-supported-token-on-base.js +3 -7
- package/dist/src/lib/ability-helpers/find-supported-token-on-base.js.map +1 -1
- package/dist/src/lib/ability-helpers/get-erc20-allowance.js +3 -7
- package/dist/src/lib/ability-helpers/get-erc20-allowance.js.map +1 -1
- package/dist/src/lib/ability-helpers/get-erc20-contract.js +4 -8
- package/dist/src/lib/ability-helpers/get-erc20-contract.js.map +1 -1
- package/dist/src/lib/ability-helpers/index.js +5 -8
- package/dist/src/lib/ability-helpers/index.js.map +1 -1
- package/dist/src/lib/ability-helpers/send-aerodrome-swap-tx.js +8 -12
- package/dist/src/lib/ability-helpers/send-aerodrome-swap-tx.js.map +1 -1
- package/dist/src/lib/ability-helpers/send-erc20-approval-tx.js +11 -15
- package/dist/src/lib/ability-helpers/send-erc20-approval-tx.js.map +1 -1
- package/dist/src/lib/ability-helpers/sign-tx.js +7 -11
- package/dist/src/lib/ability-helpers/sign-tx.js.map +1 -1
- package/dist/src/lib/lit-action.js +4 -6
- package/dist/src/lib/lit-action.js.map +1 -1
- package/dist/src/lib/schemas.js +43 -46
- package/dist/src/lib/schemas.js.map +1 -1
- package/dist/src/lib/types.js +2 -5
- package/dist/src/lib/types.js.map +1 -1
- package/dist/src/lib/vincent-ability.d.ts +1 -0
- package/dist/src/lib/vincent-ability.d.ts.map +1 -1
- package/dist/src/lib/vincent-ability.js +102 -69
- package/dist/src/lib/vincent-ability.js.map +1 -1
- package/package.json +7 -5
- package/vendor/sugar-sdk-0.3.0.tgz +0 -0
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* DO NOT EDIT THIS FILE. IT IS GENERATED ON BUILD.
|
|
4
3
|
*/
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const vincent_ability_1 = require("../lib/vincent-ability");
|
|
10
|
-
const vincent_ability_metadata_json_1 = tslib_1.__importDefault(require("./vincent-ability-metadata.json"));
|
|
11
|
-
if (!vincent_ability_metadata_json_1.default.ipfsCid) {
|
|
4
|
+
import { asBundledVincentAbility } from '@lit-protocol/vincent-ability-sdk';
|
|
5
|
+
import { vincentAbility } from '../lib/vincent-ability';
|
|
6
|
+
import metadata from './vincent-ability-metadata.json';
|
|
7
|
+
if (!metadata.ipfsCid) {
|
|
12
8
|
throw new Error('ipfsCid is not defined in metadata JSON file');
|
|
13
9
|
}
|
|
14
|
-
|
|
10
|
+
export const bundledVincentAbility = asBundledVincentAbility(vincentAbility, metadata.ipfsCid);
|
|
15
11
|
//# sourceMappingURL=vincent-bundled-ability.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vincent-bundled-ability.js","sourceRoot":"","sources":["../../../src/generated/vincent-bundled-ability.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vincent-bundled-ability.js","sourceRoot":"","sources":["../../../src/generated/vincent-bundled-ability.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AAEvD,IAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACrB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.AbilityAction = exports.bundledVincentAbility = void 0;
|
|
4
|
-
var vincent_bundled_ability_1 = require("./generated/vincent-bundled-ability");
|
|
5
|
-
Object.defineProperty(exports, "bundledVincentAbility", { enumerable: true, get: function () { return vincent_bundled_ability_1.bundledVincentAbility; } });
|
|
6
|
-
var types_1 = require("./lib/types");
|
|
7
|
-
Object.defineProperty(exports, "AbilityAction", { enumerable: true, get: function () { return types_1.AbilityAction; } });
|
|
1
|
+
export { bundledVincentAbility } from './generated/vincent-bundled-ability.js';
|
|
2
|
+
export { AbilityAction } from './lib/types.js';
|
|
8
3
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAY5E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const get_erc20_allowance_1 = require("../ability-helpers/get-erc20-allowance");
|
|
5
|
-
const checkErc20Allowance = async ({ provider, tokenAddress, owner, spender, requiredAllowance, }) => {
|
|
6
|
-
const currentAllowance = await (0, get_erc20_allowance_1.getErc20Allowance)({
|
|
1
|
+
import { getErc20Allowance } from '../ability-helpers/get-erc20-allowance';
|
|
2
|
+
export const checkErc20Allowance = async ({ provider, tokenAddress, owner, spender, requiredAllowance, }) => {
|
|
3
|
+
const currentAllowance = await getErc20Allowance({
|
|
7
4
|
provider,
|
|
8
5
|
tokenAddress,
|
|
9
6
|
owner,
|
|
@@ -27,5 +24,4 @@ const checkErc20Allowance = async ({ provider, tokenAddress, owner, spender, req
|
|
|
27
24
|
currentAllowance,
|
|
28
25
|
};
|
|
29
26
|
};
|
|
30
|
-
exports.checkErc20Allowance = checkErc20Allowance;
|
|
31
27
|
//# sourceMappingURL=check-erc20-allowance.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-erc20-allowance.js","sourceRoot":"","sources":["../../../../src/lib/ability-checks/check-erc20-allowance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"check-erc20-allowance.js","sourceRoot":"","sources":["../../../../src/lib/ability-checks/check-erc20-allowance.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAG3E,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,EACxC,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,OAAO,EACP,iBAAiB,GAOlB,EAAsC,EAAE;IACvC,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC;QAC/C,QAAQ;QACR,YAAY;QACZ,KAAK;QACL,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,gBAAgB,CAAC,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC3C,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,iCAAiC,KAAK,iDAAiD,OAAO,cAAc,YAAY,EAAE;YAClI,cAAc,EAAE,OAAO;YACvB,YAAY,EAAE,YAAY;YAC1B,iBAAiB;YACjB,gBAAgB;SACjB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,OAAO;QACvB,YAAY,EAAE,YAAY;QAC1B,iBAAiB;QACjB,gBAAgB;KACjB,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const get_erc20_contract_1 = require("../ability-helpers/get-erc20-contract");
|
|
5
|
-
const checkErc20Balance = async ({ provider, pkpEthAddress, tokenAddress, requiredTokenAmount, }) => {
|
|
6
|
-
const contract = (0, get_erc20_contract_1.getErc20Contract)(tokenAddress, provider);
|
|
1
|
+
import { getErc20Contract } from '../ability-helpers/get-erc20-contract';
|
|
2
|
+
export const checkErc20Balance = async ({ provider, pkpEthAddress, tokenAddress, requiredTokenAmount, }) => {
|
|
3
|
+
const contract = getErc20Contract(tokenAddress, provider);
|
|
7
4
|
const tokenBalance = await contract.balanceOf(pkpEthAddress);
|
|
8
5
|
if (tokenBalance.lt(requiredTokenAmount)) {
|
|
9
6
|
return {
|
|
@@ -21,5 +18,4 @@ const checkErc20Balance = async ({ provider, pkpEthAddress, tokenAddress, requir
|
|
|
21
18
|
tokenBalance,
|
|
22
19
|
};
|
|
23
20
|
};
|
|
24
|
-
exports.checkErc20Balance = checkErc20Balance;
|
|
25
21
|
//# sourceMappingURL=check-erc20-balance.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-erc20-balance.js","sourceRoot":"","sources":["../../../../src/lib/ability-checks/check-erc20-balance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"check-erc20-balance.js","sourceRoot":"","sources":["../../../../src/lib/ability-checks/check-erc20-balance.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAGzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,mBAAmB,GAMpB,EAAoC,EAAE;IACrC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAE1D,MAAM,YAAY,GAAqB,MAAM,QAAQ,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAE/E,IAAI,YAAY,CAAC,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,kBAAkB,aAAa,4CAA4C,YAAY,aAAa,mBAAmB,mBAAmB,YAAY,EAAE;YAChK,YAAY;YACZ,mBAAmB;YACnB,YAAY;SACb,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,YAAY;QACZ,mBAAmB;QACnB,YAAY;KACb,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.checkNativeTokenBalance = void 0;
|
|
4
|
-
const checkNativeTokenBalance = async ({ provider, pkpEthAddress, }) => {
|
|
1
|
+
export const checkNativeTokenBalance = async ({ provider, pkpEthAddress, }) => {
|
|
5
2
|
const ethBalance = await provider.getBalance(pkpEthAddress);
|
|
6
3
|
if (ethBalance.isZero()) {
|
|
7
4
|
return {
|
|
@@ -14,5 +11,4 @@ const checkNativeTokenBalance = async ({ provider, pkpEthAddress, }) => {
|
|
|
14
11
|
ethBalance,
|
|
15
12
|
};
|
|
16
13
|
};
|
|
17
|
-
exports.checkNativeTokenBalance = checkNativeTokenBalance;
|
|
18
14
|
//# sourceMappingURL=check-native-token-balance.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-native-token-balance.js","sourceRoot":"","sources":["../../../../src/lib/ability-checks/check-native-token-balance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"check-native-token-balance.js","sourceRoot":"","sources":["../../../../src/lib/ability-checks/check-native-token-balance.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAAE,EAC5C,QAAQ,EACR,aAAa,GAId,EAA0C,EAAE;IAC3C,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAE5D,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;QACxB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,kBAAkB,aAAa,gEAAgE;SACxG,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,UAAU;KACX,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
tslib_1.__exportStar(require("./check-erc20-allowance"), exports);
|
|
5
|
-
tslib_1.__exportStar(require("./check-erc20-balance"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./check-native-token-balance"), exports);
|
|
1
|
+
export * from './check-erc20-allowance';
|
|
2
|
+
export * from './check-erc20-balance';
|
|
3
|
+
export * from './check-native-token-balance';
|
|
7
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/ability-checks/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/ability-checks/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC"}
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const sugar_sdk_1 = require("sugar-sdk");
|
|
5
|
-
const findSupportedTokenOnBase = async ({ config, chainId, tokenAddress, }) => {
|
|
6
|
-
const allTokensSupportedOnBaseMainnet = await (0, sugar_sdk_1.getListedTokens)({ config });
|
|
1
|
+
import { getListedTokens } from 'sugar-sdk';
|
|
2
|
+
export const findSupportedTokenOnBase = async ({ config, chainId, tokenAddress, }) => {
|
|
3
|
+
const allTokensSupportedOnBaseMainnet = await getListedTokens({ config });
|
|
7
4
|
return allTokensSupportedOnBaseMainnet.find((token) => token.address.toLowerCase() === tokenAddress.toLowerCase() && token.chainId === chainId);
|
|
8
5
|
};
|
|
9
|
-
exports.findSupportedTokenOnBase = findSupportedTokenOnBase;
|
|
10
6
|
//# sourceMappingURL=find-supported-token-on-base.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-supported-token-on-base.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/find-supported-token-on-base.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"find-supported-token-on-base.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/find-supported-token-on-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,WAAW,CAAC;AAEnE,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAE,EAC7C,MAAM,EACN,OAAO,EACP,YAAY,GAKb,EAAE,EAAE;IACH,MAAM,+BAA+B,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1E,OAAO,+BAA+B,CAAC,IAAI,CACzC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,CAC1F,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const get_erc20_contract_1 = require("./get-erc20-contract");
|
|
5
|
-
const getErc20Allowance = async ({ provider, tokenAddress, owner, spender, }) => {
|
|
6
|
-
const contract = (0, get_erc20_contract_1.getErc20Contract)(tokenAddress, provider);
|
|
1
|
+
import { getErc20Contract } from './get-erc20-contract';
|
|
2
|
+
export const getErc20Allowance = async ({ provider, tokenAddress, owner, spender, }) => {
|
|
3
|
+
const contract = getErc20Contract(tokenAddress, provider);
|
|
7
4
|
return await contract.allowance(owner, spender);
|
|
8
5
|
};
|
|
9
|
-
exports.getErc20Allowance = getErc20Allowance;
|
|
10
6
|
//# sourceMappingURL=get-erc20-allowance.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-erc20-allowance.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/get-erc20-allowance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-erc20-allowance.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/get-erc20-allowance.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,OAAO,GAMR,EAA6B,EAAE;IAC9B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC1D,OAAO,MAAM,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC,CAAC"}
|
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.ERC20_ABI = void 0;
|
|
4
|
-
exports.getErc20Contract = getErc20Contract;
|
|
5
|
-
const ethers_1 = require("ethers");
|
|
6
|
-
exports.ERC20_ABI = [
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
export const ERC20_ABI = [
|
|
7
3
|
'function balanceOf(address owner) external view returns (uint256)',
|
|
8
4
|
'function approve(address spender, uint256 amount) external returns (bool)',
|
|
9
5
|
'function allowance(address owner, address spender) external view returns (uint256)',
|
|
@@ -14,7 +10,7 @@ exports.ERC20_ABI = [
|
|
|
14
10
|
'function name() external view returns (string)',
|
|
15
11
|
'function symbol() external view returns (string)',
|
|
16
12
|
];
|
|
17
|
-
function getErc20Contract(tokenAddress, provider) {
|
|
18
|
-
return new
|
|
13
|
+
export function getErc20Contract(tokenAddress, provider) {
|
|
14
|
+
return new ethers.Contract(tokenAddress, ERC20_ABI, provider);
|
|
19
15
|
}
|
|
20
16
|
//# sourceMappingURL=get-erc20-contract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-erc20-contract.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/get-erc20-contract.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-erc20-contract.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/get-erc20-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,mEAAmE;IACnE,2EAA2E;IAC3E,oFAAoF;IACpF,0CAA0C;IAC1C,wDAAwD;IACxD,uEAAuE;IACvE,yFAAyF;IACzF,gDAAgD;IAChD,kDAAkD;CACnD,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,YAAoB,EAAE,QAA0C;IAC/F,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAChE,CAAC"}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
tslib_1.__exportStar(require("./send-aerodrome-swap-tx"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./send-erc20-approval-tx"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./sign-tx"), exports);
|
|
1
|
+
export * from './get-erc20-allowance';
|
|
2
|
+
export * from './get-erc20-contract';
|
|
3
|
+
export * from './send-aerodrome-swap-tx';
|
|
4
|
+
export * from './send-erc20-approval-tx';
|
|
5
|
+
export * from './sign-tx';
|
|
9
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC"}
|
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
const vincent_ability_sdk_1 = require("@lit-protocol/vincent-ability-sdk");
|
|
6
|
-
const sign_tx_1 = require("./sign-tx");
|
|
7
|
-
const sendAerodromeSwapTx = async ({ rpcUrl, chainId, pkpEthAddress, pkpPublicKey, to, value, calldata, gasBufferPercentage, baseFeePerGasBufferPercentage, alchemyGasSponsor, alchemyGasSponsorApiKey, alchemyGasSponsorPolicyId, }) => {
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { populateTransaction, sponsoredGasRawTransaction } from '@lit-protocol/vincent-ability-sdk';
|
|
3
|
+
import { signTx } from './sign-tx';
|
|
4
|
+
export const sendAerodromeSwapTx = async ({ rpcUrl, chainId, pkpEthAddress, pkpPublicKey, to, value, calldata, gasBufferPercentage, baseFeePerGasBufferPercentage, alchemyGasSponsor, alchemyGasSponsorApiKey, alchemyGasSponsorPolicyId, }) => {
|
|
8
5
|
if (alchemyGasSponsor) {
|
|
9
6
|
console.log('[sendAerodromeSwapTx] Alchemy gas sponsor is enabled');
|
|
10
7
|
if (!alchemyGasSponsorApiKey || !alchemyGasSponsorPolicyId) {
|
|
11
8
|
throw new Error('[sendAerodromeSwapTx] Alchemy gas sponsor is enabled, but API key or policy ID is not provided.');
|
|
12
9
|
}
|
|
13
|
-
return await
|
|
10
|
+
return await sponsoredGasRawTransaction({
|
|
14
11
|
pkpPublicKey,
|
|
15
12
|
to,
|
|
16
13
|
value,
|
|
@@ -25,7 +22,7 @@ const sendAerodromeSwapTx = async ({ rpcUrl, chainId, pkpEthAddress, pkpPublicKe
|
|
|
25
22
|
try {
|
|
26
23
|
return JSON.stringify({
|
|
27
24
|
status: 'success',
|
|
28
|
-
populatedTransaction: await
|
|
25
|
+
populatedTransaction: await populateTransaction({
|
|
29
26
|
to,
|
|
30
27
|
from: pkpEthAddress,
|
|
31
28
|
value,
|
|
@@ -49,11 +46,11 @@ const sendAerodromeSwapTx = async ({ rpcUrl, chainId, pkpEthAddress, pkpPublicKe
|
|
|
49
46
|
throw new Error(`[sendAerodromeSwapTx] Error populating transaction for swap: ${parsedPopulateTxResponse.error}`);
|
|
50
47
|
}
|
|
51
48
|
const { populatedTransaction } = parsedPopulateTxResponse;
|
|
52
|
-
const signedSwapTx = await
|
|
49
|
+
const signedSwapTx = await signTx(pkpPublicKey, populatedTransaction, 'aerodromeSwapSig');
|
|
53
50
|
console.log(`Broadcasting Aerodrome swap transaction (sendAerodromeSwapTx)`);
|
|
54
51
|
const swapTxResponse = await Lit.Actions.runOnce({ waitForResponse: true, name: 'aerodromeSwapTxSender' }, async () => {
|
|
55
52
|
try {
|
|
56
|
-
const rpcProvider = new
|
|
53
|
+
const rpcProvider = new ethers.providers.StaticJsonRpcProvider(rpcUrl);
|
|
57
54
|
const receipt = await rpcProvider.sendTransaction(signedSwapTx);
|
|
58
55
|
return JSON.stringify({
|
|
59
56
|
status: 'success',
|
|
@@ -75,5 +72,4 @@ const sendAerodromeSwapTx = async ({ rpcUrl, chainId, pkpEthAddress, pkpPublicKe
|
|
|
75
72
|
console.log(`Aerodrome swap transaction broadcasted (sendAerodromeSwapTx): ${txHash}`);
|
|
76
73
|
return txHash;
|
|
77
74
|
};
|
|
78
|
-
exports.sendAerodromeSwapTx = sendAerodromeSwapTx;
|
|
79
75
|
//# sourceMappingURL=send-aerodrome-swap-tx.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-aerodrome-swap-tx.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/send-aerodrome-swap-tx.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"send-aerodrome-swap-tx.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/send-aerodrome-swap-tx.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const get_erc20_contract_1 = require("./get-erc20-contract");
|
|
7
|
-
const sign_tx_1 = require("./sign-tx");
|
|
8
|
-
const sendErc20ApprovalTx = async ({ rpcUrl, chainId, pkpPublicKey, pkpEthAddress, erc20TokenAddress, spenderAddress, allowanceAmount, gasBufferPercentage, baseFeePerGasBufferPercentage, alchemyGasSponsor, alchemyGasSponsorApiKey, alchemyGasSponsorPolicyId, }) => {
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { populateTransaction, sponsoredGasContractCall } from '@lit-protocol/vincent-ability-sdk';
|
|
3
|
+
import { ERC20_ABI } from './get-erc20-contract';
|
|
4
|
+
import { signTx } from './sign-tx';
|
|
5
|
+
export const sendErc20ApprovalTx = async ({ rpcUrl, chainId, pkpPublicKey, pkpEthAddress, erc20TokenAddress, spenderAddress, allowanceAmount, gasBufferPercentage, baseFeePerGasBufferPercentage, alchemyGasSponsor, alchemyGasSponsorApiKey, alchemyGasSponsorPolicyId, }) => {
|
|
9
6
|
if (alchemyGasSponsor) {
|
|
10
7
|
console.log('[sendErc20ApprovalTx] Alchemy gas sponsor is enabled');
|
|
11
8
|
if (!alchemyGasSponsorApiKey || !alchemyGasSponsorPolicyId) {
|
|
12
9
|
throw new Error('[sendErc20ApprovalTx] Alchemy gas sponsor is enabled, but API key or policy ID is not provided.');
|
|
13
10
|
}
|
|
14
|
-
return await
|
|
11
|
+
return await sponsoredGasContractCall({
|
|
15
12
|
pkpPublicKey,
|
|
16
|
-
abi:
|
|
13
|
+
abi: ERC20_ABI,
|
|
17
14
|
contractAddress: erc20TokenAddress,
|
|
18
15
|
functionName: 'approve',
|
|
19
16
|
args: [spenderAddress, allowanceAmount],
|
|
@@ -24,7 +21,7 @@ const sendErc20ApprovalTx = async ({ rpcUrl, chainId, pkpPublicKey, pkpEthAddres
|
|
|
24
21
|
}
|
|
25
22
|
console.log('[sendErc20ApprovalTx] Estimating gas for ERC20 Approval transaction');
|
|
26
23
|
const populateTxResponse = await Lit.Actions.runOnce({ waitForResponse: true, name: '[sendErc20ApprovalTx] ERC20 approval tx gas estimation' }, async () => {
|
|
27
|
-
const erc20Interface = new
|
|
24
|
+
const erc20Interface = new ethers.utils.Interface(ERC20_ABI);
|
|
28
25
|
const approveCalldata = erc20Interface.encodeFunctionData('approve', [
|
|
29
26
|
spenderAddress,
|
|
30
27
|
allowanceAmount,
|
|
@@ -32,7 +29,7 @@ const sendErc20ApprovalTx = async ({ rpcUrl, chainId, pkpPublicKey, pkpEthAddres
|
|
|
32
29
|
try {
|
|
33
30
|
return JSON.stringify({
|
|
34
31
|
status: 'success',
|
|
35
|
-
populatedTransaction: await
|
|
32
|
+
populatedTransaction: await populateTransaction({
|
|
36
33
|
to: erc20TokenAddress,
|
|
37
34
|
from: pkpEthAddress,
|
|
38
35
|
value: '0',
|
|
@@ -56,11 +53,11 @@ const sendErc20ApprovalTx = async ({ rpcUrl, chainId, pkpPublicKey, pkpEthAddres
|
|
|
56
53
|
throw new Error(`[sendErc20ApprovalTx] Error populating transaction for approval: ${parsedPopulateTxResponse.error}`);
|
|
57
54
|
}
|
|
58
55
|
const { populatedTransaction } = parsedPopulateTxResponse;
|
|
59
|
-
const signedApprovalTx = await
|
|
56
|
+
const signedApprovalTx = await signTx(pkpPublicKey, populatedTransaction, 'erc20ApprovalSig');
|
|
60
57
|
console.log(`Broadcasting ERC20 approval transaction (sendErc20ApprovalTx)`);
|
|
61
58
|
const swapTxResponse = await Lit.Actions.runOnce({ waitForResponse: true, name: 'erc20ApprovalTxSender' }, async () => {
|
|
62
59
|
try {
|
|
63
|
-
const rpcProvider = new
|
|
60
|
+
const rpcProvider = new ethers.providers.StaticJsonRpcProvider(rpcUrl);
|
|
64
61
|
const receipt = await rpcProvider.sendTransaction(signedApprovalTx);
|
|
65
62
|
return JSON.stringify({
|
|
66
63
|
status: 'success',
|
|
@@ -82,5 +79,4 @@ const sendErc20ApprovalTx = async ({ rpcUrl, chainId, pkpPublicKey, pkpEthAddres
|
|
|
82
79
|
console.log(`[sendErc20ApprovalTx] ERC20 approval transaction broadcasted: ${txHash}`);
|
|
83
80
|
return txHash;
|
|
84
81
|
};
|
|
85
|
-
exports.sendErc20ApprovalTx = sendErc20ApprovalTx;
|
|
86
82
|
//# sourceMappingURL=send-erc20-approval-tx.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-erc20-approval-tx.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/send-erc20-approval-tx.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"send-erc20-approval-tx.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/send-erc20-approval-tx.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.signTx = void 0;
|
|
4
|
-
const ethers_1 = require("ethers");
|
|
5
|
-
const signTx = async (pkpPublicKey, tx, sigName) => {
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
export const signTx = async (pkpPublicKey, tx, sigName) => {
|
|
6
3
|
// Remove 0x prefix if it exists, Lit expects a hex string without 0x prefix
|
|
7
4
|
const publicKeyForLit = pkpPublicKey.replace(/^0x/, '');
|
|
8
5
|
console.log(`Signing using PKP Public Key: ${publicKeyForLit} (signTx)`);
|
|
9
|
-
const unsignedSerializedTx =
|
|
10
|
-
const txHash =
|
|
6
|
+
const unsignedSerializedTx = ethers.utils.serializeTransaction(tx);
|
|
7
|
+
const txHash = ethers.utils.keccak256(unsignedSerializedTx);
|
|
11
8
|
console.log('Tx hash (signTx)', txHash);
|
|
12
9
|
const signatureResponse = await Lit.Actions.signAndCombineEcdsa({
|
|
13
|
-
toSign:
|
|
10
|
+
toSign: ethers.utils.arrayify(txHash),
|
|
14
11
|
publicKey: publicKeyForLit,
|
|
15
12
|
sigName,
|
|
16
13
|
});
|
|
17
14
|
const { r, s, v } = JSON.parse(signatureResponse);
|
|
18
|
-
const ethersJoinedSignature =
|
|
15
|
+
const ethersJoinedSignature = ethers.utils.joinSignature({
|
|
19
16
|
r: '0x' + r.substring(2),
|
|
20
17
|
s: '0x' + s,
|
|
21
18
|
v: v,
|
|
22
19
|
});
|
|
23
|
-
const signedSerializedTx =
|
|
20
|
+
const signedSerializedTx = ethers.utils.serializeTransaction(tx, ethersJoinedSignature);
|
|
24
21
|
console.log('Signed serialized tx (signTx)', signedSerializedTx);
|
|
25
22
|
return signedSerializedTx;
|
|
26
23
|
};
|
|
27
|
-
exports.signTx = signTx;
|
|
28
24
|
//# sourceMappingURL=sign-tx.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sign-tx.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/sign-tx.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sign-tx.js","sourceRoot":"","sources":["../../../../src/lib/ability-helpers/sign-tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAYhC,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,EACzB,YAAoB,EACpB,EAA8B,EAC9B,OAAe,EACf,EAAE;IACF,4EAA4E;IAC5E,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,iCAAiC,eAAe,WAAW,CAAC,CAAC;IAEzE,MAAM,oBAAoB,GAAG,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAEnE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAExC,MAAM,iBAAiB,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC;QAC9D,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QACrC,SAAS,EAAE,eAAe;QAC1B,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAClD,MAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;QACvD,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACxB,CAAC,EAAE,IAAI,GAAG,CAAC;QACX,CAAC,EAAE,CAAC;KACL,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,EAAE,qBAAqB,CAAC,CAAC;IACxF,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,kBAAkB,CAAC,CAAC;IAEjE,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const vincent_ability_sdk_1 = require("@lit-protocol/vincent-ability-sdk");
|
|
1
|
+
import { vincentAbilityHandler } from '@lit-protocol/vincent-ability-sdk';
|
|
4
2
|
// FIXME: This should be generated code
|
|
5
|
-
|
|
3
|
+
import { vincentAbility } from './vincent-ability';
|
|
6
4
|
(async () => {
|
|
7
|
-
const func =
|
|
8
|
-
vincentAbility:
|
|
5
|
+
const func = vincentAbilityHandler({
|
|
6
|
+
vincentAbility: vincentAbility,
|
|
9
7
|
context: {
|
|
10
8
|
delegatorPkpEthAddress: context.delegatorPkpEthAddress,
|
|
11
9
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lit-action.js","sourceRoot":"","sources":["../../../src/lib/lit-action.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lit-action.js","sourceRoot":"","sources":["../../../src/lib/lit-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAG1E,uCAAuC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAQnD,CAAC,KAAK,IAAI,EAAE;IACV,MAAM,IAAI,GAAG,qBAAqB,CAAC;QACjC,cAAc,EAAE,cAAc;QAC9B,OAAO,EAAE;YACP,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;SACvD;QACD,aAAa;KACd,CAAC,CAAC;IACH,MAAM,IAAI,EAAE,CAAC;AACf,CAAC,CAAC,EAAE,CAAC"}
|