neo.mjs 6.20.1 → 6.22.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.
- package/apps/ServiceWorker.mjs +2 -2
- package/apps/colors/view/HeaderToolbar.mjs +7 -3
- package/apps/covid/view/MainContainerController.mjs +6 -6
- package/apps/covid/view/TableContainer.mjs +5 -3
- package/apps/covid/view/country/Gallery.mjs +6 -4
- package/apps/form/view/ViewportModel.mjs +2 -2
- package/apps/portal/index.html +23 -1
- package/apps/portal/view/HeaderToolbar.mjs +2 -2
- package/apps/portal/view/Viewport.mjs +3 -1
- package/apps/portal/view/ViewportController.mjs +10 -0
- package/apps/portal/view/about/Container.mjs +44 -0
- package/apps/portal/view/about/MemberContainer.mjs +191 -0
- package/apps/portal/view/home/MainContainer.mjs +9 -2
- package/apps/portal/view/home/parts/AfterMath.mjs +12 -8
- package/apps/portal/view/home/parts/Colors.mjs +8 -2
- package/apps/portal/view/home/parts/Features.mjs +50 -83
- package/apps/portal/view/home/parts/Helix.mjs +8 -2
- package/apps/portal/view/home/parts/MainNeo.mjs +17 -5
- package/apps/portal/view/learn/ContentView.mjs +18 -4
- package/apps/realworld/api/Base.mjs +5 -5
- package/apps/realworld/view/MainContainerController.mjs +19 -17
- package/apps/realworld2/api/Base.mjs +5 -5
- package/apps/realworld2/view/MainContainerController.mjs +11 -11
- package/apps/realworld2/view/article/Gallery.mjs +6 -4
- package/apps/sharedcovid/view/MainContainerController.mjs +11 -12
- package/apps/sharedcovid/view/TableContainer.mjs +7 -5
- package/apps/sharedcovid/view/country/Gallery.mjs +6 -4
- package/apps/shareddialog/view/MainContainerController.mjs +5 -5
- package/buildScripts/webpack/json/myApps.template.json +1 -2
- package/docs/app/view/classdetails/MembersList.mjs +8 -8
- package/docs/app/view/classdetails/SourceViewComponent.mjs +6 -6
- package/docs/app/view/classdetails/TutorialComponent.mjs +9 -9
- package/examples/ServiceWorker.mjs +2 -2
- package/examples/component/coronaGallery/CountryGallery.mjs +6 -4
- package/examples/component/helix/Viewport.mjs +2 -2
- package/examples/list/circle/MainContainer.mjs +7 -7
- package/examples/preloadingAssets/view/MainContainerController.mjs +5 -5
- package/package.json +5 -5
- package/resources/data/deck/learnneo/pages/GuideEvents.md +2 -4
- package/resources/data/deck/learnneo/pages/WhyNeo-Features.md +46 -0
- package/resources/data/deck/learnneo/pages/WhyNeo-Intro.md +5 -6
- package/resources/data/deck/learnneo/pages/WhyNeo-Multi-Window.md +1 -1
- package/resources/data/deck/learnneo/tree.json +3 -2
- package/resources/fonts/GT-Planar-Regular.otf +0 -0
- package/resources/images/logo/neo_logo_favicon.svg +16 -0
- package/resources/images/team/tobiu.png +0 -0
- package/resources/scss/src/apps/colors/HeaderToolbar.scss +23 -1
- package/resources/scss/src/apps/colors/Viewport.scss +10 -0
- package/resources/scss/src/apps/portal/HeaderToolbar.scss +7 -7
- package/resources/scss/src/apps/portal/Viewport.scss +10 -0
- package/resources/scss/src/apps/portal/about/Container.scss +4 -0
- package/resources/scss/src/apps/portal/about/MemberContainer.scss +70 -0
- package/resources/scss/src/apps/portal/home/FooterContainer.scss +12 -0
- package/resources/scss/src/apps/portal/home/parts/BaseContainer.scss +16 -16
- package/resources/scss/src/apps/portal/home/parts/MainNeo.scss +62 -7
- package/resources/scss/src/apps/portal/learn/ContentView.scss +1 -0
- package/resources/scss/src/apps/portal/learn/PageContainer.scss +6 -0
- package/resources/scss/src/code/LivePreview.scss +4 -1
- package/resources/scss/src/layout/Cube.scss +3 -3
- package/resources/scss/src/plugin/Resizable.scss +12 -19
- package/resources/scss/theme-neo-light/dialog/Base.scss +12 -2
- package/src/DefaultConfig.mjs +2 -2
- package/src/calendar/view/MainContainer.mjs +10 -10
- package/src/calendar/view/SettingsContainer.mjs +10 -10
- package/src/calendar/view/YearComponent.mjs +2 -2
- package/src/calendar/view/calendars/List.mjs +2 -2
- package/src/calendar/view/month/Component.mjs +4 -4
- package/src/calendar/view/week/Component.mjs +2 -2
- package/src/calendar/view/week/plugin/DragDrop.mjs +4 -4
- package/src/code/LivePreview.mjs +92 -6
- package/src/component/Base.mjs +3 -3
- package/src/component/Circle.mjs +5 -5
- package/src/component/DateSelector.mjs +4 -4
- package/src/component/Gallery.mjs +8 -8
- package/src/component/Helix.mjs +15 -12
- package/src/component/Toast.mjs +1 -1
- package/src/component/wrapper/AmChart.mjs +2 -2
- package/src/component/wrapper/CesiumJS.mjs +2 -2
- package/src/component/wrapper/GoogleMaps.mjs +2 -2
- package/src/component/wrapper/MonacoEditor.mjs +3 -3
- package/src/core/Observable.mjs +2 -2
- package/src/data/Store.mjs +2 -2
- package/src/dialog/Base.mjs +44 -14
- package/src/draggable/DragZone.mjs +4 -4
- package/src/draggable/list/DragZone.mjs +4 -4
- package/src/draggable/tab/header/toolbar/SortZone.mjs +2 -2
- package/src/draggable/toolbar/DragZone.mjs +4 -4
- package/src/draggable/toolbar/SortZone.mjs +3 -3
- package/src/form/field/ComboBox.mjs +3 -2
- package/src/form/field/FileUpload.mjs +3 -3
- package/src/form/field/Text.mjs +2 -2
- package/src/form/field/TextArea.mjs +2 -2
- package/src/grid/Container.mjs +2 -2
- package/src/layout/Cube.mjs +1 -3
- package/src/list/plugin/Animate.mjs +23 -23
- package/src/main/DomAccess.mjs +1 -1
- package/src/main/DomEvents.mjs +14 -5
- package/src/main/addon/AmCharts.mjs +2 -2
- package/src/main/addon/MapboxGL.mjs +4 -4
- package/src/manager/DomEvent.mjs +2 -2
- package/src/manager/Focus.mjs +2 -2
- package/src/manager/Toast.mjs +6 -4
- package/src/manager/rpc/Message.mjs +2 -2
- package/src/plugin/Resizable.mjs +11 -3
- package/src/selection/HelixModel.mjs +3 -3
- package/src/tab/Strip.mjs +4 -4
- package/src/table/Container.mjs +4 -4
- package/src/util/Logger.mjs +6 -4
- package/src/worker/App.mjs +2 -2
- package/src/worker/Manager.mjs +3 -2
- package/apps/website/Overwrites.mjs +0 -16
- package/apps/website/app.mjs +0 -7
- package/apps/website/data/blog.json +0 -769
- package/apps/website/data/docs.json +0 -29
- package/apps/website/data/examples_devmode.json +0 -173
- package/apps/website/data/examples_dist_dev.json +0 -164
- package/apps/website/data/examples_dist_prod.json +0 -164
- package/apps/website/index.html +0 -11
- package/apps/website/model/BlogPost.mjs +0 -60
- package/apps/website/model/Example.mjs +0 -48
- package/apps/website/neo-config.json +0 -7
- package/apps/website/store/BlogPosts.mjs +0 -39
- package/apps/website/store/Examples.mjs +0 -35
- package/apps/website/view/HeaderContainer.mjs +0 -72
- package/apps/website/view/MainContainer.mjs +0 -95
- package/apps/website/view/MainContainerController.mjs +0 -230
- package/apps/website/view/blog/Container.mjs +0 -50
- package/apps/website/view/blog/List.mjs +0 -171
- package/apps/website/view/examples/List.mjs +0 -124
- package/apps/website/view/examples/TabContainer.mjs +0 -66
- package/apps/website/view/home/DeveloperIntroComponent.mjs +0 -266
- package/apps/website/view/home/ExecutiveIntroComponent.mjs +0 -291
- package/apps/website/view/home/TabContainer.mjs +0 -56
- package/resources/scss/src/apps/website/HeaderContainer.scss +0 -136
- package/resources/scss/src/apps/website/MainContainer.scss +0 -25
- package/resources/scss/src/apps/website/blog/Container.scss +0 -18
- package/resources/scss/src/apps/website/blog/List.scss +0 -183
- package/resources/scss/src/apps/website/examples/List.scss +0 -157
- package/resources/scss/src/apps/website/home/TabContainer.scss +0 -117
- package/resources/scss/theme-dark/apps/website/HeaderContainer.scss +0 -5
- package/resources/scss/theme-dark/apps/website/MainContainer.scss +0 -4
- package/resources/scss/theme-dark/apps/website/blog/Container.scss +0 -3
- package/resources/scss/theme-dark/apps/website/home/TabContainer.scss +0 -4
- package/resources/scss/theme-light/apps/website/HeaderContainer.scss +0 -5
- package/resources/scss/theme-light/apps/website/MainContainer.scss +0 -4
- package/resources/scss/theme-light/apps/website/blog/Container.scss +0 -3
- package/resources/scss/theme-light/apps/website/home/TabContainer.scss +0 -4
- package/resources/scss/theme-neo-light/apps/website/HeaderContainer.scss +0 -5
- package/resources/scss/theme-neo-light/apps/website/MainContainer.scss +0 -4
- package/resources/scss/theme-neo-light/apps/website/blog/Container.scss +0 -3
- package/resources/scss/theme-neo-light/apps/website/home/TabContainer.scss +0 -4
package/src/main/DomEvents.mjs
CHANGED
@@ -139,9 +139,10 @@ class DomEvents extends Base {
|
|
139
139
|
* @param {Object} data
|
140
140
|
*/
|
141
141
|
addDomListener(data) {
|
142
|
-
let me
|
143
|
-
i
|
144
|
-
len
|
142
|
+
let me = this,
|
143
|
+
i = 0,
|
144
|
+
len = data.events.length,
|
145
|
+
failedId = null,
|
145
146
|
event, id, targetNode;
|
146
147
|
|
147
148
|
for (; i < len; i++) {
|
@@ -161,14 +162,22 @@ class DomEvents extends Base {
|
|
161
162
|
targetNode = document.querySelector(`[data-neo-id='${id}']`)
|
162
163
|
}
|
163
164
|
|
164
|
-
|
165
|
+
if (targetNode) {
|
166
|
+
targetNode.addEventListener(event.name, me[event.handler].bind(me))
|
167
|
+
} else {
|
168
|
+
failedId = id
|
169
|
+
}
|
170
|
+
}
|
171
|
+
|
172
|
+
if (failedId && Neo.config.environment === 'development') {
|
173
|
+
console.warn('DomEvents:addDomListener() => target node not found:', failedId)
|
165
174
|
}
|
166
175
|
|
167
176
|
Neo.worker.Manager.sendMessage(data.origin, {
|
168
177
|
action : 'reply',
|
169
178
|
data,
|
170
179
|
replyId: data.id,
|
171
|
-
success:
|
180
|
+
success: !failedId
|
172
181
|
})
|
173
182
|
}
|
174
183
|
|
@@ -90,13 +90,13 @@ class AmCharts extends Base {
|
|
90
90
|
|
91
91
|
me.chartsToCreate = [];
|
92
92
|
|
93
|
-
|
93
|
+
me.timeout(1000).then(() => {
|
94
94
|
Object.entries(me.dataMap).forEach(([key, dataValue]) => {
|
95
95
|
me.updateData(dataValue)
|
96
96
|
});
|
97
97
|
|
98
98
|
me.dataMap = {}
|
99
|
-
}
|
99
|
+
})
|
100
100
|
}
|
101
101
|
}
|
102
102
|
|
@@ -196,9 +196,9 @@ class MapboxGL extends Base {
|
|
196
196
|
autoResize(data) {
|
197
197
|
let map = this.maps[data.id];
|
198
198
|
|
199
|
-
map &&
|
199
|
+
map && this.timeout(100).then(() => {
|
200
200
|
map.resize()
|
201
|
-
}
|
201
|
+
})
|
202
202
|
}
|
203
203
|
|
204
204
|
/**
|
@@ -337,7 +337,7 @@ class MapboxGL extends Base {
|
|
337
337
|
onMapReallyLoaded(data, event) {
|
338
338
|
let me = this;
|
339
339
|
|
340
|
-
|
340
|
+
me.timeout(100).then(() => {
|
341
341
|
if (data.data) {
|
342
342
|
me.updateData({
|
343
343
|
data : data.data,
|
@@ -347,7 +347,7 @@ class MapboxGL extends Base {
|
|
347
347
|
} else if (me.dataMap[data.id]) {
|
348
348
|
me.updateData(me.dataMap[data.id])
|
349
349
|
}
|
350
|
-
}
|
350
|
+
})
|
351
351
|
}
|
352
352
|
|
353
353
|
/**
|
package/src/manager/DomEvent.mjs
CHANGED
@@ -428,9 +428,9 @@ class DomEvent extends Base {
|
|
428
428
|
});
|
429
429
|
|
430
430
|
if (component.mounted) {
|
431
|
-
|
431
|
+
me.timeout(100).then(() => {
|
432
432
|
me.mountDomListeners(component)
|
433
|
-
}
|
433
|
+
})
|
434
434
|
}
|
435
435
|
} else {
|
436
436
|
Logger.logError('Component.domListeners have to be an array', component)
|
package/src/manager/Focus.mjs
CHANGED
@@ -153,11 +153,11 @@ class Focus extends CoreBase {
|
|
153
153
|
|
154
154
|
me.lastFocusOutDate = new Date();
|
155
155
|
|
156
|
-
|
156
|
+
me.timeout(me.maxFocusInOutGap).then(() => {
|
157
157
|
if (me.lastFocusOutDate > me.lastFocusInDate) {
|
158
158
|
me.focusLeave(opts)
|
159
159
|
}
|
160
|
-
}
|
160
|
+
})
|
161
161
|
}
|
162
162
|
|
163
163
|
/**
|
package/src/manager/Toast.mjs
CHANGED
@@ -159,13 +159,15 @@ class Toast extends Base {
|
|
159
159
|
showToast(toast) {
|
160
160
|
toast.render(true);
|
161
161
|
|
162
|
+
let me = this;
|
163
|
+
|
162
164
|
// increase total of displayed toasts for a position
|
163
|
-
|
165
|
+
me.running[toast.position].unshift(toast.id);
|
164
166
|
|
165
167
|
// todo: we could use a mounted listener
|
166
|
-
|
167
|
-
|
168
|
-
}
|
168
|
+
me.timeout(50).then(() => {
|
169
|
+
me.updateItemsInPosition(toast.id)
|
170
|
+
})
|
169
171
|
}
|
170
172
|
|
171
173
|
/**
|
@@ -93,9 +93,9 @@ class Message extends Base {
|
|
93
93
|
if (!me.endPointTimeouts.includes(url)) {
|
94
94
|
me.endPointTimeouts.push(url);
|
95
95
|
|
96
|
-
|
96
|
+
me.timeout(me.requestBuffer).then(() => {
|
97
97
|
me.resolveBufferTimeout(url)
|
98
|
-
}
|
98
|
+
})
|
99
99
|
}
|
100
100
|
})
|
101
101
|
}
|
package/src/plugin/Resizable.mjs
CHANGED
@@ -378,7 +378,7 @@ class Resizable extends Base {
|
|
378
378
|
len = data.path.length,
|
379
379
|
{appName, owner} = me,
|
380
380
|
style = owner.wrapperStyle, // todo: delegation target
|
381
|
-
target;
|
381
|
+
target, vdom, vdomStyle;
|
382
382
|
|
383
383
|
me.isDragging = true;
|
384
384
|
|
@@ -409,11 +409,19 @@ class Resizable extends Base {
|
|
409
409
|
me.addBodyCursorCls();
|
410
410
|
|
411
411
|
if (!me.dragZone) {
|
412
|
+
vdom = Neo.clone(owner.vdom, true);
|
413
|
+
vdomStyle = vdom.style;
|
414
|
+
|
415
|
+
delete vdomStyle.height;
|
416
|
+
delete vdomStyle.left;
|
417
|
+
delete vdomStyle.top;
|
418
|
+
delete vdomStyle.width;
|
419
|
+
|
412
420
|
me.dragZone = Neo.create({
|
413
421
|
module : DragZone,
|
414
422
|
appName,
|
415
423
|
boundaryContainerId: owner.boundaryContainerId,
|
416
|
-
dragElement :
|
424
|
+
dragElement : vdom,
|
417
425
|
moveInMainThread : false,
|
418
426
|
owner,
|
419
427
|
...me.dragZoneConfig
|
@@ -454,7 +462,7 @@ class Resizable extends Base {
|
|
454
462
|
}
|
455
463
|
|
456
464
|
if (target) {
|
457
|
-
if (target.id !==
|
465
|
+
if (target.id !== targetNode?.id) {
|
458
466
|
if (targetNode) {
|
459
467
|
me.removeAllNodes()
|
460
468
|
}
|
@@ -230,9 +230,9 @@ class HelixModel extends Model {
|
|
230
230
|
listenerId = view.on('mounted', () => {
|
231
231
|
view.un('mounted', listenerId);
|
232
232
|
|
233
|
-
|
234
|
-
me.select(itemId, toggleSelection)
|
235
|
-
}
|
233
|
+
me.timeout(300).then(() => {
|
234
|
+
me.select(itemId, toggleSelection)
|
235
|
+
})
|
236
236
|
})
|
237
237
|
}
|
238
238
|
|
package/src/tab/Strip.mjs
CHANGED
@@ -124,17 +124,17 @@ class Strip extends Component {
|
|
124
124
|
activeTabIndicator.style.opacity = 0;
|
125
125
|
me.update();
|
126
126
|
|
127
|
-
|
127
|
+
me.timeout(50).then(() => {
|
128
128
|
me.moveActiveIndicator([tabStripRect, rects[0]])
|
129
|
-
}
|
129
|
+
})
|
130
130
|
} else {
|
131
131
|
activeTabIndicator.style.opacity = 1;
|
132
132
|
me.update();
|
133
133
|
|
134
|
-
|
134
|
+
me.timeout(300).then(() => {
|
135
135
|
activeTabIndicator.style.opacity = 0;
|
136
136
|
me.update()
|
137
|
-
}
|
137
|
+
})
|
138
138
|
}
|
139
139
|
}
|
140
140
|
}
|
package/src/table/Container.mjs
CHANGED
@@ -477,9 +477,9 @@ class Container extends BaseContainer {
|
|
477
477
|
|
478
478
|
if (me.createRandomData) {
|
479
479
|
// todo: if mounting apply after mount
|
480
|
-
|
480
|
+
me.timeout(50).then(() => {
|
481
481
|
me.createRandomViewData(me.amountRows)
|
482
|
-
}
|
482
|
+
})
|
483
483
|
}
|
484
484
|
}
|
485
485
|
|
@@ -519,9 +519,9 @@ class Container extends BaseContainer {
|
|
519
519
|
}
|
520
520
|
} else {
|
521
521
|
me.on('rendered', () => {
|
522
|
-
|
522
|
+
me.timeout(50).then(() => {
|
523
523
|
me.createViewData(data)
|
524
|
-
}
|
524
|
+
})
|
525
525
|
}, me, {once: true})
|
526
526
|
}
|
527
527
|
}
|
package/src/util/Logger.mjs
CHANGED
@@ -59,8 +59,10 @@ class Logger extends Base {
|
|
59
59
|
construct(config) {
|
60
60
|
super.construct(config);
|
61
61
|
|
62
|
+
let me = this;
|
63
|
+
|
62
64
|
// aliases
|
63
|
-
Neo.applyFromNs(Neo,
|
65
|
+
Neo.applyFromNs(Neo, me, {
|
64
66
|
error : 'error',
|
65
67
|
info : 'info',
|
66
68
|
log : 'log',
|
@@ -68,11 +70,11 @@ class Logger extends Base {
|
|
68
70
|
warn : 'warn'
|
69
71
|
}, true);
|
70
72
|
|
71
|
-
|
73
|
+
me.timeout(50).then(() => {
|
72
74
|
if (!Neo.config.enableLogsInProduction && Neo.config.environment === 'dist/production') {
|
73
|
-
|
75
|
+
me.write = Neo.emptyFn
|
74
76
|
}
|
75
|
-
}
|
77
|
+
})
|
76
78
|
}
|
77
79
|
|
78
80
|
/**
|
package/src/worker/App.mjs
CHANGED
@@ -371,11 +371,11 @@ class App extends Base {
|
|
371
371
|
app = module.onStart();
|
372
372
|
|
373
373
|
// short delay to ensure Component Controllers are ready
|
374
|
-
config.hash &&
|
374
|
+
config.hash && me.timeout(5).then(() => {
|
375
375
|
HashHistory.push(config.hash);
|
376
376
|
// apps which will get created later must not use outdated hash values
|
377
377
|
delete config.hash
|
378
|
-
}
|
378
|
+
})
|
379
379
|
})
|
380
380
|
}
|
381
381
|
|
package/src/worker/Manager.mjs
CHANGED
@@ -274,9 +274,10 @@ class Manager extends Base {
|
|
274
274
|
me.constructedThreads++;
|
275
275
|
|
276
276
|
if (me.constructedThreads === me.activeWorkers) {
|
277
|
-
|
277
|
+
// better safe than sorry => all remotes need to be registered
|
278
|
+
NeoConfig.appPath && me.timeout(NeoConfig.loadApplicationDelay).then(() => {
|
278
279
|
me.loadApplication(NeoConfig.appPath)
|
279
|
-
}
|
280
|
+
})
|
280
281
|
}
|
281
282
|
}
|
282
283
|
|