@sumaris-net/ngx-components 2.4.23-rc5 → 2.4.23
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/doc/changelog.md +4 -1
- package/esm2020/src/app/shared/shared-routing.module.mjs +7 -12
- package/fesm2015/sumaris-net.ngx-components.mjs +6 -11
- package/fesm2015/sumaris-net.ngx-components.mjs.map +1 -1
- package/fesm2020/sumaris-net.ngx-components.mjs +6 -11
- package/fesm2020/sumaris-net.ngx-components.mjs.map +1 -1
- package/package.json +1 -1
package/doc/changelog.md
CHANGED
|
@@ -568,5 +568,8 @@ Observables: function `waitFor()`, `waitForTrue()`, `watForFalse()`, `firstNotNi
|
|
|
568
568
|
# 2.4.19
|
|
569
569
|
- [fix] MatAutocompleteField: revert the cdk overlay position, when closing the mat-select panel
|
|
570
570
|
|
|
571
|
-
# 2.4
|
|
571
|
+
# 2.4.23
|
|
572
572
|
- [enh] Add DateUtils.markTime(), to reset the 'no time' marker
|
|
573
|
+
- [enh] Add DateUtilsEntityEditor: simplify updateTabAndRoute()
|
|
574
|
+
- [enh] Add DateUtilsEntityEditor: updateRoute() now manage queryParams change, before /new to /:id transition
|
|
575
|
+
- [enh] Toolbar: goBack() return a boolean
|
|
@@ -15,7 +15,7 @@ export class CustomReuseStrategy extends IonicRouteStrategy {
|
|
|
15
15
|
shouldReuseRoute(future, curr) {
|
|
16
16
|
const reuse = super.shouldReuseRoute(future, curr);
|
|
17
17
|
// Is sam route config
|
|
18
|
-
if (future.routeConfig && future.routeConfig === curr.routeConfig) {
|
|
18
|
+
if (!reuse && future.routeConfig && future.routeConfig === curr.routeConfig) {
|
|
19
19
|
// Read the parameter name, where id is stored
|
|
20
20
|
const pathIdParam = future.routeConfig.data && future.routeConfig.data.pathIdParam || 'id';
|
|
21
21
|
// Read the current route id
|
|
@@ -28,17 +28,12 @@ export class CustomReuseStrategy extends IonicRouteStrategy {
|
|
|
28
28
|
: future.params[pathIdParam]; // e.g. path like '/<ID>'
|
|
29
29
|
// Reuse if same ID, using a futureId, if exists
|
|
30
30
|
if (isNotNil(futureId)) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
// Allow reuse same id, expect when expected '/new'
|
|
37
|
-
return futureId !== 'new' && futureId === currId;
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
console.log(`Router reuse={reuse} from /${curr.params[pathIdParam]} to /${future.params[pathIdParam]}`);
|
|
31
|
+
// Allow reuse when changing from /new to /new?id=:id
|
|
32
|
+
if (currId === 'new' && isNil(curr.queryParams[pathIdParam]) && future.params[pathIdParam] === 'new' && isNotNil(future.queryParams[pathIdParam])) {
|
|
33
|
+
return true;
|
|
41
34
|
}
|
|
35
|
+
// Allow reuse same id, expect when expected '/new'
|
|
36
|
+
return futureId !== 'new' && futureId === currId;
|
|
42
37
|
}
|
|
43
38
|
}
|
|
44
39
|
return reuse;
|
|
@@ -72,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
72
67
|
]
|
|
73
68
|
}]
|
|
74
69
|
}], ctorParameters: function () { return []; } });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvc2hhcmVkLXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBeUIsa0JBQWtCLEVBQUUsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFDLEtBQUssRUFBRSxRQUFRLEVBQUMsTUFBTSxhQUFhLENBQUM7O0FBSTVDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxrQkFBa0I7SUFFekQ7Ozs7OztPQU1HO0lBQ0gsZ0JBQWdCLENBQUMsTUFBOEIsRUFBRSxJQUE0QjtRQUMzRSxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRW5ELHNCQUFzQjtRQUN0QixJQUFJLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDLFdBQVcsS0FBSyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQzNFLDhDQUE4QztZQUM5QyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDO1lBRTNGLDRCQUE0QjtZQUM1QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEtBQUs7Z0JBQy9DLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxpQ0FBaUM7Z0JBQ3RHLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMseUJBQXlCO1lBRXZELDJCQUEyQjtZQUMzQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEtBQUs7Z0JBQ25ELENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxpQ0FBaUM7Z0JBQzFHLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMseUJBQXlCO1lBRXpELGdEQUFnRDtZQUNoRCxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDdEIscURBQXFEO2dCQUNyRCxJQUFJLE1BQU0sS0FBSyxLQUFLLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEtBQUssSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFO29CQUNqSixPQUFPLElBQUksQ0FBQztpQkFDYjtnQkFFRCxtREFBbUQ7Z0JBQ25ELE9BQU8sUUFBUSxLQUFLLEtBQUssSUFBSSxRQUFRLEtBQUssTUFBTSxDQUFDO2FBQ2xEO1NBQ0Y7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7O2lIQXhDVSxtQkFBbUI7cUhBQW5CLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVOztBQXFEWCxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCO1FBQ0UsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7O2lIQUpVLG1CQUFtQjtrSEFBbkIsbUJBQW1CLFlBUDVCLFlBQVk7a0hBT0gsbUJBQW1CLGFBTG5CO1FBQ1QsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLG1CQUFtQixFQUFFO1FBQzlELEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxtQkFBbUIsRUFBRTtLQUNoRSxZQUxDLFlBQVk7NEZBT0gsbUJBQW1CO2tCQVQvQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3FCQUNiO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsbUJBQW1CLEVBQUU7d0JBQzlELEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxtQkFBbUIsRUFBRTtxQkFDaEU7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVSZXVzZVN0cmF0ZWd5LCBSb3V0ZXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0lvbmljUm91dGVTdHJhdGVneX0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHtDb21wb25lbnREaXJ0eUd1YXJkfSBmcm9tICcuL2d1YXJkL2NvbXBvbmVudC1kaXJ0eS5ndWFyZCc7XG5pbXBvcnQge2lzTmlsLCBpc05vdE5pbH0gZnJvbSAnLi9mdW5jdGlvbnMnO1xuXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDdXN0b21SZXVzZVN0cmF0ZWd5IGV4dGVuZHMgSW9uaWNSb3V0ZVN0cmF0ZWd5IHtcblxuICAvKipcbiAgICogRm9yY2UgdG8gcmV1c2UgdGhlIHJvdXRlIHdoZW46XG4gICAqICAtIHBhdGggY2hhbmdlIGZyb20gWy9uZXddIC0+IFsvOmlkXVxuICAgKiAgLSBvciBwYXRoIGNoYW5nZSBmcm9tIFsvbmV3XSAtPiBbL25ldz9pZD06aWRdXG4gICAqIEBwYXJhbSBmdXR1cmVcbiAgICogQHBhcmFtIGN1cnJcbiAgICovXG4gIHNob3VsZFJldXNlUm91dGUoZnV0dXJlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBjdXJyOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogYm9vbGVhbiB7XG4gICAgY29uc3QgcmV1c2UgPSBzdXBlci5zaG91bGRSZXVzZVJvdXRlKGZ1dHVyZSwgY3Vycik7XG5cbiAgICAvLyBJcyBzYW0gcm91dGUgY29uZmlnXG4gICAgaWYgKCFyZXVzZSAmJiBmdXR1cmUucm91dGVDb25maWcgJiYgZnV0dXJlLnJvdXRlQ29uZmlnID09PSBjdXJyLnJvdXRlQ29uZmlnKSB7XG4gICAgICAvLyBSZWFkIHRoZSBwYXJhbWV0ZXIgbmFtZSwgd2hlcmUgaWQgaXMgc3RvcmVkXG4gICAgICBjb25zdCBwYXRoSWRQYXJhbSA9IGZ1dHVyZS5yb3V0ZUNvbmZpZy5kYXRhICYmIGZ1dHVyZS5yb3V0ZUNvbmZpZy5kYXRhLnBhdGhJZFBhcmFtIHx8ICdpZCc7XG5cbiAgICAgIC8vIFJlYWQgdGhlIGN1cnJlbnQgcm91dGUgaWRcbiAgICAgIGNvbnN0IGN1cnJJZCA9IGN1cnIucGFyYW1zW3BhdGhJZFBhcmFtXSA9PT0gJ25ldydcbiAgICAgICAgPyAoY3Vyci5xdWVyeVBhcmFtc1twYXRoSWRQYXJhbV0gfHwgY3Vyci5xdWVyeVBhcmFtc1snaWQnXSB8fCAnbmV3JykgLy8gZS5nLiBwYXRoIGxpa2UgJy9uZXcvP2lkPTxJRD4nXG4gICAgICAgIDogY3Vyci5wYXJhbXNbcGF0aElkUGFyYW1dOyAvLyBlLmcuIHBhdGggbGlrZSAnLzxJRD4nXG5cbiAgICAgIC8vIFJlYWQgdGhlIGZ1dHVyZSByb3V0ZSBpZFxuICAgICAgY29uc3QgZnV0dXJlSWQgPSBmdXR1cmUucGFyYW1zW3BhdGhJZFBhcmFtXSA9PT0gJ25ldydcbiAgICAgICAgPyAoZnV0dXJlLnF1ZXJ5UGFyYW1zW3BhdGhJZFBhcmFtXSB8fCBmdXR1cmUucXVlcnlQYXJhbXNbJ2lkJ10gfHwgJ25ldycpIC8vIGUuZy4gcGF0aCBsaWtlICcvbmV3Lz9pZD08SUQ+J1xuICAgICAgICA6IGZ1dHVyZS5wYXJhbXNbcGF0aElkUGFyYW1dOyAvLyBlLmcuIHBhdGggbGlrZSAnLzxJRD4nXG5cbiAgICAgIC8vIFJldXNlIGlmIHNhbWUgSUQsIHVzaW5nIGEgZnV0dXJlSWQsIGlmIGV4aXN0c1xuICAgICAgaWYgKGlzTm90TmlsKGZ1dHVyZUlkKSkge1xuICAgICAgICAvLyBBbGxvdyByZXVzZSB3aGVuIGNoYW5naW5nIGZyb20gL25ldyB0byAvbmV3P2lkPTppZFxuICAgICAgICBpZiAoY3VycklkID09PSAnbmV3JyAmJiBpc05pbChjdXJyLnF1ZXJ5UGFyYW1zW3BhdGhJZFBhcmFtXSkgJiYgZnV0dXJlLnBhcmFtc1twYXRoSWRQYXJhbV0gPT09ICduZXcnICYmIGlzTm90TmlsKGZ1dHVyZS5xdWVyeVBhcmFtc1twYXRoSWRQYXJhbV0pKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBbGxvdyByZXVzZSBzYW1lIGlkLCBleHBlY3Qgd2hlbiBleHBlY3RlZCAnL25ldydcbiAgICAgICAgcmV0dXJuIGZ1dHVyZUlkICE9PSAnbmV3JyAmJiBmdXR1cmVJZCA9PT0gY3VycklkO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXVzZTtcbiAgfVxufVxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgUm91dGVyTW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogUm91dGVSZXVzZVN0cmF0ZWd5LCB1c2VDbGFzczogQ3VzdG9tUmV1c2VTdHJhdGVneSB9LFxuICAgIHsgcHJvdmlkZTogQ29tcG9uZW50RGlydHlHdWFyZCwgdXNlQ2xhc3M6IENvbXBvbmVudERpcnR5R3VhcmQgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNoYXJlZFJvdXRpbmdNb2R1bGUge1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnNvbGUuZGVidWcoJ1tzaGFyZWQtcm91dGluZ10gQ3JlYXRpbmcgbW9kdWxlLi4uJyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -19996,7 +19996,7 @@ class CustomReuseStrategy extends IonicRouteStrategy {
|
|
|
19996
19996
|
shouldReuseRoute(future, curr) {
|
|
19997
19997
|
const reuse = super.shouldReuseRoute(future, curr);
|
|
19998
19998
|
// Is sam route config
|
|
19999
|
-
if (future.routeConfig && future.routeConfig === curr.routeConfig) {
|
|
19999
|
+
if (!reuse && future.routeConfig && future.routeConfig === curr.routeConfig) {
|
|
20000
20000
|
// Read the parameter name, where id is stored
|
|
20001
20001
|
const pathIdParam = future.routeConfig.data && future.routeConfig.data.pathIdParam || 'id';
|
|
20002
20002
|
// Read the current route id
|
|
@@ -20009,17 +20009,12 @@ class CustomReuseStrategy extends IonicRouteStrategy {
|
|
|
20009
20009
|
: future.params[pathIdParam]; // e.g. path like '/<ID>'
|
|
20010
20010
|
// Reuse if same ID, using a futureId, if exists
|
|
20011
20011
|
if (isNotNil(futureId)) {
|
|
20012
|
-
|
|
20013
|
-
|
|
20014
|
-
|
|
20015
|
-
return true;
|
|
20016
|
-
}
|
|
20017
|
-
// Allow reuse same id, expect when expected '/new'
|
|
20018
|
-
return futureId !== 'new' && futureId === currId;
|
|
20019
|
-
}
|
|
20020
|
-
else {
|
|
20021
|
-
console.log(`Router reuse={reuse} from /${curr.params[pathIdParam]} to /${future.params[pathIdParam]}`);
|
|
20012
|
+
// Allow reuse when changing from /new to /new?id=:id
|
|
20013
|
+
if (currId === 'new' && isNil(curr.queryParams[pathIdParam]) && future.params[pathIdParam] === 'new' && isNotNil(future.queryParams[pathIdParam])) {
|
|
20014
|
+
return true;
|
|
20022
20015
|
}
|
|
20016
|
+
// Allow reuse same id, expect when expected '/new'
|
|
20017
|
+
return futureId !== 'new' && futureId === currId;
|
|
20023
20018
|
}
|
|
20024
20019
|
}
|
|
20025
20020
|
return reuse;
|