@sd-angular/core 0.0.834 → 0.0.838

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.
Files changed (61) hide show
  1. package/bundles/sd-angular-core-editor.umd.js +1 -0
  2. package/bundles/sd-angular-core-editor.umd.js.map +1 -1
  3. package/bundles/sd-angular-core-editor.umd.min.js +1 -1
  4. package/bundles/sd-angular-core-editor.umd.min.js.map +1 -1
  5. package/bundles/sd-angular-core-grid-material.umd.js +4 -3
  6. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  7. package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
  8. package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
  9. package/bundles/sd-angular-core-tab-router.umd.js +827 -0
  10. package/bundles/sd-angular-core-tab-router.umd.js.map +1 -0
  11. package/bundles/sd-angular-core-tab-router.umd.min.js +16 -0
  12. package/bundles/sd-angular-core-tab-router.umd.min.js.map +1 -0
  13. package/bundles/sd-angular-core.umd.js +4 -4
  14. package/bundles/sd-angular-core.umd.js.map +1 -1
  15. package/bundles/sd-angular-core.umd.min.js +1 -1
  16. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  17. package/editor/sd-angular-core-editor.metadata.json +1 -1
  18. package/esm2015/editor/src/lib/editor.component.js +2 -1
  19. package/esm2015/grid-material/src/lib/grid-material.component.js +5 -4
  20. package/esm2015/public-api.js +2 -1
  21. package/esm2015/tab-router/index.js +2 -0
  22. package/esm2015/tab-router/sd-angular-core-tab-router.js +6 -0
  23. package/esm2015/tab-router/src/lib/actions/tab-router.action.js +2 -0
  24. package/esm2015/tab-router/src/lib/components/tab-router-item/tab-router-item.component.js +26 -0
  25. package/esm2015/tab-router/src/lib/components/tab-router-nav/tab-router-nav.component.js +33 -0
  26. package/esm2015/tab-router/src/lib/components/tab-router-outlet/tab-router-outlet.component.js +193 -0
  27. package/esm2015/tab-router/src/lib/decorators/tab.decorator.js +9 -0
  28. package/esm2015/tab-router/src/lib/events/tab-router.event.js +17 -0
  29. package/esm2015/tab-router/src/lib/models/tab-router.model.js +5 -0
  30. package/esm2015/tab-router/src/lib/pipes/tab-info.pipe.js +34 -0
  31. package/esm2015/tab-router/src/lib/services/tab-decorator.service.js +26 -0
  32. package/esm2015/tab-router/src/lib/services/tab-router.service.js +106 -0
  33. package/esm2015/tab-router/src/lib/tab-router.module.js +29 -0
  34. package/esm2015/tab-router/src/public-api.js +18 -0
  35. package/fesm2015/sd-angular-core-editor.js +1 -0
  36. package/fesm2015/sd-angular-core-editor.js.map +1 -1
  37. package/fesm2015/sd-angular-core-grid-material.js +4 -3
  38. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  39. package/fesm2015/sd-angular-core-tab-router.js +462 -0
  40. package/fesm2015/sd-angular-core-tab-router.js.map +1 -0
  41. package/fesm2015/sd-angular-core.js +1 -0
  42. package/fesm2015/sd-angular-core.js.map +1 -1
  43. package/package.json +1 -1
  44. package/public-api.d.ts +1 -0
  45. package/{sd-angular-core-0.0.834.tgz → sd-angular-core-0.0.838.tgz} +0 -0
  46. package/tab-router/index.d.ts +1 -0
  47. package/tab-router/package.json +12 -0
  48. package/tab-router/sd-angular-core-tab-router.d.ts +5 -0
  49. package/tab-router/sd-angular-core-tab-router.metadata.json +1 -0
  50. package/tab-router/src/lib/actions/tab-router.action.d.ts +5 -0
  51. package/tab-router/src/lib/components/tab-router-item/tab-router-item.component.d.ts +8 -0
  52. package/tab-router/src/lib/components/tab-router-nav/tab-router-nav.component.d.ts +10 -0
  53. package/tab-router/src/lib/components/tab-router-outlet/tab-router-outlet.component.d.ts +20 -0
  54. package/tab-router/src/lib/decorators/tab.decorator.d.ts +17 -0
  55. package/tab-router/src/lib/events/tab-router.event.d.ts +11 -0
  56. package/tab-router/src/lib/models/tab-router.model.d.ts +20 -0
  57. package/tab-router/src/lib/pipes/tab-info.pipe.d.ts +9 -0
  58. package/tab-router/src/lib/services/tab-decorator.service.d.ts +6 -0
  59. package/tab-router/src/lib/services/tab-router.service.d.ts +24 -0
  60. package/tab-router/src/lib/tab-router.module.d.ts +2 -0
  61. package/tab-router/src/public-api.d.ts +9 -0
@@ -0,0 +1,26 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { SdTabRouterService } from '../../services/tab-router.service';
3
+ export class SdTabRouterItemComponent {
4
+ constructor(tabRouterService) {
5
+ this.tabRouterService = tabRouterService;
6
+ this.close = (event) => {
7
+ event.preventDefault();
8
+ event.stopPropagation();
9
+ this.tabRouterService.close(this.tab);
10
+ };
11
+ }
12
+ }
13
+ SdTabRouterItemComponent.decorators = [
14
+ { type: Component, args: [{
15
+ selector: 'sd-tab-router-item',
16
+ template: "<a [routerLink]=\"[tab.url]\" [state]=\"{ switchTab: true }\" class=\"tab-router__item d-flex align-items-center\" [ngClass]=\"{\r\n 'tab-router__item--active': tab.isActive,\r\n 'tab-router__item--child': tab.isChild\r\n }\" matTooltip=\"{{ tab.name }}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">\r\n <ng-container *ngIf=\"tab | sdTabInfo | async as tabInfo\">\r\n <div class=\"\r\n tab-router__icon\r\n d-flex\r\n align-items-center\r\n justify-content-center\r\n mr-8\r\n \" [ngStyle]=\"{\r\n 'background-color': tabInfo.color\r\n }\">\r\n <mat-icon fontSet=\"material-icons-outlined\" *ngIf=\"tab.isChild; else parentIcon\">circle</mat-icon>\r\n <ng-template #parentIcon>{{ tabInfo.initialName || 'W' }}</ng-template>\r\n </div>\r\n <div class=\"flex-1\">\r\n <div class=\"tab-router__name\">{{ tabInfo.name }}</div>\r\n </div>\r\n <button type=\"button\" class=\"\r\n tab-router__close\r\n d-flex\r\n align-items-center\r\n justify-content-center\r\n ml-4\r\n \" (click)=\"close($event)\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </ng-container>\r\n\r\n</a>",
17
+ styles: [":host{flex:1 1 auto;max-width:240px;position:relative}:host:after{background:#dde0e5;bottom:0;content:\"\";height:16px;margin:auto;position:absolute;right:0;top:0;width:1px}:host:last-child:after{content:none}.flex-1{flex:1}.tab-router__icon{background-color:#5c6bc0;border-radius:2px;color:#fff;font-size:10px;height:16px;line-height:1;text-transform:uppercase;width:16px}.tab-router__icon .mat-icon{font-size:10px;height:10px;width:10px}.tab-router__close{background:none;border:0;border-radius:50%;color:#757575;height:16px;outline:none;width:16px}.tab-router__close:hover{background-color:rgba(0,0,0,.12)}.tab-router__close .mat-icon{font-size:12px;height:12px;width:12px}.tab-router__item{background:#f2f3f4;color:inherit;font-size:12px;line-height:16px;padding:16px 16px 8px;text-decoration:none}.tab-router__item:hover{background-color:#fff}.tab-router__name{-webkit-box-orient:vertical;-webkit-line-clamp:1;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.tab-router__item--active{background-color:#fff;border-radius:8px 8px 0 0}"]
18
+ },] }
19
+ ];
20
+ SdTabRouterItemComponent.ctorParameters = () => [
21
+ { type: SdTabRouterService }
22
+ ];
23
+ SdTabRouterItemComponent.propDecorators = {
24
+ tab: [{ type: Input }]
25
+ };
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXJvdXRlci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy91c2VyL0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYi1yb3V0ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL2NvbXBvbmVudHMvdGFiLXJvdXRlci1pdGVtL3RhYi1yb3V0ZXItaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFPdkUsTUFBTSxPQUFPLHdCQUF3QjtJQUduQyxZQUFvQixnQkFBb0M7UUFBcEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUV4RCxVQUFLLEdBQUcsQ0FBQyxLQUFZLEVBQUUsRUFBRTtZQUN2QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQTtJQU4wRCxDQUFDOzs7WUFSN0QsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLCtwQ0FBK0M7O2FBRWhEOzs7WUFOUSxrQkFBa0I7OztrQkFReEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFNkVGFiIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYi1yb3V0ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFRhYlJvdXRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90YWItcm91dGVyLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC10YWItcm91dGVyLWl0ZW0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItcm91dGVyLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYi1yb3V0ZXItaXRlbS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RUYWJSb3V0ZXJJdGVtQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSB0YWI6IFNkVGFiO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRhYlJvdXRlclNlcnZpY2U6IFNkVGFiUm91dGVyU2VydmljZSkge31cclxuXHJcbiAgY2xvc2UgPSAoZXZlbnQ6IEV2ZW50KSA9PiB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLnRhYlJvdXRlclNlcnZpY2UuY2xvc2UodGhpcy50YWIpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,33 @@
1
+ import { Component, HostListener, Input, ViewChild, } from '@angular/core';
2
+ export class SdTabRouterNavComponent {
3
+ constructor() {
4
+ this.mode = 'default';
5
+ this.checkUI = () => {
6
+ const width = this.tabRouterNav.nativeElement.clientWidth;
7
+ const nameWidth = (width - this.tabs.length * 64) / this.tabs.length;
8
+ if (nameWidth <= 20) {
9
+ this.mode = 'compact';
10
+ }
11
+ else {
12
+ this.mode = 'default';
13
+ }
14
+ };
15
+ }
16
+ onResize(event) {
17
+ this.checkUI();
18
+ }
19
+ }
20
+ SdTabRouterNavComponent.decorators = [
21
+ { type: Component, args: [{
22
+ selector: 'sd-tab-router-nav',
23
+ template: "<div\r\n #tabRouterNav\r\n class=\"tab-router__nav tab-router__nav--{{ mode }} d-flex align-items-center\"\r\n>\r\n <ng-container *ngFor=\"let tab of tabs\">\r\n <sd-tab-router-item [tab]=\"tab\"></sd-tab-router-item>\r\n </ng-container>\r\n</div>\r\n",
24
+ styles: [".tab-router__nav{background:#f9f9f9}.tab-router__nav--compact::ng-deep .tab-router__name{display:none}.tab-router__nav--compact::ng-deep .tab-router__icon{margin:0!important}.tab-router__nav--compact::ng-deep .tab-router__item--active{min-width:240px}.tab-router__nav--compact::ng-deep .tab-router__item--active .tab-router__icon{margin-right:8px!important}.tab-router__nav--compact::ng-deep .tab-router__item--active .tab-router__name{display:-webkit-box}"]
25
+ },] }
26
+ ];
27
+ SdTabRouterNavComponent.ctorParameters = () => [];
28
+ SdTabRouterNavComponent.propDecorators = {
29
+ tabRouterNav: [{ type: ViewChild, args: ['tabRouterNav',] }],
30
+ tabs: [{ type: Input }],
31
+ onResize: [{ type: HostListener, args: ['window:resize', ['$event'],] }]
32
+ };
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXJvdXRlci1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL3VzZXIvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFiLXJvdXRlci8iLCJzb3VyY2VzIjpbInNyYy9saWIvY29tcG9uZW50cy90YWItcm91dGVyLW5hdi90YWItcm91dGVyLW5hdi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQVN2QixNQUFNLE9BQU8sdUJBQXVCO0lBTWxDO1FBRkEsU0FBSSxHQUEwQixTQUFTLENBQUM7UUFTeEMsWUFBTyxHQUFHLEdBQUcsRUFBRTtZQUNiLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztZQUMxRCxNQUFNLFNBQVMsR0FBRyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUNyRSxJQUFJLFNBQVMsSUFBSSxFQUFFLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO2FBQ3ZCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO2FBQ3ZCO1FBQ0gsQ0FBQyxDQUFBO0lBZmMsQ0FBQztJQUdoQixRQUFRLENBQUMsS0FBSztRQUNaLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDOzs7WUFoQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLDhRQUE4Qzs7YUFFL0M7Ozs7MkJBRUUsU0FBUyxTQUFDLGNBQWM7bUJBRXhCLEtBQUs7dUJBS0wsWUFBWSxTQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFNkVGFiIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYi1yb3V0ZXIubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC10YWItcm91dGVyLW5hdicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi1yb3V0ZXItbmF2LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWItcm91dGVyLW5hdi5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RUYWJSb3V0ZXJOYXZDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ3RhYlJvdXRlck5hdicpIHRhYlJvdXRlck5hdjogRWxlbWVudFJlZjtcclxuXHJcbiAgQElucHV0KCkgdGFiczogU2RUYWJbXTtcclxuICBtb2RlOiAnZGVmYXVsdCcgfCAnY29tcGFjdCcgPSAnZGVmYXVsdCc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgb25SZXNpemUoZXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hlY2tVSSgpO1xyXG4gIH1cclxuXHJcbiAgY2hlY2tVSSA9ICgpID0+IHtcclxuICAgIGNvbnN0IHdpZHRoID0gdGhpcy50YWJSb3V0ZXJOYXYubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aDtcclxuICAgIGNvbnN0IG5hbWVXaWR0aCA9ICh3aWR0aCAtIHRoaXMudGFicy5sZW5ndGggKiA2NCkgLyB0aGlzLnRhYnMubGVuZ3RoO1xyXG4gICAgaWYgKG5hbWVXaWR0aCA8PSAyMCkge1xyXG4gICAgICB0aGlzLm1vZGUgPSAnY29tcGFjdCc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm1vZGUgPSAnZGVmYXVsdCc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,193 @@
1
+ var _rootRoute, _subscription, _closeTab, _activeRoute, _getActivatedRouteSnapshot, _getActivatedRoute;
2
+ import { __awaiter, __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { ChangeDetectorRef, Compiler, Component, Injector, ViewChild, } from '@angular/core';
4
+ import { ActivatedRoute, ChildrenOutletContexts, Router, RoutesRecognized, } from '@angular/router';
5
+ import { SdNotifyService } from '@sd-angular/core/notify';
6
+ import { SdTabActivated, SdTabDeactivated, } from '../../events/tab-router.event';
7
+ import { SdTabRouterService } from '../../services/tab-router.service';
8
+ import { Subscription } from 'rxjs';
9
+ export class SdTabRouterOutletComponent {
10
+ constructor(router, cd, injector, compiler, parentContexts, tabRouterService, sdNotifyService) {
11
+ this.router = router;
12
+ this.cd = cd;
13
+ this.injector = injector;
14
+ this.compiler = compiler;
15
+ this.parentContexts = parentContexts;
16
+ this.tabRouterService = tabRouterService;
17
+ this.sdNotifyService = sdNotifyService;
18
+ this.tabs = [];
19
+ _rootRoute.set(this, void 0);
20
+ _subscription.set(this, new Subscription());
21
+ _closeTab.set(this, (tab) => {
22
+ var _a;
23
+ this.tabs = this.tabs.filter(({ key }) => key !== tab.key);
24
+ if (tab.isActive) {
25
+ const lastTab = this.tabs[this.tabs.length - 1];
26
+ if (lastTab) {
27
+ this.router.navigateByUrl(lastTab.url, {
28
+ state: {
29
+ switchTab: true,
30
+ },
31
+ });
32
+ }
33
+ else {
34
+ this.router.navigateByUrl('/', {
35
+ state: {
36
+ switchTab: true,
37
+ },
38
+ });
39
+ }
40
+ }
41
+ else {
42
+ (_a = this.tabRouterNav) === null || _a === void 0 ? void 0 : _a.checkUI();
43
+ this.cd.markForCheck();
44
+ }
45
+ });
46
+ _activeRoute.set(this, (url, route) => __awaiter(this, void 0, void 0, function* () {
47
+ var _a, _b, _c, _d, _e, _f, _g;
48
+ if (!(route === null || route === void 0 ? void 0 : route.component)) {
49
+ return;
50
+ }
51
+ const component = route.component;
52
+ const queryParams = Object.assign({}, (route.queryParams || {}));
53
+ const params = Object.assign({}, (route.params || {}));
54
+ let existedIndex = -1;
55
+ this.tabs.forEach((tab, index) => {
56
+ if (tab.key === url) {
57
+ tab.isActive = true;
58
+ existedIndex = index;
59
+ }
60
+ else {
61
+ if (tab.isActive) {
62
+ this.tabRouterService.pushEvent(tab, SdTabDeactivated);
63
+ }
64
+ tab.isActive = false;
65
+ }
66
+ });
67
+ const currentNavigation = this.router.getCurrentNavigation();
68
+ if (existedIndex >= 0 && ((_b = (_a = currentNavigation === null || currentNavigation === void 0 ? void 0 : currentNavigation.extras) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.switchTab)) {
69
+ const existedTab = this.tabs[existedIndex];
70
+ this.tabRouterService.setCurrentTab(existedTab);
71
+ this.tabRouterService.pushEvent(existedTab, SdTabActivated);
72
+ }
73
+ else {
74
+ if (typeof ((_d = (_c = route === null || route === void 0 ? void 0 : route.parent) === null || _c === void 0 ? void 0 : _c.routeConfig) === null || _d === void 0 ? void 0 : _d.loadChildren) === 'function') {
75
+ const module = yield route.parent.routeConfig.loadChildren();
76
+ const factory = yield this.compiler.compileModuleAsync(module);
77
+ const injector = factory.create(this.injector);
78
+ // let tabInfo = {};
79
+ // if ('getTabInfo' in component) {
80
+ // tabInfo = component.getTabInfo({
81
+ // params,
82
+ // queryParams,
83
+ // });
84
+ // }
85
+ const activatedRoute = __classPrivateFieldGet(this, _getActivatedRoute).call(this, __classPrivateFieldGet(this, _rootRoute), component);
86
+ const tab = {
87
+ key: url,
88
+ component,
89
+ injector: new SdOutletInjector(activatedRoute, injector),
90
+ isActive: true,
91
+ name: url,
92
+ url,
93
+ params,
94
+ queryParams,
95
+ };
96
+ this.tabRouterService.setCurrentTab(tab);
97
+ if (existedIndex >= 0 && !((_f = (_e = currentNavigation === null || currentNavigation === void 0 ? void 0 : currentNavigation.extras) === null || _e === void 0 ? void 0 : _e.state) === null || _f === void 0 ? void 0 : _f.switchTab)) {
98
+ this.tabs[existedIndex] = tab;
99
+ }
100
+ else {
101
+ this.tabs.push(tab);
102
+ }
103
+ }
104
+ (_g = this.tabRouterNav) === null || _g === void 0 ? void 0 : _g.checkUI();
105
+ if (this.tabs.length > 10) {
106
+ this.sdNotifyService.notify.warning('Bạn đã mở quá nhiều tab. Vui lòng tắt các tab không dùng để hệ thống hoạt động tốt hơn.');
107
+ }
108
+ if (this.tabs.length > 12) {
109
+ this.tabs.splice(0, this.tabs.length - 10);
110
+ }
111
+ }
112
+ this.cd.markForCheck();
113
+ }));
114
+ _getActivatedRouteSnapshot.set(this, (activatedRouteSnapshot) => {
115
+ if (!activatedRouteSnapshot) {
116
+ return null;
117
+ }
118
+ if (activatedRouteSnapshot.firstChild) {
119
+ return __classPrivateFieldGet(this, _getActivatedRouteSnapshot).call(this, activatedRouteSnapshot.firstChild);
120
+ }
121
+ else {
122
+ return activatedRouteSnapshot;
123
+ }
124
+ });
125
+ _getActivatedRoute.set(this, (activatedRoute, component) => {
126
+ if (!activatedRoute) {
127
+ return null;
128
+ }
129
+ if (activatedRoute.component && activatedRoute.component === component) {
130
+ return activatedRoute;
131
+ }
132
+ else if (activatedRoute.firstChild) {
133
+ return __classPrivateFieldGet(this, _getActivatedRoute).call(this, activatedRoute.firstChild, component);
134
+ }
135
+ else {
136
+ return null;
137
+ }
138
+ });
139
+ __classPrivateFieldGet(this, _subscription).add(router.events.subscribe((event) => __awaiter(this, void 0, void 0, function* () {
140
+ if (event instanceof RoutesRecognized) {
141
+ const route = __classPrivateFieldGet(this, _getActivatedRouteSnapshot).call(this, event.state.root);
142
+ __classPrivateFieldSet(this, _rootRoute, this.router.routerState.root);
143
+ yield __classPrivateFieldGet(this, _activeRoute).call(this, event.urlAfterRedirects || event.url, route);
144
+ }
145
+ })));
146
+ __classPrivateFieldGet(this, _subscription).add(tabRouterService.actions.subscribe((event) => {
147
+ if (event && event.type === 'close') {
148
+ __classPrivateFieldGet(this, _closeTab).call(this, event.tab);
149
+ }
150
+ }));
151
+ }
152
+ ngOnDestroy() {
153
+ __classPrivateFieldGet(this, _subscription).unsubscribe();
154
+ }
155
+ }
156
+ _rootRoute = new WeakMap(), _subscription = new WeakMap(), _closeTab = new WeakMap(), _activeRoute = new WeakMap(), _getActivatedRouteSnapshot = new WeakMap(), _getActivatedRoute = new WeakMap();
157
+ SdTabRouterOutletComponent.decorators = [
158
+ { type: Component, args: [{
159
+ selector: 'sd-tab-router-outlet',
160
+ template: "<sd-tab-router-nav [tabs]=\"tabs\" #tabRouterNav></sd-tab-router-nav>\r\n\r\n<div class=\"tab-router__list\">\r\n <ng-container *ngFor=\"let tab of tabs\">\r\n <div class=\"tab-router__pane\" [class.active]=\"tab.isActive\" [id]=\"tab.key\">\r\n <div class=\"tab-router__content\">\r\n <ng-container\r\n *ngComponentOutlet=\"tab.component; injector: tab.injector\"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n",
161
+ styles: [".tab-router__list{flex:1}.tab-router__pane{display:none;height:100%;position:relative;width:100%}.tab-router__pane.active{display:block}.tab-router__content{bottom:0;height:100%;left:0;overflow:auto;position:absolute;right:0;top:0;width:100%}"]
162
+ },] }
163
+ ];
164
+ SdTabRouterOutletComponent.ctorParameters = () => [
165
+ { type: Router },
166
+ { type: ChangeDetectorRef },
167
+ { type: Injector },
168
+ { type: Compiler },
169
+ { type: ChildrenOutletContexts },
170
+ { type: SdTabRouterService },
171
+ { type: SdNotifyService }
172
+ ];
173
+ SdTabRouterOutletComponent.propDecorators = {
174
+ tabRouterNav: [{ type: ViewChild, args: ['tabRouterNav',] }]
175
+ };
176
+ class SdOutletInjector {
177
+ constructor(route,
178
+ // private childContexts: ChildrenOutletContexts,
179
+ parent) {
180
+ this.route = route;
181
+ this.parent = parent;
182
+ }
183
+ get(token, notFoundValue) {
184
+ if (token === ActivatedRoute && this.route) {
185
+ return this.route;
186
+ }
187
+ // if (token === ChildrenOutletContexts) {
188
+ // return this.childContexts;
189
+ // }
190
+ return this.parent.get(token, notFoundValue);
191
+ }
192
+ }
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXJvdXRlci1vdXRsZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL3VzZXIvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFiLXJvdXRlci8iLCJzb3VyY2VzIjpbInNyYy9saWIvY29tcG9uZW50cy90YWItcm91dGVyLW91dGxldC90YWItcm91dGVyLW91dGxldC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFFBQVEsRUFDUixTQUFTLEVBQ1QsUUFBUSxFQUtSLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsY0FBYyxFQUVkLHNCQUFzQixFQUl0QixNQUFNLEVBQ04sZ0JBQWdCLEdBQ2pCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFDTCxjQUFjLEVBQ2QsZ0JBQWdCLEdBQ2pCLE1BQU0sK0JBQStCLENBQUM7QUFJdkMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQVFwQyxNQUFNLE9BQU8sMEJBQTBCO0lBTXJDLFlBQ1UsTUFBYyxFQUNkLEVBQXFCLEVBQ3JCLFFBQWtCLEVBQ2xCLFFBQWtCLEVBQ2xCLGNBQXNDLEVBQ3RDLGdCQUFvQyxFQUNwQyxlQUFnQztRQU5oQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDckIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLG1CQUFjLEdBQWQsY0FBYyxDQUF3QjtRQUN0QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW9CO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQVgxQyxTQUFJ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QyxNQUFXO1FBRlgsVUFBSyxHQUFMLEtBQUssQ0FBdUI7UUFFNUIsV0FBTSxHQUFOLE1BQU0sQ0FBSztJQUNsQixDQUFDO0lBRUosR0FBRyxDQUFDLEtBQVUsRUFBRSxhQUFtQjtRQUNqQyxJQUFJLEtBQUssS0FBSyxjQUFjLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUMxQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDbkI7UUFFRCwwQ0FBMEM7UUFDMUMsK0JBQStCO1FBQy9CLElBQUk7UUFFSixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsQ0FBQztJQUMvQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBpbGVyLFxyXG4gIENvbXBvbmVudCxcclxuICBJbmplY3RvcixcclxuICBOZ01vZHVsZVJlZixcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIFR5cGUsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEFjdGl2YXRlZFJvdXRlLFxyXG4gIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXHJcbiAgQ2hpbGRyZW5PdXRsZXRDb250ZXh0cyxcclxuICAvLyBDaGlsZHJlbk91dGxldENvbnRleHRzLFxyXG4gIEV2ZW50LFxyXG4gIFBSSU1BUllfT1VUTEVULFxyXG4gIFJvdXRlcixcclxuICBSb3V0ZXNSZWNvZ25pemVkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFNkTm90aWZ5U2VydmljZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvbm90aWZ5JztcclxuaW1wb3J0IHtcclxuICBTZFRhYkFjdGl2YXRlZCxcclxuICBTZFRhYkRlYWN0aXZhdGVkLFxyXG59IGZyb20gJy4uLy4uL2V2ZW50cy90YWItcm91dGVyLmV2ZW50JztcclxuXHJcbmltcG9ydCB7IFNkVGFiIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYi1yb3V0ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFRhYkFjdGlvbiB9IGZyb20gJy4uLy4uL2FjdGlvbnMvdGFiLXJvdXRlci5hY3Rpb24nO1xyXG5pbXBvcnQgeyBTZFRhYlJvdXRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90YWItcm91dGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZFRhYlJvdXRlck5hdkNvbXBvbmVudCB9IGZyb20gJy4uL3RhYi1yb3V0ZXItbmF2L3RhYi1yb3V0ZXItbmF2LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC10YWItcm91dGVyLW91dGxldCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi1yb3V0ZXItb3V0bGV0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWItcm91dGVyLW91dGxldC5jb21wb25lbnQuc2NzcyddLFxyXG4gIC8vIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RUYWJSb3V0ZXJPdXRsZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gIEBWaWV3Q2hpbGQoJ3RhYlJvdXRlck5hdicpIHRhYlJvdXRlck5hdjogU2RUYWJSb3V0ZXJOYXZDb21wb25lbnQ7XHJcbiAgdGFiczogU2RUYWJbXSA9IFtdO1xyXG5cclxuICAjcm9vdFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcclxuICAjc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIGNvbXBpbGVyOiBDb21waWxlcixcclxuICAgIHByaXZhdGUgcGFyZW50Q29udGV4dHM6IENoaWxkcmVuT3V0bGV0Q29udGV4dHMsXHJcbiAgICBwcml2YXRlIHRhYlJvdXRlclNlcnZpY2U6IFNkVGFiUm91dGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgc2ROb3RpZnlTZXJ2aWNlOiBTZE5vdGlmeVNlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQocm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoYXN5bmMgKGV2ZW50OiBFdmVudCkgPT4ge1xyXG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBSb3V0ZXNSZWNvZ25pemVkKSB7XHJcbiAgICAgICAgY29uc3Qgcm91dGUgPSB0aGlzLiNnZXRBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KGV2ZW50LnN0YXRlLnJvb3QpO1xyXG4gICAgICAgIHRoaXMuI3Jvb3RSb3V0ZSA9IHRoaXMucm91dGVyLnJvdXRlclN0YXRlLnJvb3Q7XHJcbiAgICAgICAgYXdhaXQgdGhpcy4jYWN0aXZlUm91dGUoZXZlbnQudXJsQWZ0ZXJSZWRpcmVjdHMgfHwgZXZlbnQudXJsLCByb3V0ZSk7XHJcbiAgICAgIH1cclxuICAgIH0pKTtcclxuXHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24uYWRkKHRhYlJvdXRlclNlcnZpY2UuYWN0aW9ucy5zdWJzY3JpYmUoKGV2ZW50OiBTZFRhYkFjdGlvbiB8IG51bGwpID0+IHtcclxuICAgICAgaWYgKGV2ZW50ICYmIGV2ZW50LnR5cGUgPT09ICdjbG9zZScpIHtcclxuICAgICAgICB0aGlzLiNjbG9zZVRhYihldmVudC50YWIpO1xyXG4gICAgICB9XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgI2Nsb3NlVGFiID0gKHRhYjogU2RUYWIpID0+IHtcclxuICAgIHRoaXMudGFicyA9IHRoaXMudGFicy5maWx0ZXIoKHsga2V5IH0pID0+IGtleSAhPT0gdGFiLmtleSk7XHJcbiAgICBpZiAodGFiLmlzQWN0aXZlKSB7XHJcbiAgICAgIGNvbnN0IGxhc3RUYWIgPSB0aGlzLnRhYnNbdGhpcy50YWJzLmxlbmd0aCAtIDFdO1xyXG4gICAgICBpZiAobGFzdFRhYikge1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwobGFzdFRhYi51cmwsIHtcclxuICAgICAgICAgIHN0YXRlOiB7XHJcbiAgICAgICAgICAgIHN3aXRjaFRhYjogdHJ1ZSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCgnLycsIHtcclxuICAgICAgICAgIHN0YXRlOiB7XHJcbiAgICAgICAgICAgIHN3aXRjaFRhYjogdHJ1ZSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudGFiUm91dGVyTmF2Py5jaGVja1VJKCk7XHJcbiAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjYWN0aXZlUm91dGUgPSBhc3luYyAodXJsOiBzdHJpbmcsIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90IHwgbnVsbCkgPT4ge1xyXG4gICAgaWYgKCFyb3V0ZT8uY29tcG9uZW50KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBjb21wb25lbnQgPSByb3V0ZS5jb21wb25lbnQgYXMgVHlwZTxhbnk+O1xyXG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB7XHJcbiAgICAgIC4uLihyb3V0ZS5xdWVyeVBhcmFtcyB8fCB7fSksXHJcbiAgICB9O1xyXG4gICAgY29uc3QgcGFyYW1zID0ge1xyXG4gICAgICAuLi4ocm91dGUucGFyYW1zIHx8IHt9KSxcclxuICAgIH07XHJcblxyXG4gICAgbGV0IGV4aXN0ZWRJbmRleCA9IC0xO1xyXG4gICAgdGhpcy50YWJzLmZvckVhY2goKHRhYjogU2RUYWIsIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgaWYgKHRhYi5rZXkgPT09IHVybCkge1xyXG4gICAgICAgIHRhYi5pc0FjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgZXhpc3RlZEluZGV4ID0gaW5kZXg7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRhYi5pc0FjdGl2ZSkge1xyXG4gICAgICAgICAgdGhpcy50YWJSb3V0ZXJTZXJ2aWNlLnB1c2hFdmVudCh0YWIsIFNkVGFiRGVhY3RpdmF0ZWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0YWIuaXNBY3RpdmUgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgY29uc3QgY3VycmVudE5hdmlnYXRpb24gPSB0aGlzLnJvdXRlci5nZXRDdXJyZW50TmF2aWdhdGlvbigpO1xyXG4gICAgaWYgKGV4aXN0ZWRJbmRleCA+PSAwICYmIGN1cnJlbnROYXZpZ2F0aW9uPy5leHRyYXM/LnN0YXRlPy5zd2l0Y2hUYWIpIHtcclxuICAgICAgY29uc3QgZXhpc3RlZFRhYiA9IHRoaXMudGFic1tleGlzdGVkSW5kZXhdO1xyXG4gICAgICB0aGlzLnRhYlJvdXRlclNlcnZpY2Uuc2V0Q3VycmVudFRhYihleGlzdGVkVGFiKTtcclxuICAgICAgdGhpcy50YWJSb3V0ZXJTZXJ2aWNlLnB1c2hFdmVudChleGlzdGVkVGFiLCBTZFRhYkFjdGl2YXRlZCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodHlwZW9mIHJvdXRlPy5wYXJlbnQ/LnJvdXRlQ29uZmlnPy5sb2FkQ2hpbGRyZW4gPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICBjb25zdCBtb2R1bGUgPSBhd2FpdCByb3V0ZS5wYXJlbnQucm91dGVDb25maWcubG9hZENoaWxkcmVuKCk7XHJcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IGF3YWl0IHRoaXMuY29tcGlsZXIuY29tcGlsZU1vZHVsZUFzeW5jKG1vZHVsZSk7XHJcbiAgICAgICAgY29uc3QgaW5qZWN0b3IgPSBmYWN0b3J5LmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcclxuICAgICAgICAvLyBsZXQgdGFiSW5mbyA9IHt9O1xyXG4gICAgICAgIC8vIGlmICgnZ2V0VGFiSW5mbycgaW4gY29tcG9uZW50KSB7XHJcbiAgICAgICAgLy8gICB0YWJJbmZvID0gY29tcG9uZW50LmdldFRhYkluZm8oe1xyXG4gICAgICAgIC8vICAgICBwYXJhbXMsXHJcbiAgICAgICAgLy8gICAgIHF1ZXJ5UGFyYW1zLFxyXG4gICAgICAgIC8vICAgfSk7XHJcbiAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICBjb25zdCBhY3RpdmF0ZWRSb3V0ZSA9IHRoaXMuI2dldEFjdGl2YXRlZFJvdXRlKFxyXG4gICAgICAgICAgdGhpcy4jcm9vdFJvdXRlLFxyXG4gICAgICAgICAgY29tcG9uZW50XHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgY29uc3QgdGFiID0ge1xyXG4gICAgICAgICAga2V5OiB1cmwsXHJcbiAgICAgICAgICBjb21wb25lbnQsXHJcbiAgICAgICAgICBpbmplY3RvcjogbmV3IFNkT3V0bGV0SW5qZWN0b3IoYWN0aXZhdGVkUm91dGUsIGluamVjdG9yKSxcclxuXHJcbiAgICAgICAgICBpc0FjdGl2ZTogdHJ1ZSxcclxuICAgICAgICAgIG5hbWU6IHVybCxcclxuICAgICAgICAgIHVybCxcclxuICAgICAgICAgIHBhcmFtcyxcclxuICAgICAgICAgIHF1ZXJ5UGFyYW1zLFxyXG4gICAgICAgICAgLy8gLi4udGFiSW5mbyxcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLnRhYlJvdXRlclNlcnZpY2Uuc2V0Q3VycmVudFRhYih0YWIpO1xyXG4gICAgICAgIGlmIChleGlzdGVkSW5kZXggPj0gMCAmJiAhY3VycmVudE5hdmlnYXRpb24/LmV4dHJhcz8uc3RhdGU/LnN3aXRjaFRhYikge1xyXG4gICAgICAgICAgdGhpcy50YWJzW2V4aXN0ZWRJbmRleF0gPSB0YWI7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudGFicy5wdXNoKHRhYik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnRhYlJvdXRlck5hdj8uY2hlY2tVSSgpO1xyXG4gICAgICBpZiAodGhpcy50YWJzLmxlbmd0aCA+IDEwKSB7XHJcbiAgICAgICAgdGhpcy5zZE5vdGlmeVNlcnZpY2Uubm90aWZ5Lndhcm5pbmcoXHJcbiAgICAgICAgICAnQuG6oW4gxJHDoyBt4bufIHF1w6Egbmhp4buBdSB0YWIuIFZ1aSBsw7JuZyB04bqvdCBjw6FjIHRhYiBraMO0bmcgZMO5bmcgxJHhu4MgaOG7hyB0aOG7kW5nIGhv4bqhdCDEkeG7mW5nIHThu5F0IGjGoW4uJ1xyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMudGFicy5sZW5ndGggPiAxMikge1xyXG4gICAgICAgIHRoaXMudGFicy5zcGxpY2UoMCwgdGhpcy50YWJzLmxlbmd0aCAtIDEwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gICNnZXRBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90ID0gKFxyXG4gICAgYWN0aXZhdGVkUm91dGVTbmFwc2hvdDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdFxyXG4gICk6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QgfCBudWxsID0+IHtcclxuICAgIGlmICghYWN0aXZhdGVkUm91dGVTbmFwc2hvdCkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoYWN0aXZhdGVkUm91dGVTbmFwc2hvdC5maXJzdENoaWxkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLiNnZXRBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KGFjdGl2YXRlZFJvdXRlU25hcHNob3QuZmlyc3RDaGlsZCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gYWN0aXZhdGVkUm91dGVTbmFwc2hvdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNnZXRBY3RpdmF0ZWRSb3V0ZSA9IChcclxuICAgIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIGNvbXBvbmVudDogYW55XHJcbiAgKTogQWN0aXZhdGVkUm91dGUgfCBudWxsID0+IHtcclxuICAgIGlmICghYWN0aXZhdGVkUm91dGUpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGFjdGl2YXRlZFJvdXRlLmNvbXBvbmVudCAmJiBhY3RpdmF0ZWRSb3V0ZS5jb21wb25lbnQgPT09IGNvbXBvbmVudCkge1xyXG4gICAgICByZXR1cm4gYWN0aXZhdGVkUm91dGU7XHJcbiAgICB9IGVsc2UgaWYgKGFjdGl2YXRlZFJvdXRlLmZpcnN0Q2hpbGQpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuI2dldEFjdGl2YXRlZFJvdXRlKGFjdGl2YXRlZFJvdXRlLmZpcnN0Q2hpbGQsIGNvbXBvbmVudCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmNsYXNzIFNkT3V0bGV0SW5qZWN0b3IgaW1wbGVtZW50cyBJbmplY3RvciB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSB8IG51bGwsXHJcbiAgICAvLyBwcml2YXRlIGNoaWxkQ29udGV4dHM6IENoaWxkcmVuT3V0bGV0Q29udGV4dHMsXHJcbiAgICBwcml2YXRlIHBhcmVudDogYW55XHJcbiAgKSB7fVxyXG5cclxuICBnZXQodG9rZW46IGFueSwgbm90Rm91bmRWYWx1ZT86IGFueSk6IGFueSB7XHJcbiAgICBpZiAodG9rZW4gPT09IEFjdGl2YXRlZFJvdXRlICYmIHRoaXMucm91dGUpIHtcclxuICAgICAgcmV0dXJuIHRoaXMucm91dGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gaWYgKHRva2VuID09PSBDaGlsZHJlbk91dGxldENvbnRleHRzKSB7XHJcbiAgICAvLyAgIHJldHVybiB0aGlzLmNoaWxkQ29udGV4dHM7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMucGFyZW50LmdldCh0b2tlbiwgbm90Rm91bmRWYWx1ZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,9 @@
1
+ import { SdTabDecoratorService } from '../services/tab-decorator.service';
2
+ export function SdTabComponent(builder) {
3
+ return (constructor) => {
4
+ const service = SdTabDecoratorService.getService();
5
+ service.addBuilder(builder);
6
+ console.log(constructor);
7
+ };
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmRlY29yYXRvci5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy91c2VyL0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYi1yb3V0ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL2RlY29yYXRvcnMvdGFiLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQVMxRSxNQUFNLFVBQVUsY0FBYyxDQUFJLE9BQThCO0lBQzlELE9BQU8sQ0FBQyxXQUFjLEVBQUUsRUFBRTtRQUN4QixNQUFNLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNuRCxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDM0IsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RUYWJEZWNvcmF0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdGFiLWRlY29yYXRvci5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTZFRhYkNvbXBvbmVudEJ1aWxkZXIge1xyXG4gIGNvbXBvbmVudDogVHlwZTxhbnk+O1xyXG4gIG5hbWU6IHN0cmluZyB8ICgoYXJnczogeyBwYXJhbXM6IGFueSwgcXVlcnlQYXJhbXM6IGFueSB9KSA9PiBzdHJpbmcpO1xyXG4gIGluaXRpYWxOYW1lOiBzdHJpbmcgfCAoKGFyZ3M6IHsgcGFyYW1zOiBhbnksIHF1ZXJ5UGFyYW1zOiBhbnkgfSkgPT4gc3RyaW5nKTtcclxuICBjb2xvcj86IHN0cmluZyB8ICgoYXJnczogeyBwYXJhbXM6IGFueSwgcXVlcnlQYXJhbXM6IGFueSB9KSA9PiBzdHJpbmcpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gU2RUYWJDb21wb25lbnQ8VD4oYnVpbGRlcjogU2RUYWJDb21wb25lbnRCdWlsZGVyKSB7XHJcbiAgcmV0dXJuIChjb25zdHJ1Y3RvcjogVCkgPT4ge1xyXG4gICAgY29uc3Qgc2VydmljZSA9IFNkVGFiRGVjb3JhdG9yU2VydmljZS5nZXRTZXJ2aWNlKCk7XHJcbiAgICBzZXJ2aWNlLmFkZEJ1aWxkZXIoYnVpbGRlcik7XHJcbiAgICBjb25zb2xlLmxvZyhjb25zdHJ1Y3Rvcik7XHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -0,0 +1,17 @@
1
+ var _tab;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ export class SdTabBase {
4
+ constructor(tab) {
5
+ _tab.set(this, void 0);
6
+ __classPrivateFieldSet(this, _tab, tab);
7
+ }
8
+ get tab() {
9
+ return __classPrivateFieldGet(this, _tab);
10
+ }
11
+ }
12
+ _tab = new WeakMap();
13
+ export class SdTabActivated extends SdTabBase {
14
+ }
15
+ export class SdTabDeactivated extends SdTabBase {
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXJvdXRlci5ldmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy91c2VyL0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYi1yb3V0ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL2V2ZW50cy90YWItcm91dGVyLmV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsTUFBTSxPQUFPLFNBQVM7SUFHcEIsWUFBWSxHQUFpQjtRQUY3Qix1QkFBbUI7UUFHakIsdUJBQUEsSUFBSSxRQUFRLEdBQUcsRUFBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxHQUFHO1FBQ0wsMENBQWlCO0lBQ25CLENBQUM7Q0FDRjs7QUFFRCxNQUFNLE9BQU8sY0FBZSxTQUFRLFNBQVM7Q0FBRztBQUVoRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsU0FBUztDQUFHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2RUYWIgfSBmcm9tICcuLi9tb2RlbHMvdGFiLXJvdXRlci5tb2RlbCc7XHJcblxyXG5leHBvcnQgY2xhc3MgU2RUYWJCYXNlIHtcclxuICAjdGFiOiBTZFRhYiB8IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHRhYjogU2RUYWIgfCBudWxsKSB7XHJcbiAgICB0aGlzLiN0YWIgPSB0YWI7XHJcbiAgfVxyXG5cclxuICBnZXQgdGFiKCk6IFNkVGFiIHwgbnVsbCB7XHJcbiAgICByZXR1cm4gdGhpcy4jdGFiO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFNkVGFiQWN0aXZhdGVkIGV4dGVuZHMgU2RUYWJCYXNlIHt9XHJcblxyXG5leHBvcnQgY2xhc3MgU2RUYWJEZWFjdGl2YXRlZCBleHRlbmRzIFNkVGFiQmFzZSB7fVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBTZFRhYkV2ZW50ID0gU2RUYWJBY3RpdmF0ZWQgfCBTZFRhYkRlYWN0aXZhdGVkO1xyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ export {};
2
+ // export interface SdTabComponent {
3
+ // getTabInfo(args: {params: any, queryParams: any});
4
+ // }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXJvdXRlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy91c2VyL0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYi1yb3V0ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL21vZGVscy90YWItcm91dGVyLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUF3QkEsb0NBQW9DO0FBQ3BDLHVEQUF1RDtBQUN2RCxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNkVGFiSW5mbyB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGluaXRpYWxOYW1lPzogc3RyaW5nO1xyXG4gIGNvbG9yPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNkVGFiIGV4dGVuZHMgU2RUYWJJbmZvIHtcclxuICBjb21wb25lbnQ6IFR5cGU8YW55PjtcclxuICBpbmplY3Rvcj86IGFueTtcclxuICBrZXk6IHN0cmluZztcclxuXHJcbiAgaXNBY3RpdmU6IGJvb2xlYW47XHJcbiAgdXJsOiBzdHJpbmc7XHJcbiAgaXNDaGlsZD86IGJvb2xlYW47XHJcbiAgcGFyYW1zPzoge1xyXG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIH07XHJcbiAgcXVlcnlQYXJhbXM/OiB7XHJcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgfTtcclxufVxyXG5cclxuLy8gZXhwb3J0IGludGVyZmFjZSBTZFRhYkNvbXBvbmVudCB7XHJcbi8vICAgZ2V0VGFiSW5mbyhhcmdzOiB7cGFyYW1zOiBhbnksIHF1ZXJ5UGFyYW1zOiBhbnl9KTtcclxuLy8gfSJdfQ==
@@ -0,0 +1,34 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { map } from 'rxjs/operators';
3
+ import { SdTabRouterService } from '../services/tab-router.service';
4
+ export class SdTabInfoPipe {
5
+ constructor(tabRouterService) {
6
+ this.tabRouterService = tabRouterService;
7
+ }
8
+ transform(tab) {
9
+ return this.tabRouterService.builders.pipe(map(builders => {
10
+ const builder = builders.find(e => e.component === tab.component);
11
+ if (builder) {
12
+ const { params, queryParams } = tab;
13
+ return {
14
+ name: typeof (builder.name) === 'function' ? builder.name({ params, queryParams }) : builder.name,
15
+ initialName: typeof (builder.initialName) === 'function' ? builder.initialName({ params, queryParams }) : builder.initialName,
16
+ color: typeof (builder.color) === 'function' ? builder.color({ params, queryParams }) : builder.color
17
+ };
18
+ }
19
+ return {
20
+ name: tab.url,
21
+ initialName: tab.url[0],
22
+ };
23
+ }));
24
+ }
25
+ }
26
+ SdTabInfoPipe.decorators = [
27
+ { type: Pipe, args: [{
28
+ name: 'sdTabInfo'
29
+ },] }
30
+ ];
31
+ SdTabInfoPipe.ctorParameters = () => [
32
+ { type: SdTabRouterService }
33
+ ];
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWluZm8ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy91c2VyL0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYi1yb3V0ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL3BpcGVzL3RhYi1pbmZvLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFcEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBSXBFLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQW9CLGdCQUFvQztRQUFwQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW9CO0lBQUksQ0FBQztJQUM3RCxTQUFTLENBQUMsR0FBVTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUN4RCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbEUsSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsTUFBTSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUM7Z0JBQ3BDLE9BQU87b0JBQ0wsSUFBSSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJO29CQUNqRyxXQUFXLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVc7b0JBQzdILEtBQUssRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSztpQkFDdEcsQ0FBQzthQUNIO1lBQ0QsT0FBTztnQkFDTCxJQUFJLEVBQUUsR0FBRyxDQUFDLEdBQUc7Z0JBQ2IsV0FBVyxFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ3hCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQzs7O1lBckJGLElBQUksU0FBQztnQkFDSixJQUFJLEVBQUUsV0FBVzthQUNsQjs7O1lBSFEsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU2RUYWIsIFNkVGFiSW5mbyB9IGZyb20gJy4uL21vZGVscy90YWItcm91dGVyLm1vZGVsJztcclxuaW1wb3J0IHsgU2RUYWJSb3V0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdGFiLXJvdXRlci5zZXJ2aWNlJztcclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdzZFRhYkluZm8nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZFRhYkluZm9QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0YWJSb3V0ZXJTZXJ2aWNlOiBTZFRhYlJvdXRlclNlcnZpY2UpIHsgfVxyXG4gIHRyYW5zZm9ybSh0YWI6IFNkVGFiKTogT2JzZXJ2YWJsZTxTZFRhYkluZm8+IHtcclxuICAgIHJldHVybiB0aGlzLnRhYlJvdXRlclNlcnZpY2UuYnVpbGRlcnMucGlwZShtYXAoYnVpbGRlcnMgPT4ge1xyXG4gICAgICBjb25zdCBidWlsZGVyID0gYnVpbGRlcnMuZmluZChlID0+IGUuY29tcG9uZW50ID09PSB0YWIuY29tcG9uZW50KTtcclxuICAgICAgaWYgKGJ1aWxkZXIpIHtcclxuICAgICAgICBjb25zdCB7IHBhcmFtcywgcXVlcnlQYXJhbXMgfSA9IHRhYjtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgbmFtZTogdHlwZW9mIChidWlsZGVyLm5hbWUpID09PSAnZnVuY3Rpb24nID8gYnVpbGRlci5uYW1lKHsgcGFyYW1zLCBxdWVyeVBhcmFtcyB9KSA6IGJ1aWxkZXIubmFtZSxcclxuICAgICAgICAgIGluaXRpYWxOYW1lOiB0eXBlb2YgKGJ1aWxkZXIuaW5pdGlhbE5hbWUpID09PSAnZnVuY3Rpb24nID8gYnVpbGRlci5pbml0aWFsTmFtZSh7IHBhcmFtcywgcXVlcnlQYXJhbXMgfSkgOiBidWlsZGVyLmluaXRpYWxOYW1lLFxyXG4gICAgICAgICAgY29sb3I6IHR5cGVvZiAoYnVpbGRlci5jb2xvcikgPT09ICdmdW5jdGlvbicgPyBidWlsZGVyLmNvbG9yKHsgcGFyYW1zLCBxdWVyeVBhcmFtcyB9KSA6IGJ1aWxkZXIuY29sb3JcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgbmFtZTogdGFiLnVybCxcclxuICAgICAgICBpbml0aWFsTmFtZTogdGFiLnVybFswXSxcclxuICAgICAgfTtcclxuICAgIH0pKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,26 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { SdTabRouterService } from './tab-router.service';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./tab-router.service";
5
+ export class SdTabDecoratorService {
6
+ constructor(service) {
7
+ SdTabDecoratorService.service = service;
8
+ }
9
+ static getService() {
10
+ if (!SdTabDecoratorService.service) {
11
+ throw new Error('SdTabDecoratorService not initialized');
12
+ }
13
+ return SdTabDecoratorService.service;
14
+ }
15
+ }
16
+ SdTabDecoratorService.service = undefined;
17
+ SdTabDecoratorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SdTabDecoratorService_Factory() { return new SdTabDecoratorService(i0.ɵɵinject(i1.SdTabRouterService)); }, token: SdTabDecoratorService, providedIn: "root" });
18
+ SdTabDecoratorService.decorators = [
19
+ { type: Injectable, args: [{
20
+ providedIn: 'root'
21
+ },] }
22
+ ];
23
+ SdTabDecoratorService.ctorParameters = () => [
24
+ { type: SdTabRouterService }
25
+ ];
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWRlY29yYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL3VzZXIvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFiLXJvdXRlci8iLCJzb3VyY2VzIjpbInNyYy9saWIvc2VydmljZXMvdGFiLWRlY29yYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUkxRCxNQUFNLE9BQU8scUJBQXFCO0lBRWhDLFlBQW1CLE9BQTJCO1FBQzVDLHFCQUFxQixDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDMUMsQ0FBQztJQUNNLE1BQU0sQ0FBQyxVQUFVO1FBQ3RCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUU7WUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO1NBQzFEO1FBQ0QsT0FBTyxxQkFBcUIsQ0FBQyxPQUFPLENBQUM7SUFDdkMsQ0FBQzs7QUFUYyw2QkFBTyxHQUFtQyxTQUFTLENBQUM7OztZQUpwRSxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQUhRLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RUYWJSb3V0ZXJTZXJ2aWNlIH0gZnJvbSAnLi90YWItcm91dGVyLnNlcnZpY2UnO1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZFRhYkRlY29yYXRvclNlcnZpY2Uge1xyXG4gIHByaXZhdGUgc3RhdGljIHNlcnZpY2U6IFNkVGFiUm91dGVyU2VydmljZSB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuICBwdWJsaWMgY29uc3RydWN0b3Ioc2VydmljZTogU2RUYWJSb3V0ZXJTZXJ2aWNlKSB7XHJcbiAgICBTZFRhYkRlY29yYXRvclNlcnZpY2Uuc2VydmljZSA9IHNlcnZpY2U7XHJcbiAgfVxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0U2VydmljZSgpOiBTZFRhYlJvdXRlclNlcnZpY2Uge1xyXG4gICAgaWYgKCFTZFRhYkRlY29yYXRvclNlcnZpY2Uuc2VydmljZSkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NkVGFiRGVjb3JhdG9yU2VydmljZSBub3QgaW5pdGlhbGl6ZWQnKTtcclxuICAgIH1cclxuICAgIHJldHVybiBTZFRhYkRlY29yYXRvclNlcnZpY2Uuc2VydmljZTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,106 @@
1
+ var _currentTab, _componentBuilders;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { Injectable } from '@angular/core';
4
+ import { BehaviorSubject } from 'rxjs';
5
+ import { SdTabBase } from '../events/tab-router.event';
6
+ import { SdNotifyService } from '@sd-angular/core/notify';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@sd-angular/core/notify";
9
+ export class SdTabRouterService {
10
+ constructor(notifyService) {
11
+ this.notifyService = notifyService;
12
+ this.events = new BehaviorSubject(new SdTabBase(null));
13
+ this.actions = new BehaviorSubject(null);
14
+ this.builders = new BehaviorSubject([]);
15
+ _currentTab.set(this, null);
16
+ _componentBuilders.set(this, []);
17
+ this.addBuilder = (builder) => {
18
+ if (!__classPrivateFieldGet(this, _componentBuilders).some(e => e.component === builder.component)) {
19
+ __classPrivateFieldGet(this, _componentBuilders).push(builder);
20
+ this.builders.next(__classPrivateFieldGet(this, _componentBuilders));
21
+ }
22
+ };
23
+ // select = (tabOrKey: string | SdTab): void => {
24
+ // const tab = this.#tabs.find(e => {
25
+ // if (typeof (tabOrKey) === 'string') {
26
+ // return e.key === tabOrKey;
27
+ // }
28
+ // return e.key === tabOrKey?.key;
29
+ // });
30
+ // if (tab) {
31
+ // this.#currentTab = tab;
32
+ // }
33
+ // }
34
+ // add = (tab: SdTab): void => {
35
+ // if (!tab.key) {
36
+ // this.notifyService.notify.warning('Tab key is required');
37
+ // }
38
+ // if (!tab.component) {
39
+ // this.notifyService.notify.warning('Tab component is required');
40
+ // }
41
+ // const existedTab = this.#tabs.find(e => e.key === tab.key);
42
+ // if (!existedTab) {
43
+ // this.#tabs.push(tab);
44
+ // this.select(tab);
45
+ // } else {
46
+ // this.select(existedTab);
47
+ // }
48
+ // }
49
+ // remove = (tabOrKey: string | SdTab): void => {
50
+ // this.#tabs = this.#tabs.filter(e => {
51
+ // if (typeof (tabOrKey) === 'string') {
52
+ // return e.key !== tabOrKey;
53
+ // }
54
+ // return e.key !== tabOrKey?.key;
55
+ // });
56
+ // }
57
+ this.setCurrentTab = (tab) => {
58
+ __classPrivateFieldSet(this, _currentTab, tab);
59
+ };
60
+ this.pushEvent = (tab, Event) => {
61
+ this.events.next(new Event(tab));
62
+ };
63
+ this.setOptions = () => { };
64
+ this.close = (tab) => {
65
+ if (tab) {
66
+ this.actions.next({
67
+ type: 'close',
68
+ tab,
69
+ });
70
+ }
71
+ else if (__classPrivateFieldGet(this, _currentTab)) {
72
+ this.actions.next({
73
+ type: 'close',
74
+ tab: __classPrivateFieldGet(this, _currentTab),
75
+ });
76
+ }
77
+ };
78
+ SdTabRouterService.service = this;
79
+ }
80
+ // #tabs: SdTab[] = [];
81
+ static getService() {
82
+ if (!SdTabRouterService.service) {
83
+ throw new Error('SdTabRouterService is not initialized');
84
+ }
85
+ return SdTabRouterService.service;
86
+ }
87
+ get currentTab() {
88
+ return __classPrivateFieldGet(this, _currentTab);
89
+ }
90
+ get key() {
91
+ var _a;
92
+ return ((_a = __classPrivateFieldGet(this, _currentTab)) === null || _a === void 0 ? void 0 : _a.key) || null;
93
+ }
94
+ }
95
+ _currentTab = new WeakMap(), _componentBuilders = new WeakMap();
96
+ SdTabRouterService.service = undefined;
97
+ SdTabRouterService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SdTabRouterService_Factory() { return new SdTabRouterService(i0.ɵɵinject(i1.SdNotifyService)); }, token: SdTabRouterService, providedIn: "root" });
98
+ SdTabRouterService.decorators = [
99
+ { type: Injectable, args: [{
100
+ providedIn: 'root',
101
+ },] }
102
+ ];
103
+ SdTabRouterService.ctorParameters = () => [
104
+ { type: SdNotifyService }
105
+ ];
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXJvdXRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL3VzZXIvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFiLXJvdXRlci8iLCJzb3VyY2VzIjpbInNyYy9saWIvc2VydmljZXMvdGFiLXJvdXRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3ZDLE9BQU8sRUFBYyxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQU0xRCxNQUFNLE9BQU8sa0JBQWtCO0lBZ0I3QixZQUFvQixhQUE4QjtRQUE5QixrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUFkbEQsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFhLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDOUQsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFxQixJQUFJLENBQUMsQ0FBQztRQUN4RCxhQUFRLEdBQUcsSUFBSSxlQUFlLENBQTBCLEVBQUUsQ0FBQyxDQUFDO1FBRTVELHNCQUE0QixJQUFJLEVBQUM7UUFDakMsNkJBQThDLEVBQUUsRUFBQztRQWFqRCxlQUFVLEdBQUcsQ0FBQyxPQUE4QixFQUFFLEVBQUU7WUFDOUMsSUFBSSxDQUFDLGlEQUF3QixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDekUsaURBQXdCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLGtEQUF5QixDQUFDO2FBQzdDO1FBQ0gsQ0FBQyxDQUFBO1FBVUQsaURBQWlEO1FBQ2pELHVDQUF1QztRQUN2Qyw0Q0FBNEM7UUFDNUMsbUNBQW1DO1FBQ25DLFFBQVE7UUFDUixzQ0FBc0M7UUFDdEMsUUFBUTtRQUNSLGVBQWU7UUFDZiw4QkFBOEI7UUFDOUIsTUFBTTtRQUNOLElBQUk7UUFFSixnQ0FBZ0M7UUFDaEMsb0JBQW9CO1FBQ3BCLGdFQUFnRTtRQUNoRSxNQUFNO1FBQ04sMEJBQTBCO1FBQzFCLHNFQUFzRTtRQUN0RSxNQUFNO1FBQ04sZ0VBQWdFO1FBQ2hFLHVCQUF1QjtRQUN2Qiw0QkFBNEI7UUFDNUIsd0JBQXdCO1FBQ3hCLGFBQWE7UUFDYiwrQkFBK0I7UUFDL0IsTUFBTTtRQUNOLElBQUk7UUFFSixpREFBaUQ7UUFDakQsMENBQTBDO1FBQzFDLDRDQUE0QztRQUM1QyxtQ0FBbUM7UUFDbkMsUUFBUTtRQUNSLHNDQUFzQztRQUN0QyxRQUFRO1FBQ1IsSUFBSTtRQUVKLGtCQUFhLEdBQUcsQ0FBQyxHQUFVLEVBQVEsRUFBRTtZQUNuQyx1QkFBQSxJQUFJLGVBQWUsR0FBRyxFQUFDO1FBQ3pCLENBQUMsQ0FBQTtRQUVELGNBQVMsR0FBRyxDQUFDLEdBQVUsRUFBRSxLQUF1QixFQUFFLEVBQUU7WUFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUE7UUFFRCxlQUFVLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXZCLFVBQUssR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFO1lBQ3RCLElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO29CQUNoQixJQUFJLEVBQUUsT0FBTztvQkFDYixHQUFHO2lCQUNKLENBQUMsQ0FBQzthQUNKO2lCQUFNLCtDQUFzQjtnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7b0JBQ2hCLElBQUksRUFBRSxPQUFPO29CQUNiLEdBQUcsMkNBQWtCO2lCQUN0QixDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsQ0FBQTtRQTdFQyxrQkFBa0IsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3BDLENBQUM7SUFWRCx1QkFBdUI7SUFFaEIsTUFBTSxDQUFDLFVBQVU7UUFDdEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRTtZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7U0FDMUQ7UUFDRCxPQUFPLGtCQUFrQixDQUFDLE9BQU8sQ0FBQztJQUNwQyxDQUFDO0lBWUQsSUFBSSxVQUFVO1FBQ1osaURBQXdCO0lBQzFCLENBQUM7SUFFRCxJQUFJLEdBQUc7O1FBQ0wsT0FBTywwRkFBa0IsR0FBRyxLQUFJLElBQUksQ0FBQztJQUN2QyxDQUFDOzs7QUFoQ2MsMEJBQU8sR0FBbUMsU0FBUyxDQUFDOzs7WUFKcEUsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFMUSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU2RUYWIgfSBmcm9tICcuLi9tb2RlbHMvdGFiLXJvdXRlci5tb2RlbCc7XHJcbmltcG9ydCB7IFNkVGFiQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucy90YWItcm91dGVyLmFjdGlvbic7XHJcbmltcG9ydCB7IFNkVGFiRXZlbnQsIFNkVGFiQmFzZSB9IGZyb20gJy4uL2V2ZW50cy90YWItcm91dGVyLmV2ZW50JztcclxuaW1wb3J0IHsgU2ROb3RpZnlTZXJ2aWNlIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9ub3RpZnknO1xyXG5pbXBvcnQgeyBTZFRhYkNvbXBvbmVudEJ1aWxkZXIgfSBmcm9tICcuLi9kZWNvcmF0b3JzL3RhYi5kZWNvcmF0b3InO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkVGFiUm91dGVyU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgc2VydmljZTogU2RUYWJSb3V0ZXJTZXJ2aWNlIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xyXG4gIGV2ZW50cyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2RUYWJFdmVudD4obmV3IFNkVGFiQmFzZShudWxsKSk7XHJcbiAgYWN0aW9ucyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2RUYWJBY3Rpb24gfCBudWxsPihudWxsKTtcclxuICBidWlsZGVycyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2RUYWJDb21wb25lbnRCdWlsZGVyW10+KFtdKTtcclxuXHJcbiAgI2N1cnJlbnRUYWI6IFNkVGFiIHwgbnVsbCA9IG51bGw7XHJcbiAgI2NvbXBvbmVudEJ1aWxkZXJzOiBTZFRhYkNvbXBvbmVudEJ1aWxkZXJbXSA9IFtdO1xyXG4gIC8vICN0YWJzOiBTZFRhYltdID0gW107XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0U2VydmljZSgpOiBTZFRhYlJvdXRlclNlcnZpY2Uge1xyXG4gICAgaWYgKCFTZFRhYlJvdXRlclNlcnZpY2Uuc2VydmljZSkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NkVGFiUm91dGVyU2VydmljZSBpcyBub3QgaW5pdGlhbGl6ZWQnKTtcclxuICAgIH1cclxuICAgIHJldHVybiBTZFRhYlJvdXRlclNlcnZpY2Uuc2VydmljZTtcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBub3RpZnlTZXJ2aWNlOiBTZE5vdGlmeVNlcnZpY2UpIHtcclxuICAgIFNkVGFiUm91dGVyU2VydmljZS5zZXJ2aWNlID0gdGhpcztcclxuICB9XHJcblxyXG4gIGFkZEJ1aWxkZXIgPSAoYnVpbGRlcjogU2RUYWJDb21wb25lbnRCdWlsZGVyKSA9PiB7XHJcbiAgICBpZiAoIXRoaXMuI2NvbXBvbmVudEJ1aWxkZXJzLnNvbWUoZSA9PiBlLmNvbXBvbmVudCA9PT0gYnVpbGRlci5jb21wb25lbnQpKSB7XHJcbiAgICAgIHRoaXMuI2NvbXBvbmVudEJ1aWxkZXJzLnB1c2goYnVpbGRlcik7XHJcbiAgICAgIHRoaXMuYnVpbGRlcnMubmV4dCh0aGlzLiNjb21wb25lbnRCdWlsZGVycyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgY3VycmVudFRhYigpIHtcclxuICAgIHJldHVybiB0aGlzLiNjdXJyZW50VGFiO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGtleSgpIHtcclxuICAgIHJldHVybiB0aGlzLiNjdXJyZW50VGFiPy5rZXkgfHwgbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIHNlbGVjdCA9ICh0YWJPcktleTogc3RyaW5nIHwgU2RUYWIpOiB2b2lkID0+IHtcclxuICAvLyAgIGNvbnN0IHRhYiA9IHRoaXMuI3RhYnMuZmluZChlID0+IHtcclxuICAvLyAgICAgaWYgKHR5cGVvZiAodGFiT3JLZXkpID09PSAnc3RyaW5nJykge1xyXG4gIC8vICAgICAgIHJldHVybiBlLmtleSA9PT0gdGFiT3JLZXk7XHJcbiAgLy8gICAgIH1cclxuICAvLyAgICAgcmV0dXJuIGUua2V5ID09PSB0YWJPcktleT8ua2V5O1xyXG4gIC8vICAgfSk7XHJcbiAgLy8gICBpZiAodGFiKSB7XHJcbiAgLy8gICAgIHRoaXMuI2N1cnJlbnRUYWIgPSB0YWI7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG5cclxuICAvLyBhZGQgPSAodGFiOiBTZFRhYik6IHZvaWQgPT4ge1xyXG4gIC8vICAgaWYgKCF0YWIua2V5KSB7XHJcbiAgLy8gICAgIHRoaXMubm90aWZ5U2VydmljZS5ub3RpZnkud2FybmluZygnVGFiIGtleSBpcyByZXF1aXJlZCcpO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgaWYgKCF0YWIuY29tcG9uZW50KSB7XHJcbiAgLy8gICAgIHRoaXMubm90aWZ5U2VydmljZS5ub3RpZnkud2FybmluZygnVGFiIGNvbXBvbmVudCBpcyByZXF1aXJlZCcpO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgY29uc3QgZXhpc3RlZFRhYiA9IHRoaXMuI3RhYnMuZmluZChlID0+IGUua2V5ID09PSB0YWIua2V5KTtcclxuICAvLyAgIGlmICghZXhpc3RlZFRhYikge1xyXG4gIC8vICAgICB0aGlzLiN0YWJzLnB1c2godGFiKTtcclxuICAvLyAgICAgdGhpcy5zZWxlY3QodGFiKTtcclxuICAvLyAgIH0gZWxzZSB7XHJcbiAgLy8gICAgIHRoaXMuc2VsZWN0KGV4aXN0ZWRUYWIpO1xyXG4gIC8vICAgfVxyXG4gIC8vIH1cclxuXHJcbiAgLy8gcmVtb3ZlID0gKHRhYk9yS2V5OiBzdHJpbmcgfCBTZFRhYik6IHZvaWQgPT4ge1xyXG4gIC8vICAgdGhpcy4jdGFicyA9IHRoaXMuI3RhYnMuZmlsdGVyKGUgPT4ge1xyXG4gIC8vICAgICBpZiAodHlwZW9mICh0YWJPcktleSkgPT09ICdzdHJpbmcnKSB7XHJcbiAgLy8gICAgICAgcmV0dXJuIGUua2V5ICE9PSB0YWJPcktleTtcclxuICAvLyAgICAgfVxyXG4gIC8vICAgICByZXR1cm4gZS5rZXkgIT09IHRhYk9yS2V5Py5rZXk7XHJcbiAgLy8gICB9KTtcclxuICAvLyB9XHJcblxyXG4gIHNldEN1cnJlbnRUYWIgPSAodGFiOiBTZFRhYik6IHZvaWQgPT4ge1xyXG4gICAgdGhpcy4jY3VycmVudFRhYiA9IHRhYjtcclxuICB9XHJcblxyXG4gIHB1c2hFdmVudCA9ICh0YWI6IFNkVGFiLCBFdmVudDogVHlwZTxTZFRhYkV2ZW50PikgPT4ge1xyXG4gICAgdGhpcy5ldmVudHMubmV4dChuZXcgRXZlbnQodGFiKSk7XHJcbiAgfVxyXG5cclxuICBzZXRPcHRpb25zID0gKCkgPT4geyB9O1xyXG5cclxuICBjbG9zZSA9ICh0YWI/OiBTZFRhYikgPT4ge1xyXG4gICAgaWYgKHRhYikge1xyXG4gICAgICB0aGlzLmFjdGlvbnMubmV4dCh7XHJcbiAgICAgICAgdHlwZTogJ2Nsb3NlJyxcclxuICAgICAgICB0YWIsXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLiNjdXJyZW50VGFiKSB7XHJcbiAgICAgIHRoaXMuYWN0aW9ucy5uZXh0KHtcclxuICAgICAgICB0eXBlOiAnY2xvc2UnLFxyXG4gICAgICAgIHRhYjogdGhpcy4jY3VycmVudFRhYixcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { RouterModule } from '@angular/router';
3
+ import { CommonModule } from '@angular/common';
4
+ import { MatIconModule } from '@angular/material/icon';
5
+ import { MatTooltipModule } from '@angular/material/tooltip';
6
+ import { SdTabRouterItemComponent } from './components/tab-router-item/tab-router-item.component';
7
+ import { SdTabRouterNavComponent } from './components/tab-router-nav/tab-router-nav.component';
8
+ import { SdTabRouterOutletComponent } from './components/tab-router-outlet/tab-router-outlet.component';
9
+ import { SdTabInfoPipe } from './pipes/tab-info.pipe';
10
+ export class SdTabRouterModule {
11
+ }
12
+ SdTabRouterModule.decorators = [
13
+ { type: NgModule, args: [{
14
+ declarations: [
15
+ SdTabRouterItemComponent,
16
+ SdTabRouterNavComponent,
17
+ SdTabRouterOutletComponent,
18
+ SdTabInfoPipe,
19
+ ],
20
+ imports: [RouterModule, CommonModule, MatIconModule, MatTooltipModule],
21
+ exports: [
22
+ SdTabRouterItemComponent,
23
+ SdTabRouterNavComponent,
24
+ SdTabRouterOutletComponent,
25
+ ],
26
+ providers: [],
27
+ },] }
28
+ ];
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXJvdXRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvdXNlci9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWItcm91dGVyLyIsInNvdXJjZXMiOlsic3JjL2xpYi90YWItcm91dGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQWlCdEQsTUFBTSxPQUFPLGlCQUFpQjs7O1lBZjdCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUU7b0JBQ1osd0JBQXdCO29CQUN4Qix1QkFBdUI7b0JBQ3ZCLDBCQUEwQjtvQkFDMUIsYUFBYTtpQkFDZDtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQztnQkFDdEUsT0FBTyxFQUFFO29CQUNQLHdCQUF3QjtvQkFDeEIsdUJBQXVCO29CQUN2QiwwQkFBMEI7aUJBQzNCO2dCQUNELFNBQVMsRUFBRSxFQUFFO2FBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuXHJcbmltcG9ydCB7IFNkVGFiUm91dGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWItcm91dGVyLWl0ZW0vdGFiLXJvdXRlci1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNkVGFiUm91dGVyTmF2Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYi1yb3V0ZXItbmF2L3RhYi1yb3V0ZXItbmF2LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNkVGFiUm91dGVyT3V0bGV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYi1yb3V0ZXItb3V0bGV0L3RhYi1yb3V0ZXItb3V0bGV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNkVGFiSW5mb1BpcGUgfSBmcm9tICcuL3BpcGVzL3RhYi1pbmZvLnBpcGUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNkVGFiUm91dGVySXRlbUNvbXBvbmVudCxcclxuICAgIFNkVGFiUm91dGVyTmF2Q29tcG9uZW50LFxyXG4gICAgU2RUYWJSb3V0ZXJPdXRsZXRDb21wb25lbnQsXHJcbiAgICBTZFRhYkluZm9QaXBlLFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZSwgQ29tbW9uTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRUb29sdGlwTW9kdWxlXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTZFRhYlJvdXRlckl0ZW1Db21wb25lbnQsXHJcbiAgICBTZFRhYlJvdXRlck5hdkNvbXBvbmVudCxcclxuICAgIFNkVGFiUm91dGVyT3V0bGV0Q29tcG9uZW50LFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkVGFiUm91dGVyTW9kdWxlIHt9XHJcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ /*
2
+ * Public API Surface of superdev-angular-core
3
+ */
4
+ // Models
5
+ export * from './lib/models/tab-router.model';
6
+ export * from './lib/events/tab-router.event';
7
+ export * from './lib/actions/tab-router.action';
8
+ // Decorators
9
+ export * from './lib/decorators/tab.decorator';
10
+ // Service
11
+ export * from './lib/services/tab-router.service';
12
+ // Components
13
+ export * from './lib/components/tab-router-item/tab-router-item.component';
14
+ export * from './lib/components/tab-router-nav/tab-router-nav.component';
15
+ export * from './lib/components/tab-router-outlet/tab-router-outlet.component';
16
+ // Module
17
+ export * from './lib/tab-router.module';
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy91c2VyL0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYi1yb3V0ZXIvIiwic291cmNlcyI6WyJzcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILFNBQVM7QUFDVCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUVoRCxhQUFhO0FBQ2IsY0FBYyxnQ0FBZ0MsQ0FBQztBQUUvQyxVQUFVO0FBQ1YsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxhQUFhO0FBQ2IsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsZ0VBQWdFLENBQUM7QUFFL0UsU0FBUztBQUNULGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygc3VwZXJkZXYtYW5ndWxhci1jb3JlXHJcbiAqL1xyXG5cclxuLy8gTW9kZWxzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90YWItcm91dGVyLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZXZlbnRzL3RhYi1yb3V0ZXIuZXZlbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zL3RhYi1yb3V0ZXIuYWN0aW9uJztcclxuXHJcbi8vIERlY29yYXRvcnNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGVjb3JhdG9ycy90YWIuZGVjb3JhdG9yJztcclxuXHJcbi8vIFNlcnZpY2VcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdGFiLXJvdXRlci5zZXJ2aWNlJztcclxuXHJcbi8vIENvbXBvbmVudHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90YWItcm91dGVyLWl0ZW0vdGFiLXJvdXRlci1pdGVtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGFiLXJvdXRlci1uYXYvdGFiLXJvdXRlci1uYXYuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90YWItcm91dGVyLW91dGxldC90YWItcm91dGVyLW91dGxldC5jb21wb25lbnQnO1xyXG5cclxuLy8gTW9kdWxlXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhYi1yb3V0ZXIubW9kdWxlJztcclxuIl19
@@ -240,6 +240,7 @@ class SdEditor {
240
240
  }
241
241
  set model(val) {
242
242
  __classPrivateFieldSet(this, _model, val);
243
+ this.modelHTML = val;
243
244
  this.formControl.setValue(__classPrivateFieldGet(this, _model), {
244
245
  emitEvent: false,
245
246
  onlySelf: true