From 6cae3a7cfba6f91f45c113cea7cab3af13aa8da8 Mon Sep 17 00:00:00 2001 From: Shawn Allen Date: Mon, 4 Feb 2019 12:37:00 -0800 Subject: [PATCH] chore: rm -r tools/stylelint-config-primer --- tools/stylelint-config-primer/.eslintrc.json | 13 - tools/stylelint-config-primer/LICENSE | 21 -- tools/stylelint-config-primer/README.md | 205 ------------ tools/stylelint-config-primer/index.js | 325 ------------------- tools/stylelint-config-primer/package.json | 40 --- tools/stylelint-config-primer/tests/index.js | 69 ---- 6 files changed, 673 deletions(-) delete mode 100644 tools/stylelint-config-primer/.eslintrc.json delete mode 100644 tools/stylelint-config-primer/LICENSE delete mode 100644 tools/stylelint-config-primer/README.md delete mode 100644 tools/stylelint-config-primer/index.js delete mode 100644 tools/stylelint-config-primer/package.json delete mode 100644 tools/stylelint-config-primer/tests/index.js diff --git a/tools/stylelint-config-primer/.eslintrc.json b/tools/stylelint-config-primer/.eslintrc.json deleted file mode 100644 index 8146a83c..00000000 --- a/tools/stylelint-config-primer/.eslintrc.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "plugins": [ - "eslint-plugin-github" - ], - "env": { - "es6": true, - "node": true - }, - "extends": [ - "plugin:github/recommended", - "plugin:github/es6" - ] -} diff --git a/tools/stylelint-config-primer/LICENSE b/tools/stylelint-config-primer/LICENSE deleted file mode 100644 index f1cc6aa1..00000000 --- a/tools/stylelint-config-primer/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2019 GitHub Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/tools/stylelint-config-primer/README.md b/tools/stylelint-config-primer/README.md deleted file mode 100644 index c32228e7..00000000 --- a/tools/stylelint-config-primer/README.md +++ /dev/null @@ -1,205 +0,0 @@ -# Primer Stylelint Config - -[![NPM version](https://img.shields.io/npm/v/stylelint-config-primer.svg)](https://www.npmjs.org/package/stylelint-config-primer) -[![Build Status](https://travis-ci.org/primer/css.svg?branch=master)](https://travis-ci.org/primer/primer) - -> A sharable stylelint config object that enforces GitHub's css rules - -## Install - -``` -$ npm install --save stylelint-config-primer -``` - -## Usage - -Within your [stylelint config object](http://stylelint.io/user-guide/configuration/#extends) You can extend this configuration. This will serve as a base for your config, then you can make overrides in your own config object. - -```json -{ - "extends": "stylelint-config-primer" -} -``` - -## Documentation - -### Plugins - -* [stylelint-scss](https://github.com/kristerkari/stylelint-scss): A collection of SCSS specific linting rules for stylelint - * [scss/selector-no-redundant-nesting-selector](https://github.com/kristerkari/stylelint-scss/blob/master/src/rules/selector-no-redundant-nesting-selector/README.md): Disallow redundant nesting selectors (`&`). -* [stylelint-selector-no-utility](https://github.com/primer/stylelint-selector-no-utility): Stylelint rule that doesn't allow the styling of utility classes in CSS - -### Configured lints - -This is a list of the lints turned on in this configuration, and what they do. - -#### At-rule - -* [at-rule-blacklist](http://stylelint.io/user-guide/rules/at-rule-blacklist/): Specify a blacklist of disallowed at-rules. - * `"extend"` Disallow the use of `@extend`. -* [at-rule-name-case](http://stylelint.io/user-guide/rules/at-rule-name-case/): at rules must be in written lowercase. -* [at-rule-name-space-after](http://stylelint.io/user-guide/rules/at-rule-name-space-after/): There must always be a single space after at-rule names in single-line declaration blocks. -* [at-rule-semicolon-newline-after](http://stylelint.io/user-guide/rules/at-rule-semicolon-newline-after/): There must always be a newline after the semicolon. - -#### Block - -* [block-closing-brace-newline-after](http://stylelint.io/user-guide/rules/block-closing-brace-newline-after/): There must always be a newline after the closing brace. -* [block-closing-brace-newline-before](http://stylelint.io/user-guide/rules/block-closing-brace-newline-before/): There must always be a newline before the closing brace in multi-line blocks. -* [block-closing-brace-space-before](http://stylelint.io/user-guide/rules/block-closing-brace-space-before/): There must always be a single space before the closing brace in single-line blocks. -* [block-no-empty](http://stylelint.io/user-guide/rules/block-no-empty/): Disallow empty blocks. -* [block-opening-brace-newline-after](http://stylelint.io/user-guide/rules/block-opening-brace-newline-after/): There must always be a newline after the opening brace in multi-line blocks. -* [block-opening-brace-space-after](http://stylelint.io/user-guide/rules/block-opening-brace-space-after/): There must always be a single space after the opening brace in single-line blocks. -* [block-opening-brace-space-before](http://stylelint.io/user-guide/rules/block-opening-brace-space-before/): There must always be a single space before the opening brace. - -#### Color - -* [color-hex-case](http://stylelint.io/user-guide/rules/color-hex-case/): Hex colors must be written in lowercase. -* [color-hex-length](http://stylelint.io/user-guide/rules/color-hex-length/): Always use short hex notation, where available. -* [color-named](http://stylelint.io/user-guide/rules/color-named/): Colors must never be named. -* [color-no-invalid-hex](http://stylelint.io/user-guide/rules/color-no-invalid-hex/): Hex values must be valid. - -#### Comment - -* [comment-empty-line-before](http://stylelint.io/user-guide/rules/comment-empty-line-before/): There must always be an empty line before comments. _Except_: Comments that are nested and the first child of their parent node. _Ignore_: stylelint commands -* [comment-whitespace-inside](http://stylelint.io/user-guide/rules/comment-whitespace-inside/): There must always be whitespace inside the markers. - -#### Declaration - -* [declaration-bang-space-after](http://stylelint.io/user-guide/rules/declaration-bang-space-after/): There must never be whitespace after the bang. -* [declaration-bang-space-before](http://stylelint.io/user-guide/rules/declaration-bang-space-before/): There must always be a single space before the bang. -* [declaration-colon-newline-after](http://stylelint.io/user-guide/rules/declaration-colon-newline-after/): There must always be a newline after the colon if the declaration's value is multi-line. -* [declaration-colon-space-after](http://stylelint.io/user-guide/rules/declaration-colon-space-after/): There must always be a single space after the colon if the declaration's value is single-line. -* [declaration-colon-space-before](http://stylelint.io/user-guide/rules/declaration-colon-space-before/): There must never be whitespace before the colon. - -#### Declaration block - -* [declaration-block-no-duplicate-properties](http://stylelint.io/user-guide/rules/declaration-block-no-duplicate-properties/): Disallow duplicate properties within declaration blocks. _Ignore_: consecutive duplicated properties. -* [declaration-block-no-shorthand-property-overrides](http://stylelint.io/user-guide/rules/declaration-block-no-shorthand-property-overrides/): Disallow shorthand properties that override related longhand properties. -* [declaration-block-properties-order](http://stylelint.io/user-guide/rules/declaration-block-properties-order/): Properties in declaration blocks must be [sorted according to this list](https://github.com/primer/css/blob/master/tools/stylelint-config-primer/index.js#L47-L217). -* [declaration-block-semicolon-newline-after](http://stylelint.io/user-guide/rules/declaration-block-semicolon-newline-after/): There must always be a newline after the semicolon. -* [declaration-block-semicolon-space-before](http://stylelint.io/user-guide/rules/declaration-block-semicolon-space-before/): There must never be whitespace before the semicolons. -* [declaration-block-single-line-max-declarations](http://stylelint.io/user-guide/rules/declaration-block-single-line-max-declarations/): There should never be more than `1` declaration per line. -* [declaration-block-trailing-semicolon](http://stylelint.io/user-guide/rules/declaration-block-trailing-semicolon/): There must always be a trailing semicolon. - -#### Declaration Property - -* [declaration-property-value-blacklist](http://stylelint.io/user-guide/rules/declaration-property-value-blacklist/): Specify a blacklist of disallowed property and value pairs within declarations. - * `^transition`: Disallow the use of `all` within transitions. - * `^background`: Disallow the use of `http:` protocols within background image urls. - * `^border`: Disallow the use of the word `none` for borders, use `0` instead. - * `.+`: For everything ban the use of the word `initial`. - -#### Font Family - -* [font-family-name-quotes](http://stylelint.io/user-guide/rules/font-family-name-quotes/): Expect quotes only when quotes are required according [to the criteria](http://stylelint.io/user-guide/rules/font-family-name-quotes/#options), and disallow quotes in all other cases. - -#### Function - -* [function-calc-no-unspaced-operator](http://stylelint.io/user-guide/rules/function-calc-no-unspaced-operator/): Disallow an unspaced operator within `calc` functions. -* [function-comma-newline-after](http://stylelint.io/user-guide/rules/function-comma-newline-after/): There must never be a whitespace after the commas in multi-line functions. -* [function-comma-space-after](http://stylelint.io/user-guide/rules/function-comma-space-after/): There must always be a single space after the commas in single-line functions. -* [function-comma-space-before](http://stylelint.io/user-guide/rules/function-comma-space-before/): There must never be whitespace before the commas. -* [function-linear-gradient-no-nonstandard-direction](http://stylelint.io/user-guide/rules/function-linear-gradient-no-nonstandard-direction/): Disallow direction values in `linear-gradient()` calls that are not valid according to the [standard syntax](https://developer.mozilla.org/en-US/docs/Web/CSS/linear-gradient#Syntax). -* [function-max-empty-lines](http://stylelint.io/user-guide/rules/function-max-empty-lines/): There must never be empty lines within a function. -* [function-name-case](http://stylelint.io/user-guide/rules/function-name-case/): Function names must be written in lowercase. -* [function-parentheses-newline-inside](http://stylelint.io/user-guide/rules/function-parentheses-newline-inside/): There must always be a newline inside the parentheses of multi-line functions. -* [function-parentheses-space-inside](http://stylelint.io/user-guide/rules/function-parentheses-space-inside/): There must always be a single space inside the parentheses of single-line functions. -* [function-url-quotes](http://stylelint.io/user-guide/rules/function-url-quotes/): Urls must always be quoted. -* [function-whitespace-after](http://stylelint.io/user-guide/rules/function-whitespace-after/): There must always be whitespace after the function. - -#### General - -* [indentation](http://stylelint.io/user-guide/rules/indentation/): Indentation should always be `2` spaces. -* [max-empty-lines](http://stylelint.io/user-guide/rules/max-empty-lines/): Limit the number of adjacent empty lines to `1`. -* [max-nesting-depth](http://stylelint.io/user-guide/rules/max-nesting-depth/): Limit the allowed nesting depth `3`. -* [no-duplicate-selectors](http://stylelint.io/user-guide/rules/no-duplicate-selectors/): Disallow duplicate selectors within a stylesheet. -* [no-eol-whitespace](http://stylelint.io/user-guide/rules/no-eol-whitespace/): Disallow end-of-line whitespace. -* [no-extra-semicolons](http://stylelint.io/user-guide/rules/no-extra-semicolons/): Disallow extra semicolons. -* [no-missing-end-of-source-newline](http://stylelint.io/user-guide/rules/no-missing-end-of-source-newline/): Disallow missing end-of-file newlines in non-empty files. -* [no-unsupported-browser-features](http://stylelint.io/user-guide/rules/no-unsupported-browser-features/): Disallow features that are unsupported by the browsers that [we are targeting in the config](https://github.com/primer/css/blob/master/tools/stylelint-config-primer/index.js#L272) - -#### Media Feature - -* [media-feature-colon-space-after](http://stylelint.io/user-guide/rules/media-feature-colon-space-after/): There must always be a single space after the colon. -* [media-feature-colon-space-before](http://stylelint.io/user-guide/rules/media-feature-colon-space-before/): There must never be whitespace before the colon. -* [media-feature-no-missing-punctuation](http://stylelint.io/user-guide/rules/media-feature-no-missing-punctuation/): Disallow missing punctuation for non-boolean media features. -* [media-feature-range-operator-space-after](http://stylelint.io/user-guide/rules/media-feature-range-operator-space-after/): There must always be a single space after the range operator. -* [media-feature-range-operator-space-before](http://stylelint.io/user-guide/rules/media-feature-range-operator-space-before/): There must always be a single space before the range operator. - -#### Media Query - -* [media-feature-parentheses-space-inside](http://stylelint.io/user-guide/rules/media-feature-parentheses-space-inside/): There must never be whitespace on the inside the parentheses. - -#### Media Query List - -* [media-query-list-comma-newline-after](http://stylelint.io/user-guide/rules/media-query-list-comma-newline-after/): There must always be a newline after the commas in multi-line media query lists. -* [media-query-list-comma-space-after](http://stylelint.io/user-guide/rules/media-query-list-comma-space-after/): There must always be a single space after the commas in single-line media query lists. -* [media-query-list-comma-space-before](http://stylelint.io/user-guide/rules/media-query-list-comma-space-before/): There must never be whitepace before the commas. - -#### Number - -* [number-leading-zero](http://stylelint.io/user-guide/rules/number-leading-zero/): There must always be a leading zero. -* [number-no-trailing-zeros](http://stylelint.io/user-guide/rules/number-no-trailing-zeros/): Disallow trailing zeros in numbers. - -#### Length - -* [length-zero-no-unit](http://stylelint.io/user-guide/rules/length-zero-no-unit/): Disallow units for zero lengths. - -#### Property - -* [property-case](http://stylelint.io/user-guide/rules/property-case/): Properties must be written in lowercase. -* [property-no-vendor-prefix](http://stylelint.io/user-guide/rules/property-no-vendor-prefix/): Disallow vendor prefixes for properties. -* [shorthand-property-no-redundant-values](http://stylelint.io/user-guide/rules/shorthand-property-no-redundant-values/): Disallow redundant values in shorthand properties. - -#### Rule - -* [rule-nested-empty-line-before](http://stylelint.io/user-guide/rules/rule-nested-empty-line-before/): There must always be an empty line before multi-line rules. _Except_: Nested rules that are the first of their parent rule. _Ignore_: Rules that come after a comment. -* [rule-non-nested-empty-line-before](http://stylelint.io/user-guide/rules/rule-non-nested-empty-line-before/): There must always be an empty line before multi-line rules. _Ignore_: Rules that come after a comment. - -#### Selector - -* [selector-attribute-brackets-space-inside](http://stylelint.io/user-guide/rules/selector-attribute-brackets-space-inside/): There must never be whitespace on the inside the brackets. -* [selector-attribute-operator-space-after](http://stylelint.io/user-guide/rules/selector-attribute-operator-space-after/): There must never be a single after after the operator. -* [selector-attribute-operator-space-before](http://stylelint.io/user-guide/rules/selector-attribute-operator-space-before/): There must never be a single before after the operator. -* [selector-combinator-space-after](http://stylelint.io/user-guide/rules/selector-combinator-space-after/): There must always be a single space after the combinators. -* [selector-combinator-space-before](http://stylelint.io/user-guide/rules/selector-combinator-space-before/): There must always be a single space before the combinators. -* [selector-max-compound-selectors](http://stylelint.io/user-guide/rules/selector-max-compound-selectors/): Limit the number of compound selectors in a selector to `3`. -* [selector-max-empty-lines](http://stylelint.io/user-guide/rules/selector-max-empty-lines/): Limit the number of adjacent empty lines within selectors to `0`. -* [selector-max-specificity](http://stylelint.io/user-guide/rules/selector-max-specificity/): Limit the specificity of selectors to `"0,4,0"`. -* [selector-no-id](http://stylelint.io/user-guide/rules/selector-no-id/): Disallow id selectors. -* [selector-no-qualifying-type](http://stylelint.io/user-guide/rules/selector-no-qualifying-type/): Disallow qualifying a selector by type. -* [selector-no-type](http://stylelint.io/user-guide/rules/selector-no-type/): Disallow type selectors. -* [selector-pseudo-class-case](http://stylelint.io/user-guide/rules/selector-pseudo-class-case/): pseudo-class selectors should always be lowercase. -* [selector-pseudo-class-parentheses-space-inside](http://stylelint.io/user-guide/rules/selector-pseudo-class-parentheses-space-inside/): There must never be whitespace on the inside the parentheses. -* [selector-pseudo-element-case](http://stylelint.io/user-guide/rules/selector-pseudo-element-case/): pseudo-element selectors should always be lowercase. -* [selector-pseudo-element-colon-notation](http://stylelint.io/user-guide/rules/selector-pseudo-element-colon-notation/): Applicable pseudo-elements must always use the double colon notation. -* [selector-pseudo-element-no-unknown](http://stylelint.io/user-guide/rules/selector-pseudo-element-no-unknown/): Disallow unknown pseudo-element selectors. -* [selector-type-case](http://stylelint.io/user-guide/rules/selector-type-case/): Type selectors must always be written in lowercase. - -#### Selector List -* [selector-list-comma-newline-after](http://stylelint.io/user-guide/rules/selector-list-comma-newline-after/): There must always be a newline after the commas. -* [selector-list-comma-space-before](http://stylelint.io/user-guide/rules/selector-list-comma-space-before/): There must never be whitespace before the commas. - -#### String - -* [string-no-newline](http://stylelint.io/user-guide/rules/string-no-newline/): Disallow (unescaped) newlines in strings. -* [string-quotes](http://stylelint.io/user-guide/rules/string-quotes/): Strings must always be wrapped with double quotes. - -#### Unit - -* [unit-case](http://stylelint.io/user-guide/rules/unit-case/): Units must be written in lowercase. -* [unit-no-unknown](http://stylelint.io/user-guide/rules/unit-no-unknown/): Disallow unknown units. - -#### Value - -* [value-no-vendor-prefix](http://stylelint.io/user-guide/rules/value-no-vendor-prefix/): Disallow vendor prefixes for values. - -#### Value list - -* [value-list-comma-newline-after](http://stylelint.io/user-guide/rules/value-list-comma-newline-after/): There must always be a newline after the commas in multi-line value lists. -* [value-list-comma-space-after](http://stylelint.io/user-guide/rules/value-list-comma-space-after/): There must always be a single space after the commas in single-line value lists. -* [value-list-comma-space-before](http://stylelint.io/user-guide/rules/value-list-comma-space-before/): There must never be whitespace before the commas. - -## License - -[MIT](./LICENSE) © [GitHub](https://github.com/) diff --git a/tools/stylelint-config-primer/index.js b/tools/stylelint-config-primer/index.js deleted file mode 100644 index 2066b97d..00000000 --- a/tools/stylelint-config-primer/index.js +++ /dev/null @@ -1,325 +0,0 @@ -module.exports = { - "plugins": [ - "stylelint-no-unsupported-browser-features", - "stylelint-order", - "stylelint-selector-no-utility", - "stylelint-scss", - ], - "rules": { - "at-rule-blacklist": ["extend"], - "at-rule-name-case": "lower", - "at-rule-name-space-after": "always-single-line", - "at-rule-semicolon-newline-after": "always", - "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-case": "lower", - "color-hex-length": "short", - "color-named": "never", - "color-no-invalid-hex": true, - "comment-empty-line-before": [ - "always", - { - "except": [ - "first-nested" - ], - "ignore": [ - "stylelint-commands" - ] - } - ], - "comment-whitespace-inside": "always", - "declaration-bang-space-after": "never", - "declaration-bang-space-before": "always", - "declaration-block-no-duplicate-properties": [ - true, - { - "ignore": [ - "consecutive-duplicates" - ] - } - ], - "declaration-block-no-shorthand-property-overrides": true, - "order/properties-order": [ - "position", - "top", - "right", - "bottom", - "left", - "z-index", - "display", - "float", - "width", - "min-width", - "max-width", - "height", - "min-height", - "max-height", - "box-sizing", - "padding", - "padding-top", - "padding-right", - "padding-bottom", - "padding-left", - "margin", - "margin-top", - "margin-right", - "margin-bottom", - "margin-left", - "overflow", - "overflow-x", - "overflow-y", - "clip", - "clear", - "font", - "font-family", - "font-size", - "font-style", - "font-weight", - "font-variant", - "font-size-adjust", - "font-stretch", - "font-effect", - "font-emphasize", - "font-emphasize-position", - "font-emphasize-style", - "font-smooth", - "hyphens", - "line-height", - "color", - "text-align", - "text-align-last", - "text-emphasis", - "text-emphasis-color", - "text-emphasis-style", - "text-emphasis-position", - "text-decoration", - "text-indent", - "text-justify", - "text-outline", - "text-overflow", - "text-overflow-ellipsis", - "text-overflow-mode", - "text-shadow", - "text-transform", - "text-wrap", - "letter-spacing", - "word-break", - "word-spacing", - "word-wrap", - "tab-size", - "white-space", - "vertical-align", - "list-style", - "list-style-position", - "list-style-type", - "list-style-image", - "pointer-events", - "fill", - "fill-opacity", - "stroke", - "stroke-opacity", - "stroke-width", - "shape-rendering", - "cursor", - "visibility", - "zoom", - "flex-direction", - "flex-order", - "flex-pack", - "flex-align", - "table-layout", - "empty-cells", - "caption-side", - "border-spacing", - "border-collapse", - "content", - "quotes", - "counter-reset", - "counter-increment", - "resize", - "user-select", - "nav-index", - "nav-up", - "nav-right", - "nav-down", - "nav-left", - "background", - "background-color", - "background-image", - "filter", - "background-repeat", - "background-attachment", - "background-position", - "background-position-x", - "background-position-y", - "background-clip", - "background-origin", - "background-size", - "border", - "border-color", - "border-style", - "border-width", - "border-top", - "border-top-color", - "border-top-style", - "border-top-width", - "border-right", - "border-right-color", - "border-right-style", - "border-right-width", - "border-bottom", - "border-bottom-color", - "border-bottom-style", - "border-bottom-width", - "border-left", - "border-left-color", - "border-left-style", - "border-left-width", - "border-radius", - "border-top-left-radius", - "border-top-right-radius", - "border-bottom-right-radius", - "border-bottom-left-radius", - "border-image", - "border-image-source", - "border-image-slice", - "border-image-width", - "border-image-outset", - "border-image-repeat", - "outline", - "outline-width", - "outline-style", - "outline-color", - "outline-offset", - "box-shadow", - "opacity", - "transition", - "transition-delay", - "transition-timing-function", - "transition-duration", - "transition-property", - "transform", - "transform-origin", - "animation", - "animation-name", - "animation-duration", - "animation-fill-mode", - "animation-play-state", - "animation-timing-function", - "animation-delay", - "animation-iteration-count", - "animation-direction" - ], - "declaration-block-semicolon-newline-after": "always", - "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", - "declaration-property-value-blacklist": { - "/^transition/": [ - "/all/" - ], - "/^background/": [ - "http:", - "https:" - ], - "/^border/": [ - "none" - ], - "/.+/": [ - "initial" - ] - }, - "font-family-name-quotes": "always-where-recommended", - "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-url-quotes": "always", - "function-whitespace-after": "always", - "indentation": 2, - "length-zero-no-unit": true, - "max-empty-lines": 1, - "max-nesting-depth": 3, - "media-feature-colon-space-after": "always", - "media-feature-colon-space-before": "never", - "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-duplicate-selectors": true, - "no-eol-whitespace": true, - "no-extra-semicolons": true, - "no-missing-end-of-source-newline": true, - "number-leading-zero": "always", - "number-no-trailing-zeros": true, - "plugin/no-unsupported-browser-features": [true, { - "severity": "warning", - "browsers": [ - "> 5%", - "last 2 firefox versions", - "last 2 chrome versions", - "last 2 safari versions", - "last 2 edge versions", - "ie 11" - ] - }], - "primer/selector-no-utility": true, - "property-case": "lower", - "property-no-vendor-prefix": true, - "rule-empty-line-before": [ - "always-multi-line", - { - "except": [ - "first-nested" - ], - "ignore": [ - "after-comment" - ] - } - ], - "scss/selector-no-redundant-nesting-selector": true, - "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-list-comma-newline-after": "always", - "selector-list-comma-space-before": "never", - "selector-max-compound-selectors": 3, - "selector-max-empty-lines": 0, - "selector-max-id": 0, - "selector-max-specificity": "0,4,0", - "selector-max-type": 0, - "selector-no-qualifying-type": true, - "selector-pseudo-class-case": "lower", - "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, - "string-quotes": "double", - "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-no-vendor-prefix": true, - }, -} diff --git a/tools/stylelint-config-primer/package.json b/tools/stylelint-config-primer/package.json deleted file mode 100644 index 8b0c9c2b..00000000 --- a/tools/stylelint-config-primer/package.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "name": "stylelint-config-primer", - "version": "3.0.1", - "description": "Sharable stylelint config used by GitHub's CSS", - "homepage": "http://primer.github.io/", - "author": "GitHub, Inc.", - "license": "MIT", - "main": "index.js", - "primer": { - "module_type": "tools" - }, - "scripts": { - "ava": "ava --verbose \"tests/**/*.js\"", - "lint": "eslint **/*.js", - "test": "npm-run-all lint ava", - "prepublishOnly": "../../script/notify pending", - "publish": "../../script/notify success" - }, - "repository": "https://github.com/primer/css/tree/master/tools/stylelint-config-primer", - "dependencies": { - "stylelint-no-unsupported-browser-features": "^1.0.0", - "stylelint-order": "^0.4.4", - "stylelint-scss": "^1.4.1", - "stylelint-selector-no-utility": "2.0.2" - }, - "devDependencies": { - "eslint": "^3.19.0", - "eslint-plugin-github": "^0.12.0", - "eslint-plugin-import": "^2.2.0", - "eslint-rule-documentation": "^1.0.11", - "npm-run-all": "4.1.5" - }, - "keywords": [ - "github", - "primer", - "stylelint-config", - "stylelint", - "css" - ] -} diff --git a/tools/stylelint-config-primer/tests/index.js b/tools/stylelint-config-primer/tests/index.js deleted file mode 100644 index 6cd04e72..00000000 --- a/tools/stylelint-config-primer/tests/index.js +++ /dev/null @@ -1,69 +0,0 @@ -const config = require("../") -const stylelint = require("stylelint") -const test = require("ava") - -const validCss = -`.selector-x { width: 10%; } -.selector-y { width: 20%; } -.selector-z { width: 30%; } -` - -const invalidCss = -`.foo { - color: #fff; - top: .2em; -} -` - -test("stylelint runs with config", t => { - return stylelint.lint({ - code: "a { font-weight: bold; }", - config: config - }) - .then(data => { - t.truthy(true, "config works") - t.truthy(data, "data exists") - }) -}) - -test("no warnings with valid css", t => { - return stylelint.lint({ - code: validCss, - config: config, - }) - .then(data => { - const {errored, results} = data - const {warnings} = results[0] - t.falsy(errored, "no errored") - t.is(warnings.length, 0, "flags no warnings") - }) -}) - -test("a warning with invalid css", t => { - return stylelint.lint({ - code: invalidCss, - config: config, - }) - .then(data => { - const {errored, results} = data - const {warnings} = results[0] - t.truthy(errored, "errored") - t.is(warnings.length, 2, "flags two warning") - t.is(warnings[0].text, 'Expected "top" to come before "color" (order/properties-order)', "correct warning text") - t.is(warnings[1].text, "Expected a leading zero (number-leading-zero)", "correct warning text") - }) -}) - -test("No deprecated config", t => { - return stylelint.lint({ - code: "", - config: config, - syntax: "scss" - }) - .then(data => { - const {errored, results} = data - t.falsy(errored, "errored") - t.not(results.length, 0, "Did not find any resutls") - t.is(results[0].deprecations.length, 0, `Expected there to be no deprecated config warnings. Please fix these:\n\n${results[0].deprecations.map(d => d.text).join("\n")}`) - }) -})