UNPKG

origin-css

Version:

Origin is FreeAgent’s internal CSS framework. We’re a growing team working across a range of different projects and codebases, and making CSS work at scale is hard. Agreed principles, approaches, and patterns mean we can do better work faster. That’s what

244 lines (185 loc) 5.13 kB
linters: BangFormat: enabled: true space_before_bang: true space_after_bang: false BemDepth: enabled: false max_elements: 1 BorderZero: enabled: true convention: zero # or `none` ChainedClasses: enabled: true ColorKeyword: enabled: true ColorVariable: enabled: false Comment: enabled: false style: silent DebugStatement: enabled: true DeclarationOrder: enabled: true DisableLinterReason: enabled: false DuplicateProperty: enabled: true ElsePlacement: enabled: true style: same_line # or 'new_line' EmptyLineBetweenBlocks: enabled: true ignore_single_line_blocks: true EmptyRule: enabled: true ExtendDirective: enabled: true FinalNewline: enabled: true present: true HexLength: enabled: false style: short # or 'long' HexNotation: enabled: true style: lowercase # or 'uppercase' HexValidation: enabled: true IdSelector: enabled: true ImportantRule: enabled: false ImportPath: enabled: true leading_underscore: true filename_extension: false Indentation: enabled: true allow_non_nested_indentation: false character: space # or 'tab' width: 2 LeadingZero: enabled: true style: exclude_zero # or 'include_zero' MergeableSelector: enabled: true force_nesting: false NameFormat: enabled: false allow_leading_underscore: true convention: hyphenated_lowercase # or 'camel_case', or 'snake_case', or a regex pattern NestingDepth: enabled: true max_depth: 1 ignore_parent_selectors: false PlaceholderInExtend: enabled: true PropertyCount: enabled: false include_nested: false max_properties: 10 PropertySortOrder: enabled: true ignore_unspecified: false min_properties: 2 separate_groups: false PropertySpelling: enabled: true extra_properties: [] disabled_properties: [] PropertyUnits: enabled: true global: [ 'ch', 'em', 'ex', 'rem', # Font-relative lengths 'cm', 'in', 'mm', 'pc', 'pt', 'px', 'q', # Absolute lengths 'vh', 'vw', 'vmin', 'vmax', # Viewport-percentage lengths 'deg', 'grad', 'rad', 'turn', # Angle 'ms', 's', # Duration 'Hz', 'kHz', # Frequency 'dpi', 'dpcm', 'dppx', # Resolution '%'] # Other properties: {} PseudoElement: enabled: true QualifyingElement: enabled: true allow_element_with_attribute: false allow_element_with_class: false allow_element_with_id: false SelectorDepth: enabled: true max_depth: 3 SelectorFormat: enabled: true class_convention_explanation: 'should either be written in UpperCamelCase, or begin with `is-`, `has-`, `u-`, or `l-`' ignored_types: element class_convention: | (?x) # Prevent new lines from being converted to spaces in our regex. ^ [A-Z][a-z]+([A-Z][a-z]+)* # At beginning, we can only have a UpperCamelCase string (-{1,2}|\.|\s){0,1} # followed by one or two dashes, or a dot, or a single space ([a-z]+[A-Z]?-{0,2})* # then any number of camelCase strings separated by one or two dashes. $| ^(is|has|u|l)\-([a-zA-Z]+-{0,2})*$ # Alternatively, we start with state classes like `is`, `has`, `u`, or `l`, # followed by any number of camelCase strings separated by one or two dashes. Shorthand: enabled: true allowed_shorthands: [1, 2, 3] SingleLinePerProperty: enabled: true allow_single_line_rule_sets: true SingleLinePerSelector: enabled: true SpaceAfterComma: enabled: true style: one_space # or 'no_space', or 'at_least_one_space' SpaceAfterPropertyColon: enabled: true style: one_space # or 'no_space', or 'at_least_one_space', or 'aligned' SpaceAfterPropertyName: enabled: true SpaceAfterVariableName: enabled: true SpaceAroundOperator: enabled: true style: one_space # or 'at_least_one_space', or 'no_space' SpaceBeforeBrace: enabled: true style: space # or 'new_line' allow_single_line_padding: false SpaceBetweenParens: enabled: true spaces: 0 StringQuotes: enabled: false style: double_quotes # or single_quotes TrailingSemicolon: enabled: true TrailingWhitespace: enabled: true TrailingZero: enabled: true TransitionAll: enabled: true UnnecessaryMantissa: enabled: true UnnecessaryParentReference: enabled: true UrlFormat: enabled: false UrlQuotes: enabled: true VariableForProperty: enabled: true properties: [] VendorPrefix: enabled: false identifier_list: base additional_identifiers: [] excluded_identifiers: [] ZeroUnit: enabled: true Compass::*: enabled: false