@dripfi/drip-sdk 1.4.9 → 1.4.11

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.
Files changed (53) hide show
  1. package/README.md +206 -45
  2. package/dist/PerqApi.d.ts +22 -20
  3. package/dist/PerqApi.js +127 -92
  4. package/dist/PerqSdk.d.ts +35 -70
  5. package/dist/PerqSdk.js +51 -534
  6. package/dist/abi/ERC20.json +222 -0
  7. package/dist/contracts/ERC20TokenContract.d.ts +10 -0
  8. package/dist/contracts/ERC20TokenContract.js +34 -0
  9. package/dist/contracts/PerqSwapAndRecyclerContract.d.ts +3 -2
  10. package/dist/contracts/PerqSwapAndRecyclerContract.js +2 -2
  11. package/dist/contracts/PerqTokenRecyclerContract.d.ts +3 -2
  12. package/dist/contracts/PerqTokenRecyclerContract.js +2 -2
  13. package/dist/contracts/PerqVestingContract.d.ts +3 -2
  14. package/dist/contracts/PerqVestingContract.js +2 -2
  15. package/dist/subpackages/LitePackage.d.ts +16 -0
  16. package/dist/subpackages/LitePackage.js +102 -0
  17. package/dist/subpackages/LoyaltyCardsPackage.d.ts +12 -0
  18. package/dist/subpackages/LoyaltyCardsPackage.js +34 -0
  19. package/dist/subpackages/PoolsPackage.d.ts +16 -0
  20. package/dist/subpackages/PoolsPackage.js +52 -0
  21. package/dist/subpackages/RecyclerPackage.d.ts +13 -0
  22. package/dist/subpackages/RecyclerPackage.js +87 -0
  23. package/dist/subpackages/SignHandlerPackage.d.ts +8 -0
  24. package/dist/subpackages/SignHandlerPackage.js +33 -0
  25. package/dist/subpackages/TokenUtilsPackage.d.ts +13 -0
  26. package/dist/subpackages/TokenUtilsPackage.js +66 -0
  27. package/dist/subpackages/UserPackage.d.ts +10 -0
  28. package/dist/subpackages/UserPackage.js +36 -0
  29. package/dist/subpackages/V2Package.d.ts +24 -0
  30. package/dist/subpackages/V2Package.js +207 -0
  31. package/dist/subpackages/VestingPackage.d.ts +14 -0
  32. package/dist/subpackages/VestingPackage.js +112 -0
  33. package/dist/types/ChainId.d.ts +5 -0
  34. package/dist/types/ChainId.js +7 -0
  35. package/dist/types/DeployedProject.d.ts +4 -0
  36. package/dist/types/DetailedProjectData.d.ts +34 -0
  37. package/dist/types/DetailedProjectData.js +2 -0
  38. package/dist/types/Earnings.d.ts +11 -0
  39. package/dist/types/Earnings.js +2 -0
  40. package/dist/types/LinkWalletPayload.d.ts +4 -2
  41. package/dist/types/LinkedPodWallets.d.ts +5 -0
  42. package/dist/types/LinkedPodWallets.js +2 -0
  43. package/dist/types/MigrationOption.d.ts +6 -0
  44. package/dist/types/MigrationOption.js +2 -0
  45. package/dist/types/MyPerqData.d.ts +10 -10
  46. package/dist/types/PerqConfig.d.ts +5 -3
  47. package/dist/types/PerqConfig.js +12 -10
  48. package/dist/types/ReducedProjectData.d.ts +22 -0
  49. package/dist/types/ReducedProjectData.js +2 -0
  50. package/dist/types/VaultData.d.ts +33 -0
  51. package/dist/types/VaultData.js +2 -0
  52. package/dist/types/index.d.ts +8 -2
  53. package/package.json +2 -2
@@ -0,0 +1,34 @@
1
+ import { ProjectBacker } from './DeployedProject';
2
+ import { ReducedProjectData } from './ReducedProjectData';
3
+ import StretchGoal from './StretchGoal';
4
+ import VaultData from './VaultData';
5
+ import YelayVersion from './YelayVersion';
6
+ type DetailedProjectData = ReducedProjectData & {
7
+ supplyAtLaunch: number;
8
+ fdv: number;
9
+ totalSupply: number;
10
+ content: string;
11
+ telegramLink: string;
12
+ twitterLink: string;
13
+ mediumLink: string;
14
+ deckLink: string;
15
+ roadmapLink: string;
16
+ economicsLink: string;
17
+ discordLink: string;
18
+ docsLink: string;
19
+ whitepaperLink: string;
20
+ litepaperLink: string;
21
+ websiteLink: string;
22
+ projectType: string;
23
+ wikiLink: string;
24
+ youTubeLink: string;
25
+ tikTokLink: string;
26
+ projectRewardText: string;
27
+ networks: string[];
28
+ protocols: string[];
29
+ yelayVersion: YelayVersion;
30
+ stretchGoals: StretchGoal[];
31
+ backers: ProjectBacker[];
32
+ vaults: VaultData[];
33
+ };
34
+ export default DetailedProjectData;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ type Earnings = {
2
+ [vaultAddress: string]: {
3
+ onChainProjectId: number;
4
+ precisionDecimals: number;
5
+ amountEarned: string;
6
+ symbol: string;
7
+ deposit: string;
8
+ earningPerHour: string;
9
+ };
10
+ };
11
+ export default Earnings;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,4 +1,6 @@
1
- type LinkWalletPayload = {
1
+ export type SuiWalletPayload = {
2
2
  suiWalletAddr: string;
3
3
  };
4
- export default LinkWalletPayload;
4
+ export type NearWalletPayload = {
5
+ nearWalletAddr: string;
6
+ };
@@ -0,0 +1,5 @@
1
+ type LinkedPodWallets = {
2
+ suiWalletAddr: string;
3
+ nearWalletAddr: string;
4
+ };
5
+ export default LinkedPodWallets;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,6 @@
1
+ type MigrationOption = {
2
+ projectName: string;
3
+ projectLogo: string;
4
+ onChainProjectId: number;
5
+ };
6
+ export default MigrationOption;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,16 +1,16 @@
1
- import { Asset, Vault } from './index';
2
- type MyPerqData = Vault & {
3
- claimable: number;
1
+ import VaultData from './VaultData';
2
+ import VaultType from './VaultType';
3
+ type MyPerqBalance = {
4
4
  pendingDeposits: number;
5
- pendingWithdraws: number;
6
5
  currentlyDeposited: number;
6
+ pendingWithdraws: number;
7
+ claimable: number;
8
+ earnedRewards: number;
9
+ rewardsPerHour: number;
10
+ };
11
+ type MyPerqData = VaultData & MyPerqBalance & {
7
12
  ethPrice: number;
8
13
  btcPrice: number;
9
- tokenRewards: {
10
- [token_address: string]: Asset & {
11
- amount: number;
12
- rewardsPerHour?: number;
13
- };
14
- };
14
+ distributionType: VaultType;
15
15
  };
16
16
  export default MyPerqData;
@@ -1,13 +1,15 @@
1
- import { SDKConfig } from '@spool.fi/spool-v2-sdk';
1
+ import { SDKConfig as SpoolSdkConfig } from '@spool.fi/spool-v2-sdk';
2
+ export declare const PERQ_SUPPORTED_CHAIN_IDS: readonly [1, 8453];
3
+ export type PerqSupportedChainId = (typeof PERQ_SUPPORTED_CHAIN_IDS)[number];
2
4
  type PerqConfig = {
3
5
  route: string;
4
- spoolSdkConfig: SDKConfig;
6
+ spoolSdkConfig: SpoolSdkConfig;
5
7
  perqTokenAddress: string;
6
8
  perqTokenRecyclerAddress: string;
7
9
  perqSwapAndRecyclerAddress: string;
8
10
  perqVestingAddress: string;
9
11
  swapAndDepositContractAddress: string;
10
- swapperAddress: string;
12
+ ethereumSwapperAddress: string;
11
13
  smartVaultManagerContractAddress: string;
12
14
  };
13
15
  export default PerqConfig;
@@ -1,26 +1,28 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEVELOPMENT = exports.PRODUCTION = void 0;
3
+ exports.DEVELOPMENT = exports.PRODUCTION = exports.PERQ_SUPPORTED_CHAIN_IDS = void 0;
4
4
  const spool_v2_sdk_1 = require("@spool.fi/spool-v2-sdk");
5
+ const ChainId_1 = require("./ChainId");
6
+ exports.PERQ_SUPPORTED_CHAIN_IDS = [ChainId_1.ETHEREUM_CHAIN_ID, ChainId_1.BASE_CHAIN_ID];
5
7
  exports.PRODUCTION = {
6
8
  route: 'https://perq.finance',
7
9
  spoolSdkConfig: (0, spool_v2_sdk_1.getMainnetConfig)('https://subgraph.satsuma-prod.com/49eb322da234/solidant/spool-v2/api'),
8
10
  perqTokenAddress: '0x2a414884a549ef5716bc1a4e648d3dc03f08b2cf',
9
- perqTokenRecyclerAddress: '0x2FdcdB17799557Dce6f26921f12B7FA1DbcD79FA',
10
- perqSwapAndRecyclerAddress: '0x15ED53964E6a5EcbEBAb80A0Fc68c2297b0eaA8D',
11
- perqVestingAddress: '0x5e19C155C30bDEB83FCFE20a3b6f6Eda34B746c5',
11
+ perqTokenRecyclerAddress: '0x2fdcdb17799557dce6f26921f12b7fa1dbcd79fa',
12
+ perqSwapAndRecyclerAddress: '0x15ed53964e6a5ecbebab80a0fc68c2297b0eaa8d',
13
+ perqVestingAddress: '0x5e19c155c30bdeb83fcfe20a3b6f6eda34b746c5',
12
14
  swapAndDepositContractAddress: '0xd8534197bd587f8226d12e0c864ef2cae6f82f5c',
13
- swapperAddress: '0x33e52c206d584550193e642c8982f2fff6339994',
15
+ ethereumSwapperAddress: '0x33e52c206d584550193e642c8982f2fff6339994',
14
16
  smartVaultManagerContractAddress: '0x23daf34e2b9af02a74dc19cb52af727b19403874',
15
17
  };
16
18
  exports.DEVELOPMENT = {
17
19
  route: 'https://dev.perq.finance',
18
20
  spoolSdkConfig: (0, spool_v2_sdk_1.getSepoliaConfig)('https://subgraph.satsuma-prod.com/49eb322da234/solidant/spool-v2-sepolia/api'),
19
- perqTokenAddress: '0x707B4Cc05645713d8Ea04FBC7192A0f2c1503d6E',
20
- perqTokenRecyclerAddress: '0x07F2264E199D62afe07E8288eC9D36d155fc3f24',
21
- perqSwapAndRecyclerAddress: '0xA4ed357FF233731860Ec8D0446FD95756d564014',
22
- perqVestingAddress: '0x1d3B9E32a7139718f94BE32c797682fFf2D1bE60',
21
+ perqTokenAddress: '0x707b4cc05645713d8ea04fbc7192a0f2c1503d6e',
22
+ perqTokenRecyclerAddress: '0x07f2264e199d62afe07e8288ec9d36d155fc3f24',
23
+ perqSwapAndRecyclerAddress: '0xa4ed357ff233731860ec8d0446fd95756d564014',
24
+ perqVestingAddress: '0x1d3b9e32a7139718f94be32c797682fff2d1be60',
23
25
  swapAndDepositContractAddress: '0x5fb08e00de169f041711206a0995410884080177',
24
- swapperAddress: '0xE411921ee9EeDfEFd7b9Ae15bF232bd36949Fcbc',
26
+ ethereumSwapperAddress: '0xe411921ee9eedfefd7b9ae15bf232bd36949fcbbc',
25
27
  smartVaultManagerContractAddress: '0x2638d6c0b4ef6dee04050fa0b07ca62500435747',
26
28
  };
@@ -0,0 +1,22 @@
1
+ import DepositToken from './DepositToken';
2
+ import VaultType from './VaultType';
3
+ export type ReducedProjectData = {
4
+ projectName: string;
5
+ logo: string;
6
+ bannerImage: string;
7
+ rewardImage: string;
8
+ rewardTooltipName: string;
9
+ projectInfoText: string;
10
+ projectType: string;
11
+ distributionType: VaultType;
12
+ liveUntil: string;
13
+ liveFrom: string;
14
+ tvlUsd: number;
15
+ tvl: number;
16
+ vAPY: number;
17
+ peakTVL: number;
18
+ chainIds: number[];
19
+ isFeatured: boolean;
20
+ currencies: DepositToken[];
21
+ isHidden: boolean;
22
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,33 @@
1
+ import { ChainId } from './ChainId';
2
+ import DepositToken from './DepositToken';
3
+ import Strategy from './Strategy';
4
+ import StretchGoal from './StretchGoal';
5
+ import VaultReward from './VaultReward';
6
+ type VaultData = {
7
+ depositToken: DepositToken;
8
+ vaultAddress: string;
9
+ projectName: string;
10
+ projectLogo: string;
11
+ projectType: string;
12
+ liveFrom: string;
13
+ liveUntil: string;
14
+ apy: number;
15
+ tvlUsd: number;
16
+ avgTvl: number;
17
+ tokenPrice: number;
18
+ change24h: number;
19
+ volume24h: number;
20
+ peakTvl: number;
21
+ onChainProjectId: number;
22
+ combinedTvl: number;
23
+ isActive: boolean;
24
+ owners: string[];
25
+ coingeckoId?: string;
26
+ expectedTge?: string;
27
+ chainId: ChainId;
28
+ strategies: Strategy[];
29
+ stretchGoals: StretchGoal[];
30
+ rewards: VaultReward[];
31
+ rewardTooltipName: string;
32
+ };
33
+ export default VaultData;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,11 +1,12 @@
1
1
  import Asset from './Asset';
2
2
  import BeanEntry from './BeanEntry';
3
3
  import BeansBalance from './BeansBalance';
4
+ import DetailedProjectData from './DetailedProjectData';
4
5
  import DeployedProject, { ProjectBacker } from './DeployedProject';
5
6
  import DeployedVault from './DeployedVault';
6
7
  import DepositToken from './DepositToken';
7
8
  import ELoyaltyCardTier from './ELoyaltyCardTier';
8
- import LinkWalletPayload from './LinkWalletPayload';
9
+ import { NearWalletPayload, SuiWalletPayload } from './LinkWalletPayload';
9
10
  import LoyaltyCard from './LoyaltyCard';
10
11
  import MyPerqData from './MyPerqData';
11
12
  import NFTBoost from './NFTBoost';
@@ -13,6 +14,7 @@ import PerqConfig from './PerqConfig';
13
14
  import PerqToBeansSwapInfo from './PerqToBeansSwapInfo';
14
15
  import QLFastRedeem from './QLFastRedeem';
15
16
  import { BasePayload, NonceEnrichedPayload, NonceEnrichedSignedPayload } from './SignedPayload';
17
+ import { ReducedProjectData } from './ReducedProjectData';
16
18
  import Strategy from './Strategy';
17
19
  import StretchGoal from './StretchGoal';
18
20
  import SwapInfo from './SwapInfo';
@@ -20,9 +22,13 @@ import UpgradeLoyaltyCardPayload from './UpgradeLoyaltyCardPayload';
20
22
  import UserRewards from './UserRewards';
21
23
  import UserVaultBalance from './UserVaultBalance';
22
24
  import Vault from './Vault';
25
+ import VaultData from './VaultData';
23
26
  import VaultReward, { RewardType } from './VaultReward';
24
27
  import VaultStats from './VaultStats';
25
28
  import VaultType from './VaultType';
26
29
  import VestingInfo from './VestingInfo';
27
30
  import YelayVersion from './YelayVersion';
28
- export { Asset, BasePayload, BeanEntry, BeansBalance, DeployedProject, DeployedVault, DepositToken, ELoyaltyCardTier, LinkWalletPayload, LoyaltyCard, MyPerqData, NFTBoost, NonceEnrichedPayload, NonceEnrichedSignedPayload, PerqConfig, PerqToBeansSwapInfo, ProjectBacker, QLFastRedeem, RewardType, Strategy, StretchGoal, SwapInfo, UpgradeLoyaltyCardPayload, UserRewards, UserVaultBalance, Vault, VaultReward, VaultStats, VaultType, VestingInfo, YelayVersion, };
31
+ import Earnings from './Earnings';
32
+ import LinkedPodWallets from './LinkedPodWallets';
33
+ import MigrationOption from './MigrationOption';
34
+ export { Asset, BasePayload, BeanEntry, BeansBalance, DeployedProject, DeployedVault, DepositToken, DetailedProjectData, ELoyaltyCardTier, NearWalletPayload, SuiWalletPayload, LinkedPodWallets, LoyaltyCard, MigrationOption, MyPerqData, NFTBoost, NonceEnrichedPayload, NonceEnrichedSignedPayload, PerqConfig, PerqToBeansSwapInfo, ProjectBacker, QLFastRedeem, ReducedProjectData, RewardType, Strategy, StretchGoal, SwapInfo, UpgradeLoyaltyCardPayload, UserRewards, UserVaultBalance, Vault, VaultData, VaultReward, VaultStats, VaultType, VestingInfo, YelayVersion, Earnings, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dripfi/drip-sdk",
3
- "version": "1.4.9",
3
+ "version": "1.4.11",
4
4
  "description": "Drip SDK",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,8 +13,8 @@
13
13
  "pretty": "prettier --write \"./**/*.{js,jsx,mjs,cjs,ts,tsx,json}\""
14
14
  },
15
15
  "dependencies": {
16
+ "@yelay-lite/sdk": "1.0.6",
16
17
  "@spool.fi/spool-v2-sdk": "2.0.53",
17
- "@yelay-lite/sdk": "0.0.11",
18
18
  "ethers": "^5.7.2"
19
19
  },
20
20
  "author": "",