A set of TSLint rules used on some Agoda projects.
npm install agoda-tslint

do-not-use"functionName"
["functionName"]
{"name": "functionName", "message": "optional explanation message"}
["functionName", "methodName", "optional message"]
{"name": ["objectName", "methodName"], "message": "optional message"}
{"name": ["foo", "bar", "baz"]} bans foo.bar.baz()
) that matches everything. {"name": ["*", "forEach"]} bans
[].forEach(...), $(...).forEach(...), arr.forEach(...), etc.
js
[].forEach(e => doSomething()); // -> not allowed
`
Example usage:
`json
"do-not-use": [
true,
{name: ["*", "forEach"], message: "Please refactor and use regular loops instead"},
],
`
root-relative-imports
Prevents traversing upwards in directory structure when importing files, forcing the use of root relative imports instead.
Example:
`js
import { MyComponent } from './MyComponent'; // -> allowed
import { MyComponent } from './Child/MyComponent'; // -> allowed
import { MyComponent } from 'components/MyComponent'; // -> allowed
import { MyComponent } from '../components/MyComponent'; // -> not allowed
`
Example usage:
`js
"root-relative-imports": true,
``