Files
azuredatastudio/tslint.json
Anthony Dresser db387eb770 Fixing the layering in the base folder (#5308)
* removes more builder references

* remove builder from profiler

* formatting

* fix profiler dailog

* remove builder from oatuhdialog

* remove the rest of builder references

* formatting

* add more strict null checks to base

* enable strict tslint rules

* code layering of base

* wip

* working through changes to table data view

* fix tests

* update editabledropdown to not use layout service

* wip

* fix imports

* fix import

* fix compile error

* add more localization

* add comments to changes to import patterns

* add more import comments
2019-05-03 14:49:18 -07:00

153 lines
3.8 KiB
JSON

{
"rulesDirectory": [
"build/lib/tslint"
],
"rules": {
"no-arg": true,
"no-construct": true,
"no-duplicate-super": true,
"no-duplicate-switch-case": true,
"no-duplicate-variable": true,
"no-eval": true,
"no-redundant-jsdoc": true,
"no-sparse-arrays": true,
"no-string-throw": true,
"no-unsafe-finally": true,
"no-unused-expression": true,
"no-var-keyword": true,
"number-literal-format": true,
"curly": true,
"class-name": true,
"label-position": true,
"semicolon": [
true,
"always"
],
"triple-equals": true,
"no-unexternalized-strings": [
true,
{
"signatures": [
"localize",
"nls.localize"
],
"keyIndex": 0,
"messageIndex": 1
}
],
// {{SQL CARBON EDIT}} @anthonydresser for the most part these rules should be the same as vscode with some changes
// anything that references **/vs/** should references **/{vs,sql}/** instead
// @angular/* and rxjs/* are added to browser and electron-browser restrictions since * doesn't cover them
// to begin with the only import patterns we are enforcing is import patterns in */base/*
"import-patterns": [
true,
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// !!! Do not relax these rules !!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
{
"target": "**/{vs,sql}/base/common/**",
"restrictions": [
"vs/nls",
"**/{vs,sql}/base/common/**"
]
},
{
"target": "**/{vs,sql}/base/test/common/**",
"restrictions": [
"assert",
"vs/nls",
"**/{vs,sql}/base/common/**",
"**/{vs,sql}/base/test/common/**"
]
},
{
"target": "**/{vs,sql}/base/browser/**",
"restrictions": [
"vs/nls",
"vs/css!./**/*",
"**/{vs,sql}/base/{common,browser}/**"
]
},
{
"target": "**/{vs,sql}/base/node/**",
"restrictions": [
"vs/nls",
"**/{vs,sql}/base/{common,browser,node}/**",
"*", // node modules
"@angular/*", // angular
"rxjs/*" // rxjs
]
},
{
// vs/base/test/browser contains tests for vs/base/browser
"target": "**/{vs,sql}/base/test/browser/**",
"restrictions": [
"assert",
"vs/nls",
"**/{vs,sql}/base/{common,browser}/**",
"**/{vs,sql}/base/test/{common,browser}/**"
]
},
{
"target": "**/{vs,sql}/base/parts/*/common/**",
"restrictions": [
"vs/nls",
"**/{vs,sql}/base/common/**",
"**/{vs,sql}/base/parts/*/common/**"
]
},
{
"target": "**/{vs,sql}/base/parts/*/browser/**",
"restrictions": [
"vs/nls",
"vs/css!./**/*",
"**/{vs,sql}/base/{common,browser}/**",
"**/{vs,sql}/base/parts/*/{common,browser}/**"
]
},
{
"target": "**/{vs,sql}/base/parts/*/node/**",
"restrictions": [
"vs/nls",
"**/{vs,sql}/base/{common,browser,node}/**",
"**/{vs,sql}/base/parts/*/{common,browser,node}/**",
"*", // node modules
"@angular/*", // angular
"rxjs/*" // rxjs
]
},
{
"target": "**/{vs,sql}/base/parts/*/electron-browser/**",
"restrictions": [
"vs/nls",
"vs/css!./**/*",
"**/{vs,sql}/base/{common,browser,node,electron-browser}/**",
"**/{vs,sql}/base/parts/*/{common,browser,node,electron-browser}/**",
"*", // node modules
"@angular/*", // angular
"rxjs/*" // rxjs
]
},
{
"target": "**/{vs,sql}/base/parts/*/electron-main/**",
"restrictions": [
"vs/nls",
"**/{vs,sql}/base/{common,browser,node,electron-main}/**",
"**/{vs,sql}/base/parts/*/{common,browser,node,electron-main}/**",
"*", // node modules
"@angular/*", // angular
"rxjs/*" // rxjs
]
}
],
// {{SQL CARBON EDIT}}
// remove import patterns and layering
"duplicate-imports": true,
"no-new-buffer": true,
"translation-remind": true,
"no-standalone-editor": true,
"no-nls-in-standalone-editor": true
},
"defaultSeverity": "warning"
}