neo.mjs 7.0.4 → 7.0.6

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.
@@ -12,6 +12,7 @@ jobs:
12
12
  steps:
13
13
  - uses: actions/stale@v9
14
14
  with:
15
+ operations-per-run: 500
15
16
  days-before-issue-stale: 90
16
17
  days-before-issue-close: 14
17
18
  exempt-issue-labels: 'no auto close'
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='7.0.4'
23
+ * @member {String} version='7.0.6'
24
24
  */
25
- version: '7.0.4'
25
+ version: '7.0.6'
26
26
  }
27
27
 
28
28
  /**
@@ -16,7 +16,7 @@
16
16
  "@type": "Organization",
17
17
  "name": "Neo.mjs"
18
18
  },
19
- "datePublished": "2024-08-27",
19
+ "datePublished": "2024-09-01",
20
20
  "publisher": {
21
21
  "@type": "Organization",
22
22
  "name": "Neo.mjs"
@@ -111,7 +111,7 @@ class FooterContainer extends Container {
111
111
  }, {
112
112
  module: Component,
113
113
  cls : ['neo-version'],
114
- html : 'v7.0.4'
114
+ html : 'v7.0.6'
115
115
  }]
116
116
  }],
117
117
  /**
@@ -172,8 +172,6 @@ if (programOpts.info) {
172
172
  `;
173
173
  fs.writeFileSync(path.join(folder, 'index.html'), indexContent);
174
174
 
175
-
176
-
177
175
  let neoConfig = {
178
176
  appPath: `${insideNeo ? '' : '../../'}${appPath}app.mjs`,
179
177
  basePath: '../../',
@@ -97,9 +97,9 @@ function createMainContainer(classFolder, componentPath, componentChunk, name) {
97
97
  const template = [];
98
98
 
99
99
  template.push(
100
- "import ConfigurationViewport from '../../ConfigurationViewport.mjs';",
101
- "import NumberField from '../../../src/form/field/Number.mjs';",
102
- `import ${name} from '../../../src/${componentPath}.mjs';`,
100
+ "import ConfigurationViewport from '../../ConfigurationViewport.mjs';",
101
+ "import NumberField from '../../../src/form/field/Number.mjs';",
102
+ `import ${name} from '../../../src/${componentPath}.mjs';`,
103
103
  "",
104
104
  "/**",
105
105
  ` * @class Neo.examples.${componentChunk.toLowerCase()}.MainContainer`,
@@ -150,9 +150,7 @@ function createMainContainer(classFolder, componentPath, componentChunk, name) {
150
150
  " }",
151
151
  "}",
152
152
  "",
153
- "Neo.setupClass(MainContainer);",
154
- "",
155
- "export default MainContainer;"
153
+ "export default Neo.setupClass(MainContainer);"
156
154
  );
157
155
  const file = `${classFolder}/MainContainer.mjs`;
158
156
  fs.writeFileSync(file, `${template.join(os.EOL)}${os.EOL}`);
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='7.0.4'
23
+ * @member {String} version='7.0.6'
24
24
  */
25
- version: '7.0.4'
25
+ version: '7.0.6'
26
26
  }
27
27
 
28
28
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neo.mjs",
3
- "version": "7.0.4",
3
+ "version": "7.0.6",
4
4
  "description": "The webworkers driven UI framework",
5
5
  "type": "module",
6
6
  "repository": {
@@ -57,7 +57,7 @@
57
57
  "monaco-editor": "0.50.0",
58
58
  "neo-jsdoc": "1.0.1",
59
59
  "neo-jsdoc-x": "1.0.5",
60
- "postcss": "^8.4.41",
60
+ "postcss": "^8.4.42",
61
61
  "sass": "^1.77.8",
62
62
  "siesta-lite": "5.5.2",
63
63
  "url": "^0.11.4",
@@ -20,7 +20,7 @@ class MainViewController extends Controller {
20
20
  className: 'GS.references1.MainViewController'
21
21
  }
22
22
  onDisableButtonClick(data) {
23
- data.component.disabled = true;
23
+ data.component.disabled = true
24
24
  }
25
25
  }
26
26
  MainViewController = Neo.setupClass(MainViewController);
@@ -1,9 +1,10 @@
1
1
  .neo-splitter {
2
2
  background-color: var(--splitter-background-color);
3
3
  border : var(--splitter-border);
4
+ border-radius : var(--splitter-border-radius);
4
5
  transition : background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
5
6
 
6
- &:hover {
7
+ &:active, &:hover {
7
8
  background-color: var(--splitter-hover-color);
8
9
  border-color : var(--splitter-hover-color);
9
10
  }
@@ -12,12 +13,14 @@
12
13
  border-left : none;
13
14
  border-right: none;
14
15
  cursor : ns-resize;
16
+ margin : var(--splitter-margin-horizontal);
15
17
  }
16
18
 
17
19
  &.neo-vertical {
18
20
  border-bottom: none;
19
21
  border-top : none;
20
22
  cursor : ew-resize;
23
+ margin : var(--splitter-margin-vertical);
21
24
  }
22
25
  }
23
26
 
@@ -25,5 +28,11 @@
25
28
  &.neo-splitter {
26
29
  background-color: var(--splitter-hover-color);
27
30
  border-color : var(--splitter-hover-color);
31
+
32
+ &.neo-horizontal, &.neo-vertical {
33
+ // getBoundingClientRect() already adds margins to positions,
34
+ // so it would get added twice unless we nullify it.
35
+ margin: 0;
36
+ }
28
37
  }
29
38
  }
@@ -1,5 +1,8 @@
1
1
  :root .neo-theme-dark { // .neo-splitter
2
- --splitter-background-color: #3c3f41;
3
- --splitter-border : 1px solid #323232;
4
- --splitter-hover-color : #64B5F6;
2
+ --splitter-background-color : #3c3f41;
3
+ --splitter-border : 1px solid #323232;
4
+ --splitter-border-radius : 0;
5
+ --splitter-hover-color : #64B5F6;
6
+ --splitter-margin-horizontal: 0;
7
+ --splitter-margin-vertical : 0;
5
8
  }
@@ -1,5 +1,8 @@
1
1
  :root .neo-theme-light { // .neo-splitter
2
- --splitter-background-color: #f2f2f2;
3
- --splitter-border : 1px solid #ddd;
4
- --splitter-hover-color : #5d83a7
2
+ --splitter-background-color : #f2f2f2;
3
+ --splitter-border : 1px solid #ddd;
4
+ --splitter-border-radius : 0;
5
+ --splitter-hover-color : #5d83a7;
6
+ --splitter-margin-horizontal: 0;
7
+ --splitter-margin-vertical : 0;
5
8
  }
@@ -1,22 +1,8 @@
1
1
  :root .neo-theme-neo-light { // .neo-splitter
2
- --splitter-background-color: #f2f2f2;
3
- --splitter-border : 1px solid #ddd;
4
- --splitter-hover-color : #5d83a7;
5
-
6
- .neo-splitter {
7
- opacity: 1;
8
- margin: 8px 2px;
9
- border-radius: 100px;
10
- border: unset !important;
11
-
12
- &:hover, &:active {
13
- background-color: #5595F5 !important;
14
- }
15
- }
16
-
17
- .neo-dragproxy {
18
- &.neo-splitter {
19
- background-color: #5595F5 !important;
20
- }
21
- }
2
+ --splitter-background-color : #f2f2f2;
3
+ --splitter-border : none;
4
+ --splitter-border-radius : 5px;
5
+ --splitter-hover-color : #5595F5;
6
+ --splitter-margin-horizontal: 2px 8px;
7
+ --splitter-margin-vertical : 8px 2px;
22
8
  }
@@ -262,12 +262,12 @@ const DefaultConfig = {
262
262
  useVdomWorker: true,
263
263
  /**
264
264
  * buildScripts/injectPackageVersion.mjs will update this value
265
- * @default '7.0.4'
265
+ * @default '7.0.6'
266
266
  * @memberOf! module:Neo
267
267
  * @name config.version
268
268
  * @type String
269
269
  */
270
- version: '7.0.4'
270
+ version: '7.0.6'
271
271
  };
272
272
 
273
273
  Object.assign(DefaultConfig, {
@@ -170,6 +170,7 @@ class EventDragZone extends DragZone {
170
170
  appName : me.appName,
171
171
  moveInMainThread: me.moveInMainThread,
172
172
  parentId : me.proxyParentId,
173
+ windowId : me.windowId,
173
174
 
174
175
  ...me.dragProxyConfig,
175
176
 
@@ -609,9 +609,10 @@ class Base extends CoreBase {
609
609
  if (value && !me.dropZone) {
610
610
  import('../draggable/DropZone.mjs').then(module => {
611
611
  me.dropZone = Neo.create({
612
- module : module.default,
613
- appName: me.appName,
614
- owner : me,
612
+ module : module.default,
613
+ appName : me.appName,
614
+ owner : me,
615
+ windowId: me.windowId,
615
616
  ...me.dropZoneConfig
616
617
  })
617
618
  })
@@ -663,6 +663,7 @@ class Circle extends Component {
663
663
  dragProxyConfig: {vdom: me.getProxyVdom()},
664
664
  owner : me,
665
665
  useProxyWrapper: false,
666
+ windowId : me.windowId,
666
667
  ...me.dragZoneConfig
667
668
  })
668
669
  }
@@ -117,6 +117,22 @@ class Splitter extends Component {
117
117
  this[this.direction === 'vertical' ? 'width' : 'height'] = value
118
118
  }
119
119
 
120
+ /**
121
+ * Triggered after the windowId config got changed
122
+ * @param {Number|null} value
123
+ * @param {Number|null} oldValue
124
+ * @protected
125
+ */
126
+ afterSetWindowId(value, oldValue) {
127
+ super.afterSetWindowId(value, oldValue);
128
+
129
+ let {dragZone} = this;
130
+
131
+ if (dragZone) {
132
+ dragZone.windowId = value
133
+ }
134
+ }
135
+
120
136
  /**
121
137
  * Triggered before the direction config gets changed
122
138
  * @param {String} value
@@ -198,16 +214,17 @@ class Splitter extends Component {
198
214
  * @param data
199
215
  */
200
216
  onDragStart(data) {
201
- let me = this,
202
- style = me.style || {},
203
- vertical = me.direction === 'vertical';
217
+ let me = this,
218
+ style = me.style || {},
219
+ vertical = me.direction === 'vertical',
220
+ {appName, windowId} = me;
204
221
 
205
222
  me.parent.disabled = true;
206
223
 
207
224
  if (!me.dragZone) {
208
225
  me.dragZone = Neo.create({
209
226
  module : DragZone,
210
- appName : me.appName,
227
+ appName,
211
228
  bodyCursorStyle : vertical ? 'ew-resize !important' : 'ns-resize !important',
212
229
  boundaryContainerId: me.parentId,
213
230
  dragElement : me.vdom,
@@ -215,6 +232,7 @@ class Splitter extends Component {
215
232
  moveVertical : !vertical,
216
233
  owner : me,
217
234
  useProxyWrapper : false,
235
+ windowId,
218
236
  ...me.dragZoneConfig
219
237
  })
220
238
  } else {
@@ -502,16 +502,16 @@ class Base extends Panel {
502
502
  *
503
503
  */
504
504
  createHeader() {
505
- let me = this,
506
- {windowId} = me,
507
- cls = ['neo-header-toolbar', 'neo-toolbar'],
508
- headers = me.headers || [];
505
+ let me = this,
506
+ {appName, windowId} = me,
507
+ cls = ['neo-header-toolbar', 'neo-toolbar'],
508
+ headers = me.headers || [];
509
509
 
510
510
  me.draggable && cls.push('neo-draggable');
511
511
 
512
512
  me.headerToolbar = Neo.create({
513
513
  module : Toolbar,
514
- appName : me.appName,
514
+ appName,
515
515
  cls,
516
516
  dock : 'top',
517
517
  flex : 'none',
@@ -685,9 +685,9 @@ class Base extends Panel {
685
685
  * @param data
686
686
  */
687
687
  onDragStart(data) {
688
- let me = this,
689
- {windowId} = me,
690
- style = me.style || {};
688
+ let me = this,
689
+ {appName, id, windowId} = me,
690
+ style = me.style || {};
691
691
 
692
692
  if (!me.maximized) {
693
693
  me.isDragging = true;
@@ -697,7 +697,7 @@ class Base extends Panel {
697
697
  if (!me.dragZone) {
698
698
  me.dragZone = Neo.create({
699
699
  module : DragZone,
700
- appName : me.appName,
700
+ appName,
701
701
  bodyCursorStyle : 'move !important',
702
702
  boundaryContainerId: me.boundaryContainerId,
703
703
  dragElement : me.vdom,
@@ -708,10 +708,7 @@ class Base extends Panel {
708
708
  ...me.dragZoneConfig
709
709
  });
710
710
 
711
- me.fire('dragZoneCreated', {
712
- dragZone: me.dragZone,
713
- id : me.id
714
- })
711
+ me.fire('dragZoneCreated', {dragZone: me.dragZone, id})
715
712
  } else {
716
713
  me.dragZone.boundaryContainerId = me.boundaryContainerId
717
714
  }
@@ -198,6 +198,7 @@ class DragZone extends Base {
198
198
  appName : me.appName,
199
199
  moveInMainThread: me.moveInMainThread,
200
200
  parentId : me.proxyParentId,
201
+ windowId : me.windowId,
201
202
 
202
203
  ...me.dragProxyConfig,
203
204
 
@@ -304,16 +305,17 @@ class DragZone extends Base {
304
305
  * @param {Object} data
305
306
  */
306
307
  dragStart(data) {
307
- let me = this,
308
- {owner} = me,
309
- {cls} = owner,
310
- rect = me.getDragElementRect(data),
308
+ let me = this,
309
+ {appName, owner, windowId} = me,
310
+ {cls} = owner,
311
+ rect = me.getDragElementRect(data),
311
312
  offsetX, offsetY;
312
313
 
313
314
  me.setData();
314
315
 
315
316
  Neo.main.addon.DragDrop.setConfigs({
316
- appName: me.appName,
317
+ appName,
318
+ windowId,
317
319
  ...me.getMainThreadConfigs()
318
320
  });
319
321
 
package/src/list/Base.mjs CHANGED
@@ -201,8 +201,9 @@ class Base extends Component {
201
201
  plugins = me.plugins || [];
202
202
 
203
203
  plugins.push({
204
- module : module.default,
205
- appName: me.appName,
204
+ module : module.default,
205
+ appName : me.appName,
206
+ windowId: me.windowId,
206
207
  ...me.pluginAnimateConfig
207
208
  });
208
209
 
@@ -233,9 +234,10 @@ class Base extends Component {
233
234
  if (value && !me.dragZone) {
234
235
  import('../draggable/list/DragZone.mjs').then(module => {
235
236
  me.dragZone = Neo.create({
236
- module : module.default,
237
- appName: me.appName,
238
- owner : me,
237
+ module : module.default,
238
+ appName : me.appName,
239
+ owner : me,
240
+ windowId: me.windowId,
239
241
  ...me.dragZoneConfig
240
242
  })
241
243
  })
@@ -37,11 +37,14 @@ class Toolbar extends BaseToolbar {
37
37
 
38
38
  if (value && !me.sortZone) {
39
39
  import('../../draggable/tab/header/toolbar/SortZone.mjs').then(module => {
40
+ let {appName, id, windowId} = me;
41
+
40
42
  me.sortZone = Neo.create({
41
43
  module : module.default,
42
- appName : me.appName,
43
- boundaryContainerId: me.id,
44
+ appName,
45
+ boundaryContainerId: id,
44
46
  owner : me,
47
+ windowId,
45
48
  ...me.sortZoneConfig
46
49
  })
47
50
  })
package/src/tree/List.mjs CHANGED
@@ -81,9 +81,10 @@ class Tree extends Base {
81
81
  } else if (!me.dragZone) {
82
82
  import('../draggable/tree/DragZone.mjs').then(module => {
83
83
  me.dragZone = Neo.create({
84
- module : module.default,
85
- appName: me.appName,
86
- owner : me,
84
+ module : module.default,
85
+ appName : me.appName,
86
+ owner : me,
87
+ windowId: me.windowId,
87
88
  ...me.dragZoneConfig
88
89
  })
89
90
  })
@@ -110,6 +111,7 @@ class Tree extends Base {
110
111
  appName : me.appName,
111
112
  boundaryContainerId: me.id,
112
113
  owner : me,
114
+ windowId : me.windowId,
113
115
  ...me.sortZoneConfig
114
116
  })
115
117
  })