mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 02:30:57 +08:00
6ccc0227f3
In an effort to modernize our codebase to the latest Ember version we have selected the Topic Timeline as a candidate to be refactored. The topic timeline component was originally built with `Widgets` and this PR will upgrade it to `Glimmer Components`. The refactored timeline is hidden by default behind a group flag, `SiteSetting.enable_experimental_topic_timeline_groups`. Being part of a group included in this site setting will make the new timeline available for testing. ## Other points of interest This PR introduces a `Draggable Modifier` available to all components, which will take the place of the existing _drag functionality_ exclusive to widgets. It can be included like so: ``` {{draggable didStartDrag=@didStartDrag didEndDrag=@didEndDrag dragMove=@dragMove }} ```
222 lines
3.4 KiB
SCSS
222 lines
3.4 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
|
|
|
|
:root {
|
|
--d-max-width: 1110px;
|
|
}
|
|
|
|
// Base Elements
|
|
body.widget-dragging {
|
|
cursor: ns-resize;
|
|
}
|
|
|
|
body.dragging {
|
|
cursor: ns-resize;
|
|
}
|
|
|
|
// Common classes
|
|
.boxed {
|
|
height: 100%;
|
|
}
|
|
|
|
.form-vertical {
|
|
.control-group {
|
|
margin-bottom: 1.25em;
|
|
}
|
|
.controls:not(.controls-dropdown) + .controls {
|
|
margin-top: 0.5em;
|
|
}
|
|
}
|
|
|
|
/***********************/
|
|
/* 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: var(--font-0);
|
|
font-weight: normal;
|
|
line-height: var(--line-height-medium);
|
|
}
|
|
|
|
select,
|
|
textarea {
|
|
display: inline-block;
|
|
margin-bottom: 9px;
|
|
font-size: var(--font-0);
|
|
line-height: var(--line-height-large);
|
|
color: var(--primary);
|
|
}
|
|
|
|
input,
|
|
textarea {
|
|
width: 210px;
|
|
}
|
|
|
|
select,
|
|
input[type="file"] {
|
|
line-height: var(--line-height-large);
|
|
}
|
|
|
|
select {
|
|
width: 220px;
|
|
background: var(--secondary);
|
|
|
|
&[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: var(--primary-medium);
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.control-group {
|
|
margin-bottom: 9px;
|
|
}
|
|
|
|
.form-horizontal {
|
|
input[type="text"],
|
|
input[type="password"],
|
|
textarea {
|
|
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: var(--secondary);
|
|
}
|
|
}
|
|
}
|
|
|
|
/* bootstrap columns */
|
|
|
|
.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;
|
|
}
|
|
}
|
|
|
|
body.has-sidebar-page {
|
|
.wrap {
|
|
// increase page max-width to accommodate sidebar width
|
|
max-width: calc(var(--d-sidebar-width) + var(--d-max-width));
|
|
}
|
|
|
|
#main-outlet-wrapper {
|
|
grid-template-columns: var(--d-sidebar-width) minmax(0, 1fr);
|
|
gap: 0 2em;
|
|
padding-left: 0;
|
|
}
|
|
}
|
|
|
|
@media (prefers-reduced-motion: no-preference) {
|
|
body.sidebar-animate {
|
|
#main-outlet-wrapper {
|
|
// grid-template-columns transition supported in Firefox, Chrome support coming summer 2022
|
|
transition-property: grid-template-columns, max-width;
|
|
transition-timing-function: var(--d-sidebar-animation-ease);
|
|
transition-duration: var(--d-sidebar-animation-time);
|
|
}
|
|
|
|
.d-header-wrap .wrap {
|
|
transition: max-width var(--d-sidebar-animation-time)
|
|
var(--d-sidebar-animation-ease);
|
|
}
|
|
}
|
|
}
|