UNPKG

@wuwei-labs/srsly

Version:
103 lines 5.04 kB
/** * This code was AUTOGENERATED using the Codama library. * Please DO NOT EDIT THIS FILE, instead use visitors * to add features, then rerun Codama to update it. * * @see https://github.com/codama-idl/codama */ import { assertAccountExists, assertAccountsExist, combineCodec, decodeAccount, fetchEncodedAccount, fetchEncodedAccounts, fixDecoderSize, fixEncoderSize, getAddressDecoder, getAddressEncoder, getBooleanDecoder, getBooleanEncoder, getBytesDecoder, getBytesEncoder, getI64Decoder, getI64Encoder, getOptionDecoder, getOptionEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, transformEncoder, } from '@solana/kit'; import { getTriggerDecoder, getTriggerEncoder } from '../types'; export const CONTRACT_STATE_DISCRIMINATOR = new Uint8Array([190, 138, 10, 223, 189, 116, 222, 115]); export function getContractStateDiscriminatorBytes() { return fixEncoderSize(getBytesEncoder(), 8).encode(CONTRACT_STATE_DISCRIMINATOR); } /** Gets the encoder for {@link ContractStateArgs} account data. */ export function getContractStateEncoder() { return transformEncoder(getStructEncoder([ ['discriminator', fixEncoderSize(getBytesEncoder(), 8)], ['version', getU32Encoder()], ['bump', getU8Encoder()], ['toClose', getBooleanEncoder()], ['rate', getU64Encoder()], ['durationMinSeconds', getI64Encoder()], ['durationMaxSeconds', getI64Encoder()], ['cancelDelayMin', getI64Encoder()], ['weight', getU8Encoder()], ['reservationsDisabled', getBooleanEncoder()], ['owner', getAddressEncoder()], ['fleet', getAddressEncoder()], ['gameId', getAddressEncoder()], ['ownerProfile', getAddressEncoder()], ['activeRental', getAddressEncoder()], ['queuedRental', getAddressEncoder()], ['delegate', getOptionEncoder(getAddressEncoder())], ['thread', getAddressEncoder()], ['trigger', getTriggerEncoder()], ['managedTokenAccount', getAddressEncoder()], ['totalEarned', getU64Encoder()], ['ownerClaimable', getU64Encoder()], ['feeClaimable', getU64Encoder()], ['contestedThreshold', getU8Encoder()], ['contestedCount', getU8Encoder()], ['createdAt', getI64Encoder()], ['updatedAt', getI64Encoder()], ]), value => ({ ...value, discriminator: CONTRACT_STATE_DISCRIMINATOR })); } /** Gets the decoder for {@link ContractState} account data. */ export function getContractStateDecoder() { return getStructDecoder([ ['discriminator', fixDecoderSize(getBytesDecoder(), 8)], ['version', getU32Decoder()], ['bump', getU8Decoder()], ['toClose', getBooleanDecoder()], ['rate', getU64Decoder()], ['durationMinSeconds', getI64Decoder()], ['durationMaxSeconds', getI64Decoder()], ['cancelDelayMin', getI64Decoder()], ['weight', getU8Decoder()], ['reservationsDisabled', getBooleanDecoder()], ['owner', getAddressDecoder()], ['fleet', getAddressDecoder()], ['gameId', getAddressDecoder()], ['ownerProfile', getAddressDecoder()], ['activeRental', getAddressDecoder()], ['queuedRental', getAddressDecoder()], ['delegate', getOptionDecoder(getAddressDecoder())], ['thread', getAddressDecoder()], ['trigger', getTriggerDecoder()], ['managedTokenAccount', getAddressDecoder()], ['totalEarned', getU64Decoder()], ['ownerClaimable', getU64Decoder()], ['feeClaimable', getU64Decoder()], ['contestedThreshold', getU8Decoder()], ['contestedCount', getU8Decoder()], ['createdAt', getI64Decoder()], ['updatedAt', getI64Decoder()], ]); } /** Gets the codec for {@link ContractState} account data. */ export function getContractStateCodec() { return combineCodec(getContractStateEncoder(), getContractStateDecoder()); } export function decodeContractState(encodedAccount) { return decodeAccount(encodedAccount, getContractStateDecoder()); } export async function fetchContractState(rpc, address, config) { const maybeAccount = await fetchMaybeContractState(rpc, address, config); assertAccountExists(maybeAccount); return maybeAccount; } export async function fetchMaybeContractState(rpc, address, config) { const maybeAccount = await fetchEncodedAccount(rpc, address, config); return decodeContractState(maybeAccount); } export async function fetchAllContractState(rpc, addresses, config) { const maybeAccounts = await fetchAllMaybeContractState(rpc, addresses, config); assertAccountsExist(maybeAccounts); return maybeAccounts; } export async function fetchAllMaybeContractState(rpc, addresses, config) { const maybeAccounts = await fetchEncodedAccounts(rpc, addresses, config); return maybeAccounts.map(maybeAccount => decodeContractState(maybeAccount)); } //# sourceMappingURL=contractState.js.map