@acorex/core 3.0.33 → 3.0.42

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.
@@ -1,15 +1,16 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { ApplicationRef, ComponentFactoryResolver, ComponentRef, Injectable, Injector, EmbeddedViewRef, Type } from '@angular/core';
1
+ import { __awaiter, __decorate, __generator, __metadata } from "tslib";
2
+ import { ApplicationRef, ComponentFactoryResolver, ComponentRef, Injectable, Injector, EmbeddedViewRef, Type, Compiler, NgModuleFactory } from '@angular/core';
3
3
  import { Router, Route } from '@angular/router';
4
4
  import { AXOnDemandPreloadService } from './on-demand-preload-strategy.service';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/router";
7
7
  import * as i2 from "./on-demand-preload-strategy.service";
8
8
  var AXRenderService = /** @class */ (function () {
9
- function AXRenderService(appRef, router, componentFactoryResolver, modulePreloadService, injector) {
9
+ function AXRenderService(appRef, router, componentFactoryResolver, compiler, modulePreloadService, injector) {
10
10
  this.appRef = appRef;
11
11
  this.router = router;
12
12
  this.componentFactoryResolver = componentFactoryResolver;
13
+ this.compiler = compiler;
13
14
  this.modulePreloadService = modulePreloadService;
14
15
  this.injector = injector;
15
16
  }
@@ -45,73 +46,89 @@ var AXRenderService = /** @class */ (function () {
45
46
  var found = null;
46
47
  var preload = false;
47
48
  var theLoop = function (i) {
48
- setTimeout(function () {
49
- found = _this._findLoadedComponentByRoute(path);
50
- if (--i && found == null) {
51
- if (!preload) {
52
- _this.modulePreloadService.startPreload(path);
53
- preload = true;
49
+ setTimeout(function () { return __awaiter(_this, void 0, void 0, function () {
50
+ return __generator(this, function (_a) {
51
+ switch (_a.label) {
52
+ case 0: return [4 /*yield*/, this._findLoadedComponentByRoute(path)];
53
+ case 1:
54
+ found = _a.sent();
55
+ if (--i && found == null) {
56
+ if (!preload) {
57
+ this.modulePreloadService.startPreload(path);
58
+ preload = true;
59
+ }
60
+ theLoop(i);
61
+ }
62
+ else if (found) {
63
+ resolve(found);
64
+ }
65
+ else {
66
+ reject();
67
+ }
68
+ return [2 /*return*/];
54
69
  }
55
- theLoop(i);
56
- }
57
- else if (found) {
58
- resolve(found);
59
- }
60
- else {
61
- reject();
62
- }
63
- }, delay);
70
+ });
71
+ }); }, delay);
64
72
  };
65
73
  theLoop(loop);
66
74
  });
67
75
  };
68
76
  AXRenderService.prototype._findLoadedComponentByRoute = function (search) {
69
- var found = null;
70
- var f = function (list, path) {
71
- for (var p in list) {
72
- if (list.hasOwnProperty(p)) {
73
- var route = list[p];
74
- var pp = (route.path != '' && route.path != null) ? path + '/' + route.path : path;
75
- if (pp == search && !route._loadedConfig && route.component) {
76
- found = route;
77
- break;
77
+ return __awaiter(this, void 0, void 0, function () {
78
+ var found, f, p, route;
79
+ return __generator(this, function (_a) {
80
+ found = null;
81
+ f = function (children, parentPath) {
82
+ for (var p in children) {
83
+ if (children.hasOwnProperty(p)) {
84
+ var route = children[p];
85
+ var pp = (route.path != '' && route.path != null) ? parentPath + '/' + route.path : parentPath;
86
+ if (pp == search && !route._loadedConfig && route.component) {
87
+ found = route;
88
+ return;
89
+ }
90
+ else if (route._loadedConfig || route.children) {
91
+ f(route.children || route._loadedConfig.routes, pp);
92
+ }
93
+ }
78
94
  }
79
- else if (route._loadedConfig) {
80
- f(route._loadedConfig.routes, pp);
95
+ };
96
+ for (p in this.router.config) {
97
+ if (this.router.config.hasOwnProperty(p)) {
98
+ route = this.router.config[p];
99
+ if (route.path === search && route.component) {
100
+ found = route;
101
+ }
102
+ else if (route['_loadedConfig'] || route.children) {
103
+ f(route.children || route['_loadedConfig'].routes, route.path);
104
+ }
105
+ if (found)
106
+ break;
81
107
  }
82
108
  }
83
- }
84
- };
85
- for (var p in this.router.config) {
86
- if (this.router.config.hasOwnProperty(p)) {
87
- var route = this.router.config[p];
88
- if (route.path === search && route.component) {
89
- found = route;
90
- }
91
- else if (route['_loadedConfig']) {
92
- f(route['_loadedConfig'].routes, route.path);
93
- }
94
- }
95
- }
96
- return found;
109
+ return [2 /*return*/, found];
110
+ });
111
+ });
97
112
  };
98
113
  AXRenderService.ctorParameters = function () { return [
99
114
  { type: ApplicationRef },
100
115
  { type: Router },
101
116
  { type: ComponentFactoryResolver },
117
+ { type: Compiler },
102
118
  { type: AXOnDemandPreloadService },
103
119
  { type: Injector }
104
120
  ]; };
105
- AXRenderService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AXRenderService_Factory() { return new AXRenderService(i0.ɵɵinject(i0.ApplicationRef), i0.ɵɵinject(i1.Router), i0.ɵɵinject(i0.ComponentFactoryResolver), i0.ɵɵinject(i2.AXOnDemandPreloadService), i0.ɵɵinject(i0.INJECTOR)); }, token: AXRenderService, providedIn: "root" });
121
+ AXRenderService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AXRenderService_Factory() { return new AXRenderService(i0.ɵɵinject(i0.ApplicationRef), i0.ɵɵinject(i1.Router), i0.ɵɵinject(i0.ComponentFactoryResolver), i0.ɵɵinject(i0.Compiler), i0.ɵɵinject(i2.AXOnDemandPreloadService), i0.ɵɵinject(i0.INJECTOR)); }, token: AXRenderService, providedIn: "root" });
106
122
  AXRenderService = __decorate([
107
123
  Injectable({ providedIn: 'root' }),
108
124
  __metadata("design:paramtypes", [ApplicationRef,
109
125
  Router,
110
126
  ComponentFactoryResolver,
127
+ Compiler,
111
128
  AXOnDemandPreloadService,
112
129
  Injector])
113
130
  ], AXRenderService);
114
131
  return AXRenderService;
115
132
  }());
116
133
  export { AXRenderService };
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWNvcmV4L2NvcmUvIiwic291cmNlcyI6WyJsaWIvdXRpbHMvcmVuZGVyL3JlbmRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsY0FBYyxFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxVQUFVLEVBQ2xFLFFBQVEsRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUNsQyxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7O0FBS2hGO0lBQ0kseUJBQ1ksTUFBc0IsRUFDdEIsTUFBYyxFQUNkLHdCQUFrRCxFQUNsRCxvQkFBOEMsRUFDOUMsUUFBa0I7UUFKbEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQseUJBQW9CLEdBQXBCLG9CQUFvQixDQUEwQjtRQUM5QyxhQUFRLEdBQVIsUUFBUSxDQUFVO0lBQzlCLENBQUM7SUFJRCx5Q0FBZSxHQUFmLFVBQ0ksY0FBdUIsRUFDdkIsT0FBaUIsRUFDakIsUUFBa0I7UUFIdEIsaUJBdUJDO1FBckJHLHdCQUFBLEVBQUEsWUFBaUI7UUFHakIsSUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0YsSUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMs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QUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztxQkFDckM7aUJBQ0o7YUFDSjtRQUNMLENBQUMsQ0FBQztRQUVGLEtBQUssSUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDaEMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3RDLElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssTUFBTSxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7b0JBQzFDLEtBQUssR0FBRyxLQUFLLENBQUM7aUJBQ2pCO3FCQUNJLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxFQUFFO29CQUM3QixDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ2hEO2FBRUo7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7O2dCQTVGbUIsY0FBYztnQkFDZCxNQUFNO2dCQUNZLHdCQUF3QjtnQkFDNUIsd0JBQXdCO2dCQUNwQyxRQUFROzs7SUFOckIsZUFBZTtRQUQzQixVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUM7eUNBR1gsY0FBYztZQUNkLE1BQU07WUFDWSx3QkFBd0I7WUFDNUIsd0JBQXdCO1lBQ3BDLFFBQVE7T0FOckIsZUFBZSxDQWdHM0I7MEJBMUdEO0NBMEdDLEFBaEdELElBZ0dDO1NBaEdZLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQXBwbGljYXRpb25SZWYsIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgQ29tcG9uZW50UmVmLCBJbmplY3RhYmxlLFxyXG4gICAgSW5qZWN0b3IsIEVtYmVkZGVkVmlld1JlZiwgVHlwZVxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQVhPbkRlbWFuZFByZWxvYWRTZXJ2aWNlIH0gZnJvbSAnLi9vbi1kZW1hbmQtcHJlbG9hZC1zdHJhdGVneS5zZXJ2aWNlJztcclxuXHJcblxyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIEFYUmVuZGVyU2VydmljZSB7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGFwcFJlZjogQXBwbGljYXRpb25SZWYsXHJcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgICAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgICAgIHByaXZhdGUgbW9kdWxlUHJlbG9hZFNlcnZpY2U6IEFYT25EZW1hbmRQcmVsb2FkU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgYXBwZW5kQ29tcG9uZW50PFQ+KFxyXG4gICAgICAgIGNvbXBvbmVudENsYXNzOiBUeXBlPFQ+LFxyXG4gICAgICAgIG9wdGlvbnM6IGFueSA9IHt9LFxyXG4gICAgICAgIGxvY2F0aW9uPzogRWxlbWVudCk6IENvbXBvbmVudFJlZjxhbnk+IHtcclxuXHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudENsYXNzKTtcclxuICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSBjb21wb25lbnRGYWN0b3J5LmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcclxuICAgICAgICB0aGlzLmFwcFJlZi5hdHRhY2hWaWV3KGNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XHJcbiAgICAgICAgT2JqZWN0LmFzc2lnbihjb21wb25lbnRSZWYuaW5zdGFuY2UsIG9wdGlvbnMpO1xyXG4gICAgICAgIC8vXHJcbiAgICAgICAgY29uc3QgZG9tRWxlbSA9IChjb21wb25lbnRSZWYuaG9zdFZpZXcgYXMgRW1iZWRkZWRWaWV3UmVmPGFueT4pLnJvb3ROb2Rlc1swXSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICBjb21wb25lbnRSZWYub25EZXN0cm95KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5hcHBSZWYuZGV0YWNoVmlldyhjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlmIChsb2NhdGlvbikge1xyXG4gICAgICAgICAgICBsb2NhdGlvbi5hcHBlbmRDaGlsZChkb21FbGVtKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvbUVsZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgY29tcG9uZW50UmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LCAwKTtcclxuICAgICAgICByZXR1cm4gY29tcG9uZW50UmVmO1xyXG4gICAgfVxyXG5cclxuICAgIGZpbmRMb2FkZWRDb21wb25lbnRCeVJvdXRlKHBhdGg6IHN0cmluZywgdGltZW91dFRpbWU6IG51bWJlciA9IDEwKTogUHJvbWlzZTxSb3V0ZT4ge1xyXG4gICAgICAgIGNvbnN0IGRlbGF5ID0gMjAwO1xyXG4gICAgICAgIGNvbnN0IGxvb3AgPSB0aW1lb3V0VGltZSAqIDEwMDAgLyBkZWxheTtcclxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgZm91bmQ6IFJvdXRlID0gbnVsbDtcclxuICAgICAgICAgICAgbGV0IHByZWxvYWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgY29uc3QgdGhlTG9vcCA9IChpKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBmb3VuZCA9IHRoaXMuX2ZpbmRMb2FkZWRDb21wb25lbnRCeVJvdXRlKHBhdGgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICgtLWkgJiYgZm91bmQgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXByZWxvYWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW9kdWxlUHJlbG9hZFNlcnZpY2Uuc3RhcnRQcmVsb2FkKHBhdGgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlbG9hZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhlTG9vcChpKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoZm91bmQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShmb3VuZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWplY3QoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9LCBkZWxheSk7XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIHRoZUxvb3AobG9vcCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfZmluZExvYWRlZENvbXBvbmVudEJ5Um91dGUoc2VhcmNoKSB7XHJcbiAgICAgICAgbGV0IGZvdW5kOiBSb3V0ZSA9IG51bGw7XHJcbiAgICAgICAgY29uc3QgZiA9IChsaXN0LCBwYXRoKSA9PiB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgcCBpbiBsaXN0KSB7XHJcbiAgICAgICAgICAgICAgICBpZiAobGlzdC5oYXNPd25Qcm9wZXJ0eShwKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRlID0gbGlzdFtwXTtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBwcCA9IChyb3V0ZS5wYXRoICE9ICcnICYmIHJvdXRlLnBhdGggIT0gbnVsbCkgPyBwYXRoICsgJy8nICsgcm91dGUucGF0aCA6IHBhdGg7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHBwID09IHNlYXJjaCAmJiAhcm91dGUuX2xvYWRlZENvbmZpZyAmJiByb3V0ZS5jb21wb25lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm91bmQgPSByb3V0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyb3V0ZS5fbG9hZGVkQ29uZmlnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGYocm91dGUuX2xvYWRlZENvbmZpZy5yb3V0ZXMsIHBwKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBmb3IgKGNvbnN0IHAgaW4gdGhpcy5yb3V0ZXIuY29uZmlnKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnJvdXRlci5jb25maWcuaGFzT3duUHJvcGVydHkocCkpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRlID0gdGhpcy5yb3V0ZXIuY29uZmlnW3BdO1xyXG4gICAgICAgICAgICAgICAgaWYgKHJvdXRlLnBhdGggPT09IHNlYXJjaCAmJiByb3V0ZS5jb21wb25lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBmb3VuZCA9IHJvdXRlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSBpZiAocm91dGVbJ19sb2FkZWRDb25maWcnXSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGYocm91dGVbJ19sb2FkZWRDb25maWcnXS5yb3V0ZXMsIHJvdXRlLnBhdGgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZm91bmQ7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ==
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWNvcmV4L2NvcmUvIiwic291cmNlcyI6WyJsaWIvdXRpbHMvcmVuZGVyL3JlbmRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsY0FBYyxFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxVQUFVLEVBQ2xFLFFBQVEsRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQzdELE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7QUFLaEY7SUFDSSx5QkFDWSxNQUFzQixFQUN0QixNQUFjLEVBQ2Qsd0JBQWtELEVBQ2xELFFBQWtCLEVBQ2xCLG9CQUE4QyxFQUM5QyxRQUFrQjtRQUxsQixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMEI7UUFDOUMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUM5QixDQUFDO0lBSUQseUNBQWUsR0FBZixVQUNJLGNBQXVCLEVBQ3ZCLE9BQWlCLEVBQ2pCLFFBQWtCO1FBSHRCLGlCQXVCQztRQXJCRyx3QkFBQSxFQUFBLFlBQWlCO1FBR2pCLElBQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLHVCQUF1QixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9GLElBQU0sWUFBWSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsWUFB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Q0FtRzNCOzBCQTdHRDtDQTZHQyxBQW5HRCxJQW1HQztTQW5HWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIEFwcGxpY2F0aW9uUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudFJlZiwgSW5qZWN0YWJsZSxcclxuICAgIEluamVjdG9yLCBFbWJlZGRlZFZpZXdSZWYsIFR5cGUsIENvbXBpbGVyLCBOZ01vZHVsZUZhY3RvcnlcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEFYT25EZW1hbmRQcmVsb2FkU2VydmljZSB9IGZyb20gJy4vb24tZGVtYW5kLXByZWxvYWQtc3RyYXRlZ3kuc2VydmljZSc7XHJcblxyXG5cclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBBWFJlbmRlclNlcnZpY2Uge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmLFxyXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICAgICAgICBwcml2YXRlIGNvbXBpbGVyOiBDb21waWxlcixcclxuICAgICAgICBwcml2YXRlIG1vZHVsZVByZWxvYWRTZXJ2aWNlOiBBWE9uRGVtYW5kUHJlbG9hZFNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIGFwcGVuZENvbXBvbmVudDxUPihcclxuICAgICAgICBjb21wb25lbnRDbGFzczogVHlwZTxUPixcclxuICAgICAgICBvcHRpb25zOiBhbnkgPSB7fSxcclxuICAgICAgICBsb2NhdGlvbj86IEVsZW1lbnQpOiBDb21wb25lbnRSZWY8YW55PiB7XHJcblxyXG4gICAgICAgIGNvbnN0IGNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShjb21wb25lbnRDbGFzcyk7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gY29tcG9uZW50RmFjdG9yeS5jcmVhdGUodGhpcy5pbmplY3Rvcik7XHJcbiAgICAgICAgdGhpcy5hcHBSZWYuYXR0YWNoVmlldyhjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xyXG4gICAgICAgIE9iamVjdC5hc3NpZ24oY29tcG9uZW50UmVmLmluc3RhbmNlLCBvcHRpb25zKTtcclxuICAgICAgICAvL1xyXG4gICAgICAgIGNvbnN0IGRvbUVsZW0gPSAoY29tcG9uZW50UmVmLmhvc3RWaWV3IGFzIEVtYmVkZGVkVmlld1JlZjxhbnk+KS5yb290Tm9kZXNbMF0gYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICAgICAgY29tcG9uZW50UmVmLm9uRGVzdHJveSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuYXBwUmVmLmRldGFjaFZpZXcoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBpZiAobG9jYXRpb24pIHtcclxuICAgICAgICAgICAgbG9jYXRpb24uYXBwZW5kQ2hpbGQoZG9tRWxlbSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb21FbGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSwgMCk7XHJcbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcclxuICAgIH1cclxuXHJcbiAgICBmaW5kTG9hZGVkQ29tcG9uZW50QnlSb3V0ZShwYXRoOiBzdHJpbmcsIHRpbWVvdXRUaW1lOiBudW1iZXIgPSAxMCk6IFByb21pc2U8Um91dGU+IHtcclxuICAgICAgICBjb25zdCBkZWxheSA9IDIwMDtcclxuICAgICAgICBjb25zdCBsb29wID0gdGltZW91dFRpbWUgKiAxMDAwIC8gZGVsYXk7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgICAgICAgbGV0IGZvdW5kOiBSb3V0ZSA9IG51bGw7XHJcbiAgICAgICAgICAgIGxldCBwcmVsb2FkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGNvbnN0IHRoZUxvb3AgPSAoaSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm91bmQgPSBhd2FpdCB0aGlzLl9maW5kTG9hZGVkQ29tcG9uZW50QnlSb3V0ZShwYXRoKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoLS1pICYmIGZvdW5kID09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFwcmVsb2FkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZHVsZVByZWxvYWRTZXJ2aWNlLnN0YXJ0UHJlbG9hZChwYXRoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWxvYWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoZUxvb3AoaSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZvdW5kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZm91bmQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVqZWN0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSwgZGVsYXkpO1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB0aGVMb29wKGxvb3ApO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYXN5bmMgX2ZpbmRMb2FkZWRDb21wb25lbnRCeVJvdXRlKHNlYXJjaCkge1xyXG5cclxuICAgICAgICBsZXQgZm91bmQ6IFJvdXRlID0gbnVsbDtcclxuICAgICAgICBjb25zdCBmID0gKGNoaWxkcmVuLCBwYXJlbnRQYXRoKSA9PiB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgcCBpbiBjaGlsZHJlbikge1xyXG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkcmVuLmhhc093blByb3BlcnR5KHApKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm91dGUgPSBjaGlsZHJlbltwXTtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBwcCA9IChyb3V0ZS5wYXRoICE9ICcnICYmIHJvdXRlLnBhdGggIT0gbnVsbCkgPyBwYXJlbnRQYXRoICsgJy8nICsgcm91dGUucGF0aCA6IHBhcmVudFBhdGg7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHBwID09IHNlYXJjaCAmJiAhcm91dGUuX2xvYWRlZENvbmZpZyAmJiByb3V0ZS5jb21wb25lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm91bmQgPSByb3V0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocm91dGUuX2xvYWRlZENvbmZpZyB8fCByb3V0ZS5jaGlsZHJlbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmKHJvdXRlLmNoaWxkcmVuIHx8IHJvdXRlLl9sb2FkZWRDb25maWcucm91dGVzLCBwcCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBwIGluIHRoaXMucm91dGVyLmNvbmZpZykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5yb3V0ZXIuY29uZmlnLmhhc093blByb3BlcnR5KHApKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCByb3V0ZSA9IHRoaXMucm91dGVyLmNvbmZpZ1twXTtcclxuICAgICAgICAgICAgICAgIGlmIChyb3V0ZS5wYXRoID09PSBzZWFyY2ggJiYgcm91dGUuY29tcG9uZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm91bmQgPSByb3V0ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHJvdXRlWydfbG9hZGVkQ29uZmlnJ10gfHwgcm91dGUuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgICAgICBmKHJvdXRlLmNoaWxkcmVuIHx8IHJvdXRlWydfbG9hZGVkQ29uZmlnJ10ucm91dGVzLCByb3V0ZS5wYXRoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmIChmb3VuZClcclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZm91bmQ7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,7 +1,7 @@
1
1
  import * as moment_ from 'jalali-moment';
2
2
  import { Subject } from 'rxjs';
3
- import { EventEmitter, InjectionToken, Injector, ɵɵdefineInjectable, ɵɵinject, INJECTOR, Injectable, NgModule, Pipe, ApplicationRef, ComponentFactoryResolver, ElementRef, Input, HostListener, Directive } from '@angular/core';
4
- import { __decorate, __metadata } from 'tslib';
3
+ import { EventEmitter, InjectionToken, Injector, ɵɵdefineInjectable, ɵɵinject, INJECTOR, Injectable, NgModule, Pipe, ApplicationRef, ComponentFactoryResolver, Compiler, ElementRef, Input, HostListener, Directive } from '@angular/core';
4
+ import { __decorate, __metadata, __awaiter } from 'tslib';
5
5
  import { CommonModule } from '@angular/common';
6
6
  import { HttpHeaders, HttpParams, HttpClient, HttpClientModule } from '@angular/common/http';
7
7
  import merge from 'lodash-es/merge';
@@ -255,7 +255,7 @@ class AXDateTime {
255
255
  return moment(date).locale('fa').format('YYYY/M/D');
256
256
  }
257
257
  convertStringToGregorian(date, format) {
258
- return new Date((moment.from(date, 'fa', 'YYYY/MM/DD').format('YYYY/MM/DD')));
258
+ return new Date(moment.from(date, 'fa', 'YYYY/MM/DD').format('YYYY/MM/DD'));
259
259
  }
260
260
  add(unit = 'day', amount) {
261
261
  return new AXDateTime(moment(this.date).add(amount, this.resolveUnit(unit)).toDate(), this.type);
@@ -1810,10 +1810,11 @@ AXOnDemandPreloadService = __decorate([
1810
1810
  ], AXOnDemandPreloadService);
1811
1811
 
1812
1812
  let AXRenderService = class AXRenderService {
1813
- constructor(appRef, router, componentFactoryResolver, modulePreloadService, injector) {
1813
+ constructor(appRef, router, componentFactoryResolver, compiler, modulePreloadService, injector) {
1814
1814
  this.appRef = appRef;
1815
1815
  this.router = router;
1816
1816
  this.componentFactoryResolver = componentFactoryResolver;
1817
+ this.compiler = compiler;
1817
1818
  this.modulePreloadService = modulePreloadService;
1818
1819
  this.injector = injector;
1819
1820
  }
@@ -1845,8 +1846,8 @@ let AXRenderService = class AXRenderService {
1845
1846
  let found = null;
1846
1847
  let preload = false;
1847
1848
  const theLoop = (i) => {
1848
- setTimeout(() => {
1849
- found = this._findLoadedComponentByRoute(path);
1849
+ setTimeout(() => __awaiter(this, void 0, void 0, function* () {
1850
+ found = yield this._findLoadedComponentByRoute(path);
1850
1851
  if (--i && found == null) {
1851
1852
  if (!preload) {
1852
1853
  this.modulePreloadService.startPreload(path);
@@ -1860,55 +1861,61 @@ let AXRenderService = class AXRenderService {
1860
1861
  else {
1861
1862
  reject();
1862
1863
  }
1863
- }, delay);
1864
+ }), delay);
1864
1865
  };
1865
1866
  theLoop(loop);
1866
1867
  });
1867
1868
  }
1868
1869
  _findLoadedComponentByRoute(search) {
1869
- let found = null;
1870
- const f = (list, path) => {
1871
- for (const p in list) {
1872
- if (list.hasOwnProperty(p)) {
1873
- const route = list[p];
1874
- const pp = (route.path != '' && route.path != null) ? path + '/' + route.path : path;
1875
- if (pp == search && !route._loadedConfig && route.component) {
1870
+ return __awaiter(this, void 0, void 0, function* () {
1871
+ let found = null;
1872
+ const f = (children, parentPath) => {
1873
+ for (const p in children) {
1874
+ if (children.hasOwnProperty(p)) {
1875
+ const route = children[p];
1876
+ const pp = (route.path != '' && route.path != null) ? parentPath + '/' + route.path : parentPath;
1877
+ if (pp == search && !route._loadedConfig && route.component) {
1878
+ found = route;
1879
+ return;
1880
+ }
1881
+ else if (route._loadedConfig || route.children) {
1882
+ f(route.children || route._loadedConfig.routes, pp);
1883
+ }
1884
+ }
1885
+ }
1886
+ };
1887
+ for (const p in this.router.config) {
1888
+ if (this.router.config.hasOwnProperty(p)) {
1889
+ const route = this.router.config[p];
1890
+ if (route.path === search && route.component) {
1876
1891
  found = route;
1877
- break;
1878
1892
  }
1879
- else if (route._loadedConfig) {
1880
- f(route._loadedConfig.routes, pp);
1893
+ else if (route['_loadedConfig'] || route.children) {
1894
+ f(route.children || route['_loadedConfig'].routes, route.path);
1881
1895
  }
1896
+ if (found)
1897
+ break;
1882
1898
  }
1883
1899
  }
1884
- };
1885
- for (const p in this.router.config) {
1886
- if (this.router.config.hasOwnProperty(p)) {
1887
- const route = this.router.config[p];
1888
- if (route.path === search && route.component) {
1889
- found = route;
1890
- }
1891
- else if (route['_loadedConfig']) {
1892
- f(route['_loadedConfig'].routes, route.path);
1893
- }
1894
- }
1895
- }
1896
- return found;
1900
+ return found;
1901
+ });
1897
1902
  }
1898
1903
  };
1899
1904
  AXRenderService.ctorParameters = () => [
1900
1905
  { type: ApplicationRef },
1901
1906
  { type: Router },
1902
1907
  { type: ComponentFactoryResolver },
1908
+ { type: Compiler },
1903
1909
  { type: AXOnDemandPreloadService },
1904
1910
  { type: Injector }
1905
1911
  ];
1906
- AXRenderService.ɵprov = ɵɵdefineInjectable({ factory: function AXRenderService_Factory() { return new AXRenderService(ɵɵinject(ApplicationRef), ɵɵinject(Router), ɵɵinject(ComponentFactoryResolver), ɵɵinject(AXOnDemandPreloadService), ɵɵinject(INJECTOR)); }, token: AXRenderService, providedIn: "root" });
1912
+ AXRenderService.ɵprov = ɵɵdefineInjectable({ factory: function AXRenderService_Factory() { return new AXRenderService(ɵɵinject(ApplicationRef), ɵɵinject(Router), ɵɵinject(ComponentFactoryResolver), ɵɵinject(Compiler), ɵɵinject(AXOnDemandPreloadService), ɵɵinject(INJECTOR)); }, token: AXRenderService, providedIn: "root" });
1907
1913
  AXRenderService = __decorate([
1908
1914
  Injectable({ providedIn: 'root' }),
1909
1915
  __metadata("design:paramtypes", [ApplicationRef,
1910
1916
  Router,
1911
1917
  ComponentFactoryResolver,
1918
+ Compiler,
1912
1919
  AXOnDemandPreloadService,
1913
1920
  Injector])
1914
1921
  ], AXRenderService);