mirror of
https://github.com/discourse/discourse.git
synced 2025-02-11 13:55:07 +00:00
* Add missing icons to set * Revert FA5 revert This reverts commit 42572ff * use new SVG syntax in locales * Noscript page changes (remove login button, center "powered by" footer text) * Cast wider net for SVG icons in settings - include any _icon setting for SVG registry (offers better support for plugin settings) - let themes store multiple pipe-delimited icons in a setting - also replaces broken onebox image icon with SVG reference in cooked post processor * interpolate icons in locales * Fix composer whisper icon alignment * Add support for stacked icons * SECURITY: enforce hostname to match discourse hostname This ensures that the hostname rails uses for various helpers always matches the Discourse hostname * load SVG sprite with pre-initializers * FIX: enable caching on SVG sprites * PERF: use JSONP for SVG sprites so they are served from CDN This avoids needing to deal with CORS for loading of the SVG Note, added the svg- prefix to the filename so we can quickly tell in dev tools what the file is * Add missing SVG sprite JSONP script to CSP * Upgrade to FA 5.5.0 * Add support for all FA4.7 icons - adds complete frontend and backend for renamed FA4.7 icons - improves performance of SvgSprite.bundle and SvgSprite.all_icons * Fix group avatar flair preview - adds an endpoint at /svg-sprites/search/:keyword - adds frontend ajax call that pulls icon in avatar flair preview even when it is not in subset * Remove FA 4.7 font files
282 lines
3.9 KiB
SCSS
282 lines
3.9 KiB
SCSS
// Desktop
|
|
// global styles that apply to the Discourse application specifically
|
|
// BEWARE: changing these styles implies they take effect anywhere they are seen
|
|
// throughout the Discourse application
|
|
|
|
// Base Elements
|
|
body.widget-dragging {
|
|
cursor: ns-resize;
|
|
}
|
|
|
|
// Common classes
|
|
.boxed {
|
|
height: 100%;
|
|
}
|
|
|
|
.topic-statuses {
|
|
float: left;
|
|
padding: 0;
|
|
|
|
.topic-status {
|
|
padding: 0 2px 0 0;
|
|
margin: 0;
|
|
line-height: $line-height-small;
|
|
|
|
.d-icon {
|
|
font-size: $font-down-1;
|
|
}
|
|
}
|
|
|
|
.d-icon-envelope {
|
|
color: $danger;
|
|
}
|
|
}
|
|
|
|
.form-vertical {
|
|
.control-group {
|
|
margin-bottom: 24px;
|
|
}
|
|
}
|
|
|
|
/***********************/
|
|
/* bootstrap carryover */
|
|
/***********************/
|
|
code,
|
|
pre {
|
|
font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono",
|
|
"DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
|
}
|
|
|
|
// this removes the unwanted top margin on a paragraph under a heading
|
|
h1,
|
|
h2,
|
|
h3,
|
|
h4,
|
|
h5,
|
|
h6 {
|
|
+ p {
|
|
margin-top: 0;
|
|
}
|
|
}
|
|
|
|
form {
|
|
margin: 0 0 18px;
|
|
}
|
|
|
|
label,
|
|
input,
|
|
button,
|
|
select,
|
|
textarea {
|
|
font-size: $font-0;
|
|
font-weight: normal;
|
|
line-height: $line-height-medium;
|
|
}
|
|
|
|
select,
|
|
textarea {
|
|
display: inline-block;
|
|
padding: 4px;
|
|
margin-bottom: 9px;
|
|
font-size: $font-0;
|
|
line-height: $line-height-large;
|
|
color: $primary;
|
|
}
|
|
|
|
input,
|
|
textarea {
|
|
width: 210px;
|
|
}
|
|
|
|
select,
|
|
input[type="file"] {
|
|
line-height: $line-height-large;
|
|
}
|
|
|
|
select {
|
|
width: 220px;
|
|
&[multiple],
|
|
&[size] {
|
|
height: auto;
|
|
}
|
|
}
|
|
|
|
input,
|
|
textarea {
|
|
margin-left: 0;
|
|
}
|
|
|
|
input {
|
|
&[type="radio"],
|
|
&[type="checkbox"] {
|
|
&[disabled],
|
|
&[readonly] {
|
|
background-color: transparent;
|
|
}
|
|
}
|
|
}
|
|
|
|
.input {
|
|
&-xxlarge,
|
|
&-xxlarge + .control-instructions {
|
|
width: 530px;
|
|
}
|
|
}
|
|
|
|
.controls-dropdown {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.control-instructions {
|
|
color: dark-light-choose($primary-medium, $secondary-medium);
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.control-group {
|
|
margin-bottom: 9px;
|
|
|
|
&.warning,
|
|
&.error {
|
|
> label {
|
|
color: $danger;
|
|
}
|
|
|
|
.checkbox,
|
|
.radio,
|
|
input,
|
|
select,
|
|
textarea {
|
|
color: $danger;
|
|
border-color: $danger;
|
|
|
|
&:focus {
|
|
border-color: scale-color($danger, $lightness: -30%);
|
|
box-shadow: shadow("focus-danger");
|
|
}
|
|
}
|
|
}
|
|
|
|
&.warning {
|
|
.input-prepend,
|
|
.input-append {
|
|
.add-on {
|
|
color: $danger;
|
|
background-color: $danger;
|
|
border-color: $danger;
|
|
}
|
|
}
|
|
}
|
|
|
|
&.error {
|
|
.input-prepend,
|
|
.input-append {
|
|
.add-on {
|
|
color: $danger;
|
|
background-color: $danger-medium;
|
|
border-color: scale-color($danger, $lightness: -20%);
|
|
}
|
|
}
|
|
}
|
|
|
|
&.success {
|
|
> label {
|
|
color: $success;
|
|
}
|
|
|
|
.checkbox,
|
|
.radio,
|
|
input,
|
|
select,
|
|
textarea {
|
|
color: $success;
|
|
border-color: $success;
|
|
|
|
&:focus {
|
|
border-color: $success;
|
|
box-shadow: shadow("focus");
|
|
}
|
|
}
|
|
|
|
.input-prepend,
|
|
.input-append {
|
|
.add-on {
|
|
color: $success;
|
|
background-color: $success-low;
|
|
border-color: $success;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.form-horizontal {
|
|
.hide {
|
|
display: none;
|
|
}
|
|
|
|
input,
|
|
textarea,
|
|
select,
|
|
.input-prepend,
|
|
.input-append {
|
|
display: inline-block;
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.control-group {
|
|
@include clearfix;
|
|
margin-bottom: 18px;
|
|
}
|
|
|
|
.control-indent {
|
|
margin-left: 20px;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.control-label {
|
|
margin: 6.5px;
|
|
float: left;
|
|
width: 140px;
|
|
text-align: right;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.controls {
|
|
margin-left: 160px;
|
|
}
|
|
}
|
|
|
|
.bootbox.modal {
|
|
.modal-footer {
|
|
a.btn-primary {
|
|
color: $secondary;
|
|
}
|
|
}
|
|
}
|
|
|
|
/* bootstrap columns */
|
|
.row {
|
|
@include clearfix;
|
|
}
|
|
|
|
.offset {
|
|
&2 {
|
|
margin-left: 116px;
|
|
}
|
|
|
|
&1 {
|
|
margin-left: 64px;
|
|
}
|
|
}
|
|
|
|
// Media Queries
|
|
@media all and (max-width: 570px) {
|
|
body {
|
|
min-width: 0;
|
|
}
|
|
|
|
.wrap,
|
|
.full-width {
|
|
min-width: 0;
|
|
}
|
|
}
|