neo.mjs 6.11.0 → 6.12.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.
@@ -1,10 +1,9 @@
1
- import Base from '../../core/Base.mjs';
1
+ import Base from './Base.mjs';
2
2
 
3
3
  /**
4
4
  * Required when running Neo Apps inside the Siesta browser harness (iframe)
5
5
  * @class Neo.main.addon.Siesta
6
- * @extends Neo.core.Base
7
- * @singleton
6
+ * @extends Neo.main.addon.Base
8
7
  */
9
8
  class Siesta extends Base {
10
9
  static config = {
@@ -12,12 +11,7 @@ class Siesta extends Base {
12
11
  * @member {String} className='Neo.main.addon.Siesta'
13
12
  * @protected
14
13
  */
15
- className: 'Neo.main.addon.Siesta',
16
- /**
17
- * @member {Boolean} singleton=true
18
- * @protected
19
- */
20
- singleton: true
14
+ className: 'Neo.main.addon.Siesta'
21
15
  }
22
16
 
23
17
  /**
@@ -47,6 +41,6 @@ class Siesta extends Base {
47
41
  }
48
42
  }
49
43
 
50
- let instance = Neo.applyClassConfig(Siesta);
44
+ Neo.applyClassConfig(Siesta);
51
45
 
52
- export default instance;
46
+ export default Siesta;
@@ -1,11 +1,10 @@
1
- import Base from '../../core/Base.mjs';
1
+ import Base from './Base.mjs';
2
2
 
3
3
  /**
4
4
  * Logic to work with stylesheets, e.g. apply & switch Neo based themes
5
5
  * main.addon.HighlightJS requires this file
6
6
  * @class Neo.main.addon.Stylesheet
7
- * @extends Neo.core.Base
8
- * @singleton
7
+ * @extends Neo.main.addon.Base
9
8
  */
10
9
  class Stylesheet extends Base {
11
10
  /**
@@ -34,12 +33,7 @@ class Stylesheet extends Base {
34
33
  'setCssVariable',
35
34
  'swapStyleSheet'
36
35
  ]
37
- },
38
- /**
39
- * @member {Boolean} singleton=true
40
- * @protected
41
- */
42
- singleton: true
36
+ }
43
37
  }
44
38
 
45
39
  /**
@@ -301,6 +295,6 @@ class Stylesheet extends Base {
301
295
  }
302
296
  }
303
297
 
304
- let instance = Neo.applyClassConfig(Stylesheet);
298
+ Neo.applyClassConfig(Stylesheet);
305
299
 
306
- export default instance;
300
+ export default Stylesheet;
@@ -1,10 +1,9 @@
1
- import Base from '../../core/Base.mjs';
1
+ import Base from './Base.mjs';
2
2
 
3
3
  /**
4
4
  * Addon to register WebComponents
5
5
  * @class Neo.main.addon.WebComponent
6
- * @extends Neo.core.Base
7
- * @singleton
6
+ * @extends Neo.main.addon.Base
8
7
  */
9
8
  class WebComponent extends Base {
10
9
  static config = {
@@ -12,12 +11,7 @@ class WebComponent extends Base {
12
11
  * @member {String} className='Neo.main.addon.WebComponent'
13
12
  * @protected
14
13
  */
15
- className: 'Neo.main.addon.WebComponent',
16
- /**
17
- * @member {Boolean} singleton=true
18
- * @protected
19
- */
20
- singleton: true
14
+ className: 'Neo.main.addon.WebComponent'
21
15
  }
22
16
 
23
17
  /**
@@ -48,6 +42,6 @@ class WebComponent extends Base {
48
42
  }
49
43
  }
50
44
 
51
- let instance = Neo.applyClassConfig(WebComponent);
45
+ Neo.applyClassConfig(WebComponent);
52
46
 
53
- export default instance;
47
+ export default WebComponent;
@@ -1,9 +1,8 @@
1
- import Base from '../../core/Base.mjs';
1
+ import Base from './Base.mjs';
2
2
 
3
3
  /**
4
4
  * @class Neo.main.addon.WindowPosition
5
- * @extends Neo.core.Base
6
- * @singleton
5
+ * @extends Neo.main.addon.Base
7
6
  */
8
7
  class WindowPosition extends Base {
9
8
  static config = {
@@ -49,11 +48,6 @@ class WindowPosition extends Base {
49
48
  * @member {Number|null} screenTop=null
50
49
  */
51
50
  screenTop: null,
52
- /**
53
- * @member {Boolean} singleton=true
54
- * @protected
55
- */
56
- singleton: true,
57
51
  /**
58
52
  * @member {Object} windows={}
59
53
  * @protected
@@ -297,6 +291,6 @@ class WindowPosition extends Base {
297
291
  }
298
292
  }
299
293
 
300
- let instance = Neo.applyClassConfig(WindowPosition);
294
+ Neo.applyClassConfig(WindowPosition);
301
295
 
302
- export default instance;
296
+ export default WindowPosition;
package/src/menu/List.mjs CHANGED
@@ -269,6 +269,7 @@ class List extends BaseList {
269
269
  * @param {Object[]} data.path
270
270
  */
271
271
  onFocusEnter(data) {
272
+ super.onFocusEnter(data);
272
273
  this.menuFocus = true
273
274
  }
274
275
 
@@ -277,6 +278,8 @@ class List extends BaseList {
277
278
  * @param {Object[]} data.oldPath
278
279
  */
279
280
  onFocusLeave(data) {
281
+ super.onFocusLeave(data);
282
+
280
283
  let insideParent = false,
281
284
  parentId = this.parentComponent?.id,
282
285
  item;
@@ -1,4 +1,3 @@
1
- import NeoArray from '../util/Array.mjs';
2
1
  import Model from './Model.mjs';
3
2
 
4
3
  /**
@@ -55,6 +54,9 @@ class ListModel extends Model {
55
54
  */
56
55
  onKeyDownUp(data) {}
57
56
 
57
+ /**
58
+ * @param {Object} data
59
+ */
58
60
  onListClick({ currentTarget }) {
59
61
  const { view } = this;
60
62
 
@@ -67,13 +69,18 @@ class ListModel extends Model {
67
69
  }
68
70
  }
69
71
 
72
+ /**
73
+ * @param {Object} data
74
+ */
70
75
  onListNavigate(data) {
71
76
  const
72
77
  { view } = this,
73
78
  { store } = view;
74
79
 
75
- data.record = store.getAt(Math.min(data.activeIndex, store.getCount()));
76
- view.fire('itemNavigate', data);
80
+ data.record = store.getAt(Math.min(data.activeIndex, store.getCount()));
81
+ view._focusIndex = store.indexOf(data.record); // silent update, no need to refocus
82
+
83
+ view.fire('itemNavigate', data)
77
84
  }
78
85
 
79
86
  /**