Actualizacion maquina principal
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / tslint / lib / configs / all.js
diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/tslint/lib/configs/all.js b/.config/coc/extensions/node_modules/coc-prettier/node_modules/tslint/lib/configs/all.js
new file mode 100644 (file)
index 0000000..a07fe54
--- /dev/null
@@ -0,0 +1,304 @@
+"use strict";
+/**
+ * @license
+ * Copyright 2017 Palantir Technologies, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+Object.defineProperty(exports, "__esModule", { value: true });
+var path_1 = require("path");
+var ruleLoader_1 = require("../ruleLoader");
+// tslint:disable object-literal-sort-keys
+// tslint:disable object-literal-key-quotes
+exports.rules = {
+    // TypeScript Specific
+    "adjacent-overload-signatures": true,
+    "ban-types": {
+        options: [
+            ["Object", "Avoid using the `Object` type. Did you mean `object`?"],
+            [
+                "Function",
+                "Avoid using the `Function` type. Prefer a specific function type, like `() => void`.",
+            ],
+            ["Boolean", "Avoid using the `Boolean` type. Did you mean `boolean`?"],
+            ["Number", "Avoid using the `Number` type. Did you mean `number`?"],
+            ["String", "Avoid using the `String` type. Did you mean `string`?"],
+            ["Symbol", "Avoid using the `Symbol` type. Did you mean `symbol`?"],
+        ],
+    },
+    "ban-ts-ignore": true,
+    "member-access": {
+        options: ["check-accessor", "check-constructor", "check-parameter-property"],
+    },
+    "member-ordering": {
+        options: {
+            order: "statics-first",
+            alphabetize: true,
+        },
+    },
+    "no-any": true,
+    "no-empty-interface": true,
+    "no-for-in": true,
+    "no-import-side-effect": true,
+    // Technically this is not the strictest setting, but don't want to conflict with "typedef"
+    "no-inferrable-types": { options: ["ignore-params"] },
+    "no-internal-module": true,
+    "no-magic-numbers": true,
+    "no-namespace": true,
+    "no-non-null-assertion": true,
+    "no-reference": true,
+    "no-restricted-globals": true,
+    "no-this-assignment": true,
+    "no-var-requires": true,
+    "only-arrow-functions": true,
+    "prefer-for-of": true,
+    "prefer-readonly": true,
+    "promise-function-async": true,
+    typedef: {
+        options: [
+            "call-signature",
+            "arrow-call-signature",
+            "parameter",
+            "arrow-parameter",
+            "property-declaration",
+            "variable-declaration",
+            "member-variable-declaration",
+        ],
+    },
+    "typedef-whitespace": {
+        options: [
+            {
+                "call-signature": "nospace",
+                "index-signature": "nospace",
+                parameter: "nospace",
+                "property-declaration": "nospace",
+                "variable-declaration": "nospace",
+            },
+            {
+                "call-signature": "onespace",
+                "index-signature": "onespace",
+                parameter: "onespace",
+                "property-declaration": "onespace",
+                "variable-declaration": "onespace",
+            },
+        ],
+    },
+    "unified-signatures": true,
+    // Functionality
+    "await-promise": true,
+    // "ban": no sensible default
+    "ban-comma-operator": true,
+    curly: true,
+    forin: true,
+    "function-constructor": true,
+    // "import-blacklist": no sensible default
+    "label-position": true,
+    "no-arg": true,
+    "no-async-without-await": true,
+    "no-bitwise": true,
+    "no-conditional-assignment": true,
+    "no-console": true,
+    "no-construct": true,
+    "no-debugger": true,
+    "no-duplicate-super": true,
+    "no-duplicate-switch-case": true,
+    "no-duplicate-variable": { options: ["check-parameters"] },
+    "no-dynamic-delete": true,
+    "no-empty": true,
+    "no-eval": true,
+    "no-floating-promises": true,
+    "no-for-in-array": true,
+    "no-implicit-dependencies": true,
+    "no-inferred-empty-object-type": true,
+    "no-invalid-template-strings": true,
+    // "no-invalid-this": Won't this be deprecated?
+    "no-misused-new": true,
+    "no-null-keyword": true,
+    "no-null-undefined-union": true,
+    "no-object-literal-type-assertion": true,
+    "no-promise-as-boolean": true,
+    "no-return-await": true,
+    "no-shadowed-variable": true,
+    "no-string-literal": true,
+    "no-string-throw": true,
+    "no-sparse-arrays": true,
+    "no-submodule-imports": true,
+    "no-tautology-expression": true,
+    "no-unbound-method": true,
+    "no-unnecessary-class": { options: ["allow-empty-class"] },
+    "no-unsafe-any": true,
+    "no-unsafe-finally": true,
+    "no-unused-expression": true,
+    // "no-unused-variable" - deprecated in #3919
+    "no-use-before-declare": true,
+    "no-var-keyword": true,
+    "no-void-expression": true,
+    "prefer-conditional-expression": true,
+    radix: true,
+    "restrict-plus-operands": true,
+    "static-this": true,
+    "strict-boolean-expressions": true,
+    "strict-string-expressions": true,
+    "strict-comparisons": true,
+    "strict-type-predicates": true,
+    "switch-default": true,
+    "triple-equals": true,
+    "unnecessary-constructor": true,
+    "use-default-type-parameter": true,
+    "use-isnan": true,
+    // Maintainability
+    "cyclomatic-complexity": true,
+    eofline: true,
+    indent: { options: ["spaces"] },
+    "invalid-void": true,
+    "linebreak-style": { options: "LF" },
+    "max-classes-per-file": { options: 1 },
+    "max-file-line-count": { options: 1000 },
+    "max-line-length": {
+        options: { limit: 120 },
+    },
+    "no-default-export": true,
+    "no-default-import": true,
+    "no-duplicate-imports": true,
+    "no-irregular-whitespace": true,
+    "no-mergeable-namespace": true,
+    "no-parameter-reassignment": true,
+    "no-require-imports": true,
+    "no-trailing-whitespace": true,
+    "object-literal-sort-keys": true,
+    "prefer-const": true,
+    "trailing-comma": {
+        options: {
+            esSpecCompliant: true,
+            multiline: "always",
+            singleline: "never",
+        },
+    },
+    // Style
+    align: {
+        options: ["parameters", "arguments", "statements", "elements", "members"],
+    },
+    "array-type": { options: "array-simple" },
+    "arrow-parens": true,
+    "arrow-return-shorthand": { options: "multiline" },
+    "binary-expression-operand-order": true,
+    "callable-types": true,
+    "class-name": true,
+    "comment-format": { options: ["check-space", "check-uppercase"] },
+    "comment-type": { options: ["singleline", "multiline", "doc", "directive"] },
+    "completed-docs": true,
+    deprecation: true,
+    encoding: true,
+    "file-name-casing": { options: "camel-case" },
+    "import-spacing": true,
+    "increment-decrement": true,
+    "interface-name": true,
+    "interface-over-type-literal": true,
+    "jsdoc-format": { options: "check-multiline-start" },
+    "match-default-export-name": true,
+    "new-parens": true,
+    "newline-before-return": true,
+    "newline-per-chained-call": true,
+    "no-angle-bracket-type-assertion": true,
+    "no-boolean-literal-compare": true,
+    "no-consecutive-blank-lines": true,
+    "no-parameter-properties": true,
+    "no-redundant-jsdoc": true,
+    "no-reference-import": true,
+    "no-unnecessary-callback-wrapper": true,
+    "no-unnecessary-initializer": true,
+    "no-unnecessary-qualifier": true,
+    "no-unnecessary-type-assertion": true,
+    "number-literal-format": true,
+    "object-literal-key-quotes": { options: "consistent-as-needed" },
+    "object-literal-shorthand": true,
+    "one-line": {
+        options: [
+            "check-catch",
+            "check-else",
+            "check-finally",
+            "check-open-brace",
+            "check-whitespace",
+        ],
+    },
+    "one-variable-per-declaration": true,
+    "ordered-imports": {
+        options: {
+            "grouped-imports": true,
+            "import-sources-order": "case-insensitive",
+            "named-imports-order": "case-insensitive",
+            "module-source-path": "full",
+        },
+    },
+    "prefer-function-over-method": true,
+    "prefer-method-signature": true,
+    "prefer-object-spread": true,
+    "prefer-switch": true,
+    "prefer-template": true,
+    "prefer-while": true,
+    quotemark: {
+        options: ["double", "avoid-escape", "avoid-template"],
+    },
+    "return-undefined": true,
+    semicolon: { options: ["always"] },
+    "space-before-function-paren": {
+        options: {
+            anonymous: "never",
+            asyncArrow: "always",
+            constructor: "never",
+            method: "never",
+            named: "never",
+        },
+    },
+    "space-within-parens": { options: 0 },
+    "switch-final-break": true,
+    "type-literal-delimiter": true,
+    "unnecessary-bind": true,
+    "unnecessary-else": true,
+    "variable-name": { options: ["ban-keywords", "check-format", "require-const-for-all-caps"] },
+    whitespace: {
+        options: [
+            "check-branch",
+            "check-decl",
+            "check-operator",
+            "check-module",
+            "check-separator",
+            "check-type",
+            "check-typecast",
+            "check-preblock",
+            "check-type-operator",
+            "check-rest-spread",
+        ],
+    },
+};
+exports.RULES_EXCLUDED_FROM_ALL_CONFIG = [
+    "ban",
+    "fileHeader",
+    "importBlacklist",
+    "noInvalidThis",
+    "noSwitchCaseFallThrough",
+    "typeofCompare",
+    "noUnusedVariable",
+];
+// Exclude typescript-only rules from jsRules, otherwise it's identical.
+exports.jsRules = {};
+for (var _i = 0, _a = Object.keys(exports.rules); _i < _a.length; _i++) {
+    var key = _a[_i];
+    var Rule = ruleLoader_1.findRule(key, path_1.join(__dirname, "..", "rules"));
+    if (Rule === undefined) {
+        throw new Error("Couldn't find rule '" + key + "'.");
+    }
+    if (!Rule.metadata.typescriptOnly) {
+        exports.jsRules[key] = exports.rules[key];
+    }
+}