nodebb-plugin-composer-default 10.0.48 → 10.1.1

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-plugin-composer-default",
3
- "version": "10.0.48",
3
+ "version": "10.1.1",
4
4
  "description": "Default composer for NodeBB",
5
5
  "main": "library.js",
6
6
  "repository": {
Binary file
Binary file
@@ -1,6 +1,11 @@
1
1
  'use strict';
2
2
 
3
- define('composer/scheduler', ['benchpress', 'bootbox', 'alerts'], function (Benchpress, bootbox, alerts) {
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
  }
@@ -586,6 +586,8 @@ define('composer', [
586
586
  bootbox.dialog({
587
587
  size: 'large',
588
588
  message: html,
589
+ onEscape: true,
590
+ backdrop: true,
589
591
  });
590
592
  }
591
593
  });
@@ -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>