neo.mjs 5.1.14 → 5.1.15
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/examples/ServiceWorker.mjs +2 -2
- package/package.json +1 -1
- package/src/DefaultConfig.mjs +2 -2
- package/src/Main.mjs +9 -0
- package/src/component/Base.mjs +19 -5
package/apps/ServiceWorker.mjs
CHANGED
package/package.json
CHANGED
package/src/DefaultConfig.mjs
CHANGED
@@ -237,12 +237,12 @@ const DefaultConfig = {
|
|
237
237
|
useVdomWorker: true,
|
238
238
|
/**
|
239
239
|
* buildScripts/injectPackageVersion.mjs will update this value
|
240
|
-
* @default '5.1.
|
240
|
+
* @default '5.1.15'
|
241
241
|
* @memberOf! module:Neo
|
242
242
|
* @name config.version
|
243
243
|
* @type String
|
244
244
|
*/
|
245
|
-
version: '5.1.
|
245
|
+
version: '5.1.15'
|
246
246
|
};
|
247
247
|
|
248
248
|
Object.assign(DefaultConfig, {
|
package/src/Main.mjs
CHANGED
@@ -49,6 +49,7 @@ class Main extends core.Base {
|
|
49
49
|
'alert',
|
50
50
|
'editRoute',
|
51
51
|
'getWindowData',
|
52
|
+
'redirectTo',
|
52
53
|
'setNeoConfig',
|
53
54
|
'setRoute',
|
54
55
|
'windowClose',
|
@@ -334,6 +335,14 @@ class Main extends core.Base {
|
|
334
335
|
}
|
335
336
|
}
|
336
337
|
|
338
|
+
/**
|
339
|
+
* @param {Object} data
|
340
|
+
* @param {String} data.url
|
341
|
+
*/
|
342
|
+
redirectTo(data) {
|
343
|
+
window.location.href = data.url;
|
344
|
+
}
|
345
|
+
|
337
346
|
/**
|
338
347
|
* Triggers the different DOM operation queues
|
339
348
|
* @protected
|
package/src/component/Base.mjs
CHANGED
@@ -1284,8 +1284,7 @@ class Base extends CoreBase {
|
|
1284
1284
|
|
1285
1285
|
if (me.hideMode !== 'visibility') {
|
1286
1286
|
let removeFn = function() {
|
1287
|
-
me.
|
1288
|
-
me.update();
|
1287
|
+
me.unmount();
|
1289
1288
|
}
|
1290
1289
|
|
1291
1290
|
if (timeout) {
|
@@ -1393,7 +1392,9 @@ class Base extends CoreBase {
|
|
1393
1392
|
parentIndex: me.parentIndex
|
1394
1393
|
});
|
1395
1394
|
|
1396
|
-
|
1395
|
+
delete me.vdom.removeDom;
|
1396
|
+
|
1397
|
+
await Neo.timeout(30);
|
1397
1398
|
|
1398
1399
|
me.mounted = true;
|
1399
1400
|
}
|
@@ -1627,7 +1628,8 @@ class Base extends CoreBase {
|
|
1627
1628
|
* @returns {Promise<*>}
|
1628
1629
|
*/
|
1629
1630
|
set(values={}, silent=false) {
|
1630
|
-
let me
|
1631
|
+
let me = this,
|
1632
|
+
needsRendering = values.hidden === false && values.hidden !== me.hidden;
|
1631
1633
|
|
1632
1634
|
me.silentVdomUpdate = true;
|
1633
1635
|
|
@@ -1638,6 +1640,11 @@ class Base extends CoreBase {
|
|
1638
1640
|
if (silent || !me.needsVdomUpdate) {
|
1639
1641
|
return Promise.resolve();
|
1640
1642
|
} else {
|
1643
|
+
if (needsRendering) {
|
1644
|
+
me.show();
|
1645
|
+
return Promise.resolve();
|
1646
|
+
}
|
1647
|
+
|
1641
1648
|
return me.promiseVdomUpdate();
|
1642
1649
|
}
|
1643
1650
|
}
|
@@ -1660,7 +1667,12 @@ class Base extends CoreBase {
|
|
1660
1667
|
|
1661
1668
|
if (me.hideMode !== 'visibility') {
|
1662
1669
|
delete me.vdom.removeDom;
|
1663
|
-
|
1670
|
+
|
1671
|
+
if (me.silentVdomUpdate) {
|
1672
|
+
me.needsVdomUpdate = true;
|
1673
|
+
} else {
|
1674
|
+
!me.mounted && me.render(true)
|
1675
|
+
}
|
1664
1676
|
} else {
|
1665
1677
|
let style = me.style;
|
1666
1678
|
delete style.visibility;
|
@@ -1759,6 +1771,8 @@ class Base extends CoreBase {
|
|
1759
1771
|
unmount() {
|
1760
1772
|
let me = this;
|
1761
1773
|
|
1774
|
+
me.vdom.removeDom = true;
|
1775
|
+
|
1762
1776
|
me.mounted = false;
|
1763
1777
|
|
1764
1778
|
Neo.currentWorker.promiseMessage('main', {
|