nodebb-theme-persona 13.3.47 → 13.3.49

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nodebb-theme-persona",
3
- "version": "13.3.47",
3
+ "version": "13.3.49",
4
4
  "nbbpm": {
5
5
  "compatibility": "^3.7.0"
6
6
  },
package/scss/mixins.scss CHANGED
@@ -21,7 +21,7 @@
21
21
  // Opaque ring
22
22
  position: relative;
23
23
  z-index: 1;
24
- box-shadow: 0 0 0 ($spacer * .5) $body-bg;
24
+ box-shadow: 0 0 0 ($spacer * .5) var(--bs-body-bg);
25
25
  }
26
26
  }
27
27
 
@@ -1,7 +1,7 @@
1
1
  ul.topics-list, ul.categories-list {
2
2
  li {
3
3
  &.deleted {
4
- .meta, .topic-thumbs { display: none!important; }
4
+ .meta, .topic-thumbs { visibility: hidden!important; }
5
5
  opacity: 0.65;
6
6
  }
7
7
 
package/scss/persona.scss CHANGED
@@ -15,7 +15,6 @@
15
15
  @import "footer";
16
16
  @import "posts_list";
17
17
  @import "mobile";
18
- @import "helpers";
19
18
  @import "keyframes";
20
19
 
21
20
  @import "modules/nprogress";
package/scss/topic.scss CHANGED
@@ -1,44 +1,10 @@
1
1
  .topic {
2
- [component="post/header"] {
3
- margin-top: 0px;
4
- line-height: 40px;
5
-
6
- .topic-title {
7
- word-wrap: break-word;
8
- color:inherit;
9
- }
10
-
11
- > span {
12
- text-transform: uppercase;
13
- color: $gray-600;
14
- display: inline-block;
15
- margin-top: 8px;
16
- }
17
-
18
- .topic-title {
19
- text-transform: initial;
20
- }
21
- }
22
-
23
- [component="topic/browsing-users"] {
24
- margin-bottom: -5px;
25
- }
26
-
27
2
  .topic-header {
28
3
  top: var(--panel-offset);
29
- background-color: $body-bg;
30
4
  z-index: $zindex-dropdown; // allows for top nav dropdowns to appear on top
31
5
  }
32
6
 
33
- .topic-info {
34
- border-bottom: 1px solid $post-border-color;
35
- }
36
-
37
7
  .posts {
38
- h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
39
- margin-top: 0px;
40
- }
41
-
42
8
  .icon {
43
9
  position: relative;
44
10
  border-radius: 50%;
@@ -99,11 +65,6 @@
99
65
  color: $primary;
100
66
  }
101
67
 
102
- [component="post/parent"] {
103
- border: 0;
104
- font-size: 10px;
105
- }
106
-
107
68
  .threaded-replies {
108
69
  margin-left: 60px;
109
70
  padding: 1rem 0px;
@@ -148,23 +109,6 @@
148
109
  display: inline-block;
149
110
  }
150
111
 
151
- .title {
152
- p {
153
- margin-bottom: 4px;
154
- }
155
-
156
- small {
157
- margin-top: 2px;
158
- display: block;
159
-
160
- color: $gray-600;
161
-
162
- strong {
163
- color: $gray-800;
164
- }
165
- }
166
- }
167
-
168
112
  .content {
169
113
  margin-top: $post-padding;
170
114
  padding-bottom: 1px;
@@ -175,22 +119,6 @@
175
119
  min-height: 60px;
176
120
  }
177
121
 
178
- h1 {
179
- .btn-group, .btn {
180
- margin-left: 15px;
181
- }
182
-
183
- .btn {
184
- background: $body-bg;
185
- text-transform: uppercase;
186
- font-weight: 600;
187
- box-shadow: none !important;
188
- font-size: 11px;
189
- color: $gray-600;
190
- padding: 0;
191
- }
192
- }
193
-
194
122
  .post-signature {
195
123
  font-size: 12px;
196
124
  border-top: 1px dashed #dedede;
@@ -9,13 +9,13 @@
9
9
  <!-- IMPORT partials/category/subcategory.tpl -->
10
10
 
11
11
  {{{ if (topics.length || privileges.topics:create) }}}
12
- <div class="topic-list-header sticky-top btn-toolbar justify-content-between py-2 mb-2 flex-nowrap">
13
- <div class="d-flex gap-1 align-items-stretch">
12
+ <div class="topic-list-header sticky-top btn-toolbar justify-content-between align-items-center py-2 mb-2 flex-nowrap">
13
+ <div class="d-flex gap-1">
14
14
  {{{ if privileges.topics:create }}}
15
- <a href="{config.relative_path}/compose?cid={cid}" component="category/post" id="new_topic" class="btn btn-primary text-nowrap" data-ajaxify="false" role="button">[[category:new-topic-button]]</a>
15
+ <a href="{config.relative_path}/compose?cid={cid}" component="category/post" id="new_topic" class="btn btn-primary btn-sm text-nowrap" data-ajaxify="false" role="button">[[category:new-topic-button]]</a>
16
16
  {{{ else }}}
17
17
  {{{ if !loggedIn }}}
18
- <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary">[[category:guest-login-post]]</a>
18
+ <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary btn-sm">[[category:guest-login-post]]</a>
19
19
  {{{ end }}}
20
20
  {{{ end }}}
21
21
 
@@ -23,7 +23,7 @@
23
23
  <div class="alert alert-warning h-100 m-0 px-2 py-1 d-flex gap-1 align-items-center hide" id="new-topics-alert"><i class="fa fa-fw fa-rotate-right"></i>[[recent:load-new-posts]]</div>
24
24
  </a>
25
25
  </div>
26
- <div component="category/controls" class="d-flex gap-1 align-items-stretch">
26
+ <div component="category/controls" class="d-flex gap-1">
27
27
  <!-- IMPORT partials/category/watch.tpl -->
28
28
  <!-- IMPORT partials/category/sort.tpl -->
29
29
  <!-- IMPORT partials/category/tools-dropdown-right.tpl -->
@@ -1,5 +1,5 @@
1
1
  <noscript><div class="dropdown" component="category-selector"></noscript>
2
- <button component="category/post" for="category-dropdown-check" class="btn btn-primary text-nowrap" id="new_topic" role="button">
2
+ <button component="category/post" for="category-dropdown-check" class="btn btn-primary btn-sm text-nowrap" id="new_topic" role="button">
3
3
  [[category:new-topic-button]]
4
4
  </button>
5
5
  <noscript>
@@ -39,11 +39,11 @@
39
39
  {{{ if (!./link && !./isSection) }}}
40
40
  <div class="d-flex col-md-5 col-12 align-content-stretch">
41
41
  <div class="meta stats d-none d-lg-grid col-6 gap-1 pe-2 text-muted" style="grid-template-columns: 1fr 1fr;">
42
- <div class="p-1 overflow-hidden rounded-1 d-flex flex-column align-items-center">
42
+ <div class="overflow-hidden rounded-1 d-flex flex-column align-items-center">
43
43
  <span class="fs-4" title="{./totalTopicCount}">{humanReadableNumber(./totalTopicCount, 0)}</span>
44
44
  <span class="text-uppercase text-xs">[[global:topics]]</span>
45
45
  </div>
46
- <div class="p-1 overflow-hidden rounded-1 d-flex flex-column align-items-center">
46
+ <div class="overflow-hidden rounded-1 d-flex flex-column align-items-center">
47
47
  <span class="fs-4" title="{./totalPostCount}">{humanReadableNumber(./totalPostCount, 0)}</span>
48
48
  <span class="text-uppercase text-xs">[[global:posts]]</span>
49
49
  </div>
@@ -34,7 +34,7 @@
34
34
 
35
35
  <span class="visible-xs-inline-block visible-sm-inline-block visible-md-inline-block visible-lg-inline-block">
36
36
  <!-- IF posts.toPid -->
37
- <a component="post/parent" class="btn btn-sm btn-outline-secondary hidden-xs" data-topid="{posts.toPid}" href="{config.relative_path}/post/{posts.toPid}"><i class="fa fa-reply"></i> @<!-- IF posts.parent.username -->{posts.parent.username}<!-- ELSE -->[[global:guest]]<!-- ENDIF posts.parent.username --></a>
37
+ <a component="post/parent" class="btn btn-sm btn-ghost py-0 px-1 text-xs hidden-xs" data-topid="{posts.toPid}" href="{config.relative_path}/post/{posts.toPid}"><i class="fa fa-reply"></i> @<!-- IF posts.parent.username -->{posts.parent.username}<!-- ELSE -->[[global:guest]]<!-- ENDIF posts.parent.username --></a>
38
38
  <!-- ENDIF posts.toPid -->
39
39
 
40
40
  <span>
@@ -1,44 +1,44 @@
1
1
  {{{ if privileges.editable }}}
2
2
  <li <!-- IF locked -->hidden<!-- ENDIF locked -->>
3
- <a component="topic/lock" href="#" class="dropdown-item <!-- IF locked -->hidden<!-- ENDIF locked -->" role="menuitem"><i class="fa fa-fw fa-lock"></i> [[topic:thread-tools.lock]]</a>
3
+ <a component="topic/lock" href="#" class="dropdown-item rounded-1 <!-- IF locked -->hidden<!-- ENDIF locked -->" role="menuitem"><i class="fa fa-fw fa-lock"></i> [[topic:thread-tools.lock]]</a>
4
4
  </li>
5
5
 
6
6
  <li <!-- IF !locked -->hidden<!-- ENDIF !locked -->>
7
- <a component="topic/unlock" href="#" class="dropdown-item <!-- IF !locked -->hidden<!-- ENDIF !locked -->" role="menuitem"><i class="fa fa-fw fa-unlock"></i> [[topic:thread-tools.unlock]]</a>
7
+ <a component="topic/unlock" href="#" class="dropdown-item rounded-1 <!-- IF !locked -->hidden<!-- ENDIF !locked -->" role="menuitem"><i class="fa fa-fw fa-unlock"></i> [[topic:thread-tools.unlock]]</a>
8
8
  </li>
9
9
 
10
10
  <li <!-- IF pinned -->hidden<!-- ENDIF pinned -->>
11
- <a component="topic/pin" href="#" class="dropdown-item <!-- IF pinned -->hidden<!-- ENDIF pinned -->" role="menuitem"><i class="fa fa-fw fa-thumb-tack"></i> [[topic:thread-tools.pin]]</a>
11
+ <a component="topic/pin" href="#" class="dropdown-item rounded-1 <!-- IF pinned -->hidden<!-- ENDIF pinned -->" role="menuitem"><i class="fa fa-fw fa-thumb-tack"></i> [[topic:thread-tools.pin]]</a>
12
12
  </li>
13
13
 
14
14
  <li <!-- IF !pinned -->hidden<!-- ENDIF !pinned -->>
15
- <a component="topic/unpin" href="#" class="dropdown-item <!-- IF !pinned -->hidden<!-- ENDIF !pinned -->" role="menuitem"><i class="fa fa-fw fa-thumb-tack fa-rotate-90"></i> [[topic:thread-tools.unpin]]</a>
15
+ <a component="topic/unpin" href="#" class="dropdown-item rounded-1 <!-- IF !pinned -->hidden<!-- ENDIF !pinned -->" role="menuitem"><i class="fa fa-fw fa-thumb-tack fa-rotate-90"></i> [[topic:thread-tools.unpin]]</a>
16
16
  </li>
17
17
 
18
18
  <li>
19
- <a component="topic/move" class="dropdown-item" href="#" role="menuitem"><i class="fa fa-fw fa-arrows"></i> [[topic:thread-tools.move]]</a>
19
+ <a component="topic/move" class="dropdown-item rounded-1" href="#" role="menuitem"><i class="fa fa-fw fa-arrows"></i> [[topic:thread-tools.move]]</a>
20
20
  </li>
21
21
 
22
22
  <li>
23
- <a component="topic/merge" class="dropdown-item" href="#" role="menuitem"><i class="fa fa-fw fa-code-fork"></i> [[topic:thread-tools.merge]]</a>
23
+ <a component="topic/merge" class="dropdown-item rounded-1" href="#" role="menuitem"><i class="fa fa-fw fa-code-fork"></i> [[topic:thread-tools.merge]]</a>
24
24
  </li>
25
25
 
26
26
  <li>
27
- <a component="topic/fork" class="dropdown-item" href="#" role="menuitem"><i class="fa fa-fw fa-code-fork"></i> [[topic:thread-tools.fork]]</a>
27
+ <a component="topic/fork" class="dropdown-item rounded-1" href="#" role="menuitem"><i class="fa fa-fw fa-code-fork"></i> [[topic:thread-tools.fork]]</a>
28
28
  </li>
29
29
 
30
30
  <li>
31
- <a component="topic/tag" class="dropdown-item" href="#" role="menuitem"><i class="fa fa-fw fa-tag"></i> [[topic:thread-tools.tag]]</a>
31
+ <a component="topic/tag" class="dropdown-item rounded-1" href="#" role="menuitem"><i class="fa fa-fw fa-tag"></i> [[topic:thread-tools.tag]]</a>
32
32
  </li>
33
33
 
34
34
  {{{ if !scheduled }}}
35
35
  <li>
36
- <a component="topic/move-posts" class="dropdown-item" href="#" role="menuitem"><i class="fa fa-fw fa-arrows"></i> [[topic:thread-tools.move-posts]]</a>
36
+ <a component="topic/move-posts" class="dropdown-item rounded-1" href="#" role="menuitem"><i class="fa fa-fw fa-arrows"></i> [[topic:thread-tools.move-posts]]</a>
37
37
  </li>
38
38
  {{{ end }}}
39
39
 
40
40
  <li>
41
- <a component="topic/mark-unread-for-all" class="dropdown-item" href="#" role="menuitem"><i class="fa fa-fw fa-inbox"></i> [[topic:thread-tools.markAsUnreadForAll]]</a>
41
+ <a component="topic/mark-unread-for-all" class="dropdown-item rounded-1" href="#" role="menuitem"><i class="fa fa-fw fa-inbox"></i> [[topic:thread-tools.markAsUnreadForAll]]</a>
42
42
  </li>
43
43
 
44
44
  <li class="dropdown-divider"></li>
@@ -46,30 +46,30 @@
46
46
 
47
47
  <!-- IF privileges.deletable -->
48
48
  <li <!-- IF deleted -->hidden<!-- ENDIF deleted -->>
49
- <a component="topic/delete" href="#" class="dropdown-item <!-- IF deleted -->hidden<!-- ENDIF deleted -->" role="menuitem"><i class="fa fa-fw fa-trash-o"></i> [[topic:thread-tools.delete]]</a>
49
+ <a component="topic/delete" href="#" class="dropdown-item rounded-1 <!-- IF deleted -->hidden<!-- ENDIF deleted -->" role="menuitem"><i class="fa fa-fw fa-trash-o"></i> [[topic:thread-tools.delete]]</a>
50
50
  </li>
51
51
 
52
52
  {{{ if !scheduled }}}
53
53
  <li <!-- IF !deleted -->hidden<!-- ENDIF !deleted -->>
54
- <a component="topic/restore" href="#" class="dropdown-item <!-- IF !deleted -->hidden<!-- ENDIF !deleted -->" role="menuitem"><i class="fa fa-fw fa-history"></i> [[topic:thread-tools.restore]]</a>
54
+ <a component="topic/restore" href="#" class="dropdown-item rounded-1 <!-- IF !deleted -->hidden<!-- ENDIF !deleted -->" role="menuitem"><i class="fa fa-fw fa-history"></i> [[topic:thread-tools.restore]]</a>
55
55
  </li>
56
56
  {{{ end }}}
57
57
 
58
58
  <!-- IF privileges.purge -->
59
59
  <li <!-- IF !deleted -->hidden<!-- ENDIF !deleted -->>
60
- <a component="topic/purge" href="#" class="dropdown-item <!-- IF !deleted -->hidden<!-- ENDIF !deleted -->" role="menuitem"><i class="fa fa-fw fa-eraser"></i> [[topic:thread-tools.purge]]</a>
60
+ <a component="topic/purge" href="#" class="dropdown-item rounded-1 <!-- IF !deleted -->hidden<!-- ENDIF !deleted -->" role="menuitem"><i class="fa fa-fw fa-eraser"></i> [[topic:thread-tools.purge]]</a>
61
61
  </li>
62
62
  <!-- END -->
63
63
 
64
64
  <!-- IF privileges.isAdminOrMod -->
65
65
  <li>
66
- <a component="topic/delete/posts" class="dropdown-item" href="#" role="menuitem"><i class="fa fa-fw fa-trash-o"></i> [[topic:thread-tools.delete-posts]]</a>
66
+ <a component="topic/delete/posts" class="dropdown-item rounded-1" href="#" role="menuitem"><i class="fa fa-fw fa-trash-o"></i> [[topic:thread-tools.delete-posts]]</a>
67
67
  </li>
68
68
  <!-- ENDIF privileges.isAdminOrMod -->
69
69
 
70
70
  {{{each thread_tools}}}
71
71
  <li>
72
- <a href="#" class="dropdown-item {thread_tools.class}" role="menuitem"><i class="fa fa-fw {thread_tools.icon}"></i> {thread_tools.title}</a>
72
+ <a href="#" class="dropdown-item rounded-1 {thread_tools.class}" role="menuitem"><i class="fa fa-fw {thread_tools.icon}"></i> {thread_tools.title}</a>
73
73
  </li>
74
74
  {{{end}}}
75
75
  <!-- ENDIF privileges.deletable -->
@@ -14,7 +14,7 @@
14
14
  {buildAvatar(./user, "40px", true, "avatar avatar-tooltip")}
15
15
  </a>
16
16
  {{{ if showSelect }}}
17
- <div class="checkbox position-absolute top-100 start-50 translate-middle-x pt-2 m-0 d-none d-lg-flex" style="max-width:max-content">
17
+ <div class="checkbox position-absolute top-100 start-50 translate-middle-x m-0 d-none d-lg-flex" style="max-width:max-content">
18
18
  <i component="topic/select" class="fa text-muted pointer fa-square-o p-1 hover-visible"></i>
19
19
  </div>
20
20
  {{{ end }}}
@@ -23,7 +23,7 @@
23
23
  <h3 component="topic/header" class="title text-break fs-5 fw-semibold m-0 tracking-tight w-100 {{{ if showSelect }}}me-4 me-lg-0{{{ end }}}">
24
24
  <a class="text-reset" href="{{{ if topics.noAnchor }}}#{{{ else }}}{config.relative_path}/topic/{./slug}{{{ if ./bookmark }}}/{./bookmark}{{{ end }}}{{{ end }}}">{./title}</a>
25
25
  </h3>
26
- <span component="topic/labels" class="d-flex flex-wrap gap-1 w-100 align-items-center">
26
+ <div component="topic/labels" class="d-flex flex-wrap gap-1 w-100 align-items-center">
27
27
  <span component="topic/watched" class="badge border border-gray-300 text-body {{{ if !./followed }}}hidden{{{ end }}}">
28
28
  <i class="fa fa-bell-o"></i>
29
29
  <span>[[topic:watching]]</span>
@@ -70,7 +70,7 @@
70
70
  </div>
71
71
 
72
72
  <a href="{config.relative_path}/topic/{./slug}" class="d-none d-lg-block badge bg-transparent text-muted fw-normal timeago" title="{./timestampISO}"></a>
73
- </span>
73
+ </div>
74
74
  {{{ if showSelect }}}
75
75
  <div class="checkbox position-absolute top-0 end-0 m-0 d-flex d-lg-none" style="max-width:max-content">
76
76
  <i component="topic/select" class="fa fa-square-o text-muted pointer p-1"></i>
@@ -88,20 +88,20 @@
88
88
  <div class="d-flex p-0 col-lg-5 col-12 align-content-stretch">
89
89
  <div class="meta stats d-none d-lg-grid col-6 gap-1 pe-2 text-muted" style="grid-template-columns: 1fr 1fr 1fr;">
90
90
  {{{ if !reputation:disabled }}}
91
- <div class="stats-votes border-0 p-2 overflow-hidden rounded-1 d-flex flex-column align-items-center">
92
- <span class="fs-5 ff-secondary lh-1" title="{./votes}">{humanReadableNumber(./votes, 0)}</span>
93
- <span class="d-none d-xl-flex text-lowercase text-xs">[[global:votes]]</span>
91
+ <div class="stats-votes overflow-hidden d-flex flex-column align-items-center">
92
+ <span class="fs-4" title="{./votes}">{humanReadableNumber(./votes, 0)}</span>
93
+ <span class="d-none d-xl-flex text-uppercase text-xs">[[global:votes]]</span>
94
94
  <i class="d-xl-none fa fa-fw text-xs text-muted opacity-75 fa-chevron-up"></i>
95
95
  </div>
96
96
  {{{ end }}}
97
- <div class="stats-postcount border-0 p-2 overflow-hidden rounded-1 d-flex flex-column align-items-center">
98
- <span class="fs-5 ff-secondary lh-1" title="{./postcount}">{humanReadableNumber(./postcount, 0)}</span>
99
- <span class="d-none d-xl-flex text-lowercase text-xs">[[global:posts]]</span>
97
+ <div class="stats-postcount overflow-hidden d-flex flex-column align-items-center">
98
+ <span class="fs-4" title="{./postcount}">{humanReadableNumber(./postcount, 0)}</span>
99
+ <span class="d-none d-xl-flex text-uppercase text-xs">[[global:posts]]</span>
100
100
  <i class="d-xl-none fa-regular fa-fw text-xs text-muted opacity-75 fa-message"></i>
101
101
  </div>
102
- <div class="stats-viewcount border-0 p-2 overflow-hidden rounded-1 d-flex flex-column align-items-center">
103
- <span class="fs-5 ff-secondary lh-1" title="{./viewcount}">{humanReadableNumber(./viewcount, 0)}</span>
104
- <span class="d-none d-xl-flex text-lowercase text-xs">[[global:views]]</span>
102
+ <div class="stats-viewcount overflow-hidden d-flex flex-column align-items-center">
103
+ <span class="fs-4" title="{./viewcount}">{humanReadableNumber(./viewcount, 0)}</span>
104
+ <span class="d-none d-xl-flex text-uppercase text-xs">[[global:views]]</span>
105
105
  <i class="d-xl-none fa fa-fw text-xs text-muted opacity-75 fa-eye"></i>
106
106
  </div>
107
107
  </div>
@@ -5,15 +5,15 @@
5
5
  {{{end}}}
6
6
  </div>
7
7
  <div class="popular">
8
- <div class="topic-list-header sticky-top btn-toolbar justify-content-between py-2 mb-2 gap-1">
9
- <div class="d-flex gap-1 align-items-stretch">
8
+ <div class="topic-list-header sticky-top btn-toolbar justify-content-between align-items-center py-2 mb-2 gap-1">
9
+ <div class="d-flex gap-1">
10
10
  {{{ if canPost }}}
11
11
  <!-- IMPORT partials/buttons/newTopic.tpl -->
12
12
  {{{ else }}}
13
- <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary">[[category:guest-login-post]]</a>
13
+ <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary btn-sm">[[category:guest-login-post]]</a>
14
14
  {{{ end }}}
15
15
  </div>
16
- <div class="d-flex gap-1 align-items-stretch">
16
+ <div class="d-flex gap-1">
17
17
  <!-- IMPORT partials/topic-terms.tpl -->
18
18
  <!-- IMPORT partials/topic-filters.tpl -->
19
19
  <!-- IMPORT partials/category/filter-dropdown-right.tpl -->
@@ -5,18 +5,18 @@
5
5
  {{{end}}}
6
6
  </div>
7
7
  <div class="recent">
8
- <div class="topic-list-header sticky-top btn-toolbar justify-content-between py-2 mb-2 gap-1">
9
- <div class="d-flex gap-1 align-items-stretch">
8
+ <div class="topic-list-header sticky-top btn-toolbar justify-content-between align-items-between py-2 mb-2 gap-1">
9
+ <div class="d-flex gap-1">
10
10
  {{{ if canPost }}}
11
11
  <!-- IMPORT partials/buttons/newTopic.tpl -->
12
12
  {{{ else }}}
13
- <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary">[[category:guest-login-post]]</a>
13
+ <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary btn-sm">[[category:guest-login-post]]</a>
14
14
  {{{ end }}}
15
15
  <a href="{config.relative_path}/{selectedFilter.url}{querystring}" class="d-inline-block">
16
16
  <div class="alert alert-warning h-100 m-0 px-2 py-1 d-flex gap-1 align-items-center hide" id="new-topics-alert"><i class="fa fa-fw fa-rotate-right"></i>[[recent:load-new-posts]]</div>
17
17
  </a>
18
18
  </div>
19
- <div class="d-flex gap-1 align-items-stretch">
19
+ <div class="d-flex gap-1">
20
20
  <!-- IMPORT partials/topic-filters.tpl -->
21
21
  <!-- IMPORT partials/category/filter-dropdown-right.tpl -->
22
22
  <!-- IMPORT partials/tags/filter-dropdown-right.tpl -->
package/templates/tag.tpl CHANGED
@@ -5,15 +5,15 @@
5
5
  {{{end}}}
6
6
  </div>
7
7
  <div class="tag">
8
- <div class="topic-list-header sticky-top btn-toolbar justify-content-between py-2 mb-2 gap-1">
9
- <div class="d-flex gap-1 align-items-stretch">
8
+ <div class="topic-list-header sticky-top btn-toolbar justify-content-between align-items-center py-2 mb-2 gap-1">
9
+ <div class="d-flex gap-1">
10
10
  {{{ if loggedIn }}}
11
11
  <!-- IMPORT partials/buttons/newTopic.tpl -->
12
12
  {{{ else }}}
13
- <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary">[[category:guest-login-post]]</a>
13
+ <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary btn-sm">[[category:guest-login-post]]</a>
14
14
  {{{ end }}}
15
15
  </div>
16
- <div class="d-flex gap-1 align-items-stretch">
16
+ <div class="d-flex gap-1">
17
17
  <!-- IMPORT partials/tags/watch.tpl -->
18
18
  <!-- IMPORT partials/category/filter-dropdown-right.tpl -->
19
19
  <!-- IMPORT partials/category/tools-dropdown-right.tpl -->
package/templates/top.tpl CHANGED
@@ -5,15 +5,15 @@
5
5
  {{{end}}}
6
6
  </div>
7
7
  <div class="top">
8
- <div class="topic-list-header sticky-top btn-toolbar justify-content-between py-2 mb-2 gap-1">
9
- <div class="d-flex gap-1 align-items-stretch">
8
+ <div class="topic-list-header sticky-top btn-toolbar justify-content-between align-items-center py-2 mb-2 gap-1">
9
+ <div class="d-flex gap-1">
10
10
  {{{ if canPost }}}
11
11
  <!-- IMPORT partials/buttons/newTopic.tpl -->
12
12
  {{{ else }}}
13
- <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary">[[category:guest-login-post]]</a>
13
+ <a component="category/post/guest" href="{config.relative_path}/login" class="btn btn-primary btn-sm">[[category:guest-login-post]]</a>
14
14
  {{{ end }}}
15
15
  </div>
16
- <div class="d-flex gap-1 align-items-stretch">
16
+ <div class="d-flex gap-1">
17
17
  <!-- IMPORT partials/topic-terms.tpl -->
18
18
  <!-- IMPORT partials/topic-filters.tpl -->
19
19
  <!-- IMPORT partials/category/filter-dropdown-right.tpl -->
@@ -15,42 +15,53 @@
15
15
  {{{ if author.userslug }}}<meta itemprop="url" content="{config.relative_path}/user/{author.userslug}">{{{ end }}}
16
16
  </div>
17
17
 
18
- <div class="topic-header sticky-top mb-3">
19
- <h1 component="post/header" itemprop="name">
20
- <div class="topic-title d-flex">
21
- <span class="fs-3" component="topic/title">{title}</span>
22
- </div>
23
- </h1>
18
+ <div class="topic-header sticky-top mb-3 bg-body">
19
+ <div class="d-flex gap-3 flew-wrap border-bottom pb-2 align-items-start">
20
+ <div class="d-flex flex-column gap-2 flex-grow-1">
21
+ <h1 component="post/header" class="mb-0" itemprop="name">
22
+ <div class="topic-title d-flex">
23
+ <span class="fs-3" component="topic/title">{title}</span>
24
+ </div>
25
+ </h1>
24
26
 
25
- <div class="topic-info pb-2 d-flex gap-2 align-items-center flex-wrap">
26
- <span component="topic/labels" class="d-flex gap-2 {{{ if (!scheduled && (!pinned && (!locked && (!oldCid && !icons.length)))) }}}hidden{{{ end }}}">
27
- <span component="topic/scheduled" class="badge badge border border-gray-300 text-body {{{ if !scheduled }}}hidden{{{ end }}}">
28
- <i class="fa fa-clock-o"></i> [[topic:scheduled]]
29
- </span>
30
- <span component="topic/pinned" class="badge badge border border-gray-300 text-body {{{ if (scheduled || !pinned) }}}hidden{{{ end }}}">
31
- <i class="fa fa-thumb-tack"></i> {{{ if !pinExpiry }}}[[topic:pinned]]{{{ else }}}[[topic:pinned-with-expiry, {isoTimeToLocaleString(./pinExpiryISO, config.userLang)}]]{{{ end }}}
32
- </span>
33
- <span component="topic/locked" class="badge badge border border-gray-300 text-body {{{ if !locked }}}hidden{{{ end }}}">
34
- <i class="fa fa-lock"></i> [[topic:locked]]
35
- </span>
36
- <a component="topic/moved" href="{config.relative_path}/category/{oldCid}" class="badge badge border border-gray-300 text-body text-decoration-none {{{ if !oldCid }}}hidden{{{ end }}}">
37
- <i class="fa fa-arrow-circle-right"></i> {{{ if privileges.isAdminOrMod }}}[[topic:moved-from, {oldCategory.name}]]{{{ else }}}[[topic:moved]]{{{ end }}}
38
- </a>
39
- {{{each icons}}}<span class="lh-1">{@value}</span>{{{end}}}
40
- </span>
41
- {function.buildCategoryLabel, category, "a", "border"}
42
- <div data-tid="{./tid}" component="topic/tags" class="lh-1 tags tag-list d-flex flex-wrap hidden-xs hidden-empty gap-2"><!-- IMPORT partials/topic/tags.tpl --></div>
43
- <div class="d-flex hidden-xs gap-2"><!-- IMPORT partials/topic/stats.tpl --></div>
44
- {{{ if !feeds:disableRSS }}}
45
- {{{ if rssFeedUrl }}}<a class="hidden-xs" target="_blank" href="{rssFeedUrl}"><i class="fa fa-rss-square"></i></a>{{{ end }}}
46
- {{{ end }}}
47
- {{{ if browsingUsers }}}
48
- <div class="d-inline-block hidden-xs">
49
- <!-- IMPORT partials/topic/browsing-users.tpl -->
27
+ <div class="topic-info d-flex gap-2 align-items-center flex-wrap">
28
+ <span component="topic/labels" class="d-flex gap-2 {{{ if (!scheduled && (!pinned && (!locked && (!oldCid && !icons.length)))) }}}hidden{{{ end }}}">
29
+ <span component="topic/scheduled" class="badge badge border border-gray-300 text-body {{{ if !scheduled }}}hidden{{{ end }}}">
30
+ <i class="fa fa-clock-o"></i> [[topic:scheduled]]
31
+ </span>
32
+ <span component="topic/pinned" class="badge badge border border-gray-300 text-body {{{ if (scheduled || !pinned) }}}hidden{{{ end }}}">
33
+ <i class="fa fa-thumb-tack"></i> {{{ if !pinExpiry }}}[[topic:pinned]]{{{ else }}}[[topic:pinned-with-expiry, {isoTimeToLocaleString(./pinExpiryISO, config.userLang)}]]{{{ end }}}
34
+ </span>
35
+ <span component="topic/locked" class="badge badge border border-gray-300 text-body {{{ if !locked }}}hidden{{{ end }}}">
36
+ <i class="fa fa-lock"></i> [[topic:locked]]
37
+ </span>
38
+ <a component="topic/moved" href="{config.relative_path}/category/{oldCid}" class="badge badge border border-gray-300 text-body text-decoration-none {{{ if !oldCid }}}hidden{{{ end }}}">
39
+ <i class="fa fa-arrow-circle-right"></i> {{{ if privileges.isAdminOrMod }}}[[topic:moved-from, {oldCategory.name}]]{{{ else }}}[[topic:moved]]{{{ end }}}
40
+ </a>
41
+ {{{each icons}}}<span class="lh-1">{@value}</span>{{{end}}}
42
+ </span>
43
+ {function.buildCategoryLabel, category, "a", "border"}
44
+ <div data-tid="{./tid}" component="topic/tags" class="lh-1 tags tag-list d-flex flex-wrap hidden-xs hidden-empty gap-2"><!-- IMPORT partials/topic/tags.tpl --></div>
45
+ <div class="d-flex hidden-xs gap-2"><!-- IMPORT partials/topic/stats.tpl --></div>
46
+ {{{ if !feeds:disableRSS }}}
47
+ {{{ if rssFeedUrl }}}<a class="hidden-xs" target="_blank" href="{rssFeedUrl}"><i class="fa fa-rss-square"></i></a>{{{ end }}}
48
+ {{{ end }}}
49
+ {{{ if browsingUsers }}}
50
+ <div class="d-inline-block hidden-xs">
51
+ <!-- IMPORT partials/topic/browsing-users.tpl -->
52
+ </div>
53
+ {{{ end }}}
54
+ <div class="ms-auto">
55
+ <!-- IMPORT partials/post_bar.tpl -->
56
+ </div>
57
+ </div>
50
58
  </div>
51
- {{{ end }}}
52
- <div class="ms-auto">
53
- <!-- IMPORT partials/post_bar.tpl -->
59
+ <div class="d-flex gap-2 justify-content-end align-items-center hidden-empty" component="topic/thumb/list">
60
+ {{{ each thumbs }}}
61
+ <a class="d-inline-block h-100" href="{./url}">
62
+ <img class="rounded-1 h-100 bg-light" style="max-width: 4rem; object-fit: contain;" src="{./url}" />
63
+ </a>
64
+ {{{ end }}}
54
65
  </div>
55
66
  </div>
56
67
  </div>
@@ -5,15 +5,15 @@
5
5
  {{{end}}}
6
6
  </div>
7
7
  <div class="unread">
8
- <div class="topic-list-header sticky-top btn-toolbar justify-content-between py-2 mb-2 gap-1">
9
- <div class="d-flex gap-1 align-items-stretch">
8
+ <div class="topic-list-header sticky-top btn-toolbar justify-content-between align-items-center py-2 mb-2 gap-1">
9
+ <div class="d-flex gap-1">
10
10
  <!-- IMPORT partials/buttons/newTopic.tpl -->
11
11
  <a href="{config.relative_path}/{selectedFilter.url}{querystring}" class="d-inline-block">
12
12
  <div class="alert alert-warning h-100 m-0 px-2 py-1 d-flex gap-1 align-items-center hide" id="new-topics-alert"><i class="fa fa-fw fa-rotate-right"></i>[[recent:load-new-posts]]</div>
13
13
  </a>
14
14
  </div>
15
15
 
16
- <div class="d-flex gap-1 align-items-stretch">
16
+ <div class="d-flex gap-1">
17
17
  <!-- IMPORT partials/topic-filters.tpl -->
18
18
  <!-- IMPORT partials/category/filter-dropdown-right.tpl -->
19
19
 
package/scss/helpers.scss DELETED
File without changes