@sonarwatch/portfolio-plugins 0.14.63 → 0.14.65
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 +21 -13
- package/package.json +4 -1
- package/src/plugins/01/constants.d.ts +1 -0
- package/src/plugins/01/helpers.d.ts +1 -0
- package/src/plugins/01/struct.d.ts +1 -0
- package/src/plugins/accessprotocol/constants.d.ts +1 -0
- package/src/plugins/accessprotocol/filters.d.ts +1 -0
- package/src/plugins/accessprotocol/structs.d.ts +1 -0
- package/src/plugins/adrastea/constants.d.ts +1 -0
- package/src/plugins/adrastea/structs.d.ts +1 -0
- package/src/plugins/adrena/constants.d.ts +1 -0
- package/src/plugins/adrena/filters.d.ts +1 -0
- package/src/plugins/adrena/helpers.d.ts +1 -0
- package/src/plugins/adrena/structs.d.ts +1 -0
- package/src/plugins/allbridge/constants.d.ts +1 -0
- package/src/plugins/allbridge/helpers.d.ts +1 -0
- package/src/plugins/armada-staking/constants.d.ts +1 -0
- package/src/plugins/armada-staking/filters.d.ts +1 -0
- package/src/plugins/armada-staking/structs.d.ts +1 -0
- package/src/plugins/atrix/constants.d.ts +1 -0
- package/src/plugins/atrix/structs.d.ts +1 -0
- package/src/plugins/aurory/constants.d.ts +1 -0
- package/src/plugins/aurory/helpers.d.ts +1 -0
- package/src/plugins/banx/constants.d.ts +1 -0
- package/src/plugins/banx/filters.d.ts +1 -0
- package/src/plugins/banx/structs.d.ts +1 -0
- package/src/plugins/bonfida/constants.d.ts +1 -0
- package/src/plugins/bonfida/filters.d.ts +1 -0
- package/src/plugins/bonfida/structs.d.ts +1 -0
- package/src/plugins/bonkrewards/constants.d.ts +1 -0
- package/src/plugins/bonkrewards/filters.d.ts +1 -0
- package/src/plugins/bonkrewards/structs.d.ts +1 -0
- package/src/plugins/bskt/constants.d.ts +1 -0
- package/src/plugins/bskt/filters.d.ts +1 -0
- package/src/plugins/bskt/structs.d.ts +1 -0
- package/src/plugins/citrus/constants.d.ts +1 -0
- package/src/plugins/citrus/filters.d.ts +1 -0
- package/src/plugins/clone/constants.d.ts +1 -0
- package/src/plugins/clone/helpers.d.ts +1 -0
- package/src/plugins/clone/structs.d.ts +1 -0
- package/src/plugins/cropper/constants.d.ts +1 -0
- package/src/plugins/cyberfrogs/constants.d.ts +1 -0
- package/src/plugins/cyberfrogs/structs.d.ts +1 -0
- package/src/plugins/daos/constants.d.ts +1 -0
- package/src/plugins/daos/helpers.d.ts +1 -0
- package/src/plugins/daos/structs/realms.d.ts +1 -0
- package/src/plugins/daos/types.d.ts +1 -0
- package/src/plugins/debridge/constants.d.ts +1 -0
- package/src/plugins/doubleup/structs.d.ts +1 -0
- package/src/plugins/drift/constants.d.ts +1 -0
- package/src/plugins/drift/depositsFetcher.d.ts +3 -0
- package/src/plugins/drift/depositsFetcher.js +41 -95
- package/src/plugins/drift/depositsFetcher.js.map +1 -1
- package/src/plugins/drift/filters.d.ts +1 -0
- package/src/plugins/drift/helpers.d.ts +1 -0
- package/src/plugins/drift/perpHelpers/constants.d.ts +1 -0
- package/src/plugins/drift/struct.d.ts +1 -0
- package/src/plugins/drift-market-maker-vault/constants.d.ts +1 -0
- package/src/plugins/drift-market-maker-vault/depositsFetcher.js +10 -2
- package/src/plugins/drift-market-maker-vault/depositsFetcher.js.map +1 -1
- package/src/plugins/drift-market-maker-vault/filters.d.ts +1 -1
- package/src/plugins/drift-market-maker-vault/filters.js +1 -4
- package/src/plugins/drift-market-maker-vault/filters.js.map +1 -1
- package/src/plugins/drift-market-maker-vault/helpers.d.ts +1 -0
- package/src/plugins/drift-market-maker-vault/helpers.js +38 -0
- package/src/plugins/drift-market-maker-vault/helpers.js.map +1 -0
- package/src/plugins/drift-market-maker-vault/structs.d.ts +1 -0
- package/src/plugins/drift-market-maker-vault/types.d.ts +2 -3
- package/src/plugins/drift-market-maker-vault/vaultsJob.js +20 -14
- package/src/plugins/drift-market-maker-vault/vaultsJob.js.map +1 -1
- package/src/plugins/elemental/filters.d.ts +1 -0
- package/src/plugins/elemental/helpers.d.ts +1 -0
- package/src/plugins/elemental/structs.d.ts +1 -0
- package/src/plugins/famousfoxfederation/constants.d.ts +1 -0
- package/src/plugins/flash/constants.d.ts +1 -0
- package/src/plugins/flash/filters.d.ts +1 -0
- package/src/plugins/flash/helpers.d.ts +1 -0
- package/src/plugins/flash/structs.d.ts +1 -0
- package/src/plugins/fluxbeam/structs.d.ts +1 -0
- package/src/plugins/foo/structs.d.ts +1 -0
- package/src/plugins/francium/constants.d.ts +1 -0
- package/src/plugins/francium/helpers.d.ts +1 -0
- package/src/plugins/francium/structs.d.ts +1 -0
- package/src/plugins/francium/tokens.d.ts +1 -0
- package/src/plugins/francium/types.d.ts +1 -0
- package/src/plugins/futarchy/constants.d.ts +1 -0
- package/src/plugins/futarchy/structs.d.ts +1 -0
- package/src/plugins/genesysgo/constants.d.ts +1 -0
- package/src/plugins/goosefx/constants.d.ts +1 -0
- package/src/plugins/goosefx/filters.d.ts +1 -0
- package/src/plugins/goosefx/structs.d.ts +1 -0
- package/src/plugins/grass/constants.d.ts +1 -0
- package/src/plugins/grass/helpers.d.ts +1 -0
- package/src/plugins/grass/structs.d.ts +1 -0
- package/src/plugins/hawksight/helper.d.ts +1 -0
- package/src/plugins/hedgehog/constants.d.ts +1 -0
- package/src/plugins/hedgehog/structs.d.ts +1 -0
- package/src/plugins/hxro/constants.d.ts +1 -0
- package/src/plugins/hxro/structs.d.ts +1 -0
- package/src/plugins/jito/structs.d.ts +1 -0
- package/src/plugins/joule/structs.d.ts +1 -0
- package/src/plugins/jupiter/exchange/constants.d.ts +1 -0
- package/src/plugins/jupiter/exchange/filters.d.ts +1 -0
- package/src/plugins/jupiter/exchange/structs.d.ts +1 -0
- package/src/plugins/jupiter/filters.d.ts +1 -0
- package/src/plugins/jupiter/helpers.d.ts +1 -0
- package/src/plugins/jupiter/launchpad/constants.d.ts +1 -0
- package/src/plugins/jupiter/launchpad/structs.d.ts +1 -0
- package/src/plugins/kamino/constants.d.ts +1 -0
- package/src/plugins/kamino/filters.d.ts +1 -0
- package/src/plugins/kamino/helpers/pdas.d.ts +1 -0
- package/src/plugins/kamino/structs/klend.d.ts +1 -0
- package/src/plugins/kamino/structs/vaults.d.ts +1 -0
- package/src/plugins/lifinity/constants.d.ts +1 -0
- package/src/plugins/lifinity/filters.d.ts +1 -0
- package/src/plugins/lifinity/structs.d.ts +1 -0
- package/src/plugins/loopscale/constants.d.ts +1 -0
- package/src/plugins/loopscale/filters.d.ts +1 -0
- package/src/plugins/loopscale/helpers.d.ts +1 -0
- package/src/plugins/loopscale/structs.d.ts +1 -0
- package/src/plugins/loverflow/constants.d.ts +1 -0
- package/src/plugins/loverflow/helpers.d.ts +1 -0
- package/src/plugins/loverflow/structs.d.ts +1 -0
- package/src/plugins/lulo/constants.d.ts +1 -0
- package/src/plugins/lulo/struct.d.ts +1 -0
- package/src/plugins/magiceden/constants.d.ts +1 -0
- package/src/plugins/magiceden/helpers.d.ts +1 -0
- package/src/plugins/magiceden/structs.d.ts +1 -0
- package/src/plugins/mango/constants.d.ts +1 -0
- package/src/plugins/mango/filters.d.ts +1 -0
- package/src/plugins/mango/struct.d.ts +1 -0
- package/src/plugins/marginfi/constants.d.ts +1 -0
- package/src/plugins/marginfi/filters.d.ts +1 -0
- package/src/plugins/marginfi/structs/Bank.d.ts +1 -0
- package/src/plugins/marginfi/structs/MarginfiAccount.d.ts +1 -0
- package/src/plugins/marinade/constants.d.ts +1 -0
- package/src/plugins/marinade/filters.d.ts +1 -0
- package/src/plugins/marinade/helpers.d.ts +1 -0
- package/src/plugins/marinade/structs.d.ts +1 -0
- package/src/plugins/meso/structs.d.ts +1 -0
- package/src/plugins/metaplex/constants.d.ts +1 -0
- package/src/plugins/metaplex/helpers.d.ts +1 -0
- package/src/plugins/meteora/constants.d.ts +1 -0
- package/src/plugins/meteora/dlmmHelper.d.ts +1 -0
- package/src/plugins/meteora/filters.d.ts +1 -0
- package/src/plugins/meteora/helpers.d.ts +1 -0
- package/src/plugins/meteora/struct.d.ts +1 -0
- package/src/plugins/meteora/types.d.ts +1 -0
- package/src/plugins/moonwalk/constants.d.ts +1 -0
- package/src/plugins/moonwalk/structs.d.ts +1 -0
- package/src/plugins/native-stake/solana/constants.d.ts +1 -0
- package/src/plugins/native-stake/solana/filters.d.ts +1 -0
- package/src/plugins/native-stake/solana/structs.d.ts +1 -0
- package/src/plugins/nosana/constants.d.ts +1 -0
- package/src/plugins/nosana/helpers.d.ts +1 -0
- package/src/plugins/nosana/structs.d.ts +1 -0
- package/src/plugins/nxfinance/constants.d.ts +1 -0
- package/src/plugins/orca/constants.d.ts +1 -0
- package/src/plugins/orca/filters.d.ts +1 -0
- package/src/plugins/orca/getWhirlpoolPositions.d.ts +1 -0
- package/src/plugins/orca/getWhirlpoolsJob.d.ts +1 -0
- package/src/plugins/orca/structs/oldLiquidities.d.ts +1 -0
- package/src/plugins/orca/structs/whirlpool.d.ts +1 -0
- package/src/plugins/orders/clobs-solana/filters.d.ts +1 -0
- package/src/plugins/orders/clobs-solana/structs.d.ts +1 -0
- package/src/plugins/parcl/constants.d.ts +1 -0
- package/src/plugins/parcl/filters.d.ts +1 -0
- package/src/plugins/parcl/helpers.d.ts +1 -0
- package/src/plugins/parcl/structs.d.ts +1 -0
- package/src/plugins/phoenix/constants.d.ts +1 -0
- package/src/plugins/phoenix/helpers/misc.d.ts +1 -0
- package/src/plugins/phoenix/structs/marketHeader.d.ts +1 -0
- package/src/plugins/phoenix/structs/misc.d.ts +1 -0
- package/src/plugins/phoenix/structs/seat.d.ts +1 -0
- package/src/plugins/picasso/constants.d.ts +1 -0
- package/src/plugins/picasso/helpers.d.ts +1 -0
- package/src/plugins/port/constants.d.ts +1 -0
- package/src/plugins/port/filters.d.ts +1 -0
- package/src/plugins/port/structs.d.ts +1 -0
- package/src/plugins/pyth/constants.d.ts +1 -0
- package/src/plugins/pyth/structs.d.ts +1 -0
- package/src/plugins/quarry/constants.d.ts +1 -0
- package/src/plugins/quarry/filters.d.ts +1 -0
- package/src/plugins/quarry/helpers.d.ts +1 -0
- package/src/plugins/quarry/types.d.ts +1 -0
- package/src/plugins/rain/constants.d.ts +1 -0
- package/src/plugins/rain/filters.d.ts +1 -0
- package/src/plugins/rain/helpers.d.ts +1 -0
- package/src/plugins/rain/structs/loan.d.ts +1 -0
- package/src/plugins/rain/structs/pool.d.ts +1 -0
- package/src/plugins/raydium/constants.d.ts +1 -0
- package/src/plugins/raydium/farmsJob.d.ts +1 -0
- package/src/plugins/raydium/filters.d.ts +1 -0
- package/src/plugins/raydium/helpers.d.ts +3 -2
- package/src/plugins/raydium/structs/amms.d.ts +1 -0
- package/src/plugins/raydium/structs/clmms.d.ts +1 -0
- package/src/plugins/raydium/structs/cpmm.d.ts +1 -0
- package/src/plugins/raydium/structs/farms.d.ts +1 -0
- package/src/plugins/raydium/structs/openOrders.d.ts +1 -0
- package/src/plugins/raydium/structs/staking.d.ts +1 -0
- package/src/plugins/raydium/types.d.ts +1 -0
- package/src/plugins/sandglass/constants.d.ts +1 -0
- package/src/plugins/sandglass/filters.d.ts +1 -0
- package/src/plugins/sandglass/structs.d.ts +1 -0
- package/src/plugins/save/constants.d.ts +1 -0
- package/src/plugins/save/structs.d.ts +1 -0
- package/src/plugins/save/types.d.ts +1 -0
- package/src/plugins/sharky/constants.d.ts +1 -0
- package/src/plugins/sharky/filters.d.ts +1 -0
- package/src/plugins/solayer/constants.d.ts +1 -0
- package/src/plugins/solayer/structs.d.ts +1 -0
- package/src/plugins/spdr/constants.d.ts +1 -0
- package/src/plugins/spdr/structs.d.ts +1 -0
- package/src/plugins/stabble/filters.d.ts +1 -0
- package/src/plugins/staratlas/constants.d.ts +1 -0
- package/src/plugins/staratlas/helpers.d.ts +1 -0
- package/src/plugins/staratlas/structs.d.ts +1 -0
- package/src/plugins/streamflow/constants.d.ts +1 -0
- package/src/plugins/streamflow/filters.d.ts +1 -0
- package/src/plugins/streamflow/structs.d.ts +1 -0
- package/src/plugins/suilend/airdropFetcher.d.ts +1 -0
- package/src/plugins/suilend/airdropFetcher.js +66 -34
- package/src/plugins/suilend/airdropFetcher.js.map +1 -1
- package/src/plugins/suilend/burnEventsJob.d.ts +3 -0
- package/src/plugins/suilend/burnEventsJob.js +68 -0
- package/src/plugins/suilend/burnEventsJob.js.map +1 -0
- package/src/plugins/suilend/constants.d.ts +2 -1
- package/src/plugins/suilend/constants.js +5 -4
- package/src/plugins/suilend/constants.js.map +1 -1
- package/src/plugins/suilend/index.js +2 -1
- package/src/plugins/suilend/index.js.map +1 -1
- package/src/plugins/suilend/types.d.ts +23 -0
- package/src/plugins/switchboard/helpers/getSwitchboardOnDemandPrice.d.ts +1 -0
- package/src/plugins/switchboard/helpers/getSwitchboardOnDemandPrices.d.ts +1 -0
- package/src/plugins/switchboard/helpers/getSwitchboardPrice.d.ts +1 -0
- package/src/plugins/switchboard/helpers/getSwitchboardPrices.d.ts +1 -0
- package/src/plugins/switchboard/structs.d.ts +1 -0
- package/src/plugins/symmetry/constants.d.ts +1 -0
- package/src/plugins/symmetry/filters.d.ts +1 -0
- package/src/plugins/symmetry/structs.d.ts +1 -0
- package/src/plugins/tensor/constants.d.ts +1 -0
- package/src/plugins/tensor/filters.d.ts +1 -0
- package/src/plugins/tensor/helpers.d.ts +1 -0
- package/src/plugins/tensor/struct.d.ts +1 -0
- package/src/plugins/texture/constants.d.ts +1 -0
- package/src/plugins/texture/structs.d.ts +1 -0
- package/src/plugins/tulip/constants.d.ts +1 -0
- package/src/plugins/tulip/structs.d.ts +1 -0
- package/src/plugins/uxd/constants.d.ts +1 -0
- package/src/plugins/uxd/structs.d.ts +1 -0
- package/src/plugins/vaultka/constants.d.ts +1 -0
- package/src/plugins/vaultka/structs.d.ts +1 -0
- package/src/plugins/whalesmarket/constants.d.ts +1 -0
- package/src/plugins/whalesmarket/depositFetcher.js +3 -1
- package/src/plugins/whalesmarket/depositFetcher.js.map +1 -1
- package/src/plugins/whalesmarket/structs.d.ts +1 -0
- package/src/plugins/wormhole/constants.d.ts +1 -0
- package/src/plugins/wormhole/helpers.d.ts +1 -0
- package/src/plugins/wormhole/structs.d.ts +1 -0
- package/src/plugins/zelo/constants.d.ts +1 -0
- package/src/plugins/zelo/structs.d.ts +1 -0
- package/src/plugins/zeta/constants.d.ts +1 -0
- package/src/plugins/zeta/helpers.d.ts +1 -0
- package/src/plugins/zeta/structs.d.ts +1 -0
- package/src/utils/clients/types.d.ts +1 -0
- package/src/utils/elementbuilder/AssetBuilder.d.ts +4 -11
- package/src/utils/elementbuilder/AssetBuilder.js +0 -34
- package/src/utils/elementbuilder/AssetBuilder.js.map +1 -1
- package/src/utils/elementbuilder/AssetGenericBuilder.d.ts +10 -0
- package/src/utils/elementbuilder/AssetGenericBuilder.js +49 -0
- package/src/utils/elementbuilder/AssetGenericBuilder.js.map +1 -0
- package/src/utils/elementbuilder/AssetTokenBuilder.d.ts +15 -0
- package/src/utils/elementbuilder/AssetTokenBuilder.js +46 -0
- package/src/utils/elementbuilder/AssetTokenBuilder.js.map +1 -0
- package/src/utils/elementbuilder/ConcentratedLiquidityParams.d.ts +1 -0
- package/src/utils/elementbuilder/ElementBorrowlendBuilder.d.ts +11 -6
- package/src/utils/elementbuilder/ElementBorrowlendBuilder.js +24 -10
- package/src/utils/elementbuilder/ElementBorrowlendBuilder.js.map +1 -1
- package/src/utils/elementbuilder/ElementMultipleBuilder.d.ts +5 -3
- package/src/utils/elementbuilder/ElementMultipleBuilder.js +7 -3
- package/src/utils/elementbuilder/ElementMultipleBuilder.js.map +1 -1
- package/src/utils/elementbuilder/LiquidityBuilder.d.ts +6 -6
- package/src/utils/elementbuilder/LiquidityBuilder.js +3 -3
- package/src/utils/elementbuilder/LiquidityBuilder.js.map +1 -1
- package/src/utils/elementbuilder/PortfolioAssetGenericParams.d.ts +12 -0
- package/src/utils/elementbuilder/PortfolioAssetGenericParams.js +3 -0
- package/src/utils/elementbuilder/PortfolioAssetGenericParams.js.map +1 -0
- package/src/utils/elementbuilder/{PortfolioAssetParams.d.ts → PortfolioAssetTokenParams.d.ts} +2 -1
- package/src/utils/elementbuilder/{PortfolioAssetParams.js → PortfolioAssetTokenParams.js} +1 -1
- package/src/utils/elementbuilder/PortfolioAssetTokenParams.js.map +1 -0
- package/src/utils/solana/constants.d.ts +1 -0
- package/src/utils/solana/fetchTokenSupplyAndDecimals.d.ts +1 -0
- package/src/utils/solana/filters.d.ts +1 -0
- package/src/utils/solana/getAutoParsedMultipleAccountsInfo.d.ts +1 -0
- package/src/utils/solana/getAutoParsedProgramAccounts.d.ts +1 -0
- package/src/utils/solana/getDecimals.d.ts +1 -0
- package/src/utils/solana/getMultipleAccountsInfoSafe.d.ts +1 -0
- package/src/utils/solana/getMultipleDecimals.d.ts +1 -0
- package/src/utils/solana/getMultipleDecimalsAsMap.d.ts +1 -0
- package/src/utils/solana/getParsedAccountInfo.d.ts +1 -0
- package/src/utils/solana/getParsedMultipleAccountsInfo.d.ts +1 -0
- package/src/utils/solana/getParsedProgramAccounts.d.ts +1 -0
- package/src/utils/solana/getProgramAccounts.d.ts +1 -0
- package/src/utils/solana/getSupply.d.ts +1 -0
- package/src/utils/solana/jupiter/deriveClaimStatus.d.ts +1 -0
- package/src/utils/solana/jupiter/deriveClaimStatuses.d.ts +1 -0
- package/src/utils/solana/jupiter/getMerkleDistributorPda.d.ts +1 -0
- package/src/utils/solana/pyth/helpers.d.ts +1 -0
- package/src/utils/solana/pyth/structs.d.ts +1 -0
- package/src/utils/solana/pyth/structsOld.d.ts +1 -0
- package/src/utils/solana/structs.d.ts +1 -0
- package/src/utils/solana/types.d.ts +1 -0
- package/src/utils/elementbuilder/PortfolioAssetParams.js.map +0 -1
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="jito-ts/node_modules/@solana/web3.js" />
|
1
2
|
import { GetProgramAccountsFilter } from '@solana/web3.js';
|
2
3
|
export declare const userAccountFilters: (owner: string) => GetProgramAccountsFilter[];
|
3
4
|
export declare const marketAccountFilters: GetProgramAccountsFilter[];
|
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="jito-ts/node_modules/@solana/web3.js" />
|
1
2
|
import { PublicKey } from '@solana/web3.js';
|
2
3
|
export declare function getProxyEscrowAddress(owner: string): PublicKey;
|
3
4
|
export declare function getProxyAddress(proxyEscrowAddress: string, owner: string): PublicKey;
|
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="jito-ts/node_modules/@solana/web3.js" />
|
1
2
|
import { GetProgramAccountsFilter } from '@solana/web3.js';
|
2
3
|
export declare const vestingAccountFilters: (address: string) => GetProgramAccountsFilter[];
|
3
4
|
export declare const withdrawalVestingAccountFilters: (address: string) => GetProgramAccountsFilter[];
|
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
13
|
};
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
-
exports.airdropFetcher = void 0;
|
15
|
+
exports.fetcher = exports.airdropFetcher = void 0;
|
16
16
|
const portfolio_core_1 = require("@sonarwatch/portfolio-core");
|
17
17
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
18
18
|
const AirdropFetcher_1 = require("../../AirdropFetcher");
|
@@ -25,6 +25,12 @@ const earlyUsers_json_1 = __importDefault(require("./earlyUsers.json"));
|
|
25
25
|
const bluefinLeagues_json_1 = __importDefault(require("./bluefinLeagues.json"));
|
26
26
|
const getKioskObjects_1 = require("../../utils/sui/getKioskObjects");
|
27
27
|
const getOwnedObjectsPreloaded_1 = require("../../utils/sui/getOwnedObjectsPreloaded");
|
28
|
+
const MemoizedCache_1 = require("../../utils/misc/MemoizedCache");
|
29
|
+
const getOwnedObjects_1 = require("../../utils/sui/getOwnedObjects");
|
30
|
+
const memoizedBurnEvents = new MemoizedCache_1.MemoizedCache('burnEvents', {
|
31
|
+
prefix: constants_1.platformId,
|
32
|
+
networkId: portfolio_core_1.NetworkId.sui,
|
33
|
+
});
|
28
34
|
const eligibleCollections = new Map([
|
29
35
|
[
|
30
36
|
'0x8f74a7d632191e29956df3843404f22d27bd84d92cca1b1abde621d033098769::rootlet::Rootlet',
|
@@ -49,46 +55,58 @@ const eligibleCollections = new Map([
|
|
49
55
|
]);
|
50
56
|
const capsuleType = '0x008a7e85138643db888096f2db04766d549ca496583e41c3a683c6e1539a64ac::suilend_capsule::SuilendCapsule';
|
51
57
|
const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
|
58
|
+
const client = (0, clients_1.getClientSui)();
|
59
|
+
const { capsuleRecord, pointsRecord } = yield memoizedBurnEvents.getItem(cache);
|
60
|
+
const capsuleAmountClaimed = capsuleRecord[owner];
|
61
|
+
const pointsAmountClaimed = pointsRecord[owner];
|
52
62
|
const [pointsAllocation, nftsAllocation] = yield Promise.all([
|
53
|
-
|
54
|
-
|
63
|
+
getPointsAllocationItem(owner, client, cache),
|
64
|
+
getNftsAllocationItems(owner, client),
|
55
65
|
]);
|
66
|
+
// This is because we are not able to compute the EXACT number of mSEND for the classic allocation
|
67
|
+
// So we expect that 95% of claimed or higher means it's claimed
|
68
|
+
const isPointsAllocClaimed = (0, bignumber_js_1.default)(pointsAmountClaimed)
|
69
|
+
.dividedBy(pointsAllocation)
|
70
|
+
.isGreaterThan(0.95);
|
56
71
|
return (0, AirdropFetcher_1.getAirdropRaw)({
|
57
72
|
statics: constants_1.airdropStatics,
|
58
73
|
items: [
|
59
74
|
{
|
60
|
-
amount: pointsAllocation,
|
61
|
-
isClaimed:
|
62
|
-
label: '
|
63
|
-
address: constants_1.
|
75
|
+
amount: pointsAmountClaimed !== null && pointsAmountClaimed !== void 0 ? pointsAmountClaimed : pointsAllocation,
|
76
|
+
isClaimed: isPointsAllocClaimed,
|
77
|
+
label: 'mSEND',
|
78
|
+
address: constants_1.mSendMint,
|
64
79
|
imageUri: constants_1.platform.image,
|
65
80
|
},
|
66
81
|
{
|
67
82
|
amount: nftsAllocation.collectionsAllocation,
|
68
|
-
isClaimed:
|
69
|
-
|
70
|
-
|
83
|
+
isClaimed: nftsAllocation.collectionsClaimed ===
|
84
|
+
nftsAllocation.collectionsAllocation,
|
85
|
+
label: 'mSEND',
|
86
|
+
address: constants_1.mSendMint,
|
71
87
|
imageUri: constants_1.platform.image,
|
72
88
|
},
|
73
89
|
{
|
74
|
-
amount: nftsAllocation.capsulesAllocation,
|
75
|
-
isClaimed:
|
76
|
-
label: '
|
77
|
-
address: constants_1.
|
90
|
+
amount: capsuleAmountClaimed !== null && capsuleAmountClaimed !== void 0 ? capsuleAmountClaimed : nftsAllocation.capsulesAllocation,
|
91
|
+
isClaimed: capsuleAmountClaimed === nftsAllocation.capsulesAllocation,
|
92
|
+
label: 'mSEND',
|
93
|
+
address: constants_1.mSendMint,
|
78
94
|
imageUri: constants_1.platform.image,
|
79
95
|
},
|
80
96
|
{
|
81
97
|
amount: getEarlyUserAllocation(owner),
|
82
|
-
|
83
|
-
|
84
|
-
|
98
|
+
// Those were airdropped directly inside the wallet
|
99
|
+
isClaimed: true,
|
100
|
+
label: 'mSEND',
|
101
|
+
address: constants_1.mSendMint,
|
85
102
|
imageUri: constants_1.platform.image,
|
86
103
|
},
|
87
104
|
{
|
88
105
|
amount: getBluefinLeagueAllocation(owner),
|
89
|
-
|
90
|
-
|
91
|
-
|
106
|
+
// Those were airdropped directly inside the wallet
|
107
|
+
isClaimed: true,
|
108
|
+
label: 'mSEND',
|
109
|
+
address: constants_1.mSendMint,
|
92
110
|
imageUri: constants_1.platform.image,
|
93
111
|
},
|
94
112
|
],
|
@@ -99,12 +117,7 @@ exports.airdropFetcher = {
|
|
99
117
|
networkId: portfolio_core_1.NetworkId.sui,
|
100
118
|
executor,
|
101
119
|
};
|
102
|
-
|
103
|
-
// airdropFetcher,
|
104
|
-
// platform.id,
|
105
|
-
// 'suilend-airdrop',
|
106
|
-
// airdropStatics.claimEnd
|
107
|
-
// );
|
120
|
+
exports.fetcher = (0, AirdropFetcher_1.airdropFetcherToFetcher)(exports.airdropFetcher, constants_1.platform.id, 'suilend-airdrop', constants_1.airdropStatics.claimEnd);
|
108
121
|
function getEarlyUserAllocation(owner) {
|
109
122
|
if (earlyUsers_json_1.default.includes(owner))
|
110
123
|
return 512;
|
@@ -113,21 +126,23 @@ function getEarlyUserAllocation(owner) {
|
|
113
126
|
function getBluefinLeagueAllocation(owner) {
|
114
127
|
return bluefinLeagues_json_1.default.includes(owner) ? 6.08 : 0;
|
115
128
|
}
|
116
|
-
function
|
129
|
+
function getNftsAllocationItems(owner, client) {
|
117
130
|
return __awaiter(this, void 0, void 0, function* () {
|
118
|
-
const client = (0, clients_1.getClientSui)();
|
119
131
|
const eligibleCollectionsTypes = Array.from(eligibleCollections.keys());
|
120
132
|
const objects = yield (0, getOwnedObjectsPreloaded_1.getOwnedObjectsPreloaded)(client, owner);
|
121
133
|
const kioskObjects = (yield (0, getKioskObjects_1.getKiosksDynamicFieldsObjects)(objects)).flat();
|
122
|
-
|
134
|
+
const elligibleNfts = [];
|
135
|
+
const collectionsAllocations = [];
|
123
136
|
let capsulesAllocation = 0;
|
124
137
|
[...objects, ...kioskObjects].forEach((obj) => {
|
125
138
|
var _a;
|
126
139
|
if ((_a = obj.data) === null || _a === void 0 ? void 0 : _a.content) {
|
127
140
|
if (eligibleCollectionsTypes.includes(obj.data.content.type)) {
|
128
141
|
const nftAlloc = eligibleCollections.get(obj.data.content.type);
|
129
|
-
if (nftAlloc)
|
130
|
-
|
142
|
+
if (nftAlloc) {
|
143
|
+
elligibleNfts.push(obj.data.objectId);
|
144
|
+
collectionsAllocations.push(nftAlloc);
|
145
|
+
}
|
131
146
|
}
|
132
147
|
else if (obj.data.content.type === capsuleType) {
|
133
148
|
const capsule = obj.data.content.fields;
|
@@ -140,16 +155,33 @@ function getNftsAllocation(owner) {
|
|
140
155
|
}
|
141
156
|
}
|
142
157
|
});
|
158
|
+
let totalAlloc = 0;
|
159
|
+
let totalClaimed = 0;
|
160
|
+
const nftsObjects = yield Promise.all([
|
161
|
+
...elligibleNfts.map((obj) => (0, getOwnedObjects_1.getOwnedObjects)(client, obj, {
|
162
|
+
filter: {
|
163
|
+
StructType: constants_1.mSendCoinType,
|
164
|
+
},
|
165
|
+
})),
|
166
|
+
]);
|
167
|
+
for (let i = 0; i < elligibleNfts.length; i += 1) {
|
168
|
+
const claimed = nftsObjects[i];
|
169
|
+
const alloc = collectionsAllocations[i];
|
170
|
+
if (claimed.length === 0) {
|
171
|
+
totalClaimed += alloc;
|
172
|
+
}
|
173
|
+
totalAlloc += alloc;
|
174
|
+
}
|
143
175
|
return {
|
144
|
-
collectionsAllocation,
|
176
|
+
collectionsAllocation: totalAlloc,
|
145
177
|
capsulesAllocation,
|
178
|
+
collectionsClaimed: totalClaimed,
|
146
179
|
};
|
147
180
|
});
|
148
181
|
}
|
149
|
-
function
|
182
|
+
function getPointsAllocationItem(owner, client, cache) {
|
150
183
|
var _a, _b, _c, _d;
|
151
184
|
return __awaiter(this, void 0, void 0, function* () {
|
152
|
-
const client = (0, clients_1.getClientSui)();
|
153
185
|
const obligationsCapFields = yield (0, getOwnedObjectsPreloaded_1.getOwnedObjectsPreloaded)(client, owner, {
|
154
186
|
filter: { Package: constants_1.packageId },
|
155
187
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"airdropFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/suilend/airdropFetcher.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+DAAuD;AACvD,gEAAqC;AACrC,
|
1
|
+
{"version":3,"file":"airdropFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/suilend/airdropFetcher.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,68 @@
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
const portfolio_core_1 = require("@sonarwatch/portfolio-core");
|
16
|
+
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
17
|
+
const clients_1 = require("../../utils/clients");
|
18
|
+
const constants_1 = require("./constants");
|
19
|
+
const queryEvents_1 = require("../../utils/sui/queryEvents");
|
20
|
+
const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
|
21
|
+
const client = (0, clients_1.getClientSui)();
|
22
|
+
const [pointsBurnEvents, capsuleBurnEvents] = yield Promise.all([
|
23
|
+
(0, queryEvents_1.queryEvents)(client, {
|
24
|
+
MoveEventType: '0xf4e0686b311e9b9d6da7e61fc42dae4254828f5ee3ded8ab5480ecd27e46ff08::points::BurnEvent',
|
25
|
+
}),
|
26
|
+
(0, queryEvents_1.queryEvents)(client, {
|
27
|
+
MoveEventType: '0xf4e0686b311e9b9d6da7e61fc42dae4254828f5ee3ded8ab5480ecd27e46ff08::capsule::BurnEvent',
|
28
|
+
}),
|
29
|
+
]);
|
30
|
+
const pointsBurnByUser = pointsBurnEvents.reduce((obj, event) => {
|
31
|
+
if (event.parsedJson)
|
32
|
+
// eslint-disable-next-line no-param-reassign
|
33
|
+
obj[event.sender] = (0, bignumber_js_1.default)(event.parsedJson.claim_amount)
|
34
|
+
.dividedBy(Math.pow(10, 6))
|
35
|
+
.toNumber();
|
36
|
+
return obj;
|
37
|
+
}, {});
|
38
|
+
const capsuleBurnByUser = capsuleBurnEvents.reduce((obj, event) => {
|
39
|
+
if (event.parsedJson) {
|
40
|
+
const pastAmount = obj[event.sender];
|
41
|
+
if (pastAmount) {
|
42
|
+
// eslint-disable-next-line no-param-reassign
|
43
|
+
obj[event.sender] = (0, bignumber_js_1.default)(event.parsedJson.claim_amount)
|
44
|
+
.dividedBy(Math.pow(10, 6))
|
45
|
+
.plus(pastAmount)
|
46
|
+
.toNumber();
|
47
|
+
}
|
48
|
+
else {
|
49
|
+
// eslint-disable-next-line no-param-reassign
|
50
|
+
obj[event.sender] = (0, bignumber_js_1.default)(event.parsedJson.claim_amount)
|
51
|
+
.dividedBy(Math.pow(10, 6))
|
52
|
+
.toNumber();
|
53
|
+
}
|
54
|
+
}
|
55
|
+
return obj;
|
56
|
+
}, {});
|
57
|
+
yield cache.setItem('burnEvents', {
|
58
|
+
capsuleRecord: capsuleBurnByUser,
|
59
|
+
pointsRecord: pointsBurnByUser,
|
60
|
+
}, { prefix: constants_1.platformId, networkId: portfolio_core_1.NetworkId.sui });
|
61
|
+
});
|
62
|
+
const job = {
|
63
|
+
id: `${constants_1.platformId}-burn-events`,
|
64
|
+
executor,
|
65
|
+
label: 'normal',
|
66
|
+
};
|
67
|
+
exports.default = job;
|
68
|
+
//# sourceMappingURL=burnEventsJob.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"burnEventsJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/suilend/burnEventsJob.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,+DAAuD;AACvD,gEAAqC;AAGrC,iDAAmD;AACnD,2CAAyC;AAEzC,6DAA0D;AAE1D,MAAM,QAAQ,GAAgB,CAAO,KAAY,EAAE,EAAE;IACnD,MAAM,MAAM,GAAG,IAAA,sBAAY,GAAE,CAAC;IAE9B,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC9D,IAAA,yBAAW,EAAgB,MAAM,EAAE;YACjC,aAAa,EACX,uFAAuF;SAC1F,CAAC;QACF,IAAA,yBAAW,EAAgB,MAAM,EAAE;YACjC,aAAa,EACX,wFAAwF;SAC3F,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CAC9C,CAAC,GAA2B,EAAE,KAAK,EAAE,EAAE;QACrC,IAAI,KAAK,CAAC,UAAU;YAClB,6CAA6C;YAC7C,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAA,sBAAS,EAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;iBACzD,SAAS,CAAC,SAAA,EAAE,EAAI,CAAC,CAAA,CAAC;iBAClB,QAAQ,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAChD,CAAC,GAA2B,EAAE,KAAK,EAAE,EAAE;QACrC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACrC,IAAI,UAAU,EAAE,CAAC;gBACf,6CAA6C;gBAC7C,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAA,sBAAS,EAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;qBACzD,SAAS,CAAC,SAAA,EAAE,EAAI,CAAC,CAAA,CAAC;qBAClB,IAAI,CAAC,UAAU,CAAC;qBAChB,QAAQ,EAAE,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,6CAA6C;gBAC7C,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAA,sBAAS,EAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;qBACzD,SAAS,CAAC,SAAA,EAAE,EAAI,CAAC,CAAA,CAAC;qBAClB,QAAQ,EAAE,CAAC;YAChB,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,KAAK,CAAC,OAAO,CACjB,YAAY,EACZ;QACE,aAAa,EAAE,iBAAiB;QAChC,YAAY,EAAE,gBAAgB;KAC/B,EACD,EAAE,MAAM,EAAE,sBAAU,EAAE,SAAS,EAAE,0BAAS,CAAC,GAAG,EAAE,CACjD,CAAC;AACJ,CAAC,CAAA,CAAC;AAEF,MAAM,GAAG,GAAQ;IACf,EAAE,EAAE,GAAG,sBAAU,cAAc;IAC/B,QAAQ;IACR,KAAK,EAAE,QAAQ;CAChB,CAAC;AACF,kBAAe,GAAG,CAAC"}
|
@@ -3,7 +3,8 @@ import { AirdropStatics } from '../../AirdropFetcher';
|
|
3
3
|
export declare const platformId = "suilend";
|
4
4
|
export declare const platform: Platform;
|
5
5
|
export declare const airdropStatics: AirdropStatics;
|
6
|
-
export declare const
|
6
|
+
export declare const mSendMint = "0xda097d57ae887fbd002fb5847dd0ab47ae7e1b183fd36832a51182c52257e1bc::msend_series_1::MSEND_SERIES_1";
|
7
|
+
export declare const mSendCoinType = "0x2::coin::Coin<0xda097d57ae887fbd002fb5847dd0ab47ae7e1b183fd36832a51182c52257e1bc::msend_series_1::MSEND_SERIES_1>";
|
7
8
|
export declare const suilendPointsType = "34fe4f3c9e450fed4d0a3c587ed842eec5313c30c3cc3c0841247c49425e246b::suilend_point::SUILEND_POINT";
|
8
9
|
export declare const packageId = "0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf";
|
9
10
|
export declare const obligationType = "0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf::obligation::Obligation";
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.marketsKey = exports.poolsKey = exports.obligationOwnerCapType = exports.marketsRegistry = exports.mainMarket = exports.obligationType = exports.packageId = exports.suilendPointsType = exports.
|
3
|
+
exports.marketsKey = exports.poolsKey = exports.obligationOwnerCapType = exports.marketsRegistry = exports.mainMarket = exports.obligationType = exports.packageId = exports.suilendPointsType = exports.mSendCoinType = exports.mSendMint = exports.airdropStatics = exports.platform = exports.platformId = void 0;
|
4
4
|
exports.platformId = 'suilend';
|
5
5
|
exports.platform = {
|
6
6
|
id: exports.platformId,
|
@@ -16,10 +16,11 @@ exports.airdropStatics = {
|
|
16
16
|
emitterName: 'Suilend',
|
17
17
|
id: 'suilend-airdrop',
|
18
18
|
image: 'https://sonar.watch/img/platforms/suilend.webp',
|
19
|
-
claimEnd:
|
20
|
-
claimStart:
|
19
|
+
claimEnd: 1765512000000,
|
20
|
+
claimStart: 1733976000000,
|
21
21
|
};
|
22
|
-
exports.
|
22
|
+
exports.mSendMint = '0xda097d57ae887fbd002fb5847dd0ab47ae7e1b183fd36832a51182c52257e1bc::msend_series_1::MSEND_SERIES_1';
|
23
|
+
exports.mSendCoinType = `0x2::coin::Coin<${exports.mSendMint}>`;
|
23
24
|
exports.suilendPointsType = '34fe4f3c9e450fed4d0a3c587ed842eec5313c30c3cc3c0841247c49425e246b::suilend_point::SUILEND_POINT';
|
24
25
|
exports.packageId = '0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf';
|
25
26
|
exports.obligationType = `${exports.packageId}::obligation::Obligation`;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/suilend/constants.ts"],"names":[],"mappings":";;;AAGa,QAAA,UAAU,GAAG,SAAS,CAAC;AACvB,QAAA,QAAQ,GAAa;IAChC,EAAE,EAAE,kBAAU;IACd,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,gDAAgD;IACvD,WAAW,EAAE,SAAS,EAAE,sCAAsC;IAC9D,OAAO,EAAE,yBAAyB;IAClC,OAAO,EAAE,qCAAqC;CAC/C,CAAC;AAEW,QAAA,cAAc,GAAmB;IAC5C,SAAS,EAAE,yBAAyB;IACpC,WAAW,EAAE,oBAAoB;IACjC,WAAW,EAAE,SAAS;IACtB,EAAE,EAAE,iBAAiB;IACrB,KAAK,EAAE,gDAAgD;IACvD,QAAQ,EAAE,
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/suilend/constants.ts"],"names":[],"mappings":";;;AAGa,QAAA,UAAU,GAAG,SAAS,CAAC;AACvB,QAAA,QAAQ,GAAa;IAChC,EAAE,EAAE,kBAAU;IACd,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,gDAAgD;IACvD,WAAW,EAAE,SAAS,EAAE,sCAAsC;IAC9D,OAAO,EAAE,yBAAyB;IAClC,OAAO,EAAE,qCAAqC;CAC/C,CAAC;AAEW,QAAA,cAAc,GAAmB;IAC5C,SAAS,EAAE,yBAAyB;IACpC,WAAW,EAAE,oBAAoB;IACjC,WAAW,EAAE,SAAS;IACtB,EAAE,EAAE,iBAAiB;IACrB,KAAK,EAAE,gDAAgD;IACvD,QAAQ,EAAE,aAAa;IACvB,UAAU,EAAE,aAAa;CAC1B,CAAC;AAEW,QAAA,SAAS,GACpB,oGAAoG,CAAC;AAC1F,QAAA,aAAa,GAAG,mBAAmB,iBAAS,GAAG,CAAC;AAChD,QAAA,iBAAiB,GAC5B,gGAAgG,CAAC;AACtF,QAAA,SAAS,GACpB,oEAAoE,CAAC;AAE1D,QAAA,cAAc,GAAG,GAAG,iBAAS,0BAA0B,CAAC;AACxD,QAAA,UAAU,GACrB,oEAAoE,CAAC;AAC1D,QAAA,eAAe,GAC1B,oEAAoE,CAAC;AAE1D,QAAA,sBAAsB,GAAG,GAAG,iBAAS,wCAAwC,iBAAS,EAAE,CAAC;AACzF,QAAA,QAAQ,GAAG,WAAW,CAAC;AACvB,QAAA,UAAU,GAAG,SAAS,CAAC"}
|
@@ -9,7 +9,8 @@ const obligationsFetcher_1 = __importDefault(require("./obligationsFetcher"));
|
|
9
9
|
const marketsJob_1 = __importDefault(require("./marketsJob"));
|
10
10
|
const airdropFetcher_1 = require("./airdropFetcher");
|
11
11
|
Object.defineProperty(exports, "airdropFetcher", { enumerable: true, get: function () { return airdropFetcher_1.airdropFetcher; } });
|
12
|
+
const burnEventsJob_1 = __importDefault(require("./burnEventsJob"));
|
12
13
|
exports.platforms = [constants_1.platform];
|
13
|
-
exports.jobs = [marketsJob_1.default];
|
14
|
+
exports.jobs = [marketsJob_1.default, burnEventsJob_1.default];
|
14
15
|
exports.fetchers = [obligationsFetcher_1.default];
|
15
16
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/suilend/index.ts"],"names":[],"mappings":";;;;;;AAGA,2CAAuC;AACvC,8EAAsD;AACtD,8DAAsC;AACtC,qDAAkD;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/suilend/index.ts"],"names":[],"mappings":";;;;;;AAGA,2CAAuC;AACvC,8EAAsD;AACtD,8DAAsC;AACtC,qDAAkD;AAMzC,+FANA,+BAAc,OAMA;AALvB,oEAA2C;AAE9B,QAAA,SAAS,GAAe,CAAC,oBAAQ,CAAC,CAAC;AACnC,QAAA,IAAI,GAAU,CAAC,oBAAU,EAAE,uBAAY,CAAC,CAAC;AACzC,QAAA,QAAQ,GAAc,CAAC,4BAAkB,CAAC,CAAC"}
|
@@ -143,3 +143,26 @@ export type SuilendCapsule = {
|
|
143
143
|
id: ID;
|
144
144
|
rarity: 'rare' | 'common' | 'uncommon';
|
145
145
|
};
|
146
|
+
export type BurnEvents = {
|
147
|
+
pointsRecord: Record<string, number>;
|
148
|
+
capsuleRecord: Record<string, number>;
|
149
|
+
};
|
150
|
+
export type BurnEvent = {
|
151
|
+
id: EventId;
|
152
|
+
packageId: string;
|
153
|
+
transactionModule: string;
|
154
|
+
sender: string;
|
155
|
+
type: string;
|
156
|
+
parsedJson: BurnEventJSON;
|
157
|
+
bcs: string;
|
158
|
+
};
|
159
|
+
export type EventId = {
|
160
|
+
txDigest: string;
|
161
|
+
eventSeq: string;
|
162
|
+
};
|
163
|
+
export type BurnEventJSON = {
|
164
|
+
claim_amount: string;
|
165
|
+
manager_id: string;
|
166
|
+
points_burned?: string;
|
167
|
+
rarity?: string;
|
168
|
+
};
|
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="jito-ts/node_modules/@solana/web3.js" />
|
1
2
|
import { PublicKey } from '@solana/web3.js';
|
2
3
|
import { SolanaClient } from '../../../utils/clients/types';
|
3
4
|
export declare function getSwitchboardOnDemandPrices(client: SolanaClient, onDemandPubkeys: PublicKey[]): Promise<(number | undefined)[]>;
|
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="jito-ts/node_modules/@solana/web3.js" />
|
1
2
|
import { PublicKey } from '@solana/web3.js';
|
2
3
|
import { SolanaClient } from '../../../utils/clients/types';
|
3
4
|
export declare function getSwitchboardOnDemandPrice(client: SolanaClient, onDemandPubkey: PublicKey): Promise<number | undefined>;
|
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="jito-ts/node_modules/@solana/web3.js" />
|
1
2
|
import { PublicKey } from '@solana/web3.js';
|
2
3
|
import { SolanaClient } from '../../../utils/clients/types';
|
3
4
|
export declare function getSwitchboardPrice(connection: SolanaClient, feedAddress: PublicKey): Promise<number | null>;
|
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="jito-ts/node_modules/@solana/web3.js" />
|
1
2
|
import { PublicKey } from '@solana/web3.js';
|
2
3
|
import { SolanaClient } from '../../../utils/clients/types';
|
3
4
|
export declare function getSwitchboardPrices(connection: SolanaClient, feedAddresses: PublicKey[]): Promise<(number | null)[]>;
|
@@ -1,3 +1,4 @@
|
|
1
|
+
/// <reference types="jito-ts/node_modules/@solana/web3.js" />
|
1
2
|
import { GetProgramAccountsFilter } from '@solana/web3.js';
|
2
3
|
export declare const singleListingFilter: (owner: string) => GetProgramAccountsFilter[];
|
3
4
|
export declare const poolFilter: (owner: string) => GetProgramAccountsFilter[];
|