neo.mjs 8.6.0 → 8.6.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.
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='8.6.0'
23
+ * @member {String} version='8.6.1'
24
24
  */
25
- version: '8.6.0'
25
+ version: '8.6.1'
26
26
  }
27
27
 
28
28
  /**
@@ -107,7 +107,7 @@ class FooterContainer extends Container {
107
107
  }, {
108
108
  module: Component,
109
109
  cls : ['neo-version'],
110
- html : 'v8.6.0'
110
+ html : 'v8.6.1'
111
111
  }]
112
112
  }],
113
113
  /**
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='8.6.0'
23
+ * @member {String} version='8.6.1'
24
24
  */
25
- version: '8.6.0'
25
+ version: '8.6.1'
26
26
  }
27
27
 
28
28
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neo.mjs",
3
- "version": "8.6.0",
3
+ "version": "8.6.1",
4
4
  "description": "The webworkers driven UI framework",
5
5
  "type": "module",
6
6
  "repository": {
@@ -262,12 +262,12 @@ const DefaultConfig = {
262
262
  useVdomWorker: true,
263
263
  /**
264
264
  * buildScripts/injectPackageVersion.mjs will update this value
265
- * @default '8.6.0'
265
+ * @default '8.6.1'
266
266
  * @memberOf! module:Neo
267
267
  * @name config.version
268
268
  * @type String
269
269
  */
270
- version: '8.6.0'
270
+ version: '8.6.1'
271
271
  };
272
272
 
273
273
  Object.assign(DefaultConfig, {
@@ -395,9 +395,10 @@ class ComboBox extends Picker {
395
395
  * @param {String|null} value The value to filter the picker by
396
396
  */
397
397
  doFilter(value) {
398
- let me = this,
399
- {picker, record, store} = me,
400
- filter = store.getFilter(me.displayField);
398
+ let me = this,
399
+ {picker, store} = me,
400
+ record = me.value,
401
+ filter = store.getFilter(me.displayField);
401
402
 
402
403
  if (filter) {
403
404
  filter.value = value
@@ -408,7 +409,7 @@ class ComboBox extends Picker {
408
409
  me.showPicker();
409
410
 
410
411
  // List might not exist until the picker is created
411
- let {list } = me,
412
+ let {list} = me,
412
413
  {selectionModel} = list;
413
414
 
414
415
  // On show, set the active item to be the current selected record or the first
@@ -420,7 +421,8 @@ class ComboBox extends Picker {
420
421
  }
421
422
 
422
423
  me.timeout(100).then(() => {
423
- const index = store.indexOf(record);
424
+ let index = store.indexOf(record);
425
+
424
426
  list._focusIndex = -1; // silent update to ensure afterSetFocusIndex() always gets called
425
427
  list.focusIndex = index > -1 ? index : 0
426
428
  })
@@ -520,19 +520,28 @@ class DomAccess extends Base {
520
520
 
521
521
  /**
522
522
  * @param {String|HTMLElement} nodeId
523
- * @returns {HTMLElement}
523
+ * @returns {HTMLElement|null}
524
524
  * @protected
525
525
  */
526
526
  getElement(nodeId) {
527
- return nodeId.nodeType ? nodeId : Neo.config.useDomIds ? document.getElementById(nodeId) : document.querySelector(`[data-neo-id='${nodeId}']`)
527
+ let node = nodeId?.nodeType ?
528
+ nodeId : Neo.config.useDomIds ?
529
+ document.getElementById(nodeId) :
530
+ document.querySelector(`[data-neo-id='${nodeId}']`);
531
+
532
+ return node || null
528
533
  }
529
534
 
530
535
  /**
531
- * @param {String|HTMLElement} [nodeId='document.body']
532
- * @returns {HTMLElement}
536
+ * @param {String|HTMLElement} nodeId='document.body'
537
+ * @returns {HTMLElement|null}
533
538
  * @protected
534
539
  */
535
540
  getElementOrBody(nodeId='document.body') {
541
+ if (!nodeId) {
542
+ return null
543
+ }
544
+
536
545
  return nodeId.nodeType ? nodeId : (nodeId === 'body' || nodeId === 'document.body') ? document.body : this.getElement(nodeId)
537
546
  }
538
547