Coreoz / ts-transformer-classname

A typescript transformer to add a symbol that returns the name of the class

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ts-transformer-class-name

A typescript transformer that attaches the class name to each class type. It enables to recover the class name after a JS minimizer has been executed to the code base.

So for example if you have the class:

class MyClass {
  // class implementation...
}

After the transformer has been executed, you should have:

MyClass[CONSTRUCTOR_NAME_SYMBOL] === 'MyClass'

Usage

ttypescript can be used to integrate this transformer. After ttypescript is installed, you can reference the transformer in your tsconfig.json file:

{
    "compilerOptions": {
        "plugins": [
          { "transform": "ts-transformer-classname", "import": "classNameTransformer" }
        ]
    }
}

DI Compiler adapter

The adapter for DI Compiler is now provided. To use it:

{
    "compilerOptions": {
        "plugins": [
          { "transform": "ts-transformer-classname", "import": "diTransformerAdapter" }
        ]
    }
}

Release process

Run yarn release

About

A typescript transformer to add a symbol that returns the name of the class

License:Apache License 2.0


Languages

Language:TypeScript 100.0%