nodebb-theme-harmony 1.0.0-beta.65 → 1.0.0-beta.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/scss/account.scss +1 -1
- package/scss/modules/topic-navigator.scss +18 -0
- package/scss/topic.scss +1 -1
- package/templates/account/categories.tpl +17 -13
- package/templates/category.tpl +1 -1
- package/templates/partials/account/category-item.tpl +4 -4
- package/templates/partials/account/sidebar-left.tpl +6 -0
- package/templates/partials/topic/navigator.tpl +4 -5
- package/templates/partials/topic/post.tpl +1 -1
- package/templates/partials/topic-list-bar.tpl +2 -2
- package/templates/popular.tpl +3 -1
- package/templates/recent.tpl +3 -2
- package/templates/top.tpl +3 -1
- package/templates/unread.tpl +3 -1
package/package.json
CHANGED
package/scss/account.scss
CHANGED
|
@@ -3,11 +3,29 @@
|
|
|
3
3
|
.scroller-container {
|
|
4
4
|
height: 300px;
|
|
5
5
|
border-left: 2px solid $border-color;
|
|
6
|
+
|
|
6
7
|
.scroller-thumb {
|
|
8
|
+
&:not(.active) {
|
|
9
|
+
transition: top 100ms linear;
|
|
10
|
+
}
|
|
7
11
|
cursor: grab;
|
|
8
12
|
&.active {
|
|
9
13
|
cursor: grabbing;
|
|
10
14
|
}
|
|
11
15
|
}
|
|
16
|
+
|
|
17
|
+
.unread {
|
|
18
|
+
width: 1px;
|
|
19
|
+
height: 0; // initial
|
|
20
|
+
bottom: 0;
|
|
21
|
+
background: $primary;
|
|
22
|
+
transition: $transition-base;
|
|
23
|
+
left: -1px;
|
|
24
|
+
|
|
25
|
+
.meta {
|
|
26
|
+
left: 5px;
|
|
27
|
+
font-size: 13px;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
12
30
|
}
|
|
13
31
|
}
|
package/scss/topic.scss
CHANGED
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
<!-- IMPORT partials/account/header.tpl -->
|
|
2
2
|
|
|
3
|
-
<
|
|
3
|
+
<div class="d-flex justify-content-between align-items-center mb-3">
|
|
4
|
+
<div class="d-flex gap-1">
|
|
5
|
+
<h3 class="fw-semibold fs-5 mb-0">{title}</h3>
|
|
6
|
+
</div>
|
|
4
7
|
|
|
5
|
-
<div class="
|
|
6
|
-
<div class="
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
</
|
|
8
|
+
<div class="d-flex gap-1">
|
|
9
|
+
<div class="btn-group bottom-sheet" component="category/watch/all">
|
|
10
|
+
<button class="btn-ghost-sm fw-semibold dropdown-toggle" data-bs-toggle="dropdown" type="button">
|
|
11
|
+
<span>[[user:change_all]]</span>
|
|
12
|
+
</button>
|
|
13
|
+
<ul class="dropdown-menu dropdown-menu-end">
|
|
14
|
+
<li><a class="dropdown-item" href="#" component="category/watching" data-state="watching"><i class="fa fa-fw fa-inbox"></i> [[category:watching]]<p class="help-text"><small>[[category:watching.description]]</small></p></a></li>
|
|
15
|
+
<li><a class="dropdown-item" href="#" component="category/notwatching" data-state="notwatching"><i class="fa fa-fw fa-clock-o"></i> [[category:not-watching]]<p class="help-text"><small>[[category:not-watching.description]]</small></p></a></li>
|
|
16
|
+
<li><a class="dropdown-item" href="#" component="category/ignoring" data-state="ignoring"><i class="fa fa-fw fa-eye-slash"></i> [[category:ignoring]]<p class="help-text"><small>[[category:ignoring.description]]</small></p></a></li>
|
|
17
|
+
</ul>
|
|
18
|
+
</div>
|
|
16
19
|
</div>
|
|
17
20
|
</div>
|
|
18
|
-
|
|
21
|
+
|
|
22
|
+
<div>
|
|
19
23
|
<ul class="categories list-unstyled" itemscope itemtype="http://www.schema.org/ItemList">
|
|
20
24
|
{{{each categories}}}
|
|
21
25
|
<!-- IMPORT partials/account/category-item.tpl -->
|
package/templates/category.tpl
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
<li component="categories/category" data-cid="{./cid}" class="row category-{./cid} mb-4">
|
|
1
|
+
<li component="categories/category" data-cid="{./cid}" data-parent-cid="{../parentCid}" class="row category-{./cid} mb-4">
|
|
2
2
|
<meta itemprop="name" content="{./name}">
|
|
3
|
-
<div class="content col-10 depth-{
|
|
3
|
+
<div class="content col-10 depth-{./depth}">
|
|
4
4
|
<div class="d-flex">
|
|
5
5
|
<div class="fs-3">
|
|
6
6
|
{buildCategoryIcon(@value, "40px", "rounded-1")}
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
</h3>
|
|
13
13
|
<!-- description -->
|
|
14
14
|
<div class="mb-2">
|
|
15
|
-
{{{ if
|
|
16
|
-
<div class="description text-muted">{
|
|
15
|
+
{{{ if ./descriptionParsed }}}
|
|
16
|
+
<div class="description text-muted">{./descriptionParsed}</div>
|
|
17
17
|
{{{ end }}}
|
|
18
18
|
</div>
|
|
19
19
|
</div>
|
|
@@ -39,6 +39,12 @@
|
|
|
39
39
|
</a>
|
|
40
40
|
|
|
41
41
|
{{{ if canEdit }}}
|
|
42
|
+
<a href="{config.relative_path}/user/{userslug}/categories" class="btn-ghost fw-semibold
|
|
43
|
+
{{{ if template.account/categories }}}active{{{ end }}}">
|
|
44
|
+
<div class="flex-1">[[user:watched_categories]]</div>
|
|
45
|
+
<span class="text-xs human-readable-number" title="{counts.categoriesWatched}">{counts.categoriesWatched}</span>
|
|
46
|
+
</a>
|
|
47
|
+
|
|
42
48
|
<a href="{config.relative_path}/user/{userslug}/blocks" class="btn-ghost fw-semibold
|
|
43
49
|
{{{ if template.account/blocks }}}active{{{ end }}}">
|
|
44
50
|
<div class="flex-1">[[user:blocked-users]]</div>
|
|
@@ -7,14 +7,13 @@
|
|
|
7
7
|
<div class="scroller-thumb-icon bg-primary rounded d-inline-block" style="width:9px; height: 40px;"></div>
|
|
8
8
|
<div>
|
|
9
9
|
<p class="small thumb-text d-none d-md-inline-block ff-secondary fw-semibold user-select-none mb-0"></p>
|
|
10
|
-
<p class="meta thumb-timestamp timeago text-xs text-muted ff-secondary fw-semibold mb-0"></p>
|
|
10
|
+
<p class="meta thumb-timestamp timeago text-xs text-muted ff-secondary fw-semibold mb-0 user-select-none"></p>
|
|
11
11
|
</div>
|
|
12
12
|
</div>
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
<a href="{url}"></a>
|
|
14
|
+
<div class="unread d-inline-block position-absolute bottom-0">
|
|
15
|
+
<div class="meta small position-absolute top-50 translate-middle-y text-nowrap fw-semibold ms-2">
|
|
16
|
+
<a class="text-decoration-none" href="{url}"></a>
|
|
18
17
|
</div>
|
|
19
18
|
</div>
|
|
20
19
|
</div>
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
</a>
|
|
15
15
|
</div>
|
|
16
16
|
|
|
17
|
-
<div class="d-flex flex-grow-1 flex-column w-100" style="min-width: 0;">
|
|
17
|
+
<div class="post-container d-flex flex-grow-1 flex-column w-100" style="min-width: 0;">
|
|
18
18
|
<div class="d-flex align-items-center gap-1 flex-wrap w-100 post-header mt-1">
|
|
19
19
|
<div class="icon bg-body d-sm-none">
|
|
20
20
|
<a class="d-inline-block position-relative text-decoration-none" href="{{{ if ./user.userslug }}}{config.relative_path}/user/{./user.userslug}{{{ else }}}#{{{ end }}}">
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
<div class="{{{ if config.theme.stickyToolbar }}}sticky-tools{{{ end }}}">
|
|
2
|
-
<nav class="topic-list-header navbar navbar-expand p-0 border-0 rounded
|
|
1
|
+
<div class="{{{ if config.theme.stickyToolbar }}}sticky-tools{{{ end }}} mb-3">
|
|
2
|
+
<nav class="topic-list-header navbar navbar-expand p-0 border-0 rounded">
|
|
3
3
|
<div class="card card-header flex-row p-2 gap-1 border rounded w-100">
|
|
4
4
|
<ul component="category/controls" class="navbar-nav me-auto gap-2 align-items-center">
|
|
5
5
|
{{{ if template.category }}}
|
package/templates/popular.tpl
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
|
+
{{{ if widgets.header.length }}}
|
|
1
2
|
<div data-widget-area="header">
|
|
2
3
|
{{{each widgets.header}}}
|
|
3
4
|
{{widgets.header.html}}
|
|
4
5
|
{{{end}}}
|
|
5
6
|
</div>
|
|
7
|
+
{{{ end }}}
|
|
6
8
|
<div class="popular">
|
|
7
9
|
<!-- IMPORT partials/topic-list-bar.tpl -->
|
|
8
10
|
<div class="category">
|
|
9
11
|
{{{ if !topics.length }}}
|
|
10
|
-
<div class="alert alert-info
|
|
12
|
+
<div class="alert alert-info" id="category-no-topics">[[recent:no_popular_topics]]</div>
|
|
11
13
|
{{{ end }}}
|
|
12
14
|
|
|
13
15
|
<!-- IMPORT partials/topics_list.tpl -->
|
package/templates/recent.tpl
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
|
+
{{{ if widgets.header.length }}}
|
|
1
2
|
<div data-widget-area="header">
|
|
2
3
|
{{{each widgets.header}}}
|
|
3
4
|
{{widgets.header.html}}
|
|
4
5
|
{{{end}}}
|
|
5
6
|
</div>
|
|
6
|
-
|
|
7
|
+
{{{ end }}}
|
|
7
8
|
<div class="recent">
|
|
8
9
|
<!-- IMPORT partials/topic-list-bar.tpl -->
|
|
9
10
|
|
|
10
11
|
<div class="category">
|
|
11
12
|
{{{ if !topics.length }}}
|
|
12
|
-
<div class="alert alert-info
|
|
13
|
+
<div class="alert alert-info" id="category-no-topics">[[recent:no_recent_topics]]</div>
|
|
13
14
|
{{{ end }}}
|
|
14
15
|
|
|
15
16
|
<!-- IMPORT partials/topics_list.tpl -->
|
package/templates/top.tpl
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
|
+
{{{ if widgets.header.length }}}
|
|
1
2
|
<div data-widget-area="header">
|
|
2
3
|
{{{each widgets.header}}}
|
|
3
4
|
{{widgets.header.html}}
|
|
4
5
|
{{{end}}}
|
|
5
6
|
</div>
|
|
7
|
+
{{{ end }}}
|
|
6
8
|
<div class="top">
|
|
7
9
|
<!-- IMPORT partials/topic-list-bar.tpl -->
|
|
8
10
|
<div class="category">
|
|
9
11
|
{{{ if !topics.length }}}
|
|
10
|
-
<div class="alert alert-info
|
|
12
|
+
<div class="alert alert-info" id="category-no-topics">[[top:no_top_topics]]</div>
|
|
11
13
|
{{{ end }}}
|
|
12
14
|
|
|
13
15
|
<!-- IMPORT partials/topics_list.tpl -->
|
package/templates/unread.tpl
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
|
+
{{{ if widgets.header.length }}}
|
|
1
2
|
<div data-widget-area="header">
|
|
2
3
|
{{{each widgets.header}}}
|
|
3
4
|
{{widgets.header.html}}
|
|
4
5
|
{{{end}}}
|
|
5
6
|
</div>
|
|
7
|
+
{{{ end }}}
|
|
6
8
|
<div class="unread">
|
|
7
9
|
<!-- IMPORT partials/topic-list-bar.tpl -->
|
|
8
10
|
<div class="category">
|
|
9
|
-
<div id="category-no-topics" class="alert alert-info
|
|
11
|
+
<div id="category-no-topics" class="alert alert-info {{{ if topics.length }}}hidden{{{ end }}}">[[unread:no_unread_topics]]</div>
|
|
10
12
|
|
|
11
13
|
<!-- IMPORT partials/topics_list.tpl -->
|
|
12
14
|
<button id="load-more-btn" class="btn btn-primary hide">[[unread:load_more]]</button>
|