nodebb-theme-persona 12.1.5 → 13.0.0

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.
Files changed (247) hide show
  1. package/README.md +14 -14
  2. package/package.json +2 -2
  3. package/public/persona.js +11 -22
  4. package/{less/account.less → scss/account.scss} +13 -97
  5. package/{less/categories.less → scss/categories.scss} +10 -40
  6. package/{less/category.less → scss/category.scss} +26 -75
  7. package/{less/chats.less → scss/chats.scss} +35 -88
  8. package/{less/flags.less → scss/flags.scss} +3 -3
  9. package/{less/footer.less → scss/footer.scss} +0 -1
  10. package/{less/groups.less → scss/groups.scss} +14 -38
  11. package/{less/header.less → scss/header.scss} +63 -139
  12. package/{less/helpers.less → scss/helpers.scss} +0 -0
  13. package/{less/keyframes.less → scss/keyframes.scss} +0 -0
  14. package/{less/mixins.less → scss/mixins.scss} +17 -59
  15. package/{less/mobile.less → scss/mobile.scss} +13 -18
  16. package/{less/modules/alerts.less → scss/modules/alerts.scss} +21 -21
  17. package/{less/modules/composer-default.less → scss/modules/composer-default.scss} +2 -2
  18. package/{less/modules/cookie-consent.less → scss/modules/cookie-consent.scss} +1 -1
  19. package/{less/modules/fab.less → scss/modules/fab.scss} +2 -2
  20. package/{less/modules/morph.less → scss/modules/morph.scss} +1 -1
  21. package/{less/modules/necro-post.less → scss/modules/necro-post.scss} +0 -0
  22. package/scss/modules/nprogress.scss +80 -0
  23. package/{less/modules/taskbar.less → scss/modules/taskbar.scss} +11 -10
  24. package/{less/modules/usercard.less → scss/modules/usercard.scss} +0 -0
  25. package/{less/noscript.less → scss/noscript.scss} +5 -7
  26. package/{less/outgoing.less → scss/outgoing.scss} +0 -0
  27. package/scss/overrides.scss +44 -0
  28. package/{less/persona.less → scss/persona.scss} +1 -13
  29. package/{less/posts_list.less → scss/posts_list.scss} +11 -14
  30. package/{less/register.less → scss/register.scss} +2 -7
  31. package/scss/search.scss +39 -0
  32. package/{less/style.less → scss/style.scss} +23 -47
  33. package/scss/tags.scss +11 -0
  34. package/{less/topic.less → scss/topic.scss} +53 -90
  35. package/scss/topics_list.scss +17 -0
  36. package/{less/variables.less → scss/variables.scss} +3 -3
  37. package/templates/account/blocks.tpl +24 -26
  38. package/templates/account/categories.tpl +6 -6
  39. package/templates/account/consent.tpl +10 -10
  40. package/templates/account/edit/password.tpl +8 -10
  41. package/templates/account/edit/username.tpl +6 -10
  42. package/templates/account/edit.tpl +23 -23
  43. package/templates/account/followers.tpl +3 -3
  44. package/templates/account/following.tpl +3 -3
  45. package/templates/account/groups.tpl +2 -2
  46. package/templates/account/info.tpl +67 -72
  47. package/templates/account/posts.tpl +1 -1
  48. package/templates/account/profile.tpl +20 -18
  49. package/templates/account/sessions.tpl +3 -3
  50. package/templates/account/settings.tpl +93 -81
  51. package/templates/account/topics.tpl +5 -5
  52. package/templates/account/uploads.tpl +2 -2
  53. package/templates/admin/plugins/persona.tpl +3 -3
  54. package/templates/category.tpl +15 -14
  55. package/templates/chat.tpl +16 -9
  56. package/templates/chats.tpl +5 -3
  57. package/templates/flags/detail.tpl +86 -80
  58. package/templates/flags/list.tpl +4 -4
  59. package/templates/footer.tpl +1 -1
  60. package/templates/groups/details.tpl +23 -218
  61. package/templates/groups/list.tpl +11 -9
  62. package/templates/groups/members.tpl +1 -4
  63. package/templates/header.tpl +10 -4
  64. package/templates/ip-blacklist.tpl +22 -20
  65. package/templates/login.tpl +17 -14
  66. package/templates/modules/taskbar.tpl +1 -1
  67. package/templates/modules/usercard.tpl +2 -2
  68. package/templates/notifications.tpl +40 -38
  69. package/templates/partials/acceptTos.tpl +8 -8
  70. package/templates/partials/account/category-item.tpl +6 -5
  71. package/templates/partials/account/header.tpl +2 -2
  72. package/templates/partials/account/menu.tpl +37 -37
  73. package/templates/partials/breadcrumbs.tpl +1 -1
  74. package/templates/partials/buttons/newTopic.tpl +10 -3
  75. package/templates/partials/categories/item.tpl +24 -10
  76. package/templates/partials/categories/lastpost.tpl +3 -3
  77. package/templates/partials/categories/link.tpl +10 -10
  78. package/templates/partials/category/sort.tpl +7 -7
  79. package/templates/partials/category/subcategory.tpl +3 -3
  80. package/templates/partials/category/tags.tpl +3 -5
  81. package/templates/partials/category/tools.tpl +16 -16
  82. package/templates/partials/category/watch.tpl +8 -10
  83. package/templates/partials/category-filter-content.tpl +17 -5
  84. package/templates/partials/category-filter-right.tpl +1 -1
  85. package/templates/partials/category-selector-content.tpl +17 -4
  86. package/templates/partials/category-selector-right.tpl +1 -1
  87. package/templates/partials/chats/message-window.tpl +10 -8
  88. package/templates/partials/chats/message.tpl +11 -11
  89. package/templates/partials/chats/options.tpl +8 -8
  90. package/templates/partials/chats/recent_room.tpl +1 -1
  91. package/templates/partials/chats/system-message.tpl +1 -1
  92. package/templates/partials/chats/user.tpl +1 -1
  93. package/templates/partials/chats-menu.tpl +11 -11
  94. package/templates/partials/cookie-consent.tpl +1 -1
  95. package/templates/partials/flags/filters.tpl +34 -32
  96. package/templates/partials/groups/admin.tpl +195 -0
  97. package/templates/partials/groups/badge.tpl +1 -0
  98. package/templates/partials/groups/list.tpl +6 -6
  99. package/templates/partials/groups/memberlist.tpl +11 -10
  100. package/templates/partials/menu.tpl +149 -156
  101. package/templates/partials/notifications_list.tpl +2 -2
  102. package/templates/partials/paginator.tpl +21 -21
  103. package/templates/partials/post_bar.tpl +4 -4
  104. package/templates/partials/posts_list.tpl +1 -1
  105. package/templates/partials/posts_list_item.tpl +2 -2
  106. package/templates/partials/quick-search-results.tpl +14 -11
  107. package/templates/partials/slideout-menu.tpl +1 -1
  108. package/templates/partials/tags_list.tpl +3 -3
  109. package/templates/partials/thread_tools.tpl +4 -4
  110. package/templates/partials/toast.tpl +14 -0
  111. package/templates/partials/topic/deleted-message.tpl +2 -2
  112. package/templates/partials/topic/event.tpl +26 -0
  113. package/templates/partials/topic/navigation-post.tpl +3 -3
  114. package/templates/partials/topic/navigator.tpl +7 -7
  115. package/templates/partials/topic/necro-post.tpl +1 -1
  116. package/templates/partials/topic/post-menu-list.tpl +26 -23
  117. package/templates/partials/topic/post-menu.tpl +3 -3
  118. package/templates/partials/topic/post.tpl +49 -44
  119. package/templates/partials/topic/quickreply.tpl +3 -3
  120. package/templates/partials/topic/reply-button.tpl +3 -3
  121. package/templates/partials/topic/sort.tpl +5 -5
  122. package/templates/partials/topic/tag.tpl +1 -0
  123. package/templates/partials/topic/tags.tpl +3 -5
  124. package/templates/partials/topic/topic-menu-list.tpl +18 -16
  125. package/templates/partials/topic/watch.tpl +11 -10
  126. package/templates/partials/topic-filters.tpl +12 -0
  127. package/templates/partials/topic-terms.tpl +12 -0
  128. package/templates/partials/topics_list.tpl +27 -25
  129. package/templates/partials/users_list.tpl +22 -10
  130. package/templates/partials/users_list_menu.tpl +19 -9
  131. package/templates/popular.tpl +9 -35
  132. package/templates/post-queue.tpl +42 -35
  133. package/templates/recent.tpl +10 -24
  134. package/templates/register.tpl +17 -17
  135. package/templates/registerComplete.tpl +14 -10
  136. package/templates/reset.tpl +7 -5
  137. package/templates/reset_code.tpl +9 -9
  138. package/templates/search.tpl +100 -87
  139. package/templates/tag.tpl +8 -10
  140. package/templates/tags.tpl +5 -3
  141. package/templates/top.tpl +9 -35
  142. package/templates/topic.tpl +13 -11
  143. package/templates/tos.tpl +4 -4
  144. package/templates/unread.tpl +10 -22
  145. package/templates/users.tpl +7 -20
  146. package/theme.json +6 -6
  147. package/theme.scss +1 -0
  148. package/less/bootstrap/.csscomb.json +0 -297
  149. package/less/bootstrap/.csslintrc +0 -19
  150. package/less/bootstrap/alerts.less +0 -73
  151. package/less/bootstrap/badges.less +0 -66
  152. package/less/bootstrap/bootstrap.less +0 -50
  153. package/less/bootstrap/breadcrumbs.less +0 -26
  154. package/less/bootstrap/button-groups.less +0 -243
  155. package/less/bootstrap/buttons.less +0 -160
  156. package/less/bootstrap/carousel.less +0 -269
  157. package/less/bootstrap/close.less +0 -34
  158. package/less/bootstrap/code.less +0 -69
  159. package/less/bootstrap/component-animations.less +0 -33
  160. package/less/bootstrap/dropdowns.less +0 -214
  161. package/less/bootstrap/forms.less +0 -574
  162. package/less/bootstrap/glyphicons.less +0 -305
  163. package/less/bootstrap/grid.less +0 -84
  164. package/less/bootstrap/input-groups.less +0 -166
  165. package/less/bootstrap/jumbotron.less +0 -50
  166. package/less/bootstrap/labels.less +0 -64
  167. package/less/bootstrap/list-group.less +0 -124
  168. package/less/bootstrap/media.less +0 -61
  169. package/less/bootstrap/mixins/alerts.less +0 -14
  170. package/less/bootstrap/mixins/background-variant.less +0 -8
  171. package/less/bootstrap/mixins/border-radius.less +0 -18
  172. package/less/bootstrap/mixins/buttons.less +0 -52
  173. package/less/bootstrap/mixins/center-block.less +0 -7
  174. package/less/bootstrap/mixins/clearfix.less +0 -22
  175. package/less/bootstrap/mixins/forms.less +0 -85
  176. package/less/bootstrap/mixins/gradients.less +0 -59
  177. package/less/bootstrap/mixins/grid-framework.less +0 -91
  178. package/less/bootstrap/mixins/grid.less +0 -122
  179. package/less/bootstrap/mixins/hide-text.less +0 -21
  180. package/less/bootstrap/mixins/image.less +0 -33
  181. package/less/bootstrap/mixins/labels.less +0 -12
  182. package/less/bootstrap/mixins/list-group.less +0 -29
  183. package/less/bootstrap/mixins/nav-divider.less +0 -10
  184. package/less/bootstrap/mixins/nav-vertical-align.less +0 -9
  185. package/less/bootstrap/mixins/opacity.less +0 -8
  186. package/less/bootstrap/mixins/pagination.less +0 -23
  187. package/less/bootstrap/mixins/panels.less +0 -24
  188. package/less/bootstrap/mixins/progress-bar.less +0 -10
  189. package/less/bootstrap/mixins/reset-filter.less +0 -8
  190. package/less/bootstrap/mixins/resize.less +0 -6
  191. package/less/bootstrap/mixins/responsive-visibility.less +0 -15
  192. package/less/bootstrap/mixins/size.less +0 -10
  193. package/less/bootstrap/mixins/tab-focus.less +0 -9
  194. package/less/bootstrap/mixins/table-row.less +0 -28
  195. package/less/bootstrap/mixins/text-emphasis.less +0 -8
  196. package/less/bootstrap/mixins/text-overflow.less +0 -8
  197. package/less/bootstrap/mixins/vendor-prefixes.less +0 -227
  198. package/less/bootstrap/mixins.less +0 -39
  199. package/less/bootstrap/modals.less +0 -150
  200. package/less/bootstrap/navbar.less +0 -660
  201. package/less/bootstrap/navs.less +0 -242
  202. package/less/bootstrap/normalize.less +0 -427
  203. package/less/bootstrap/pager.less +0 -54
  204. package/less/bootstrap/pagination.less +0 -88
  205. package/less/bootstrap/panels.less +0 -265
  206. package/less/bootstrap/popovers.less +0 -135
  207. package/less/bootstrap/print.less +0 -107
  208. package/less/bootstrap/progress-bars.less +0 -87
  209. package/less/bootstrap/responsive-embed.less +0 -35
  210. package/less/bootstrap/responsive-utilities.less +0 -194
  211. package/less/bootstrap/scaffolding.less +0 -162
  212. package/less/bootstrap/tables.less +0 -234
  213. package/less/bootstrap/theme.less +0 -273
  214. package/less/bootstrap/thumbnails.less +0 -36
  215. package/less/bootstrap/tooltip.less +0 -102
  216. package/less/bootstrap/type.less +0 -302
  217. package/less/bootstrap/utilities.less +0 -55
  218. package/less/bootstrap/variables.less +0 -861
  219. package/less/bootstrap/wells.less +0 -29
  220. package/less/bootstrap-flipped.css +0 -1550
  221. package/less/ip-blacklist.less +0 -7
  222. package/less/modules/bottom-sheet.less +0 -60
  223. package/less/modules/nprogress.less +0 -80
  224. package/less/notifications.less +0 -38
  225. package/less/post-queue.less +0 -19
  226. package/less/rtl.less +0 -132
  227. package/less/search.less +0 -96
  228. package/less/tags.less +0 -37
  229. package/less/topics_list.less +0 -16
  230. package/less/users.less +0 -73
  231. package/templates/alert.tpl +0 -15
  232. package/templates/partials/change_owner_modal.tpl +0 -22
  233. package/templates/partials/delete_posts_modal.tpl +0 -19
  234. package/templates/partials/fork_thread_modal.tpl +0 -22
  235. package/templates/partials/merge_topics_modal.tpl +0 -58
  236. package/templates/partials/modals/change_picture_modal.tpl +0 -73
  237. package/templates/partials/modals/flag_modal.tpl +0 -45
  238. package/templates/partials/modals/manage_room.tpl +0 -11
  239. package/templates/partials/modals/manage_room_users.tpl +0 -7
  240. package/templates/partials/modals/post_history.tpl +0 -36
  241. package/templates/partials/modals/rename_room.tpl +0 -4
  242. package/templates/partials/modals/upload_file_modal.tpl +0 -44
  243. package/templates/partials/modals/upload_picture_from_url_modal.tpl +0 -17
  244. package/templates/partials/modals/votes_modal.tpl +0 -10
  245. package/templates/partials/move_thread_modal.tpl +0 -17
  246. package/templates/partials/topic/badge.tpl +0 -5
  247. package/theme.less +0 -2
@@ -12,7 +12,7 @@
12
12
  font-size: 24px;
13
13
  color:inherit;
14
14
  line-height: 32px;
15
- @media (max-width: @screen-sm-max) {
15
+ @include media-breakpoint-down(sm) {
16
16
  font-size: 18px;
17
17
  line-height: 24px;
18
18
  margin-top: 0px;
@@ -21,7 +21,7 @@
21
21
 
22
22
  > span {
23
23
  text-transform: uppercase;
24
- color: @gray-light;
24
+ color: $gray-600;
25
25
  display: inline-block;
26
26
  margin-top: 8px;
27
27
  }
@@ -33,42 +33,26 @@
33
33
 
34
34
  [component="topic/labels"] {
35
35
  font-size: 20px;
36
- color: @text-muted;
36
+ color: $text-muted;
37
37
  }
38
38
 
39
39
  [component="topic/browsing-users"] {
40
40
  margin-bottom: -5px;
41
41
  }
42
42
  .topic-header {
43
- position: sticky;
44
- top: calc(var(--panel-offset) - 20px);
45
- background-color: @body-bg;
46
- z-index: @zindex-navbar;
47
- margin-left: -15px;
48
- margin-right: -15px;
49
- padding-left: 15px;
50
- padding-right: 15px;
43
+ top: var(--panel-offset);
44
+ background-color: $body-bg;
45
+ z-index: $zindex-dropdown; // allows for top nav dropdowns to appear on top
51
46
  }
52
47
 
53
48
  .topic-info {
54
- border-bottom: 1px solid @post-border-color;
49
+ border-bottom: 1px solid $post-border-color;
55
50
  margin-bottom: 10px;
56
51
  padding-bottom: 10px;
57
52
  > * {
58
53
  padding-top: 10px;
59
54
  }
60
55
  }
61
- .category-item {
62
- .icon {
63
- min-width: 23px;
64
- min-height: 23px;
65
- font-size: 10px;
66
- line-height: 12px;
67
- padding: 5px;
68
- margin-right: 5px;
69
- border-radius: 50%;
70
- }
71
- }
72
56
 
73
57
  .posts {
74
58
  h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
@@ -118,7 +102,7 @@
118
102
  top: 0px;
119
103
  z-index: 1;
120
104
 
121
- @media (min-width: @screen-md-min) {
105
+ @include media-breakpoint-up(md) {
122
106
  top: 2px;
123
107
  font-size: 16px;
124
108
  }
@@ -137,24 +121,23 @@
137
121
  .login-required {
138
122
  display: inline-block;
139
123
  padding: 0 0.5em;
140
- border: 1px dashed @gray-light;
124
+ border: 1px dashed $gray-600;
141
125
  }
142
126
 
143
127
  .bookmarked {
144
128
  font-size: 16px;
145
- color: darken(@post-highlight, 20%);
129
+ color: darken($post-highlight, 20%);
146
130
  opacity: 0;
147
- .transition(0.75s ease-in-out opacity);
131
+ @include transition(0.75s ease-in-out opacity);
148
132
  margin-left: 5px;
149
133
  }
150
134
 
151
135
  [component="post/anchor"] {
152
136
  position: relative;
153
- top: -@post-padding;
137
+ top: -$post-padding;
154
138
  }
155
139
 
156
140
  [component="post/upvote"], [component="post/downvote"] {
157
- color: @gray-light;
158
141
  display: inline-block;
159
142
  padding: 1rem;
160
143
 
@@ -165,12 +148,12 @@
165
148
 
166
149
  [component="post/upvote"].upvoted {
167
150
  border-radius: 3px;
168
- border: 1px solid @brand-success;
151
+ border: 1px solid $success;
169
152
  }
170
153
 
171
154
  [component="post/downvote"].downvoted {
172
155
  border-radius: 3px;
173
- border: 1px solid @brand-warning;
156
+ border: 1px solid $warning;
174
157
  }
175
158
 
176
159
  [component="post/vote-count"] {
@@ -190,7 +173,7 @@
190
173
  font-size: 11px;
191
174
 
192
175
  img, .user-icon {
193
- .user-icon-style(16px, 10px, 50%);
176
+ @include user-icon-style(16px, 10px, 50%);
194
177
  vertical-align: 1px;
195
178
  }
196
179
 
@@ -202,10 +185,6 @@
202
185
  margin-left: 3px;
203
186
  }
204
187
 
205
- .replies-last {
206
- color: @gray-light;
207
- }
208
-
209
188
  .fa {
210
189
  font-size: 80%;
211
190
  }
@@ -233,7 +212,7 @@
233
212
 
234
213
  [component="post/replies"] {
235
214
  margin-left: 61px;
236
- margin-top: @post-padding;
215
+ margin-top: $post-padding;
237
216
  border-left: 5px solid #eee;
238
217
  padding-left: 20px;
239
218
 
@@ -257,16 +236,16 @@
257
236
  margin-top: 2px;
258
237
  display: block;
259
238
 
260
- color: @gray-light;
239
+ color: $gray-600;
261
240
 
262
241
  strong {
263
- color: @gray-dark;
242
+ color: $gray-800;
264
243
  }
265
244
  }
266
245
  }
267
246
 
268
247
  .content {
269
- margin-top: @post-padding;
248
+ margin-top: $post-padding;
270
249
  padding-bottom: 1px;
271
250
  margin-top: -43px;
272
251
  margin-left: 38px;
@@ -278,7 +257,7 @@
278
257
  .post-tools {
279
258
  a {
280
259
  padding: 1rem 10px;
281
- .pointer;
260
+ @include pointer;
282
261
  }
283
262
  }
284
263
 
@@ -295,7 +274,7 @@
295
274
  background: white !important;
296
275
  color: #333;
297
276
  &:hover {
298
- background: @brand-primary !important;
277
+ background: $primary !important;
299
278
  }
300
279
  }
301
280
  }
@@ -306,12 +285,12 @@
306
285
  }
307
286
 
308
287
  .btn {
309
- background: @body-bg;
288
+ background: $body-bg;
310
289
  text-transform: uppercase;
311
290
  font-weight: 600;
312
291
  box-shadow: none !important;
313
292
  font-size: 11px;
314
- color: @gray-light;
293
+ color: $gray-600;
315
294
  padding: 0;
316
295
  }
317
296
  }
@@ -328,7 +307,7 @@
328
307
  word-wrap: break-word;
329
308
  }
330
309
 
331
- @media (max-width: @screen-sm-max) {
310
+ @include media-breakpoint-down(sm) {
332
311
  .content {
333
312
  margin-left: 0;
334
313
  margin-top: -10px;
@@ -349,7 +328,7 @@
349
328
  margin-top: -3px;
350
329
 
351
330
  .avatar {
352
- .user-icon-style(23px, 1.3rem, 50%);
331
+ @include user-icon-style(23px, calc(23px * 0.6), 50%);
353
332
  }
354
333
  }
355
334
 
@@ -377,7 +356,7 @@
377
356
  font-size: 12px;
378
357
  top: 0px;
379
358
 
380
- @media (min-width: @screen-md-min) {
359
+ @include media-breakpoint-up(md) {
381
360
  top: 2px;
382
361
  font-size: 16px;
383
362
  }
@@ -389,10 +368,10 @@
389
368
  }
390
369
 
391
370
  .quickreply-message {
392
- margin-left: 61px;
371
+ margin-left: 63px;
393
372
  margin-bottom: 5px;
394
373
 
395
- @media (max-width: @screen-sm-max) {
374
+ @include media-breakpoint-down(sm) {
396
375
  margin-left: 0;
397
376
 
398
377
  [component="topic/quickreply/text"] {
@@ -420,7 +399,7 @@
420
399
 
421
400
  .posts {
422
401
  &.timeline {
423
- .timeline-style;
402
+ @include timeline-style;
424
403
  }
425
404
 
426
405
  list-style-type: none;
@@ -428,7 +407,7 @@
428
407
 
429
408
  [component="post"] {
430
409
  position: relative;
431
- .transition(0.75s ease-in-out border-color);
410
+ @include transition(0.75s ease-in-out border-color);
432
411
 
433
412
  .edit-icon {
434
413
  vertical-align: -2%;
@@ -445,8 +424,8 @@
445
424
  }
446
425
 
447
426
  &.highlight {
448
- border-color: darken(@post-highlight, 20%);
449
- box-shadow: 0px 2px 2px -2px @post-highlight;
427
+ border-color: darken($post-highlight, 20%);
428
+ box-shadow: 0px 2px 2px -2px $post-highlight;
450
429
 
451
430
  .bookmarked {
452
431
  opacity: 1;
@@ -455,7 +434,7 @@
455
434
  }
456
435
 
457
436
  .content {
458
- .fix-lists;
437
+ @include fix-lists;
459
438
 
460
439
  blockquote {
461
440
  font-size: 12px;
@@ -475,7 +454,7 @@
475
454
  }
476
455
  }
477
456
 
478
- iframe, .img-responsive {
457
+ iframe, .img-fluid {
479
458
  max-width: 85%;
480
459
  display: inline;
481
460
  }
@@ -499,7 +478,7 @@
499
478
  }
500
479
  }
501
480
 
502
- @media (max-width: @screen-sm-min) {
481
+ @include media-breakpoint-down(sm) {
503
482
  pre {
504
483
  max-height: 250px;
505
484
  }
@@ -509,7 +488,7 @@
509
488
 
510
489
  .pagination-block {
511
490
  position: fixed;
512
- background-color: @gray-lighter;
491
+ background-color: $gray-200;
513
492
  bottom: 0px;
514
493
  right: 0px;
515
494
  z-index: 100;
@@ -517,7 +496,7 @@
517
496
  opacity: 0;
518
497
 
519
498
  .pagination-text {
520
- color: @text-color;
499
+ color: $text-muted;
521
500
  position: relative;
522
501
  top: -3px;
523
502
  font-weight: bolder;
@@ -533,7 +512,6 @@
533
512
  padding-left: 20px;
534
513
  padding-right: 20px;
535
514
  padding-top: 10px;
536
- padding-bottom: 10px;
537
515
  }
538
516
  .dropdown-menu {
539
517
  width: 475px;
@@ -547,7 +525,7 @@
547
525
  }
548
526
  .scroller-container {
549
527
  height: 300px;
550
- border-right: 3px solid @gray-lighter;
528
+ border-right: 3px solid $gray-200;
551
529
  margin-right: 3px;
552
530
  cursor: pointer;
553
531
  .scroller-thumb {
@@ -561,7 +539,7 @@
561
539
  .scroller-thumb-icon {
562
540
  width: 9px;
563
541
  height: 40px;
564
- background-color: @brand-primary;
542
+ background-color: $primary;
565
543
  position: relative;
566
544
  display: inline-block;
567
545
  border-radius: 3px;
@@ -576,21 +554,22 @@
576
554
  }
577
555
  }
578
556
  }
579
- @media (max-width: @screen-sm-min) {
557
+ @include media-breakpoint-down(sm) {
580
558
  .dropdown-menu {
581
559
  width: 100%;
582
560
  }
583
561
  }
584
562
  }
585
563
  .progress-bar {
586
- background-color: @brand-info;
564
+ background-color: $info;
587
565
  display:block;
588
566
  z-index: -1;
589
567
  position: absolute;
590
568
  transition: width 50ms ease-in;
569
+ height: 100%;
591
570
  }
592
571
  }
593
- @media (max-width: @screen-sm-min) {
572
+ @include media-breakpoint-down(sm) {
594
573
  .pagination-block {
595
574
  width: 100%;
596
575
  }
@@ -604,7 +583,7 @@
604
583
  position: relative;
605
584
 
606
585
  img, .user-icon {
607
- .user-icon-style(20px, 1rem, 50%);
586
+ @include user-icon-style(20px, 1rem, 50%);
608
587
  vertical-align: middle;
609
588
  margin: 0 7px;
610
589
  }
@@ -620,13 +599,13 @@
620
599
  top: -36px;
621
600
  left: 7px;
622
601
 
623
- .transition(~"opacity ease 250ms, top ease 250ms")
602
+ @include transition("opacity ease 250ms, top ease 250ms")
624
603
  }
625
604
 
626
605
  &.replying::after {
627
606
  opacity: 1;
628
607
  top: -50px;
629
- .animation(topic-reply-pulse 2s ease-in infinite);
608
+ animation: topic-reply-pulse 2s ease-in infinite;
630
609
  }
631
610
  }
632
611
 
@@ -639,34 +618,17 @@
639
618
  }
640
619
  }
641
620
 
642
- .fork-thread-card {
643
- position: fixed;
644
- bottom: 10%;
645
- right: 2rem;
646
- z-index: 1;
647
- }
648
-
649
621
  .selection-tooltip-container {
650
622
  position: absolute;
651
623
  padding: 5px;
652
- border: 1px solid @well-border;
653
- background-color: @well-bg;
624
+ border: 1px solid $card-border-color;
625
+ background-color: $card-bg;
654
626
  border-radius: 3px;
655
627
  margin: 10px 0px 0px 0px;
656
628
  z-index: 1;
657
629
  }
658
630
 
659
- @media screen and (min-width: @screen-sm-min) {
660
- .fork-thread-card {
661
- max-width: 33%;
662
- }
663
- }
664
-
665
631
  [component="post"] {
666
- .avatar.avatar-sm2x {
667
- font-size: 2.875rem;
668
- }
669
-
670
632
  >.post-header [component="user/picture"], >.post-header [component="user/status"] {
671
633
  opacity: 1;
672
634
  }
@@ -675,15 +637,16 @@
675
637
  opacity: 0;
676
638
  }
677
639
 
678
- &.bg-success {
640
+ &.selected {
679
641
  background-color: initial;
680
642
 
681
643
  >.post-header .icon:before {
682
- border: 1px solid #5cb85c;
683
- color: #5cb85c;
644
+ border: 1px solid $success;
645
+ color: $white;
646
+ background-color: $success;
684
647
  -webkit-transition: .2s ease-in-out all;
685
648
  transition: .2s ease-in-out all;
686
- content: "\f00c";
649
+ content: fa-content($fa-var-check);
687
650
  padding: 14px;
688
651
  border-radius: 50%;
689
652
  opacity: 1;
@@ -0,0 +1,17 @@
1
+ #new-topics-alert {
2
+ margin-bottom: 0px;
3
+ padding: 10px 16px;
4
+ }
5
+
6
+ .topic-list-header {
7
+ top: calc(var(--panel-offset));
8
+ background-color: $body-bg;
9
+ z-index: $zindex-dropdown; // allows for top nav dropdowns to appear on top
10
+ border-top: 1px solid $post-border-color;
11
+ border-bottom: 1px solid $post-border-color;
12
+ }
13
+
14
+ .topic-list .title small {
15
+ font-size: 12px;
16
+ font-weight: normal;
17
+ }
@@ -2,6 +2,6 @@
2
2
  //
3
3
  //## Post objects found on the category, recent, popular, etc. pages
4
4
 
5
- @post-padding: 20px;
6
- @post-border-color: @gray-lighter;
7
- @post-highlight: @brand-info;
5
+ $post-padding: 20px;
6
+ $post-border-color: $gray-200;
7
+ $post-highlight: $info;
@@ -1,35 +1,33 @@
1
1
  <div class="account">
2
2
  <!-- IMPORT partials/account/header.tpl -->
3
+ <h1>[[pages:account/blocks, {username}]]</h1>
4
+ <div class="row justify-content-end mb-2">
5
+ <div class="col-3">
6
+ <div class="dropdown">
7
+ <input class="form-control" type="text" id="user-search" placeholder="[[users:enter_username]]" data-bs-toggle="dropdown" autocomplete="off"/>
3
8
 
4
- <div class="users row">
5
- <h1>[[pages:account/blocks, {username}]]</h1>
9
+ <ul class="dropdown-menu block-edit list-unstyled">
10
+ <li><a href="#" class="dropdown-item">[[admin/menu:search.start-typing]]</a></li>
11
+ {{{ each edit }}}
12
+ <li class="">
13
+ <div class="dropdown-item d-flex flex-nowrap gap-2 justify-content-between">
14
+ <div class="text-truncate">
15
+ <a href="{config.relative_path}/uid/{../uid}">{buildAvatar(edit, "24px", true)} {../username}</a>
16
+ </div>
17
+ <button class="btn btn-sm btn-primary text-nowrap" data-uid="{../uid}" data-action="toggle">[[user:block_toggle]]</button>
18
+ </div>
19
+ </li>
20
+ {{{ end }}}
21
+ </ul>
22
+ </div>
23
+ </div>
24
+ </div>
6
25
 
7
- <div class="col-sm-8 col-xs-12">
8
- <ul id="users-container" class="users-container" data-nextstart="{nextStart}">
9
- <!-- IMPORT partials/users_list.tpl -->
10
- </ul>
26
+ <div class="users row">
27
+ <div class="col-12">
28
+ <!-- IMPORT partials/users_list.tpl -->
11
29
  <div class="alert alert-warning text-center"<!-- IF users.length --> style="display: none;"<!-- END -->>[[user:has_no_blocks]]</div>
12
30
  <!-- IMPORT partials/paginator.tpl -->
13
31
  </div>
14
- <div class="col-sm-4 col-xs-12">
15
- <div class="panel panel-default">
16
- <div class="panel-body form">
17
- <div class="form-group">
18
- <label for="user-search">[[users:search]]</label>
19
- <input class="form-control" type="text" id="user-search" placeholder="[[users:enter_username]]" />
20
- <ul class="block-edit list-group">
21
- {{{ each edit }}}
22
- <li class="list-group-item clearfix">
23
- <button class="btn btn-sm btn-primary pull-right" data-uid="{../uid}" data-action="toggle">[[user:block_toggle]]</button>
24
- <div class="pull-left">
25
- <a href="{config.relative_path}/uid/{../uid}">{buildAvatar(edit, "sm", true)} {../username}</a>
26
- </div>
27
- </li>
28
- {{{ end }}}
29
- </ul>
30
- </div>
31
- </div>
32
- </div>
33
- </div>
34
32
  </div>
35
33
  </div>
@@ -3,21 +3,21 @@
3
3
 
4
4
  <div class="row">
5
5
  <h1>{title}</h1>
6
- <div class="col-lg-12">
6
+ <div class="col-lg-12 mb-2">
7
7
  <div class="btn-group bottom-sheet" component="category/watch/all">
8
- <button class="btn btn-default dropdown-toggle" data-toggle="dropdown" type="button">
8
+ <button class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" type="button">
9
9
  <span>[[user:change_all]]</span>
10
10
  <span class="caret"></span>
11
11
  </button>
12
12
  <ul class="dropdown-menu">
13
- <li><a 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>
14
- <li><a 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>
15
- <li><a 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>
13
+ <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>
14
+ <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>
15
+ <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>
16
16
  </ul>
17
17
  </div>
18
18
  </div>
19
19
  <div class="col-lg-12">
20
- <ul class="categories" itemscope itemtype="http://www.schema.org/ItemList">
20
+ <ul class="categories list-unstyled" itemscope itemtype="http://www.schema.org/ItemList">
21
21
  {{{each categories}}}
22
22
  <!-- IMPORT partials/account/category-item.tpl -->
23
23
  {{{end}}}
@@ -10,7 +10,7 @@
10
10
  <div class="col-sm-6">
11
11
  <!-- IF gdpr_consent -->
12
12
  <div class="alert alert-success">
13
- <i class="fa fa-check pull-right fa-3x"></i>
13
+ <i class="fa fa-check float-end fa-3x"></i>
14
14
  [[user:consent.received]]
15
15
  </div>
16
16
  <!-- ELSE -->
@@ -22,8 +22,8 @@
22
22
  </div>
23
23
  </div>
24
24
  <!-- END -->
25
- <div class="panel panel-default">
26
- <div class="panel-body">
25
+ <div class="card">
26
+ <div class="card-body">
27
27
  <p>[[user:consent.email_intro]]</p>
28
28
  <!-- IF digest.enabled -->
29
29
  <p>[[user:consent.digest_frequency, {digest.frequency}]]</p>
@@ -32,7 +32,7 @@
32
32
  <!-- END -->
33
33
 
34
34
  <div class="text-center">
35
- <a class="btn btn-default" href="./settings">
35
+ <a class="btn btn-outline-secondary" href="./settings">
36
36
  <i class="fa fa-cog"></i>
37
37
  [[pages:account/settings]]
38
38
  </a>
@@ -41,8 +41,8 @@
41
41
  </div>
42
42
  </div>
43
43
  <div class="col-sm-6">
44
- <div class="panel panel-default">
45
- <div class="panel-body">
44
+ <div class="card">
45
+ <div class="card-body">
46
46
  <p><strong>[[user:consent.right_of_access]]</strong></p>
47
47
  <p>[[user:consent.right_of_access_description]]</p>
48
48
  <p><strong>[[user:consent.right_to_rectification]]</strong></p>
@@ -52,14 +52,14 @@
52
52
  <p><strong>[[user:consent.right_to_data_portability]]</strong></p>
53
53
  <p>[[user:consent.right_to_data_portability_description]]</p>
54
54
 
55
- <div class="btn-group-vertical btn-block">
56
- <a data-action="export-profile" class="btn btn-default">
55
+ <div class="btn-group-vertical d-grid">
56
+ <a data-action="export-profile" class="btn btn-outline-secondary">
57
57
  <i class="fa fa-download"></i> [[user:consent.export_profile]]
58
58
  </a>
59
- <a data-action="export-posts" class="btn btn-default">
59
+ <a data-action="export-posts" class="btn btn-outline-secondary">
60
60
  <i class="fa fa-download"></i> [[user:consent.export_posts]]
61
61
  </a>
62
- <a data-action="export-uploads" class="btn btn-default">
62
+ <a data-action="export-uploads" class="btn btn-outline-secondary">
63
63
  <i class="fa fa-download"></i> [[user:consent.export_uploads]]
64
64
  </a>
65
65
  </div>
@@ -5,26 +5,24 @@
5
5
  <!-- disables autocomplete on FF --><input type="password" style="display:none">
6
6
 
7
7
  <!-- IF isSelf -->
8
- <div class="form-group">
9
- <label class="control-label" for="inputCurrentPassword">[[user:current_password]]</label>
10
- <div class="controls">
11
- <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
12
- </div>
8
+ <div class="mb-2">
9
+ <label class="form-label fw-bold" for="inputCurrentPassword">[[user:current_password]]</label>
10
+ <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
13
11
  </div>
14
12
  <!-- ENDIF isSelf -->
15
13
 
16
- <div class="form-group">
17
- <label class="control-label" for="inputNewPassword">[[user:password]]</label>
14
+ <div class="mb-2">
15
+ <label class="form-label fw-bold" for="inputNewPassword">[[user:new_password]]</label>
18
16
  <input class="form-control" type="password" id="inputNewPassword" placeholder="[[user:password]]" value="">
19
17
  <span class="form-feedback" id="password-notify"></span>
20
18
  </div>
21
19
 
22
- <div class="form-group">
23
- <label class="control-label" for="inputNewPasswordAgain">[[user:confirm_password]]</label>
20
+ <div class="mb-2">
21
+ <label class="form-label fw-bold" for="inputNewPasswordAgain">[[user:confirm_password]]</label>
24
22
  <input class="form-control" type="password" id="inputNewPasswordAgain" placeholder="[[user:confirm_password]]" value="">
25
23
  <span class="form-feedback" id="password-confirm-notify"></span>
26
24
  </div>
27
-
25
+
28
26
  <div class="form-actions">
29
27
  <button id="changePasswordBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change_password]]</button>
30
28
  </div>
@@ -2,21 +2,17 @@
2
2
  <!-- IMPORT partials/account/header.tpl -->
3
3
 
4
4
  <form class="form-horizontal edit-form">
5
- <div class="control-group">
6
- <label class="control-label" for="inputNewUsername">[[user:username]]</label>
7
- <div class="controls">
8
- <input class="form-control" type="text" id="inputNewUsername" placeholder="[[user:username]]" value="{username}">
9
- </div>
5
+ <div class="mb-2">
6
+ <label class="form-label fw-bold" for="inputNewUsername">[[user:username]]</label>
7
+ <input class="form-control" type="text" id="inputNewUsername" placeholder="[[user:username]]" value="{username}">
10
8
  </div>
11
9
 
12
10
  <!-- disables autocomplete on FF --><input type="password" style="display:none">
13
11
 
14
12
  <!-- IF isSelf -->
15
- <div class="control-group">
16
- <label class="control-label" for="inputCurrentPassword">[[user:current_password]]</label>
17
- <div class="controls">
18
- <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
19
- </div>
13
+ <div class="mb-2">
14
+ <label class="form-label fw-bold" for="inputCurrentPassword">[[user:current_password]]</label>
15
+ <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
20
16
  </div>
21
17
  <!-- ENDIF isSelf -->
22
18