sergeyt / karma-typescript-preprocessor

TypeScript preprocessor for karma-runner
MIT License
50 stars 20 forks source link

karma-typescript-preprocessor

Preprocessor to compile TypeScript on the fly.

Build Status Deps Status devDependency Status npm

Installation

npm install karma-typescript-preprocessor --save-dev

Configuration

The code below shows the sample configuration of the preprocessor.

// karma.conf.js
module.exports = function(config) {
  config.set({
    preprocessors: {
      '**/*.ts': ['typescript']
    },

    typescriptPreprocessor: {
      // options passed to the typescript compiler
      options: {
        sourceMap: false, // (optional) Generates corresponding .map file.
        target: 'ES5', // (optional) Specify ECMAScript target version: 'ES3' (default), or 'ES5'
        module: 'amd', // (optional) Specify module code generation: 'commonjs' or 'amd'
        noImplicitAny: true, // (optional) Warn on expressions and declarations with an implied 'any' type.
        noResolve: true, // (optional) Skip resolution and preprocessing.
        removeComments: true, // (optional) Do not emit comments to output.
        concatenateOutput: false // (optional) Concatenate and emit output to single file. By default true if module option is omited, otherwise false.
      },
      // transforming the filenames
      transformPath: function(path) {
        return path.replace(/\.ts$/, '.js');
      }
    }
  });
};

If you set the sourceMap option to true then the generated source map will be inlined as a data-uri.

All TypeScript compiler options are defined here.


For more information on Karma see the homepage.