gill
gill/Functions

createCodamaConfig

function createCodamaConfig(__namedParameters): {
  idl: string;
  scripts: {
     js: {
        args: (
           | string
           | {
           dependencyMap: Record<string, string>;
        })[];
        from: string;
     };
     rust:   | undefined
        | {
        args: (
           | string
           | {
           crateFolder: string;
           formatCode: boolean;
        })[];
        from: string;
      };
  };
};

Create a Codama CLI configuration to generate a program client from an IDL. Normally saved to codama.js.

Example

import { createCodamaConfig } from "gill";
 
export default createCodamaConfig({
 idl: "program/idl.json",
 clientJs: "clients/js/src/generated",
 // clientRust: "clients/rust/src/generated",
});

Parameters

ParameterType
__namedParameters{ clientJs: string; clientRust?: string; dependencyMap?: Record<string, string>; idl: string; }
__namedParameters.clientJsstring
__namedParameters.clientRust?string
__namedParameters.dependencyMap?Record<string, string>
__namedParameters.idlstring

Returns

{
  idl: string;
  scripts: {
     js: {
        args: (
           | string
           | {
           dependencyMap: Record<string, string>;
        })[];
        from: string;
     };
     rust:   | undefined
        | {
        args: (
           | string
           | {
           crateFolder: string;
           formatCode: boolean;
        })[];
        from: string;
      };
  };
}
NameTypeDefault value
idlstring-
scripts{ js: { args: ( | string | { dependencyMap: Record<string, string>; })[]; from: string; }; rust: | undefined | { args: ( | string | { crateFolder: string; formatCode: boolean; })[]; from: string; }; }-
scripts.js{ args: ( | string | { dependencyMap: Record<string, string>; })[]; from: string; }-
scripts.js.args( | string | { dependencyMap: Record<string, string>; })[]-
scripts.js.fromstring"@codama/renderers-js"
scripts.rust| undefined | { args: ( | string | { crateFolder: string; formatCode: boolean; })[]; from: string; }-

On this page