@getkist/action-typescript
v0.0.13
Published
TypeScript compilation actions for kist build tool
Maintainers
Readme
@getkist/action-typescript
TypeScript compilation actions for kist build tool.
Features
- TypeScript Compilation - Full TypeScript compiler integration
- Custom tsconfig - Use any tsconfig.json configuration
- Flexible File Selection - Compile specific files or entire projects
- Compiler Options Override - Runtime compiler option customization
- Error Reporting - Detailed compilation diagnostics
Installation
npm install --save-dev @getkist/action-typescriptUsage
Basic Compilation
Add to your kist.yml:
pipeline:
stages:
- name: compile
steps:
- name: compile-typescript
action: TypeScriptCompilerAction
options:
tsconfigPath: ./tsconfig.jsonCompile Specific Files
pipeline:
stages:
- name: compile
steps:
- name: compile-sources
action: TypeScriptCompilerAction
options:
tsconfigPath: ./tsconfig.json
filePaths:
- src/index.ts
- src/utils.ts
outputDir: ./distCustom Compiler Options
pipeline:
stages:
- name: compile
steps:
- name: compile-custom
action: TypeScriptCompilerAction
options:
tsconfigPath: ./tsconfig.json
outputDir: ./build
compilerOptions:
target: ES2020
module: CommonJS
sourceMap: trueAction: TypeScriptCompilerAction
Compiles TypeScript files using the TypeScript compiler.
Options
| Option | Type | Required | Description |
| ----------------- | -------- | -------- | ---------------------------------------------------- |
| tsconfigPath | string | No | Path to tsconfig.json (default: "tsconfig.json") |
| filePaths | string[] | No | Specific files to compile (overrides tsconfig files) |
| outputDir | string | No | Output directory (overrides tsconfig outDir) |
| compilerOptions | object | No | Custom compiler options to merge with tsconfig |
Compiler Options
Any valid TypeScript compiler option can be passed:
compilerOptions:
target: ES2020
module: ESNext
declaration: true
sourceMap: true
strict: true
esModuleInterop: trueExamples
Multi-Target Compilation
pipeline:
stages:
- name: compile-all
steps:
- name: compile-esm
action: TypeScriptCompilerAction
options:
tsconfigPath: ./tsconfig.json
outputDir: ./dist/esm
compilerOptions:
module: ESNext
- name: compile-cjs
action: TypeScriptCompilerAction
options:
tsconfigPath: ./tsconfig.json
outputDir: ./dist/cjs
compilerOptions:
module: CommonJSDevelopment vs Production
pipeline:
stages:
- name: dev-build
steps:
- name: compile-dev
action: TypeScriptCompilerAction
options:
tsconfigPath: ./tsconfig.json
compilerOptions:
sourceMap: true
declaration: false
- name: prod-build
steps:
- name: compile-prod
action: TypeScriptCompilerAction
options:
tsconfigPath: ./tsconfig.json
compilerOptions:
sourceMap: false
declaration: true
removeComments: trueTypeScript Types
import { TypeScriptCompilerAction } from "@getkist/action-typescript";
const action = new TypeScriptCompilerAction();TypeScriptCompilerActionOptions
interface TypeScriptCompilerActionOptions {
tsconfigPath?: string;
filePaths?: string[];
outputDir?: string;
compilerOptions?: Record<string, any>;
}Error Handling
The action provides detailed error messages for:
- Invalid tsconfig.json files
- Compilation errors with file locations
- Pre-emit diagnostics
- Configuration parsing errors
Requirements
- Node.js >= 18.0.0
- kist >= 0.1.0
- TypeScript >= 5.0.0
Contributing
See CONTRIBUTING.md for contribution guidelines.
License
MIT © kist
