mirror of
https://github.com/discourse/discourse.git
synced 2024-11-30 09:34:17 +08:00
e52bbc1230
* UX: add type tag and design update * UX: clarify status copy in reviewQ * DEV: switch to selectKit * UX: color approve/reject buttons in RQ * DEV: regroup actions * UX: add type tag and design update * UX: clarify status copy in reviewQ * Join questions for flagged post with "or" with new I18n function * Move ReviewableScores component out of context * Add CSS classes to reviewable-item based on human type * UX: add table header for scoring * UX: don't display % score * UX: prefix modifier class with dash * UX: reviewQ flag table styling * UX: consistent use of ignore icon * DEV: only show context question on pending status * UX: only show table headers on pending status * DEV: reviewQ regroup actions for hidden posts * UX: reviewQ > approve/reject buttons * UX: reviewQ add fadeout * UX: reviewQ styling * DEV: move scores back into component * UX: reviewQ mobile styling * UX: score table on mobile * UX: reviewQ > move meta info outside table * UX: reviewQ > score layout fixes * DEV: readd `agree_and_keep` and fix the spec tests. * Fix the spec tests * fix the quint test * DEV: readd deleting replies * UX: reviewQ copy tweaks * DEV: readd test for ignore + delete replies * Remove old * FIX: Add perform_ignore back in for backwards compat * DEV: add an action alias `ignore` for `ignore_and_do_nothing`. --------- Co-authored-by: Martin Brennan <martin@discourse.org> Co-authored-by: Vinoth Kannan <svkn.87@gmail.com>
548 lines
8.9 KiB
SCSS
548 lines
8.9 KiB
SCSS
.reviewable {
|
|
.flagged-post-header {
|
|
width: 100%;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.status {
|
|
color: var(--primary-medium);
|
|
span.approved {
|
|
color: var(--success);
|
|
.d-icon {
|
|
color: currentColor;
|
|
}
|
|
}
|
|
span.rejected {
|
|
color: var(--danger);
|
|
.d-icon {
|
|
color: currentColor;
|
|
}
|
|
}
|
|
}
|
|
.explain {
|
|
margin-left: 0.5em;
|
|
}
|
|
|
|
.nav-pills {
|
|
margin: 0 0 1em;
|
|
}
|
|
|
|
.reviewable-container {
|
|
display: flex;
|
|
flex-direction: row;
|
|
margin-top: 1em;
|
|
|
|
.reviewable-list {
|
|
flex: 1;
|
|
box-sizing: border-box;
|
|
max-width: 760px; // Match topic post width
|
|
min-width: 0;
|
|
margin-right: auto;
|
|
}
|
|
|
|
.reviewable-filters {
|
|
width: 250px;
|
|
height: 100%;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.reviewable-list + .reviewable-filters {
|
|
margin-left: 1em;
|
|
}
|
|
}
|
|
}
|
|
|
|
.reviewable-settings {
|
|
h4 {
|
|
margin-top: 1em;
|
|
margin-bottom: 1em;
|
|
}
|
|
|
|
.saved {
|
|
margin-left: 0.5em;
|
|
}
|
|
.reviewable-score-type {
|
|
display: flex;
|
|
margin-bottom: 0.5em;
|
|
|
|
.select-kit {
|
|
min-width: 10em;
|
|
}
|
|
.title {
|
|
width: 30%;
|
|
}
|
|
}
|
|
}
|
|
|
|
.reviewable-user-info {
|
|
margin: 0.5em 0;
|
|
.reviewable-user-fields {
|
|
margin-bottom: 2em;
|
|
}
|
|
|
|
.reviewable-user-details {
|
|
border-bottom: 1px solid var(--primary-low);
|
|
padding-bottom: 0.25em;
|
|
|
|
display: flex;
|
|
.name {
|
|
width: 8em;
|
|
font-weight: bold;
|
|
margin-right: 1em;
|
|
}
|
|
margin-bottom: 0.5em;
|
|
}
|
|
}
|
|
|
|
.no-review {
|
|
margin-top: 1em;
|
|
}
|
|
|
|
.reviewable-filters {
|
|
background-color: var(--primary-very-low);
|
|
padding: 1em;
|
|
margin-bottom: 1em;
|
|
|
|
.reviewable-filter {
|
|
display: flex;
|
|
flex-direction: column;
|
|
margin: 0 0 1em 0;
|
|
|
|
.filter-label {
|
|
margin: 0 0 0.5em 0;
|
|
}
|
|
|
|
.score-filter {
|
|
margin: 0;
|
|
width: 100%;
|
|
}
|
|
|
|
.category-chooser {
|
|
width: 100%;
|
|
}
|
|
}
|
|
}
|
|
|
|
.reviewable-claimed-topic {
|
|
display: flex;
|
|
align-items: center;
|
|
.btn-small {
|
|
margin-left: 0.5em;
|
|
}
|
|
}
|
|
|
|
.reviewable-actions .claimed-actions {
|
|
display: flex;
|
|
flex: 1 1 100%;
|
|
margin-right: 0;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: 0.5em;
|
|
}
|
|
|
|
.claimed-by {
|
|
display: flex;
|
|
align-items: center;
|
|
.claimed-username {
|
|
margin-left: 0.5em;
|
|
}
|
|
}
|
|
|
|
.reviewable-topics {
|
|
width: 100%;
|
|
|
|
tbody {
|
|
td {
|
|
padding: 0.5em;
|
|
}
|
|
}
|
|
|
|
.reviewable-details {
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
|
|
.btn {
|
|
display: flex;
|
|
align-items: center;
|
|
margin-left: 1em;
|
|
}
|
|
}
|
|
}
|
|
|
|
.reviewable-filters {
|
|
.topic-filter .btn {
|
|
display: flex;
|
|
width: auto;
|
|
}
|
|
|
|
.score-filter {
|
|
width: 5em;
|
|
}
|
|
}
|
|
.user-flag-percentage {
|
|
display: flex;
|
|
align-items: center;
|
|
margin-left: 0.5em;
|
|
|
|
.percentage-label {
|
|
margin-right: 0.25em;
|
|
&.agreed {
|
|
color: var(--success);
|
|
+ .d-icon {
|
|
color: var(--success);
|
|
}
|
|
}
|
|
&.disagreed {
|
|
color: var(--danger);
|
|
+ .d-icon {
|
|
color: var(--danger);
|
|
}
|
|
}
|
|
&.ignored {
|
|
color: var(--primary-medium);
|
|
}
|
|
}
|
|
.d-icon {
|
|
font-size: 0.9em;
|
|
}
|
|
}
|
|
|
|
.reviewable-item {
|
|
background: var(--primary-very-low);
|
|
padding: 1.5rem;
|
|
|
|
.topic-statuses {
|
|
font-size: var(--font-up-2);
|
|
}
|
|
|
|
.reviewable-meta-data {
|
|
color: var(--primary-med-or-secondary-med);
|
|
display: flex;
|
|
width: 100%;
|
|
margin-bottom: 0.5em;
|
|
font-size: var(--font-down-1);
|
|
align-items: baseline;
|
|
.reviewable-type {
|
|
margin-right: 0.25em;
|
|
padding: 0.25em 0.5em;
|
|
text-transform: uppercase;
|
|
font-size: var(--font-down-2);
|
|
color: var(--secondary);
|
|
border-radius: 8px;
|
|
&.-flagged-post,
|
|
&.-user,
|
|
&.-flagged-chat-message,
|
|
&.-aksimet-flagged-post,
|
|
&.-aksimet-flagged-user {
|
|
background-color: var(--danger-medium);
|
|
}
|
|
&.-queued-post {
|
|
background-color: var(--tertiary);
|
|
}
|
|
}
|
|
.reply-count {
|
|
margin-left: 1em;
|
|
}
|
|
.created-at {
|
|
margin-left: 1em;
|
|
margin-right: auto;
|
|
a {
|
|
color: var(--primary-med-or-secondary-med);
|
|
}
|
|
}
|
|
.score {
|
|
font-size: var(--font-down-1);
|
|
}
|
|
}
|
|
|
|
.reviewable-contents {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
margin: 1.5rem 0 1rem;
|
|
background: var(--secondary);
|
|
padding: 1rem;
|
|
}
|
|
|
|
.reviewable-actions {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 0.5rem;
|
|
width: 100%;
|
|
|
|
button {
|
|
white-space: nowrap;
|
|
|
|
&.approve-post {
|
|
background-color: var(--success);
|
|
color: var(--secondary);
|
|
}
|
|
&.reject-post {
|
|
background-color: var(--danger);
|
|
color: var(--secondary);
|
|
}
|
|
}
|
|
|
|
.reviewable-action,
|
|
.reviewable-action-dropdown {
|
|
margin-right: 0.5em;
|
|
}
|
|
}
|
|
padding-bottom: 1em;
|
|
}
|
|
|
|
.reviewable-stale {
|
|
opacity: 0.7;
|
|
}
|
|
|
|
.blur-images {
|
|
img:not(.avatar):not(.emoji) {
|
|
filter: blur(10px);
|
|
transition: 0.2s ease-in-out;
|
|
|
|
&:hover {
|
|
filter: blur(0);
|
|
transition: 0.2s ease-in-out;
|
|
}
|
|
}
|
|
}
|
|
|
|
.reviewable-histories {
|
|
margin-top: 1em;
|
|
}
|
|
|
|
.reviewable-scores {
|
|
margin-top: 1.5rem;
|
|
min-width: 50%;
|
|
color: var(--primary-high);
|
|
|
|
&__table-wrapper {
|
|
overflow-x: scroll;
|
|
}
|
|
|
|
th {
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.reviewed-by {
|
|
.date {
|
|
margin-left: 0.5em;
|
|
}
|
|
}
|
|
.user,
|
|
.reviewed-by {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
|
|
.user-flag-percentage {
|
|
margin-left: 0.5em;
|
|
}
|
|
|
|
.d-icon {
|
|
font-size: var(--font-down-1);
|
|
color: var(--primary-medium);
|
|
}
|
|
|
|
.badge-notification {
|
|
line-height: var(--line-height-medium);
|
|
vertical-align: text-top;
|
|
}
|
|
|
|
.approved,
|
|
.approved svg {
|
|
color: var(--success);
|
|
}
|
|
|
|
.rejected,
|
|
.rejected svg {
|
|
color: var(--danger);
|
|
}
|
|
|
|
tbody {
|
|
border-width: 1px;
|
|
td {
|
|
white-space: nowrap;
|
|
vertical-align: baseline;
|
|
&.user a,
|
|
&.reviewed-by a {
|
|
max-width: 150px;
|
|
@include ellipsis;
|
|
}
|
|
}
|
|
> tr > th {
|
|
text-align: left;
|
|
}
|
|
> tr > th,
|
|
> tr > td {
|
|
&:not(:empty) {
|
|
padding: 0.5em;
|
|
}
|
|
@include breakpoint("mobile-large") {
|
|
@include ellipsis;
|
|
padding-right: 0.5em;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.reviewable-score-reason {
|
|
margin: 0.5em 0;
|
|
max-width: var(--topic-body-width);
|
|
margin-bottom: 0.5em;
|
|
}
|
|
|
|
.reviewable-conversation {
|
|
margin: 0.5em 0;
|
|
|
|
.reviewable-conversation-post {
|
|
max-width: var(--topic-body-width);
|
|
margin-bottom: 0.5em;
|
|
|
|
.username {
|
|
font-weight: bold;
|
|
margin-right: 0.25em;
|
|
}
|
|
}
|
|
|
|
.controls {
|
|
margin-top: 0.25em;
|
|
}
|
|
}
|
|
|
|
.reviewable-item {
|
|
margin-block: 3rem;
|
|
.show-raw-email {
|
|
color: var(--primary-medium);
|
|
font-size: var(--font-down-2);
|
|
}
|
|
.post-title {
|
|
background-color: yellow;
|
|
}
|
|
.created-by {
|
|
margin-right: 1em;
|
|
padding-top: 0.35em;
|
|
@include breakpoint("mobile-large") {
|
|
float: left;
|
|
margin-bottom: 1em;
|
|
}
|
|
}
|
|
|
|
.names {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.post-contents-wrapper {
|
|
width: 100%;
|
|
margin-top: 1em;
|
|
min-width: 275px;
|
|
word-break: break-word;
|
|
@include breakpoint("mobile-large", min-width) {
|
|
display: flex;
|
|
}
|
|
}
|
|
.reviewable-post-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
width: var(--topic-body-width);
|
|
align-items: center;
|
|
|
|
.reviewable-reply-to {
|
|
display: flex;
|
|
align-items: center;
|
|
color: var(--primary-medium);
|
|
font-size: 0.9em;
|
|
.d-icon {
|
|
margin-right: 0.5em;
|
|
}
|
|
}
|
|
}
|
|
|
|
.post-contents {
|
|
width: 100%;
|
|
min-width: 0; // Flexbox fix
|
|
}
|
|
|
|
.post-body {
|
|
position: relative;
|
|
max-width: var(--topic-body-width);
|
|
margin-top: 0.5em;
|
|
|
|
&__scroll {
|
|
max-height: 300px;
|
|
overflow-y: auto;
|
|
&:after {
|
|
content: "";
|
|
position: absolute;
|
|
bottom: 0;
|
|
width: 100%;
|
|
height: 1.5em;
|
|
background: linear-gradient(
|
|
to bottom,
|
|
rgba(var(--secondary-rgb), 0),
|
|
rgba(var(--secondary-rgb), 100%)
|
|
);
|
|
}
|
|
}
|
|
|
|
p,
|
|
aside {
|
|
margin: 0 0 1em 0;
|
|
}
|
|
|
|
pre,
|
|
code {
|
|
word-break: break-all;
|
|
}
|
|
}
|
|
|
|
.post-topic {
|
|
width: 100%;
|
|
color: var(--primary-medium);
|
|
margin-bottom: 0.75em;
|
|
.title-text {
|
|
font-weight: bold;
|
|
color: var(--primary);
|
|
display: block;
|
|
font-size: var(--font-up-2);
|
|
margin-right: 0.75em;
|
|
}
|
|
}
|
|
|
|
&__context-question {
|
|
margin-block: 1rem;
|
|
}
|
|
}
|
|
|
|
.editable-fields {
|
|
.editable-created-by {
|
|
display: flex;
|
|
.avatar {
|
|
margin-right: 0.25em;
|
|
}
|
|
margin-bottom: 0.5em;
|
|
}
|
|
|
|
width: 100%;
|
|
.editable-field {
|
|
.mini-tag-chooser {
|
|
margin: 0;
|
|
}
|
|
|
|
.reviewable-input-text {
|
|
width: 100%;
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.reviewable-input-textarea {
|
|
width: 100%;
|
|
height: 10em;
|
|
}
|
|
margin-bottom: 0.5em;
|
|
}
|
|
}
|
|
|
|
.flag-modal .modal-inner-container .select-kit.reviewable-action-dropdown {
|
|
width: initial;
|
|
}
|