nodebb-theme-persona 14.0.1 → 14.0.3

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": "14.0.1",
3
+ "version": "14.0.3",
4
4
  "nbbpm": {
5
5
  "compatibility": "^4.0.0"
6
6
  },
@@ -129,7 +129,7 @@ define('persona/mobile-menu', [
129
129
  function loadNotificationsAndChats() {
130
130
  require(['notifications', 'chat'], function (notifications, chat) {
131
131
  const notifList = $('#chats-menu [data-section="notifications"] ul');
132
- notifications.loadNotifications(notifList, function () {
132
+ notifications.loadNotifications(null, notifList, function () {
133
133
  notifList.find('.deco-none').removeClass('deco-none');
134
134
  chat.loadChatsDropdown($('#chats-menu .chat-list'));
135
135
  });
package/scss/account.scss CHANGED
@@ -55,6 +55,7 @@
55
55
  font-size: 23px;
56
56
  top: 17px;
57
57
  right: -3px;
58
+ padding: 10px;
58
59
  }
59
60
 
60
61
  .chat, .follow {
@@ -18,7 +18,7 @@ ul.topics-list, ul.categories-list {
18
18
 
19
19
  // all other skins use link-color for unread titles
20
20
  &.unread .title a {
21
- color: $link-color;
21
+ color: $link-color!important;
22
22
  font-weight: bold;
23
23
  }
24
24
 
@@ -35,7 +35,7 @@ ul.topics-list, ul.categories-list {
35
35
  .skin-noskin {
36
36
  ul.topics-list, ul.categories-list {
37
37
  li.unread .title {
38
- color: $primary;
38
+ color: $primary!important;
39
39
  }
40
40
  }
41
41
  }
@@ -1,5 +1,7 @@
1
1
  // only overrides to bs5 variables here
2
2
 
3
+ $navbar-nav-link-padding-x: 0.875rem!default;
4
+
3
5
  // persona colors
4
6
  $white: #fff !default;
5
7
  $gray-100: #f8f9fa !default;
package/scss/style.scss CHANGED
@@ -40,27 +40,6 @@ a:hover, .btn-link:hover, .btn-link:active, .btn-link:focus {
40
40
  }
41
41
  }
42
42
 
43
- .status {
44
- font-size: 10px;
45
- vertical-align: middle;
46
-
47
- &.online {
48
- color: $success;
49
- }
50
-
51
- &.away {
52
- color: $warning;
53
- }
54
-
55
- &.dnd {
56
- color: $danger;
57
- }
58
-
59
- &.offline {
60
- color: $gray-600;
61
- }
62
- }
63
-
64
43
 
65
44
  .topic .topic-item, .category .category-item {
66
45
  -webkit-transition: background-color 500ms linear;
package/scss/topic.scss CHANGED
@@ -14,6 +14,9 @@
14
14
 
15
15
 
16
16
  > a > .status {
17
+ display: inline-block;
18
+ width: 4px;
19
+ height: 4px;
17
20
  position: absolute;
18
21
  right: 12px;
19
22
  font-size: 12px;
@@ -21,6 +24,8 @@
21
24
  z-index: 1;
22
25
 
23
26
  @include media-breakpoint-up(md) {
27
+ width: 15px;
28
+ height: 15px;
24
29
  top: 2px;
25
30
  font-size: 16px;
26
31
  }
@@ -14,7 +14,7 @@
14
14
  <!-- ELSE -->
15
15
  <div class="avatar avatar-rounded" style="background-color: {icon:bgColor}; --avatar-size: 128px;" title="{username}">{icon:text}</div>
16
16
  <!-- ENDIF picture -->
17
- <i component="user/status" class="fa fa-circle status {status}" title="[[global:{status}]]"></i>
17
+ <span component="user/status" class="position-absolute border border-white border-2 rounded-circle status {status}"><span class="visually-hidden">[[global:{status}]]</span></span>
18
18
 
19
19
  <!-- IF loggedIn -->
20
20
  <!-- IF !isSelf -->
@@ -1,11 +1,11 @@
1
- <!-- IF ../isSection -->
2
- {../name}
3
- <!-- ELSE -->
4
- <!-- IF ../link -->
5
- <a href="{../link}" itemprop="url">
6
- <!-- ELSE -->
7
- <a href="{config.relative_path}/category/{../slug}" itemprop="url">
8
- <!-- ENDIF ../link -->
9
- {../name}
10
- </a>
1
+ <!-- IF ../isSection -->
2
+ {../name}
3
+ <!-- ELSE -->
4
+ <!-- IF ../link -->
5
+ <a href="{../link}" itemprop="url">
6
+ <!-- ELSE -->
7
+ <a href="{config.relative_path}/category/{../slug}" itemprop="url">
8
+ <!-- ENDIF ../link -->
9
+ {../name}
10
+ </a>
11
11
  <!-- ENDIF ../isSection -->
@@ -11,7 +11,6 @@
11
11
  <li class="nav-item">
12
12
  <a class="nav-link active text-decoration-none" href="#" data-bs-target="#profile" data-bs-toggle="tab">
13
13
  {buildAvatar(user, "24px", true, "user-icon")}
14
- <i component="user/status" class="fa fa-fw fa-circle status {user.status}"></i>
15
14
  </a>
16
15
  </li>
17
16
  </ul>
@@ -1,7 +1,5 @@
1
- <a data-bs-toggle="dropdown" href="#" role="button" class="nav-link d-flex gap-2 justify-content-between align-items-center position-relative" aria-haspopup="true" aria-expanded="false" aria-label="[[global:header.notifications]]">
2
- <span class="d-flex gap-2 align-items-center">
3
- <i component="notifications/icon" class="fa fa-fw {{{ if unreadCount.notification}}}fa-bell{{{ else }}}fa-bell-o{{{ end }}} unread-count" data-content="{unreadCount.notification}"></i>
4
- </span>
1
+ <a data-bs-toggle="dropdown" href="#" role="button" class="nav-link position-relative" aria-haspopup="true" aria-expanded="false" aria-label="[[global:header.notifications]]">
2
+ <i component="notifications/icon" class="fa fa-fw {{{ if unreadCount.notification}}}fa-bell{{{ else }}}fa-bell-o{{{ end }}} unread-count" data-content="{unreadCount.notification}"></i>
5
3
  </a>
6
4
 
7
5
  <ul class="notifications-dropdown dropdown-menu dropdown-menu-end p-1 shadow" role="menu">
@@ -1,10 +1,10 @@
1
- <li id="user_label" class="nav-item dropdown" title="[[global:header.profile]]">
1
+ <li id="user_label" class="nav-item dropdown px-3" title="[[global:header.profile]]">
2
2
  <a href="#" for="user-control-list-check" data-bs-toggle="dropdown" id="user_dropdown" role="button" component="header/avatar" aria-haspopup="true" aria-expanded="false">
3
3
  {buildAvatar(user, "32px", true)}
4
4
  <span id="user-header-name" class="d-block d-sm-none">{user.username}</span>
5
5
  </a>
6
6
  <input type="checkbox" class="hidden" id="user-control-list-check" aria-hidden="true">
7
- <ul id="user-control-list" component="header/usercontrol" class="overscroll-behavior-contain user-dropdown dropdown-menu shadow p-1 text-sm ff-base" role="menu">
7
+ <ul id="user-control-list" component="header/usercontrol" class="overscroll-behavior-contain user-dropdown dropdown-menu dropdown-menu-end shadow p-1 text-sm ff-base" role="menu">
8
8
  <li>
9
9
  <a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="header/profilelink" href="{relative_path}/user/{user.userslug}" role="menuitem" aria-label="[[user:profile]]">
10
10
  <span component="user/status" class="flex-shrink-0 border border-white border-2 rounded-circle status {user.status}"><span class="visually-hidden">[[global:{user.status}]]</span></span>
@@ -44,7 +44,7 @@
44
44
  </div>
45
45
 
46
46
  <div id="nav-dropdown" class="collapse navbar-collapse d-none d-lg-block">
47
- <ul id="main-nav" class="navbar-nav me-auto mb-2 mb-lg-0 gap-2">
47
+ <ul id="main-nav" class="navbar-nav me-auto mb-2 mb-lg-0">
48
48
  {{{each navigation}}}
49
49
  <!-- IF function.displayMenuItem, @index -->
50
50
  <li class="nav-item {navigation.class}{{{ if navigation.dropdown }}} dropdown{{{ end }}}" title="{navigation.title}">
@@ -77,14 +77,14 @@
77
77
  </li>
78
78
  </ul>
79
79
  {{{ if (config.searchEnabled && user.privileges.search:content) }}}
80
- <div class="navbar-nav mb-2 me-2 mb-lg-0 position-relative">
80
+ <div class="navbar-nav mb-2 mb-lg-0 position-relative">
81
81
  <!-- IMPORT partials/header/search.tpl -->
82
82
  </div>
83
83
  {{{ end }}}
84
84
 
85
85
  {{{ if !maintenanceHeader }}}
86
86
  {{{ if config.loggedIn }}}
87
- <ul id="logged-in-menu" class="navbar-nav me-0 mb-2 mb-lg-0 align-items-center gap-2">
87
+ <ul id="logged-in-menu" class="navbar-nav me-0 mb-2 mb-lg-0 align-items-center">
88
88
  <li class="nav-item notifications dropdown d-none d-sm-block" component="notifications" title="[[global:header.notifications]]">
89
89
  <!-- IMPORT partials/header/notifications.tpl -->
90
90
  </li>
@@ -98,7 +98,7 @@
98
98
  <!-- IMPORT partials/header/user-menu.tpl -->
99
99
  </ul>
100
100
  {{{ else }}}
101
- <ul id="logged-out-menu" class="navbar-nav me-0 mb-2 mb-lg-0 align-items-center gap-2">
101
+ <ul id="logged-out-menu" class="navbar-nav me-0 mb-2 mb-lg-0 align-items-center">
102
102
  {{{ if allowRegistration }}}
103
103
  <li class="nav-item">
104
104
  <a class="nav-link" href="{relative_path}/register">
@@ -3,10 +3,7 @@
3
3
 
4
4
  <div class="user-info">
5
5
  <div class="text-nowrap text-truncate">
6
- <span>
7
- <i component="user/status" class="fa fa-circle status {users.status}" title="[[global:{users.status}]]"></i>
8
- <a href="{config.relative_path}/user/{users.userslug}">{users.username}</a>
9
- </span>
6
+ <a href="{config.relative_path}/user/{users.userslug}">{users.username}</a>
10
7
  </div>
11
8
  <!-- IF section_online -->
12
9
  <div class="lastonline">
@@ -25,7 +25,7 @@
25
25
  </h1>
26
26
 
27
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 }}}">
28
+ <span component="topic/labels" class="d-flex gap-2 {{{ if (!scheduled && (!pinned && (!locked && (!icons.length && (!oldCid || (oldCid == "-1")))))) }}}hidden{{{ end }}}">
29
29
  <span component="topic/scheduled" class="badge badge border border-gray-300 text-body {{{ if !scheduled }}}hidden{{{ end }}}">
30
30
  <i class="fa fa-clock-o"></i> [[topic:scheduled]]
31
31
  </span>
package/theme.json CHANGED
@@ -1,7 +1,7 @@
1
- {
2
- "id": "nodebb-theme-persona",
3
- "name": "Persona",
4
- "description": "The default theme for NodeBB. Uses a standard approach to forum design.",
5
- "url": "https://github.com/psychobunny/nodebb-theme-persona",
6
- "screenshot": "screenshot.png"
1
+ {
2
+ "id": "nodebb-theme-persona",
3
+ "name": "Persona",
4
+ "description": "The default theme for NodeBB. Uses a standard approach to forum design.",
5
+ "url": "https://github.com/psychobunny/nodebb-theme-persona",
6
+ "screenshot": "screenshot.png"
7
7
  }