diff --git a/.eslintrc.json b/.eslintrc.json index f8d95d5a..4a73f503 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,5 +1,5 @@ { - "extends": "vaadin", + "extends": "eslint:recommended", "env": { "browser": true, "node": true, @@ -15,6 +15,59 @@ "parserOptions": { "sourceType": "module" }, + "rules": { + "curly": 2, + "no-caller": 2, + "no-extend-native": 2, + "no-extra-bind": 2, + "no-invalid-this": 2, + "no-multi-spaces": 2, + "no-new-wrappers": 2, + "no-with": 2, + "array-bracket-spacing": [2, "never"], + "brace-style": 2, + + "camelcase": [2, {"properties": "never"}], + "comma-spacing": 2, + "comma-style": 2, + "computed-property-spacing": 2, + "func-call-spacing": 2, + "indent": [2, 2, {"SwitchCase": 1}], + "key-spacing": 2, + "keyword-spacing": 2, + "linebreak-style": 2, + "max-len": [2, {"code": 140}], + "no-array-constructor": 2, + "no-multiple-empty-lines": [2, {"max": 2}], + "no-new-object": 2, + "no-trailing-spaces": 2, + "object-curly-spacing": 2, + "quote-props": [2, "consistent"], + "quotes": [2, "single", {"allowTemplateLiterals": true}], + "semi-spacing": 2, + "semi": 2, + "space-before-blocks": 2, + "space-before-function-paren": [2, "never"], + "space-in-parens": 2, + "space-infix-ops": 2, + "spaced-comment": [2, "always"], + + "arrow-spacing": 2, + "constructor-super": 2, + "no-confusing-arrow": 2, + "no-const-assign": 2, + "no-dupe-class-members": 2, + "no-duplicate-imports": 2, + "no-this-before-super": 2, + "no-useless-computed-key": 2, + "no-useless-constructor": 2, + "no-useless-rename": 2, + "prefer-const": 2, + "rest-spread-spacing": 2, + "template-curly-spacing": 2, + + "no-unused-vars": ["error", { "args": "none" }] + }, "overrides": [{ "files": ["gulpfile.js"], "parserOptions": { diff --git a/.stylelintrc b/.stylelintrc deleted file mode 100644 index b2189e23..00000000 --- a/.stylelintrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "stylelint-config-vaadin" -} diff --git a/.stylelintrc.json b/.stylelintrc.json new file mode 100644 index 00000000..6f1f523d --- /dev/null +++ b/.stylelintrc.json @@ -0,0 +1,93 @@ +{ + "rules": { + "at-rule-name-case": "lower", + "at-rule-name-space-after": "always-single-line", + "at-rule-semicolon-newline-after": "always", + "block-closing-brace-empty-line-before": "never", + "block-closing-brace-newline-after": "always", + "block-closing-brace-newline-before": "always-multi-line", + "block-closing-brace-space-before": "always-single-line", + "block-no-empty": true, + "block-opening-brace-newline-after": "always-multi-line", + "block-opening-brace-space-after": "always-single-line", + "block-opening-brace-space-before": "always", + "color-hex-length": "short", + "color-no-invalid-hex": true, + "comment-no-empty": true, + "comment-whitespace-inside": "always", + "custom-property-empty-line-before": "never", + "declaration-bang-space-after": "never", + "declaration-bang-space-before": "always", + "declaration-block-no-duplicate-properties": [ true, { + "ignore": ["consecutive-duplicates-with-different-values"] + } ], + "declaration-block-no-redundant-longhand-properties": true, + "declaration-block-no-shorthand-property-overrides": true, + "declaration-block-semicolon-newline-after": "always-multi-line", + "declaration-block-semicolon-space-after": "always-single-line", + "declaration-block-semicolon-space-before": "never", + "declaration-block-single-line-max-declarations": 1, + "declaration-block-trailing-semicolon": "always", + "declaration-colon-newline-after": "always-multi-line", + "declaration-colon-space-after": "always-single-line", + "declaration-colon-space-before": "never", + "font-family-no-duplicate-names": true, + "function-calc-no-unspaced-operator": true, + "function-comma-newline-after": "always-multi-line", + "function-comma-space-after": "always-single-line", + "function-comma-space-before": "never", + "function-linear-gradient-no-nonstandard-direction": true, + "function-max-empty-lines": 0, + "function-name-case": "lower", + "function-parentheses-newline-inside": "always-multi-line", + "function-parentheses-space-inside": "never-single-line", + "function-whitespace-after": "always", + "indentation": null, + "keyframe-declaration-no-important": true, + "length-zero-no-unit": true, + "max-empty-lines": 1, + "media-feature-colon-space-after": "always", + "media-feature-colon-space-before": "never", + "media-feature-name-case": "lower", + "media-feature-name-no-unknown": true, + "media-feature-parentheses-space-inside": "never", + "media-feature-range-operator-space-after": "always", + "media-feature-range-operator-space-before": "always", + "media-query-list-comma-newline-after": "always-multi-line", + "media-query-list-comma-space-after": "always-single-line", + "media-query-list-comma-space-before": "never", + "no-eol-whitespace": true, + "no-invalid-double-slash-comments": true, + "number-no-trailing-zeros": true, + "property-case": "lower", + "property-no-unknown": true, + "rule-empty-line-before": [ "always-multi-line", { + "except": ["first-nested"], + "ignore": ["after-comment"] + } ], + "selector-attribute-brackets-space-inside": "never", + "selector-attribute-operator-space-after": "never", + "selector-attribute-operator-space-before": "never", + "selector-combinator-space-after": "always", + "selector-combinator-space-before": "always", + "selector-descendant-combinator-no-non-space": true, + "selector-list-comma-newline-after": "always", + "selector-list-comma-space-before": "never", + "selector-max-empty-lines": 0, + "selector-pseudo-class-case": "lower", + "selector-pseudo-class-no-unknown": true, + "selector-pseudo-class-parentheses-space-inside": "never", + "selector-pseudo-element-case": "lower", + "selector-pseudo-element-colon-notation": "double", + "selector-pseudo-element-no-unknown": true, + "selector-type-case": "lower", + "shorthand-property-no-redundant-values": true, + "string-no-newline": true, + "unit-case": "lower", + "unit-no-unknown": true, + "value-list-comma-newline-after": "always-multi-line", + "value-list-comma-space-after": "always-single-line", + "value-list-comma-space-before": "never", + "value-list-max-empty-lines": 0 + } +} diff --git a/demo/element-demo.html b/demo/element-demo.html index 399947ec..6c97f3a2 100644 --- a/demo/element-demo.html +++ b/demo/element-demo.html @@ -1,4 +1,5 @@