@saberhq/tsconfig

3.3.1 • Public • Published

@saberhq/tsconfig

Saber TypeScript configurations.

Usage

The TSConfig adds the importHelpers, so first run:

yarn add tslib

Libraries

In your tsconfig.json, use the following:

{
  "extends": "@saberhq/tsconfig/tsconfig.lib.json",
  "include": ["src/", "tests/"]
}

Note that noEmit is enabled by default, for typechecking.

We recommend creating both a CommonJS and ESM build. The CommonJS build is useful for web apps, and the ESM build is useful for server-side apps and some web apps. For this, add the following two files:

tsconfig.esm.json

{
  "extends": "./tsconfig.json",
  "compilerOptions": {
    "noEmit": false,
    "outDir": "dist/esm/"
  },
  "include": ["src/"]
}

tsconfig.cjs.json

{
  "extends": "./tsconfig.esm.json",
  "compilerOptions": {
    "module": "CommonJS",
    "outDir": "dist/cjs/"
  },
  "include": ["src/"]
}

Additionally, modify package.json with the following:

{
  // ...
  "main": "dist/cjs/index.js",
  "module": "dist/esm/index.js",
  "scripts": {
    // ...
    "build": "tsc -P tsconfig.cjs.json && tsc -P tsconfig.esm.json",
    "clean": "rm -fr dist/",
    "typecheck": "tsc"
  }
}

Readme

Keywords

Package Sidebar

Install

npm i @saberhq/tsconfig

Weekly Downloads

419

Version

3.3.1

License

Apache-2.0

Unpacked Size

16.9 kB

Total Files

13

Last publish

Collaborators

  • simplyianm
  • shipcap