neo.mjs 6.24.0 → 6.25.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.
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='6.24.0'
23
+ * @member {String} version='6.25.0'
24
24
  */
25
- version: '6.24.0'
25
+ version: '6.25.0'
26
26
  }
27
27
 
28
28
  /**
@@ -28,9 +28,9 @@ class ViewportController extends Controller {
28
28
  */
29
29
  ntype: 'viewport-controller',
30
30
  /**
31
- * @member {Number|null} activeIndex=null
31
+ * @member {Number|null} activeIndex_=null
32
32
  */
33
- activeIndex: null,
33
+ activeIndex_: null,
34
34
  /**
35
35
  * @member {String|null} defaultHash='/home'
36
36
  */
@@ -305,7 +305,7 @@ class ViewportController extends Controller {
305
305
  /**
306
306
  *
307
307
  */
308
- updateHeaderToolbar() {
308
+ async updateHeaderToolbar() {
309
309
  let me = this,
310
310
  {activeIndex, size} = me;
311
311
 
@@ -315,13 +315,20 @@ class ViewportController extends Controller {
315
315
  vertical = size === 'x-small',
316
316
  hidden = activeIndex !== 0 && vertical;
317
317
 
318
- headerSocialIcons.hidden = hidden;
318
+ NeoArray.toggle(cls, 'hide-sidebar', hidden);
319
319
 
320
320
  if (!hidden) {
321
- NeoArray.toggle(cls, 'separate-bar', vertical);
321
+ NeoArray.toggle(cls, 'separate-bar', vertical)
322
+ }
323
+
324
+ headerSocialIcons.cls = cls
322
325
 
323
- headerSocialIcons.cls = cls
326
+
327
+ if (hidden && vertical) {
328
+ await me.timeout(200)
324
329
  }
330
+
331
+ headerSocialIcons.hidden = hidden;
325
332
  }
326
333
  }
327
334
  }
@@ -29,17 +29,21 @@ class MainContainer extends Container {
29
29
  * @member {Object[]} items
30
30
  */
31
31
  items: [{
32
- module : Container,
33
- bind : {hidden: data => data.size === 'x-small'},
34
- cls : ['sidenav-container'],
35
- layout : 'fit',
36
- minWidth: 350,
37
- tag :'aside',
38
- width : 350,
32
+ module : Container,
33
+ cls : ['sidenav-container'],
34
+ layout : 'fit',
35
+ reference: 'sidenav-container',
36
+ tag : 'aside',
39
37
 
40
38
  items: [{
41
39
  module : ContentTreeList,
42
40
  reference: 'tree'
41
+ }, {
42
+ ntype : 'button',
43
+ cls : ['sidenav-button'],
44
+ handler: 'onSideNaveToggleButtonClick',
45
+ iconCls: 'fas fa-bars',
46
+ ui : 'secondary'
43
47
  }]
44
48
  }, {
45
49
  module : Splitter,
@@ -155,6 +155,13 @@ class MainContainerController extends Controller {
155
155
  })
156
156
  }
157
157
  }
158
+
159
+ /**
160
+ * @param {Object} data
161
+ */
162
+ onSideNaveToggleButtonClick(data) {
163
+ this.getReference('sidenav-container').toggleCls('neo-expanded')
164
+ }
158
165
  }
159
166
 
160
167
  Neo.setupClass(MainContainerController);
@@ -108,6 +108,8 @@ class MainContainerModel extends Component {
108
108
 
109
109
  me.setData({nextPageText, nextPageRecord});
110
110
 
111
+ me.component.getReference('sidenav-container')?.toggleCls('neo-expanded', false)
112
+
111
113
  break
112
114
  }
113
115
 
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='6.24.0'
23
+ * @member {String} version='6.25.0'
24
24
  */
25
- version: '6.24.0'
25
+ version: '6.25.0'
26
26
  }
27
27
 
28
28
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neo.mjs",
3
- "version": "6.24.0",
3
+ "version": "6.25.0",
4
4
  "description": "The webworkers driven UI framework",
5
5
  "type": "module",
6
6
  "repository": {
@@ -44,6 +44,10 @@
44
44
  right : 0;
45
45
  top : 58px;
46
46
  z-index : 9;
47
+
48
+ &.hide-sidebar {
49
+ animation: fade-out-animation 200ms linear forwards;
50
+ }
47
51
  }
48
52
 
49
53
  // find parallel class hide-sidebar
@@ -9,17 +9,33 @@
9
9
  &.neo-tree-list {
10
10
  .neo-list-container {
11
11
  .neo-list-item {
12
+ &.neo-list-item-leaf {
13
+ .neo-list-item-content:after {
14
+ content: none !important;
15
+ }
16
+ }
17
+
12
18
  .neo-list-item-content:before {
13
19
  content: unset !important;
14
20
  }
15
21
 
16
22
  &.neo-list-folder {
23
+ .neo-list-item-content:after {
24
+ content: "\e5cc" !important;
25
+ }
26
+
17
27
  .neo-list-item-content:before {
18
28
  content: unset !important;
19
29
  }
20
30
 
21
- &.neo-folder-open .neo-list-item-content:before {
22
- content: unset !important;
31
+ &.neo-folder-open {
32
+ .neo-list-item-content:after {
33
+ content: "\e5cf" !important;
34
+ }
35
+
36
+ .neo-list-item-content:before {
37
+ content: unset !important;
38
+ }
23
39
  }
24
40
  }
25
41
  }
@@ -78,28 +94,4 @@
78
94
  }
79
95
  }
80
96
  }
81
-
82
- &.neo-tree-list {
83
- .neo-list-container {
84
- .neo-list-item {
85
- &.neo-list-item-leaf {
86
- .neo-list-item-content:after {
87
- content: none !important;
88
- }
89
- }
90
-
91
- &.neo-list-folder {
92
- .neo-list-item-content:after {
93
- content: "\e5cc" !important;
94
- }
95
-
96
- &.neo-folder-open {
97
- .neo-list-item-content:after {
98
- content: "\e5cf" !important;
99
- }
100
- }
101
- }
102
- }
103
- }
104
- }
105
97
  }
@@ -4,32 +4,32 @@
4
4
  .main-content-splitter {
5
5
  margin: 0;
6
6
  }
7
- }
8
7
 
9
- // todo: @mxmrtns this makes scrollbars globally(!) invisible
10
- // Scrollbar Behaviour
11
- /*::-webkit-scrollbar {
12
- width: 6px;
13
- }
8
+ .sidenav-container {
9
+ min-width: 350px;
10
+ width : 350px;
11
+ }
14
12
 
15
- ::-webkit-scrollbar-track {
16
- background: transparent;
17
- }
13
+ @media (max-width: 640px) {
14
+ .sidenav-container {
15
+ box-shadow: 0 5px 10px rgba(0,0,0,.3);
16
+ left : -350px;
17
+ overflow : visible;
18
+ position : fixed;
19
+ transition: left 250ms ease-out;
18
20
 
19
- ::-webkit-scrollbar-thumb {
20
- background: transparent;
21
- }
21
+ &.neo-expanded {
22
+ left: 0;
23
+ }
22
24
 
23
- .neo-tree-list:hover {
24
- ::-webkit-scrollbar-thumb {
25
- background: #b2b2b2;
26
- border-radius: 100px;
25
+ .sidenav-button {
26
+ box-shadow: 0 5px 10px rgba(0,0,0,.3);
27
+ height : 35px;
28
+ min-width : 35px;
29
+ position : absolute;
30
+ right : -42px;
31
+ width : 35px;
32
+ }
33
+ }
27
34
  }
28
35
  }
29
-
30
- .learn-content:hover {
31
- ::-webkit-scrollbar-thumb {
32
- background: #b2b2b2;
33
- border-radius: 100px;
34
- }
35
- }*/
@@ -260,12 +260,12 @@ const DefaultConfig = {
260
260
  useVdomWorker: true,
261
261
  /**
262
262
  * buildScripts/injectPackageVersion.mjs will update this value
263
- * @default '6.24.0'
263
+ * @default '6.25.0'
264
264
  * @memberOf! module:Neo
265
265
  * @name config.version
266
266
  * @type String
267
267
  */
268
- version: '6.24.0'
268
+ version: '6.25.0'
269
269
  };
270
270
 
271
271
  Object.assign(DefaultConfig, {