neo.mjs 7.16.0 → 8.0.0-alpha.2
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.
- package/apps/ServiceWorker.mjs +2 -2
- package/apps/portal/view/ViewportController.mjs +1 -1
- package/apps/portal/view/home/FooterContainer.mjs +1 -1
- package/apps/realworld/view/HomeComponent.mjs +13 -14
- package/apps/realworld/view/user/ProfileComponent.mjs +1 -1
- package/apps/realworld/view/user/SignUpComponent.mjs +1 -2
- package/examples/ServiceWorker.mjs +2 -2
- package/examples/table/container/MainContainer.mjs +17 -12
- package/examples/table/nestedRecordFields/MainContainer.mjs +3 -1
- package/examples/todoList/version1/MainComponent.mjs +1 -1
- package/package.json +6 -6
- package/resources/data/deck/learnneo/pages/benefits/Speed.md +5 -4
- package/resources/scss/src/calendar/view/week/Component.scss +6 -0
- package/resources/scss/src/component/DateSelector.scss +1 -0
- package/src/DefaultConfig.mjs +2 -2
- package/src/button/Base.mjs +8 -8
- package/src/calendar/view/MainContainer.mjs +4 -1
- package/src/calendar/view/SettingsContainer.mjs +4 -0
- package/src/calendar/view/YearComponent.mjs +0 -3
- package/src/calendar/view/calendars/ColorsList.mjs +6 -6
- package/src/calendar/view/calendars/Container.mjs +1 -1
- package/src/calendar/view/calendars/List.mjs +14 -2
- package/src/calendar/view/month/Component.mjs +1 -1
- package/src/calendar/view/week/Component.mjs +7 -7
- package/src/calendar/view/week/EventDragZone.mjs +1 -1
- package/src/calendar/view/week/TimeAxisComponent.mjs +2 -2
- package/src/calendar/view/week/plugin/DragDrop.mjs +3 -3
- package/src/collection/Base.mjs +4 -3
- package/src/component/Base.mjs +125 -49
- package/src/component/Circle.mjs +1 -3
- package/src/component/DateSelector.mjs +1 -1
- package/src/container/Accordion.mjs +1 -1
- package/src/container/Base.mjs +19 -7
- package/src/core/Base.mjs +10 -9
- package/src/draggable/list/DragZone.mjs +1 -1
- package/src/draggable/toolbar/DragZone.mjs +1 -1
- package/src/draggable/toolbar/SortZone.mjs +1 -1
- package/src/draggable/tree/DragZone.mjs +1 -1
- package/src/form/Fieldset.mjs +2 -0
- package/src/form/field/Color.mjs +4 -4
- package/src/form/field/ComboBox.mjs +2 -2
- package/src/form/field/Date.mjs +2 -1
- package/src/form/field/Picker.mjs +2 -1
- package/src/form/field/Text.mjs +8 -8
- package/src/layout/Card.mjs +11 -6
- package/src/layout/Cube.mjs +15 -4
- package/src/list/Chip.mjs +3 -2
- package/src/list/Circle.mjs +2 -1
- package/src/list/Component.mjs +5 -0
- package/src/manager/Component.mjs +158 -4
- package/src/manager/DomEvent.mjs +2 -2
- package/src/menu/List.mjs +3 -4
- package/src/menu/Panel.mjs +1 -1
- package/src/selection/Model.mjs +1 -1
- package/src/selection/grid/BaseModel.mjs +61 -0
- package/src/selection/grid/CellColumnModel.mjs +2 -2
- package/src/selection/grid/CellColumnRowModel.mjs +2 -2
- package/src/selection/grid/CellModel.mjs +4 -4
- package/src/selection/grid/CellRowModel.mjs +9 -3
- package/src/selection/grid/ColumnModel.mjs +15 -26
- package/src/selection/grid/RowModel.mjs +15 -25
- package/src/selection/table/BaseModel.mjs +61 -0
- package/src/selection/table/CellColumnModel.mjs +2 -2
- package/src/selection/table/CellColumnRowModel.mjs +2 -2
- package/src/selection/table/CellModel.mjs +4 -4
- package/src/selection/table/CellRowModel.mjs +9 -3
- package/src/selection/table/ColumnModel.mjs +7 -8
- package/src/selection/table/RowModel.mjs +7 -7
- package/src/table/Container.mjs +1 -0
- package/src/table/View.mjs +102 -80
- package/src/table/header/Button.mjs +3 -5
- package/src/table/header/Toolbar.mjs +1 -0
- package/src/tree/List.mjs +1 -1
- package/src/util/VDom.mjs +42 -11
- package/src/util/VNode.mjs +33 -11
- package/src/vdom/Helper.mjs +55 -22
- package/src/vdom/VNode.mjs +1 -1
package/apps/ServiceWorker.mjs
CHANGED
@@ -231,8 +231,8 @@ class HomeComponent extends Component {
|
|
231
231
|
node, oldNode;
|
232
232
|
|
233
233
|
if (me.mounted) {
|
234
|
-
node = VDomUtil.
|
235
|
-
oldNode = VDomUtil.
|
234
|
+
node = VDomUtil.find(me.vdom, me.getNavLinkVdomId(value)).parentNode;
|
235
|
+
oldNode = VDomUtil.find(me.vdom, me.getNavLinkVdomId(oldValue)).parentNode;
|
236
236
|
|
237
237
|
NeoArray.add(node.cls, 'active');
|
238
238
|
NeoArray.remove(oldNode.cls, 'active');
|
@@ -289,7 +289,7 @@ class HomeComponent extends Component {
|
|
289
289
|
*/
|
290
290
|
afterSetLoggedIn(value, oldValue) {
|
291
291
|
let me = this,
|
292
|
-
navItem = VDomUtil.
|
292
|
+
navItem = VDomUtil.find(me.vdom, me.id + '__nav-item-link_0').vdom;
|
293
293
|
|
294
294
|
NeoArray[value ? 'remove' : 'add'](navItem.cls, 'disabled');
|
295
295
|
me.update();
|
@@ -339,16 +339,15 @@ class HomeComponent extends Component {
|
|
339
339
|
me.set({
|
340
340
|
articlePreviews: data.json.articles,
|
341
341
|
countArticles : data.json.articlesCount
|
342
|
-
})
|
343
|
-
})
|
342
|
+
})
|
343
|
+
})
|
344
344
|
}
|
345
345
|
|
346
346
|
/**
|
347
347
|
* @returns {Object} vdom
|
348
348
|
*/
|
349
349
|
getContainer() {
|
350
|
-
|
351
|
-
return el?.vdom;
|
350
|
+
return VDomUtil.find(this.vdom, {cls: 'col-md-9'})?.vdom
|
352
351
|
}
|
353
352
|
|
354
353
|
/**
|
@@ -356,7 +355,7 @@ class HomeComponent extends Component {
|
|
356
355
|
* @returns {Number}
|
357
356
|
*/
|
358
357
|
getNavLinkId(nodeId) {
|
359
|
-
return parseInt(nodeId.split('__')[1])
|
358
|
+
return parseInt(nodeId.split('__')[1])
|
360
359
|
}
|
361
360
|
|
362
361
|
/**
|
@@ -364,7 +363,7 @@ class HomeComponent extends Component {
|
|
364
363
|
* @returns {String}
|
365
364
|
*/
|
366
365
|
getNavLinkVdomId(id) {
|
367
|
-
return this.id + '__' + id
|
366
|
+
return this.id + '__' + id
|
368
367
|
}
|
369
368
|
|
370
369
|
/**
|
@@ -372,7 +371,7 @@ class HomeComponent extends Component {
|
|
372
371
|
*/
|
373
372
|
onNavLinkClick(data) {
|
374
373
|
let me = this,
|
375
|
-
el = VDomUtil.
|
374
|
+
el = VDomUtil.find(me.vdom, data.path[0].id),
|
376
375
|
feedHeader = VDomUtil.getByFlag(me.vdom, 'feed-header'),
|
377
376
|
opts = {};
|
378
377
|
|
@@ -401,7 +400,7 @@ class HomeComponent extends Component {
|
|
401
400
|
me.update();
|
402
401
|
|
403
402
|
me.getController()._articlesOffset = 0; // silent update
|
404
|
-
me.getArticles({}, opts)
|
403
|
+
me.getArticles({}, opts)
|
405
404
|
}
|
406
405
|
}
|
407
406
|
|
@@ -409,14 +408,14 @@ class HomeComponent extends Component {
|
|
409
408
|
* @param {Object} value
|
410
409
|
*/
|
411
410
|
onCurrentUserChange(value) {
|
412
|
-
this.loggedIn = !!value
|
411
|
+
this.loggedIn = !!value
|
413
412
|
}
|
414
413
|
|
415
414
|
/**
|
416
415
|
* @param {Object} data
|
417
416
|
*/
|
418
417
|
onPageNavLinkClick(data) {
|
419
|
-
this.currentPage = this.getNavLinkId(data.path[0].id)
|
418
|
+
this.currentPage = this.getNavLinkId(data.path[0].id)
|
420
419
|
}
|
421
420
|
|
422
421
|
/**
|
@@ -453,7 +452,7 @@ class HomeComponent extends Component {
|
|
453
452
|
|
454
453
|
me.getArticles({
|
455
454
|
tag: opts.value
|
456
|
-
})
|
455
|
+
})
|
457
456
|
}
|
458
457
|
}
|
459
458
|
|
@@ -268,7 +268,7 @@ class ProfileComponent extends Component {
|
|
268
268
|
*/
|
269
269
|
onNavLinkClick(data) {
|
270
270
|
let me = this,
|
271
|
-
el = VDomUtil.
|
271
|
+
el = VDomUtil.find(me.vdom, data.path[0].id),
|
272
272
|
feedHeader = VDomUtil.getByFlag(me.vdom, 'feed-header'),
|
273
273
|
params = {};
|
274
274
|
|
@@ -160,8 +160,7 @@ class SignUpComponent extends Component {
|
|
160
160
|
* @returns {Object} vdom
|
161
161
|
*/
|
162
162
|
getErrorMessagesList() {
|
163
|
-
|
164
|
-
return el?.vdom;
|
163
|
+
return VDomUtil.find(this.vdom, {cls: 'error-messages'})?.vdom
|
165
164
|
}
|
166
165
|
|
167
166
|
/**
|
@@ -124,31 +124,34 @@ class MainContainer extends ConfigurationViewport {
|
|
124
124
|
{
|
125
125
|
dataField: 'edit',
|
126
126
|
text : 'Edit Action',
|
127
|
-
renderer
|
127
|
+
renderer({column, index}) {
|
128
128
|
const
|
129
|
+
me = this,
|
129
130
|
widgetId = `${column.id}-widget-${index}`,
|
130
|
-
button
|
131
|
+
button = (column.widgetMap || (column.widgetMap = {}))[widgetId] || (column.widgetMap[widgetId] = Neo.create({
|
131
132
|
module : Button,
|
132
|
-
appName :
|
133
|
-
handler :
|
133
|
+
appName : me.appName,
|
134
|
+
handler : 'up.editButtonHandler',
|
134
135
|
parentId: 'myTableStoreContainer',
|
135
136
|
text : 'Edit'
|
136
137
|
}));
|
137
138
|
|
138
|
-
|
139
|
+
me.view.updateDepth = -1;
|
140
|
+
|
141
|
+
return button.createVdomReference()
|
139
142
|
}
|
140
|
-
},
|
141
|
-
{
|
143
|
+
}, {
|
142
144
|
dataField: 'menu',
|
143
145
|
text : 'Menu',
|
144
|
-
renderer({
|
146
|
+
renderer({column, record, index}) {
|
145
147
|
const
|
148
|
+
me = this,
|
146
149
|
widgetId = `${column.id}-widget-${index}`,
|
147
|
-
button
|
150
|
+
button = (column.widgetMap || (column.widgetMap = {}))[widgetId] || (column.widgetMap[widgetId] = Neo.create('Neo.button.Base', {
|
148
151
|
ntype : 'button',
|
149
|
-
appName :
|
152
|
+
appName : me.appName,
|
150
153
|
text : '\u22ee',
|
151
|
-
windowId:
|
154
|
+
windowId: me.windowId,
|
152
155
|
menu : {
|
153
156
|
items : [{
|
154
157
|
text : 'Menu option 1'
|
@@ -162,7 +165,9 @@ class MainContainer extends ConfigurationViewport {
|
|
162
165
|
}
|
163
166
|
}));
|
164
167
|
|
165
|
-
|
168
|
+
me.view.updateDepth = -1;
|
169
|
+
|
170
|
+
return button.createVdomReference()
|
166
171
|
}
|
167
172
|
}
|
168
173
|
]
|
@@ -99,7 +99,7 @@ class MainComponent extends Component {
|
|
99
99
|
let me = this,
|
100
100
|
cls = ['far', 'fa-square'],
|
101
101
|
oldCls = ['fa', 'fa-check'],
|
102
|
-
node = VdomUtil.
|
102
|
+
node = VdomUtil.find(me.vdom, data.path[0].id).vdom;
|
103
103
|
|
104
104
|
if (data.path[0].cls.includes('fa-square')) {
|
105
105
|
cls = ['fa', 'fa-check'];
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "neo.mjs",
|
3
|
-
"version": "
|
3
|
+
"version": "8.0.0-alpha.2",
|
4
4
|
"description": "The webworkers driven UI framework",
|
5
5
|
"type": "module",
|
6
6
|
"repository": {
|
@@ -54,16 +54,16 @@
|
|
54
54
|
"envinfo": "^7.14.0",
|
55
55
|
"fs-extra": "^11.2.0",
|
56
56
|
"highlightjs-line-numbers.js": "^2.9.0",
|
57
|
-
"inquirer": "^12.0.
|
58
|
-
"marked": "^
|
57
|
+
"inquirer": "^12.0.1",
|
58
|
+
"marked": "^15.0.0",
|
59
59
|
"monaco-editor": "0.50.0",
|
60
60
|
"neo-jsdoc": "1.0.1",
|
61
61
|
"neo-jsdoc-x": "1.0.5",
|
62
|
-
"postcss": "^8.4.
|
63
|
-
"sass": "^1.80.
|
62
|
+
"postcss": "^8.4.48",
|
63
|
+
"sass": "^1.80.6",
|
64
64
|
"siesta-lite": "5.5.2",
|
65
65
|
"url": "^0.11.4",
|
66
|
-
"webpack": "^5.
|
66
|
+
"webpack": "^5.96.1",
|
67
67
|
"webpack-cli": "^5.1.4",
|
68
68
|
"webpack-dev-server": "^5.1.0",
|
69
69
|
"webpack-hook-plugin": "^1.0.7",
|
@@ -21,9 +21,10 @@ If you move quickly, you might reach 20,000 or 30,000 delta updates per second.
|
|
21
21
|
second — but we've never actually hit the limit.
|
22
22
|
|
23
23
|
<pre data-neo>
|
24
|
-
import Base
|
24
|
+
import Base from '../container/Base.mjs';
|
25
25
|
import Helix from '../component/Helix.mjs';
|
26
|
-
|
26
|
+
|
27
|
+
class MainView extends Base {
|
27
28
|
static config = {
|
28
29
|
className: 'Benefits.speed.MainView',
|
29
30
|
layout : 'fit',
|
@@ -34,14 +35,14 @@ class Foo extends Base {
|
|
34
35
|
store: {
|
35
36
|
autoLoad: true,
|
36
37
|
model: {
|
37
|
-
fields: [
|
38
|
+
fields: [{name: 'image', type: 'String'}],
|
38
39
|
},
|
39
40
|
url: '../../../../resources/examples/data/ai_contacts.json'
|
40
41
|
}
|
41
42
|
}]
|
42
43
|
}
|
43
44
|
}
|
44
|
-
|
45
|
+
MainView = Neo.setupClass(MainView);
|
45
46
|
</pre>
|
46
47
|
|
47
48
|
|
package/src/DefaultConfig.mjs
CHANGED
@@ -262,12 +262,12 @@ const DefaultConfig = {
|
|
262
262
|
useVdomWorker: true,
|
263
263
|
/**
|
264
264
|
* buildScripts/injectPackageVersion.mjs will update this value
|
265
|
-
* @default '
|
265
|
+
* @default '8.0.0-alpha.2'
|
266
266
|
* @memberOf! module:Neo
|
267
267
|
* @name config.version
|
268
268
|
* @type String
|
269
269
|
*/
|
270
|
-
version: '
|
270
|
+
version: '8.0.0-alpha.2'
|
271
271
|
};
|
272
272
|
|
273
273
|
Object.assign(DefaultConfig, {
|
package/src/button/Base.mjs
CHANGED
@@ -122,14 +122,14 @@ class Base extends Component {
|
|
122
122
|
* @member {Object} _vdom
|
123
123
|
*/
|
124
124
|
_vdom:
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
125
|
+
{tag: 'button', type: 'button', cn: [
|
126
|
+
{tag: 'span', cls: ['neo-button-glyph']},
|
127
|
+
{tag: 'span', cls: ['neo-button-text']},
|
128
|
+
{cls: ['neo-button-badge']},
|
129
|
+
{cls: ['neo-button-ripple-wrapper'], cn: [
|
130
|
+
{cls: ['neo-button-ripple']}
|
131
|
+
]}
|
132
|
+
]}
|
133
133
|
}
|
134
134
|
|
135
135
|
/**
|
@@ -259,6 +259,9 @@ class MainContainer extends Container {
|
|
259
259
|
style = sideBar.style || {};
|
260
260
|
|
261
261
|
if (value) {
|
262
|
+
me.updateDepth = -1;
|
263
|
+
|
264
|
+
// todo: updates colliding with parent updates need to pass the update depth for the next parent update cycle
|
262
265
|
delete sideBar.vdom.removeDom;
|
263
266
|
|
264
267
|
me.promiseUpdate().then(() => {
|
@@ -274,7 +277,7 @@ class MainContainer extends Container {
|
|
274
277
|
sideBar._style = style; // silent update
|
275
278
|
sideBar._vdom.style = style; // silent update
|
276
279
|
|
277
|
-
|
280
|
+
sideBar.promiseUpdate().then(() => {
|
278
281
|
me.timeout(400).then(() => {
|
279
282
|
sideBar.vdom.removeDom = true;
|
280
283
|
sideBar.update();
|
@@ -57,6 +57,8 @@ class SettingsContainer extends Container {
|
|
57
57
|
me._style = style; // silent update
|
58
58
|
me._vdom.style = style; // silent update
|
59
59
|
|
60
|
+
me.parent.updateDepth = -1;
|
61
|
+
|
60
62
|
me.parent.promiseUpdate().then(() => {
|
61
63
|
me.timeout(400).then(() => {
|
62
64
|
me.collapsed = true;
|
@@ -145,6 +147,8 @@ class SettingsContainer extends Container {
|
|
145
147
|
|
146
148
|
delete me.vdom.removeDom;
|
147
149
|
|
150
|
+
me.parent.updateDepth = -1;
|
151
|
+
|
148
152
|
me.parent.promiseUpdate().then(() => {
|
149
153
|
me.collapsed = false;
|
150
154
|
me.mounted = true;
|
@@ -50,7 +50,7 @@ class ColorsList extends List {
|
|
50
50
|
|
51
51
|
if (value && oldValue !== undefined && !me.disableSelection) {
|
52
52
|
record = me.store.find('name', value)[0];
|
53
|
-
me.selectionModel?.select(me.getItemId(record[me.getKeyProperty()]))
|
53
|
+
me.selectionModel?.select(me.getItemId(record[me.getKeyProperty()]))
|
54
54
|
}
|
55
55
|
}
|
56
56
|
|
@@ -64,21 +64,21 @@ class ColorsList extends List {
|
|
64
64
|
return {style: {
|
65
65
|
backgroundColor: `var(--event-${record.name}-color)`,
|
66
66
|
color : `var(--event-${record.name}-color)` // needed for the box-shadow (CSS currentColor)
|
67
|
-
}}
|
67
|
+
}}
|
68
68
|
}
|
69
69
|
|
70
70
|
/**
|
71
71
|
* @returns {Object}
|
72
72
|
*/
|
73
73
|
getVdomRoot() {
|
74
|
-
return this.vdom
|
74
|
+
return this.vdom
|
75
75
|
}
|
76
76
|
|
77
77
|
/**
|
78
78
|
* @returns {Object}
|
79
79
|
*/
|
80
80
|
getVnodeRoot() {
|
81
|
-
return this.vnode
|
81
|
+
return this.vnode
|
82
82
|
}
|
83
83
|
|
84
84
|
/**
|
@@ -90,7 +90,7 @@ class ColorsList extends List {
|
|
90
90
|
let me = this,
|
91
91
|
{value} = me;
|
92
92
|
|
93
|
-
value && me.afterSetValue(value, null)
|
93
|
+
value && me.afterSetValue(value, null)
|
94
94
|
}
|
95
95
|
|
96
96
|
/**
|
@@ -103,7 +103,7 @@ class ColorsList extends List {
|
|
103
103
|
|
104
104
|
me.fire('change', {
|
105
105
|
record: me.store.get(recordId)
|
106
|
-
})
|
106
|
+
})
|
107
107
|
}
|
108
108
|
}
|
109
109
|
|
@@ -72,9 +72,13 @@ class List extends ComponentList {
|
|
72
72
|
})
|
73
73
|
}
|
74
74
|
|
75
|
-
me.items
|
75
|
+
me.items = items;
|
76
|
+
me.updateDepth = 2;
|
76
77
|
|
77
|
-
return [
|
78
|
+
return [
|
79
|
+
checkBox.createVdomReference(),
|
80
|
+
{tag: 'i', cls: ['neo-edit-icon', 'fas fa-edit'], id: me.getEditIconId(index)}
|
81
|
+
]
|
78
82
|
}
|
79
83
|
|
80
84
|
/**
|
@@ -146,6 +150,14 @@ class List extends ComponentList {
|
|
146
150
|
onSelect(items) {
|
147
151
|
this.getModel().setData('activeCalendarId', this.getItemRecordId(items[0]))
|
148
152
|
}
|
153
|
+
|
154
|
+
/**
|
155
|
+
* Disabling the super class logic for now, since the collection.Base mutation event already covers the sorting
|
156
|
+
* @param {Object} data
|
157
|
+
*/
|
158
|
+
sortItems(data) {
|
159
|
+
|
160
|
+
}
|
149
161
|
}
|
150
162
|
|
151
163
|
export default Neo.setupClass(List);
|
@@ -575,7 +575,7 @@ class Component extends BaseComponent {
|
|
575
575
|
eventNode = path[0],
|
576
576
|
weekNode = path[2],
|
577
577
|
scrollContainerNode = path[3],
|
578
|
-
eventVdom = VDomUtil.
|
578
|
+
eventVdom = VDomUtil.find(me.vdom, eventNode.id).vdom,
|
579
579
|
record = me.eventStore.get(eventVdom.flag),
|
580
580
|
style = editEventContainer.style;
|
581
581
|
|
@@ -190,6 +190,7 @@ class Component extends BaseComponent {
|
|
190
190
|
* @protected
|
191
191
|
*/
|
192
192
|
totalColumns: null,
|
193
|
+
updateDepth: -1,
|
193
194
|
/**
|
194
195
|
* @member {Object} vdom
|
195
196
|
*/
|
@@ -224,17 +225,16 @@ class Component extends BaseComponent {
|
|
224
225
|
{wheel : me.onWheel, scope: me}
|
225
226
|
]);
|
226
227
|
|
227
|
-
me.timeAxis = Neo.create(
|
228
|
+
me.timeAxis = Neo.create({
|
229
|
+
module : TimeAxisComponent,
|
228
230
|
appName : me.appName,
|
229
231
|
parentId : me.id,
|
230
|
-
listeners: {
|
231
|
-
|
232
|
-
scope : me
|
233
|
-
},
|
232
|
+
listeners: {change: me.onTimeAxisChange, scope : me},
|
233
|
+
windowId : me.windowId,
|
234
234
|
...me.timeAxisConfig
|
235
235
|
});
|
236
236
|
|
237
|
-
me.getColumnTimeAxisContainer().cn[me.timeAxisPosition === 'start' ? 'unshift' : 'push'](me.timeAxis.
|
237
|
+
me.getColumnTimeAxisContainer().cn[me.timeAxisPosition === 'start' ? 'unshift' : 'push'](me.timeAxis.createVdomReference());
|
238
238
|
|
239
239
|
if (me.calendarStore.getCount() > 0 && me.eventStore.getCount() > 0) {
|
240
240
|
me.needsEventUpdate = true
|
@@ -686,7 +686,7 @@ class Component extends BaseComponent {
|
|
686
686
|
let me = this,
|
687
687
|
{editEventContainer} = me.owner,
|
688
688
|
eventNode = path[0],
|
689
|
-
eventVdom = VDomUtil.
|
689
|
+
eventVdom = VDomUtil.find(me.vdom, eventNode.id).vdom,
|
690
690
|
record = me.eventStore.get(eventVdom.flag),
|
691
691
|
{style} = editEventContainer;
|
692
692
|
|
@@ -219,7 +219,7 @@ class EventDragZone extends DragZone {
|
|
219
219
|
endDate = me.newEndDate;
|
220
220
|
startDate = me.newStartDate || record.startDate
|
221
221
|
} else {
|
222
|
-
startDate = new Date(VDomUtil.
|
222
|
+
startDate = new Date(VDomUtil.find(owner.vdom, me.proxyParentId).vdom.flag + 'T00:00:00.000Z');
|
223
223
|
startDate.setHours(me.axisStartTime);
|
224
224
|
startDate.setMinutes(me.currentInterval * me.intervalSize);
|
225
225
|
|
@@ -187,8 +187,8 @@ class TimeAxisComponent extends Component {
|
|
187
187
|
html = i === 24 ? '00:00' : (i < 10 ? '0' : '') + i + ':00';
|
188
188
|
|
189
189
|
vdom.cn.push({
|
190
|
-
cls
|
191
|
-
cn
|
190
|
+
cls: ['neo-c-w-timeaxis-item'],
|
191
|
+
cn : [{html}]
|
192
192
|
})
|
193
193
|
}
|
194
194
|
}
|
@@ -188,7 +188,7 @@ class DragDrop extends Base {
|
|
188
188
|
intervalHeight = columnRect.height / intervals,
|
189
189
|
position = Math.min(columnRect.height, data.clientY - columnRect.top),
|
190
190
|
currentInterval = Math.floor(position / intervalHeight),
|
191
|
-
startDate = new Date(VDomUtil.
|
191
|
+
startDate = new Date(VDomUtil.find(owner.vdom, data.path[0].id).vdom.flag + 'T00:00:00.000Z'),
|
192
192
|
dragElement, endDate, eventDragZone, eventId, record;
|
193
193
|
|
194
194
|
me.isDragging = true;
|
@@ -216,7 +216,7 @@ class DragDrop extends Base {
|
|
216
216
|
// wait until the new event got mounted
|
217
217
|
me.timeout(50).then(() => {
|
218
218
|
eventId = owner.getEventId(record.id);
|
219
|
-
dragElement = VDomUtil.
|
219
|
+
dragElement = VDomUtil.find(owner.vdom, eventId).vdom;
|
220
220
|
|
221
221
|
eventDragZone = me.getEventDragZone({
|
222
222
|
dragElement,
|
@@ -294,7 +294,7 @@ class DragDrop extends Base {
|
|
294
294
|
|
295
295
|
me.isDragging = true;
|
296
296
|
|
297
|
-
dragElement = VDomUtil.
|
297
|
+
dragElement = VDomUtil.find(owner.vdom, data.path[0].id).vdom;
|
298
298
|
|
299
299
|
eventDragZone = me.getEventDragZone({
|
300
300
|
dragElement,
|
package/src/collection/Base.mjs
CHANGED
@@ -734,7 +734,8 @@ class Base extends CoreBase {
|
|
734
734
|
}
|
735
735
|
|
736
736
|
/**
|
737
|
-
* Returns items which match the property and value
|
737
|
+
* Returns items which match the property and value.
|
738
|
+
* Properties can contain dots for namespaces => find('vdom.id', 'neo-vnode-1')
|
738
739
|
* @param {Object|String} property
|
739
740
|
* @param {String|Number} [value] Only required in case the first param is a string
|
740
741
|
* @param {Boolean} returnFirstMatch=false
|
@@ -758,7 +759,7 @@ class Base extends CoreBase {
|
|
758
759
|
matchArray = [];
|
759
760
|
|
760
761
|
propertiesArray.forEach(([key, value]) => {
|
761
|
-
if (
|
762
|
+
if (Neo.ns(key, false, item) === value) {
|
762
763
|
matchArray.push(true)
|
763
764
|
}
|
764
765
|
});
|
@@ -770,7 +771,7 @@ class Base extends CoreBase {
|
|
770
771
|
|
771
772
|
items.push(item)
|
772
773
|
}
|
773
|
-
} else if (
|
774
|
+
} else if (Neo.ns(property, false, item) === value) {
|
774
775
|
if (returnFirstMatch) {
|
775
776
|
return item
|
776
777
|
}
|