Interface BuildNpmConfig

the configuration for the npm-release building function buildNpm.

interface BuildNpmConfig {
    dir: string;
    dnt?: Omit<DntBuildOptions, "entryPoints" | "outDir" | "scriptModule">;
    deno: string;
    copy?: [source: string, destination: string][];
    text?: WritableFileConfig[];
    log?:
        | boolean
        | "none"
        | "basic"
        | "verbose";
    dryrun?: boolean;
}

Hierarchy (view full)

Properties

dir: string

the path to the folder where you wish to create your npm release. if a relative path is provided, then it will be resolved as a path relative to Deno's current working directory. (which is generally where deno.json resides.)

"./npm/"

dnt?: Omit<DntBuildOptions, "entryPoints" | "outDir" | "scriptModule">

dnt related additional build options for you to configure.

deno: string

the path to your deno.json file for this project. if a relative path is provided, then it will be resolved as a path relative to Deno's current working directory. (which is also where deno.json generally resides.)

"./deno.json"

copy?: [source: string, destination: string][]

a list of paths/glob patterns relative to the deno.json directory, that should be copied over to the build directory, at the specified path. note that if the source is a glob pattern, then its destination can only be a folder. moreover, folder sources and destinations must always end in a trailing slash (i.e. "./path/to/my/folder/")

[!CAUTION] be cautious with using glob patterns with folders, as it will generally give you a bad unexpected output. when using glob patterns, make sure to execute a dryrun of the build process with "verbose" logging, to ensure that you are getting your desired copy paths.

write (or append) additional text or binary files to the output build directory, at the specified relative destination. use the 3rd options item to specify text Deno.WriteFileOptions | writing options, such as "append" the new text, or permit the creation ("create") of new file if it doesn't exist, etc...

log?:
    | boolean
    | "none"
    | "basic"
    | "verbose"

select logging level:

  • false or "none": skip logging (dnt itself will still log).
  • true or "basic": log what is being carried out at the top level.
  • "verbose": in addition to basic logging, it also logs which files/folders are being copied or generated.
  • undefined: unchange logging from previous state (which is "basic" by default).
dryrun?: boolean

enable dryrun if you wish for nothing to be written onto the the filesystem.

false