# Linter Options
options:
  # Don't merge default rules
  merge-default-rules: false
  # Set the formatter to 'html'
  # formatter: html
  # Output file instead of logging results
  # output-file: 'linters/sass-lint.html'
  # Raise an error if more than 50 warnings are generated
  formatter: stylish
  max-warnings: 50

# File Options
files:
  include: '**/*.scss'
  ignore:
    - 'test/**/*.scss'

# Rule Configuration
rules:
  # Extends
  extends-before-mixins: 1
  extends-before-declarations: 1
  placeholder-in-extend: 1

  # Mixins
  #mixins-before-declarations: 2

  # Line Spacing
  one-declaration-per-line: 1
  empty-line-between-blocks: 1
  single-line-per-selector: 1

  # Disallows
  no-css-comments: 0
  no-debug: 1
  no-duplicate-properties: 1
  no-empty-rulesets: 1
  no-extends: 0
  no-ids: 0
  no-important: 1
  no-invalid-hex: 2
  no-mergeable-selectors: 1
  no-misspelled-properties: 1
  no-qualifying-elements: 1
  no-trailing-zero: 0
  no-transition-all: 0
  no-url-protocols: 1
  no-vendor-prefixes: 1
  no-warn: 1

  # Nesting
  force-attribute-nesting: 1
  force-element-nesting: 1
  force-pseudo-nesting: 1

  # Name Formats
  function-name-format: 1
  mixin-name-format: 1
  placeholder-name-format: 1
  variable-name-format:
    - 1
    - allow-leading-underscore: false

  # Style Guide
  border-zero: 1
  brace-style: 1
  clean-import-paths: 1
  empty-args: 1
  hex-length: 1
  hex-notation: 1
  indentation: 1
  leading-zero: 1
  nesting-depth: 1
  #property-sort-order: 1
  #quotes: 1
  shorthand-values: 1
  #url-quotes: 1
  variable-for-property: 1
  zero-unit: 1

  # Inner Spacing
  space-after-comma: 1
  space-before-colon: 1
  space-after-colon: 1
  space-before-brace: 1
  space-before-bang: 1
  space-after-bang: 1
  space-between-parens: 1

  # Final Items
  trailing-semicolon: 1
  final-newline: 1
