UNPKG

@nosana/kit

Version:

Nosana KIT

74 lines (73 loc) 3.3 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, getBytesDecoder, getBytesEncoder, getI64Decoder, getI64Encoder, getStructDecoder, getStructEncoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, transformEncoder, } from '@solana/kit'; export const JOB_ACCOUNT_DISCRIMINATOR = new Uint8Array([ 91, 16, 162, 5, 45, 210, 125, 65, ]); export function getJobAccountDiscriminatorBytes() { return fixEncoderSize(getBytesEncoder(), 8).encode(JOB_ACCOUNT_DISCRIMINATOR); } export function getJobAccountEncoder() { return transformEncoder(getStructEncoder([ ['discriminator', fixEncoderSize(getBytesEncoder(), 8)], ['ipfsJob', fixEncoderSize(getBytesEncoder(), 32)], ['ipfsResult', fixEncoderSize(getBytesEncoder(), 32)], ['market', getAddressEncoder()], ['node', getAddressEncoder()], ['payer', getAddressEncoder()], ['price', getU64Encoder()], ['project', getAddressEncoder()], ['state', getU8Encoder()], ['timeEnd', getI64Encoder()], ['timeStart', getI64Encoder()], ['timeout', getI64Encoder()], ]), (value) => ({ ...value, discriminator: JOB_ACCOUNT_DISCRIMINATOR })); } export function getJobAccountDecoder() { return getStructDecoder([ ['discriminator', fixDecoderSize(getBytesDecoder(), 8)], ['ipfsJob', fixDecoderSize(getBytesDecoder(), 32)], ['ipfsResult', fixDecoderSize(getBytesDecoder(), 32)], ['market', getAddressDecoder()], ['node', getAddressDecoder()], ['payer', getAddressDecoder()], ['price', getU64Decoder()], ['project', getAddressDecoder()], ['state', getU8Decoder()], ['timeEnd', getI64Decoder()], ['timeStart', getI64Decoder()], ['timeout', getI64Decoder()], ]); } export function getJobAccountCodec() { return combineCodec(getJobAccountEncoder(), getJobAccountDecoder()); } export function decodeJobAccount(encodedAccount) { return decodeAccount(encodedAccount, getJobAccountDecoder()); } export async function fetchJobAccount(rpc, address, config) { const maybeAccount = await fetchMaybeJobAccount(rpc, address, config); assertAccountExists(maybeAccount); return maybeAccount; } export async function fetchMaybeJobAccount(rpc, address, config) { const maybeAccount = await fetchEncodedAccount(rpc, address, config); return decodeJobAccount(maybeAccount); } export async function fetchAllJobAccount(rpc, addresses, config) { const maybeAccounts = await fetchAllMaybeJobAccount(rpc, addresses, config); assertAccountsExist(maybeAccounts); return maybeAccounts; } export async function fetchAllMaybeJobAccount(rpc, addresses, config) { const maybeAccounts = await fetchEncodedAccounts(rpc, addresses, config); return maybeAccounts.map((maybeAccount) => decodeJobAccount(maybeAccount)); } export function getJobAccountSize() { return 233; }