neo.mjs 5.4.2 → 5.4.4

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.
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='5.4.2'
23
+ * @member {String} version='5.4.4'
24
24
  */
25
- version: '5.4.2'
25
+ version: '5.4.4'
26
26
  }
27
27
 
28
28
  /**
@@ -77,14 +77,15 @@ class ViewportModel extends Component {
77
77
  let me = this;
78
78
 
79
79
  if (me.formData && key === 'activeIndex') {
80
- // short delay to honor the lazy loading
81
- setTimeout(() => {
82
- let page = me.getController().getReference('pages-container').items[value];
83
-
84
- console.log(key, value, page);
80
+ let page = me.getController().getReference('pages-container').items[value];
85
81
 
82
+ if (page instanceof Neo.core.Base) {
86
83
  page.setValues(me.formData);
87
- }, 50)
84
+ } else {
85
+ setTimeout(() => {
86
+ me.onDataPropertyChange(key, value, oldValue)
87
+ }, 20)
88
+ }
88
89
  }
89
90
  }
90
91
  }
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='5.4.2'
23
+ * @member {String} version='5.4.4'
24
24
  */
25
- version: '5.4.2'
25
+ version: '5.4.4'
26
26
  }
27
27
 
28
28
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neo.mjs",
3
- "version": "5.4.2",
3
+ "version": "5.4.4",
4
4
  "description": "The webworkers driven UI framework",
5
5
  "type": "module",
6
6
  "repository": {
@@ -237,12 +237,12 @@ const DefaultConfig = {
237
237
  useVdomWorker: true,
238
238
  /**
239
239
  * buildScripts/injectPackageVersion.mjs will update this value
240
- * @default '5.4.2'
240
+ * @default '5.4.4'
241
241
  * @memberOf! module:Neo
242
242
  * @name config.version
243
243
  * @type String
244
244
  */
245
- version: '5.4.2'
245
+ version: '5.4.4'
246
246
  };
247
247
 
248
248
  Object.assign(DefaultConfig, {
@@ -75,6 +75,12 @@ class CheckBox extends Base {
75
75
  * @member {String} The name (group) of the input dom node
76
76
  */
77
77
  name_: '',
78
+ /**
79
+ * In case the CheckBox does not belong to a group (multiple fields with the same name),
80
+ * you can pass a custom value for the unchecked state.
81
+ * @member {*} uncheckedValue=null
82
+ */
83
+ uncheckedValue: null,
78
84
  /**
79
85
  * @member {String|null} valueLabelText_=null
80
86
  */
@@ -91,13 +97,6 @@ class CheckBox extends Base {
91
97
  ]}
92
98
  }
93
99
 
94
- /**
95
- * In case the CheckBox does not belong to a group (multiple fields with the same name),
96
- * you can pass a custom value for the unchecked state.
97
- * @member {*} uncheckedValue=null
98
- */
99
- uncheckedValue = null
100
-
101
100
  /**
102
101
  * @param {Object} config
103
102
  */
@@ -79,10 +79,10 @@ class Select extends Picker {
79
79
  */
80
80
  pickerHeight: null,
81
81
  /**
82
- * @member {Object} record=null
82
+ * @member {Object} record_=null
83
83
  * @protected
84
84
  */
85
- record: null,
85
+ record_: null,
86
86
  /**
87
87
  * @member {String|null} role='listbox'
88
88
  */
@@ -157,6 +157,32 @@ class Select extends Picker {
157
157
  me.typeAhead && me.updateTypeAhead()
158
158
  }
159
159
 
160
+ /**
161
+ * Triggered after the record config got changed
162
+ * @param {Object} value
163
+ * @param {Object} oldValue
164
+ * @protected
165
+ */
166
+ afterSetRecord(value, oldValue) {
167
+ let me = this,
168
+ list = me.list,
169
+ selectionModel = list?.selectionModel,
170
+ valueField = me.valueField,
171
+ nodeId;
172
+
173
+ if (oldValue) {
174
+ nodeId = list?.getItemId(oldValue[valueField]);
175
+
176
+ selectionModel?.deselect(nodeId);
177
+ }
178
+
179
+ if (value) {
180
+ nodeId = list?.getItemId(value[valueField]);
181
+
182
+ selectionModel?.select(nodeId);
183
+ }
184
+ }
185
+
160
186
  /**
161
187
  * Triggered after the store config got changed
162
188
  * @param {Neo.data.Store} value
@@ -529,25 +555,6 @@ class Select extends Picker {
529
555
  this.onListItemChange(record)
530
556
  }
531
557
 
532
- /**
533
- * Called by form.field.trigger.Picker
534
- * @protected
535
- */
536
- onPickerTriggerClick() {
537
- let me = this,
538
- filter;
539
-
540
- if (me.triggerAction === 'all' && !me.pickerIsMounted) {
541
- filter = me.store.getFilter(me.displayField);
542
-
543
- if (filter) {
544
- filter.value = null;
545
- }
546
- }
547
-
548
- super.onPickerTriggerClick()
549
- }
550
-
551
558
  /**
552
559
  * @protected
553
560
  */
@@ -597,6 +604,24 @@ class Select extends Picker {
597
604
  me.onListItemNavigate(me.store.getAt(index))
598
605
  }
599
606
 
607
+ /**
608
+ *
609
+ */
610
+ togglePicker() {
611
+ let me = this,
612
+ filter;
613
+
614
+ if (me.triggerAction === 'all' && !me.pickerIsMounted) {
615
+ filter = me.store.getFilter(me.displayField);
616
+
617
+ if (filter) {
618
+ filter.value = null;
619
+ }
620
+ }
621
+
622
+ super.togglePicker()
623
+ }
624
+
600
625
  /**
601
626
  * @param {Boolean} [silent=false]
602
627
  * @protected