Compare commits
43 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
df3e0fb696 | ||
|
|
d17f4d2542 | ||
|
|
51ba1deb36 | ||
|
|
b5d02128f5 | ||
|
|
aa8738c749 | ||
|
|
0282ba6695 | ||
|
|
0c4be053dc | ||
|
|
319f97d468 | ||
|
|
7bbdb230a8 | ||
|
|
dd23f453e5 | ||
|
|
8a8551b821 | ||
|
|
1ce3d3121f | ||
|
|
3b9128bf1b | ||
|
|
a2e8955488 | ||
|
|
759d8424b9 | ||
|
|
d365120f67 | ||
|
|
2ababdc027 | ||
|
|
f60eac82e3 | ||
|
|
e68f8a1aa3 | ||
|
|
0bb9a27140 | ||
|
|
15368c666e | ||
|
|
9f1a1bf3eb | ||
|
|
97502b8372 | ||
|
|
aa985c34c6 | ||
|
|
c4f2ccff3f | ||
|
|
0a44774774 | ||
|
|
ba9ef9be21 | ||
|
|
f1df7d1e29 | ||
|
|
a9160256cf | ||
|
|
672c1b45a2 | ||
|
|
e3e194bb95 | ||
|
|
91eb640575 | ||
|
|
06df2c2740 | ||
|
|
64c6f7707d | ||
|
|
ccdb344082 | ||
|
|
3d8aeb0e7d | ||
|
|
b8a1dcc913 | ||
|
|
5cf3d1f645 | ||
|
|
8bdf41aa9a | ||
|
|
97b68972f7 | ||
|
|
d429f35dfc | ||
|
|
8dab6dc92b | ||
|
|
25ba736e7d |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -3,3 +3,4 @@
|
||||
/src/sass/_custom-variables.scss
|
||||
/.sublime-grunt.cache
|
||||
/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
|
||||
node_js:
|
||||
- 8
|
||||
- 10
|
||||
cache:
|
||||
directories:
|
||||
- node_modules
|
||||
before_install:
|
||||
- rvm install 2.2
|
||||
- rvm use 2.2 --fuzzy
|
||||
install:
|
||||
- gem install scss_lint
|
||||
- npm install
|
||||
script:
|
||||
- npm run lint --silent
|
||||
|
||||
64
README.md
64
README.md
@@ -56,6 +56,70 @@ If you need to customize styles for [Redmine Backlogs][redmine_backlogs] remembe
|
||||
|
||||
## Changelog
|
||||
|
||||
v2.5.0 (2019-06-05):
|
||||
|
||||
* Fixed #117, #118 and added many improvements to the responsive layout.
|
||||
|
||||
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):
|
||||
|
||||
* Fixed sidebar toggler style when fixed layout is enabled
|
||||
* Fixed contextual dropdown padding in mobile view
|
||||
|
||||
v1.11.0 (2019-03-22):
|
||||
|
||||
* Backported fixes from v2:
|
||||
* Fixed #89: [RM+ custom menu](http://rmplus.pro/en/redmine/plugins/custom_menu) breaking the layout
|
||||
* Fixed #90: regression in some sidebar layouts
|
||||
* Fixed #93: Agile chart expanding indefinitely when Additional "Go to top" link is enabled
|
||||
* Fixed #94: subtasks indentation
|
||||
* Fixed styling of some flash messages
|
||||
* Fixed horizontal scrollbar appearing when sidebar is on the right
|
||||
* Fixed footer being mispositioned in Agile charts
|
||||
* Fixed positioning of admin menu icons for some plugins
|
||||
* Improved support for [Redmine Tags](https://www.redmineup.com/pages/plugins/tags) plugin
|
||||
* Added separator line between news on the news list
|
||||
* Improved Redmine 4.0 compatibility
|
||||
* Updated Font Awesome icons to 4.7.0
|
||||
|
||||
v2.1.0 (2019-03-22):
|
||||
|
||||
* Added CSS grid layout support (off by default because of IE support)
|
||||
* Fixed styling of some flash messages
|
||||
* Fixed horizontal scrollbar appearing when sidebar is on the right
|
||||
* Fixed footer being mispositioned in Agile charts
|
||||
* Improved support for [Redmine Tags](https://www.redmineup.com/pages/plugins/tags) plugin
|
||||
* Fixed positioning of admin menu icons for some plugins
|
||||
* Added separator line between news on the news list
|
||||
* Fixed #93: Agile chart expanding indefinitely when Additional "Go to top" link is enabled
|
||||
* Fixed #94: subtasks indentation
|
||||
* Improved progress bar styling, avatar positioning, WYSIWYG button styling, wiki preview font sizes
|
||||
|
||||
v2.0.2 (2019-03-20):
|
||||
|
||||
* Fixed #89: [RM+ custom menu](http://rmplus.pro/en/redmine/plugins/custom_menu) breaking the layout
|
||||
|
||||
v2.0.1 (2019-03-17):
|
||||
|
||||
* Fixed #90: regression in some sidebar layouts
|
||||
* Removed reduntant `abbr[title]` styles
|
||||
|
||||
v2.0 (2019-03-13):
|
||||
|
||||
* Refreshed, modernized look & feel
|
||||
|
||||
2867
package-lock.json
generated
2867
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -21,7 +21,7 @@
|
||||
"build": "grunt",
|
||||
"watch": "grunt watch",
|
||||
"lint:js": "standard",
|
||||
"lint:sass": "scss-lint",
|
||||
"lint:sass": "stylelint src/sass/**/*.scss",
|
||||
"lint": "npm run -S lint:js && npm run -S lint:sass"
|
||||
},
|
||||
"dependencies": {
|
||||
@@ -35,7 +35,10 @@
|
||||
"sass-inline-svg": "^1.2.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"standard": "^12.0.1"
|
||||
"standard": "^12.0.1",
|
||||
"stylelint": "^10.0.1",
|
||||
"stylelint-order": "^3.0.0",
|
||||
"stylelint-scss": "^3.6.1"
|
||||
},
|
||||
"standard": {
|
||||
"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,11 +2,13 @@
|
||||
// Variables
|
||||
// --------------------------------------------------
|
||||
|
||||
// stylelint-disable indentation
|
||||
|
||||
//== Some key attributes
|
||||
//
|
||||
|
||||
$fixed-layout: false !default;
|
||||
$css-grid-layout: false !default;
|
||||
$flexbox-layout: true !default;
|
||||
$sidebar-position: left !default;
|
||||
$clean-issues: true !default;
|
||||
@@ -479,13 +481,13 @@ $header-title-line-height: $line-height-computed * 1.5 !default;
|
||||
|
||||
$responsive-header-height: 54px !default;
|
||||
|
||||
$flyout-menu-bg: shade($header-bg, 800) !default;
|
||||
$flyout-menu-bg: shade($header-bg, 700) !default;
|
||||
$flyout-menu-text: $white !default;
|
||||
$flyout-menu-link: $white !default;
|
||||
$flyout-menu-link-active-bg: $header-bg !default;
|
||||
$flyout-menu-link-active: $white !default;
|
||||
$flyout-menu-header-bg: shade($header-bg, 900) !default;
|
||||
$flyout-menu-header-border: shade($header-bg, 900) !default;
|
||||
$flyout-menu-link-active-bg: shade($header-bg, 50) !default;
|
||||
$flyout-menu-link-active: $text-color !default;
|
||||
$flyout-menu-header-bg: shade($header-bg, 800) !default;
|
||||
$flyout-menu-header-border: shade($header-bg, 800) !default;
|
||||
$flyout-menu-header-text: $white !default;
|
||||
|
||||
$quick-search-width: 200px !default;
|
||||
@@ -589,7 +591,7 @@ $flash-error-link: $white !default;
|
||||
//
|
||||
|
||||
$progress-height: 12px !default;
|
||||
$progress-bg: $gray-300 !default;
|
||||
$progress-bg: rgba($gray-500, .5) !default;
|
||||
$progress-bar-bg: $brand-primary !default;
|
||||
$progress-bar-success-bg: $brand-success !default;
|
||||
$progress-bar-danger-bg: $brand-danger !default;
|
||||
@@ -644,6 +646,17 @@ $bubble-padding-vertical: 8px !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
|
||||
//
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
//
|
||||
|
||||
@import "components/base";
|
||||
@import "components/badges";
|
||||
@import "components/buttons";
|
||||
@import "components/forms";
|
||||
@import "components/tabs";
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
// Admin
|
||||
// --------------------------------------------------
|
||||
|
||||
#main #admin-menu {
|
||||
ul {
|
||||
#admin-menu {
|
||||
ul:nth-child(n) {
|
||||
li {
|
||||
list-style-type: none;
|
||||
|
||||
@@ -14,22 +14,22 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#main #admin-index > #admin-menu {
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
#admin-index > & {
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
li {
|
||||
padding: ($sidebar-padding-vertical + 1px) ($sidebar-padding-horizontal + 3px);
|
||||
}
|
||||
li {
|
||||
padding: ($sidebar-padding-vertical + 1px) ($sidebar-padding-horizontal + 3px);
|
||||
}
|
||||
|
||||
a {
|
||||
display: inline-block;
|
||||
padding-left: 5px + 20px;
|
||||
background-position: 0 center;
|
||||
a {
|
||||
display: inline-block;
|
||||
padding-left: 5px + 20px;
|
||||
background-position: 0 center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
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 {
|
||||
padding: $table-condensed-cell-padding $table-cell-padding;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
ul,
|
||||
ol {
|
||||
margin-top: 0;
|
||||
margin-bottom: ($line-height-computed / 2);
|
||||
padding-left: 1.5em;
|
||||
|
||||
ul,
|
||||
ol {
|
||||
@@ -143,15 +148,15 @@ samp {
|
||||
}
|
||||
|
||||
hr {
|
||||
margin-top: $line-height-computed;
|
||||
margin-top: $line-height-computed;
|
||||
margin-bottom: $line-height-computed;
|
||||
border: 0;
|
||||
border-top: 1px solid $hr-border;
|
||||
}
|
||||
|
||||
abbr[title] {
|
||||
border-bottom: 1px dotted $abbr-border-color;
|
||||
cursor: help;
|
||||
li & {
|
||||
margin-top: $line-height-computed / 2;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
}
|
||||
}
|
||||
|
||||
blockquote {
|
||||
@@ -159,11 +164,11 @@ blockquote {
|
||||
padding: floor($line-height-computed / 4) $padding-large-horizontal;
|
||||
border-left: 4px solid $blockquote-border-color;
|
||||
|
||||
>:first-child {
|
||||
> :first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
>:last-child {
|
||||
> :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,9 +9,10 @@ button {
|
||||
@include button-size($btn-padding-vertical, $btn-padding-horizontal, $font-size-base, $line-height-base, $border-radius-base);
|
||||
display: inline-block;
|
||||
margin-bottom: 0;
|
||||
transition: border-color $transition-time ease-in-out,
|
||||
background-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
transition:
|
||||
border-color $transition-time ease-in-out,
|
||||
background-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
border: 1px solid;
|
||||
font-weight: $btn-font-weight;
|
||||
text-align: center;
|
||||
@@ -19,7 +20,7 @@ button {
|
||||
white-space: nowrap;
|
||||
cursor: pointer;
|
||||
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,
|
||||
&:focus {
|
||||
@@ -99,11 +100,13 @@ p.buttons,
|
||||
margin-right: 1px;
|
||||
margin-left: 1px;
|
||||
padding: $btn-padding-vertical $btn-padding-horizontal-small;
|
||||
transition: border-color $transition-time ease-in-out,
|
||||
background-color $transition-time ease-in-out,
|
||||
color $transition-time ease-in-out;
|
||||
transition:
|
||||
border-color $transition-time ease-in-out,
|
||||
background-color $transition-time ease-in-out,
|
||||
color $transition-time ease-in-out;
|
||||
border: 1px solid;
|
||||
border-radius: $border-radius-base;
|
||||
font-size: $font-size-base;
|
||||
|
||||
&.icon {
|
||||
padding-left: 20px + $btn-padding-horizontal-small;
|
||||
@@ -180,7 +183,7 @@ p.buttons {
|
||||
|
||||
.query-columns {
|
||||
select {
|
||||
width: auto !important; // scss-lint:disable ImportantRule
|
||||
width: auto !important; // stylelint-disable-line declaration-no-important
|
||||
min-width: 130px;
|
||||
}
|
||||
|
||||
@@ -194,6 +197,7 @@ p.buttons {
|
||||
label {
|
||||
display: block;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
line-height: initial;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -210,7 +214,7 @@ p.buttons {
|
||||
margin-bottom: 4px;
|
||||
padding-right: 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -234,7 +238,11 @@ a[data-expands],
|
||||
vertical-align: top;
|
||||
cursor: pointer;
|
||||
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);
|
||||
|
||||
&.icon-only::before {
|
||||
content: none;
|
||||
}
|
||||
}
|
||||
|
||||
a[data-expands] {
|
||||
@@ -250,3 +258,8 @@ a[data-expands] {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a.icon-toggle-minus[data-expands],
|
||||
select[multiple="multiple"] + .toggle-multiselect {
|
||||
background-image: inline-svg("minus.svg", (path: (fill: $btn-default-icon-color)));
|
||||
}
|
||||
|
||||
@@ -45,6 +45,10 @@ table.cal {
|
||||
color: $gray-600;
|
||||
}
|
||||
|
||||
&.nwday {
|
||||
background: $table-bg-accent;
|
||||
}
|
||||
|
||||
&.today {
|
||||
background: $highlight-bg;
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
}
|
||||
|
||||
.debug {
|
||||
// scss-lint:disable ImportantRule
|
||||
// stylelint-disable declaration-no-important
|
||||
background: #00f !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
#main {
|
||||
@if $flexbox-layout {
|
||||
@if $css-grid-layout {
|
||||
display: grid;
|
||||
grid-template-rows: auto 1fr;
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
grid-template-areas:
|
||||
"sidebar content"
|
||||
"footer footer";
|
||||
grid-template-columns: auto 1fr;
|
||||
} @else {
|
||||
grid-template-areas:
|
||||
"content sidebar"
|
||||
"footer footer";
|
||||
grid-template-columns: 1fr auto;
|
||||
}
|
||||
} @else if $flexbox-layout {
|
||||
display: flex;
|
||||
} @else {
|
||||
@extend %clearfix;
|
||||
@@ -14,7 +29,9 @@
|
||||
#content {
|
||||
padding: $padding-side;
|
||||
|
||||
@if $flexbox-layout {
|
||||
@if $css-grid-layout {
|
||||
grid-area: content;
|
||||
} @else if $flexbox-layout {
|
||||
$side-space: $sidebar-width + $padding-side * 2;
|
||||
flex: 1 1 auto;
|
||||
width: calc(100% - #{$side-space});
|
||||
@@ -28,10 +45,30 @@
|
||||
// Sidebar
|
||||
// --------------------------------------------------
|
||||
|
||||
#main #sidebar {
|
||||
padding: $padding-side $sidebar-padding-horizontal;
|
||||
#sidebar {
|
||||
#main & {
|
||||
padding: $padding-side $sidebar-padding-horizontal;
|
||||
}
|
||||
|
||||
@if $flexbox-layout {
|
||||
#main.nosidebar & {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0 none;
|
||||
|
||||
@if $css-grid-layout {
|
||||
width: 0;
|
||||
} @else if $flexbox-layout {
|
||||
flex: 0 0 auto;
|
||||
} @else {
|
||||
width: 0;
|
||||
float: none;
|
||||
}
|
||||
}
|
||||
|
||||
@if $css-grid-layout {
|
||||
grid-area: sidebar;
|
||||
width: $sidebar-width-computed;
|
||||
} @else if $flexbox-layout {
|
||||
flex: 0 0 $sidebar-width-computed;
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
@@ -68,71 +105,103 @@
|
||||
}
|
||||
|
||||
ul {
|
||||
margin: 0 0 ($line-height-computed / 2);
|
||||
padding: 0;
|
||||
&:nth-child(n) {
|
||||
margin: 0 0 ($line-height-computed / 2);
|
||||
padding: 0;
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
margin-right: -($sidebar-padding-horizontal);
|
||||
} @else {
|
||||
margin-left: -($sidebar-padding-horizontal);
|
||||
@if $sidebar-position == "left" {
|
||||
margin-right: -($sidebar-padding-horizontal);
|
||||
}
|
||||
}
|
||||
|
||||
li {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
&:not(.watchers) {
|
||||
li {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
|
||||
> a:not(.icon-only) {
|
||||
display: block;
|
||||
padding: $sidebar-padding-vertical $sidebar-padding-horizontal;
|
||||
border: 1px solid transparent;
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
border-left-width: 3px;
|
||||
border-radius: $border-radius-large 0 0 $border-radius-large;
|
||||
} @else {
|
||||
border-right-width: 3px;
|
||||
border-radius: 0 $border-radius-large $border-radius-large 0;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: $sidebar-link-hover-bg;
|
||||
color: $sidebar-link-hover-text;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&.selected {
|
||||
border-color: $sidebar-link-active-border;
|
||||
background-color: $sidebar-link-active-bg;
|
||||
color: $sidebar-link-active-text;
|
||||
> a:not(.icon-only) {
|
||||
display: block;
|
||||
padding: $sidebar-padding-vertical $sidebar-padding-horizontal;
|
||||
border: 1px solid transparent;
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
margin-right: -1px;
|
||||
border-right-color: $body-bg;
|
||||
border-left-color: $sidebar-link-active-side;
|
||||
box-shadow: -3px 1px 2px rgba(0, 0, 0, .1);
|
||||
border-left-width: 3px;
|
||||
border-radius: $border-radius-large 0 0 $border-radius-large;
|
||||
} @else {
|
||||
margin-left: -1px;
|
||||
border-right-color: $sidebar-link-active-side;
|
||||
border-left-color: $body-bg;
|
||||
box-shadow: 3px 1px 2px rgba(0, 0, 0, .1);
|
||||
margin-left: -($sidebar-padding-horizontal);
|
||||
border-right-width: 3px;
|
||||
border-radius: 0 $border-radius-large $border-radius-large 0;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: $sidebar-link-hover-bg;
|
||||
color: $sidebar-link-hover-text;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&.selected {
|
||||
border-color: $sidebar-link-active-border;
|
||||
background-color: $sidebar-link-active-bg;
|
||||
color: $sidebar-link-active-text;
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
margin-right: -1px;
|
||||
border-right-color: $body-bg;
|
||||
border-left-color: $sidebar-link-active-side;
|
||||
box-shadow: -3px 1px 2px rgba(0, 0, 0, .1);
|
||||
} @else {
|
||||
margin-left: -($sidebar-padding-horizontal + 1px);
|
||||
border-right-color: $sidebar-link-active-side;
|
||||
border-left-color: $body-bg;
|
||||
box-shadow: 3px 1px 2px rgba(0, 0, 0, .1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#main.nosidebar #sidebar {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0 none;
|
||||
// Special treatment for anchor tags directly under sidebar tag
|
||||
> a {
|
||||
margin: $sidebar-padding-vertical $sidebar-padding-horizontal;
|
||||
|
||||
@if $flexbox-layout {
|
||||
flex: 0 0 auto;
|
||||
} @else {
|
||||
width: 0;
|
||||
float: none;
|
||||
@if $sidebar-position == "left" {
|
||||
margin-left: $sidebar-padding-horizontal + 3px;
|
||||
} @else {
|
||||
margin-right: $sidebar-padding-horizontal + 3px;
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -142,6 +211,10 @@
|
||||
border-top: 1px solid $gray-400;
|
||||
color: $gray-600;
|
||||
font-size: $font-size-small;
|
||||
|
||||
@if $css-grid-layout {
|
||||
grid-area: footer;
|
||||
}
|
||||
}
|
||||
|
||||
@if $fixed-layout {
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
.context-menu-selection {
|
||||
&,
|
||||
> td {
|
||||
background-color: $brand-primary !important; // scss-lint:disable ImportantRule
|
||||
color: $brand-text !important; // scss-lint:disable ImportantRule
|
||||
background-color: $brand-primary !important; // stylelint-disable-line declaration-no-important
|
||||
color: $brand-text !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
> ul,
|
||||
> ul > li > ul {
|
||||
@include nice-shadow(2);
|
||||
border: 0 none !important; // scss-lint:disable ImportantRule
|
||||
border: 0 none !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
|
||||
ul {
|
||||
|
||||
@@ -55,10 +55,11 @@
|
||||
}
|
||||
}
|
||||
|
||||
> a,
|
||||
> span {
|
||||
> * {
|
||||
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 {
|
||||
padding-left: 20px + $btn-padding-horizontal-small;
|
||||
|
||||
@@ -25,9 +25,9 @@ a.collapsible,
|
||||
height: 0;
|
||||
margin-right: 3px;
|
||||
transform: rotate(0);
|
||||
border-top: 6px solid;
|
||||
border-top: 6px solid;
|
||||
border-right: 4px solid transparent;
|
||||
border-left: 4px solid transparent;
|
||||
border-left: 4px solid transparent;
|
||||
vertical-align: middle;
|
||||
|
||||
@if $collapsible-animation-time > 0 {
|
||||
@@ -51,7 +51,7 @@ a.collapsible.collapsed,
|
||||
transition: max-height $collapsible-animation-time ease-out;
|
||||
|
||||
> div {
|
||||
display: block !important; // scss-lint:disable ImportantRule
|
||||
display: block !important; // stylelint-disable-line declaration-no-important
|
||||
visibility: visible;
|
||||
transition: visibility 0s 0s, opacity $collapsible-animation-time;
|
||||
opacity: 1;
|
||||
@@ -98,12 +98,14 @@ a.collapsible.collapsed,
|
||||
//
|
||||
|
||||
.hidden-for-sighted {
|
||||
position: absolute;
|
||||
top: auto;
|
||||
left: -10000px;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
overflow: hidden;
|
||||
// stylelint-disable declaration-no-important
|
||||
position: absolute !important;
|
||||
top: auto !important;
|
||||
left: -10000px !important;
|
||||
width: 1px !important;
|
||||
height: 1px !important;
|
||||
overflow: hidden !important;
|
||||
// stylelint-enable declaration-no-important
|
||||
}
|
||||
|
||||
|
||||
@@ -136,7 +138,7 @@ a.collapsible.collapsed,
|
||||
}
|
||||
|
||||
&:last-child,
|
||||
>:last-child {
|
||||
> :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
@@ -201,10 +203,15 @@ a.collapsible.collapsed,
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
> .icon-only {
|
||||
&::before {
|
||||
line-height: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
> .delete {
|
||||
float: right;
|
||||
opacity: $icon-opacity;
|
||||
vertical-align: middle;
|
||||
|
||||
&:hover {
|
||||
opacity: $icon-hover-opacity;
|
||||
@@ -212,10 +219,7 @@ a.collapsible.collapsed,
|
||||
}
|
||||
|
||||
img.gravatar {
|
||||
position: relative;
|
||||
top: 1px;
|
||||
margin-right: .5em;
|
||||
vertical-align: top;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -281,7 +285,7 @@ p.subtitle {
|
||||
}
|
||||
|
||||
&.ui-sortable-placeholder {
|
||||
visibility: visible !important; // scss-lint:disable ImportantRule
|
||||
visibility: visible !important; // stylelint-disable-line declaration-no-important
|
||||
outline: 1px dashed $highlight-border;
|
||||
background: $highlight-bg;
|
||||
}
|
||||
@@ -561,12 +565,22 @@ ul.projects {
|
||||
//
|
||||
|
||||
div#roadmap {
|
||||
article {
|
||||
margin-bottom: $line-height-computed;
|
||||
}
|
||||
|
||||
.related-issues {
|
||||
margin-bottom: $line-height-computed;
|
||||
|
||||
td.checkbox {
|
||||
display: none;
|
||||
}
|
||||
|
||||
td.assigned_to {
|
||||
width: 1px;
|
||||
padding-right: 0;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
||||
table.progress {
|
||||
@@ -580,6 +594,12 @@ div#roadmap {
|
||||
}
|
||||
}
|
||||
|
||||
h2,
|
||||
h3 {
|
||||
display: inline;
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
.wiki {
|
||||
h1 {
|
||||
&:first-child {
|
||||
@@ -847,6 +867,8 @@ div.table-list.boards {
|
||||
|
||||
.news-article {
|
||||
margin-bottom: $line-height-computed;
|
||||
padding-top: $line-height-computed;
|
||||
border-top: 1px solid $panel-border;
|
||||
|
||||
header {
|
||||
h3 {
|
||||
@@ -859,8 +881,12 @@ div.table-list.boards {
|
||||
}
|
||||
}
|
||||
|
||||
.author .user {
|
||||
font-weight: $font-weight-bold;
|
||||
.author {
|
||||
color: $gray-700;
|
||||
|
||||
.user {
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -912,6 +938,16 @@ div.table-list.boards {
|
||||
}
|
||||
}
|
||||
|
||||
.text-diff {
|
||||
.diff_out {
|
||||
background: $diff-out-bg;
|
||||
}
|
||||
|
||||
.diff_in {
|
||||
background: $diff-in-bg;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//== Repository view
|
||||
//
|
||||
|
||||
@@ -23,21 +23,21 @@
|
||||
line-height: $line-height-computed;
|
||||
}
|
||||
|
||||
>:last-child {
|
||||
> :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin flash($color, $background, $border, $link, $icon) {
|
||||
color: $color;
|
||||
background-color: $background;
|
||||
border-color: $border;
|
||||
background-color: $background;
|
||||
color: $color;
|
||||
|
||||
@if $icon == "true" {
|
||||
$icon: $fa-var-check;
|
||||
} @elseif $icon == "warning" {
|
||||
} @else if $icon == "warning" {
|
||||
$icon: $fa-var-warning;
|
||||
} @elseif $icon == "exclamation" {
|
||||
} @else if $icon == "exclamation" {
|
||||
$icon: $fa-var-exclamation-circle;
|
||||
}
|
||||
|
||||
@@ -70,6 +70,12 @@
|
||||
padding-left: $padding-large-horizontal;
|
||||
text-align: center;
|
||||
|
||||
&.nodata-left {
|
||||
&::before {
|
||||
float: left;
|
||||
}
|
||||
}
|
||||
|
||||
&::before {
|
||||
margin-left: 0;
|
||||
float: none;
|
||||
|
||||
@@ -7,6 +7,15 @@ form {
|
||||
padding: $table-condensed-cell-padding;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
> button,
|
||||
> input,
|
||||
> select {
|
||||
margin-right: 5px;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
}
|
||||
}
|
||||
|
||||
label {
|
||||
line-height: $input-height-base;
|
||||
vertical-align: top;
|
||||
@@ -26,6 +35,11 @@ form {
|
||||
}
|
||||
}
|
||||
|
||||
.add-filter label,
|
||||
.filter label {
|
||||
line-height: $input-height-base;
|
||||
}
|
||||
|
||||
.contextual > & {
|
||||
display: inline-block;
|
||||
line-height: $input-height-base;
|
||||
@@ -76,8 +90,9 @@ input[type="password"] {
|
||||
@extend %form-field;
|
||||
@include form-control-focus;
|
||||
@include placeholder;
|
||||
transition: border-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
transition:
|
||||
border-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
vertical-align: top;
|
||||
|
||||
&[disabled],
|
||||
@@ -101,7 +116,7 @@ textarea {
|
||||
}
|
||||
|
||||
input[type="search"] {
|
||||
-webkit-appearance: none;
|
||||
-webkit-appearance: none; // stylelint-disable-line property-no-vendor-prefix
|
||||
}
|
||||
|
||||
input[type="radio"],
|
||||
@@ -159,7 +174,7 @@ select {
|
||||
}
|
||||
|
||||
&.bool_cf {
|
||||
width: auto !important; // scss-lint:disable ImportantRule
|
||||
width: auto !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
}
|
||||
|
||||
@@ -170,7 +185,7 @@ select {
|
||||
|
||||
// Mozilla Firefox
|
||||
|
||||
@-moz-document url-prefix() {
|
||||
@-moz-document url-prefix("") {
|
||||
select {
|
||||
&[multiple] {
|
||||
padding: 0;
|
||||
@@ -380,7 +395,7 @@ label.block {
|
||||
//== Hack: align description edit icon with label
|
||||
//
|
||||
|
||||
label[for=issue_description] + a {
|
||||
label[for="issue_description"] + a {
|
||||
display: inline-block;
|
||||
margin-top: $input-padding-vertical + 1px;
|
||||
|
||||
@@ -558,7 +573,7 @@ label[for="closed"] {
|
||||
|
||||
#issue_is_private_wrap,
|
||||
#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;
|
||||
padding-left: 0;
|
||||
float: right;
|
||||
@@ -569,7 +584,7 @@ label[for="closed"] {
|
||||
}
|
||||
|
||||
label {
|
||||
display: inline-block !important; // scss-lint:disable ImportantRule
|
||||
display: inline-block !important; // stylelint-disable-line declaration-no-important
|
||||
margin-right: 0;
|
||||
padding-left: 0;
|
||||
}
|
||||
@@ -651,6 +666,7 @@ fieldset#filters {
|
||||
}
|
||||
|
||||
&.values {
|
||||
min-width: 130px;
|
||||
white-space: nowrap;
|
||||
|
||||
select {
|
||||
@@ -706,6 +722,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
|
||||
//
|
||||
|
||||
@@ -2,25 +2,109 @@
|
||||
// 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 {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
height: 16px;
|
||||
overflow: hidden;
|
||||
border: 1px solid $gray-400;
|
||||
border-left-width: 0;
|
||||
border: 1px solid $gray-500;
|
||||
text-align: center;
|
||||
|
||||
&[style*="background"] {
|
||||
background: $gray-200 !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
|
||||
&.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 {
|
||||
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 {
|
||||
@include text-overflow;
|
||||
width: 100%;
|
||||
height: 16px;
|
||||
line-height: 16px;
|
||||
}
|
||||
@@ -118,12 +202,20 @@
|
||||
.version-behind-schedule,
|
||||
.issue-behind-schedule {
|
||||
color: $brand-warning;
|
||||
|
||||
.context-menu-selection & {
|
||||
color: $brand-text;
|
||||
}
|
||||
}
|
||||
|
||||
.version-overdue,
|
||||
.issue-overdue,
|
||||
.project-overdue {
|
||||
color: $brand-danger;
|
||||
|
||||
.context-menu-selection & {
|
||||
color: $brand-text;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -137,17 +229,16 @@
|
||||
&:hover {
|
||||
z-index: 25;
|
||||
|
||||
.tip {
|
||||
span.tip {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.tip {
|
||||
span.tip {
|
||||
@include nice-shadow(3);
|
||||
display: none;
|
||||
position: absolute;
|
||||
top: 9px;
|
||||
left: 24px;
|
||||
top: 12px;
|
||||
width: 270px;
|
||||
padding: $padding-base-vertical;
|
||||
border: $tooltip-border-width solid $tooltip-border;
|
||||
@@ -158,9 +249,9 @@
|
||||
}
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
tr > td:last-child & {
|
||||
.tip {
|
||||
right: 2px;
|
||||
.list & {
|
||||
span.tip {
|
||||
right: 0;
|
||||
left: auto;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
// --------------------------------------------------
|
||||
|
||||
img.gravatar {
|
||||
position: relative;
|
||||
top: -.15em;
|
||||
overflow: hidden;
|
||||
border-radius: $border-radius-large;
|
||||
line-height: 1;
|
||||
@@ -11,8 +13,6 @@ img.gravatar {
|
||||
h2 &,
|
||||
h3 &,
|
||||
h4 & {
|
||||
position: relative;
|
||||
top: -1px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
@@ -22,10 +22,7 @@ img.gravatar {
|
||||
//
|
||||
|
||||
.username img.gravatar {
|
||||
position: relative;
|
||||
top: 1px;
|
||||
margin-right: .5em;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
//== Gravatar
|
||||
|
||||
@@ -52,7 +52,7 @@ table.list .buttons > a::before {
|
||||
white-space: nowrap;
|
||||
|
||||
@at-root a#{&} {
|
||||
// scss-lint:disable ImportantRule
|
||||
// stylelint-disable declaration-no-important
|
||||
display: inline;
|
||||
width: auto !important;
|
||||
height: auto !important;
|
||||
@@ -152,7 +152,15 @@ table.list .buttons > a::before {
|
||||
.icon-add-bullet::before { content: $fa-var-plus-circle; }
|
||||
.icon-shared::before { content: $fa-var-link; }
|
||||
.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
|
||||
//
|
||||
@@ -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
|
||||
//
|
||||
@@ -247,13 +271,6 @@ a.icon-del {
|
||||
%admin-icon {
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
width: 20px;
|
||||
margin-left: -(5px + 20px);
|
||||
color: $gray-700;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
&:hover::before {
|
||||
color: $gray-900;
|
||||
}
|
||||
@@ -273,6 +290,16 @@ a.icon-del {
|
||||
li {
|
||||
> a {
|
||||
padding-left: $sidebar-padding-horizontal + 5px + 20px;
|
||||
|
||||
&::before {
|
||||
display: inline-block;
|
||||
width: 20px;
|
||||
margin: 0;
|
||||
margin-left: -(5px + 20px);
|
||||
padding: 0;
|
||||
color: $gray-700;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -399,6 +426,7 @@ div.projects h3 {
|
||||
&::before {
|
||||
width: 1em;
|
||||
margin-right: .5em;
|
||||
transform: translateY(-.1em);
|
||||
color: $gray-700;
|
||||
text-align: center;
|
||||
}
|
||||
@@ -519,6 +547,11 @@ dt {
|
||||
|
||||
.sort {
|
||||
@extend %fa-icon-after;
|
||||
padding-left: 0;
|
||||
|
||||
&::before {
|
||||
content: none;
|
||||
}
|
||||
|
||||
&::after {
|
||||
margin-left: .2em;
|
||||
@@ -703,6 +736,7 @@ div.wiki {
|
||||
.other-formats {
|
||||
%other-format {
|
||||
@extend %fa-icon;
|
||||
background-image: none;
|
||||
|
||||
&::before {
|
||||
margin-right: .3em;
|
||||
|
||||
@@ -4,5 +4,5 @@
|
||||
|
||||
// ACI = AutoComplete Indicator
|
||||
%image-aci {
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAKBAMAAAAnY0GXAAAAD1BMVEUAAACzs7Ozs7Ozs7Ozs7NJvZFvAAAABHRSTlMA5kpJG2qUMwAAABtJREFUCNdjIBMYCkMRDIg4QhBuAUUhKCIPAAAlaQNk5qF21gAAAABJRU5ErkJggg==);
|
||||
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAKBAMAAAAnY0GXAAAAD1BMVEUAAACzs7Ozs7Ozs7Ozs7NJvZFvAAAABHRSTlMA5kpJG2qUMwAAABtJREFUCNdjIBMYCkMRDIg4QhBuAUUhKCIPAAAlaQNk5qF21gAAAABJRU5ErkJggg==");
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
position: relative;
|
||||
|
||||
> img.gravatar {
|
||||
top: 0;
|
||||
width: $issue-gravatar-size;
|
||||
height: $issue-gravatar-size;
|
||||
margin-right: 10px;
|
||||
@@ -42,6 +43,7 @@
|
||||
}
|
||||
|
||||
> img.gravatar {
|
||||
top: 0;
|
||||
width: $issue-gravatar-size;
|
||||
height: $issue-gravatar-size;
|
||||
margin-right: 10px;
|
||||
@@ -244,10 +246,16 @@
|
||||
}
|
||||
|
||||
div.attachments {
|
||||
margin: -$issue-padding;
|
||||
padding: $issue-padding;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border-top: 0;
|
||||
}
|
||||
|
||||
div.description + div.attachments {
|
||||
margin: $issue-padding (-$issue-padding) (-$issue-padding);
|
||||
padding: $issue-padding;
|
||||
border-top: 1px solid $issue-border;
|
||||
}
|
||||
}
|
||||
|
||||
div.fileover {
|
||||
@@ -327,6 +335,10 @@ div.thumbnails {
|
||||
.issues {
|
||||
margin: ($line-height-computed / 2) 0 0;
|
||||
|
||||
tr {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
tr:last-child > td {
|
||||
border-bottom: 0 none;
|
||||
}
|
||||
@@ -335,26 +347,17 @@ div.thumbnails {
|
||||
display: none;
|
||||
}
|
||||
|
||||
td.subject {
|
||||
padding-left: 0;
|
||||
td.done_ratio {
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
td.buttons {
|
||||
width: 3em;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#relations {
|
||||
td.checkbox {
|
||||
display: none;
|
||||
}
|
||||
|
||||
td.buttons {
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
|
||||
#new-relation-form {
|
||||
text-align: right;
|
||||
|
||||
@@ -520,6 +523,7 @@ div.thumbnails {
|
||||
}
|
||||
|
||||
> .gravatar {
|
||||
top: 0;
|
||||
margin-top: $line-height-computed - $bubble-gravatar-size;
|
||||
margin-left: -($bubble-gravatar-size + $bubble-gravatar-space + $bubble-padding-horizontal + 1px);
|
||||
float: left;
|
||||
@@ -666,6 +670,7 @@ span.private {
|
||||
|
||||
div.changeset {
|
||||
margin-top: $line-height-computed / 2 + 2px * 2;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
border: 1px solid $issue-border;
|
||||
border-radius: $panel-border-radius;
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
.jstElements {
|
||||
div.jstElements {
|
||||
@extend %clearfix;
|
||||
line-height: normal;
|
||||
|
||||
@@ -98,20 +98,13 @@
|
||||
button {
|
||||
margin-right: 2px;
|
||||
margin-bottom: 4px;
|
||||
box-shadow: none;
|
||||
vertical-align: top;
|
||||
}
|
||||
}
|
||||
|
||||
.jstElements {
|
||||
%jstb-icon {
|
||||
@include fa-icon;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
opacity: 1;
|
||||
background: transparent;
|
||||
background-image: none;
|
||||
background-color: transparent;
|
||||
box-shadow: none;
|
||||
color: $gray-800;
|
||||
vertical-align: top;
|
||||
|
||||
&::before {
|
||||
text-align: center;
|
||||
@@ -124,6 +117,12 @@
|
||||
}
|
||||
}
|
||||
|
||||
%jstb-icon {
|
||||
@include fa-icon;
|
||||
background: transparent;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.jstb_strong {
|
||||
@extend %jstb-icon;
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@ table.list {
|
||||
padding: $table-cell-padding;
|
||||
border: 2px solid $table-border-color;
|
||||
border-width: $table-list-header-border;
|
||||
background-color: $body-bg;
|
||||
color: $gray-700;
|
||||
vertical-align: bottom;
|
||||
|
||||
@@ -161,16 +162,15 @@ tr.project {
|
||||
color: $gray-600;
|
||||
}
|
||||
|
||||
&.idnt .name span {
|
||||
padding-left: 16px;
|
||||
&.idnt td.name {
|
||||
background-image: inline-svg("chevron-right.svg", (path: (fill: $gray-600)));
|
||||
background-repeat: no-repeat;
|
||||
background-position: -5px 50%;
|
||||
}
|
||||
|
||||
@for $i from 1 through 9 {
|
||||
&.idnt-#{$i} .name {
|
||||
padding-left: $table-cell-padding + 16px * ($i - 1);
|
||||
&.idnt-#{$i} td.name {
|
||||
padding-left: $table-cell-padding + 16px * $i;
|
||||
background-position: ($table-cell-padding + 16px * ($i - 1) - 3px) 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -195,13 +195,6 @@ tr.issue {
|
||||
}
|
||||
}
|
||||
|
||||
&.idnt .subject a {
|
||||
padding-left: 10px;
|
||||
background-image: inline-svg("chevron-right.svg", (path: (fill: $gray-600)));
|
||||
background-repeat: no-repeat;
|
||||
background-position: -5px 0;
|
||||
}
|
||||
|
||||
.controller-issues.action-index & {
|
||||
&.assigned-to-me {
|
||||
.assigned_to,
|
||||
@@ -213,18 +206,41 @@ tr.issue {
|
||||
}
|
||||
}
|
||||
|
||||
&.idnt td.subject {
|
||||
background-image: inline-svg("chevron-right.svg", (path: (fill: $gray-600)));
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
&.overdue td.due_date {
|
||||
color: $brand-danger;
|
||||
}
|
||||
|
||||
@for $i from 1 through 9 {
|
||||
&.idnt-#{$i} .subject {
|
||||
padding-left: $table-cell-padding + 16px * ($i - 1);
|
||||
&.idnt-#{$i} td.subject {
|
||||
padding-left: $table-cell-padding + 16px * $i;
|
||||
background-position: ($table-cell-padding + 16px * ($i - 1) - 3px) 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.issues {
|
||||
.block_column,
|
||||
.description,
|
||||
.last_notes {
|
||||
padding: $table-cell-padding;
|
||||
padding: 0;
|
||||
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) {
|
||||
> .wiki {
|
||||
@@ -233,10 +249,6 @@ tr.issue {
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
|
||||
pre {
|
||||
white-space: normal;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -264,6 +276,26 @@ td.center {
|
||||
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 {
|
||||
font-style: italic;
|
||||
}
|
||||
@@ -388,7 +420,7 @@ tr.entry {
|
||||
right: 5px;
|
||||
bottom: 0;
|
||||
left: 5px;
|
||||
height: calc(50% - 2px/2);
|
||||
height: calc(50% - 2px / 2);
|
||||
transform: rotate(-4deg);
|
||||
transition: border-color $transition-time;
|
||||
border-top: 2px solid rgba($tracker-default-text, .95);
|
||||
@@ -443,18 +475,6 @@ tr.group {
|
||||
&:hover .toggle-all {
|
||||
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 {
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
#login-form {
|
||||
box-sizing: border-box;
|
||||
margin: $line-height-computed * 2 auto;
|
||||
margin: $line-height-computed * 2 auto $line-height-computed;
|
||||
|
||||
label,
|
||||
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
|
||||
// https://github.com/HolonGlobe/redmine_backlogs
|
||||
@@ -158,6 +200,87 @@
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Redmine Agile
|
||||
// https://www.redmineup.com/pages/plugins/agile
|
||||
// --------------------------------------------------
|
||||
|
||||
.controller-agile_charts #main {
|
||||
@if $css-grid-layout {
|
||||
> div:not(#content):not(#sidebar) {
|
||||
grid-area: footer;
|
||||
}
|
||||
} @else if $flexbox-layout {
|
||||
flex-wrap: wrap;
|
||||
|
||||
> #footer {
|
||||
flex: 1 0 auto;
|
||||
order: 3;
|
||||
}
|
||||
}
|
||||
|
||||
// Page layout on Agile charts is broken, and with "Go to top" link
|
||||
// from https://github.com/alphanodes/additionals plugin enabled
|
||||
// the chart expands and resize event is triggered indefinitely.
|
||||
// Hiding the "Go to top" link fixes this issue.
|
||||
.gototop {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Redmine Tags
|
||||
// https://www.redmineup.com/pages/plugins/tags
|
||||
// --------------------------------------------------
|
||||
|
||||
.select2 {
|
||||
.filter .values & {
|
||||
min-width: 180px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
&.select2-container.select2-container--default {
|
||||
.select2-selection--multiple {
|
||||
line-height: $line-height-base;
|
||||
|
||||
.select2-selection__rendered {
|
||||
padding: 0 3px 3px;
|
||||
}
|
||||
|
||||
.select2-selection__choice {
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
.select2-search--inline {
|
||||
input {
|
||||
height: auto;
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
line-height: inherit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.select2-selection {
|
||||
transition:
|
||||
border-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
border-color: $input-border;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||
}
|
||||
|
||||
&.select2-container--focus {
|
||||
.select2-selection {
|
||||
border-color: rgba($input-border-focus, $input-border-focus-alpha);
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075), 0 0 0 2px rgba($input-border-focus, $input-shadow-focus-alpha);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Redmine Checklists
|
||||
// https://www.redmineup.com/pages/plugins/checklists
|
||||
@@ -178,6 +301,65 @@
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Redmine custom menu
|
||||
// http://rmplus.pro/en/redmine/plugins/custom_menu
|
||||
// --------------------------------------------------
|
||||
|
||||
#top-menu {
|
||||
.cm-menu-header {
|
||||
> li {
|
||||
margin: 0;
|
||||
|
||||
> a,
|
||||
> .title {
|
||||
line-height: $input-height-base;
|
||||
}
|
||||
|
||||
> .cm-menu-divider {
|
||||
height: 18px;
|
||||
margin: 5px 4px 0 5px;
|
||||
border-top: 0;
|
||||
border-left: 1px solid;
|
||||
opacity: .3;
|
||||
}
|
||||
}
|
||||
|
||||
.drdn-trigger {
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown {
|
||||
.dropdown-menu > li a:hover,
|
||||
.dropdown-menu > li a:focus,
|
||||
.dropdown-submenu:hover a,
|
||||
.dropdown-submenu:focus a {
|
||||
background-color: $brand-primary;
|
||||
color: $brand-text;
|
||||
}
|
||||
}
|
||||
|
||||
.rm-icon {
|
||||
&::before {
|
||||
font-size: $fa-font-size-base;
|
||||
}
|
||||
}
|
||||
|
||||
#quick-search {
|
||||
margin: 0;
|
||||
|
||||
form > input {
|
||||
width: $quick-search-width / 2;
|
||||
min-width: $quick-search-width / 2;
|
||||
}
|
||||
|
||||
a {
|
||||
line-height: inherit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Redmine CRM People
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
#main {
|
||||
display: block;
|
||||
overflow: visible !important; // scss-lint:disable ImportantRule
|
||||
overflow: visible !important; // stylelint-disable-line declaration-no-important
|
||||
background: $white;
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
overflow: visible !important; // scss-lint:disable ImportantRule
|
||||
overflow: visible !important; // stylelint-disable-line declaration-no-important
|
||||
border: 0;
|
||||
background: $white;
|
||||
}
|
||||
@@ -42,7 +42,7 @@
|
||||
}
|
||||
|
||||
a {
|
||||
// scss-lint:disable ImportantRule
|
||||
// stylelint-disable declaration-no-important
|
||||
padding: 0 !important;
|
||||
background-color: transparent !important;
|
||||
color: $black !important;
|
||||
|
||||
@@ -36,15 +36,15 @@ table.progress {
|
||||
}
|
||||
|
||||
&.done {
|
||||
background-color: $progress-bar-bg !important; // scss-lint:disable ImportantRule
|
||||
background-color: $progress-bar-bg !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
|
||||
&.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 {
|
||||
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 {
|
||||
@media screen and (max-width: $redmine-responsive-max) {
|
||||
.flyout-menu + div {
|
||||
@@ -40,11 +44,14 @@
|
||||
}
|
||||
|
||||
.drdn-trigger {
|
||||
@include text-overflow;
|
||||
display: block;
|
||||
height: $responsive-header-height;
|
||||
padding: 0;
|
||||
background-color: transparent;
|
||||
box-shadow: none;
|
||||
font-size: $font-size-large;
|
||||
font-weight: $font-weight-normal;
|
||||
line-height: $responsive-header-height;
|
||||
|
||||
&::before {
|
||||
@@ -66,6 +73,7 @@
|
||||
|
||||
.drdn-content {
|
||||
top: $responsive-header-height;
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -84,6 +92,10 @@
|
||||
background-color: $flyout-menu-bg;
|
||||
color: $flyout-menu-text;
|
||||
|
||||
.search-magnifier {
|
||||
left: 18px;
|
||||
}
|
||||
|
||||
&__search {
|
||||
height: $responsive-header-height;
|
||||
padding: ($padding-side / 2);
|
||||
@@ -95,11 +107,27 @@
|
||||
}
|
||||
}
|
||||
|
||||
&__avatar {
|
||||
img.gravatar {
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $flyout-menu-link;
|
||||
|
||||
&::before,
|
||||
span {
|
||||
color: inherit !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
}
|
||||
|
||||
&.selected {
|
||||
background-color: $flyout-menu-link-active-bg;
|
||||
color: $flyout-menu-link-active;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -114,20 +142,44 @@
|
||||
a {
|
||||
background-position: 8px center;
|
||||
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
&.additionals {
|
||||
padding-left: 32px !important; // stylelint-disable-line declaration-no-important
|
||||
|
||||
&::before {
|
||||
color: $flyout-menu-link;
|
||||
margin-right: $padding-small-vertical;
|
||||
font-size: $fa-font-size-base;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.selected {
|
||||
background-color: $body-bg;
|
||||
color: $text-color;
|
||||
#watchers {
|
||||
.contextual {
|
||||
padding-top: $line-height-computed / 2;
|
||||
padding-bottom: $line-height-computed / 2;
|
||||
}
|
||||
|
||||
&::before {
|
||||
color: $text-color;
|
||||
.watchers {
|
||||
li {
|
||||
margin: ($line-height-computed / 2) 0 0;
|
||||
padding: 0;
|
||||
|
||||
img.gravatar {
|
||||
top: 0;
|
||||
}
|
||||
|
||||
a {
|
||||
height: auto;
|
||||
border-top: 0;
|
||||
line-height: initial;
|
||||
}
|
||||
|
||||
.delete {
|
||||
flex: 0 0 24px;
|
||||
margin-left: auto;
|
||||
float: none;
|
||||
text-align: center;
|
||||
text-overflow: initial;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -224,21 +276,40 @@
|
||||
|
||||
label {
|
||||
display: inline-block;
|
||||
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
margin-top: $check-input-margin-btn-v;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#content > .contextual > span {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
#content > .contextual > a,
|
||||
#content > .contextual .drdn,
|
||||
p.buttons a {
|
||||
display: inline-block;
|
||||
margin: 0 2px 5px 0;
|
||||
float: none;
|
||||
}
|
||||
|
||||
// For Redmine 4.0+
|
||||
#content > .contextual .drdn {
|
||||
padding: 0;
|
||||
border: 0;
|
||||
|
||||
.drdn-trigger {
|
||||
padding: ($btn-padding-vertical * 2) $btn-padding-horizontal;
|
||||
padding: $btn-padding-vertical $btn-padding-horizontal;
|
||||
}
|
||||
|
||||
.drdn-items {
|
||||
a {
|
||||
margin: 3px 0 0;
|
||||
padding-top: $btn-padding-vertical;
|
||||
padding-bottom: $btn-padding-vertical;
|
||||
|
||||
&:first-child {
|
||||
margin-top: 0;
|
||||
@@ -261,5 +332,35 @@
|
||||
float: none;
|
||||
}
|
||||
}
|
||||
|
||||
#issue-changesets {
|
||||
div.changeset {
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
|
||||
#admin-index > #admin-menu li {
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Tweaks for smartphones, touchscreens
|
||||
@media (hover: none) and (pointer: coarse) {
|
||||
.mobile-toggle-button::after {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.query-columns {
|
||||
span {
|
||||
display: block;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
}
|
||||
|
||||
.buttons {
|
||||
input[type="button"] {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,6 +64,7 @@
|
||||
|
||||
@if $use-gravatars {
|
||||
.gravatar {
|
||||
top: 0;
|
||||
margin-top: -2px;
|
||||
margin-right: $activity-avatar-space;
|
||||
float: left;
|
||||
@@ -104,10 +105,17 @@
|
||||
input,
|
||||
select {
|
||||
margin-right: 5px;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
}
|
||||
|
||||
label {
|
||||
@include check-inline;
|
||||
line-height: $input-height-base;
|
||||
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
margin-top: $check-input-margin-btn-v;
|
||||
}
|
||||
}
|
||||
|
||||
p:last-child {
|
||||
|
||||
@@ -56,19 +56,19 @@ $tabs-height: $line-height-computed + $tab-padding-vertical * 2 + 1px + 1px;
|
||||
top: 0;
|
||||
right: 0;
|
||||
width: $tabs-buttons-width;
|
||||
border-bottom: 1px solid $tab-border;
|
||||
background-color: $body-bg;
|
||||
|
||||
> button {
|
||||
width: 50%;
|
||||
height: $tabs-height;
|
||||
height: $tabs-height - 1px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
float: left;
|
||||
transition: opacity $transition-time;
|
||||
border: 0 none;
|
||||
border-bottom: 1px solid $tab-border;
|
||||
border-radius: 0;
|
||||
opacity: .8;
|
||||
opacity: $icon-opacity;
|
||||
background-color: $body-bg;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
@@ -76,12 +76,16 @@ $tabs-height: $line-height-computed + $tab-padding-vertical * 2 + 1px + 1px;
|
||||
|
||||
&:hover,
|
||||
&:active {
|
||||
opacity: 1;
|
||||
opacity: $icon-hover-opacity;
|
||||
}
|
||||
|
||||
&:active {
|
||||
background-color: $tab-hover-bg;
|
||||
}
|
||||
|
||||
&.disabled {
|
||||
opacity: $icon-opacity / 2;
|
||||
}
|
||||
}
|
||||
|
||||
.tab-left {
|
||||
@@ -163,7 +167,7 @@ div.tabs:not(#main-menu) {
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
|
||||
label[for=principal_search] {
|
||||
label[for="principal_search"] {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,14 +67,15 @@
|
||||
}
|
||||
|
||||
ul {
|
||||
@include clearfix;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
li {
|
||||
display: inline;
|
||||
margin: 0 .5em 0 0;
|
||||
padding: 0;
|
||||
float: left;
|
||||
list-style-type: none;
|
||||
white-space: nowrap;
|
||||
}
|
||||
@@ -154,10 +155,12 @@
|
||||
}
|
||||
|
||||
#quick-search {
|
||||
margin-top: floor(($header-title-line-height + $header-padding-vertical * 2 - $input-height-base) / 2) - 1px;
|
||||
margin-right: $header-padding-horizontal;
|
||||
float: right;
|
||||
color: $header-text;
|
||||
#header & {
|
||||
margin-top: floor(($header-title-line-height + $header-padding-vertical * 2 - $input-height-base) / 2) - 1px;
|
||||
margin-right: $header-padding-horizontal;
|
||||
float: right;
|
||||
color: $header-text;
|
||||
}
|
||||
|
||||
> * {
|
||||
vertical-align: top;
|
||||
@@ -165,10 +168,10 @@
|
||||
|
||||
form {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
input {
|
||||
width: $quick-search-width;
|
||||
input {
|
||||
width: $quick-search-width;
|
||||
}
|
||||
}
|
||||
|
||||
> form > input,
|
||||
@@ -409,18 +412,19 @@
|
||||
}
|
||||
|
||||
.tabs-buttons {
|
||||
display: none !important; // scss-lint:disable ImportantRule
|
||||
display: none !important; // stylelint-disable-line declaration-no-important
|
||||
padding-left: 0;
|
||||
border-color: $main-menu-border;
|
||||
background-color: $main-menu-bg;
|
||||
|
||||
> button {
|
||||
box-sizing: border-box;
|
||||
height: $tabs-height;
|
||||
height: $tabs-height - 1px;
|
||||
background-color: $main-menu-bg;
|
||||
}
|
||||
}
|
||||
|
||||
ul + .tabs-buttons {
|
||||
display: block !important; // scss-lint:disable ImportantRule
|
||||
display: block !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,16 +23,18 @@
|
||||
}
|
||||
}
|
||||
|
||||
.controller-wiki .wiki > .preview,
|
||||
.wiki.wiki-preview {
|
||||
font-size: $wiki-font-size;
|
||||
.controller-wiki {
|
||||
.wiki > .preview,
|
||||
.wiki.wiki-preview {
|
||||
font-size: $wiki-font-size;
|
||||
}
|
||||
}
|
||||
|
||||
div.wiki {
|
||||
color: $wiki-text;
|
||||
line-height: $wiki-line-height;
|
||||
|
||||
//scss-lint:disable SingleLinePerSelector
|
||||
// stylelint-disable selector-list-comma-newline-after
|
||||
h1, .h1,
|
||||
h2, .h2,
|
||||
h3, .h3,
|
||||
@@ -109,16 +111,16 @@ div.wiki {
|
||||
}
|
||||
}
|
||||
|
||||
>:last-child {
|
||||
> :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
>:first-child {
|
||||
> :first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
>:last-child {
|
||||
> :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
@@ -177,7 +179,8 @@ div.wiki {
|
||||
border: 1px solid $table-border-color;
|
||||
}
|
||||
|
||||
.noborder {
|
||||
.noborder,
|
||||
.wiki-class-noborder {
|
||||
border: 0 none;
|
||||
|
||||
td,
|
||||
@@ -193,7 +196,7 @@ div.wiki {
|
||||
code {
|
||||
padding: .2em .33em;
|
||||
border-radius: $border-radius-base;
|
||||
background-color: rgba($black, .04);
|
||||
background-color: rgba($gray-500, .3);
|
||||
font-size: $font-size-small;
|
||||
}
|
||||
|
||||
@@ -203,9 +206,9 @@ div.wiki {
|
||||
padding: 4px 8px;
|
||||
overflow-x: auto;
|
||||
overflow-y: hidden;
|
||||
border: 1px solid rgba($black, .068);
|
||||
border: 1px solid rgba($gray-500, .45);
|
||||
border-radius: $border-radius-base;
|
||||
background-color: rgba($black, .03);
|
||||
background-color: rgba($gray-500, .15);
|
||||
font-size: $font-size-small;
|
||||
|
||||
code {
|
||||
@@ -272,7 +275,7 @@ div.wiki {
|
||||
}
|
||||
|
||||
li {
|
||||
// scss-lint:disable SelectorDepth
|
||||
// stylelint-disable selector-max-compound-selectors
|
||||
margin: 0;
|
||||
|
||||
li {
|
||||
@@ -316,9 +319,9 @@ h6 {
|
||||
position: relative;
|
||||
top: -(1em - $font-size-small);
|
||||
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;
|
||||
text-decoration: none !important; // scss-lint:disable ImportantRule
|
||||
text-decoration: none !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
|
||||
&:hover {
|
||||
@@ -341,7 +344,7 @@ p.footnote {
|
||||
content: "";
|
||||
display: block;
|
||||
width: 300px;
|
||||
margin-top: $line-height-computed;
|
||||
margin-top: $line-height-computed;
|
||||
padding-top: $line-height-computed / 2;
|
||||
border-top: 1px solid $gray-400;
|
||||
}
|
||||
@@ -351,6 +354,16 @@ p.footnote {
|
||||
}
|
||||
}
|
||||
|
||||
.ltr,
|
||||
.wiki-class-ltr {
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
.rtl,
|
||||
.wiki-class-rtl {
|
||||
direction: rtl;
|
||||
}
|
||||
|
||||
.preview {
|
||||
margin-top: $line-height-computed;
|
||||
padding: $padding-wiki;
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
@if $enable-sidebar-toggler {
|
||||
$toggler-position-v: 1px;
|
||||
$toggler-position-h: -3px;
|
||||
|
||||
#main {
|
||||
position: relative;
|
||||
}
|
||||
@@ -35,7 +32,7 @@
|
||||
.sidebar-toggler {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: $toggler-position-v;
|
||||
top: 1px;
|
||||
width: 14px;
|
||||
height: 16px;
|
||||
border: 2px solid $gray-700;
|
||||
@@ -56,11 +53,23 @@
|
||||
}
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
left: $toggler-position-h;
|
||||
left: 0;
|
||||
background-image: inline-svg("chevron-left.svg", (path: (fill: $gray-700)));
|
||||
|
||||
@if not $fixed-layout {
|
||||
border-left: 0;
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
} @else {
|
||||
right: $toggler-position-h;
|
||||
right: 0;
|
||||
background-image: inline-svg("chevron-right.svg", (path: (fill: $gray-700)));
|
||||
|
||||
@if not $fixed-layout {
|
||||
border-right: 0;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
&.sidebar-hidden {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
// Button sizes
|
||||
@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
|
||||
padding: $padding-vertical $padding-horizontal;
|
||||
border-radius: $border-radius;
|
||||
font-size: $font-size;
|
||||
line-height: $line-height;
|
||||
border-radius: $border-radius;
|
||||
}
|
||||
|
||||
@mixin button-variant($color, $bg, $border) {
|
||||
|
||||
@@ -2,6 +2,6 @@
|
||||
|
||||
@mixin center-block() {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
@@ -44,9 +44,9 @@
|
||||
@extend %clearfix;
|
||||
position: relative;
|
||||
padding-left: $check-input-gutter;
|
||||
font-weight: $font-weight-normal;
|
||||
line-height: $line-height-base;
|
||||
text-align: left;
|
||||
font-weight: $font-weight-normal;
|
||||
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
|
||||
@@ -3,12 +3,12 @@
|
||||
|
||||
@mixin img-retina($file-2x, $width-1x, $height-1x) {
|
||||
@media
|
||||
only screen and (-webkit-min-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 (min-device-pixel-ratio: 2),
|
||||
only screen and (min-resolution: 192dpi),
|
||||
only screen and (min-resolution: 2dppx) {
|
||||
only screen and (-webkit-min-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 (min-device-pixel-ratio: 2),
|
||||
only screen and (min-resolution: 192dpi),
|
||||
only screen and (min-resolution: 2dppx) {
|
||||
background-image: url("#{$file-2x}");
|
||||
background-size: $width-1x $height-1x;
|
||||
}
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
|
||||
@if ($depth == 1) {
|
||||
$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);
|
||||
} @elseif ($depth == 3) {
|
||||
} @else if ($depth == 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);
|
||||
} @elseif ($depth == 5) {
|
||||
} @else if ($depth == 5) {
|
||||
$shadow: 0 20px 32px -2px rgba(#000, .25), 0 4px 12px rgba(#000, .3);
|
||||
}
|
||||
|
||||
|
||||
@@ -67,8 +67,9 @@ input.editor,
|
||||
@include placeholder;
|
||||
height: $input-height-base;
|
||||
padding: $input-padding-vertical $input-padding-horizontal;
|
||||
transition: border-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
transition:
|
||||
border-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
border: 1px solid $input-border;
|
||||
border-radius: $input-border-radius;
|
||||
background-color: $input-bg;
|
||||
@@ -91,8 +92,9 @@ button.ui-multiselect {
|
||||
height: $input-height-base;
|
||||
padding: $input-padding-vertical $input-padding-horizontal;
|
||||
overflow: hidden;
|
||||
transition: border-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
transition:
|
||||
border-color $transition-time ease-in-out,
|
||||
box-shadow $transition-time ease-in-out;
|
||||
border: 1px solid $input-border;
|
||||
background: $input-bg;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||
@@ -254,7 +256,7 @@ ul.ui-sortable {
|
||||
.ui-tooltip {
|
||||
.ui-tooltip-content {
|
||||
hr {
|
||||
margin-top: $line-height-computed / 2;
|
||||
margin-top: $line-height-computed / 2;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
border: 0;
|
||||
border-top: 1px solid $hr-border;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// scss-lint:disable Comment
|
||||
// stylelint-disable comment-whitespace-inside, no-duplicate-selectors
|
||||
@import "../common";
|
||||
|
||||
/*
|
||||
@@ -66,7 +66,7 @@
|
||||
----------------------------------*/
|
||||
|
||||
.ui-state-disabled {
|
||||
cursor: default !important; // scss-lint:disable ImportantRule
|
||||
cursor: default !important; // stylelint-disable-line declaration-no-important
|
||||
}
|
||||
|
||||
/* Icons
|
||||
@@ -631,7 +631,7 @@
|
||||
}
|
||||
|
||||
.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 {
|
||||
@@ -734,7 +734,7 @@
|
||||
overflow: visible;
|
||||
zoom: 1;
|
||||
text-align: center;
|
||||
text-decoration: none !important; // scss-lint:disable ImportantRule
|
||||
text-decoration: none !important; // stylelint-disable-line declaration-no-important
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
@@ -1007,7 +1007,7 @@ button.ui-button::-moz-focus-inner {
|
||||
padding: 0;
|
||||
float: left;
|
||||
list-style: none;
|
||||
border-bottom: 0 !important; // scss-lint:disable ImportantRule
|
||||
border-bottom: 0 !important; // stylelint-disable-line declaration-no-important
|
||||
white-space: nowrap;
|
||||
|
||||
a {
|
||||
@@ -1048,7 +1048,7 @@ button.ui-button::-moz-focus-inner {
|
||||
}
|
||||
|
||||
.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 {
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
|
||||
.ui-multiselect-single .ui-multiselect-checkboxes {
|
||||
input {
|
||||
position: absolute !important; // scss-lint:disable ImportantRule
|
||||
top: auto !important; // scss-lint:disable ImportantRule
|
||||
position: absolute !important; // stylelint-disable-line declaration-no-important
|
||||
top: auto !important; // stylelint-disable-line declaration-no-important
|
||||
left: -9999px;
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
.ui-tooltip-tip {
|
||||
border-color: $tooltip-border;
|
||||
background-color: $tooltip-bg;
|
||||
}
|
||||
|
||||
.ui-tooltip-tip {
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
border: 0 none;
|
||||
border-color: $tooltip-border;
|
||||
background: transparent;
|
||||
background-color: $tooltip-bg;
|
||||
}
|
||||
|
||||
@@ -189,8 +189,9 @@ $story-sp-input-width: 50px;
|
||||
|
||||
&:focus {
|
||||
border-color: lighten($header-bg, 25%);
|
||||
box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2),
|
||||
0 0 0 1px lighten($header-bg, 25%);
|
||||
box-shadow:
|
||||
inset 0 1px 3px rgba(0, 0, 0, .2),
|
||||
0 0 0 1px lighten($header-bg, 25%);
|
||||
color: $gray-950;
|
||||
}
|
||||
}
|
||||
@@ -279,7 +280,7 @@ $story-sp-input-width: 50px;
|
||||
$name-width-minus: $header-right-width-wider + 35px;
|
||||
|
||||
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;
|
||||
margin-left: $header-line-height - 2px;
|
||||
float: left;
|
||||
@@ -592,8 +593,9 @@ $story-sp-input-width: 50px;
|
||||
|
||||
&:focus {
|
||||
border-color: darken($highlight-border, 15%);
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075),
|
||||
0 0 5px rgba(darken($highlight-border, 15%), .5);
|
||||
box-shadow:
|
||||
inset 0 1px 2px rgba(0, 0, 0, .075),
|
||||
0 0 5px rgba(darken($highlight-border, 15%), .5);
|
||||
color: $gray-950;
|
||||
}
|
||||
}
|
||||
@@ -643,7 +645,7 @@ $story-sp-input-width: 50px;
|
||||
&.subject {
|
||||
$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;
|
||||
float: left;
|
||||
overflow: auto;
|
||||
@@ -755,9 +757,10 @@ $story-sp-input-width: 50px;
|
||||
@include button-size($input-padding-vertical, $input-padding-horizontal, $font-size-base, $line-height-base, $border-radius-base);
|
||||
display: inline-block;
|
||||
margin-bottom: 0;
|
||||
transition: background-color ease-in-out .07s,
|
||||
border-color ease-in-out .07s,
|
||||
box-shadow ease-in-out .07s;
|
||||
transition:
|
||||
background-color ease-in-out .07s,
|
||||
border-color ease-in-out .07s,
|
||||
box-shadow ease-in-out .07s;
|
||||
border: 1px solid;
|
||||
font-weight: $btn-font-weight;
|
||||
text-align: center;
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user