diff --git a/.postcss-sorting.json b/.postcss-sorting.json index 31ce4fa..fd354a5 100644 --- a/.postcss-sorting.json +++ b/.postcss-sorting.json @@ -1,363 +1,414 @@ { - "empty-lines-between-children-rules": 1, - "empty-lines-between-media-rules": 1, - "sort-order": [ - [ - "@mixin" + "clean-empty-lines": true, + "at-rule-nested-empty-line-before": [true, { + "except": ["first-nested"] + }], + "declaration-empty-line-before": [true, { + "except": ["after-declaration", "first-nested"], + "ignore": ["after-comment", "after-declaration"] + }], + "rule-nested-empty-line-before": [true, { + "except": ["first-nested"], + "ignore": ["after-comment"] + }], + "order": [ + "custom-properties", + { + "type": "at-rule", + "name": "mixin" + }, + "declarations", + "at-rules", + "rules" ], - [ - "content", - "position", - "top", - "right", - "bottom", - "left", - "z-index" + "properties-order": [{ + "emptyLineBefore": true, + "properties": [ + "content", + "position", + "top", + "right", + "bottom", + "left", + "z-index" + ] + }, + { + "emptyLineBefore": true, + "properties": [ + "display", + "-webkit-flex", + "-ms-flex", + "flex", + "-webkit-flex-grow", + "flex-grow", + "-webkit-flex-shrink", + "flex-shrink", + "-webkit-flex-basis", + "flex-basis", + "-webkit-flex-flow", + "flex-flow", + "-webkit-flex-direction", + "-ms-flex-direction", + "flex-direction", + "-webkit-flex-wrap", + "flex-wrap", + "-webkit-justify-content", + "justify-content", + "-webkit-align-content", + "align-content", + "-webkit-align-items", + "align-items", + "-webkit-order", + "-ms-flex-order", + "order", + "-webkit-align-self", + "align-self", + "float", + "clear", + "-webkit-box-sizing", + "-moz-box-sizing", + "box-sizing", + "width", + "min-width", + "max-width", + "height", + "min-height", + "max-height", + "margin", + "margin-top", + "margin-right", + "margin-bottom", + "margin-left", + "padding", + "padding-top", + "padding-right", + "padding-bottom", + "padding-left", + "overflow", + "-ms-overflow-x", + "overflow-x", + "-ms-overflow-y", + "overflow-y", + "-webkit-overflow-scrolling", + "-ms-overflow-style" + ] + }, + { + "emptyLineBefore": true, + "properties": [ + "list-style", + "list-style-position", + "list-style-type", + "list-style-image", + "border-collapse", + "border-spacing", + "table-layout", + "empty-cells", + "caption-side", + "font", + "font-weight", + "font-size", + "line-height", + "font-family", + "vertical-align", + "text-align", + "direction", + "color", + "text-transform", + "text-decoration", + "font-style", + "font-variant", + "font-size-adjust", + "font-stretch", + "font-effect", + "font-emphasize", + "font-emphasize-position", + "font-emphasize-style", + "-webkit-font-smoothing", + "-moz-osx-font-smoothing", + "font-smooth", + "-webkit-text-align-last", + "-moz-text-align-last", + "-ms-text-align-last", + "text-align-last", + "letter-spacing", + "word-spacing", + "white-space", + "text-emphasis", + "text-emphasis-color", + "text-emphasis-style", + "text-emphasis-position", + "text-indent", + "-ms-text-justify", + "text-justify", + "-ms-writing-mode", + "text-outline", + "text-wrap", + "-ms-text-overflow", + "text-overflow", + "text-overflow-ellipsis", + "text-overflow-mode", + "text-orientation", + "-ms-word-wrap", + "word-wrap", + "-ms-word-break", + "word-break", + "-moz-tab-size", + "-o-tab-size", + "overflow-wrap", + "tab-size", + "-webkit-hyphens", + "-moz-hyphens", + "hyphens", + "unicode-bidi", + "columns", + "column-count", + "column-fill", + "column-gap", + "column-rule", + "column-rule-color", + "column-rule-style", + "column-rule-width", + "column-span", + "column-width", + "text-shadow", + "page-break-after", + "page-break-before", + "page-break-inside", + "src" + ] + }, + { + "emptyLineBefore": true, + "properties": [ + "background", + "background-color", + "background-image", + "background-repeat", + "background-position", + "-ms-background-position-x", + "background-position-x", + "-ms-background-position-y", + "background-position-y", + "-webkit-background-size", + "-moz-background-size", + "-o-background-size", + "background-size", + "-webkit-background-clip", + "-moz-background-clip", + "background-clip", + "background-origin", + "background-attachment", + "box-decoration-break", + "background-blend-mode", + "border", + "border-width", + "border-style", + "border-color", + "border-top", + "border-top-width", + "border-top-style", + "border-top-color", + "border-right", + "border-right-width", + "border-right-style", + "border-right-color", + "border-bottom", + "border-bottom-width", + "border-bottom-style", + "border-bottom-color", + "border-left", + "border-left-width", + "border-left-style", + "border-left-color", + "-webkit-border-radius", + "-moz-border-radius", + "border-radius", + "-webkit-border-top-left-radius", + "-moz-border-radius-topleft", + "border-top-left-radius", + "-webkit-border-top-right-radius", + "-moz-border-radius-topright", + "border-top-right-radius", + "-webkit-border-bottom-right-radius", + "-moz-border-radius-bottomright", + "border-bottom-right-radius", + "-webkit-border-bottom-left-radius", + "-moz-border-radius-bottomleft", + "border-bottom-left-radius", + "-webkit-border-image", + "-moz-border-image", + "-o-border-image", + "border-image", + "-webkit-border-image-source", + "-moz-border-image-source", + "-o-border-image-source", + "border-image-source", + "-webkit-border-image-slice", + "-moz-border-image-slice", + "-o-border-image-slice", + "border-image-slice", + "-webkit-border-image-width", + "-moz-border-image-width", + "-o-border-image-width", + "border-image-width", + "-webkit-border-image-outset", + "-moz-border-image-outset", + "-o-border-image-outset", + "border-image-outset", + "-webkit-border-image-repeat", + "-moz-border-image-repeat", + "-o-border-image-repeat", + "border-image-repeat", + "outline", + "outline-width", + "outline-style", + "outline-color", + "outline-offset", + "-webkit-box-shadow", + "-moz-box-shadow", + "box-shadow", + "-webkit-transform", + "-moz-transform", + "-ms-transform", + "-o-transform", + "transform", + "-webkit-transform-origin", + "-moz-transform-origin", + "-ms-transform-origin", + "-o-transform-origin", + "transform-origin", + "-webkit-backface-visibility", + "-moz-backface-visibility", + "backface-visibility", + "-webkit-perspective", + "-moz-perspective", + "perspective", + "-webkit-perspective-origin", + "-moz-perspective-origin", + "perspective-origin", + "-webkit-transform-style", + "-moz-transform-style", + "transform-style", + "visibility", + "cursor", + "opacity", + "-webkit-filter", + "filter", + "backdrop-filter" + ] + }, + { + "emptyLineBefore": true, + "properties": [ + "-webkit-transition", + "-moz-transition", + "-ms-transition", + "-o-transition", + "transition", + "-webkit-transition-delay", + "-moz-transition-delay", + "-ms-transition-delay", + "-o-transition-delay", + "transition-delay", + "-webkit-transition-timing-function", + "-moz-transition-timing-function", + "-ms-transition-timing-function", + "-o-transition-timing-function", + "transition-timing-function", + "-webkit-transition-duration", + "-moz-transition-duration", + "-ms-transition-duration", + "-o-transition-duration", + "transition-duration", + "-webkit-transition-property", + "-moz-transition-property", + "-ms-transition-property", + "-o-transition-property", + "transition-property", + "-webkit-animation", + "-moz-animation", + "-ms-animation", + "-o-animation", + "animation", + "-webkit-animation-name", + "-moz-animation-name", + "-ms-animation-name", + "-o-animation-name", + "animation-name", + "-webkit-animation-duration", + "-moz-animation-duration", + "-ms-animation-duration", + "-o-animation-duration", + "animation-duration", + "-webkit-animation-play-state", + "-moz-animation-play-state", + "-ms-animation-play-state", + "-o-animation-play-state", + "animation-play-state", + "-webkit-animation-timing-function", + "-moz-animation-timing-function", + "-ms-animation-timing-function", + "-o-animation-timing-function", + "animation-timing-function", + "-webkit-animation-delay", + "-moz-animation-delay", + "-ms-animation-delay", + "-o-animation-delay", + "animation-delay", + "-webkit-animation-iteration-count", + "-moz-animation-iteration-count", + "-ms-animation-iteration-count", + "-o-animation-iteration-count", + "animation-iteration-count", + "-webkit-animation-direction", + "-moz-animation-direction", + "-ms-animation-direction", + "-o-animation-direction", + "animation-direction", + "-webkit-animation-fill-mode", + "-moz-animation-fill-mode", + "-ms-animation-fill-mode", + "-o-animation-fill-mode", + "animation-fill-mode" + ] + }, + { + "emptyLineBefore": true, + "properties": [ + "appearance", + "clip", + "clip-path", + "counter-reset", + "counter-increment", + "resize", + "-webkit-user-select", + "-moz-user-select", + "-ms-user-select", + "user-select", + "-webkit-tap-highlight-color", + "nav-index", + "nav-up", + "nav-right", + "nav-down", + "nav-left", + "pointer-events", + "quotes", + "touch-action", + "will-change", + "zoom" + ] + }, + { + "emptyLineBefore": true, + "properties": [ + "fill", + "fill-rule", + "clip-rule", + "stroke" + ] + } ], - [ - "display", - "-webkit-flex", - "-ms-flex", - "flex", - "-webkit-flex-grow", - "flex-grow", - "-webkit-flex-shrink", - "flex-shrink", - "-webkit-flex-basis", - "flex-basis", - "-webkit-flex-flow", - "flex-flow", - "-webkit-flex-direction", - "-ms-flex-direction", - "flex-direction", - "-webkit-flex-wrap", - "flex-wrap", - "-webkit-justify-content", - "justify-content", - "-webkit-align-content", - "align-content", - "-webkit-align-items", - "align-items", - "-webkit-order", - "-ms-flex-order", - "order", - "-webkit-align-self", - "align-self", - "float", - "clear", - "-webkit-box-sizing", - "-moz-box-sizing", - "box-sizing", - "width", - "min-width", - "max-width", - "height", - "min-height", - "max-height", - "margin", - "margin-top", - "margin-right", - "margin-bottom", - "margin-left", - "padding", - "padding-top", - "padding-right", - "padding-bottom", - "padding-left", - "overflow", - "-ms-overflow-x", - "overflow-x", - "-ms-overflow-y", - "overflow-y", - "-webkit-overflow-scrolling" - ], - [ - "list-style", - "list-style-position", - "list-style-type", - "list-style-image", - "border-collapse", - "border-spacing", - "table-layout", - "empty-cells", - "caption-side", - "font", - "font-weight", - "font-size", - "line-height", - "font-family", - "vertical-align", - "text-align", - "direction", - "color", - "text-transform", - "text-decoration", - "font-style", - "font-variant", - "font-size-adjust", - "font-stretch", - "font-effect", - "font-emphasize", - "font-emphasize-position", - "font-emphasize-style", - "font-smooth", - "-webkit-text-align-last", - "-moz-text-align-last", - "-ms-text-align-last", - "text-align-last", - "letter-spacing", - "word-spacing", - "white-space", - "text-emphasis", - "text-emphasis-color", - "text-emphasis-style", - "text-emphasis-position", - "text-indent", - "-ms-text-justify", - "text-justify", - "-ms-writing-mode", - "text-outline", - "text-wrap", - "-ms-text-overflow", - "text-overflow", - "text-overflow-ellipsis", - "text-overflow-mode", - "text-orientation", - "-ms-word-wrap", - "word-wrap", - "-ms-word-break", - "word-break", - "-moz-tab-size", - "-o-tab-size", - "tab-size", - "-webkit-hyphens", - "-moz-hyphens", - "hyphens", - "unicode-bidi", - "columns", - "column-count", - "column-fill", - "column-gap", - "column-rule", - "column-rule-color", - "column-rule-style", - "column-rule-width", - "column-span", - "column-width", - "text-shadow", - "page-break-after", - "page-break-before", - "page-break-inside" - ], - [ - "background", - "background-color", - "background-image", - "background-repeat", - "background-position", - "-ms-background-position-x", - "background-position-x", - "-ms-background-position-y", - "background-position-y", - "-webkit-background-size", - "-moz-background-size", - "-o-background-size", - "background-size", - "-webkit-background-clip", - "-moz-background-clip", - "background-clip", - "background-origin", - "background-attachment", - "box-decoration-break", - "background-blend-mode", - "border", - "border-width", - "border-style", - "border-color", - "border-top", - "border-top-width", - "border-top-style", - "border-top-color", - "border-right", - "border-right-width", - "border-right-style", - "border-right-color", - "border-bottom", - "border-bottom-width", - "border-bottom-style", - "border-bottom-color", - "border-left", - "border-left-width", - "border-left-style", - "border-left-color", - "-webkit-border-radius", - "-moz-border-radius", - "border-radius", - "-webkit-border-top-left-radius", - "-moz-border-radius-topleft", - "border-top-left-radius", - "-webkit-border-top-right-radius", - "-moz-border-radius-topright", - "border-top-right-radius", - "-webkit-border-bottom-right-radius", - "-moz-border-radius-bottomright", - "border-bottom-right-radius", - "-webkit-border-bottom-left-radius", - "-moz-border-radius-bottomleft", - "border-bottom-left-radius", - "-webkit-border-image", - "-moz-border-image", - "-o-border-image", - "border-image", - "-webkit-border-image-source", - "-moz-border-image-source", - "-o-border-image-source", - "border-image-source", - "-webkit-border-image-slice", - "-moz-border-image-slice", - "-o-border-image-slice", - "border-image-slice", - "-webkit-border-image-width", - "-moz-border-image-width", - "-o-border-image-width", - "border-image-width", - "-webkit-border-image-outset", - "-moz-border-image-outset", - "-o-border-image-outset", - "border-image-outset", - "-webkit-border-image-repeat", - "-moz-border-image-repeat", - "-o-border-image-repeat", - "border-image-repeat", - "outline", - "outline-width", - "outline-style", - "outline-color", - "outline-offset", - "-webkit-box-shadow", - "-moz-box-shadow", - "box-shadow", - "-webkit-transform", - "-moz-transform", - "-ms-transform", - "-o-transform", - "transform", - "-webkit-transform-origin", - "-moz-transform-origin", - "-ms-transform-origin", - "-o-transform-origin", - "transform-origin", - "-webkit-backface-visibility", - "-moz-backface-visibility", - "backface-visibility", - "-webkit-perspective", - "-moz-perspective", - "perspective", - "-webkit-perspective-origin", - "-moz-perspective-origin", - "perspective-origin", - "-webkit-transform-style", - "-moz-transform-style", - "transform-style", - "visibility", - "cursor", - "opacity", - "-webkit-filter", - "filter" - ], - [ - "-webkit-transition", - "-moz-transition", - "-ms-transition", - "-o-transition", - "transition", - "-webkit-transition-delay", - "-moz-transition-delay", - "-ms-transition-delay", - "-o-transition-delay", - "transition-delay", - "-webkit-transition-timing-function", - "-moz-transition-timing-function", - "-ms-transition-timing-function", - "-o-transition-timing-function", - "transition-timing-function", - "-webkit-transition-duration", - "-moz-transition-duration", - "-ms-transition-duration", - "-o-transition-duration", - "transition-duration", - "-webkit-transition-property", - "-moz-transition-property", - "-ms-transition-property", - "-o-transition-property", - "transition-property", - "-webkit-animation", - "-moz-animation", - "-ms-animation", - "-o-animation", - "animation", - "-webkit-animation-name", - "-moz-animation-name", - "-ms-animation-name", - "-o-animation-name", - "animation-name", - "-webkit-animation-duration", - "-moz-animation-duration", - "-ms-animation-duration", - "-o-animation-duration", - "animation-duration", - "-webkit-animation-play-state", - "-moz-animation-play-state", - "-ms-animation-play-state", - "-o-animation-play-state", - "animation-play-state", - "-webkit-animation-timing-function", - "-moz-animation-timing-function", - "-ms-animation-timing-function", - "-o-animation-timing-function", - "animation-timing-function", - "-webkit-animation-delay", - "-moz-animation-delay", - "-ms-animation-delay", - "-o-animation-delay", - "animation-delay", - "-webkit-animation-iteration-count", - "-moz-animation-iteration-count", - "-ms-animation-iteration-count", - "-o-animation-iteration-count", - "animation-iteration-count", - "-webkit-animation-direction", - "-moz-animation-direction", - "-ms-animation-direction", - "-o-animation-direction", - "animation-direction" - ], - [ - "appearance", - "quotes", - "counter-reset", - "counter-increment", - "resize", - "-webkit-user-select", - "-moz-user-select", - "-ms-user-select", - "user-select", - "nav-index", - "nav-up", - "nav-right", - "nav-down", - "nav-left", - "pointer-events", - "will-change", - "clip", - "clip-path", - "zoom" - ], - [ - "@media" - ], - [ - ">child" - ] - ] + "unspecified-properties-position": "bottom" } diff --git a/.stylelintrc b/.stylelintrc index 68068db..1a6e8ba 100644 --- a/.stylelintrc +++ b/.stylelintrc @@ -2,14 +2,11 @@ "rules": { "color-hex-case": "lower", "color-hex-length": "long", - "color-named": null, - "color-no-hex": null, "color-no-invalid-hex": true, - "font-family-name-quotes": "double-unless-keyword", - "font-weight-notation": null, + "font-family-name-quotes": "always-unless-keyword", + "font-family-no-duplicate-names": true, - "function-blacklist": null, "function-calc-no-unspaced-operator": true, "function-comma-newline-after": "always-multi-line", "function-comma-newline-before": "never-multi-line", @@ -18,49 +15,28 @@ "function-linear-gradient-no-nonstandard-direction": true, "function-max-empty-lines": 0, "function-name-case": "lower", - "function-parentheses-newline-inside": null, "function-parentheses-space-inside": "never", - "function-url-data-uris": null, - "function-url-quotes": "double", - "function-whitelist": null, + "function-url-quotes": "always", "function-whitespace-after": "always", "number-leading-zero": "always", - "number-max-precision": null, "number-no-trailing-zeros": true, - "number-zero-length-no-unit": true, + "length-zero-no-unit": true, "string-no-newline": true, "string-quotes": "double", - "time-no-imperceptible": null, - - "unit-blacklist": null, "unit-case": "lower", "unit-no-unknown": true, - "unit-whitelist": null, - - "value-no-vendor-prefix": null, "value-keyword-case": "lower", "value-list-comma-newline-after": "always-multi-line", "value-list-comma-newline-before": "never-multi-line", "value-list-comma-space-after": "always-single-line", "value-list-comma-space-before": "never", + "value-list-max-empty-lines": 0, - "custom-property-no-outside-root": null, - "custom-property-pattern": null, - - "shorthand-property-no-redundant-values": null, - - "property-blacklist": null, "property-case": "lower", - "property-no-vendor-prefix": null, - "property-unit-blacklist": null, - "property-unit-whitelist": null, - "property-value-blacklist": null, - "property-value-whitelist": null, - "property-whitelist": null, "keyframe-declaration-no-important": true, @@ -69,57 +45,39 @@ "declaration-colon-newline-after": "always-multi-line", "declaration-colon-space-after": "always-single-line", "declaration-colon-space-before": "never", - "declaration-no-important": null, "declaration-block-no-duplicate-properties": true, - "declaration-block-no-ignored-properties": true, "declaration-block-no-shorthand-property-overrides": true, - "declaration-block-properties-order": null, "declaration-block-semicolon-newline-after": "always", "declaration-block-semicolon-newline-before": "never-multi-line", "declaration-block-semicolon-space-after": "always-single-line", "declaration-block-semicolon-space-before": "never", - "declaration-block-single-line-max-declarations": null, "declaration-block-trailing-semicolon": "always", + "block-closing-brace-empty-line-before": "never", "block-closing-brace-newline-after": "always", "block-closing-brace-newline-before": "always", "block-closing-brace-space-after": "always-single-line", "block-closing-brace-space-before": "always-single-line", "block-no-empty": true, - "block-no-single-line": true, "block-opening-brace-newline-after": "always", - "block-opening-brace-newline-before": null, "block-opening-brace-space-after": "always-single-line", "block-opening-brace-space-before": "always", "selector-attribute-brackets-space-inside": "never", - "selector-attribute-operator-blacklist": null, "selector-attribute-operator-space-after": "never", "selector-attribute-operator-space-before": "never", - "selector-attribute-operator-whitelist": null, - "selector-class-pattern": null, + "selector-attribute-quotes": "always", "selector-combinator-space-after": "always", "selector-combinator-space-before": "always", - "selector-id-pattern": null, + "selector-descendant-combinator-no-non-space": true, "selector-max-compound-selectors": 3, - "selector-max-specificity": null, - "selector-no-attribute": null, - "selector-no-combinator": null, - "selector-no-id": null, - "selector-no-qualifying-type": [true, { - "ignore": ["attribute"] - }], - "selector-no-type": null, - "selector-no-universal": null, - "selector-no-vendor-prefix": null, "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-root-no-composition": null, "selector-type-case": "lower", "selector-type-no-unknown": true, "selector-max-empty-lines": 0, @@ -129,26 +87,20 @@ "selector-list-comma-space-after": "always-single-line", "selector-list-comma-space-before": "never", - "root-no-standard-properties": null, - - "rule-nested-empty-line-before": ["always", { + "rule-empty-line-before": ["always", { "except": ["first-nested"], "ignore": ["after-comment"] }], - "rule-non-nested-empty-line-before": ["always", { - "ignore": ["after-comment"] - }], "media-feature-colon-space-after": "always", "media-feature-colon-space-before": "never", - "media-feature-name-no-vendor-prefix": null, - "media-feature-no-missing-punctuation": true, + "media-feature-name-case": "lower", + "media-feature-name-no-unknown": true, + "media-feature-name-no-vendor-prefix": true, + "media-feature-parentheses-space-inside": "never", "media-feature-range-operator-space-after": "always", "media-feature-range-operator-space-before": "always", - "custom-media-pattern": null, - - "media-query-parentheses-space-inside": "never", "media-query-list-comma-newline-after": "always-multi-line", "media-query-list-comma-newline-before": "never-multi-line", "media-query-list-comma-space-after": "always-single-line", @@ -157,37 +109,31 @@ "at-rule-empty-line-before": ["always", { "except": [ "first-nested", - "blockless-group" + "blockless-after-blockless" ], "ignore": ["after-comment"] }], "at-rule-name-case": "lower", + "at-rule-name-newline-after": "always-multi-line", "at-rule-name-space-after": "always", - "at-rule-no-vendor-prefix": null, + "at-rule-no-unknown": [true, { + "ignoreAtRules": ["mixin", "define-mixin"] + }], "at-rule-semicolon-newline-after": "always", - "stylelint-disable-reason": "always-before", - - "comment-empty-line-before": null, - "comment-whitespace-inside": null, - "comment-word-blacklist": null, + "comment-no-empty": true, "indentation": [2, { "except": ["value"] }], "max-empty-lines": 2, - "max-line-length": null, "max-nesting-depth": 3, - "no-browser-hacks": true, - "no-descending-specificity": null, "no-duplicate-selectors": true, + "no-empty-source": true, "no-eol-whitespace": true, "no-extra-semicolons": true, - "no-indistinguishable-colors": null, "no-invalid-double-slash-comments": true, - "no-missing-eof-newline": true, - "no-unknown-animations": null, - "no-unsupported-browser-features": null + "no-missing-end-of-source-newline": true } }