@augustdigital/sdk 4.24.9 → 4.24.10-alpha-3
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/lib/abis/RwaRedeem.d.ts +76 -0
- package/lib/abis/RwaRedeem.js +55 -0
- package/lib/abis/RwaRedeem.js.map +1 -0
- package/lib/abis/TokenizedVaultV2WithDepositWithPermit.d.ts +85 -0
- package/lib/abis/TokenizedVaultV2WithDepositWithPermit.js +1878 -0
- package/lib/abis/TokenizedVaultV2WithDepositWithPermit.js.map +1 -0
- package/lib/adapters/solana/getters.d.ts +2 -2
- package/lib/adapters/solana/getters.js +36 -100
- package/lib/adapters/solana/getters.js.map +1 -1
- package/lib/adapters/solana/index.d.ts +2 -2
- package/lib/adapters/solana/utils.d.ts +2 -2
- package/lib/adapters/solana/utils.js +1 -8
- package/lib/adapters/solana/utils.js.map +1 -1
- package/lib/adapters/stellar/actions.d.ts +3 -0
- package/lib/adapters/stellar/actions.js +11 -0
- package/lib/adapters/stellar/actions.js.map +1 -0
- package/lib/adapters/stellar/constants.d.ts +10 -0
- package/lib/adapters/stellar/constants.js +16 -0
- package/lib/adapters/stellar/constants.js.map +1 -0
- package/lib/adapters/stellar/getters.d.ts +4 -0
- package/lib/adapters/stellar/getters.js +51 -0
- package/lib/adapters/stellar/getters.js.map +1 -0
- package/lib/adapters/stellar/index.d.ts +24 -0
- package/lib/adapters/stellar/index.js +68 -0
- package/lib/adapters/stellar/index.js.map +1 -0
- package/lib/adapters/stellar/types.d.ts +15 -0
- package/lib/adapters/stellar/types.js +3 -0
- package/lib/adapters/stellar/types.js.map +1 -0
- package/lib/adapters/stellar/utils.d.ts +12 -0
- package/lib/adapters/stellar/utils.js +31 -0
- package/lib/adapters/stellar/utils.js.map +1 -0
- package/lib/adapters/sui/transformer.js +4 -9
- package/lib/adapters/sui/transformer.js.map +1 -1
- package/lib/core/base.class.d.ts +3 -2
- package/lib/core/base.class.js +14 -7
- package/lib/core/base.class.js.map +1 -1
- package/lib/core/constants/core.d.ts +6 -3
- package/lib/core/constants/core.js +3 -0
- package/lib/core/constants/core.js.map +1 -1
- package/lib/core/constants/hardcoded-vaults.d.ts +7 -0
- package/lib/core/constants/hardcoded-vaults.js +179 -0
- package/lib/core/constants/hardcoded-vaults.js.map +1 -0
- package/lib/core/constants/ovault.d.ts +13 -0
- package/lib/core/constants/ovault.js +160 -0
- package/lib/core/constants/ovault.js.map +1 -0
- package/lib/core/constants/rwa-vaults.d.ts +4 -0
- package/lib/core/constants/rwa-vaults.js +27 -0
- package/lib/core/constants/rwa-vaults.js.map +1 -0
- package/lib/core/constants/web3.d.ts +5 -0
- package/lib/core/constants/web3.js +9 -0
- package/lib/core/constants/web3.js.map +1 -1
- package/lib/core/constants.adapters.d.ts +117 -0
- package/lib/core/constants.adapters.js +160 -0
- package/lib/core/constants.adapters.js.map +1 -0
- package/lib/core/constants.core.d.ts +78 -0
- package/lib/core/constants.core.js +75 -0
- package/lib/core/constants.core.js.map +1 -0
- package/lib/core/constants.vaults.d.ts +64 -0
- package/lib/core/constants.vaults.js +156 -0
- package/lib/core/constants.vaults.js.map +1 -0
- package/lib/core/constants.web3.d.ts +31 -0
- package/lib/core/constants.web3.js +100 -0
- package/lib/core/constants.web3.js.map +1 -0
- package/lib/core/fetcher.d.ts +4 -4
- package/lib/core/fetcher.js +9 -2
- package/lib/core/fetcher.js.map +1 -1
- package/lib/core/helpers/address-utils.d.ts +3 -0
- package/lib/core/helpers/address-utils.js +18 -0
- package/lib/core/helpers/address-utils.js.map +1 -0
- package/lib/core/helpers/vaults.js +37 -29
- package/lib/core/helpers/vaults.js.map +1 -1
- package/lib/core/helpers/web3.d.ts +3 -2
- package/lib/core/helpers/web3.js +17 -1
- package/lib/core/helpers/web3.js.map +1 -1
- package/lib/core/helpers.adapters.d.ts +9 -0
- package/lib/core/helpers.adapters.js +28 -0
- package/lib/core/helpers.adapters.js.map +1 -0
- package/lib/core/helpers.core.d.ts +48 -0
- package/lib/core/helpers.core.js +210 -0
- package/lib/core/helpers.core.js.map +1 -0
- package/lib/core/helpers.signer.d.ts +9 -0
- package/lib/core/helpers.signer.js +54 -0
- package/lib/core/helpers.signer.js.map +1 -0
- package/lib/core/helpers.vaults.d.ts +36 -0
- package/lib/core/helpers.vaults.js +145 -0
- package/lib/core/helpers.vaults.js.map +1 -0
- package/lib/core/helpers.web3.d.ts +95 -0
- package/lib/core/helpers.web3.js +376 -0
- package/lib/core/helpers.web3.js.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/main.d.ts +2 -0
- package/lib/main.js +3 -2
- package/lib/main.js.map +1 -1
- package/lib/modules/vaults/getters.d.ts +29 -2
- package/lib/modules/vaults/getters.js +516 -83
- package/lib/modules/vaults/getters.js.map +1 -1
- package/lib/modules/vaults/main.d.ts +6 -0
- package/lib/modules/vaults/main.js +92 -33
- package/lib/modules/vaults/main.js.map +1 -1
- package/lib/modules/vaults/utils/call-data-decoder.d.ts +14 -0
- package/lib/modules/vaults/utils/call-data-decoder.js +138 -0
- package/lib/modules/vaults/utils/call-data-decoder.js.map +1 -0
- package/lib/modules/vaults/utils/date-utils.d.ts +11 -0
- package/lib/modules/vaults/utils/date-utils.js +39 -0
- package/lib/modules/vaults/utils/date-utils.js.map +1 -0
- package/lib/modules/vaults/utils.d.ts +2 -0
- package/lib/modules/vaults/utils.js +117 -1
- package/lib/modules/vaults/utils.js.map +1 -1
- package/lib/modules/vaults/write.actions.js +15 -2
- package/lib/modules/vaults/write.actions.js.map +1 -1
- package/lib/services/layerzero/builder.d.ts +7 -0
- package/lib/services/layerzero/builder.js +251 -0
- package/lib/services/layerzero/builder.js.map +1 -0
- package/lib/services/layerzero/ovault-deposit.d.ts +6 -0
- package/lib/services/layerzero/ovault-deposit.js +73 -0
- package/lib/services/layerzero/ovault-deposit.js.map +1 -0
- package/lib/services/layerzero/ovault-redeem.d.ts +4 -0
- package/lib/services/layerzero/ovault-redeem.js +46 -0
- package/lib/services/layerzero/ovault-redeem.js.map +1 -0
- package/lib/types/ovault.d.ts +78 -0
- package/lib/types/ovault.js +3 -0
- package/lib/types/ovault.js.map +1 -0
- package/lib/types/rwa-redemption.d.ts +12 -0
- package/lib/types/rwa-redemption.js +3 -0
- package/lib/types/rwa-redemption.js.map +1 -0
- package/lib/types/vaults.d.ts +40 -8
- package/lib/types/vaults.js.map +1 -1
- package/lib/types/web3.d.ts +5 -0
- package/lib/types/web3.js +10 -0
- package/lib/types/web3.js.map +1 -1
- package/lib/types/webserver.d.ts +11 -2
- package/lib/verify.d.ts +2 -0
- package/lib/verify.js +33 -0
- package/lib/verify.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src.ts/services/layerzero/builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Signer, Wallet } from 'ethers';
|
|
2
|
+
import { IAddress, IProvidersConfig } from '../../types';
|
|
3
|
+
import { IOVaultDepositOptions } from '../../types/ovault';
|
|
4
|
+
export declare function needsOVaultApproval(tokenAddress: IAddress, spenderAddress: IAddress, walletAddress: IAddress, amount: bigint, signer: Signer | Wallet): Promise<boolean>;
|
|
5
|
+
export declare function approveOVault(tokenAddress: IAddress, spenderAddress: IAddress, amount: bigint, signer: Signer | Wallet): Promise<string>;
|
|
6
|
+
export declare function executeOVaultDeposit(signer: Signer | Wallet, options: IOVaultDepositOptions, providers: IProvidersConfig): Promise<string>;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.needsOVaultApproval = needsOVaultApproval;
|
|
4
|
+
exports.approveOVault = approveOVault;
|
|
5
|
+
exports.executeOVaultDeposit = executeOVaultDeposit;
|
|
6
|
+
const ethers_1 = require("ethers");
|
|
7
|
+
const ovault_1 = require("../../core/constants/ovault");
|
|
8
|
+
const core_1 = require("../../core/helpers/core");
|
|
9
|
+
const builder_1 = require("./builder");
|
|
10
|
+
const ERC20_ABI = [
|
|
11
|
+
'function allowance(address owner, address spender) view returns (uint256)',
|
|
12
|
+
'function approve(address spender, uint256 amount) returns (bool)',
|
|
13
|
+
];
|
|
14
|
+
async function needsOVaultApproval(tokenAddress, spenderAddress, walletAddress, amount, signer) {
|
|
15
|
+
try {
|
|
16
|
+
const provider = signer.provider;
|
|
17
|
+
if (!provider)
|
|
18
|
+
throw new Error('Signer has no provider attached');
|
|
19
|
+
const contract = new ethers_1.Contract(tokenAddress, ERC20_ABI, provider);
|
|
20
|
+
const allowance = await contract.allowance(walletAddress, spenderAddress);
|
|
21
|
+
return allowance < amount;
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
console.error('[needsOVaultApproval] Error checking allowance:', error);
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
async function approveOVault(tokenAddress, spenderAddress, amount, signer) {
|
|
29
|
+
const contract = new ethers_1.Contract(tokenAddress, ERC20_ABI, signer);
|
|
30
|
+
const tx = await contract.approve(spenderAddress, amount);
|
|
31
|
+
const receipt = await tx.wait();
|
|
32
|
+
return receipt.hash;
|
|
33
|
+
}
|
|
34
|
+
async function executeOVaultDeposit(signer, options, providers) {
|
|
35
|
+
const signerAddress = await signer.getAddress();
|
|
36
|
+
const ovaultConfig = (0, ovault_1.getOVaultConfig)(options.vault);
|
|
37
|
+
if (!ovaultConfig) {
|
|
38
|
+
throw new Error('Vault does not support OVault operations');
|
|
39
|
+
}
|
|
40
|
+
const buildProps = {
|
|
41
|
+
vaultAddress: options.vault,
|
|
42
|
+
operation: 'DEPOSIT',
|
|
43
|
+
amount: options.amount,
|
|
44
|
+
decimals: options.decimals,
|
|
45
|
+
userChainId: options.sourceChainId,
|
|
46
|
+
destinationChainId: options.destinationChainId,
|
|
47
|
+
walletAddress: signerAddress,
|
|
48
|
+
slippageBps: options.slippageBps || ovault_1.DEFAULT_SLIPPAGE_BPS,
|
|
49
|
+
};
|
|
50
|
+
const result = await (0, builder_1.buildOVaultTx)(buildProps, providers);
|
|
51
|
+
if (!result.success || !result.data) {
|
|
52
|
+
throw new Error(result.error || 'Failed to build transaction');
|
|
53
|
+
}
|
|
54
|
+
const txInputs = result.data;
|
|
55
|
+
if (!options.skipApproval) {
|
|
56
|
+
const tokenAddr = txInputs.approval?.tokenAddress ??
|
|
57
|
+
ovaultConfig.contracts.assetToken[options.sourceChainId];
|
|
58
|
+
const spenderAddr = txInputs.approval?.spender ?? txInputs.contractAddress;
|
|
59
|
+
const approvalAmount = txInputs.approval?.amount ??
|
|
60
|
+
BigInt((0, core_1.toNormalizedBn)(options.amount, options.decimals).raw);
|
|
61
|
+
const needsApproval = await needsOVaultApproval(tokenAddr, spenderAddr, signerAddress, approvalAmount, signer);
|
|
62
|
+
if (needsApproval) {
|
|
63
|
+
await approveOVault(tokenAddr, spenderAddr, approvalAmount, signer);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const contract = new ethers_1.Contract(txInputs.contractAddress, txInputs.abi, signer);
|
|
67
|
+
const tx = await contract[txInputs.contractFunctionName](...txInputs.txArgs, {
|
|
68
|
+
value: txInputs.messageValue,
|
|
69
|
+
});
|
|
70
|
+
const receipt = await tx.wait();
|
|
71
|
+
return receipt.hash;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=ovault-deposit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ovault-deposit.js","sourceRoot":"","sources":["../../../src.ts/services/layerzero/ovault-deposit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Signer, Wallet } from 'ethers';
|
|
2
|
+
import { IProvidersConfig } from '../../types';
|
|
3
|
+
import { IOVaultRedeemOptions } from '../../types/ovault';
|
|
4
|
+
export declare function executeOVaultRedeem(signer: Signer | Wallet, options: IOVaultRedeemOptions, providers: IProvidersConfig): Promise<string>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.executeOVaultRedeem = executeOVaultRedeem;
|
|
4
|
+
const ethers_1 = require("ethers");
|
|
5
|
+
const ovault_1 = require("../../core/constants/ovault");
|
|
6
|
+
const builder_1 = require("./builder");
|
|
7
|
+
const ovault_deposit_1 = require("./ovault-deposit");
|
|
8
|
+
async function executeOVaultRedeem(signer, options, providers) {
|
|
9
|
+
const signerAddress = await signer.getAddress();
|
|
10
|
+
const ovaultConfig = (0, ovault_1.getOVaultConfig)(options.vault);
|
|
11
|
+
if (!ovaultConfig) {
|
|
12
|
+
throw new Error('Vault does not support OVault operations');
|
|
13
|
+
}
|
|
14
|
+
if (options.sourceChainId !== ovaultConfig.hubChainId) {
|
|
15
|
+
throw new Error(`Redemptions must be executed from hub chain (${ovaultConfig.hubChainId}). ` +
|
|
16
|
+
`Please switch to the hub chain first.`);
|
|
17
|
+
}
|
|
18
|
+
const buildProps = {
|
|
19
|
+
vaultAddress: options.vault,
|
|
20
|
+
operation: 'REDEEM',
|
|
21
|
+
amount: options.amount,
|
|
22
|
+
decimals: options.decimals,
|
|
23
|
+
userChainId: options.sourceChainId,
|
|
24
|
+
destinationChainId: options.destinationChainId || options.sourceChainId,
|
|
25
|
+
walletAddress: signerAddress,
|
|
26
|
+
slippageBps: options.slippageBps || ovault_1.DEFAULT_SLIPPAGE_BPS,
|
|
27
|
+
};
|
|
28
|
+
const result = await (0, builder_1.buildOVaultTx)(buildProps, providers);
|
|
29
|
+
if (!result.success || !result.data) {
|
|
30
|
+
throw new Error(result.error || 'Failed to build transaction');
|
|
31
|
+
}
|
|
32
|
+
const txInputs = result.data;
|
|
33
|
+
if (!options.skipApproval && txInputs.approval) {
|
|
34
|
+
const needsApprovalResult = await (0, ovault_deposit_1.needsOVaultApproval)(txInputs.approval.tokenAddress, txInputs.approval.spender, signerAddress, txInputs.approval.amount, signer);
|
|
35
|
+
if (needsApprovalResult) {
|
|
36
|
+
await (0, ovault_deposit_1.approveOVault)(txInputs.approval.tokenAddress, txInputs.approval.spender, txInputs.approval.amount, signer);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
const contract = new ethers_1.Contract(txInputs.contractAddress, txInputs.abi, signer);
|
|
40
|
+
const tx = await contract[txInputs.contractFunctionName](...txInputs.txArgs, {
|
|
41
|
+
value: txInputs.messageValue,
|
|
42
|
+
});
|
|
43
|
+
const receipt = await tx.wait();
|
|
44
|
+
return receipt.hash;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=ovault-redeem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ovault-redeem.js","sourceRoot":"","sources":["../../../src.ts/services/layerzero/ovault-redeem.ts"],"names":[],"mappings":";;AAiCA,kDAqEC;AA/FD,mCAAkD;AAGlD,wDAGqC;AACrC,uCAA0C;AAC1C,qDAAsE;AAkB/D,KAAK,UAAU,mBAAmB,CACvC,MAAuB,EACvB,OAA6B,EAC7B,SAA2B;IAE3B,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAGhD,MAAM,YAAY,GAAG,IAAA,wBAAe,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IAGD,IAAI,OAAO,CAAC,aAAa,KAAK,YAAY,CAAC,UAAU,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CACb,gDAAgD,YAAY,CAAC,UAAU,KAAK;YAC1E,uCAAuC,CAC1C,CAAC;IACJ,CAAC;IAGD,MAAM,UAAU,GAAsB;QACpC,YAAY,EAAE,OAAO,CAAC,KAAK;QAC3B,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW,EAAE,OAAO,CAAC,aAAa;QAClC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,OAAO,CAAC,aAAa;QACvE,aAAa,EAAE,aAAyB;QACxC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,6BAAoB;KACzD,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAa,EAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;IAG7B,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC/C,MAAM,mBAAmB,GAAG,MAAM,IAAA,oCAAmB,EACnD,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,QAAQ,CAAC,QAAQ,CAAC,OAAO,EACzB,aAAyB,EACzB,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,MAAM,CACP,CAAC;QAEF,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,IAAA,8BAAa,EACjB,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,QAAQ,CAAC,QAAQ,CAAC,OAAO,EACzB,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,MAAM,CACP,CAAC;QACJ,CAAC;IACH,CAAC;IAGD,MAAM,QAAQ,GAAG,IAAI,iBAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAE9E,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE;QAC3E,KAAK,EAAE,QAAQ,CAAC,YAAY;KAC7B,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;IAChC,OAAO,OAAO,CAAC,IAAI,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { IAddress } from './web3';
|
|
2
|
+
export interface IOVaultConfig {
|
|
3
|
+
vaultName: string;
|
|
4
|
+
vaultSymbol: string;
|
|
5
|
+
hubChainId: number;
|
|
6
|
+
vaultAddress: IAddress;
|
|
7
|
+
spokeChainIds: number[];
|
|
8
|
+
contracts: {
|
|
9
|
+
assetToken: Record<number, IAddress>;
|
|
10
|
+
assetOFT: Record<number, IAddress>;
|
|
11
|
+
shareOFTAdapter: IAddress;
|
|
12
|
+
composerSync: IAddress;
|
|
13
|
+
shareOFT: Record<number, IAddress>;
|
|
14
|
+
};
|
|
15
|
+
layerZeroEids: {
|
|
16
|
+
hub: number;
|
|
17
|
+
spokes: Record<number, number>;
|
|
18
|
+
};
|
|
19
|
+
multiAsset?: {
|
|
20
|
+
hubAssetAddress: IAddress;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export interface IOVaultDepositOptions {
|
|
24
|
+
vault: IAddress;
|
|
25
|
+
amount: string;
|
|
26
|
+
decimals: number;
|
|
27
|
+
sourceChainId: number;
|
|
28
|
+
destinationChainId?: number;
|
|
29
|
+
slippageBps?: number;
|
|
30
|
+
skipApproval?: boolean;
|
|
31
|
+
}
|
|
32
|
+
export interface IOVaultRedeemOptions {
|
|
33
|
+
vault: IAddress;
|
|
34
|
+
amount: string;
|
|
35
|
+
decimals: number;
|
|
36
|
+
sourceChainId: number;
|
|
37
|
+
destinationChainId?: number;
|
|
38
|
+
slippageBps?: number;
|
|
39
|
+
skipApproval?: boolean;
|
|
40
|
+
}
|
|
41
|
+
export interface IOVaultFeeEstimateOptions {
|
|
42
|
+
vault: IAddress;
|
|
43
|
+
operation: 'DEPOSIT' | 'REDEEM';
|
|
44
|
+
amount: string;
|
|
45
|
+
decimals: number;
|
|
46
|
+
sourceChainId: number;
|
|
47
|
+
destinationChainId?: number;
|
|
48
|
+
wallet: IAddress;
|
|
49
|
+
slippageBps?: number;
|
|
50
|
+
}
|
|
51
|
+
export interface IOVaultFeeEstimate {
|
|
52
|
+
nativeFee: bigint;
|
|
53
|
+
lzFee: bigint;
|
|
54
|
+
}
|
|
55
|
+
export interface IOVaultApprovalOptions {
|
|
56
|
+
vault: IAddress;
|
|
57
|
+
operation: 'DEPOSIT' | 'REDEEM';
|
|
58
|
+
amount: string;
|
|
59
|
+
decimals: number;
|
|
60
|
+
chainId: number;
|
|
61
|
+
wallet: IAddress;
|
|
62
|
+
}
|
|
63
|
+
export interface IOVaultBuildResult {
|
|
64
|
+
success: boolean;
|
|
65
|
+
data?: any;
|
|
66
|
+
error?: string;
|
|
67
|
+
}
|
|
68
|
+
export interface IOVaultBuildProps {
|
|
69
|
+
vaultAddress: IAddress;
|
|
70
|
+
operation: 'DEPOSIT' | 'REDEEM';
|
|
71
|
+
amount: string | number | bigint;
|
|
72
|
+
decimals: number;
|
|
73
|
+
userChainId: number;
|
|
74
|
+
destinationChainId?: number;
|
|
75
|
+
walletAddress: IAddress;
|
|
76
|
+
recipientAddress?: IAddress;
|
|
77
|
+
slippageBps?: number;
|
|
78
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ovault.js","sourceRoot":"","sources":["../../src.ts/types/ovault.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { IAddress } from './web3';
|
|
2
|
+
export interface RedeemableAssetConfig {
|
|
3
|
+
address: IAddress;
|
|
4
|
+
symbol: string;
|
|
5
|
+
decimals: number;
|
|
6
|
+
spreadBps: number;
|
|
7
|
+
}
|
|
8
|
+
export interface RwaRedemptionVaultConfig {
|
|
9
|
+
chainId: number;
|
|
10
|
+
redeemableAssets: RedeemableAssetConfig[];
|
|
11
|
+
outputAssetSymbol: string;
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rwa-redemption.js","sourceRoot":"","sources":["../../src.ts/types/rwa-redemption.ts"],"names":[],"mappings":""}
|
package/lib/types/vaults.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { IAddress, INormalizedNumber } from './web3';
|
|
1
|
+
import { IAddress, INormalizedNumber, VaultAddress } from './web3';
|
|
2
2
|
import { IDebankProtocolExposure, IDebankTokenExposure, IOTCPosition, IWSSubaccountCefi, IWSSubaccountLoan, IWSTokenEntry, ITokenizedVaultOperator, ITokenizedVaultEoaOperator, IHIstoricalSnapshot } from './webserver';
|
|
3
3
|
import type { InterfaceAbi } from 'ethers';
|
|
4
4
|
export interface IVaultLoan {
|
|
5
|
-
vault:
|
|
5
|
+
vault: VaultAddress;
|
|
6
6
|
address: IAddress;
|
|
7
7
|
lender: IAddress;
|
|
8
8
|
borrower: IAddress;
|
|
@@ -90,8 +90,8 @@ export interface IVaultStrategist {
|
|
|
90
90
|
name: string;
|
|
91
91
|
type?: string;
|
|
92
92
|
}
|
|
93
|
-
export type IVaultVersion = 'evm-0' | 'evm-1' | 'evm-2' | 'sol-0' | 'sui-0';
|
|
94
|
-
export type ChainType
|
|
93
|
+
export type IVaultVersion = 'evm-0' | 'evm-1' | 'evm-2' | 'sol-0' | 'sui-0' | 'stellar-0';
|
|
94
|
+
export type { ChainType } from './web3';
|
|
95
95
|
export interface IVaultAdapterConfig {
|
|
96
96
|
lpTokenAddress?: IAddress;
|
|
97
97
|
isNativeTokenDeposit: boolean;
|
|
@@ -110,12 +110,12 @@ export interface IVault {
|
|
|
110
110
|
historical_snapshots?: IHIstoricalSnapshot[];
|
|
111
111
|
depositCap?: INormalizedNumber;
|
|
112
112
|
maxDepositAmount?: INormalizedNumber;
|
|
113
|
-
address:
|
|
113
|
+
address: VaultAddress;
|
|
114
114
|
chainId: number;
|
|
115
115
|
name: string;
|
|
116
116
|
logoUrl: string;
|
|
117
117
|
receipt: {
|
|
118
|
-
address:
|
|
118
|
+
address: VaultAddress;
|
|
119
119
|
symbol: string;
|
|
120
120
|
decimals: number;
|
|
121
121
|
};
|
|
@@ -137,7 +137,7 @@ export interface IVault {
|
|
|
137
137
|
operators: ITokenizedVaultOperator[];
|
|
138
138
|
eoa_operators: ITokenizedVaultEoaOperator[];
|
|
139
139
|
depositAssets: {
|
|
140
|
-
address:
|
|
140
|
+
address: VaultAddress;
|
|
141
141
|
symbol: string;
|
|
142
142
|
decimals: number;
|
|
143
143
|
}[];
|
|
@@ -207,9 +207,10 @@ export type IVaultRedemptionHistoryItem = {
|
|
|
207
207
|
processed: Date;
|
|
208
208
|
requested: Date;
|
|
209
209
|
vault: IAddress;
|
|
210
|
+
transactionHash?: string;
|
|
210
211
|
};
|
|
211
212
|
export interface IVaultPosition {
|
|
212
|
-
vault:
|
|
213
|
+
vault: VaultAddress;
|
|
213
214
|
status: string;
|
|
214
215
|
availableRedemptions: IVaultAvailableRedemption[];
|
|
215
216
|
pendingRedemptions: IVaultAvailableRedemption[];
|
|
@@ -270,6 +271,37 @@ export interface IVaultWithdrawals {
|
|
|
270
271
|
receiver: IAddress;
|
|
271
272
|
}>;
|
|
272
273
|
}
|
|
274
|
+
export interface IVaultPendingRedemptions {
|
|
275
|
+
vault: {
|
|
276
|
+
address: string;
|
|
277
|
+
chainId: number;
|
|
278
|
+
name: string | null;
|
|
279
|
+
symbol: string | null;
|
|
280
|
+
};
|
|
281
|
+
asset: {
|
|
282
|
+
address: string;
|
|
283
|
+
symbol: string | null;
|
|
284
|
+
decimals: number | null;
|
|
285
|
+
};
|
|
286
|
+
liquidity: {
|
|
287
|
+
available: number;
|
|
288
|
+
};
|
|
289
|
+
summary: {
|
|
290
|
+
totalPending: number;
|
|
291
|
+
pendingCount: number;
|
|
292
|
+
pendingToLiquidityRatio: number | null;
|
|
293
|
+
isLiquiditySufficient: boolean;
|
|
294
|
+
shortfall: number | null;
|
|
295
|
+
nextRedemptionDate: string | null;
|
|
296
|
+
isOverdue: boolean;
|
|
297
|
+
};
|
|
298
|
+
redemptionsByDate: Array<{
|
|
299
|
+
date: string;
|
|
300
|
+
assets: number;
|
|
301
|
+
daysUntilDue: number;
|
|
302
|
+
isOverdue: boolean;
|
|
303
|
+
}>;
|
|
304
|
+
}
|
|
273
305
|
export interface IVaultMetadataItem {
|
|
274
306
|
symbol: string;
|
|
275
307
|
subgraph: string;
|
package/lib/types/vaults.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vaults.js","sourceRoot":"","sources":["../../src.ts/types/vaults.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"vaults.js","sourceRoot":"","sources":["../../src.ts/types/vaults.ts"],"names":[],"mappings":";;;AAkPA,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC/B,gEAAuC,CAAA;IACvC,0DAAiC,CAAA;AACnC,CAAC,EAHW,qBAAqB,qCAArB,qBAAqB,QAGhC"}
|
package/lib/types/web3.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Signer, Provider } from 'ethers';
|
|
2
2
|
export type IAddress = `0x${string}`;
|
|
3
|
+
export type VaultAddress = string;
|
|
3
4
|
export type IChainId = number;
|
|
5
|
+
export type ChainType = 'evm' | 'solana' | 'sui' | 'stellar';
|
|
6
|
+
export declare function isChainType(value: unknown): value is ChainType;
|
|
4
7
|
export type IChainObj = {
|
|
5
8
|
chainId: number;
|
|
6
9
|
name: string;
|
|
@@ -18,6 +21,8 @@ export type IInfuraOptions = {
|
|
|
18
21
|
apiKey: string;
|
|
19
22
|
};
|
|
20
23
|
export type ISolanaNetwork = 'devnet' | 'mainnet-beta' | 'testnet' | 'localnet';
|
|
24
|
+
export type IStellarNetwork = 'mainnet' | 'testnet';
|
|
25
|
+
export type StellarNetwork = IStellarNetwork;
|
|
21
26
|
export interface ISolanaConfig {
|
|
22
27
|
rpcUrl: string;
|
|
23
28
|
network: ISolanaNetwork;
|
package/lib/types/web3.js
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isChainType = isChainType;
|
|
4
|
+
const VALID_CHAIN_TYPES = new Set([
|
|
5
|
+
'evm',
|
|
6
|
+
'solana',
|
|
7
|
+
'sui',
|
|
8
|
+
'stellar',
|
|
9
|
+
]);
|
|
10
|
+
function isChainType(value) {
|
|
11
|
+
return typeof value === 'string' && VALID_CHAIN_TYPES.has(value);
|
|
12
|
+
}
|
|
3
13
|
//# sourceMappingURL=web3.js.map
|
package/lib/types/web3.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web3.js","sourceRoot":"","sources":["../../src.ts/types/web3.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"web3.js","sourceRoot":"","sources":["../../src.ts/types/web3.ts"],"names":[],"mappings":";;AAyBA,kCAEC;AAVD,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAAY;IAChE,KAAK;IACL,QAAQ;IACR,KAAK;IACL,SAAS;CACV,CAAC,CAAC;AAGH,SAAgB,WAAW,CAAC,KAAc;IACxC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC"}
|
package/lib/types/webserver.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IUserRoles } from './user';
|
|
2
|
-
import { IAddress } from './web3';
|
|
2
|
+
import { IAddress, type ChainType, type IStellarNetwork } from './web3';
|
|
3
3
|
export type IHIstoricalSnapshot = {
|
|
4
4
|
total_assets: number;
|
|
5
5
|
total_shares: number;
|
|
@@ -472,12 +472,20 @@ export interface ISolanaVaultMetadata {
|
|
|
472
472
|
deposit_token_decimals?: number;
|
|
473
473
|
program_id?: string;
|
|
474
474
|
}
|
|
475
|
+
export interface IStellarVaultMetadata {
|
|
476
|
+
deposit_token_address: string | null;
|
|
477
|
+
deposit_token_symbol?: string;
|
|
478
|
+
deposit_token_decimals?: number;
|
|
479
|
+
network_name: IStellarNetwork;
|
|
480
|
+
utila_vault_id?: string;
|
|
481
|
+
utila_wallet_id?: string;
|
|
482
|
+
}
|
|
475
483
|
export interface ITokenizedVault {
|
|
476
484
|
address: string;
|
|
477
485
|
yield_distributor: string;
|
|
478
486
|
chain: number;
|
|
479
487
|
enable_external_assets_update: boolean;
|
|
480
|
-
chain_type:
|
|
488
|
+
chain_type: ChainType;
|
|
481
489
|
default_apy_horizon: 7 | 30 | null;
|
|
482
490
|
enabled_historical_price_horizons: any[];
|
|
483
491
|
description: string;
|
|
@@ -517,6 +525,7 @@ export interface ITokenizedVault {
|
|
|
517
525
|
eoa_operators: ITokenizedVaultEoaOperator[];
|
|
518
526
|
composability_integrations?: IComposabilityIntegration[];
|
|
519
527
|
solana_vault_metadata?: ISolanaVaultMetadata | null;
|
|
528
|
+
stellar_vault_metadata?: IStellarVaultMetadata | null;
|
|
520
529
|
lagDuration: number;
|
|
521
530
|
historical_apy: Record<number, number> | null;
|
|
522
531
|
historical_snapshots?: IHIstoricalSnapshot[];
|
package/lib/verify.d.ts
ADDED
package/lib/verify.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.verifyInfuraKey = verifyInfuraKey;
|
|
13
|
+
exports.verifyAugustKey = verifyAugustKey;
|
|
14
|
+
const utils_1 = require("@augustdigital/utils");
|
|
15
|
+
function verifyInfuraKey(key) {
|
|
16
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
if (key.length !== 32)
|
|
18
|
+
return false;
|
|
19
|
+
const regex = /[a-z0-9]+/i;
|
|
20
|
+
if (!regex.test(key))
|
|
21
|
+
return false;
|
|
22
|
+
return true;
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
function verifyAugustKey(key) {
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
const verify = yield (0, utils_1.fetchAugustWithKey)(key, utils_1.WEBSERVER_ENDPOINTS.auth.verify);
|
|
28
|
+
if (verify.status === 200)
|
|
29
|
+
return true;
|
|
30
|
+
return false;
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=verify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../src.ts/verify.ts"],"names":[],"mappings":";;;;;;;;;;;AAEA,0CAKC;AAED,0CAIC;AAbD,gDAA+E;AAE/E,SAAsB,eAAe,CAAC,GAAW;;QAC/C,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE;YAAE,OAAO,KAAK,CAAC;QACpC,MAAM,KAAK,GAAG,YAAY,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;CAAA;AAED,SAAsB,eAAe,CAAC,GAAW;;QAC/C,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAkB,EAAC,GAAG,EAAE,2BAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9E,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;CAAA"}
|