123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231 |
- module.exports = {
- root: true,
- plugins: ['stylelint-order'],
- customSyntax: 'postcss-html',
- extends: ['stylelint-config-standard', 'stylelint-config-prettier'],
- rules: {
- 'selector-pseudo-class-no-unknown': [
- true,
- {
- ignorePseudoClasses: ['global', 'deep']
- }
- ],
- 'at-rule-no-unknown': [
- true,
- {
- ignoreAtRules: ['function', 'if', 'each', 'include', 'mixin']
- }
- ],
- 'no-empty-source': null,
- 'named-grid-areas-no-invalid': null,
- 'unicode-bom': 'never',
- 'no-descending-specificity': null,
- 'font-family-no-missing-generic-family-keyword': null,
- 'declaration-colon-space-after': 'always-single-line',
- 'declaration-colon-space-before': 'never',
- 'declaration-block-trailing-semicolon': null,
- 'rule-empty-line-before': [
- 'always',
- {
- ignore: ['after-comment', 'first-nested']
- }
- ],
- 'unit-no-unknown': [
- true,
- {
- ignoreUnits: ['rpx']
- }
- ],
- 'order/order': [
- [
- 'dollar-variables',
- 'custom-properties',
- 'at-rules',
- 'declarations',
- {
- type: 'at-rule',
- name: 'supports'
- },
- {
- type: 'at-rule',
- name: 'media'
- },
- 'rules'
- ],
- {
- severity: 'warning'
- }
- ],
- // Specify the alphabetical order of the attributes in the declaration block
- 'order/properties-order': [
- 'position',
- 'top',
- 'right',
- 'bottom',
- 'left',
- 'z-index',
- 'display',
- 'float',
- 'width',
- 'height',
- 'max-width',
- 'max-height',
- 'min-width',
- 'min-height',
- 'padding',
- 'padding-top',
- 'padding-right',
- 'padding-bottom',
- 'padding-left',
- 'margin',
- 'margin-top',
- 'margin-right',
- 'margin-bottom',
- 'margin-left',
- 'margin-collapse',
- 'margin-top-collapse',
- 'margin-right-collapse',
- 'margin-bottom-collapse',
- 'margin-left-collapse',
- 'overflow',
- 'overflow-x',
- 'overflow-y',
- 'clip',
- 'clear',
- 'font',
- 'font-family',
- 'font-size',
- 'font-smoothing',
- 'osx-font-smoothing',
- 'font-style',
- 'font-weight',
- 'hyphens',
- 'src',
- 'line-height',
- 'letter-spacing',
- 'word-spacing',
- 'color',
- 'text-align',
- 'text-decoration',
- 'text-indent',
- 'text-overflow',
- 'text-rendering',
- 'text-size-adjust',
- 'text-shadow',
- 'text-transform',
- 'word-break',
- 'word-wrap',
- 'white-space',
- 'vertical-align',
- 'list-style',
- 'list-style-type',
- 'list-style-position',
- 'list-style-image',
- 'pointer-events',
- 'cursor',
- 'background',
- 'background-attachment',
- 'background-color',
- 'background-image',
- 'background-position',
- 'background-repeat',
- 'background-size',
- 'border',
- 'border-collapse',
- 'border-top',
- 'border-right',
- 'border-bottom',
- 'border-left',
- 'border-color',
- 'border-image',
- 'border-top-color',
- 'border-right-color',
- 'border-bottom-color',
- 'border-left-color',
- 'border-spacing',
- 'border-style',
- 'border-top-style',
- 'border-right-style',
- 'border-bottom-style',
- 'border-left-style',
- 'border-width',
- 'border-top-width',
- 'border-right-width',
- 'border-bottom-width',
- 'border-left-width',
- 'border-radius',
- 'border-top-right-radius',
- 'border-bottom-right-radius',
- 'border-bottom-left-radius',
- 'border-top-left-radius',
- 'border-radius-topright',
- 'border-radius-bottomright',
- 'border-radius-bottomleft',
- 'border-radius-topleft',
- 'content',
- 'quotes',
- 'outline',
- 'outline-offset',
- 'opacity',
- 'filter',
- 'visibility',
- 'size',
- 'zoom',
- 'transform',
- 'box-align',
- 'box-flex',
- 'box-orient',
- 'box-pack',
- 'box-shadow',
- 'box-sizing',
- 'table-layout',
- 'animation',
- 'animation-delay',
- 'animation-duration',
- 'animation-iteration-count',
- 'animation-name',
- 'animation-play-state',
- 'animation-timing-function',
- 'animation-fill-mode',
- 'transition',
- 'transition-delay',
- 'transition-duration',
- 'transition-property',
- 'transition-timing-function',
- 'background-clip',
- 'backface-visibility',
- 'resize',
- 'appearance',
- 'user-select',
- 'interpolation-mode',
- 'direction',
- 'marks',
- 'page',
- 'set-link-source',
- 'unicode-bidi',
- 'speak'
- ]
- },
- ignoreFiles: ['**/*.js', '**/*.jsx', '**/*.tsx', '**/*.ts'],
- overrides: [
- {
- files: ['*.vue', '**/*.vue', '*.html', '**/*.html'],
- extends: ['stylelint-config-recommended', 'stylelint-config-html'],
- rules: {
- 'keyframes-name-pattern': null,
- 'selector-pseudo-class-no-unknown': [
- true,
- {
- ignorePseudoClasses: ['deep', 'global']
- }
- ],
- 'selector-pseudo-element-no-unknown': [
- true,
- {
- ignorePseudoElements: ['v-deep', 'v-global', 'v-slotted']
- }
- ]
- }
- }
- ]
- }
|