nodebb-plugin-composer-default 10.0.47 → 10.1.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.
- package/package.json +1 -1
- package/screenshots/desktop.png +0 -0
- package/screenshots/mobile.png +0 -0
- package/static/lib/composer/scheduler.js +25 -1
- package/static/lib/composer.js +1 -0
- package/static/templates/partials/composer-formatting.tpl +2 -0
- package/static/templates/partials/composer-title-container.tpl +2 -1
package/package.json
CHANGED
package/screenshots/desktop.png
CHANGED
|
Binary file
|
package/screenshots/mobile.png
CHANGED
|
Binary file
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
define('composer/scheduler', ['benchpress', 'bootbox', 'alerts'], function (
|
|
3
|
+
define('composer/scheduler', ['benchpress', 'bootbox', 'alerts', 'translator'], function (
|
|
4
|
+
Benchpress,
|
|
5
|
+
bootbox,
|
|
6
|
+
alerts,
|
|
7
|
+
translator
|
|
8
|
+
) {
|
|
4
9
|
const scheduler = {};
|
|
5
10
|
const state = {
|
|
6
11
|
timestamp: 0,
|
|
@@ -10,9 +15,16 @@ define('composer/scheduler', ['benchpress', 'bootbox', 'alerts'], function (Benc
|
|
|
10
15
|
};
|
|
11
16
|
let displayBtnCons = [];
|
|
12
17
|
let displayBtns;
|
|
18
|
+
let cancelBtn;
|
|
13
19
|
let submitContainer;
|
|
14
20
|
let submitOptionsCon;
|
|
15
21
|
|
|
22
|
+
const dropdownDisplayBtn = {
|
|
23
|
+
el: null,
|
|
24
|
+
defaultText: '',
|
|
25
|
+
activeText: '',
|
|
26
|
+
};
|
|
27
|
+
|
|
16
28
|
const submitBtn = {
|
|
17
29
|
el: null,
|
|
18
30
|
icon: null,
|
|
@@ -28,8 +40,15 @@ define('composer/scheduler', ['benchpress', 'bootbox', 'alerts'], function (Benc
|
|
|
28
40
|
state.timestamp = 0;
|
|
29
41
|
state.posts = posts;
|
|
30
42
|
|
|
43
|
+
translator.translateKeys(['[[topic:composer.post-later]]', '[[modules:composer.change-schedule-date]]']).then((translated) => {
|
|
44
|
+
dropdownDisplayBtn.defaultText = translated[0];
|
|
45
|
+
dropdownDisplayBtn.activeText = translated[1];
|
|
46
|
+
});
|
|
47
|
+
|
|
31
48
|
displayBtnCons = $postContainer[0].querySelectorAll('.display-scheduler');
|
|
32
49
|
displayBtns = $postContainer[0].querySelectorAll('.display-scheduler i');
|
|
50
|
+
dropdownDisplayBtn.el = $postContainer[0].querySelector('.dropdown-item.display-scheduler');
|
|
51
|
+
cancelBtn = $postContainer[0].querySelector('.dropdown-item.cancel-scheduling');
|
|
33
52
|
submitContainer = $postContainer.find('[component="composer/submit/container"]');
|
|
34
53
|
submitOptionsCon = $postContainer.find('[component="composer/submit/options/container"]');
|
|
35
54
|
|
|
@@ -38,6 +57,7 @@ define('composer/scheduler', ['benchpress', 'bootbox', 'alerts'], function (Benc
|
|
|
38
57
|
submitBtn.defaultText = submitBtn.el.lastChild.textContent;
|
|
39
58
|
submitBtn.activeText = submitBtn.el.getAttribute('data-text-variant');
|
|
40
59
|
|
|
60
|
+
cancelBtn.addEventListener('click', cancelScheduling);
|
|
41
61
|
displayBtnCons.forEach(el => el.addEventListener('click', openModal));
|
|
42
62
|
};
|
|
43
63
|
|
|
@@ -165,6 +185,10 @@ define('composer/scheduler', ['benchpress', 'bootbox', 'alerts'], function (Benc
|
|
|
165
185
|
submitBtn.icon.classList.toggle('fa-check', !active);
|
|
166
186
|
submitBtn.icon.classList.toggle('fa-clock-o', active);
|
|
167
187
|
}
|
|
188
|
+
if (dropdownDisplayBtn.el) {
|
|
189
|
+
dropdownDisplayBtn.el.textContent = active ? dropdownDisplayBtn.activeText : dropdownDisplayBtn.defaultText;
|
|
190
|
+
cancelBtn.classList.toggle('hidden', !active);
|
|
191
|
+
}
|
|
168
192
|
// Toggle submit button text
|
|
169
193
|
submitBtn.el.lastChild.textContent = active ? submitBtn.activeText : submitBtn.defaultText;
|
|
170
194
|
}
|
package/static/lib/composer.js
CHANGED
|
@@ -464,6 +464,7 @@ define('composer', [
|
|
|
464
464
|
maximumPostLength: config.maximumPostLength,
|
|
465
465
|
minimumTagLength: config.minimumTagLength,
|
|
466
466
|
maximumTagLength: config.maximumTagLength,
|
|
467
|
+
'composer:showHelpTab': config['composer:showHelpTab'],
|
|
467
468
|
isTopic: isTopic,
|
|
468
469
|
isEditing: isEditing,
|
|
469
470
|
canSchedule: !!(isMain && privileges &&
|
|
@@ -43,10 +43,12 @@
|
|
|
43
43
|
<span class="d-none d-md-inline show-text">[[modules:composer.show_preview]]</span>
|
|
44
44
|
<span class="d-none d-md-inline hide-text">[[modules:composer.hide_preview]]</span>
|
|
45
45
|
</button>
|
|
46
|
+
{{{ if composer:showHelpTab }}}
|
|
46
47
|
<button class="btn btn-sm btn-link py-2 text-body fw-semibold text-nowrap" data-action="help">
|
|
47
48
|
<i class="fa fa-question"></i>
|
|
48
49
|
<span class="d-none d-md-inline">[[modules:composer.help]]</span>
|
|
49
50
|
</button>
|
|
51
|
+
{{{ end }}}
|
|
50
52
|
</div>
|
|
51
53
|
</div>
|
|
52
54
|
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
</button>
|
|
35
35
|
<ul class="dropdown-menu dropdown-menu-end p-1">
|
|
36
36
|
<li><a class="dropdown-item rounded-1 display-scheduler {{{ if !canSchedule }}}hidden{{{ end }}}">[[topic:composer.post-later]]</a></li>
|
|
37
|
+
<li><a class="dropdown-item rounded-1 cancel-scheduling hidden">[[modules:composer.cancel-scheduling]]</a></li>
|
|
37
38
|
{{{ each submitOptions }}}
|
|
38
39
|
<li><a class="dropdown-item rounded-1" href="#" data-action="{./action}">{./text}</a></li>
|
|
39
40
|
{{{ end }}}
|
|
@@ -41,4 +42,4 @@
|
|
|
41
42
|
</div>
|
|
42
43
|
</div>
|
|
43
44
|
</div>
|
|
44
|
-
</div>
|
|
45
|
+
</div>
|