Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b5d02128f5 | ||
|
|
aa8738c749 | ||
|
|
0282ba6695 | ||
|
|
0c4be053dc | ||
|
|
319f97d468 | ||
|
|
7bbdb230a8 | ||
|
|
dd23f453e5 | ||
|
|
8a8551b821 | ||
|
|
1ce3d3121f | ||
|
|
3b9128bf1b | ||
|
|
a2e8955488 | ||
|
|
759d8424b9 | ||
|
|
d365120f67 | ||
|
|
2ababdc027 | ||
|
|
f60eac82e3 | ||
|
|
e68f8a1aa3 | ||
|
|
0bb9a27140 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -3,3 +3,4 @@
|
|||||||
/src/sass/_custom-variables.scss
|
/src/sass/_custom-variables.scss
|
||||||
/.sublime-grunt.cache
|
/.sublime-grunt.cache
|
||||||
/images/logo
|
/images/logo
|
||||||
|
/.stylelintcache
|
||||||
|
|||||||
178
.scss-lint.yml
178
.scss-lint.yml
@@ -1,178 +0,0 @@
|
|||||||
scss_files: "src/sass/**/*.scss"
|
|
||||||
|
|
||||||
exclude: 'src/sass/lib/**'
|
|
||||||
|
|
||||||
linters:
|
|
||||||
BangFormat:
|
|
||||||
enabled: true
|
|
||||||
space_before_bang: true
|
|
||||||
space_after_bang: false
|
|
||||||
|
|
||||||
BorderZero:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
ColorKeyword:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
ColorVariable:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
Comment:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
DebugStatement:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
DeclarationOrder:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
DuplicateProperty:
|
|
||||||
enabled: true
|
|
||||||
ignore_consecutive:
|
|
||||||
- word-break
|
|
||||||
|
|
||||||
ElsePlacement:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
EmptyLineBetweenBlocks:
|
|
||||||
enabled: true
|
|
||||||
ignore_single_line_blocks: true
|
|
||||||
|
|
||||||
EmptyRule:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
FinalNewline:
|
|
||||||
enabled: true
|
|
||||||
present: true
|
|
||||||
|
|
||||||
HexLength:
|
|
||||||
enabled: true
|
|
||||||
style: short
|
|
||||||
|
|
||||||
HexNotation:
|
|
||||||
enabled: true
|
|
||||||
style: lowercase
|
|
||||||
|
|
||||||
HexValidation:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
IdSelector:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
ImportantRule:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
ImportPath:
|
|
||||||
enabled: true
|
|
||||||
leading_underscore: false
|
|
||||||
filename_extension: false
|
|
||||||
|
|
||||||
Indentation:
|
|
||||||
enabled: true
|
|
||||||
character: space
|
|
||||||
width: 2
|
|
||||||
|
|
||||||
LeadingZero:
|
|
||||||
enabled: true
|
|
||||||
style: exclude_zero
|
|
||||||
|
|
||||||
MergeableSelector:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
NestingDepth:
|
|
||||||
enabled: true
|
|
||||||
max_depth: 7
|
|
||||||
|
|
||||||
PlaceholderInExtend:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
PropertySortOrder:
|
|
||||||
enabled: true
|
|
||||||
order: smacss
|
|
||||||
ignore_unspecified: true
|
|
||||||
|
|
||||||
PropertySpelling:
|
|
||||||
enabled: true
|
|
||||||
extra_properties: []
|
|
||||||
|
|
||||||
PseudoElement:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
QualifyingElement:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
SelectorDepth:
|
|
||||||
enabled: true
|
|
||||||
max_depth: 5
|
|
||||||
|
|
||||||
SelectorFormat:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
Shorthand:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
SingleLinePerProperty:
|
|
||||||
enabled: true
|
|
||||||
allow_single_line_rule_sets: true
|
|
||||||
|
|
||||||
SingleLinePerSelector:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
SpaceAfterComma:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
SpaceAfterPropertyColon:
|
|
||||||
enabled: true
|
|
||||||
style: at_least_one_space
|
|
||||||
|
|
||||||
SpaceAfterPropertyName:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
SpaceAfterVariableName:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
SpaceAroundOperator:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
SpaceBeforeBrace:
|
|
||||||
enabled: true
|
|
||||||
style: space
|
|
||||||
allow_single_line_padding: true
|
|
||||||
|
|
||||||
SpaceBetweenParens:
|
|
||||||
enabled: true
|
|
||||||
spaces: 0
|
|
||||||
|
|
||||||
StringQuotes:
|
|
||||||
enabled: true
|
|
||||||
style: double_quotes
|
|
||||||
|
|
||||||
TrailingSemicolon:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
TrailingWhitespace:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
TrailingZero:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
TransitionAll:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
UnnecessaryMantissa:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
UnnecessaryParentReference:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
UrlFormat:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
UrlQuotes:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
VendorPrefix:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
ZeroUnit:
|
|
||||||
enabled: true
|
|
||||||
498
.stylelintrc.js
Normal file
498
.stylelintrc.js
Normal file
@@ -0,0 +1,498 @@
|
|||||||
|
module.exports = {
|
||||||
|
'ignoreFiles': [
|
||||||
|
'src/sass/lib/**'
|
||||||
|
],
|
||||||
|
'plugins': [
|
||||||
|
'stylelint-order',
|
||||||
|
'stylelint-scss'
|
||||||
|
],
|
||||||
|
'rules': {
|
||||||
|
'at-rule-name-case': 'lower',
|
||||||
|
'at-rule-name-space-after': 'always-single-line',
|
||||||
|
'at-rule-no-vendor-prefix': true,
|
||||||
|
'at-rule-semicolon-newline-after': 'always',
|
||||||
|
'at-rule-semicolon-space-before': 'never',
|
||||||
|
'block-closing-brace-empty-line-before': 'never',
|
||||||
|
'block-closing-brace-newline-after': [
|
||||||
|
'always',
|
||||||
|
{
|
||||||
|
'ignoreAtRules': [
|
||||||
|
'if',
|
||||||
|
'else'
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
'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-multi-line',
|
||||||
|
'color-hex-case': 'lower',
|
||||||
|
'color-hex-length': 'short',
|
||||||
|
'color-no-invalid-hex': true,
|
||||||
|
'comment-no-empty': true,
|
||||||
|
'comment-whitespace-inside': 'always',
|
||||||
|
'custom-property-pattern': /^[a-z][a-z0-9]*(-[a-z0-9]+)*$/,
|
||||||
|
'declaration-bang-space-after': 'never',
|
||||||
|
'declaration-bang-space-before': 'always',
|
||||||
|
'declaration-block-no-duplicate-properties': [
|
||||||
|
true,
|
||||||
|
{
|
||||||
|
'ignoreProperties': [
|
||||||
|
'word-break',
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
'declaration-block-no-redundant-longhand-properties': true,
|
||||||
|
'declaration-block-no-shorthand-property-overrides': true,
|
||||||
|
'declaration-block-semicolon-newline-after': 'always-multi-line',
|
||||||
|
'declaration-block-semicolon-space-after': 'always-single-line',
|
||||||
|
'declaration-block-semicolon-space-before': 'never',
|
||||||
|
'declaration-block-trailing-semicolon': 'always',
|
||||||
|
'declaration-colon-space-after': 'always-single-line',
|
||||||
|
'declaration-colon-space-before': 'never',
|
||||||
|
'declaration-no-important': true,
|
||||||
|
'font-family-no-duplicate-names': true,
|
||||||
|
'function-calc-no-unspaced-operator': true,
|
||||||
|
'function-comma-newline-after': 'always-multi-line',
|
||||||
|
'function-comma-newline-before': 'never-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': 1,
|
||||||
|
'function-name-case': 'lower',
|
||||||
|
'function-parentheses-newline-inside': 'always-multi-line',
|
||||||
|
'function-parentheses-space-inside': 'never-single-line',
|
||||||
|
'function-url-no-scheme-relative': true,
|
||||||
|
'function-url-quotes': 'always',
|
||||||
|
'function-whitespace-after': 'always',
|
||||||
|
'indentation': 2,
|
||||||
|
'keyframe-declaration-no-important': true,
|
||||||
|
'length-zero-no-unit': true,
|
||||||
|
'max-nesting-depth': 7,
|
||||||
|
'media-feature-colon-space-after': 'always',
|
||||||
|
'media-feature-colon-space-before': 'never',
|
||||||
|
'media-feature-name-case': 'lower',
|
||||||
|
'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-newline-before': 'never-multi-line',
|
||||||
|
'media-query-list-comma-space-after': 'always-single-line',
|
||||||
|
'media-query-list-comma-space-before': 'never',
|
||||||
|
'no-duplicate-at-import-rules': true,
|
||||||
|
'no-eol-whitespace': true,
|
||||||
|
'no-extra-semicolons': true,
|
||||||
|
'no-missing-end-of-source-newline': true,
|
||||||
|
'number-leading-zero': 'never',
|
||||||
|
'number-no-trailing-zeros': true,
|
||||||
|
'property-case': 'lower',
|
||||||
|
'property-no-unknown': true,
|
||||||
|
'property-no-vendor-prefix': true,
|
||||||
|
'selector-attribute-brackets-space-inside': 'never',
|
||||||
|
'selector-attribute-operator-space-after': 'never',
|
||||||
|
'selector-attribute-operator-space-before': 'never',
|
||||||
|
'selector-attribute-quotes': 'always',
|
||||||
|
'selector-combinator-space-after': 'always',
|
||||||
|
'selector-combinator-space-before': 'always',
|
||||||
|
'selector-descendant-combinator-no-non-space': true,
|
||||||
|
'selector-list-comma-newline-after': 'always',
|
||||||
|
'selector-list-comma-newline-before': 'never-multi-line',
|
||||||
|
'selector-list-comma-space-before': 'never',
|
||||||
|
'selector-max-compound-selectors': 5,
|
||||||
|
'selector-max-empty-lines': 0,
|
||||||
|
'selector-max-universal': 1,
|
||||||
|
'selector-no-qualifying-type': [
|
||||||
|
true,
|
||||||
|
{
|
||||||
|
'ignore': [
|
||||||
|
'attribute',
|
||||||
|
'class',
|
||||||
|
'id'
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
'selector-pseudo-class-case': 'lower',
|
||||||
|
'selector-pseudo-class-parentheses-space-inside': 'never',
|
||||||
|
'selector-pseudo-element-case': 'lower',
|
||||||
|
'selector-pseudo-element-colon-notation': 'double',
|
||||||
|
'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-before': 'never-multi-line',
|
||||||
|
'value-list-comma-space-after': 'always-single-line',
|
||||||
|
'value-list-comma-space-before': 'never',
|
||||||
|
'value-list-max-empty-lines': 1,
|
||||||
|
'value-no-vendor-prefix': true,
|
||||||
|
|
||||||
|
'order/order': [
|
||||||
|
[
|
||||||
|
'custom-properties',
|
||||||
|
'dollar-variables',
|
||||||
|
'declarations',
|
||||||
|
'rules'
|
||||||
|
]
|
||||||
|
],
|
||||||
|
'order/properties-order': [
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'content',
|
||||||
|
'quotes'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'display',
|
||||||
|
'visibility'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'position',
|
||||||
|
'z-index',
|
||||||
|
'top',
|
||||||
|
'right',
|
||||||
|
'bottom',
|
||||||
|
'left'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'box-sizing'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'grid',
|
||||||
|
'grid-area',
|
||||||
|
'grid-auto-columns',
|
||||||
|
'grid-auto-flow',
|
||||||
|
'grid-auto-rows',
|
||||||
|
'grid-column',
|
||||||
|
'grid-column-end',
|
||||||
|
'grid-column-gap',
|
||||||
|
'grid-column-start',
|
||||||
|
'grid-gap',
|
||||||
|
'grid-row',
|
||||||
|
'grid-row-end',
|
||||||
|
'grid-row-gap',
|
||||||
|
'grid-row-start',
|
||||||
|
'grid-template',
|
||||||
|
'grid-template-areas',
|
||||||
|
'grid-template-columns',
|
||||||
|
'grid-template-rows'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'flex',
|
||||||
|
'flex-basis',
|
||||||
|
'flex-direction',
|
||||||
|
'flex-flow',
|
||||||
|
'flex-grow',
|
||||||
|
'flex-shrink',
|
||||||
|
'flex-wrap',
|
||||||
|
'box-decoration-break',
|
||||||
|
'align-content',
|
||||||
|
'align-items',
|
||||||
|
'align-self',
|
||||||
|
'justify-content',
|
||||||
|
'order'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'width',
|
||||||
|
'min-width',
|
||||||
|
'max-width',
|
||||||
|
'height',
|
||||||
|
'min-height',
|
||||||
|
'max-height'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'margin',
|
||||||
|
'margin-top',
|
||||||
|
'margin-right',
|
||||||
|
'margin-bottom',
|
||||||
|
'margin-left'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'padding',
|
||||||
|
'padding-top',
|
||||||
|
'padding-right',
|
||||||
|
'padding-bottom',
|
||||||
|
'padding-left'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'float',
|
||||||
|
'clear'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'overflow',
|
||||||
|
'overflow-x',
|
||||||
|
'overflow-y'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'clip',
|
||||||
|
'zoom'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'columns',
|
||||||
|
'column-gap',
|
||||||
|
'column-fill',
|
||||||
|
'column-rule',
|
||||||
|
'column-span',
|
||||||
|
'column-count',
|
||||||
|
'column-width'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'table-layout',
|
||||||
|
'empty-cells',
|
||||||
|
'caption-side',
|
||||||
|
'border-spacing',
|
||||||
|
'border-collapse'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'list-style',
|
||||||
|
'list-style-position',
|
||||||
|
'list-style-type',
|
||||||
|
'list-style-image'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'transform',
|
||||||
|
'transform-origin',
|
||||||
|
'transform-style',
|
||||||
|
'backface-visibility',
|
||||||
|
'perspective',
|
||||||
|
'perspective-origin'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'transition',
|
||||||
|
'transition-property',
|
||||||
|
'transition-duration',
|
||||||
|
'transition-timing-function',
|
||||||
|
'transition-delay'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'animation',
|
||||||
|
'animation-name',
|
||||||
|
'animation-duration',
|
||||||
|
'animation-play-state',
|
||||||
|
'animation-timing-function',
|
||||||
|
'animation-delay',
|
||||||
|
'animation-iteration-count',
|
||||||
|
'animation-direction'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'border',
|
||||||
|
'border-top',
|
||||||
|
'border-right',
|
||||||
|
'border-bottom',
|
||||||
|
'border-left',
|
||||||
|
'border-width',
|
||||||
|
'border-top-width',
|
||||||
|
'border-right-width',
|
||||||
|
'border-bottom-width',
|
||||||
|
'border-left-width'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'border-style',
|
||||||
|
'border-top-style',
|
||||||
|
'border-right-style',
|
||||||
|
'border-bottom-style',
|
||||||
|
'border-left-style'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'border-radius',
|
||||||
|
'border-top-left-radius',
|
||||||
|
'border-top-right-radius',
|
||||||
|
'border-bottom-left-radius',
|
||||||
|
'border-bottom-right-radius'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'border-color',
|
||||||
|
'border-top-color',
|
||||||
|
'border-right-color',
|
||||||
|
'border-bottom-color',
|
||||||
|
'border-left-color'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'outline',
|
||||||
|
'outline-color',
|
||||||
|
'outline-offset',
|
||||||
|
'outline-style',
|
||||||
|
'outline-width'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'stroke-width',
|
||||||
|
'stroke-linecap',
|
||||||
|
'stroke-dasharray',
|
||||||
|
'stroke-dashoffset',
|
||||||
|
'stroke'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'opacity'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'background',
|
||||||
|
'background-color',
|
||||||
|
'background-image',
|
||||||
|
'background-repeat',
|
||||||
|
'background-position',
|
||||||
|
'background-size',
|
||||||
|
'box-shadow',
|
||||||
|
'fill'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'color'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'font',
|
||||||
|
'font-family',
|
||||||
|
'font-size',
|
||||||
|
'font-size-adjust',
|
||||||
|
'font-stretch',
|
||||||
|
'font-effect',
|
||||||
|
'font-style',
|
||||||
|
'font-variant',
|
||||||
|
'font-weight'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'font-emphasize',
|
||||||
|
'font-emphasize-position',
|
||||||
|
'font-emphasize-style'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'letter-spacing',
|
||||||
|
'line-height',
|
||||||
|
'word-spacing'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'text-align',
|
||||||
|
'text-align-last',
|
||||||
|
'text-decoration',
|
||||||
|
'text-indent',
|
||||||
|
'text-justify',
|
||||||
|
'text-overflow',
|
||||||
|
'text-overflow-ellipsis',
|
||||||
|
'text-overflow-mode',
|
||||||
|
'text-rendering',
|
||||||
|
'text-outline',
|
||||||
|
'text-shadow',
|
||||||
|
'text-transform',
|
||||||
|
'text-wrap',
|
||||||
|
'word-wrap',
|
||||||
|
'word-break'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'text-emphasis',
|
||||||
|
'text-emphasis-color',
|
||||||
|
'text-emphasis-style',
|
||||||
|
'text-emphasis-position'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'vertical-align',
|
||||||
|
'white-space',
|
||||||
|
'hyphens'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'src'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'properties': [
|
||||||
|
'tab-size',
|
||||||
|
'counter-reset',
|
||||||
|
'counter-increment',
|
||||||
|
'resize',
|
||||||
|
'cursor',
|
||||||
|
'pointer-events',
|
||||||
|
'speak',
|
||||||
|
'user-select',
|
||||||
|
'nav-index',
|
||||||
|
'nav-up',
|
||||||
|
'nav-right',
|
||||||
|
'nav-down',
|
||||||
|
'nav-left'
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
'scss/at-else-closing-brace-newline-after': 'always-last-in-chain',
|
||||||
|
'scss/at-else-closing-brace-space-after': 'always-intermediate',
|
||||||
|
'scss/at-else-empty-line-before': 'never',
|
||||||
|
'scss/at-else-if-parentheses-space-before': 'always',
|
||||||
|
'scss/at-function-parentheses-space-before': 'never',
|
||||||
|
'scss/at-function-pattern': /^[a-z][a-z0-9]*(-[a-z0-9]+)*$/,
|
||||||
|
'scss/at-if-closing-brace-newline-after': 'always-last-in-chain',
|
||||||
|
'scss/at-if-closing-brace-space-after': 'always-intermediate',
|
||||||
|
'scss/at-import-no-partial-leading-underscore': true,
|
||||||
|
'scss/at-mixin-argumentless-call-parentheses': 'never',
|
||||||
|
'scss/at-mixin-parentheses-space-before': 'never',
|
||||||
|
'scss/at-mixin-pattern': /^[a-z][a-z0-9]*(-[a-z0-9]+)*$/,
|
||||||
|
'scss/declaration-nested-properties-no-divided-groups': true,
|
||||||
|
'scss/dollar-variable-colon-space-before': 'never',
|
||||||
|
'scss/dollar-variable-pattern': /^[a-z][a-z0-9]*(-[a-z0-9]+)*$/,
|
||||||
|
'scss/operator-no-unspaced': true,
|
||||||
|
'scss/percent-placeholder-pattern': /^[a-z][a-z0-9]*(-[a-z0-9]+)*$/,
|
||||||
|
'scss/selector-no-redundant-nesting-selector': true,
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -1,15 +1,11 @@
|
|||||||
dist: trusty
|
dist: xenial
|
||||||
language: node_js
|
language: node_js
|
||||||
node_js:
|
node_js:
|
||||||
- 8
|
- 10
|
||||||
cache:
|
cache:
|
||||||
directories:
|
directories:
|
||||||
- node_modules
|
- node_modules
|
||||||
before_install:
|
|
||||||
- rvm install 2.2
|
|
||||||
- rvm use 2.2 --fuzzy
|
|
||||||
install:
|
install:
|
||||||
- gem install scss_lint
|
|
||||||
- npm install
|
- npm install
|
||||||
script:
|
script:
|
||||||
- npm run lint --silent
|
- npm run lint --silent
|
||||||
|
|||||||
17
README.md
17
README.md
@@ -56,6 +56,23 @@ If you need to customize styles for [Redmine Backlogs][redmine_backlogs] remembe
|
|||||||
|
|
||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
|
v2.4.0 (2019-06-02):
|
||||||
|
|
||||||
|
* Synchronized most application styles with Redmine's default theme.
|
||||||
|
* Fixed #115: color overdue date in issue lists.
|
||||||
|
|
||||||
|
v2.3.1 (2019-05-09):
|
||||||
|
|
||||||
|
* Fixed #112: improved highlight contrast in text diffs.
|
||||||
|
|
||||||
|
v2.3.0 (2019-05-09):
|
||||||
|
|
||||||
|
* Fixed #107: nested lists in the sidebar via [Additionals](https://www.redmine.org/plugins/additionals) plugin.
|
||||||
|
|
||||||
|
v2.2.0 (2019-04-09):
|
||||||
|
|
||||||
|
* Fixed #101, #102: tooltip positioning
|
||||||
|
|
||||||
v2.1.1 (2019-03-23):
|
v2.1.1 (2019-03-23):
|
||||||
|
|
||||||
* Fixed sidebar toggler style when fixed layout is enabled
|
* Fixed sidebar toggler style when fixed layout is enabled
|
||||||
|
|||||||
2826
package-lock.json
generated
2826
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -21,7 +21,7 @@
|
|||||||
"build": "grunt",
|
"build": "grunt",
|
||||||
"watch": "grunt watch",
|
"watch": "grunt watch",
|
||||||
"lint:js": "standard",
|
"lint:js": "standard",
|
||||||
"lint:sass": "scss-lint",
|
"lint:sass": "stylelint src/sass/**/*.scss",
|
||||||
"lint": "npm run -S lint:js && npm run -S lint:sass"
|
"lint": "npm run -S lint:js && npm run -S lint:sass"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -35,7 +35,10 @@
|
|||||||
"sass-inline-svg": "^1.2.0"
|
"sass-inline-svg": "^1.2.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"standard": "^12.0.1"
|
"standard": "^12.0.1",
|
||||||
|
"stylelint": "^10.0.1",
|
||||||
|
"stylelint-order": "^3.0.0",
|
||||||
|
"stylelint-scss": "^3.6.1"
|
||||||
},
|
},
|
||||||
"standard": {
|
"standard": {
|
||||||
"globals": [
|
"globals": [
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
.qtip{position:absolute;top:-31000px;left:-31000px;width:auto;max-width:500px;outline:none}.ui-tooltip-content{-webkit-box-shadow:0 5px 8px -2px rgba(0,0,0,0.25),0 1px 2px rgba(0,0,0,0.3);box-shadow:0 5px 8px -2px rgba(0,0,0,0.25),0 1px 2px rgba(0,0,0,0.3);position:relative;padding:10px;overflow:hidden;border:1px solid #d1d3e0;background-color:#fff;color:#3e425a;font-size:.92em;text-align:left;word-wrap:break-word}.ui-tooltip-tip{border-color:#d1d3e0;background-color:#fff}.ui-tooltip-tip{position:absolute;z-index:10;margin:0 auto;overflow:hidden;border:0 none;background:transparent}
|
.qtip{position:absolute;top:-31000px;left:-31000px;width:auto;max-width:500px;outline:none}.ui-tooltip-content{-webkit-box-shadow:0 5px 8px -2px rgba(0,0,0,0.25),0 1px 2px rgba(0,0,0,0.3);box-shadow:0 5px 8px -2px rgba(0,0,0,0.25),0 1px 2px rgba(0,0,0,0.3);position:relative;padding:10px;overflow:hidden;border:1px solid #d1d3e0;background-color:#fff;color:#3e425a;font-size:.92em;text-align:left;word-wrap:break-word}.ui-tooltip-tip{position:absolute;z-index:10;margin:0 auto;overflow:hidden;border:0 none;border-color:#d1d3e0;background:transparent;background-color:#fff}
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -2,6 +2,7 @@
|
|||||||
// Variables
|
// Variables
|
||||||
// --------------------------------------------------
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// stylelint-disable indentation
|
||||||
|
|
||||||
//== Some key attributes
|
//== Some key attributes
|
||||||
//
|
//
|
||||||
@@ -645,6 +646,17 @@ $bubble-padding-vertical: 8px !default;
|
|||||||
$bubble-padding-horizontal: 15px !default;
|
$bubble-padding-horizontal: 15px !default;
|
||||||
|
|
||||||
|
|
||||||
|
//== Badges
|
||||||
|
//
|
||||||
|
|
||||||
|
$badge-space: 2px !default;
|
||||||
|
$badge-padding-v: 0 !default;
|
||||||
|
$badge-padding-h: 5px !default;
|
||||||
|
$badge-border-radius: $border-radius-base !default;
|
||||||
|
$badge-font-size: $font-size-small !default;
|
||||||
|
$badge-font-weight: $font-weight-bold !default;
|
||||||
|
|
||||||
|
|
||||||
//== Media queries breakpoints
|
//== Media queries breakpoints
|
||||||
//
|
//
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
@import "components/base";
|
@import "components/base";
|
||||||
|
@import "components/badges";
|
||||||
@import "components/buttons";
|
@import "components/buttons";
|
||||||
@import "components/forms";
|
@import "components/forms";
|
||||||
@import "components/tabs";
|
@import "components/tabs";
|
||||||
|
|||||||
54
src/sass/components/_badges.scss
Normal file
54
src/sass/components/_badges.scss
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
tr.group .count,
|
||||||
|
span.private,
|
||||||
|
.badge {
|
||||||
|
display: inline-block;
|
||||||
|
position: relative;
|
||||||
|
top: -1px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
min-width: 1em;
|
||||||
|
margin-right: $badge-space;
|
||||||
|
margin-left: $badge-space;
|
||||||
|
padding: $badge-padding-v $badge-padding-h;
|
||||||
|
border: 1px solid;
|
||||||
|
border-radius: $badge-border-radius;
|
||||||
|
font-size: $badge-font-size;
|
||||||
|
font-weight: $badge-font-weight;
|
||||||
|
text-align: center;
|
||||||
|
text-decoration: none;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.private,
|
||||||
|
.badge-private {
|
||||||
|
padding: ($badge-padding-v + 1px) ($badge-padding-h + 1px);
|
||||||
|
border: 0;
|
||||||
|
background: $brand-warning;
|
||||||
|
color: $brand-text;
|
||||||
|
|
||||||
|
h3 & {
|
||||||
|
font-size: $font-size-small-px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
tr.group .count,
|
||||||
|
.badge-count {
|
||||||
|
padding: ($badge-padding-v + 1px) ($badge-padding-h + 1px);
|
||||||
|
border: 0;
|
||||||
|
background: $brand-primary;
|
||||||
|
color: $brand-text;
|
||||||
|
}
|
||||||
|
|
||||||
|
.badge-status-open {
|
||||||
|
border-color: $blue;
|
||||||
|
color: $blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
.badge-status-locked {
|
||||||
|
border-color: $gray-600;
|
||||||
|
color: $gray-600;
|
||||||
|
}
|
||||||
|
|
||||||
|
.badge-status-closed {
|
||||||
|
border-color: $green;
|
||||||
|
color: $green;
|
||||||
|
}
|
||||||
@@ -106,12 +106,17 @@ table {
|
|||||||
td {
|
td {
|
||||||
padding: $table-condensed-cell-padding $table-cell-padding;
|
padding: $table-condensed-cell-padding $table-cell-padding;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ul,
|
ul,
|
||||||
ol {
|
ol {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
margin-bottom: ($line-height-computed / 2);
|
margin-bottom: ($line-height-computed / 2);
|
||||||
|
padding-left: 1.5em;
|
||||||
|
|
||||||
ul,
|
ul,
|
||||||
ol {
|
ol {
|
||||||
@@ -159,11 +164,11 @@ blockquote {
|
|||||||
padding: floor($line-height-computed / 4) $padding-large-horizontal;
|
padding: floor($line-height-computed / 4) $padding-large-horizontal;
|
||||||
border-left: 4px solid $blockquote-border-color;
|
border-left: 4px solid $blockquote-border-color;
|
||||||
|
|
||||||
>:first-child {
|
> :first-child {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
>:last-child {
|
> :last-child {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,7 +9,8 @@ button {
|
|||||||
@include button-size($btn-padding-vertical, $btn-padding-horizontal, $font-size-base, $line-height-base, $border-radius-base);
|
@include button-size($btn-padding-vertical, $btn-padding-horizontal, $font-size-base, $line-height-base, $border-radius-base);
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
transition: border-color $transition-time ease-in-out,
|
transition:
|
||||||
|
border-color $transition-time ease-in-out,
|
||||||
background-color $transition-time ease-in-out,
|
background-color $transition-time ease-in-out,
|
||||||
box-shadow $transition-time ease-in-out;
|
box-shadow $transition-time ease-in-out;
|
||||||
border: 1px solid;
|
border: 1px solid;
|
||||||
@@ -19,7 +20,7 @@ button {
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
@include button-variant($btn-primary-color, $btn-primary-bg, $btn-primary-border); // scss-lint:disable DeclarationOrder
|
@include button-variant($btn-primary-color, $btn-primary-bg, $btn-primary-border);
|
||||||
|
|
||||||
&:hover,
|
&:hover,
|
||||||
&:focus {
|
&:focus {
|
||||||
@@ -99,7 +100,8 @@ p.buttons,
|
|||||||
margin-right: 1px;
|
margin-right: 1px;
|
||||||
margin-left: 1px;
|
margin-left: 1px;
|
||||||
padding: $btn-padding-vertical $btn-padding-horizontal-small;
|
padding: $btn-padding-vertical $btn-padding-horizontal-small;
|
||||||
transition: border-color $transition-time ease-in-out,
|
transition:
|
||||||
|
border-color $transition-time ease-in-out,
|
||||||
background-color $transition-time ease-in-out,
|
background-color $transition-time ease-in-out,
|
||||||
color $transition-time ease-in-out;
|
color $transition-time ease-in-out;
|
||||||
border: 1px solid;
|
border: 1px solid;
|
||||||
@@ -181,7 +183,7 @@ p.buttons {
|
|||||||
|
|
||||||
.query-columns {
|
.query-columns {
|
||||||
select {
|
select {
|
||||||
width: auto !important; // scss-lint:disable ImportantRule
|
width: auto !important; // stylelint-disable-line declaration-no-important
|
||||||
min-width: 130px;
|
min-width: 130px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -211,7 +213,7 @@ p.buttons {
|
|||||||
margin-bottom: 4px;
|
margin-bottom: 4px;
|
||||||
padding-right: 1px;
|
padding-right: 1px;
|
||||||
padding-left: 1px;
|
padding-left: 1px;
|
||||||
@include button-variant($btn-default-color, $btn-default-bg, $btn-default-border); // scss-lint:disable DeclarationOrder
|
@include button-variant($btn-default-color, $btn-default-bg, $btn-default-border);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -235,7 +237,7 @@ a[data-expands],
|
|||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
@include button-variant($btn-default-color, $btn-default-bg, $btn-default-border); // scss-lint:disable DeclarationOrder
|
@include button-variant($btn-default-color, $btn-default-bg, $btn-default-border);
|
||||||
}
|
}
|
||||||
|
|
||||||
a[data-expands] {
|
a[data-expands] {
|
||||||
|
|||||||
@@ -45,6 +45,10 @@ table.cal {
|
|||||||
color: $gray-600;
|
color: $gray-600;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.nwday {
|
||||||
|
background: $table-bg-accent;
|
||||||
|
}
|
||||||
|
|
||||||
&.today {
|
&.today {
|
||||||
background: $highlight-bg;
|
background: $highlight-bg;
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.debug {
|
.debug {
|
||||||
// scss-lint:disable ImportantRule
|
// stylelint-disable declaration-no-important
|
||||||
background: #00f !important;
|
background: #00f !important;
|
||||||
color: #fff !important;
|
color: #fff !important;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,11 +4,13 @@
|
|||||||
grid-template-rows: auto 1fr;
|
grid-template-rows: auto 1fr;
|
||||||
|
|
||||||
@if $sidebar-position == "left" {
|
@if $sidebar-position == "left" {
|
||||||
grid-template-areas: "sidebar content"
|
grid-template-areas:
|
||||||
|
"sidebar content"
|
||||||
"footer footer";
|
"footer footer";
|
||||||
grid-template-columns: auto 1fr;
|
grid-template-columns: auto 1fr;
|
||||||
} @else {
|
} @else {
|
||||||
grid-template-areas: "content sidebar"
|
grid-template-areas:
|
||||||
|
"content sidebar"
|
||||||
"footer footer";
|
"footer footer";
|
||||||
grid-template-columns: 1fr auto;
|
grid-template-columns: 1fr auto;
|
||||||
}
|
}
|
||||||
@@ -158,6 +160,36 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.pages-hierarchy {
|
||||||
|
.pages-hierarchy {
|
||||||
|
margin-left: $sidebar-padding-horizontal + 3px;
|
||||||
|
border-left: 2px solid $gray-400;
|
||||||
|
|
||||||
|
@if $sidebar-position == "right" {
|
||||||
|
margin-left: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
> a:not(.icon-only) {
|
||||||
|
padding-right: $sidebar-padding-horizontal / 2;
|
||||||
|
padding-left: $sidebar-padding-horizontal / 2;
|
||||||
|
|
||||||
|
@if $sidebar-position == "right" {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.pages-hierarchy {
|
||||||
|
margin-left: $sidebar-padding-horizontal / 2 + 3px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@if $sidebar-position == "left" {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Special treatment for anchor tags directly under sidebar tag
|
// Special treatment for anchor tags directly under sidebar tag
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
.context-menu-selection {
|
.context-menu-selection {
|
||||||
&,
|
&,
|
||||||
> td {
|
> td {
|
||||||
background-color: $brand-primary !important; // scss-lint:disable ImportantRule
|
background-color: $brand-primary !important; // stylelint-disable-line declaration-no-important
|
||||||
color: $brand-text !important; // scss-lint:disable ImportantRule
|
color: $brand-text !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
> ul,
|
> ul,
|
||||||
> ul > li > ul {
|
> ul > li > ul {
|
||||||
@include nice-shadow(2);
|
@include nice-shadow(2);
|
||||||
border: 0 none !important; // scss-lint:disable ImportantRule
|
border: 0 none !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
|
|
||||||
ul {
|
ul {
|
||||||
|
|||||||
@@ -55,10 +55,11 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
> a,
|
> * {
|
||||||
> span {
|
|
||||||
display: block;
|
display: block;
|
||||||
padding: $btn-padding-vertical $btn-padding-horizontal-small;
|
margin: 1px;
|
||||||
|
padding: ($btn-padding-vertical - 1px) ($btn-padding-horizontal-small - 1px);
|
||||||
|
border-radius: $border-radius-base - 1px;
|
||||||
|
|
||||||
&.icon {
|
&.icon {
|
||||||
padding-left: 20px + $btn-padding-horizontal-small;
|
padding-left: 20px + $btn-padding-horizontal-small;
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ a.collapsible.collapsed,
|
|||||||
transition: max-height $collapsible-animation-time ease-out;
|
transition: max-height $collapsible-animation-time ease-out;
|
||||||
|
|
||||||
> div {
|
> div {
|
||||||
display: block !important; // scss-lint:disable ImportantRule
|
display: block !important; // stylelint-disable-line declaration-no-important
|
||||||
visibility: visible;
|
visibility: visible;
|
||||||
transition: visibility 0s 0s, opacity $collapsible-animation-time;
|
transition: visibility 0s 0s, opacity $collapsible-animation-time;
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
@@ -136,7 +136,7 @@ a.collapsible.collapsed,
|
|||||||
}
|
}
|
||||||
|
|
||||||
&:last-child,
|
&:last-child,
|
||||||
>:last-child {
|
> :last-child {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -283,7 +283,7 @@ p.subtitle {
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.ui-sortable-placeholder {
|
&.ui-sortable-placeholder {
|
||||||
visibility: visible !important; // scss-lint:disable ImportantRule
|
visibility: visible !important; // stylelint-disable-line declaration-no-important
|
||||||
outline: 1px dashed $highlight-border;
|
outline: 1px dashed $highlight-border;
|
||||||
background: $highlight-bg;
|
background: $highlight-bg;
|
||||||
}
|
}
|
||||||
@@ -563,12 +563,22 @@ ul.projects {
|
|||||||
//
|
//
|
||||||
|
|
||||||
div#roadmap {
|
div#roadmap {
|
||||||
|
article {
|
||||||
|
margin-bottom: $line-height-computed;
|
||||||
|
}
|
||||||
|
|
||||||
.related-issues {
|
.related-issues {
|
||||||
margin-bottom: $line-height-computed;
|
margin-bottom: $line-height-computed;
|
||||||
|
|
||||||
td.checkbox {
|
td.checkbox {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
td.assigned_to {
|
||||||
|
width: 1px;
|
||||||
|
padding-right: 0;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
table.progress {
|
table.progress {
|
||||||
@@ -582,6 +592,12 @@ div#roadmap {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
h2,
|
||||||
|
h3 {
|
||||||
|
display: inline;
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.wiki {
|
.wiki {
|
||||||
h1 {
|
h1 {
|
||||||
&:first-child {
|
&:first-child {
|
||||||
@@ -920,6 +936,16 @@ div.table-list.boards {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.text-diff {
|
||||||
|
.diff_out {
|
||||||
|
background: $diff-out-bg;
|
||||||
|
}
|
||||||
|
|
||||||
|
.diff_in {
|
||||||
|
background: $diff-in-bg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//== Repository view
|
//== Repository view
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -23,21 +23,21 @@
|
|||||||
line-height: $line-height-computed;
|
line-height: $line-height-computed;
|
||||||
}
|
}
|
||||||
|
|
||||||
>:last-child {
|
> :last-child {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin flash($color, $background, $border, $link, $icon) {
|
@mixin flash($color, $background, $border, $link, $icon) {
|
||||||
color: $color;
|
|
||||||
background-color: $background;
|
|
||||||
border-color: $border;
|
border-color: $border;
|
||||||
|
background-color: $background;
|
||||||
|
color: $color;
|
||||||
|
|
||||||
@if $icon == "true" {
|
@if $icon == "true" {
|
||||||
$icon: $fa-var-check;
|
$icon: $fa-var-check;
|
||||||
} @elseif $icon == "warning" {
|
} @else if $icon == "warning" {
|
||||||
$icon: $fa-var-warning;
|
$icon: $fa-var-warning;
|
||||||
} @elseif $icon == "exclamation" {
|
} @else if $icon == "exclamation" {
|
||||||
$icon: $fa-var-exclamation-circle;
|
$icon: $fa-var-exclamation-circle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,6 +26,11 @@ form {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.add-filter label,
|
||||||
|
.filter label {
|
||||||
|
line-height: $input-height-base;
|
||||||
|
}
|
||||||
|
|
||||||
.contextual > & {
|
.contextual > & {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
line-height: $input-height-base;
|
line-height: $input-height-base;
|
||||||
@@ -76,7 +81,8 @@ input[type="password"] {
|
|||||||
@extend %form-field;
|
@extend %form-field;
|
||||||
@include form-control-focus;
|
@include form-control-focus;
|
||||||
@include placeholder;
|
@include placeholder;
|
||||||
transition: border-color $transition-time ease-in-out,
|
transition:
|
||||||
|
border-color $transition-time ease-in-out,
|
||||||
box-shadow $transition-time ease-in-out;
|
box-shadow $transition-time ease-in-out;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
|
|
||||||
@@ -101,7 +107,7 @@ textarea {
|
|||||||
}
|
}
|
||||||
|
|
||||||
input[type="search"] {
|
input[type="search"] {
|
||||||
-webkit-appearance: none;
|
-webkit-appearance: none; // stylelint-disable-line property-no-vendor-prefix
|
||||||
}
|
}
|
||||||
|
|
||||||
input[type="radio"],
|
input[type="radio"],
|
||||||
@@ -159,7 +165,7 @@ select {
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.bool_cf {
|
&.bool_cf {
|
||||||
width: auto !important; // scss-lint:disable ImportantRule
|
width: auto !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,7 +176,7 @@ select {
|
|||||||
|
|
||||||
// Mozilla Firefox
|
// Mozilla Firefox
|
||||||
|
|
||||||
@-moz-document url-prefix() {
|
@-moz-document url-prefix("") {
|
||||||
select {
|
select {
|
||||||
&[multiple] {
|
&[multiple] {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
@@ -380,7 +386,7 @@ label.block {
|
|||||||
//== Hack: align description edit icon with label
|
//== Hack: align description edit icon with label
|
||||||
//
|
//
|
||||||
|
|
||||||
label[for=issue_description] + a {
|
label[for="issue_description"] + a {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-top: $input-padding-vertical + 1px;
|
margin-top: $input-padding-vertical + 1px;
|
||||||
|
|
||||||
@@ -558,7 +564,7 @@ label[for="closed"] {
|
|||||||
|
|
||||||
#issue_is_private_wrap,
|
#issue_is_private_wrap,
|
||||||
#all_attributes > p[style] {
|
#all_attributes > p[style] {
|
||||||
margin-right: 0 !important; // scss-lint:disable ImportantRule
|
margin-right: 0 !important; // stylelint-disable-line declaration-no-important
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
float: right;
|
float: right;
|
||||||
@@ -569,7 +575,7 @@ label[for="closed"] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
label {
|
label {
|
||||||
display: inline-block !important; // scss-lint:disable ImportantRule
|
display: inline-block !important; // stylelint-disable-line declaration-no-important
|
||||||
margin-right: 0;
|
margin-right: 0;
|
||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
}
|
}
|
||||||
@@ -707,6 +713,13 @@ fieldset#filters {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.query_sort_criteria_count {
|
||||||
|
display: inline-block;
|
||||||
|
min-width: 1em;
|
||||||
|
margin-bottom: $line-height-computed / 4;
|
||||||
|
line-height: $input-height-base;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//== Reset label style for trackers selector in custom field editor
|
//== Reset label style for trackers selector in custom field editor
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -2,25 +2,109 @@
|
|||||||
// Gantt chart
|
// Gantt chart
|
||||||
// --------------------------------------------------
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
div.gantt_content {
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.controller-gantts form + table,
|
||||||
|
table.gantt-table {
|
||||||
|
width: 100%;
|
||||||
|
border-collapse: collapse;
|
||||||
|
|
||||||
|
td {
|
||||||
|
padding: 0;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.gantt_hdr {
|
.gantt_hdr {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
height: 16px;
|
height: 16px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
border: 1px solid $gray-400;
|
border: 1px solid $gray-500;
|
||||||
border-left-width: 0;
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
||||||
|
&[style*="background"] {
|
||||||
|
background: $gray-200 !important; // stylelint-disable-line declaration-no-important
|
||||||
|
}
|
||||||
|
|
||||||
&.nwday {
|
&.nwday {
|
||||||
background-color: $gray-100;
|
background-color: $gray-200;
|
||||||
|
color: $gray-950;
|
||||||
|
}
|
||||||
|
|
||||||
|
#gantt_area & {
|
||||||
|
border-right-width: 1px;
|
||||||
|
border-left-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.gantt_subjects_container:not(.draw_selected_columns) &,
|
||||||
|
.last_gantt_selected_column & {
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.gantt_subjects_container .gantt_subjects {
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
.gantt_subjects_column {
|
||||||
|
.gantt_hdr {
|
||||||
|
border-left: 1px solid $gray-500 !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.gantt_subjects {
|
.gantt_subjects {
|
||||||
font-size: $font-size-small;
|
.issue-subject {
|
||||||
|
&:hover {
|
||||||
|
background-color: $table-bg-hover;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.icon-gravatar {
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.gantt_hdr_selected_column_name {
|
||||||
|
@include text-overflow;
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
width: 100%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
font-size: $font-size-small;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.gantt_selected_column {
|
||||||
|
width: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.gantt_selected_column .gantt_hdr,
|
||||||
|
.gantt_selected_column_container {
|
||||||
|
width: 60px - 1px;
|
||||||
|
border-left-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.gantt_subjects {
|
||||||
|
position: relative;
|
||||||
|
z-index: 1;
|
||||||
|
font-size: $font-size-small;
|
||||||
|
}
|
||||||
|
|
||||||
|
.gantt_selected_column_content {
|
||||||
|
div {
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding-right: $table-condensed-cell-padding;
|
||||||
|
padding-left: $table-condensed-cell-padding;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.gantt_subjects,
|
||||||
|
.gantt_selected_column_content {
|
||||||
div {
|
div {
|
||||||
@include text-overflow;
|
@include text-overflow;
|
||||||
|
width: 100%;
|
||||||
height: 16px;
|
height: 16px;
|
||||||
line-height: 16px;
|
line-height: 16px;
|
||||||
}
|
}
|
||||||
@@ -118,12 +202,20 @@
|
|||||||
.version-behind-schedule,
|
.version-behind-schedule,
|
||||||
.issue-behind-schedule {
|
.issue-behind-schedule {
|
||||||
color: $brand-warning;
|
color: $brand-warning;
|
||||||
|
|
||||||
|
.context-menu-selection & {
|
||||||
|
color: $brand-text;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.version-overdue,
|
.version-overdue,
|
||||||
.issue-overdue,
|
.issue-overdue,
|
||||||
.project-overdue {
|
.project-overdue {
|
||||||
color: $brand-danger;
|
color: $brand-danger;
|
||||||
|
|
||||||
|
.context-menu-selection & {
|
||||||
|
color: $brand-text;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -137,17 +229,16 @@
|
|||||||
&:hover {
|
&:hover {
|
||||||
z-index: 25;
|
z-index: 25;
|
||||||
|
|
||||||
.tip {
|
span.tip {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.tip {
|
span.tip {
|
||||||
@include nice-shadow(3);
|
@include nice-shadow(3);
|
||||||
display: none;
|
display: none;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 9px;
|
top: 12px;
|
||||||
left: 24px;
|
|
||||||
width: 270px;
|
width: 270px;
|
||||||
padding: $padding-base-vertical;
|
padding: $padding-base-vertical;
|
||||||
border: $tooltip-border-width solid $tooltip-border;
|
border: $tooltip-border-width solid $tooltip-border;
|
||||||
@@ -158,9 +249,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
@if $sidebar-position == "left" {
|
@if $sidebar-position == "left" {
|
||||||
tr > td:last-child & {
|
.list & {
|
||||||
.tip {
|
span.tip {
|
||||||
right: 2px;
|
right: 0;
|
||||||
left: auto;
|
left: auto;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ table.list .buttons > a::before {
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
|
||||||
@at-root a#{&} {
|
@at-root a#{&} {
|
||||||
// scss-lint:disable ImportantRule
|
// stylelint-disable declaration-no-important
|
||||||
display: inline;
|
display: inline;
|
||||||
width: auto !important;
|
width: auto !important;
|
||||||
height: auto !important;
|
height: auto !important;
|
||||||
@@ -152,7 +152,15 @@ table.list .buttons > a::before {
|
|||||||
.icon-add-bullet::before { content: $fa-var-plus-circle; }
|
.icon-add-bullet::before { content: $fa-var-plus-circle; }
|
||||||
.icon-shared::before { content: $fa-var-link; }
|
.icon-shared::before { content: $fa-var-link; }
|
||||||
.icon-actions::before { content: $fa-var-ellipsis-h; }
|
.icon-actions::before { content: $fa-var-ellipsis-h; }
|
||||||
|
.icon-sort-handle::before { content: $fa-var-arrows-v; }
|
||||||
|
.icon-expended::before { content: $fa-var-chevron-down; }
|
||||||
|
.icon-collapsed::before { content: $fa-var-chevron-right; }
|
||||||
|
.icon-bookmark::before { content: $fa-var-bookmark; }
|
||||||
|
.icon-bookmark-off::before { content: $fa-var-bookmark-o; }
|
||||||
|
.icon-sorted-asc::before { content: $fa-var-sort-amount-asc; }
|
||||||
|
.icon-sorted-desc::before { content: $fa-var-sort-amount-desc; }
|
||||||
|
.icon-toggle-plus::before { content: $fa-var-plus-square; }
|
||||||
|
.icon-toggle-minus::before { content: $fa-var-minus-square; }
|
||||||
|
|
||||||
//== Checkbox toggler
|
//== Checkbox toggler
|
||||||
//
|
//
|
||||||
@@ -240,6 +248,22 @@ a.icon-del {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.icon-expended,
|
||||||
|
.icon-collapsed {
|
||||||
|
&::before {
|
||||||
|
width: 1em;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.icon {
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.expander {
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//== Administration menu sections
|
//== Administration menu sections
|
||||||
//
|
//
|
||||||
@@ -522,6 +546,11 @@ dt {
|
|||||||
|
|
||||||
.sort {
|
.sort {
|
||||||
@extend %fa-icon-after;
|
@extend %fa-icon-after;
|
||||||
|
padding-left: 0;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
content: none;
|
||||||
|
}
|
||||||
|
|
||||||
&::after {
|
&::after {
|
||||||
margin-left: .2em;
|
margin-left: .2em;
|
||||||
|
|||||||
@@ -4,5 +4,5 @@
|
|||||||
|
|
||||||
// ACI = AutoComplete Indicator
|
// ACI = AutoComplete Indicator
|
||||||
%image-aci {
|
%image-aci {
|
||||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAKBAMAAAAnY0GXAAAAD1BMVEUAAACzs7Ozs7Ozs7Ozs7NJvZFvAAAABHRSTlMA5kpJG2qUMwAAABtJREFUCNdjIBMYCkMRDIg4QhBuAUUhKCIPAAAlaQNk5qF21gAAAABJRU5ErkJggg==);
|
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAKBAMAAAAnY0GXAAAAD1BMVEUAAACzs7Ozs7Ozs7Ozs7NJvZFvAAAABHRSTlMA5kpJG2qUMwAAABtJREFUCNdjIBMYCkMRDIg4QhBuAUUhKCIPAAAlaQNk5qF21gAAAABJRU5ErkJggg==");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ table.list {
|
|||||||
padding: $table-cell-padding;
|
padding: $table-cell-padding;
|
||||||
border: 2px solid $table-border-color;
|
border: 2px solid $table-border-color;
|
||||||
border-width: $table-list-header-border;
|
border-width: $table-list-header-border;
|
||||||
|
background-color: $body-bg;
|
||||||
color: $gray-700;
|
color: $gray-700;
|
||||||
vertical-align: bottom;
|
vertical-align: bottom;
|
||||||
|
|
||||||
@@ -210,6 +211,10 @@ tr.issue {
|
|||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.overdue td.due_date {
|
||||||
|
color: $brand-danger;
|
||||||
|
}
|
||||||
|
|
||||||
@for $i from 1 through 9 {
|
@for $i from 1 through 9 {
|
||||||
&.idnt-#{$i} td.subject {
|
&.idnt-#{$i} td.subject {
|
||||||
padding-left: $table-cell-padding + 16px * $i;
|
padding-left: $table-cell-padding + 16px * $i;
|
||||||
@@ -219,10 +224,23 @@ tr.issue {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.issues {
|
.issues {
|
||||||
|
.block_column,
|
||||||
.description,
|
.description,
|
||||||
.last_notes {
|
.last_notes {
|
||||||
padding: $table-cell-padding;
|
padding: 0;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
|
white-space: normal;
|
||||||
|
|
||||||
|
> span {
|
||||||
|
display: block;
|
||||||
|
margin-bottom: $line-height-computed / 4;
|
||||||
|
padding: $table-cell-padding;
|
||||||
|
font-weight: $font-weight-bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
|
||||||
@media screen and (min-width: $screen-sm-min) {
|
@media screen and (min-width: $screen-sm-min) {
|
||||||
> .wiki {
|
> .wiki {
|
||||||
@@ -231,10 +249,6 @@ tr.issue {
|
|||||||
overflow: auto;
|
overflow: auto;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
|
||||||
white-space: normal;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -262,6 +276,26 @@ td.center {
|
|||||||
table-layout: fixed;
|
table-layout: fixed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.issue-report-graph {
|
||||||
|
width: 75%;
|
||||||
|
margin: $line-height-computed auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sample-data {
|
||||||
|
margin: $line-height-computed / 2;
|
||||||
|
margin-bottom: $line-height-computed;
|
||||||
|
border: 1px solid $table-border-color;
|
||||||
|
|
||||||
|
td {
|
||||||
|
border: 1px solid $table-border-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
tr:first-child td {
|
||||||
|
font-weight: $font-weight-bold;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
tr.builtin td.name {
|
tr.builtin td.name {
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
@@ -386,7 +420,7 @@ tr.entry {
|
|||||||
right: 5px;
|
right: 5px;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 5px;
|
left: 5px;
|
||||||
height: calc(50% - 2px/2);
|
height: calc(50% - 2px / 2);
|
||||||
transform: rotate(-4deg);
|
transform: rotate(-4deg);
|
||||||
transition: border-color $transition-time;
|
transition: border-color $transition-time;
|
||||||
border-top: 2px solid rgba($tracker-default-text, .95);
|
border-top: 2px solid rgba($tracker-default-text, .95);
|
||||||
@@ -441,18 +475,6 @@ tr.group {
|
|||||||
&:hover .toggle-all {
|
&:hover .toggle-all {
|
||||||
display: inline;
|
display: inline;
|
||||||
}
|
}
|
||||||
|
|
||||||
.count {
|
|
||||||
display: inline-block;
|
|
||||||
min-width: 1em;
|
|
||||||
margin: 0 5px;
|
|
||||||
padding: 1px 4px;
|
|
||||||
border-radius: $border-radius-small;
|
|
||||||
background-color: $brand-primary;
|
|
||||||
color: $brand-text;
|
|
||||||
font-size: $font-size-small;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.toggle-all:hover {
|
.toggle-all:hover {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
#login-form {
|
#login-form {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
margin: $line-height-computed * 2 auto;
|
margin: $line-height-computed * 2 auto $line-height-computed;
|
||||||
|
|
||||||
label,
|
label,
|
||||||
input:not([type="checkbox"]) {
|
input:not([type="checkbox"]) {
|
||||||
|
|||||||
@@ -1,3 +1,45 @@
|
|||||||
|
//
|
||||||
|
// Additionals
|
||||||
|
// https://www.redmine.org/plugins/additionals
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
#sidebar .sidebar-additionals {
|
||||||
|
ul,
|
||||||
|
ol {
|
||||||
|
margin: 0 0 ($line-height-computed / 2);
|
||||||
|
padding-left: 1.5em;
|
||||||
|
|
||||||
|
ul,
|
||||||
|
ol {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ul {
|
||||||
|
// stylelint-disable selector-max-compound-selectors
|
||||||
|
li {
|
||||||
|
list-style-type: disc;
|
||||||
|
|
||||||
|
li {
|
||||||
|
list-style-type: circle;
|
||||||
|
|
||||||
|
li {
|
||||||
|
list-style-type: square;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.action-login .login-additionals {
|
||||||
|
font-size: 1em;
|
||||||
|
|
||||||
|
@media screen and (min-width: $login-form-box-breakpoint) {
|
||||||
|
max-width: $login-form-width;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Redmine Backlogs
|
// Redmine Backlogs
|
||||||
// https://github.com/HolonGlobe/redmine_backlogs
|
// https://github.com/HolonGlobe/redmine_backlogs
|
||||||
@@ -222,7 +264,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.select2-selection {
|
.select2-selection {
|
||||||
transition: border-color $transition-time ease-in-out,
|
transition:
|
||||||
|
border-color $transition-time ease-in-out,
|
||||||
box-shadow $transition-time ease-in-out;
|
box-shadow $transition-time ease-in-out;
|
||||||
border-color: $input-border;
|
border-color: $input-border;
|
||||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
|
|
||||||
#main {
|
#main {
|
||||||
display: block;
|
display: block;
|
||||||
overflow: visible !important; // scss-lint:disable ImportantRule
|
overflow: visible !important; // stylelint-disable-line declaration-no-important
|
||||||
background: $white;
|
background: $white;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
overflow: visible !important; // scss-lint:disable ImportantRule
|
overflow: visible !important; // stylelint-disable-line declaration-no-important
|
||||||
border: 0;
|
border: 0;
|
||||||
background: $white;
|
background: $white;
|
||||||
}
|
}
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
// scss-lint:disable ImportantRule
|
// stylelint-disable declaration-no-important
|
||||||
padding: 0 !important;
|
padding: 0 !important;
|
||||||
background-color: transparent !important;
|
background-color: transparent !important;
|
||||||
color: $black !important;
|
color: $black !important;
|
||||||
|
|||||||
@@ -36,15 +36,15 @@ table.progress {
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.done {
|
&.done {
|
||||||
background-color: $progress-bar-bg !important; // scss-lint:disable ImportantRule
|
background-color: $progress-bar-bg !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
|
|
||||||
&.closed {
|
&.closed {
|
||||||
background-color: $progress-bar-success-bg !important; // scss-lint:disable ImportantRule
|
background-color: $progress-bar-success-bg !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
|
|
||||||
&.todo {
|
&.todo {
|
||||||
background-color: $progress-bg !important; // scss-lint:disable ImportantRule
|
background-color: $progress-bg !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,8 @@
|
|||||||
// scss-lint:disable SelectorDepth
|
.mobile-show {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
// stylelint-disable selector-max-compound-selectors
|
||||||
.theme-Purplemine2 {
|
.theme-Purplemine2 {
|
||||||
@media screen and (max-width: $redmine-responsive-max) {
|
@media screen and (max-width: $redmine-responsive-max) {
|
||||||
.flyout-menu + div {
|
.flyout-menu + div {
|
||||||
|
|||||||
@@ -167,7 +167,7 @@ div.tabs:not(#main-menu) {
|
|||||||
margin-bottom: 3px;
|
margin-bottom: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
label[for=principal_search] {
|
label[for="principal_search"] {
|
||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -412,7 +412,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.tabs-buttons {
|
.tabs-buttons {
|
||||||
display: none !important; // scss-lint:disable ImportantRule
|
display: none !important; // stylelint-disable-line declaration-no-important
|
||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
border-color: $main-menu-border;
|
border-color: $main-menu-border;
|
||||||
background-color: $main-menu-bg;
|
background-color: $main-menu-bg;
|
||||||
@@ -425,6 +425,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
ul + .tabs-buttons {
|
ul + .tabs-buttons {
|
||||||
display: block !important; // scss-lint:disable ImportantRule
|
display: block !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ div.wiki {
|
|||||||
color: $wiki-text;
|
color: $wiki-text;
|
||||||
line-height: $wiki-line-height;
|
line-height: $wiki-line-height;
|
||||||
|
|
||||||
//scss-lint:disable SingleLinePerSelector
|
// stylelint-disable selector-list-comma-newline-after
|
||||||
h1, .h1,
|
h1, .h1,
|
||||||
h2, .h2,
|
h2, .h2,
|
||||||
h3, .h3,
|
h3, .h3,
|
||||||
@@ -111,16 +111,16 @@ div.wiki {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
>:last-child {
|
> :last-child {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
blockquote {
|
blockquote {
|
||||||
>:first-child {
|
> :first-child {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
>:last-child {
|
> :last-child {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -179,7 +179,8 @@ div.wiki {
|
|||||||
border: 1px solid $table-border-color;
|
border: 1px solid $table-border-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.noborder {
|
.noborder,
|
||||||
|
.wiki-class-noborder {
|
||||||
border: 0 none;
|
border: 0 none;
|
||||||
|
|
||||||
td,
|
td,
|
||||||
@@ -195,7 +196,7 @@ div.wiki {
|
|||||||
code {
|
code {
|
||||||
padding: .2em .33em;
|
padding: .2em .33em;
|
||||||
border-radius: $border-radius-base;
|
border-radius: $border-radius-base;
|
||||||
background-color: rgba($black, .04);
|
background-color: rgba($gray-500, .3);
|
||||||
font-size: $font-size-small;
|
font-size: $font-size-small;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -205,9 +206,9 @@ div.wiki {
|
|||||||
padding: 4px 8px;
|
padding: 4px 8px;
|
||||||
overflow-x: auto;
|
overflow-x: auto;
|
||||||
overflow-y: hidden;
|
overflow-y: hidden;
|
||||||
border: 1px solid rgba($black, .068);
|
border: 1px solid rgba($gray-500, .45);
|
||||||
border-radius: $border-radius-base;
|
border-radius: $border-radius-base;
|
||||||
background-color: rgba($black, .03);
|
background-color: rgba($gray-500, .15);
|
||||||
font-size: $font-size-small;
|
font-size: $font-size-small;
|
||||||
|
|
||||||
code {
|
code {
|
||||||
@@ -274,7 +275,7 @@ div.wiki {
|
|||||||
}
|
}
|
||||||
|
|
||||||
li {
|
li {
|
||||||
// scss-lint:disable SelectorDepth
|
// stylelint-disable selector-max-compound-selectors
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
|
||||||
li {
|
li {
|
||||||
@@ -318,9 +319,9 @@ h6 {
|
|||||||
position: relative;
|
position: relative;
|
||||||
top: -(1em - $font-size-small);
|
top: -(1em - $font-size-small);
|
||||||
margin-left: 5px;
|
margin-left: 5px;
|
||||||
color: $headings-anchor-color !important; // scss-lint:disable ImportantRule
|
color: $headings-anchor-color !important; // stylelint-disable-line declaration-no-important
|
||||||
font-size: $font-size-small;
|
font-size: $font-size-small;
|
||||||
text-decoration: none !important; // scss-lint:disable ImportantRule
|
text-decoration: none !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
@@ -353,6 +354,16 @@ p.footnote {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.ltr,
|
||||||
|
.wiki-class-ltr {
|
||||||
|
direction: ltr;
|
||||||
|
}
|
||||||
|
|
||||||
|
.rtl,
|
||||||
|
.wiki-class-rtl {
|
||||||
|
direction: rtl;
|
||||||
|
}
|
||||||
|
|
||||||
.preview {
|
.preview {
|
||||||
margin-top: $line-height-computed;
|
margin-top: $line-height-computed;
|
||||||
padding: $padding-wiki;
|
padding: $padding-wiki;
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
// Button sizes
|
// Button sizes
|
||||||
@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
|
@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
|
||||||
padding: $padding-vertical $padding-horizontal;
|
padding: $padding-vertical $padding-horizontal;
|
||||||
|
border-radius: $border-radius;
|
||||||
font-size: $font-size;
|
font-size: $font-size;
|
||||||
line-height: $line-height;
|
line-height: $line-height;
|
||||||
border-radius: $border-radius;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin button-variant($color, $bg, $border) {
|
@mixin button-variant($color, $bg, $border) {
|
||||||
|
|||||||
@@ -2,6 +2,6 @@
|
|||||||
|
|
||||||
@mixin center-block() {
|
@mixin center-block() {
|
||||||
display: block;
|
display: block;
|
||||||
margin-left: auto;
|
|
||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
|
margin-left: auto;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -44,9 +44,9 @@
|
|||||||
@extend %clearfix;
|
@extend %clearfix;
|
||||||
position: relative;
|
position: relative;
|
||||||
padding-left: $check-input-gutter;
|
padding-left: $check-input-gutter;
|
||||||
|
font-weight: $font-weight-normal;
|
||||||
line-height: $line-height-base;
|
line-height: $line-height-base;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-weight: $font-weight-normal;
|
|
||||||
|
|
||||||
input[type="checkbox"],
|
input[type="checkbox"],
|
||||||
input[type="radio"] {
|
input[type="radio"] {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
@media
|
@media
|
||||||
only screen and (-webkit-min-device-pixel-ratio: 2),
|
only screen and (-webkit-min-device-pixel-ratio: 2),
|
||||||
only screen and (min--moz-device-pixel-ratio: 2),
|
only screen and (min--moz-device-pixel-ratio: 2),
|
||||||
only screen and (-o-min-device-pixel-ratio: 2/1),
|
only screen and (-o-min-device-pixel-ratio: 2 / 1),
|
||||||
only screen and (min-device-pixel-ratio: 2),
|
only screen and (min-device-pixel-ratio: 2),
|
||||||
only screen and (min-resolution: 192dpi),
|
only screen and (min-resolution: 192dpi),
|
||||||
only screen and (min-resolution: 2dppx) {
|
only screen and (min-resolution: 2dppx) {
|
||||||
|
|||||||
@@ -5,13 +5,13 @@
|
|||||||
|
|
||||||
@if ($depth == 1) {
|
@if ($depth == 1) {
|
||||||
$shadow: 0 1px 2px rgba(#000, .25);
|
$shadow: 0 1px 2px rgba(#000, .25);
|
||||||
} @elseif ($depth == 2) {
|
} @else if ($depth == 2) {
|
||||||
$shadow: 0 5px 8px -2px rgba(#000, .25), 0 1px 2px rgba(#000, .3);
|
$shadow: 0 5px 8px -2px rgba(#000, .25), 0 1px 2px rgba(#000, .3);
|
||||||
} @elseif ($depth == 3) {
|
} @else if ($depth == 3) {
|
||||||
$shadow: 0 8px 16px -3px rgba(#000, .25), 0 2px 4px rgba(#000, .3);
|
$shadow: 0 8px 16px -3px rgba(#000, .25), 0 2px 4px rgba(#000, .3);
|
||||||
} @elseif ($depth == 4) {
|
} @else if ($depth == 4) {
|
||||||
$shadow: 0 14px 24px -4px rgba(#000, .25), 0 3px 10px rgba(#000, .3);
|
$shadow: 0 14px 24px -4px rgba(#000, .25), 0 3px 10px rgba(#000, .3);
|
||||||
} @elseif ($depth == 5) {
|
} @else if ($depth == 5) {
|
||||||
$shadow: 0 20px 32px -2px rgba(#000, .25), 0 4px 12px rgba(#000, .3);
|
$shadow: 0 20px 32px -2px rgba(#000, .25), 0 4px 12px rgba(#000, .3);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -67,7 +67,8 @@ input.editor,
|
|||||||
@include placeholder;
|
@include placeholder;
|
||||||
height: $input-height-base;
|
height: $input-height-base;
|
||||||
padding: $input-padding-vertical $input-padding-horizontal;
|
padding: $input-padding-vertical $input-padding-horizontal;
|
||||||
transition: border-color $transition-time ease-in-out,
|
transition:
|
||||||
|
border-color $transition-time ease-in-out,
|
||||||
box-shadow $transition-time ease-in-out;
|
box-shadow $transition-time ease-in-out;
|
||||||
border: 1px solid $input-border;
|
border: 1px solid $input-border;
|
||||||
border-radius: $input-border-radius;
|
border-radius: $input-border-radius;
|
||||||
@@ -91,7 +92,8 @@ button.ui-multiselect {
|
|||||||
height: $input-height-base;
|
height: $input-height-base;
|
||||||
padding: $input-padding-vertical $input-padding-horizontal;
|
padding: $input-padding-vertical $input-padding-horizontal;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
transition: border-color $transition-time ease-in-out,
|
transition:
|
||||||
|
border-color $transition-time ease-in-out,
|
||||||
box-shadow $transition-time ease-in-out;
|
box-shadow $transition-time ease-in-out;
|
||||||
border: 1px solid $input-border;
|
border: 1px solid $input-border;
|
||||||
background: $input-bg;
|
background: $input-bg;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// scss-lint:disable Comment
|
// stylelint-disable comment-whitespace-inside, no-duplicate-selectors
|
||||||
@import "../common";
|
@import "../common";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -66,7 +66,7 @@
|
|||||||
----------------------------------*/
|
----------------------------------*/
|
||||||
|
|
||||||
.ui-state-disabled {
|
.ui-state-disabled {
|
||||||
cursor: default !important; // scss-lint:disable ImportantRule
|
cursor: default !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Icons
|
/* Icons
|
||||||
@@ -631,7 +631,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.ui-accordion-header-active {
|
.ui-accordion-header-active {
|
||||||
border-bottom: 0 !important; // scss-lint:disable ImportantRule
|
border-bottom: 0 !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-accordion-header a {
|
.ui-accordion-header a {
|
||||||
@@ -734,7 +734,7 @@
|
|||||||
overflow: visible;
|
overflow: visible;
|
||||||
zoom: 1;
|
zoom: 1;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
text-decoration: none !important; // scss-lint:disable ImportantRule
|
text-decoration: none !important; // stylelint-disable-line declaration-no-important
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1007,7 +1007,7 @@ button.ui-button::-moz-focus-inner {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
float: left;
|
float: left;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
border-bottom: 0 !important; // scss-lint:disable ImportantRule
|
border-bottom: 0 !important; // stylelint-disable-line declaration-no-important
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
|
||||||
a {
|
a {
|
||||||
@@ -1048,7 +1048,7 @@ button.ui-button::-moz-focus-inner {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.ui-tabs-hide {
|
.ui-tabs-hide {
|
||||||
display: none !important; // scss-lint:disable ImportantRule
|
display: none !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1361,7 +1361,7 @@ button.ui-button::-moz-focus-inner {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Progressbar
|
/* Progressbar
|
||||||
----------------------------------*/
|
----------------------------------*/
|
||||||
|
|
||||||
.ui-progressbar {
|
.ui-progressbar {
|
||||||
|
|||||||
@@ -11,13 +11,13 @@
|
|||||||
|
|
||||||
.ui-multiselect-single .ui-multiselect-checkboxes {
|
.ui-multiselect-single .ui-multiselect-checkboxes {
|
||||||
input {
|
input {
|
||||||
position: absolute !important; // scss-lint:disable ImportantRule
|
position: absolute !important; // stylelint-disable-line declaration-no-important
|
||||||
top: auto !important; // scss-lint:disable ImportantRule
|
top: auto !important; // stylelint-disable-line declaration-no-important
|
||||||
left: -9999px;
|
left: -9999px;
|
||||||
}
|
}
|
||||||
|
|
||||||
label {
|
label {
|
||||||
padding: 5px !important; // scss-lint:disable ImportantRule
|
padding: 5px !important; // stylelint-disable-line declaration-no-important
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -22,16 +22,13 @@
|
|||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-tooltip-tip {
|
|
||||||
border-color: $tooltip-border;
|
|
||||||
background-color: $tooltip-bg;
|
|
||||||
}
|
|
||||||
|
|
||||||
.ui-tooltip-tip {
|
.ui-tooltip-tip {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
border: 0 none;
|
border: 0 none;
|
||||||
|
border-color: $tooltip-border;
|
||||||
background: transparent;
|
background: transparent;
|
||||||
|
background-color: $tooltip-bg;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -189,7 +189,8 @@ $story-sp-input-width: 50px;
|
|||||||
|
|
||||||
&:focus {
|
&:focus {
|
||||||
border-color: lighten($header-bg, 25%);
|
border-color: lighten($header-bg, 25%);
|
||||||
box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2),
|
box-shadow:
|
||||||
|
inset 0 1px 3px rgba(0, 0, 0, .2),
|
||||||
0 0 0 1px lighten($header-bg, 25%);
|
0 0 0 1px lighten($header-bg, 25%);
|
||||||
color: $gray-950;
|
color: $gray-950;
|
||||||
}
|
}
|
||||||
@@ -279,7 +280,7 @@ $story-sp-input-width: 50px;
|
|||||||
$name-width-minus: $header-right-width-wider + 35px;
|
$name-width-minus: $header-right-width-wider + 35px;
|
||||||
|
|
||||||
position: relative;
|
position: relative;
|
||||||
width: calc(100% - #{$name-width-minus}) !important; // scss-lint:disable ImportantRule
|
width: calc(100% - #{$name-width-minus}) !important; // stylelint-disable-line declaration-no-important
|
||||||
min-width: 128px;
|
min-width: 128px;
|
||||||
margin-left: $header-line-height - 2px;
|
margin-left: $header-line-height - 2px;
|
||||||
float: left;
|
float: left;
|
||||||
@@ -592,7 +593,8 @@ $story-sp-input-width: 50px;
|
|||||||
|
|
||||||
&:focus {
|
&:focus {
|
||||||
border-color: darken($highlight-border, 15%);
|
border-color: darken($highlight-border, 15%);
|
||||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075),
|
box-shadow:
|
||||||
|
inset 0 1px 2px rgba(0, 0, 0, .075),
|
||||||
0 0 5px rgba(darken($highlight-border, 15%), .5);
|
0 0 5px rgba(darken($highlight-border, 15%), .5);
|
||||||
color: $gray-950;
|
color: $gray-950;
|
||||||
}
|
}
|
||||||
@@ -643,7 +645,7 @@ $story-sp-input-width: 50px;
|
|||||||
&.subject {
|
&.subject {
|
||||||
$subject-width-minus: $story-status-input-width + $story-sp-input-width + 5px * 2;
|
$subject-width-minus: $story-status-input-width + $story-sp-input-width + 5px * 2;
|
||||||
|
|
||||||
width: calc(100% - #{$subject-width-minus}) !important; // scss-lint:disable ImportantRule
|
width: calc(100% - #{$subject-width-minus}) !important; // stylelint-disable-line declaration-no-important
|
||||||
height: 60px;
|
height: 60px;
|
||||||
float: left;
|
float: left;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
@@ -755,7 +757,8 @@ $story-sp-input-width: 50px;
|
|||||||
@include button-size($input-padding-vertical, $input-padding-horizontal, $font-size-base, $line-height-base, $border-radius-base);
|
@include button-size($input-padding-vertical, $input-padding-horizontal, $font-size-base, $line-height-base, $border-radius-base);
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
transition: background-color ease-in-out .07s,
|
transition:
|
||||||
|
background-color ease-in-out .07s,
|
||||||
border-color ease-in-out .07s,
|
border-color ease-in-out .07s,
|
||||||
box-shadow ease-in-out .07s;
|
box-shadow ease-in-out .07s;
|
||||||
border: 1px solid;
|
border: 1px solid;
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user