Coda by Ian Macalinao
    Preparing search index...

    Module @macalinao/coda-visitors

    @macalinao/coda-visitors

    npm version

    Additional Codama visitors for enhanced code generation with Coda.

    bun add @macalinao/coda-visitors
    

    Adds nodes (accounts, instructions, defined types, errors, PDAs) to existing programs in the Codama AST.

    import { addNodesVisitor } from "@macalinao/coda-visitors";
    import { accountNode } from "codama";

    const visitor = addNodesVisitor({
    myProgram: {
    accounts: [
    accountNode({
    name: "customAccount",
    // ... account configuration
    })
    ],
    instructions: [
    // Add custom instructions
    ],
    definedTypes: [
    // Add custom types
    ],
    errors: [
    // Add custom errors
    ],
    pdas: [
    // Add custom PDAs
    ]
    }
    });

    This visitor is commonly used in coda.config.mjs to extend IDL-generated programs:

    import { defineConfig } from "@macalinao/coda";
    import { addNodesVisitor } from "@macalinao/coda-visitors";

    export default defineConfig({
    visitors: [
    addNodesVisitor({
    voterStakeRegistry: {
    accounts: [
    // Add custom accounts not in IDL
    ]
    }
    })
    ]
    });

    Copyright © 2025 Ian Macalinao

    Licensed under the Apache License, Version 2.0

    Type Aliases

    ProgramAdditions

    Variables

    ASSOCIATED_TOKEN_PROGRAM_VALUE_NODE
    associatedTokenAccountPdaNode
    BPF_UPGRADEABLE_LOADER_PROGRAM_VALUE_NODE
    MEMO_PROGRAM_VALUE_NODE
    SYSTEM_PROGRAM_VALUE_NODE
    SYSVAR_INSTRUCTIONS_VALUE_NODE
    SYSVAR_RENT_VALUE_NODE
    TOKEN_2022_PROGRAM_VALUE_NODE
    TOKEN_METADATA_PROGRAM_VALUE_NODE
    TOKEN_PROGRAM_VALUE_NODE

    Functions

    addNodesVisitor
    associatedTokenAccountValueNode
    fixDocsVisitor