Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8e0e2e1a8a | |||
| 14aa72ad99 | |||
| bf9fe07f67 | |||
| 31249c4f27 | |||
| 581332c001 | |||
| f5c4403423 | |||
| b72a3c1e95 | |||
| 0ed3912d63 |
@@ -0,0 +1,2 @@
|
|||||||
|
< 3.5.0.beta5-dev: 31249c4f27d93e83c6b83d42d93974522a9a612e
|
||||||
|
|
||||||
|
|||||||
+13
-13
@@ -15,16 +15,16 @@ GEM
|
|||||||
tzinfo (~> 2.0, >= 2.0.5)
|
tzinfo (~> 2.0, >= 2.0.5)
|
||||||
uri (>= 0.13.1)
|
uri (>= 0.13.1)
|
||||||
ast (2.4.3)
|
ast (2.4.3)
|
||||||
base64 (0.2.0)
|
base64 (0.3.0)
|
||||||
benchmark (0.4.0)
|
benchmark (0.4.1)
|
||||||
bigdecimal (3.1.9)
|
bigdecimal (3.2.2)
|
||||||
concurrent-ruby (1.3.5)
|
concurrent-ruby (1.3.5)
|
||||||
connection_pool (2.5.3)
|
connection_pool (2.5.3)
|
||||||
drb (2.2.1)
|
drb (2.2.3)
|
||||||
i18n (1.14.7)
|
i18n (1.14.7)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
json (2.11.3)
|
json (2.12.2)
|
||||||
language_server-protocol (3.17.0.4)
|
language_server-protocol (3.17.0.5)
|
||||||
lint_roller (1.1.0)
|
lint_roller (1.1.0)
|
||||||
logger (1.7.0)
|
logger (1.7.0)
|
||||||
minitest (5.25.5)
|
minitest (5.25.5)
|
||||||
@@ -35,10 +35,10 @@ GEM
|
|||||||
prettier_print (1.2.1)
|
prettier_print (1.2.1)
|
||||||
prism (1.4.0)
|
prism (1.4.0)
|
||||||
racc (1.8.1)
|
racc (1.8.1)
|
||||||
rack (3.1.13)
|
rack (3.1.15)
|
||||||
rainbow (3.1.1)
|
rainbow (3.1.1)
|
||||||
regexp_parser (2.10.0)
|
regexp_parser (2.10.0)
|
||||||
rubocop (1.75.4)
|
rubocop (1.76.0)
|
||||||
json (~> 2.3)
|
json (~> 2.3)
|
||||||
language_server-protocol (~> 3.17.0.2)
|
language_server-protocol (~> 3.17.0.2)
|
||||||
lint_roller (~> 1.1.0)
|
lint_roller (~> 1.1.0)
|
||||||
@@ -46,10 +46,10 @@ GEM
|
|||||||
parser (>= 3.3.0.2)
|
parser (>= 3.3.0.2)
|
||||||
rainbow (>= 2.2.2, < 4.0)
|
rainbow (>= 2.2.2, < 4.0)
|
||||||
regexp_parser (>= 2.9.3, < 3.0)
|
regexp_parser (>= 2.9.3, < 3.0)
|
||||||
rubocop-ast (>= 1.44.0, < 2.0)
|
rubocop-ast (>= 1.45.0, < 2.0)
|
||||||
ruby-progressbar (~> 1.7)
|
ruby-progressbar (~> 1.7)
|
||||||
unicode-display_width (>= 2.4.0, < 4.0)
|
unicode-display_width (>= 2.4.0, < 4.0)
|
||||||
rubocop-ast (1.44.1)
|
rubocop-ast (1.45.0)
|
||||||
parser (>= 3.3.7.2)
|
parser (>= 3.3.7.2)
|
||||||
prism (~> 1.4)
|
prism (~> 1.4)
|
||||||
rubocop-capybara (2.22.1)
|
rubocop-capybara (2.22.1)
|
||||||
@@ -67,12 +67,12 @@ GEM
|
|||||||
rubocop-factory_bot (2.27.1)
|
rubocop-factory_bot (2.27.1)
|
||||||
lint_roller (~> 1.1)
|
lint_roller (~> 1.1)
|
||||||
rubocop (~> 1.72, >= 1.72.1)
|
rubocop (~> 1.72, >= 1.72.1)
|
||||||
rubocop-rails (2.31.0)
|
rubocop-rails (2.32.0)
|
||||||
activesupport (>= 4.2.0)
|
activesupport (>= 4.2.0)
|
||||||
lint_roller (~> 1.1)
|
lint_roller (~> 1.1)
|
||||||
rack (>= 1.1)
|
rack (>= 1.1)
|
||||||
rubocop (>= 1.75.0, < 2.0)
|
rubocop (>= 1.75.0, < 2.0)
|
||||||
rubocop-ast (>= 1.38.0, < 2.0)
|
rubocop-ast (>= 1.44.0, < 2.0)
|
||||||
rubocop-rspec (3.6.0)
|
rubocop-rspec (3.6.0)
|
||||||
lint_roller (~> 1.1)
|
lint_roller (~> 1.1)
|
||||||
rubocop (~> 1.72, >= 1.72.1)
|
rubocop (~> 1.72, >= 1.72.1)
|
||||||
@@ -99,4 +99,4 @@ DEPENDENCIES
|
|||||||
syntax_tree
|
syntax_tree
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.6.8
|
2.6.9
|
||||||
|
|||||||
+1
-3
@@ -6,9 +6,7 @@
|
|||||||
"learn_more": "https://meta.discourse.org/t/installing-a-theme-or-theme-component/63682",
|
"learn_more": "https://meta.discourse.org/t/installing-a-theme-or-theme-component/63682",
|
||||||
"theme_version": "0.0.1",
|
"theme_version": "0.0.1",
|
||||||
"modifiers": {
|
"modifiers": {
|
||||||
"svg_icons": [
|
"svg_icons": ["fire"],
|
||||||
"fire"
|
|
||||||
],
|
|
||||||
"serialize_topic_is_hot": true
|
"serialize_topic_is_hot": true
|
||||||
},
|
},
|
||||||
"color_schemes": {
|
"color_schemes": {
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
if (!CSS.supports("(color: hsl(from white h s l))")) {
|
if (!CSS.supports("(color: hsl(from white h s l))")) {
|
||||||
window.unsupportedBrowser = true;
|
window.unsupportedBrowser = true;
|
||||||
window.I18n.translations[I18n.locale].js.browser_update = 'The Horizon theme does not support your browser. Please update your browser, or <a href="?safe_mode=no_themes">switch to safe mode</a>.';
|
window.I18n.translations[I18n.locale].js.browser_update =
|
||||||
|
'The Horizon theme does not support your browser. Please update your browser, or <a href="?safe_mode=no_themes">switch to safe mode</a>.';
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@@ -1,9 +1,7 @@
|
|||||||
import Component from "@glimmer/component";
|
import Component from "@glimmer/component";
|
||||||
import avatar from "discourse/helpers/avatar";
|
|
||||||
import concatClass from "discourse/helpers/concat-class";
|
import concatClass from "discourse/helpers/concat-class";
|
||||||
import icon from "discourse/helpers/d-icon";
|
import icon from "discourse/helpers/d-icon";
|
||||||
import formatDate from "discourse/helpers/format-date";
|
import formatDate from "discourse/helpers/format-date";
|
||||||
import { i18n } from "discourse-i18n";
|
|
||||||
|
|
||||||
export default class TopicActivityColumn extends Component {
|
export default class TopicActivityColumn extends Component {
|
||||||
get topicUser() {
|
get topicUser() {
|
||||||
@@ -27,37 +25,34 @@ export default class TopicActivityColumn extends Component {
|
|||||||
};
|
};
|
||||||
} else if (this.args.topic.posts_count === 1) {
|
} else if (this.args.topic.posts_count === 1) {
|
||||||
return {
|
return {
|
||||||
user: this.args.topic.creator,
|
user: this.args.topic.firstPosterUser,
|
||||||
username: this.args.topic.creator.username,
|
username: this.args.topic.last_poster_username,
|
||||||
activityText: "user_posted",
|
class: "--created",
|
||||||
class: "--posted",
|
|
||||||
};
|
};
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<span class={{concatClass "topic-activity" this.topicUser.class}}>
|
<span class={{concatClass "topic-activity" this.topicUser.class}}>
|
||||||
<div class="topic-activity__user">
|
<div class="topic-activity__type">
|
||||||
{{#if this.topicUser.user}}
|
{{#if this.topicUser.user}}
|
||||||
{{avatar this.topicUser.user imageSize="small"}}
|
{{icon "reply"}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{icon "pencil"}}
|
{{icon "pencil"}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{#if this.topicUser.username}}
|
{{#if this.topicUser.username}}
|
||||||
<span
|
<span
|
||||||
class="topic-activity__username"
|
class="topic-activity__username"
|
||||||
>{{this.topicUser.username}}</span>
|
>{{this.topicUser.username}}</span>
|
||||||
|
<span class="dot-separator"></span>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<div class="topic-activity__reason">
|
|
||||||
{{i18n (themePrefix this.topicUser.activityText)}}
|
|
||||||
</div>
|
|
||||||
<div class="topic-activity__time">
|
<div class="topic-activity__time">
|
||||||
{{formatDate
|
{{formatDate @topic.bumpedAt leaveAgo="true" format="tiny"}}
|
||||||
@topic.bumpedAt
|
|
||||||
leaveAgo="true"
|
|
||||||
format="medium-with-ago-and-on"
|
|
||||||
}}
|
|
||||||
</div>
|
</div>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
import Component from "@glimmer/component";
|
||||||
|
import avatar from "discourse/helpers/avatar";
|
||||||
|
|
||||||
|
export default class TopicCreatorColumn extends Component {
|
||||||
|
get topicCreator() {
|
||||||
|
return {
|
||||||
|
user: this.args.topic.creator,
|
||||||
|
username: this.args.topic.creator.username,
|
||||||
|
class: "--topic-creator",
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class={{this.topicUser.class}}>
|
||||||
|
{{avatar this.topicCreator.user}}
|
||||||
|
<span class="topic-creator__username">{{this.topicUser.username}}</span>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
|
import { gt } from "truth-helpers";
|
||||||
import icon from "discourse/helpers/d-icon";
|
import icon from "discourse/helpers/d-icon";
|
||||||
import gt from "truth-helpers/helpers/gt";
|
|
||||||
|
|
||||||
const TopicRepliesColumn = <template>
|
const TopicRepliesColumn = <template>
|
||||||
{{#if (gt @topic.replyCount 1)}}
|
{{#if (gt @topic.replyCount 1)}}
|
||||||
|
|||||||
@@ -5,9 +5,8 @@ import didInsert from "@ember/render-modifiers/modifiers/did-insert";
|
|||||||
import didUpdate from "@ember/render-modifiers/modifiers/did-update";
|
import didUpdate from "@ember/render-modifiers/modifiers/did-update";
|
||||||
import willDestroy from "@ember/render-modifiers/modifiers/will-destroy";
|
import willDestroy from "@ember/render-modifiers/modifiers/will-destroy";
|
||||||
import { service } from "@ember/service";
|
import { service } from "@ember/service";
|
||||||
import { gt } from "truth-helpers";
|
import { gt, not } from "truth-helpers";
|
||||||
import CreateTopicButton from "discourse/components/create-topic-button";
|
import CreateTopicButton from "discourse/components/create-topic-button";
|
||||||
import not from "truth-helpers/helpers/not";
|
|
||||||
|
|
||||||
export default class SidebarNewTopicButton extends Component {
|
export default class SidebarNewTopicButton extends Component {
|
||||||
@service composer;
|
@service composer;
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import { withPluginApi } from "discourse/lib/plugin-api";
|
import { withPluginApi } from "discourse/lib/plugin-api";
|
||||||
import TopicActivityColumn from "../components/card/topic-activity-column";
|
import TopicActivityColumn from "../components/card/topic-activity-column";
|
||||||
import TopicCategoryColumn from "../components/card/topic-category-column";
|
import TopicCategoryColumn from "../components/card/topic-category-column";
|
||||||
|
import TopicCreatorColumn from "../components/card/topic-creator-column";
|
||||||
import TopicLikesColumn from "../components/card/topic-likes-column";
|
import TopicLikesColumn from "../components/card/topic-likes-column";
|
||||||
import TopicRepliesColumn from "../components/card/topic-replies-column";
|
import TopicRepliesColumn from "../components/card/topic-replies-column";
|
||||||
import TopicStatusColumn from "../components/card/topic-status-column";
|
import TopicStatusColumn from "../components/card/topic-status-column";
|
||||||
@@ -30,6 +31,12 @@ const TopicLikesReplies = <template>
|
|||||||
</td>
|
</td>
|
||||||
</template>;
|
</template>;
|
||||||
|
|
||||||
|
const TopicCreator = <template>
|
||||||
|
<td class="topic-creator-data">
|
||||||
|
<TopicCreatorColumn @topic={{@topic}} />
|
||||||
|
</td>
|
||||||
|
</template>;
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "topic-list-customizations",
|
name: "topic-list-customizations",
|
||||||
|
|
||||||
@@ -52,6 +59,10 @@ export default {
|
|||||||
item: TopicLikesReplies,
|
item: TopicLikesReplies,
|
||||||
after: "topic-author-avatar",
|
after: "topic-author-avatar",
|
||||||
});
|
});
|
||||||
|
columns.add("topic-creator", {
|
||||||
|
item: TopicCreator,
|
||||||
|
after: "topic-author-avatar",
|
||||||
|
});
|
||||||
columns.delete("views");
|
columns.delete("views");
|
||||||
columns.delete("replies");
|
columns.delete("replies");
|
||||||
if (!router.currentRouteName.includes("userPrivateMessages")) {
|
if (!router.currentRouteName.includes("userPrivateMessages")) {
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
en:
|
en:
|
||||||
theme_metadata:
|
theme_metadata:
|
||||||
description: "A modern theme designed for communities that want a beautiful community out of the box."
|
description: "A simple, beautiful theme that improves the out of the box experience for Discourse sites."
|
||||||
topic_pinned: "Pinned"
|
topic_pinned: "Pinned"
|
||||||
topic_hot: "Hot"
|
topic_hot: "Hot"
|
||||||
user_replied: "replied"
|
user_replied: "replied"
|
||||||
|
|||||||
+4
-4
@@ -1,11 +1,11 @@
|
|||||||
{
|
{
|
||||||
"private": true,
|
"private": true,
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@discourse/lint-configs": "2.11.1",
|
"@discourse/lint-configs": "2.25.0",
|
||||||
"ember-template-lint": "7.0.1",
|
"ember-template-lint": "7.8.1",
|
||||||
"eslint": "9.22.0",
|
"eslint": "9.28.0",
|
||||||
"prettier": "3.5.3",
|
"prettier": "3.5.3",
|
||||||
"stylelint": "16.16.0"
|
"stylelint": "16.20.0"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">= 22",
|
"node": ">= 22",
|
||||||
|
|||||||
Generated
+325
-872
File diff suppressed because it is too large
Load Diff
+14
-13
@@ -1,4 +1,6 @@
|
|||||||
@media screen and (min-width: 1300px) {
|
@use "lib/viewport";
|
||||||
|
|
||||||
|
@media screen and (width >= 1300px) {
|
||||||
#main-outlet {
|
#main-outlet {
|
||||||
border-top-right-radius: var(--d-border-radius-large);
|
border-top-right-radius: var(--d-border-radius-large);
|
||||||
border-top-left-radius: var(--d-border-radius-large);
|
border-top-left-radius: var(--d-border-radius-large);
|
||||||
@@ -20,7 +22,7 @@
|
|||||||
.has-full-page-chat .chat-replying-indicator-container {
|
.has-full-page-chat .chat-replying-indicator-container {
|
||||||
margin-bottom: var(--main-grid-gap);
|
margin-bottom: var(--main-grid-gap);
|
||||||
|
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -28,7 +30,7 @@
|
|||||||
.has-full-page-chat .chat-selection-management {
|
.has-full-page-chat .chat-selection-management {
|
||||||
margin-bottom: var(--main-grid-gap);
|
margin-bottom: var(--main-grid-gap);
|
||||||
|
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -40,17 +42,16 @@
|
|||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
container: content-width / inline-size;
|
|
||||||
|
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 488px) {
|
@media screen and (width <= 488px) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint(tablet) {
|
@include viewport.until(md) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -93,7 +94,7 @@
|
|||||||
bottom: var(--main-grid-gap);
|
bottom: var(--main-grid-gap);
|
||||||
left: var(--left-distance);
|
left: var(--left-distance);
|
||||||
|
|
||||||
@media screen and (max-width: 768px) {
|
@media screen and (width <= 768px) {
|
||||||
bottom: calc(var(--d-border-radius-large) * 2);
|
bottom: calc(var(--d-border-radius-large) * 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -103,7 +104,7 @@
|
|||||||
bottom: var(--main-grid-gap);
|
bottom: var(--main-grid-gap);
|
||||||
left: calc(var(--right-distance) - var(--d-border-radius-large));
|
left: calc(var(--right-distance) - var(--d-border-radius-large));
|
||||||
|
|
||||||
@media screen and (max-width: 768px) {
|
@media screen and (width <= 768px) {
|
||||||
bottom: calc(var(--d-border-radius-large) * 2);
|
bottom: calc(var(--d-border-radius-large) * 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -117,7 +118,7 @@
|
|||||||
left: var(--left-distance);
|
left: var(--left-distance);
|
||||||
height: var(--main-grid-gap);
|
height: var(--main-grid-gap);
|
||||||
|
|
||||||
@media screen and (max-width: 768px) {
|
@media screen and (width <= 768px) {
|
||||||
height: calc(var(--d-border-radius-large) * 2);
|
height: calc(var(--d-border-radius-large) * 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -157,7 +158,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (min-width: 768px) {
|
@media screen and (width >= 768px) {
|
||||||
.with-topic-progress {
|
.with-topic-progress {
|
||||||
bottom: calc(
|
bottom: calc(
|
||||||
env(safe-area-inset-bottom) + var(--composer-height, 0px) +
|
env(safe-area-inset-bottom) + var(--composer-height, 0px) +
|
||||||
@@ -166,7 +167,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 768px) {
|
@media screen and (width <= 768px) {
|
||||||
.with-topic-progress {
|
.with-topic-progress {
|
||||||
bottom: calc(
|
bottom: calc(
|
||||||
env(safe-area-inset-bottom) + var(--composer-height, 0px) +
|
env(safe-area-inset-bottom) + var(--composer-height, 0px) +
|
||||||
@@ -175,7 +176,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 400px) {
|
@media screen and (width <= 400px) {
|
||||||
.with-topic-progress {
|
.with-topic-progress {
|
||||||
bottom: calc(env(safe-area-inset-bottom) + var(--composer-height, 0px));
|
bottom: calc(env(safe-area-inset-bottom) + var(--composer-height, 0px));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.c-navbar-container {
|
.c-navbar-container {
|
||||||
|
.full-page-chat & {
|
||||||
padding: 0 1.5em;
|
padding: 0 1.5em;
|
||||||
|
}
|
||||||
background-color: var(--d-content-background);
|
background-color: var(--d-content-background);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -21,6 +23,10 @@ body.has-full-page-chat {
|
|||||||
.chat-drawer.is-expanded & {
|
.chat-drawer.is-expanded & {
|
||||||
border: none;
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.c-navbar__title {
|
||||||
|
padding-left: 0.33em; // visual alignment for chat index, which does not havea a backarrow
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.chat-drawer-outlet-container {
|
.chat-drawer-outlet-container {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
--d-sidebar-header-icon-color: var(--d-sidebar-link-color);
|
--d-sidebar-header-icon-color: var(--d-sidebar-link-color);
|
||||||
--d-sidebar-active-suffix-color: var(--d-sidebar-suffix-color);
|
--d-sidebar-active-suffix-color: var(--d-sidebar-suffix-color);
|
||||||
--d-sidebar-background: var(--background-color);
|
--d-sidebar-background: var(--background-color);
|
||||||
--d-sidebar-footer-fade: rgba(var(--tertiary-50-rgb), 1);
|
--d-sidebar-footer-fade: rgb(var(--tertiary-50-rgb), 1);
|
||||||
--d-sidebar-prefix-background: var(--d-selected);
|
--d-sidebar-prefix-background: var(--d-selected);
|
||||||
--d-sidebar-active-prefix-background: light-dark(
|
--d-sidebar-active-prefix-background: light-dark(
|
||||||
oklch(from var(--d-selected) calc(l * 0.85) c h),
|
oklch(from var(--d-selected) calc(l * 0.85) c h),
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (min-width: 1300px) {
|
@media screen and (width >= 1300px) {
|
||||||
html:not(.fullscreen-composer) {
|
html:not(.fullscreen-composer) {
|
||||||
.peek-mode-toggle svg {
|
.peek-mode-toggle svg {
|
||||||
transform: scaleX(-1);
|
transform: scaleX(-1);
|
||||||
|
|||||||
+3
-1
@@ -1,3 +1,5 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
|
|
||||||
#reply-control
|
#reply-control
|
||||||
.select-kit.dropdown-select-box.composer-actions
|
.select-kit.dropdown-select-box.composer-actions
|
||||||
.select-kit-header {
|
.select-kit-header {
|
||||||
@@ -12,7 +14,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#reply-control.hide-preview:not(.draft) {
|
#reply-control.hide-preview:not(.draft) {
|
||||||
@include breakpoint("mobile-extra-large", $rule: min-width) {
|
@include viewport.from(sm) {
|
||||||
background: var(--d-content-background);
|
background: var(--d-content-background);
|
||||||
border-top-right-radius: var(--d-border-radius);
|
border-top-right-radius: var(--d-border-radius);
|
||||||
border-top-left-radius: var(--d-border-radius);
|
border-top-left-radius: var(--d-border-radius);
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
|
|
||||||
// Full width layout. Ported from the Discourse Full Width theme component here
|
// Full width layout. Ported from the Discourse Full Width theme component here
|
||||||
// https://meta.discourse.org/t/discourse-full-width-component/292496, which we
|
// https://meta.discourse.org/t/discourse-full-width-component/292496, which we
|
||||||
// intend to move into core over time.
|
// intend to move into core over time.
|
||||||
@@ -23,7 +25,7 @@ $sidebar-width: 17em;
|
|||||||
body:not(.has-sidebar-page) & {
|
body:not(.has-sidebar-page) & {
|
||||||
max-width: unset;
|
max-width: unset;
|
||||||
|
|
||||||
@include breakpoint("mobile-extra-large") {
|
@include viewport.until(sm) {
|
||||||
max-width: 25vw;
|
max-width: 25vw;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -103,7 +105,7 @@ $sidebar-width: 17em;
|
|||||||
grid-area: extra-info;
|
grid-area: extra-info;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
|
||||||
@include breakpoint("tablet") {
|
@include viewport.until(md) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -127,7 +129,7 @@ $sidebar-width: 17em;
|
|||||||
// at narrower widths, when 1fr = 0
|
// at narrower widths, when 1fr = 0
|
||||||
// we can center without matching the sidebar's width
|
// we can center without matching the sidebar's width
|
||||||
// which allows the title to take up the remaining width
|
// which allows the title to take up the remaining width
|
||||||
@media screen and (max-width: 1400px) {
|
@media screen and (width <= 1400px) {
|
||||||
grid-template-columns:
|
grid-template-columns:
|
||||||
calc(var(--d-sidebar-width) - 11px)
|
calc(var(--d-sidebar-width) - 11px)
|
||||||
1fr
|
1fr
|
||||||
@@ -136,7 +138,7 @@ $sidebar-width: 17em;
|
|||||||
auto;
|
auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 1000px) {
|
@media screen and (width <= 1000px) {
|
||||||
gap: 0.5em;
|
gap: 0.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -189,11 +191,11 @@ $sidebar-width: 17em;
|
|||||||
.header-search--enabled .floating-search-input-wrapper {
|
.header-search--enabled .floating-search-input-wrapper {
|
||||||
grid-area: extra-info;
|
grid-area: extra-info;
|
||||||
|
|
||||||
@include breakpoint(tablet) {
|
@include viewport.until(md) {
|
||||||
grid-area: rspace;
|
grid-area: rspace;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -208,7 +210,7 @@ body.has-sidebar-page {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (min-width: calc($reply-area-max-width + ($sidebar-width * 2))) {
|
@media screen and (width >= calc($reply-area-max-width + ($sidebar-width * 2))) {
|
||||||
#reply-control.show-preview {
|
#reply-control.show-preview {
|
||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
@@ -219,7 +221,7 @@ body.has-sidebar-page {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: calc($reply-area-max-width + ($sidebar-width * 2))) and (min-width: calc($reply-area-max-width + calc($sidebar-width / 2))) {
|
@media screen and (width <= calc($reply-area-max-width + ($sidebar-width * 2))) and (width >= calc($reply-area-max-width + calc($sidebar-width / 2))) {
|
||||||
#reply-control.show-preview:not(.fullscreen) {
|
#reply-control.show-preview:not(.fullscreen) {
|
||||||
margin-left: $sidebar-width;
|
margin-left: $sidebar-width;
|
||||||
width: auto;
|
width: auto;
|
||||||
@@ -265,7 +267,7 @@ body.sidebar-animate {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// provides some extra space for login buttons
|
// provides some extra space for login buttons
|
||||||
@media screen and (min-width: 1400px) {
|
@media screen and (width >= 1400px) {
|
||||||
.anon {
|
.anon {
|
||||||
.d-header .panel {
|
.d-header .panel {
|
||||||
grid-column-start: -4;
|
grid-column-start: -4;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
// Fixing bulk select (only needed for desktop)
|
// Fixing bulk select (only needed for desktop)
|
||||||
.bulk-select-enabled {
|
.bulk-select-enabled {
|
||||||
.topic-list-header .topic-list-data.default {
|
.topic-list-header {
|
||||||
position: sticky;
|
position: relative;
|
||||||
top: 10em;
|
top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-author-avatar-data {
|
.topic-author-avatar-data {
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
grid-area: bulk-select;
|
grid-area: bulk-select;
|
||||||
margin-left: -0.5em;
|
margin-left: -0.5em;
|
||||||
|
|
||||||
@media screen and (max-width: 576px) {
|
@media screen and (width <= 576px) {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
|
|
||||||
label {
|
label {
|
||||||
@@ -47,19 +47,19 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// bulk select
|
||||||
.bulk-select-topics {
|
.bulk-select-topics {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: -1em;
|
right: 0;
|
||||||
background: var(--secondary);
|
background: var(--secondary);
|
||||||
border-radius: 0 0 0 var(--d-border-radius);
|
border-radius: 0 0 0 var(--d-border-radius);
|
||||||
padding: 1em;
|
display: flex;
|
||||||
|
gap: 0.5rem;
|
||||||
@media screen and (max-width: 1048px) {
|
margin: 0.5rem;
|
||||||
right: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
button {
|
button {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
margin: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-1
@@ -1,8 +1,10 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
|
|
||||||
.d-header {
|
.d-header {
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
background: var(--background-color);
|
background: var(--background-color);
|
||||||
|
|
||||||
@include breakpoint(extra-large, $rule: min-width) {
|
@include viewport.from(xl) {
|
||||||
padding-bottom: var(--main-grid-gap);
|
padding-bottom: var(--main-grid-gap);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+12
-10
@@ -1,3 +1,5 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
|
|
||||||
:root {
|
:root {
|
||||||
--main-grid-gap: 0.5em;
|
--main-grid-gap: 0.5em;
|
||||||
}
|
}
|
||||||
@@ -5,7 +7,7 @@
|
|||||||
html:not(:has(.has-full-page-chat)) {
|
html:not(:has(.has-full-page-chat)) {
|
||||||
background-color: var(--background-color);
|
background-color: var(--background-color);
|
||||||
|
|
||||||
@include breakpoint("mobile-extra-large") {
|
@include viewport.until(sm) {
|
||||||
background-color: var(--d-content-background);
|
background-color: var(--d-content-background);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -13,7 +15,7 @@ html:not(:has(.has-full-page-chat)) {
|
|||||||
body {
|
body {
|
||||||
-webkit-font-smoothing: antialiased;
|
-webkit-font-smoothing: antialiased;
|
||||||
|
|
||||||
@include breakpoint("mobile-extra-large") {
|
@include viewport.until(sm) {
|
||||||
background-color: var(--d-content-background);
|
background-color: var(--d-content-background);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -35,7 +37,7 @@ body.has-full-page-chat:not(.has-sidebar-page) {
|
|||||||
#main-outlet-wrapper {
|
#main-outlet-wrapper {
|
||||||
gap: var(--main-grid-gap);
|
gap: var(--main-grid-gap);
|
||||||
|
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
gap: 0;
|
gap: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -50,22 +52,22 @@ body.has-sidebar-page #main-outlet-wrapper {
|
|||||||
}
|
}
|
||||||
|
|
||||||
body:not(.has-sidebar-page) #main-outlet-wrapper {
|
body:not(.has-sidebar-page) #main-outlet-wrapper {
|
||||||
@include breakpoint(medium, $rule: min-width) {
|
@include viewport.from(lg) {
|
||||||
grid-template-columns: 0 minmax(0, 1fr) 0;
|
grid-template-columns: 0 minmax(0, 1fr) 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
body:not(.has-full-page-chat, .wizard) {
|
body:not(.has-full-page-chat, .wizard) {
|
||||||
@include breakpoint(extra-large, $rule: min-width) {
|
@include viewport.from(xl) {
|
||||||
background-color: var(--background-color);
|
background-color: var(--background-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
#main-outlet-wrapper {
|
#main-outlet-wrapper {
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
--main-grid-gap: 0;
|
--main-grid-gap: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (min-width: 768px) {
|
@media screen and (width >= 768px) {
|
||||||
gap: var(--main-grid-gap);
|
gap: var(--main-grid-gap);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -76,7 +78,7 @@ body:not(.has-full-page-chat, .wizard) {
|
|||||||
border-radius: var(--d-border-radius-large);
|
border-radius: var(--d-border-radius-large);
|
||||||
background-color: var(--d-content-background);
|
background-color: var(--d-content-background);
|
||||||
|
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -85,7 +87,7 @@ body:not(.has-full-page-chat, .wizard) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
> *:not(.experimental-screen, .activate-account) {
|
> *:not(.experimental-screen, .activate-account) {
|
||||||
@include breakpoint(medium, $rule: min-width) {
|
@include viewport.from(lg) {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
max-width: 1000px;
|
max-width: 1000px;
|
||||||
margin-inline: auto;
|
margin-inline: auto;
|
||||||
@@ -98,7 +100,7 @@ body:not(.has-full-page-chat, .wizard) {
|
|||||||
|
|
||||||
#list-area {
|
#list-area {
|
||||||
.show-more.has-topics {
|
.show-more.has-topics {
|
||||||
@include breakpoint(medium, $rule: min-width) {
|
@include viewport.from(lg) {
|
||||||
width: auto;
|
width: auto;
|
||||||
right: 50%;
|
right: 50%;
|
||||||
transform: translateX(50%);
|
transform: translateX(50%);
|
||||||
|
|||||||
+1
-1
@@ -71,7 +71,7 @@ input[type="color"]:focus,
|
|||||||
background-color: var(--background-color);
|
background-color: var(--background-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
// pinned topic excerpts are hidden on small screens too
|
// pinned topic excerpts are hidden on small screens too
|
||||||
.fk-d-menu__trigger.topic-list-layout-trigger {
|
.fk-d-menu__trigger.topic-list-layout-trigger {
|
||||||
display: none;
|
display: none;
|
||||||
|
|||||||
+19
-15
@@ -1,5 +1,7 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
|
|
||||||
// temp separate file to avoid merge hell… to be distributed later
|
// temp separate file to avoid merge hell… to be distributed later
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
html,
|
html,
|
||||||
.d-header {
|
.d-header {
|
||||||
background-color: var(--d-content-background);
|
background-color: var(--d-content-background);
|
||||||
@@ -8,19 +10,19 @@
|
|||||||
|
|
||||||
#main-outlet-wrapper {
|
#main-outlet-wrapper {
|
||||||
*[class*="navigation-"] & {
|
*[class*="navigation-"] & {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#main-outlet {
|
#main-outlet {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
padding-top: var(--spacing-block-sm);
|
padding-top: var(--spacing-block-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.list-controls {
|
.list-controls {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
padding-inline: var(
|
padding-inline: var(
|
||||||
--spacing-inline-m
|
--spacing-inline-m
|
||||||
) !important; // override will be fixed when the whole chat page shenanigans is resolved
|
) !important; // override will be fixed when the whole chat page shenanigans is resolved
|
||||||
@@ -29,14 +31,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.navigation-container {
|
.navigation-container {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
gap: var(--spacing-inline-s);
|
gap: var(--spacing-inline-s);
|
||||||
|
|
||||||
// don't know why we even hide this crucial navigation on mobile
|
|
||||||
.category-breadcrumb.hidden,
|
.category-breadcrumb.hidden,
|
||||||
.category-breadcrumb {
|
.category-breadcrumb {
|
||||||
display: flex !important;
|
display: flex !important;
|
||||||
column-gap: var(--spacing-inline-s);
|
column-gap: var(--spacing-inline-m);
|
||||||
row-gap: var(--spacing-block-xs);
|
row-gap: var(--spacing-block-xs);
|
||||||
flex-basis: 100%;
|
flex-basis: 100%;
|
||||||
|
|
||||||
@@ -47,9 +48,12 @@
|
|||||||
); // 2px is width of the outline
|
); // 2px is width of the outline
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.select-kit-header-wrapper {
|
||||||
|
gap: 0.25em;
|
||||||
|
}
|
||||||
|
|
||||||
.select-kit-header {
|
.select-kit-header {
|
||||||
background: var(--d-content-background);
|
background: var(--d-content-background);
|
||||||
border: 0;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -77,13 +81,13 @@
|
|||||||
#navigation-bar,
|
#navigation-bar,
|
||||||
.navigation-controls,
|
.navigation-controls,
|
||||||
.category-breadcrumb {
|
.category-breadcrumb {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.navigation-controls {
|
.navigation-controls {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
gap: var(--spacing-inline-s);
|
gap: var(--spacing-inline-s);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -91,12 +95,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.list-container {
|
.list-container {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
padding-inline: 0 !important;
|
padding-inline: 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-list-body {
|
.topic-list-body {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
border-top: 0;
|
border-top: 0;
|
||||||
padding-top: 0;
|
padding-top: 0;
|
||||||
}
|
}
|
||||||
@@ -104,7 +108,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#topic-title {
|
#topic-title {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
padding-inline: var(--spacing-inline-s) !important;
|
padding-inline: var(--spacing-inline-s) !important;
|
||||||
|
|
||||||
.title-wrapper {
|
.title-wrapper {
|
||||||
@@ -158,7 +162,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container.posts {
|
.container.posts {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
padding-inline: var(--spacing-inline-xs) !important;
|
padding-inline: var(--spacing-inline-xs) !important;
|
||||||
|
|
||||||
.main-avatar .avatar {
|
.main-avatar .avatar {
|
||||||
@@ -197,7 +201,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#topic-footer-buttons {
|
#topic-footer-buttons {
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
padding-inline: var(--spacing-inline-xs) !important;
|
padding-inline: var(--spacing-inline-xs) !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+24
-2
@@ -1,14 +1,36 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
.list-controls {
|
.list-controls {
|
||||||
position: sticky;
|
position: sticky;
|
||||||
top: var(--header-offset);
|
top: var(--header-offset);
|
||||||
background: var(--d-content-background);
|
background: var(--d-content-background);
|
||||||
z-index: z("base");
|
z-index: z("base");
|
||||||
padding: 1.5rem 0 1rem 0;
|
padding: 1.5rem 0 0 0;
|
||||||
max-width: unset;
|
max-width: unset;
|
||||||
|
|
||||||
|
@include viewport.until(sm) {
|
||||||
|
padding-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
.navigation-container {
|
.navigation-container {
|
||||||
|
position: relative;
|
||||||
gap: 1rem;
|
gap: 1rem;
|
||||||
|
|
||||||
|
@include viewport.from(sm) {
|
||||||
|
&:after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: -1rem;
|
||||||
|
height: 1rem;
|
||||||
|
background: linear-gradient(
|
||||||
|
to bottom,
|
||||||
|
var(--d-content-background),
|
||||||
|
transparent
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.category-breadcrumb {
|
.category-breadcrumb {
|
||||||
order: 1;
|
order: 1;
|
||||||
}
|
}
|
||||||
@@ -17,7 +39,7 @@
|
|||||||
.combo-box .combo-box-header {
|
.combo-box .combo-box-header {
|
||||||
// needs more specificity than just in the button file
|
// needs more specificity than just in the button file
|
||||||
background-color: var(--secondary);
|
background-color: var(--secondary);
|
||||||
border-radius: var(--d-border-radius-large);
|
border-radius: var(--d-border-radius);
|
||||||
border: 1px solid var(--primary-300);
|
border: 1px solid var(--primary-300);
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
|
|||||||
+4
-4
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
.sidebar-wrapper,
|
.sidebar-wrapper,
|
||||||
.sidebar-hamburger-dropdown {
|
.sidebar-hamburger-dropdown {
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
background: var(--secondary);
|
background: var(--secondary);
|
||||||
|
|
||||||
.sidebar-footer-wrapper {
|
.sidebar-footer-wrapper {
|
||||||
@@ -38,11 +38,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.sidebar-section-wrapper {
|
.sidebar-section-wrapper {
|
||||||
@include breakpoint(extra-large, $rule: min-width) {
|
@include viewport.from(xl) {
|
||||||
padding-block: 0.45em;
|
padding-block: 0.45em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
.hamburger-panel .revamped & {
|
.hamburger-panel .revamped & {
|
||||||
margin-bottom: var(--spacing-block-m);
|
margin-bottom: var(--spacing-block-m);
|
||||||
}
|
}
|
||||||
@@ -57,7 +57,7 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
@include breakpoint(extra-large, $rule: min-width) {
|
@include viewport.from(xl) {
|
||||||
gap: var(--spacing-block-xs);
|
gap: var(--spacing-block-xs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+182
-260
@@ -1,3 +1,5 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
|
|
||||||
.topic-list .topic-list-item-separator {
|
.topic-list .topic-list-item-separator {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
@@ -14,110 +16,107 @@
|
|||||||
border: none;
|
border: none;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
gap: 1em;
|
gap: 1.25em;
|
||||||
|
|
||||||
@include breakpoint(medium) {
|
@include viewport.until(lg) {
|
||||||
gap: 0.5em;
|
gap: 0.5em;
|
||||||
padding: 0 0.5em;
|
padding: 0 0.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
gap: 0;
|
gap: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-list-body .topic-list-item {
|
.topic-list-body .topic-list-item {
|
||||||
|
position: relative;
|
||||||
|
background: var(--d-content-background);
|
||||||
|
box-shadow: 0 0 12px 1px var(--topic-card-shadow);
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
padding: 0.75em 1rem;
|
padding: 0.75em 1rem;
|
||||||
border: 1px solid var(--primary-300);
|
border: 1px solid var(--primary-300);
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: 20px min-content min-content auto min-content;
|
grid-template-columns: min-content min-content auto min-content;
|
||||||
grid-template-rows: auto minmax(20px, auto);
|
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
". . . . status"
|
"creator title title status"
|
||||||
"activity . . likes-replies category";
|
"creator category activity likes-replies";
|
||||||
grid-column-gap: 12px;
|
grid-column-gap: 0.75rem;
|
||||||
grid-row-gap: 8px;
|
grid-row-gap: 0.5rem;
|
||||||
border-radius: var(--d-border-radius);
|
border-radius: var(--d-border-radius);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
||||||
td.main-link .link-top-line {
|
.bulk-select-enabled & {
|
||||||
grid-row: 1/2;
|
grid-template-columns: min-content min-content min-content auto min-content;
|
||||||
grid-column: 1/-1;
|
|
||||||
font-weight: 500;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.--has-status-card td.main-link .link-top-line {
|
|
||||||
grid-column: 1/-2;
|
|
||||||
}
|
|
||||||
|
|
||||||
@include breakpoint(extra-large) {
|
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
". . . . status"
|
"bulk-select creator title title status"
|
||||||
"activity . . likes-replies category";
|
"bulk-select creator category activity likes-replies";
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
td.main-link .link-top-line,
|
|
||||||
&.--has-status-card td.main-link .link-top-line {
|
|
||||||
grid-row: 2/3;
|
|
||||||
grid-column: 1/-1;
|
|
||||||
}
|
|
||||||
grid-template-columns: 20px repeat(5, 1fr);
|
|
||||||
grid-template-rows: auto auto auto;
|
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
"category category category category category status"
|
"category category category status"
|
||||||
". . . . . ."
|
"creator title title title"
|
||||||
"activity . . . . likes-replies";
|
"activity activity activity likes-replies";
|
||||||
|
row-gap: 0.75em;
|
||||||
border: none;
|
border: none;
|
||||||
border-bottom: 1px solid var(--primary-200);
|
border-bottom: 1px solid var(--primary-200);
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.excerpt-expanded {
|
&:hover {
|
||||||
grid-template-columns: 20px auto auto min-content min-content;
|
.discourse-no-touch & {
|
||||||
grid-template-rows: auto auto auto;
|
border-color: var(--accent-color);
|
||||||
grid-template-areas:
|
background: var(--d-content-background);
|
||||||
". . . . status"
|
}
|
||||||
"activity . . . ."
|
|
||||||
"excerpt excerpt excerpt likes-replies category";
|
|
||||||
|
|
||||||
@include breakpoint(extra-large) {
|
|
||||||
grid-template-areas:
|
|
||||||
". . . . status"
|
|
||||||
"activity . . . ."
|
|
||||||
"excerpt excerpt excerpt likes-replies category";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
&.selected {
|
||||||
grid-template-rows: auto auto auto;
|
box-shadow:
|
||||||
grid-template-areas:
|
0 0 0 2px var(--accent-color),
|
||||||
"category category category category status"
|
0 0 12px 1px var(--topic-card-shadow);
|
||||||
". . . . ."
|
}
|
||||||
"activity . . . likes-replies";
|
|
||||||
|
|
||||||
|
&.excerpt-expanded {
|
||||||
|
@include viewport.until(sm) {
|
||||||
.topic-excerpt,
|
.topic-excerpt,
|
||||||
.link-bottom-line {
|
.link-bottom-line {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-likes-replies-data {
|
@include viewport.from(sm) {
|
||||||
align-self: flex-end;
|
grid-template-areas:
|
||||||
|
"creator title title status"
|
||||||
|
"creator category activity likes-replies "
|
||||||
|
"creator excerpt excerpt excerpt";
|
||||||
|
|
||||||
|
.bulk-select-enabled & {
|
||||||
|
grid-template-areas:
|
||||||
|
"bulk-select creator title title status"
|
||||||
|
"bulk-select creator category activity likes-replies "
|
||||||
|
" bulk-select creator excerpt excerpt excerpt";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-category-data {
|
// when there is enough space, excerpt can be next to likes-replies
|
||||||
align-items: flex-end;
|
@include viewport.from(lg) {
|
||||||
|
grid-template-areas:
|
||||||
|
"creator title title status"
|
||||||
|
"creator category activity ."
|
||||||
|
"creator excerpt excerpt likes-replies";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.badge-category__wrapper {
|
.link-top-line {
|
||||||
height: min-content;
|
grid-area: title;
|
||||||
}
|
font-weight: 500;
|
||||||
|
|
||||||
.link-bottom-line {
|
|
||||||
display: flex;
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
.title {
|
||||||
|
padding: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -126,7 +125,8 @@
|
|||||||
td.posters,
|
td.posters,
|
||||||
td.posts,
|
td.posts,
|
||||||
td.views,
|
td.views,
|
||||||
td.activity {
|
td.activity,
|
||||||
|
td.topic-category-status-data {
|
||||||
display: contents;
|
display: contents;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -134,59 +134,102 @@
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// topic activity, avatar, text
|
// display:nones
|
||||||
|
td.main-link a.topic-status,
|
||||||
|
.link-bottom-line,
|
||||||
|
.badge-notification.new-topic::before {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.topic-category-data {
|
||||||
|
grid-area: category;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.badge-category__wrapper {
|
||||||
|
border-radius: var(--d-border-radius);
|
||||||
|
padding: 0.25em 0.5rem;
|
||||||
|
background-color: light-dark(
|
||||||
|
oklch(from var(--category-badge-color) 97% calc(c * 0.3) h),
|
||||||
|
oklch(from var(--category-badge-color) 45% calc(c * 0.5) h)
|
||||||
|
);
|
||||||
|
|
||||||
|
@include viewport.until(md) {
|
||||||
|
padding: 0.25em 0.5rem;
|
||||||
|
font-size: var(--font-down-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.badge-category__name {
|
||||||
|
color: light-dark(
|
||||||
|
oklch(from var(--category-badge-color) 20% calc(c * 1) h),
|
||||||
|
oklch(from var(--category-badge-color) 100% calc(c * 0.9) h)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// OP avatar
|
||||||
|
.topic-creator-data {
|
||||||
|
grid-area: creator;
|
||||||
|
|
||||||
|
.avatar {
|
||||||
|
height: 50px;
|
||||||
|
width: 50px;
|
||||||
|
border-radius: var(--d-border-radius);
|
||||||
|
|
||||||
|
@include viewport.until(sm) {
|
||||||
|
height: 30px;
|
||||||
|
width: 30px;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.dot-separator {
|
||||||
|
width: 0.25em;
|
||||||
|
height: 0.25em;
|
||||||
|
background-color: var(--primary-500);
|
||||||
|
border-radius: 100%;
|
||||||
|
margin-inline: 0.25em;
|
||||||
|
}
|
||||||
|
|
||||||
|
// topic activity, icon, text
|
||||||
.topic-activity-data {
|
.topic-activity-data {
|
||||||
|
@include ellipsis;
|
||||||
grid-area: activity;
|
grid-area: activity;
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-activity {
|
.topic-activity {
|
||||||
display: grid;
|
display: flex;
|
||||||
grid-template-columns: 20px auto auto auto;
|
|
||||||
font-size: var(--font-down-1);
|
font-size: var(--font-down-1);
|
||||||
height: 100%;
|
height: 100%;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
gap: 0.25em;
|
gap: 0.25em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-activity__user .avatar {
|
.topic-activity__type {
|
||||||
width: 20px;
|
border-radius: 0.25rem;
|
||||||
height: 20px;
|
|
||||||
border-radius: 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.topic-activity__user {
|
|
||||||
height: 20px;
|
|
||||||
width: 20px;
|
|
||||||
border-radius: 4px;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
background-color: var(--primary-low);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-activity__username {
|
.topic-activity__username {
|
||||||
margin-left: 0.25em;
|
@include ellipsis;
|
||||||
text-wrap: nowrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
|
||||||
.topic-activity__username {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.topic-activity__reason {
|
|
||||||
margin-left: 0.25em;
|
margin-left: 0.25em;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
.topic-activity.--updated .topic-activity__reason {
|
// timestamp
|
||||||
margin-left: 0.25em;
|
td.activity .post-activity {
|
||||||
|
grid-area: activity;
|
||||||
|
font-size: var(--font-down-1);
|
||||||
|
color: var(--primary-500);
|
||||||
|
margin-left: auto;
|
||||||
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// status
|
// status
|
||||||
.topic-status-data {
|
.topic-status-data {
|
||||||
grid-area: status;
|
grid-area: status;
|
||||||
position: relative;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-status-card {
|
.topic-status-card {
|
||||||
@@ -194,23 +237,30 @@
|
|||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
gap: 4px;
|
gap: 0.25em;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 0 6px;
|
padding: 0.2em 0.5rem;
|
||||||
font-size: var(--font-down-2);
|
font-size: var(--font-down-3);
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
border-radius: var(--d-border-radius);
|
border-radius: var(--d-border-radius);
|
||||||
border: 1px solid var(--status-color);
|
border: 1px solid var(--status-color);
|
||||||
color: var(--status-color);
|
color: var(--status-color);
|
||||||
width: min-content;
|
width: min-content;
|
||||||
|
|
||||||
@include breakpoint("large", min-width) {
|
&.--pinned {
|
||||||
|
--status-color: var(--primary-500);
|
||||||
|
}
|
||||||
|
|
||||||
|
&.--hot {
|
||||||
|
--status-color: #e45735;
|
||||||
|
}
|
||||||
|
|
||||||
|
@include viewport.from(lg) {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 0;
|
right: 1rem;
|
||||||
top: -20px;
|
top: 0;
|
||||||
|
transform: translateY(-45%);
|
||||||
background-color: var(--d-content-background);
|
background-color: var(--d-content-background);
|
||||||
height: 20px;
|
|
||||||
font-size: var(--font-down-3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
svg {
|
svg {
|
||||||
@@ -219,31 +269,15 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-status-card.--pinned {
|
|
||||||
--status-color: var(--primary-500);
|
|
||||||
}
|
|
||||||
|
|
||||||
.topic-status-card.--hot {
|
|
||||||
--status-color: #e45735;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link-top-line .event-date {
|
.link-top-line .event-date {
|
||||||
margin-left: 0.5em;
|
margin-left: 0.5em;
|
||||||
font-size: var(--font-down-3);
|
font-size: var(--font-down-3);
|
||||||
}
|
}
|
||||||
|
|
||||||
td.main-link a.topic-status {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.topic-list-data {
|
.topic-list-data {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
td.main-link .link-top-line a.raw-topic-link {
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.topic-post-badges .badge-notification.unread-posts,
|
.topic-post-badges .badge-notification.unread-posts,
|
||||||
.topic-post-badges .badge-notification.new-topic {
|
.topic-post-badges .badge-notification.new-topic {
|
||||||
background-color: var(--tertiary);
|
background-color: var(--tertiary);
|
||||||
@@ -256,31 +290,13 @@
|
|||||||
min-width: unset;
|
min-width: unset;
|
||||||
}
|
}
|
||||||
|
|
||||||
.badge-notification.new-topic::before {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
// timestamp
|
|
||||||
td.activity .post-activity {
|
|
||||||
grid-area: activity;
|
|
||||||
font-size: var(--font-down-1);
|
|
||||||
color: var(--primary-500);
|
|
||||||
margin-left: auto;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link-bottom-line {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
// metadata
|
|
||||||
// metadata - excerpt
|
// metadata - excerpt
|
||||||
.topic-excerpt,
|
.topic-excerpt {
|
||||||
td.main-link .link-bottom-line {
|
grid-area: excerpt;
|
||||||
grid-row: 3 / -1;
|
|
||||||
grid-column: 1 / -3;
|
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
font-size: var(--font-down-2);
|
font-size: var(--font-down-2);
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
.excerpt__contents {
|
.excerpt__contents {
|
||||||
color: var(--primary-high);
|
color: var(--primary-high);
|
||||||
@@ -292,42 +308,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
td.topic-category-status-data {
|
|
||||||
display: contents;
|
|
||||||
}
|
|
||||||
|
|
||||||
td.topic-category-data {
|
|
||||||
grid-area: category;
|
|
||||||
display: flex;
|
|
||||||
justify-content: flex-end;
|
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
|
||||||
justify-content: flex-start;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
td.topic-category-data .badge-category__wrapper,
|
|
||||||
td.main-link .link-bottom-line .badge-category__wrapper {
|
|
||||||
border-radius: var(--d-border-radius);
|
|
||||||
padding: 3px 6px;
|
|
||||||
background-color: light-dark(
|
|
||||||
oklch(from var(--category-badge-color) 97% calc(c * 0.3) h),
|
|
||||||
oklch(from var(--category-badge-color) 45% calc(c * 0.5) h)
|
|
||||||
);
|
|
||||||
|
|
||||||
@include breakpoint(tablet) {
|
|
||||||
padding: 2px 6px;
|
|
||||||
font-size: var(--font-down-2);
|
|
||||||
}
|
|
||||||
|
|
||||||
.badge-category__name {
|
|
||||||
color: light-dark(
|
|
||||||
oklch(from var(--category-badge-color) 20% calc(c * 1) h),
|
|
||||||
oklch(from var(--category-badge-color) 100% calc(c * 0.9) h)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
td.main-link .discourse-tags {
|
td.main-link .discourse-tags {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
@@ -356,28 +336,31 @@
|
|||||||
gap: 0.5em;
|
gap: 0.5em;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
color: var(--primary-500);
|
color: var(--primary-500);
|
||||||
|
font-size: var(--font-down-1-rem);
|
||||||
|
|
||||||
svg {
|
svg {
|
||||||
color: var(--primary-600);
|
color: var(--primary-600);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.bulk-select {
|
||||||
|
grid-area: bulk-select;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
align-self: center;
|
||||||
|
justify-self: center;
|
||||||
|
|
||||||
|
@include viewport.until(sm) {
|
||||||
|
align-self: flex-start;
|
||||||
}
|
}
|
||||||
|
|
||||||
.topic-list-item {
|
label {
|
||||||
background: var(--d-content-background);
|
margin: 0;
|
||||||
box-shadow: 0 0 12px 1px var(--topic-card-shadow);
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
.discourse-no-touch & {
|
|
||||||
border-color: var(--accent-color);
|
|
||||||
background: var(--d-content-background);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&.selected {
|
&th {
|
||||||
box-shadow:
|
display: none;
|
||||||
0 0 0 2px var(--accent-color),
|
}
|
||||||
0 0 12px 1px var(--topic-card-shadow);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -393,7 +376,7 @@
|
|||||||
". . . . . . dropdown"
|
". . . . . . dropdown"
|
||||||
"avatar update metadata metadata metadata . category";
|
"avatar update metadata metadata metadata . category";
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
grid-template-columns: min-content min-content auto min-content min-content min-content min-content;
|
grid-template-columns: min-content min-content auto min-content min-content min-content min-content;
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
" . . . . . . dropdown"
|
" . . . . . . dropdown"
|
||||||
@@ -407,7 +390,7 @@
|
|||||||
&.has-metadata {
|
&.has-metadata {
|
||||||
grid-template-columns: 20px min-content min-content auto min-content min-content min-content;
|
grid-template-columns: 20px min-content min-content auto min-content min-content min-content;
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
". . . . . . . dropdown"
|
". . . . . . . dropdown"
|
||||||
"update update metadata metadata metadata metadata category category";
|
"update update metadata metadata metadata metadata category category";
|
||||||
@@ -427,11 +410,11 @@
|
|||||||
"excerpt excerpt excerpt ."
|
"excerpt excerpt excerpt ."
|
||||||
"excerpt excerpt excerpt category";
|
"excerpt excerpt excerpt category";
|
||||||
|
|
||||||
@include breakpoint(extra-large, $rule: min-width) {
|
@include viewport.from(xl) {
|
||||||
grid-template-columns: 20px min-content auto min-content;
|
grid-template-columns: 20px min-content auto min-content;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
grid-template-columns: auto min-content;
|
grid-template-columns: auto min-content;
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
". dropdown"
|
". dropdown"
|
||||||
@@ -451,7 +434,7 @@
|
|||||||
"excerpt excerpt excerpt . "
|
"excerpt excerpt excerpt . "
|
||||||
"excerpt excerpt excerpt category";
|
"excerpt excerpt excerpt category";
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
grid-template-columns: auto min-content;
|
grid-template-columns: auto min-content;
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
" . dropdown"
|
" . dropdown"
|
||||||
@@ -561,7 +544,7 @@
|
|||||||
". . . . . status dropdown"
|
". . . . . status dropdown"
|
||||||
"activity . . . . likes-replies category";
|
"activity . . . . likes-replies category";
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
@include viewport.until(sm) {
|
||||||
grid-template-columns: 20px min-content min-content auto min-content min-content min-content 36px;
|
grid-template-columns: 20px min-content min-content auto min-content min-content min-content 36px;
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
"category category . . . . status dropdown"
|
"category category . . . . status dropdown"
|
||||||
@@ -619,19 +602,25 @@ body.user-messages-page {
|
|||||||
grid-template-rows: auto auto;
|
grid-template-rows: auto auto;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
|
.discourse-no-touch & {
|
||||||
background-color: var(--primary-low);
|
background-color: var(--primary-low);
|
||||||
border-color: var(--primary-200);
|
border-color: var(--primary-200);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
td.topic-category-data,
|
td.topic-category-data,
|
||||||
td.topic-likes-replies-data,
|
td.topic-likes-replies-data,
|
||||||
td.topic-status-data {
|
td.topic-status-data,
|
||||||
|
td.topic-creator-data {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.main-link .link-top-line {
|
||||||
|
grid-area: title;
|
||||||
|
}
|
||||||
|
|
||||||
&.visited .main-link .link-top-line {
|
&.visited .main-link .link-top-line {
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
grid-area: title;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
td.topic-activity-data {
|
td.topic-activity-data {
|
||||||
@@ -658,73 +647,6 @@ body.user-messages-page {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Bulk select
|
|
||||||
.bulk-select-enabled .topic-list-body .topic-list-item {
|
|
||||||
grid-template-areas:
|
|
||||||
"bulk-select . . . status"
|
|
||||||
"bulk-select activity activity . category";
|
|
||||||
|
|
||||||
@include breakpoint(large) {
|
|
||||||
grid-template-areas:
|
|
||||||
"bulk-select . . . status"
|
|
||||||
"bulk-select activity activity . category";
|
|
||||||
}
|
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
|
||||||
grid-template-areas:
|
|
||||||
"bulk-select category . . . status"
|
|
||||||
"bulk-select . . . . ."
|
|
||||||
"bulk-select activity activity . . .";
|
|
||||||
|
|
||||||
td.main-link .link-top-line,
|
|
||||||
&.--has-status-card td.main-link .link-top-line {
|
|
||||||
grid-column: 2/-1;
|
|
||||||
grid-row: 2;
|
|
||||||
font-weight: 500;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
td.topic-likes-replies-data {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
td.main-link .link-top-line,
|
|
||||||
&.--has-status-card td.main-link .link-top-line {
|
|
||||||
grid-column: 2/-1;
|
|
||||||
font-weight: 500;
|
|
||||||
}
|
|
||||||
|
|
||||||
.topic-excerpt {
|
|
||||||
grid-area: excerpt;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.excerpt-expanded {
|
|
||||||
grid-template-areas:
|
|
||||||
"bulk-select . . . status" "bulk-select activity . . ."
|
|
||||||
"bulk-select excerpt excerpt excerpt category";
|
|
||||||
|
|
||||||
@include breakpoint(mobile-extra-large) {
|
|
||||||
grid-template-areas:
|
|
||||||
"bulk-select category . . . status"
|
|
||||||
"bulk-select . . . . ."
|
|
||||||
"bulk-select activity activity . . .";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.bulk-select {
|
|
||||||
grid-area: bulk-select;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
align-self: center;
|
|
||||||
justify-self: center;
|
|
||||||
|
|
||||||
label {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.event-date-container {
|
.event-date-container {
|
||||||
display: inline-flex;
|
display: inline-flex;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|||||||
+6
-12
@@ -1,3 +1,5 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
|
|
||||||
.post-stream {
|
.post-stream {
|
||||||
.contents {
|
.contents {
|
||||||
font-size: var(--font-up-1);
|
font-size: var(--font-up-1);
|
||||||
@@ -6,14 +8,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.container.posts .topic-navigation:not(.with-topic-progress) {
|
|
||||||
// super fragile because new sticky topic title doesn't have a calculated value (= 53px with this font and size but…)
|
|
||||||
top: calc(
|
|
||||||
var(--header-offset, 60px) + 53px + calc(var(--spacing-block-l) * 2)
|
|
||||||
);
|
|
||||||
z-index: 300;
|
|
||||||
}
|
|
||||||
|
|
||||||
.timeline-container .topic-timeline {
|
.timeline-container .topic-timeline {
|
||||||
min-width: unset; // why we have this?
|
min-width: unset; // why we have this?
|
||||||
|
|
||||||
@@ -21,7 +15,7 @@
|
|||||||
border-left: 1px solid var(--accent-color);
|
border-left: 1px solid var(--accent-color);
|
||||||
|
|
||||||
.timeline-scroller {
|
.timeline-scroller {
|
||||||
@include breakpoint("medium", $rule: min-width) {
|
@include viewport.from(lg) {
|
||||||
margin-left: -4.5px;
|
margin-left: -4.5px;
|
||||||
background: var(--d-content-background);
|
background: var(--d-content-background);
|
||||||
height: 40px !important; // height is coming from element style have no other choice
|
height: 40px !important; // height is coming from element style have no other choice
|
||||||
@@ -36,7 +30,7 @@
|
|||||||
.timeline-handle {
|
.timeline-handle {
|
||||||
background-color: var(--accent-color);
|
background-color: var(--accent-color);
|
||||||
|
|
||||||
@include breakpoint("medium", $rule: min-width) {
|
@include viewport.from(lg) {
|
||||||
width: 8px;
|
width: 8px;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
height: calc(100% - 6px);
|
height: calc(100% - 6px);
|
||||||
@@ -47,7 +41,7 @@
|
|||||||
|
|
||||||
// should probably get rid of this extra specificity class in core?
|
// should probably get rid of this extra specificity class in core?
|
||||||
.timeline-container.timeline-fullscreen {
|
.timeline-container.timeline-fullscreen {
|
||||||
@include breakpoint("medium", $rule: max-width) {
|
@include viewport.until(lg) {
|
||||||
.topic-timeline
|
.topic-timeline
|
||||||
.timeline-scrollarea
|
.timeline-scrollarea
|
||||||
.timeline-scroller
|
.timeline-scroller
|
||||||
@@ -60,7 +54,7 @@
|
|||||||
.container.posts {
|
.container.posts {
|
||||||
grid-template-columns: auto 8em;
|
grid-template-columns: auto 8em;
|
||||||
|
|
||||||
@media screen and (max-width: 924px) {
|
@media screen and (width <= 924px) {
|
||||||
grid-template-columns: auto auto;
|
grid-template-columns: auto auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+13
-11
@@ -1,3 +1,5 @@
|
|||||||
|
@use "lib/viewport";
|
||||||
|
|
||||||
.welcome-banner {
|
.welcome-banner {
|
||||||
&__wrap {
|
&__wrap {
|
||||||
display: grid;
|
display: grid;
|
||||||
@@ -9,11 +11,11 @@
|
|||||||
padding: 1.5em 0 2.5em;
|
padding: 1.5em 0 2.5em;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
|
|
||||||
@media screen and (max-width: 768px) {
|
@media screen and (width <= 768px) {
|
||||||
padding: 1em;
|
padding: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint("mobile-extra-large") {
|
@include viewport.until(sm) {
|
||||||
display: block;
|
display: block;
|
||||||
padding: 0.5em;
|
padding: 0.5em;
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
@@ -25,22 +27,22 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
align-self: center;
|
align-self: center;
|
||||||
|
|
||||||
@media screen and (max-width: 1028px) {
|
@media screen and (width <= 1028px) {
|
||||||
grid-row: 2/-1;
|
grid-row: 2/-1;
|
||||||
grid-column: 1/-1;
|
grid-column: 1/-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 768px) {
|
@media screen and (width <= 768px) {
|
||||||
grid-column: 2/-1;
|
grid-column: 2/-1;
|
||||||
grid-row: 1/-1;
|
grid-row: 1/-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 600px) {
|
@media screen and (width <= 600px) {
|
||||||
grid-row: 2/-1;
|
grid-row: 2/-1;
|
||||||
grid-column: 1/-1;
|
grid-column: 1/-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint("mobile-extra-large") {
|
@include viewport.until(sm) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -54,7 +56,7 @@
|
|||||||
.search-menu-container .search-input {
|
.search-menu-container .search-input {
|
||||||
background: var(--d-content-background);
|
background: var(--d-content-background);
|
||||||
border: 1px solid var(--search-color);
|
border: 1px solid var(--search-color);
|
||||||
box-shadow: 0 4px 10px rgba(52, 6, 121, 15%);
|
box-shadow: 0 4px 10px rgb(52, 6, 121, 15%);
|
||||||
}
|
}
|
||||||
|
|
||||||
.search-menu .search-input:focus-within,
|
.search-menu .search-input:focus-within,
|
||||||
@@ -86,7 +88,7 @@
|
|||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: var(--search-color);
|
color: var(--search-color);
|
||||||
|
|
||||||
@media screen and (max-width: 1028px) {
|
@media screen and (width <= 1028px) {
|
||||||
font-size: var(--font-up-4);
|
font-size: var(--font-up-4);
|
||||||
grid-column: 1/-1;
|
grid-column: 1/-1;
|
||||||
grid-row: 1;
|
grid-row: 1;
|
||||||
@@ -94,21 +96,21 @@
|
|||||||
margin-bottom: 0.5em;
|
margin-bottom: 0.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 768px) {
|
@media screen and (width <= 768px) {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
grid-column: 1/2;
|
grid-column: 1/2;
|
||||||
grid-row: 1/-1;
|
grid-row: 1/-1;
|
||||||
font-size: var(--font-up-3);
|
font-size: var(--font-up-3);
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 600px) {
|
@media screen and (width <= 600px) {
|
||||||
grid-column: 1/-1;
|
grid-column: 1/-1;
|
||||||
grid-row: 1;
|
grid-row: 1;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin-bottom: 0.5em;
|
margin-bottom: 0.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include breakpoint("mobile-extra-large") {
|
@include viewport.until(sm) {
|
||||||
font-size: var(--font-up-2);
|
font-size: var(--font-up-2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ describe "Horizon theme | High level", type: :system do
|
|||||||
"topic-status-data",
|
"topic-status-data",
|
||||||
"topic-category-data",
|
"topic-category-data",
|
||||||
"topic-likes-replies-data",
|
"topic-likes-replies-data",
|
||||||
|
"topic-creator-data",
|
||||||
"topic-activity-data",
|
"topic-activity-data",
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user