1.3.0 • Published 5 years ago

karma-tslint v1.3.0

Weekly downloads
163
License
MIT
Repository
github
Last release
5 years ago

Karma tslint plugin

Travis build Version MIT License TypeScript Semantic Release Commitizen friendly

Adapter for the Tslint, linter for the TypeScript language.

Warning: Tslint soon will be deprecated (Roadmap: TSLint ESLint), karma-tslint will continue to be updated accordingly.

Install

$ yarn add karma-tslint tslint --dev

Or

$ npm install karma-tslint tslint --save-dev

Use

// karma.conf.ts
import { ITslintPreprocessorConfig } from 'karma-tslint';

export = (config: any) => {
    config.set({
        
        files: [
            '**/*.ts'
        ],
        
        preprocessors: {
            '**/*.ts': ['tslint']
        },
        
        tslintPreprocessor: {
            configuration: 'default',
            formatter: 'prose',
            formattersDirectory: 'formatters-dir',
            rulesDirectory: 'rules-dir',
            stopOnFailure: true,
            fix: true
        } as ITslintPreprocessorConfig
        
    });
};

ITslintPreprocessorConfig

configuration:

  • tslint.Configuration.IConfigurationFile - object type tslint config file.
  • string - path of 'tslint.json' file or tslint preset 'tslint:{all,latest,recommended}'.
  • 'default' - default tslint config. // @deprecated(use 'tslint:recommended' instead)
  • undefined (default) - auto search for 'tslint.json' file.

formatter:

  • TFormatter - 'checkstyle' | 'codeFrame' | 'filesList' | 'json' | 'junit' | 'msbuild' | 'pmd' | 'prose' | 'stylish' | 'tap' | 'verbose' | 'vso' | string | FormatterConstructor;
  • undefined (default) - 'stylish'

formattersDirectory

  • string - formatters directory
  • undefined (default) - 'node_modules/tslint/build/formatters'

rulesDirectory

  • string | string[] - rules directory
  • undefined (default) - 'node_modules/tslint/lib/rules'

stopOnFailure:

  • boolean - if karma should stop on tslint failure
  • undefined (default) - true

fix

  • boolean - if tslint should be fix errors
  • undefined (default) - false

project - for rules that need typescript program

  • string - path to 'tsconfig.json' file or to the directory containing the 'tsconfig.json' file
  • undefined (default) - run without typescript program

Karma plugins option

In most cases, you do not have to explicitly declare plugins option in the karma config, Because by default, Karma loads all sibling NPM modules which have a name starting with karma-* (karma docs). But if necessary, add 'karma-tslint' to the plugins list.

// karma.conf.ts
export = (config: any) => {
    config.set({
        // ...
        plugins: [
            'karma-tslint',
            // ...
        ]
    });
};

Examples

You can see usage examples in the "examples" folder in the source code.

License

Copyright © 2017 Yisrael Eliav, Licensed under the MIT license.