neo.mjs 5.10.12 → 5.11.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.
@@ -77,6 +77,10 @@ class Container extends BaseContainer {
77
77
  * @member {Boolean} showHeaderFilters_=false
78
78
  */
79
79
  showHeaderFilters_: false,
80
+ /**
81
+ * @member {Boolean} sortable_=true
82
+ */
83
+ sortable_: true,
80
84
  /**
81
85
  * @member {Neo.data.Store} store_=null
82
86
  */
@@ -125,6 +129,7 @@ class Container extends BaseContainer {
125
129
  module : header.Toolbar,
126
130
  id : me.headerToolbarId,
127
131
  showHeaderFilters: me.showHeaderFilters,
132
+ sortable : me.sortable,
128
133
  ...me.headerToolbarConfig
129
134
  }, {
130
135
  module : View,
@@ -162,6 +167,18 @@ class Container extends BaseContainer {
162
167
  }
163
168
  }
164
169
 
170
+ /**
171
+ * Triggered after the sortable config got changed
172
+ * @param {Boolean} value
173
+ * @param {Boolean} oldValue
174
+ * @protected
175
+ */
176
+ afterSetSortable(value, oldValue) {
177
+ if (oldValue !== undefined) {
178
+ Neo.getComponent(this.headerToolbarId).sortable = value;
179
+ }
180
+ }
181
+
165
182
  /**
166
183
  * Triggered after the useCustomScrollbars config got changed
167
184
  * @param {Boolean} value
@@ -85,6 +85,10 @@ class Button extends BaseButton {
85
85
  * @member {Boolean} showHeaderFilter_=false
86
86
  */
87
87
  showHeaderFilter_: false,
88
+ /**
89
+ * @member {Boolean} sortable_=true
90
+ */
91
+ sortable_: true,
88
92
  /**
89
93
  * @member {Object} _vdom
90
94
  */
@@ -107,24 +111,19 @@ class Button extends BaseButton {
107
111
  construct(config) {
108
112
  super.construct(config);
109
113
 
110
- let me = this,
111
- listeners = {
112
- click: me.onButtonClick,
113
- scope: me
114
- };
115
-
114
+ let me = this;
115
+
116
116
  if (me.draggable) {
117
- Object.assign(listeners, {
117
+ me.addDomListeners({
118
118
  dragend : me.onDragEnd,
119
119
  dragenter: me.onDragEnter,
120
120
  dragleave: me.onDragLeave,
121
121
  dragover : me.onDragOver,
122
122
  dragstart: me.onDragStart,
123
123
  drop : me.onDrop,
124
+ scope : me
124
125
  });
125
126
  }
126
-
127
- me.addDomListeners(listeners);
128
127
  }
129
128
 
130
129
  /**
@@ -227,6 +226,34 @@ class Button extends BaseButton {
227
226
  me.update();
228
227
  }
229
228
 
229
+ /**
230
+ * Triggered after the sortable config got changed
231
+ * @param {Boolean} value
232
+ * @param {Boolean} oldValue
233
+ * @protected
234
+ */
235
+ afterSetSortable(value, oldValue) {
236
+ let me = this,
237
+ cls = me.cls;
238
+
239
+ if (value === true) {
240
+ NeoArray.remove(cls, 'neo-sort-hidden');
241
+ me.addDomListeners({
242
+ click: me.onButtonClick,
243
+ scope: me
244
+ });
245
+ } else {
246
+ NeoArray.add(cls, 'neo-sort-hidden');
247
+ me.removeDomListeners({
248
+ click: me.onButtonClick,
249
+ scope: me
250
+ });
251
+ }
252
+
253
+ me.cls = cls;
254
+ me.update();
255
+ }
256
+
230
257
  /**
231
258
  * Triggered before the align config gets changed
232
259
  * @param {String} value
@@ -34,6 +34,10 @@ class Toolbar extends BaseToolbar {
34
34
  * @member {Boolean} showHeaderFilters_=false
35
35
  */
36
36
  showHeaderFilters_: false,
37
+ /**
38
+ * @member {Boolean} sortable=true
39
+ */
40
+ sortable: true,
37
41
  /**
38
42
  * @member {Object} _vdom={tag:'thead',cn:[{tag:'tr',cn:[]}]}
39
43
  */
@@ -63,6 +67,26 @@ class Toolbar extends BaseToolbar {
63
67
  }
64
68
  }
65
69
 
70
+ /**
71
+ * Triggered after the sortable config got changed
72
+ * @param {Boolean} value
73
+ * @param {Boolean} oldValue
74
+ * @protected
75
+ */
76
+ afterSetSortable(value, oldValue) {
77
+ if (oldValue !== undefined) {
78
+ let me = this;
79
+
80
+ me.items.forEach(item => {
81
+ item.setSilent({
82
+ sortable: value
83
+ });
84
+ });
85
+
86
+ me.update();
87
+ }
88
+ }
89
+
66
90
  /**
67
91
  *
68
92
  */
@@ -98,7 +122,8 @@ class Toolbar extends BaseToolbar {
98
122
  } else {
99
123
  item.vdom.cls = []; // remove the button cls from the th tag
100
124
  }
101
-
125
+
126
+ item.sortable = me.sortable;
102
127
  item.wrapperStyle = style;
103
128
 
104
129
  // inverse loop direction