From 7303100d84cdaff1495909a9c87761467ecde12f Mon Sep 17 00:00:00 2001 From: Noah Saso Date: Tue, 10 Sep 2024 15:54:39 -0400 Subject: [PATCH] index hooks --- src/formulas/formulas/contract/external/cw4Group.ts | 7 +++++++ src/formulas/formulas/contract/staking/cw20Stake.ts | 10 ++++++++++ .../formulas/contract/voting/daoVotingCw721Staked.ts | 7 +++++++ .../formulas/contract/voting/daoVotingNativeStaked.ts | 10 ++++++++++ .../formulas/contract/voting/daoVotingOnftStaked.ts | 6 ++++++ .../contract/voting/daoVotingSgCommunityNft.ts | 7 +++++++ .../formulas/contract/voting/daoVotingTokenStaked.ts | 10 ++++++++++ src/transformers/transformers/common.ts | 4 +++- src/transformers/transformers/external/cw4Group.ts | 5 +++-- 9 files changed, 63 insertions(+), 3 deletions(-) diff --git a/src/formulas/formulas/contract/external/cw4Group.ts b/src/formulas/formulas/contract/external/cw4Group.ts index a68f389b..c7765645 100644 --- a/src/formulas/formulas/contract/external/cw4Group.ts +++ b/src/formulas/formulas/contract/external/cw4Group.ts @@ -54,3 +54,10 @@ export const admin = makeSimpleContractFormula({ // Null if no admin exists. fallback: null, }) + +export const hooks = makeSimpleContractFormula({ + transformation: 'hooks', + fallbackKeys: ['cw4-hooks'], + fallback: { hooks: [] }, + transform: (hooks) => ({ hooks }), +}) diff --git a/src/formulas/formulas/contract/staking/cw20Stake.ts b/src/formulas/formulas/contract/staking/cw20Stake.ts index b554d8ea..e24503a6 100644 --- a/src/formulas/formulas/contract/staking/cw20Stake.ts +++ b/src/formulas/formulas/contract/staking/cw20Stake.ts @@ -302,3 +302,13 @@ export const topStakers: ContractFormula< })) }, } + +export const getHooks = makeSimpleContractFormula< + string[], + { hooks: string[] } +>({ + transformation: 'hooks', + fallbackKeys: ['hooks'], + fallback: { hooks: [] }, + transform: (hooks) => ({ hooks }), +}) diff --git a/src/formulas/formulas/contract/voting/daoVotingCw721Staked.ts b/src/formulas/formulas/contract/voting/daoVotingCw721Staked.ts index 297dd732..8fa967dd 100644 --- a/src/formulas/formulas/contract/voting/daoVotingCw721Staked.ts +++ b/src/formulas/formulas/contract/voting/daoVotingCw721Staked.ts @@ -256,3 +256,10 @@ export const ownersOfStakedNfts: ContractFormula> = { ) }, } + +export const hooks = makeSimpleContractFormula({ + transformation: 'hooks', + fallbackKeys: ['hooks'], + fallback: { hooks: [] }, + transform: (hooks) => ({ hooks }), +}) diff --git a/src/formulas/formulas/contract/voting/daoVotingNativeStaked.ts b/src/formulas/formulas/contract/voting/daoVotingNativeStaked.ts index 19abbe57..29cc98ab 100644 --- a/src/formulas/formulas/contract/voting/daoVotingNativeStaked.ts +++ b/src/formulas/formulas/contract/voting/daoVotingNativeStaked.ts @@ -152,3 +152,13 @@ export const topStakers: ContractFormula = { return stakers }, } + +export const getHooks = makeSimpleContractFormula< + string[], + { hooks: string[] } +>({ + transformation: 'hooks', + fallbackKeys: ['hooks'], + fallback: { hooks: [] }, + transform: (hooks) => ({ hooks }), +}) diff --git a/src/formulas/formulas/contract/voting/daoVotingOnftStaked.ts b/src/formulas/formulas/contract/voting/daoVotingOnftStaked.ts index 353ac462..57caa015 100644 --- a/src/formulas/formulas/contract/voting/daoVotingOnftStaked.ts +++ b/src/formulas/formulas/contract/voting/daoVotingOnftStaked.ts @@ -263,3 +263,9 @@ export const ownersOfStakedNfts: ContractFormula> = { ) }, } +export const hooks = makeSimpleContractFormula({ + transformation: 'hooks', + fallbackKeys: ['hooks'], + fallback: { hooks: [] }, + transform: (hooks) => ({ hooks }), +}) diff --git a/src/formulas/formulas/contract/voting/daoVotingSgCommunityNft.ts b/src/formulas/formulas/contract/voting/daoVotingSgCommunityNft.ts index f877e139..c58fc4aa 100644 --- a/src/formulas/formulas/contract/voting/daoVotingSgCommunityNft.ts +++ b/src/formulas/formulas/contract/voting/daoVotingSgCommunityNft.ts @@ -182,3 +182,10 @@ export const allVotersWithVotingPower: ContractFormula< return voters }, } + +export const hooks = makeSimpleContractFormula({ + transformation: 'hooks', + fallbackKeys: ['hooks'], + fallback: { hooks: [] }, + transform: (hooks) => ({ hooks }), +}) diff --git a/src/formulas/formulas/contract/voting/daoVotingTokenStaked.ts b/src/formulas/formulas/contract/voting/daoVotingTokenStaked.ts index 016de508..47b377df 100644 --- a/src/formulas/formulas/contract/voting/daoVotingTokenStaked.ts +++ b/src/formulas/formulas/contract/voting/daoVotingTokenStaked.ts @@ -164,3 +164,13 @@ export const topStakers: ContractFormula = { return stakers }, } + +export const getHooks = makeSimpleContractFormula< + string[], + { hooks: string[] } +>({ + transformation: 'hooks', + fallbackKeys: ['hooks'], + fallback: { hooks: [] }, + transform: (hooks) => ({ hooks }), +}) diff --git a/src/transformers/transformers/common.ts b/src/transformers/transformers/common.ts index e826aad5..0a662c37 100644 --- a/src/transformers/transformers/common.ts +++ b/src/transformers/transformers/common.ts @@ -19,4 +19,6 @@ const owner: Transformer = { getValue: (event) => event.valueJson.owner, } -export default [info, ownership, owner] +const hooks: Transformer = makeTransformer([], 'hooks') + +export default [info, ownership, owner, hooks] diff --git a/src/transformers/transformers/external/cw4Group.ts b/src/transformers/transformers/external/cw4Group.ts index 61bf60b1..8ae7e9ee 100644 --- a/src/transformers/transformers/external/cw4Group.ts +++ b/src/transformers/transformers/external/cw4Group.ts @@ -1,7 +1,8 @@ -import { makeTransformerForMap } from '../../utils' +import { makeTransformer, makeTransformerForMap } from '../../utils' const CODE_IDS_KEYS = ['cw4-group'] const member = makeTransformerForMap(CODE_IDS_KEYS, 'member', 'members') +const hooks = makeTransformer(CODE_IDS_KEYS, 'hooks', 'cw4-hooks') -export default [member] +export default [member, hooks]