UNPKG

@storm-software/esbuild

Version:

A package containing `esbuild` utilities for building Storm Software libraries and applications

46 lines (43 loc) 1.84 kB
import { ProjectsConfigurations, ProjectGraph } from '@nx/devkit'; import { TypeScriptBuildOptions, AdditionalCLIOptions } from '@storm-software/build-tools'; import { StormWorkspaceConfig } from '@storm-software/config'; import { TsconfigRaw, BuildResult } from 'esbuild'; import { Options } from 'tsup'; type ESBuildOptions = Omit<Options, "outDir" | "entryPoints"> & Required<Pick<TypeScriptBuildOptions, "projectRoot">> & Pick<TypeScriptBuildOptions, "assets" | "sourceRoot" | "outputPath" | "generatePackageJson" | "includeSrc" | "mode"> & { userOptions?: any; distDir?: string; tsconfig?: string | null; tsconfigRaw?: TsconfigRaw; verbose?: boolean; }; type ESBuildResult = BuildResult; type ESBuildCLIOptions = AdditionalCLIOptions & Pick<ESBuildOptions, "name" | "entry" | "outputPath" | "platform" | "format" | "bundle" | "target" | "watch" | "clean" | "mode" | "banner" | "footer" | "splitting" | "treeshake" | "generatePackageJson" | "metafile" | "minify" | "includeSrc" | "dts" | "shims">; type ESBuildContext = { options: ESBuildOptions; clean: boolean; workspaceConfig: StormWorkspaceConfig; projectConfigurations: ProjectsConfigurations; projectName: string; projectGraph: ProjectGraph; sourceRoot: string; outputPath: string; result?: BuildResult; }; type MaybePromise<T> = T | Promise<T>; interface ModuleExport { kind: "module"; sourceFileName: string; destFileName: string; moduleName: string; isTypeOnly: boolean; } interface NamedExport { kind: "named"; sourceFileName: string; destFileName: string; alias: string; name: string; isTypeOnly: boolean; } type ExportDeclaration = ModuleExport | NamedExport; export type { ESBuildCLIOptions, ESBuildContext, ESBuildOptions, ESBuildResult, ExportDeclaration, MaybePromise };