nodebb-theme-harmony 0.0.6 → 0.0.8
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/templates/account/blocks.tpl +6 -1
- package/templates/chats.tpl +2 -2
- package/templates/notifications.tpl +19 -54
- package/templates/partials/chats/message.tpl +12 -12
- package/templates/partials/chats/messages.tpl +0 -2
- package/templates/partials/notifications_list.tpl +2 -2
- package/templates/partials/topic/post.tpl +1 -1
- package/templates/partials/users/item.tpl +6 -6
- package/templates/partials/users_list.tpl +1 -7
package/package.json
CHANGED
|
@@ -7,7 +7,12 @@
|
|
|
7
7
|
<h3 class="fw-semibold fs-5">[[pages:account/blocks, {username}]]</h3>
|
|
8
8
|
<div class="justify-content-end">
|
|
9
9
|
<div class="dropdown">
|
|
10
|
-
<
|
|
10
|
+
<div class="input-group">
|
|
11
|
+
<input class="form-control form-control-sm" type="text" id="user-search" placeholder="[[users:enter_username]]" data-bs-toggle="dropdown" autocomplete="off"/>
|
|
12
|
+
<button class="btn btn-primary btn-sm" type="button">
|
|
13
|
+
<i class="fa fa-search"></i>
|
|
14
|
+
</button>
|
|
15
|
+
</div>
|
|
11
16
|
|
|
12
17
|
<ul component="blocks/search/list" class="dropdown-menu dropdown-menu-end block-edit overflow-auto" style="max-height:300px;">
|
|
13
18
|
<li><a href="#" class="dropdown-item">[[admin/menu:search.start-typing]]</a></li>
|
package/templates/chats.tpl
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div class="chats-full d-flex gap-1 vh-100 py-3">
|
|
2
|
-
<div class="d-flex flex-column h-100" component="chat/nav-wrapper" data-loaded="{{{ if roomId }}}1{{{ else }}}0{{{ end }}}">
|
|
2
|
+
<div class="d-flex flex-column h-100" style="width:300px;" component="chat/nav-wrapper" data-loaded="{{{ if roomId }}}1{{{ else }}}0{{{ end }}}">
|
|
3
3
|
<div class="chat-search dropdown mb-2">
|
|
4
4
|
<label class="text-xs text-muted">[[users:search-user-for-chat]]</label>
|
|
5
5
|
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
</ul>
|
|
16
16
|
</div>
|
|
17
17
|
<hr class="text-muted opacity-25 my-1">
|
|
18
|
-
<ul component="chat/recent" class="chats-list list-unstyled overflow-auto mb-0 pe-2" data-nextstart="{nextStart}"
|
|
18
|
+
<ul component="chat/recent" class="chats-list list-unstyled overflow-auto mb-0 pe-2" data-nextstart="{nextStart}">
|
|
19
19
|
{{{each rooms}}}
|
|
20
20
|
<!-- IMPORT partials/chats/recent_room.tpl -->
|
|
21
21
|
{{{end}}}
|
|
@@ -1,68 +1,33 @@
|
|
|
1
|
-
<!-- THIS FILE IS STILL PERSONA -->
|
|
2
|
-
|
|
3
|
-
|
|
4
1
|
<div class="notifications">
|
|
5
2
|
|
|
6
|
-
<!-- IMPORT partials/breadcrumbs.tpl -->
|
|
7
3
|
<div class="btn-toolbar justify-content-end" role="toolbar">
|
|
8
|
-
<
|
|
9
|
-
<button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown">
|
|
10
|
-
{{{ if selectedFilter }}}{selectedFilter.name}{{{ end}}} <span class="caret"></span>
|
|
11
|
-
</button>
|
|
12
|
-
<ul class="dropdown-menu dropdown-menu-end" role="menu">
|
|
13
|
-
{{{ each filters }}}
|
|
14
|
-
{{{ if filters.separator }}}
|
|
15
|
-
<li role="separator" class="dropdown-divider"></li>
|
|
16
|
-
{{{ else }}}
|
|
17
|
-
<li role="presentation" class="category">
|
|
18
|
-
<a class="dropdown-item" role="menu-item" href="{config.relative_path}/notifications?filter={filters.filter}"><i class="fa fa-fw {{{ if filters.selected }}}fa-check{{{ end }}}"></i> {filters.name}</a>
|
|
19
|
-
</li>
|
|
20
|
-
{{{ end }}}
|
|
21
|
-
{{{ end }}}
|
|
22
|
-
</ul>
|
|
23
|
-
</div>
|
|
24
|
-
|
|
25
|
-
<div class="btn-group">
|
|
26
|
-
<button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="true">
|
|
27
|
-
<i class="fa fa-eye"></i>
|
|
28
|
-
<span class="caret"></span>
|
|
29
|
-
</button>
|
|
30
|
-
<ul class="dropdown-menu dropdown-menu-end" role="menu" aria-labelledby="dropdownMenu1">
|
|
31
|
-
<li role="presentation"><a class="dropdown-item" role="menuitem" tabindex="-1" href="#" component="notifications/mark_all">[[notifications:mark_all_read]]</a></li>
|
|
32
|
-
</ul>
|
|
33
|
-
</div>
|
|
4
|
+
<button class="btn btn-light" component="notifications/mark_all">[[notifications:mark_all_read]]</button>
|
|
34
5
|
</div>
|
|
35
6
|
|
|
36
7
|
<hr />
|
|
37
8
|
|
|
38
|
-
<div class="
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
<li data-nid="{notifications.nid}" class="{notifications.readClass} {{{ if !./read}}}text-bg-warning{{{ end }}} d-flex pointer border p-3 mb-2" component="notifications/item">
|
|
45
|
-
<div class="me-2">
|
|
46
|
-
{{{ if notifications.from }}}
|
|
47
|
-
{buildAvatar(notifications.user, "24px", true)}
|
|
9
|
+
<div class="row">
|
|
10
|
+
<div class="col-12 col-md-3 col-lg-2 border-end-md text-sm mb-3">
|
|
11
|
+
<div class="nav sticky-top d-flex flex-row flex-md-column flex-wrap gap-1" style="z-index: 1;">
|
|
12
|
+
{{{ each filters }}}
|
|
13
|
+
{{{ if ./separator }}}
|
|
14
|
+
<hr/>
|
|
48
15
|
{{{ else }}}
|
|
49
|
-
{{{ if
|
|
50
|
-
|
|
16
|
+
<a class="btn-ghost fw-semibold {{{ if ./selected }}}active{{{ end }}}" href="{config.relative_path}/notifications?filter={./filter}">
|
|
17
|
+
<div class="flex-1">{filters.name}</div>
|
|
18
|
+
<span class="text-xs human-readable-number" title="{./count}">{./count}</span>
|
|
19
|
+
</a>
|
|
51
20
|
{{{ end }}}
|
|
52
21
|
{{{ end }}}
|
|
53
22
|
</div>
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
</li>
|
|
63
|
-
{{{end}}}
|
|
64
|
-
</ul>
|
|
65
|
-
<!-- IMPORT partials/paginator.tpl -->
|
|
23
|
+
</div>
|
|
24
|
+
<div class="col-12 col-md-9 col-lg-10">
|
|
25
|
+
<ul class="notifications-list list-unstyled" data-nextstart="{nextStart}">
|
|
26
|
+
<!-- IMPORT partials/notifications_list.tpl -->
|
|
27
|
+
</ul>
|
|
28
|
+
<!-- IMPORT partials/paginator.tpl -->
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
66
31
|
</div>
|
|
67
32
|
|
|
68
33
|
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
<li component="chat/message" class="chat-message mx-2 pe-2
|
|
2
|
-
<div class="message-header {{{ if !messages.newSet }}}hidden{{{ end }}} pb-2">
|
|
3
|
-
<a href="{config.relative_path}/user/{messages.fromUser.userslug}" class="text-decoration-none">{buildAvatar(messages.fromUser, "
|
|
4
|
-
<span class="chat-user fw-
|
|
5
|
-
|
|
1
|
+
<li component="chat/message" class="chat-message mx-2 pe-2 clear{{{ if ./deleted }}} deleted{{{ end }}} {{{ if messages.newSet }}}border-top pt-3{{{ end }}}" data-index="{messages.index}" data-mid="{messages.messageId}" data-uid="{messages.fromuid}" data-self="{messages.self}" data-break="{messages.newSet}" data-timestamp="{messages.timestamp}">
|
|
2
|
+
<div class="message-header lh-1 d-flex align-items-center gap-2 text-sm {{{ if !messages.newSet }}}hidden{{{ end }}} pb-2">
|
|
3
|
+
<a href="{config.relative_path}/user/{messages.fromUser.userslug}" class="text-decoration-none">{buildAvatar(messages.fromUser, "18px", true, "not-responsive")}</a>
|
|
4
|
+
<span class="chat-user fw-semibold"><a href="{config.relative_path}/user/{messages.fromUser.userslug}">{messages.fromUser.displayname}</a></span>
|
|
5
|
+
{{{ if ./fromUser.banned }}}
|
|
6
6
|
<span class="badge bg-danger">[[user:banned]]</span>
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
{{{ end }}}
|
|
8
|
+
{{{ if ./fromUser.deleted }}}
|
|
9
9
|
<span class="badge bg-danger">[[user:deleted]]</span>
|
|
10
|
-
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
<div class="text-muted
|
|
14
|
-
|
|
10
|
+
{{{ end }}}
|
|
11
|
+
<span class="chat-timestamp text-muted ms-2 timeago" title="{messages.timestampISO}"></span>
|
|
12
|
+
{{{ if messages.edited }}}
|
|
13
|
+
<div class="text-muted ms-auto" title="[[global:edited-timestamp, {messages.editedISO}]]"><i class="fa fa-edit"></i></span></div>
|
|
14
|
+
{{{ end }}}
|
|
15
15
|
</div>
|
|
16
16
|
<div class="message-body-wrapper hover-parent">
|
|
17
17
|
<div component="chat/message/body" class="message-body ps-0 py-0 overflow-auto">
|
|
@@ -17,12 +17,12 @@
|
|
|
17
17
|
<a href="{./path}" class="text-decoration-none notification-chat-content text-reset text text-sm">
|
|
18
18
|
{./bodyShort}
|
|
19
19
|
</a>
|
|
20
|
-
<div class="text-xs text-muted">{./timeagoLong}</div>
|
|
20
|
+
<div class="text-xs text-muted">{{{ if ./timeagoLong }}}{./timeagoLong}{{{ else }}}<span class="timeago" title="{./datetimeISO}"></span>{{{ end }}}</div>
|
|
21
21
|
</div>
|
|
22
22
|
</div>
|
|
23
23
|
<div class="notification-chat-controls">
|
|
24
24
|
{{{ if ./nid }}}
|
|
25
|
-
<button class="mark-read btn btn-light btn-sm"
|
|
25
|
+
<button class="mark-read btn btn-light btn-sm">
|
|
26
26
|
<i class="unread fa fa-xs fa-circle text-primary {{{ if ./read }}}hidden{{{ end }}}"></i>
|
|
27
27
|
<i class="read fa fa-xs fa-circle-o text-secondary {{{ if !./read }}}hidden{{{ end }}}"></i>
|
|
28
28
|
</button>
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
|
|
40
40
|
<a class="permalink text-muted" href="{config.relative_path}/post/{posts.pid}"><span class="timeago" title="{posts.timestampISO}"></span></a>
|
|
41
41
|
|
|
42
|
-
<i component="post/edit-indicator" class="fa fa-
|
|
42
|
+
<i component="post/edit-indicator" class="fa fa-edit text-muted{{{ if privileges.posts:history }}} pointer{{{ end }}} edit-icon {{{ if !posts.editor.username }}}hidden{{{ end }}}" title="[[global:edited-timestamp, {./editedISO}]]"></i>
|
|
43
43
|
<span data-editor="{posts.editor.userslug}" component="post/editor" class="visually-hidden">[[global:last_edited_by, {posts.editor.username}]] <span class="timeago" title="{posts.editedISO}"></span></span>
|
|
44
44
|
</div>
|
|
45
45
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
<a href="{config.relative_path}/user/{./userslug}" class="btn-ghost align-items-start">
|
|
2
|
-
{buildAvatar(@value, "48px", true)}
|
|
3
|
-
<div class="d-flex flex-
|
|
4
|
-
<div class="fw-semibold">{./displayname}</div>
|
|
5
|
-
<div class="text-xs text-muted">@{./username}</div>
|
|
1
|
+
<a href="{config.relative_path}/user/{./userslug}" class="btn-ghost align-items-start justify-content-start">
|
|
2
|
+
{buildAvatar(@value, "48px", true, "flex-shrink-0")}
|
|
3
|
+
<div class="d-flex flex-column text-truncate">
|
|
4
|
+
<div class="fw-semibold text-truncate" title="{./displayname}">{./displayname}</div>
|
|
5
|
+
<div class="text-xs text-muted text-truncate">@{./username}</div>
|
|
6
6
|
</div>
|
|
7
|
-
</a>
|
|
7
|
+
</a>
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
<div id="users-container" class="users-container row row-cols-2 row-cols-md-3 row-cols-lg-4 row-cols-xl-5 g-2">
|
|
2
2
|
{{{ each users }}}
|
|
3
|
-
|
|
4
|
-
{buildAvatar(@value, "48px", true)}
|
|
5
|
-
<div class="d-flex flex-1 flex-column">
|
|
6
|
-
<div class="fw-semibold">{./displayname}</div>
|
|
7
|
-
<div class="text-xs text-muted">@{./username}</div>
|
|
8
|
-
</div>
|
|
9
|
-
</a>
|
|
3
|
+
<!-- IMPORT partials/users/item.tpl -->
|
|
10
4
|
{{{ end }}}
|
|
11
5
|
</div>
|