mirror of
https://gh.wpcy.net/https://github.com/discourse/discourse.git
synced 2026-05-24 23:20:39 +08:00
```
WARNING: Sass's behavior for declarations that appear after nested
rules will be changing to match the behavior specified by CSS in an upcoming
version. To keep the existing behavior, move the declaration above the nested
rule. To opt into the new behavior, wrap the declaration in `& {}`.
More info: https://sass-lang.com/d/mixed-decls
```
400 lines
6.6 KiB
SCSS
Vendored
400 lines
6.6 KiB
SCSS
Vendored
#reply-control {
|
|
.reply-area {
|
|
margin: 0 auto;
|
|
padding: 8px;
|
|
box-sizing: border-box;
|
|
height: calc(100% - 11px);
|
|
width: 100%;
|
|
|
|
.submit-panel {
|
|
flex-wrap: wrap;
|
|
}
|
|
}
|
|
|
|
.autocomplete {
|
|
max-width: 600px;
|
|
}
|
|
|
|
.select-kit.is-expanded {
|
|
z-index: z("composer", "dropdown") + 1;
|
|
}
|
|
|
|
&.private-message {
|
|
.with-tags {
|
|
.title-and-category {
|
|
flex-wrap: nowrap;
|
|
gap: 0.5em;
|
|
|
|
.tags-input {
|
|
max-width: 50%;
|
|
flex: 1 1 auto;
|
|
}
|
|
}
|
|
|
|
.title-input {
|
|
max-width: 50%;
|
|
min-width: 0;
|
|
|
|
input {
|
|
min-width: 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
#private-message-users,
|
|
.users-input {
|
|
width: 100%;
|
|
flex: 0 0 auto;
|
|
|
|
&.can-warn {
|
|
// space for warning, inverse of mini-tag-chooser width
|
|
width: 60%;
|
|
}
|
|
}
|
|
|
|
.add-warning {
|
|
flex: 1 1 auto;
|
|
overflow: hidden;
|
|
|
|
span {
|
|
// protects the space of the user input in case there's a very long translation
|
|
@include ellipsis;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.closed {
|
|
.grippie {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
.open {
|
|
.grippie {
|
|
cursor: row-resize;
|
|
padding: 4px 0;
|
|
background: var(--tertiary);
|
|
|
|
&::before {
|
|
content: "";
|
|
display: block;
|
|
width: 24px;
|
|
margin: auto;
|
|
border-top: 3px double var(--tertiary-medium);
|
|
}
|
|
}
|
|
}
|
|
|
|
.discourse-touch {
|
|
.open {
|
|
.grippie {
|
|
padding: 7px 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
.composer-popup {
|
|
box-sizing: border-box;
|
|
position: absolute;
|
|
width: calc(50% - 16px);
|
|
top: 19px; // grippie (11px) + .reply-area padding (8px)
|
|
bottom: 8px;
|
|
right: 8px;
|
|
overflow-y: auto;
|
|
z-index: z("composer", "dropdown") + 1;
|
|
padding: 1.5em;
|
|
box-shadow: var(--shadow-dropdown);
|
|
background: var(--highlight-bg);
|
|
|
|
> p,
|
|
h3 {
|
|
&:first-of-type {
|
|
margin-top: 0;
|
|
margin-right: 3em;
|
|
}
|
|
}
|
|
|
|
&.urgent {
|
|
background: var(--danger-low);
|
|
}
|
|
|
|
&.education-message {
|
|
background-color: var(--tertiary-low);
|
|
}
|
|
|
|
&.dominating-topic-message,
|
|
&.get-a-room {
|
|
bottom: unset;
|
|
padding: 2.25em 6em 2.5em 2.25em;
|
|
|
|
p {
|
|
font-size: var(--font-up-1);
|
|
}
|
|
|
|
button:not(.close) {
|
|
margin-top: 0.5em;
|
|
}
|
|
}
|
|
|
|
h3 {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.btn.close {
|
|
flex-direction: row-reverse;
|
|
align-items: center;
|
|
position: absolute;
|
|
right: 0;
|
|
top: 0;
|
|
color: var(--primary-medium);
|
|
font-size: var(--font-0);
|
|
|
|
.d-icon {
|
|
color: currentcolor;
|
|
font-size: var(--font-up-1);
|
|
margin: 0 0 0 0.25em;
|
|
}
|
|
|
|
.discourse-no-touch & {
|
|
&:active,
|
|
&:focus {
|
|
background: transparent;
|
|
|
|
.d-icon {
|
|
color: var(--primary);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ul {
|
|
margin: 0;
|
|
padding: 0 0 0 1.5em;
|
|
|
|
&.list,
|
|
&.topics {
|
|
list-style: none;
|
|
padding: 0;
|
|
}
|
|
|
|
li {
|
|
font-weight: normal;
|
|
margin-top: 8px;
|
|
}
|
|
}
|
|
}
|
|
|
|
.composer-controls {
|
|
.d-chevron-down {
|
|
vertical-align: text-top;
|
|
}
|
|
}
|
|
|
|
.custom-body {
|
|
background-color: var(--tertiary-low);
|
|
|
|
p {
|
|
max-width: 98%;
|
|
}
|
|
}
|
|
|
|
.similar-topics {
|
|
background-color: var(--tertiary-low);
|
|
|
|
.similar-topic {
|
|
margin-bottom: 0.5em;
|
|
}
|
|
|
|
a[href] {
|
|
color: var(--primary);
|
|
}
|
|
|
|
.posts-count {
|
|
background-color: var(--tertiary);
|
|
}
|
|
|
|
.topic-title {
|
|
flex: 0 1 auto;
|
|
margin-right: 0.5em;
|
|
}
|
|
|
|
span.badge-wrapper {
|
|
margin-left: 0;
|
|
}
|
|
|
|
.blurb {
|
|
color: var(--primary-high);
|
|
}
|
|
|
|
.topic-title,
|
|
.blurb {
|
|
margin-bottom: 0.5em;
|
|
|
|
.d-icon {
|
|
color: var(--primary-high);
|
|
}
|
|
}
|
|
|
|
span.topic {
|
|
display: flex;
|
|
flex-direction: column;
|
|
|
|
.first-line {
|
|
flex: 1;
|
|
}
|
|
|
|
.second-line {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: baseline;
|
|
gap: 0.5em;
|
|
|
|
.discourse-tags {
|
|
font-size: var(--font-down-1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.composer-popup:nth-of-type(2) {
|
|
width: calc(50% - 65px);
|
|
}
|
|
|
|
a.toggle-preview {
|
|
color: var(--primary-high);
|
|
|
|
&:hover {
|
|
color: var(--tertiary);
|
|
}
|
|
}
|
|
|
|
#draft-status,
|
|
#file-uploading {
|
|
text-align: right;
|
|
}
|
|
|
|
// fullscreen composer styles
|
|
.fullscreen-composer {
|
|
overflow: hidden;
|
|
|
|
.profiler-results {
|
|
display: none;
|
|
}
|
|
|
|
#reply-control {
|
|
&.fullscreen {
|
|
// important needed because of inline styles when height is changed manually with grippie
|
|
height: 100vh !important;
|
|
max-height: 100%; // prevents devices from miscalculating using vh
|
|
z-index: z("header") + 1;
|
|
|
|
@supports (--custom: property) {
|
|
height: calc(var(--composer-vh, 1vh) * 100) !important;
|
|
}
|
|
|
|
.d-editor-preview-wrapper {
|
|
margin-top: 1%;
|
|
}
|
|
|
|
.reply-to {
|
|
border-bottom: 1px solid var(--primary-low);
|
|
margin-bottom: 0;
|
|
padding-bottom: 8px;
|
|
}
|
|
|
|
.d-editor-textarea-wrapper {
|
|
border: none;
|
|
}
|
|
|
|
&.show-preview .d-editor-textarea-wrapper {
|
|
border-right: 1px solid var(--primary-low);
|
|
}
|
|
|
|
#draft-status,
|
|
#file-uploading {
|
|
margin-left: 0;
|
|
text-align: initial;
|
|
}
|
|
|
|
.composer-popup {
|
|
top: 30px;
|
|
}
|
|
|
|
&::before {
|
|
content: "";
|
|
background: var(--secondary);
|
|
width: 100%;
|
|
height: 100%;
|
|
position: fixed;
|
|
z-index: -1;
|
|
left: 0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.composer-fullscreen-prompt {
|
|
animation: fadeIn 1s ease-in-out;
|
|
animation-delay: 1.5s;
|
|
animation-direction: reverse;
|
|
animation-fill-mode: forwards;
|
|
position: fixed;
|
|
left: 50%;
|
|
top: 10%;
|
|
transform: translate(-50%, 0);
|
|
z-index: z("header") + 1;
|
|
background: var(--primary-very-high);
|
|
color: var(--secondary);
|
|
padding: 0.5em 0.75em;
|
|
pointer-events: none;
|
|
border-radius: 2px;
|
|
|
|
@media (prefers-reduced-motion) {
|
|
animation-duration: 0s;
|
|
}
|
|
|
|
.rtl & {
|
|
// R2 is not smart enough to support this swap
|
|
transform: translate(50%, 0);
|
|
}
|
|
|
|
kbd {
|
|
background: none;
|
|
}
|
|
}
|
|
|
|
@media screen and (min-width: $reply-area-max-width) {
|
|
.sidebar-wrapper .sidebar-container {
|
|
.has-sidebar-page & {
|
|
height: auto;
|
|
}
|
|
}
|
|
|
|
#reply-control:not(.fullscreen) {
|
|
.has-sidebar-page & {
|
|
width: auto;
|
|
max-width: calc(
|
|
(var(--d-max-width) + (var(--d-sidebar-width) / 2)) - 1.5rem
|
|
);
|
|
margin-left: 0;
|
|
margin-right: 0;
|
|
transform: translateX(
|
|
calc(
|
|
((100vw - var(--d-max-width) - (var(--d-sidebar-width) / 0.5)) / 2) +
|
|
17em + 1rem
|
|
)
|
|
);
|
|
|
|
&.hide-preview {
|
|
max-width: calc(740px);
|
|
transform: translateX(
|
|
calc(
|
|
((100vw - 740px - var(--d-sidebar-width)) / 2) +
|
|
var(--d-sidebar-width)
|
|
)
|
|
);
|
|
}
|
|
}
|
|
}
|
|
}
|