A decorator to deprecate class methods (and properties): It takes an optional message (or function) and returns the original method, where a [DEPRECATED] Class.method: message
text is printed at most once upon invoking the deprecated method (using console.warn
).
npm install @dizmo/functions-deprecated --save
import { deprecated } from '@dizmo/functions-deprecated';
import { original } from '@dizmo/functions-deprecated';
class MyClass {
@deprecated
method1() { ... }
@deprecated('message')
method2() { ... }
@deprecated((self, key) => 'message')
method3() { ... }
}
..where self instanceof MyClass
and key === 'method3'
.
const instance = new MyClass();
original(instance.method).bind(instance)();
..where bind(instance)
is required!
class MyClass {
@deprecated
static method1() { ... }
@deprecated('message')
static method2() { ... }
@deprecated((self, key) => 'message')
static method3() { ... }
}
..where self === MyClass
and key === 'method3'
.
original(MyClass.method).bind(MyClass)();
..where bind(MyClass)
is required!
npm run clean
npm run build
npm run -- build --no-lint --no-clean
npm run -- build --prepack
npm run -- build --prepack --no-minify
npm run lint
npm run -- lint --fix
npm run test
npm run -- test --no-lint --no-clean --no-build
npm run cover
npm run -- cover --no-lint --no-clean --no-build
npm run docs
npm publish
npm publish --access=public
© 2021 dizmo AG, Switzerland