@design-factory/design-factory 15.2.2 → 15.2.3
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/esm2022/lib/angular/sidenav/sidenavlist.component.mjs +12 -3
- package/esm2022/lib/angular/tooltip/truncate/tooltipTruncate.directive.mjs +3 -5
- package/esm2022/lib/angular/utils/html-element-helper.mjs +8 -0
- package/esm2022/lib/angular/utils/titleTruncate.directive.mjs +39 -0
- package/esm2022/lib/index.mjs +3 -1
- package/fesm2022/design-factory.mjs +56 -7
- package/fesm2022/design-factory.mjs.map +1 -1
- package/lib/angular/tooltip/truncate/tooltipTruncate.directive.d.ts +0 -1
- package/lib/angular/utils/html-element-helper.d.ts +5 -0
- package/lib/angular/utils/titleTruncate.directive.d.ts +16 -0
- package/lib/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@ import { RouterModule } from '@angular/router';
|
|
|
6
6
|
import { DfMediaModule } from '../mediaqueries/media.module';
|
|
7
7
|
import { DfSideNavCollapseModule } from './dfSideNavCollapse.module';
|
|
8
8
|
import { DfManageSideNavDirective } from './manage-sidenav.directive';
|
|
9
|
+
import { DfTitleTruncateDirective } from '../utils/titleTruncate.directive';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
import * as i1 from "@angular/common";
|
|
11
12
|
import * as i2 from "@ng-bootstrap/ng-bootstrap";
|
|
@@ -31,11 +32,19 @@ export class DfSideNavListComponent {
|
|
|
31
32
|
return `df-sidenav-id-${uniqueId};`;
|
|
32
33
|
}
|
|
33
34
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfSideNavListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfSideNavListComponent, isStandalone: true, selector: "df-sidenavlist", inputs: { items: "items", tplIcon: "tplIcon", tplItem: "tplItem", currentItem: "currentItem", id: "id" }, ngImport: i0, template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfSideNavListComponent, isStandalone: true, selector: "df-sidenavlist", inputs: { items: "items", tplIcon: "tplIcon", tplItem: "tplItem", currentItem: "currentItem", id: "id" }, ngImport: i0, template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n <span\n class=\"ms-3\"\n [class.icon-chevron-down]=\"item.isCollapsed\"\n [class.icon-chevron-up]=\"!item.isCollapsed\"\n ></span>\n <!-- put the chevron as icon directly in the menu -->\n <!-- todo the icon and the minimized -->\n </button>\n <!-- we don't pass the icons as they are not suppose to have ones ??-->\n <df-sidenavlist\n [items]=\"item.subMenus ?? []\"\n [tplItem]=\"tplItem\"\n [currentItem]=\"item\"\n [id]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n ></df-sidenavlist>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSubMenus\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n <ng-template #elseSubMenus>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfSideNavItemContent>\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon me-5\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.actionButton\">\n <ng-template #dfSideNavItemButton>\n <button\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n (click)=\"sideNavService.activeItem(item)\"\n [class.active]=\"item.isActive\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </button>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseAction\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n <ng-template #elseAction>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfRouterTemplate>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n routerLinkActive=\"active\"\n routerLink=\"{{ item.value }}\"\n ariaCurrentWhenActive=\"page\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.routerLink\">\n <ng-container *ngIf=\"!item.breakpoints; else elseRouterLink\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n <ng-template #elseRouterLink>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.separator\">\n <ng-template #dfSeparatorTmp>\n <hr class=\"spacing-01\" />\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSeparator\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n <ng-template #elseSeparator>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.template\">\n <ng-template\n *ngIf=\"tplItem\"\n [ngTemplateOutlet]=\"tplItem.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.title\">\n <ng-template #dfTitleTmp>\n <div class=\"df-sidenav-item df-sidenav-title d-flex align-items-center flex-grow-1\">\n <span class=\"text-nowrap text-uppercase text-muted\" dfTitleTruncate>{{ item.title }}</span>\n </div>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseTitle\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n <ng-template #elseTitle>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <ng-template #dfLinkDefaultTmp>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n href=\"{{ item.value }}\"\n [class.active]=\"item.isActive && item.type === sideNavService.type.link\"\n [attr.target]=\"item.type === sideNavService.type.externalLink ? '_blank' : ''\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseDefault\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n <ng-template #elseDefault>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n </li>\n</ul>\n", dependencies: [{ kind: "component", type: DfSideNavListComponent, selector: "df-sidenavlist", inputs: ["items", "tplIcon", "tplItem", "currentItem", "id"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: NgbCollapseModule }, { kind: "directive", type: i2.NgbCollapse, selector: "[ngbCollapse]", inputs: ["animation", "ngbCollapse", "horizontal"], outputs: ["ngbCollapseChange", "shown", "hidden"], exportAs: ["ngbCollapse"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "ngmodule", type: DfMediaModule }, { kind: "directive", type: i4.DfIfMediaDirective, selector: "[dfIfMedia]", inputs: ["dfIfMedia"] }, { kind: "ngmodule", type: DfSideNavCollapseModule }, { kind: "directive", type: DfManageSideNavDirective, selector: "[dfManageSideNav]" }, { kind: "directive", type: DfTitleTruncateDirective, selector: "[dfTitleTruncate]", exportAs: ["dfTitleTruncate"] }] }); }
|
|
35
36
|
}
|
|
36
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfSideNavListComponent, decorators: [{
|
|
37
38
|
type: Component,
|
|
38
|
-
args: [{ selector: 'df-sidenavlist', standalone: true, imports: [
|
|
39
|
+
args: [{ selector: 'df-sidenavlist', standalone: true, imports: [
|
|
40
|
+
CommonModule,
|
|
41
|
+
NgbCollapseModule,
|
|
42
|
+
RouterModule,
|
|
43
|
+
DfMediaModule,
|
|
44
|
+
DfSideNavCollapseModule,
|
|
45
|
+
DfManageSideNavDirective,
|
|
46
|
+
DfTitleTruncateDirective
|
|
47
|
+
], template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n <span\n class=\"ms-3\"\n [class.icon-chevron-down]=\"item.isCollapsed\"\n [class.icon-chevron-up]=\"!item.isCollapsed\"\n ></span>\n <!-- put the chevron as icon directly in the menu -->\n <!-- todo the icon and the minimized -->\n </button>\n <!-- we don't pass the icons as they are not suppose to have ones ??-->\n <df-sidenavlist\n [items]=\"item.subMenus ?? []\"\n [tplItem]=\"tplItem\"\n [currentItem]=\"item\"\n [id]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n ></df-sidenavlist>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSubMenus\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n <ng-template #elseSubMenus>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfSideNavItemContent>\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon me-5\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.actionButton\">\n <ng-template #dfSideNavItemButton>\n <button\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n (click)=\"sideNavService.activeItem(item)\"\n [class.active]=\"item.isActive\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </button>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseAction\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n <ng-template #elseAction>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfRouterTemplate>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n routerLinkActive=\"active\"\n routerLink=\"{{ item.value }}\"\n ariaCurrentWhenActive=\"page\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.routerLink\">\n <ng-container *ngIf=\"!item.breakpoints; else elseRouterLink\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n <ng-template #elseRouterLink>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.separator\">\n <ng-template #dfSeparatorTmp>\n <hr class=\"spacing-01\" />\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSeparator\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n <ng-template #elseSeparator>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.template\">\n <ng-template\n *ngIf=\"tplItem\"\n [ngTemplateOutlet]=\"tplItem.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.title\">\n <ng-template #dfTitleTmp>\n <div class=\"df-sidenav-item df-sidenav-title d-flex align-items-center flex-grow-1\">\n <span class=\"text-nowrap text-uppercase text-muted\" dfTitleTruncate>{{ item.title }}</span>\n </div>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseTitle\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n <ng-template #elseTitle>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <ng-template #dfLinkDefaultTmp>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n href=\"{{ item.value }}\"\n [class.active]=\"item.isActive && item.type === sideNavService.type.link\"\n [attr.target]=\"item.type === sideNavService.type.externalLink ? '_blank' : ''\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseDefault\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n <ng-template #elseDefault>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n </li>\n</ul>\n" }]
|
|
39
48
|
}], propDecorators: { items: [{
|
|
40
49
|
type: Input
|
|
41
50
|
}], tplIcon: [{
|
|
@@ -47,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
|
|
|
47
56
|
}], id: [{
|
|
48
57
|
type: Input
|
|
49
58
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdmxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdmxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdmxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR3JFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFFdEUsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBRWpCOzs7Ozs7OztHQVFHO0FBT0gsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQVlFLHVCQUFrQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2xELG1CQUFjLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7S0FNM0M7SUFKQyxxQkFBcUI7UUFDbkIsUUFBUSxFQUFFLENBQUE7UUFDVixPQUFPLGlCQUFpQixRQUFRLEdBQUcsQ0FBQTtJQUNyQyxDQUFDOzhHQVpVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLG9MQzVCbkMscXhOQXlKQSw0Q0Q3SGEsc0JBQXNCLHdIQUZ2QixZQUFZLGtyQkFBRSxpQkFBaUIsd09BQUUsWUFBWSx3ZUFBRSxhQUFhLGtJQUFFLHVCQUF1QiwrQkFBRSx3QkFBd0I7OzJGQUU5RyxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBRWQsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsdUJBQXVCLEVBQUUsd0JBQXdCLENBQUM7OEJBR2pILEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csRUFBRTtzQkFBVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERmU2lkZU5hdlNlcnZpY2UgfSBmcm9tICcuL3NpZGVuYXYuc2VydmljZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdiQ29sbGFwc2VNb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRGZNZWRpYU1vZHVsZSB9IGZyb20gJy4uL21lZGlhcXVlcmllcy9tZWRpYS5tb2R1bGUnO1xuaW1wb3J0IHsgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUgfSBmcm9tICcuL2RmU2lkZU5hdkNvbGxhcHNlLm1vZHVsZSc7XG5pbXBvcnQgdHlwZSB7IERmU2lkZU5hdkl0ZW0gfSBmcm9tICcuL3NpZGVuYXYuc2VydmljZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZJY29uRGlyZWN0aXZlLCBEZlNpZGVOYXZJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9zaWRlbmF2LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZk1hbmFnZVNpZGVOYXZEaXJlY3RpdmUgfSBmcm9tICcuL21hbmFnZS1zaWRlbmF2LmRpcmVjdGl2ZSc7XG5cbmxldCB1bmlxdWVJZCA9IDA7XG5cbi8qKlxuICogU2lkZU5hdiBpcyBhIGNvbXBvbmVudCB0byBwcm92aWRlIG5hdmlnYXRpb24gZmVhdHVyZSB3aXRoIGEgcGFuZWwgb24gdGhlIHNpZGUgb2YgeW91ciBwYWdlXG4gKlxuICogSXQgc3VwcG9ydHMgc2V2ZXJhbCBvcHRpb25zIGFzOlxuICogIC0gQmVpbmcgaW4gYW4gb3ZlcmxheSBtZW51IG9yIG5vdFxuICogIC0gQmVpbmcgY29sbGFwc2VkIG9yIG5vdFxuICogIC0gQ2FuIGJlIHVzZWQgd2l0aCBvciB3aXRob3V0IEFuZ3VsYXIgUm91dGVyXG4gKiAgLSBDYW4gYmUgdXNlZCB3aXRoIG1lZGlhIHF1ZXJpZXMgdG8gYWRqdXN0IGJlaGF2aW9yIHRvIGRpZmZlcmVudCBicmVha3BvaW50cyAoc2VlIG1lZGlhIHNlY3Rpb24pXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RmLXNpZGVuYXZsaXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXZsaXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTmdiQ29sbGFwc2VNb2R1bGUsIFJvdXRlck1vZHVsZSwgRGZNZWRpYU1vZHVsZSwgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUsIERmTWFuYWdlU2lkZU5hdkRpcmVjdGl2ZV1cbn0pXG5leHBvcnQgY2xhc3MgRGZTaWRlTmF2TGlzdENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGl0ZW1zICE6IERmU2lkZU5hdkl0ZW1bXTtcbiAgQElucHV0KCkgdHBsSWNvbiAhOiBEZlNpZGVOYXZJY29uRGlyZWN0aXZlO1xuICBASW5wdXQoKSB0cGxJdGVtICE6IERmU2lkZU5hdkl0ZW1EaXJlY3RpdmU7XG4gIEBJbnB1dCgpIGN1cnJlbnRJdGVtIDogRGZTaWRlTmF2SXRlbSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgaWQgOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGNvbnRyb2xsZWRVbmlxdWVJZCA9IHRoaXMuZ2V0Q29udHJvbGxlZFVuaXF1ZUlkKCk7XG4gIHNpZGVOYXZTZXJ2aWNlID0gaW5qZWN0KERmU2lkZU5hdlNlcnZpY2UpO1xuXG4gIGdldENvbnRyb2xsZWRVbmlxdWVJZCgpIDogc3RyaW5nIHsgXG4gICAgdW5pcXVlSWQrK1xuICAgIHJldHVybiBgZGYtc2lkZW5hdi1pZC0ke3VuaXF1ZUlkfTtgXG4gIH1cbn1cbiIsIjx1bCBjbGFzcz1cImRmLXNpZGVuYXYtbGlzdFwiIFtuZ2JDb2xsYXBzZV09XCJjdXJyZW50SXRlbT8uaXNDb2xsYXBzZWQgPz8gZmFsc2VcIiBbYXR0ci5pZF09XCJpZFwiPlxuICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpID0gaW5kZXhcIiBbbmdTd2l0Y2hdPVwiaXRlbS50eXBlXCIgZGZNYW5hZ2VTaWRlTmF2PlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUuc3ViTWVudXNcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjc3ViTWVudXM+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImRmLXNpZGVuYXYtaXRlbSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAoY2xpY2spPVwic2lkZU5hdlNlcnZpY2UudG9nZ2xlKGl0ZW0pXCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIiFpdGVtLmlzQ29sbGFwc2VkXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cIidzaWRlbmF2Q29udHJvbCcgKyBjb250cm9sbGVkVW5pcXVlSWQudG9TdHJpbmcoKSArICctJyArIGlcIlxuICAgICAgICAgIFtjbGFzcy5kZi1zaWRlbmF2LWl0ZW0td2l0aGljb25dPVwiaXRlbS5pY29uXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgKm5nSWY9XCJ0cGxJY29uICYmIGl0ZW0uaWNvbjsgZWxzZSBlbHNlSWNvblwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cGxJY29uLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSB9XCJcbiAgICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2Vsc2VJY29uPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpdGVtLmljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzcz1cInt7IGl0ZW0uaWNvbiB9fSBkZi1zaWRlbmF2LWljb25cIj48L3NwYW4+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImZsZXgtZ3Jvdy0xIHRleHQtbm93cmFwIHRleHQtdHJ1bmNhdGVcIj57eyBpdGVtLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cIm1zLTNcIlxuICAgICAgICAgICAgW2NsYXNzLmljb24tY2hldnJvbi1kb3duXT1cIml0ZW0uaXNDb2xsYXBzZWRcIlxuICAgICAgICAgICAgW2NsYXNzLmljb24tY2hldnJvbi11cF09XCIhaXRlbS5pc0NvbGxhcHNlZFwiXG4gICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICA8IS0tIHB1dCB0aGUgY2hldnJvbiBhcyBpY29uIGRpcmVjdGx5IGluIHRoZSBtZW51IC0tPlxuICAgICAgICAgIDwhLS0gdG9kbyB0aGUgaWNvbiBhbmQgdGhlIG1pbmltaXplZCAtLT5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwhLS0gd2UgZG9uJ3QgcGFzcyB0aGUgaWNvbnMgYXMgdGhleSBhcmUgbm90IHN1cHBvc2UgdG8gaGF2ZSBvbmVzID8/LS0+XG4gICAgICAgIDxkZi1zaWRlbmF2bGlzdFxuICAgICAgICAgIFtpdGVtc109XCJpdGVtLnN1Yk1lbnVzID8/IFtdXCJcbiAgICAgICAgICBbdHBsSXRlbV09XCJ0cGxJdGVtXCJcbiAgICAgICAgICBbY3VycmVudEl0ZW1dPVwiaXRlbVwiXG4gICAgICAgICAgW2lkXT1cIidzaWRlbmF2Q29udHJvbCcgKyBjb250cm9sbGVkVW5pcXVlSWQudG9TdHJpbmcoKSArICctJyArIGlcIlxuICAgICAgICA+PC9kZi1zaWRlbmF2bGlzdD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYnJlYWtwb2ludHM7IGVsc2UgZWxzZVN1Yk1lbnVzXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzdWJNZW51c1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VTdWJNZW51cz5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGZJZk1lZGlhPVwiaXRlbS5icmVha3BvaW50cyFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic3ViTWVudXNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZGZTaWRlTmF2SXRlbUNvbnRlbnQ+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgKm5nSWY9XCJ0cGxJY29uICYmIGl0ZW0uaWNvbjsgZWxzZSBlbHNlSWNvblwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRwbEljb24udGVtcGxhdGVSZWZcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0gfVwiXG4gICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUljb24+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgY2xhc3M9XCJ7eyBpdGVtLmljb24gfX0gZGYtc2lkZW5hdi1pY29uIG1lLTVcIj48L3NwYW4+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPHNwYW4gY2xhc3M9XCJmbGV4LWdyb3ctMSB0ZXh0LW5vd3JhcCB0ZXh0LXRydW5jYXRlXCI+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUuYWN0aW9uQnV0dG9uXCI+XG4gICAgICA8bmctdGVtcGxhdGUgI2RmU2lkZU5hdkl0ZW1CdXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImRmLXNpZGVuYXYtaXRlbSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtbm93cmFwXCJcbiAgICAgICAgICAoY2xpY2spPVwic2lkZU5hdlNlcnZpY2UuYWN0aXZlSXRlbShpdGVtKVwiXG4gICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpdGVtLmlzQWN0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlNpZGVOYXZJdGVtQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYnJlYWtwb2ludHM7IGVsc2UgZWxzZUFjdGlvblwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTaWRlTmF2SXRlbUJ1dHRvblwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VBY3Rpb24+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRmSWZNZWRpYT1cIml0ZW0uYnJlYWtwb2ludHMhXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2lkZU5hdkl0ZW1CdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZGZSb3V0ZXJUZW1wbGF0ZT5cbiAgICAgIDxhXG4gICAgICAgIGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ub3dyYXBcIlxuICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcbiAgICAgICAgcm91dGVyTGluaz1cInt7IGl0ZW0udmFsdWUgfX1cIlxuICAgICAgICBhcmlhQ3VycmVudFdoZW5BY3RpdmU9XCJwYWdlXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2lkZU5hdkl0ZW1Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJzaWRlTmF2U2VydmljZS50eXBlLnJvdXRlckxpbmtcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5icmVha3BvaW50czsgZWxzZSBlbHNlUm91dGVyTGlua1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZSb3V0ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VSb3V0ZXJMaW5rPlxuICAgICAgICA8bmctY29udGFpbmVyICpkZklmTWVkaWE9XCJpdGVtLmJyZWFrcG9pbnRzIVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlJvdXRlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJzaWRlTmF2U2VydmljZS50eXBlLnNlcGFyYXRvclwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNkZlNlcGFyYXRvclRtcD5cbiAgICAgICAgPGhyIGNsYXNzPVwic3BhY2luZy0wMVwiIC8+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VTZXBhcmF0b3JcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2VwYXJhdG9yVG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVNlcGFyYXRvcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGZJZk1lZGlhPVwiaXRlbS5icmVha3BvaW50cyFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTZXBhcmF0b3JUbXBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUudGVtcGxhdGVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAqbmdJZj1cInRwbEl0ZW1cIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cGxJdGVtLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwic2lkZU5hdlNlcnZpY2UudHlwZS50aXRsZVwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNkZlRpdGxlVG1wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGRmLXNpZGVuYXYtdGl0bGUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWdyb3ctMVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1ub3dyYXAgdGV4dC10cnVuY2F0ZSB0ZXh0LXVwcGVyY2FzZSB0ZXh0LW11dGVkXCI+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VUaXRsZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZUaXRsZVRtcFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VUaXRsZT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGZJZk1lZGlhPVwiaXRlbS5icmVha3BvaW50cyFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZUaXRsZVRtcFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PlxuICAgICAgPG5nLXRlbXBsYXRlICNkZkxpbmtEZWZhdWx0VG1wPlxuICAgICAgICA8YVxuICAgICAgICAgIGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ub3dyYXBcIlxuICAgICAgICAgIGhyZWY9XCJ7eyBpdGVtLnZhbHVlIH19XCJcbiAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cIml0ZW0uaXNBY3RpdmUgJiYgaXRlbS50eXBlID09PSBzaWRlTmF2U2VydmljZS50eXBlLmxpbmtcIlxuICAgICAgICAgIFthdHRyLnRhcmdldF09XCJpdGVtLnR5cGUgPT09IHNpZGVOYXZTZXJ2aWNlLnR5cGUuZXh0ZXJuYWxMaW5rID8gJ19ibGFuaycgOiAnJ1wiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTaWRlTmF2SXRlbUNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5icmVha3BvaW50czsgZWxzZSBlbHNlRGVmYXVsdFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZMaW5rRGVmYXVsdFRtcFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VEZWZhdWx0PlxuICAgICAgICA8bmctY29udGFpbmVyICpkZklmTWVkaWE9XCJpdGVtLmJyZWFrcG9pbnRzIVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZkxpbmtEZWZhdWx0VG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9saT5cbjwvdWw+XG4iXX0=
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdmxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdmxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdmxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR3JFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFFNUUsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBRWpCOzs7Ozs7OztHQVFHO0FBZUgsTUFBTSxPQUFPLHNCQUFzQjtJQWRuQztRQW9CRSx1QkFBa0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNsRCxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0tBTTNDO0lBSkMscUJBQXFCO1FBQ25CLFFBQVEsRUFBRSxDQUFDO1FBQ1gsT0FBTyxpQkFBaUIsUUFBUSxHQUFHLENBQUM7SUFDdEMsQ0FBQzs4R0FaVSxzQkFBc0I7a0dBQXRCLHNCQUFzQixvTENyQ25DLDJ4TkF5SkEsNENEcEhhLHNCQUFzQix3SEFUL0IsWUFBWSxrckJBQ1osaUJBQWlCLHdPQUNqQixZQUFZLHdlQUNaLGFBQWEsa0lBQ2IsdUJBQXVCLCtCQUN2Qix3QkFBd0IsOERBQ3hCLHdCQUF3Qjs7MkZBR2Ysc0JBQXNCO2tCQWRsQyxTQUFTOytCQUNFLGdCQUFnQixjQUVkLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7cUJBQ3pCOzhCQUdRLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csRUFBRTtzQkFBVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZTZXJ2aWNlIH0gZnJvbSAnLi9zaWRlbmF2LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nYkNvbGxhcHNlTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IERmTWVkaWFNb2R1bGUgfSBmcm9tICcuLi9tZWRpYXF1ZXJpZXMvbWVkaWEubW9kdWxlJztcbmltcG9ydCB7IERmU2lkZU5hdkNvbGxhcHNlTW9kdWxlIH0gZnJvbSAnLi9kZlNpZGVOYXZDb2xsYXBzZS5tb2R1bGUnO1xuaW1wb3J0IHR5cGUgeyBEZlNpZGVOYXZJdGVtIH0gZnJvbSAnLi9zaWRlbmF2LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGZTaWRlTmF2SWNvbkRpcmVjdGl2ZSwgRGZTaWRlTmF2SXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vc2lkZW5hdi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGZNYW5hZ2VTaWRlTmF2RGlyZWN0aXZlIH0gZnJvbSAnLi9tYW5hZ2Utc2lkZW5hdi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGZUaXRsZVRydW5jYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi4vdXRpbHMvdGl0bGVUcnVuY2F0ZS5kaXJlY3RpdmUnO1xuXG5sZXQgdW5pcXVlSWQgPSAwO1xuXG4vKipcbiAqIFNpZGVOYXYgaXMgYSBjb21wb25lbnQgdG8gcHJvdmlkZSBuYXZpZ2F0aW9uIGZlYXR1cmUgd2l0aCBhIHBhbmVsIG9uIHRoZSBzaWRlIG9mIHlvdXIgcGFnZVxuICpcbiAqIEl0IHN1cHBvcnRzIHNldmVyYWwgb3B0aW9ucyBhczpcbiAqICAtIEJlaW5nIGluIGFuIG92ZXJsYXkgbWVudSBvciBub3RcbiAqICAtIEJlaW5nIGNvbGxhcHNlZCBvciBub3RcbiAqICAtIENhbiBiZSB1c2VkIHdpdGggb3Igd2l0aG91dCBBbmd1bGFyIFJvdXRlclxuICogIC0gQ2FuIGJlIHVzZWQgd2l0aCBtZWRpYSBxdWVyaWVzIHRvIGFkanVzdCBiZWhhdmlvciB0byBkaWZmZXJlbnQgYnJlYWtwb2ludHMgKHNlZSBtZWRpYSBzZWN0aW9uKVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZi1zaWRlbmF2bGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlbmF2bGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTmdiQ29sbGFwc2VNb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIERmTWVkaWFNb2R1bGUsXG4gICAgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUsXG4gICAgRGZNYW5hZ2VTaWRlTmF2RGlyZWN0aXZlLFxuICAgIERmVGl0bGVUcnVuY2F0ZURpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERmU2lkZU5hdkxpc3RDb21wb25lbnQge1xuICBASW5wdXQoKSBpdGVtcyE6IERmU2lkZU5hdkl0ZW1bXTtcbiAgQElucHV0KCkgdHBsSWNvbiE6IERmU2lkZU5hdkljb25EaXJlY3RpdmU7XG4gIEBJbnB1dCgpIHRwbEl0ZW0hOiBEZlNpZGVOYXZJdGVtRGlyZWN0aXZlO1xuICBASW5wdXQoKSBjdXJyZW50SXRlbTogRGZTaWRlTmF2SXRlbSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29udHJvbGxlZFVuaXF1ZUlkID0gdGhpcy5nZXRDb250cm9sbGVkVW5pcXVlSWQoKTtcbiAgc2lkZU5hdlNlcnZpY2UgPSBpbmplY3QoRGZTaWRlTmF2U2VydmljZSk7XG5cbiAgZ2V0Q29udHJvbGxlZFVuaXF1ZUlkKCk6IHN0cmluZyB7XG4gICAgdW5pcXVlSWQrKztcbiAgICByZXR1cm4gYGRmLXNpZGVuYXYtaWQtJHt1bmlxdWVJZH07YDtcbiAgfVxufVxuIiwiPHVsIGNsYXNzPVwiZGYtc2lkZW5hdi1saXN0XCIgW25nYkNvbGxhcHNlXT1cImN1cnJlbnRJdGVtPy5pc0NvbGxhcHNlZCA/PyBmYWxzZVwiIFthdHRyLmlkXT1cImlkXCI+XG4gIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgbGV0IGkgPSBpbmRleFwiIFtuZ1N3aXRjaF09XCJpdGVtLnR5cGVcIiBkZk1hbmFnZVNpZGVOYXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwic2lkZU5hdlNlcnZpY2UudHlwZS5zdWJNZW51c1wiPlxuICAgICAgPG5nLXRlbXBsYXRlICNzdWJNZW51cz5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgIChjbGljayk9XCJzaWRlTmF2U2VydmljZS50b2dnbGUoaXRlbSlcIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiIWl0ZW0uaXNDb2xsYXBzZWRcIlxuICAgICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiJ3NpZGVuYXZDb250cm9sJyArIGNvbnRyb2xsZWRVbmlxdWVJZC50b1N0cmluZygpICsgJy0nICsgaVwiXG4gICAgICAgICAgW2NsYXNzLmRmLXNpZGVuYXYtaXRlbS13aXRoaWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAqbmdJZj1cInRwbEljb24gJiYgaXRlbS5pY29uOyBlbHNlIGVsc2VJY29uXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRwbEljb24udGVtcGxhdGVSZWZcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUljb24+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0uaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGNsYXNzPVwie3sgaXRlbS5pY29uIH19IGRmLXNpZGVuYXYtaWNvblwiPjwvc3Bhbj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC1ncm93LTEgdGV4dC1ub3dyYXBcIiBkZlRpdGxlVHJ1bmNhdGU+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJtcy0zXCJcbiAgICAgICAgICAgIFtjbGFzcy5pY29uLWNoZXZyb24tZG93bl09XCJpdGVtLmlzQ29sbGFwc2VkXCJcbiAgICAgICAgICAgIFtjbGFzcy5pY29uLWNoZXZyb24tdXBdPVwiIWl0ZW0uaXNDb2xsYXBzZWRcIlxuICAgICAgICAgID48L3NwYW4+XG4gICAgICAgICAgPCEtLSBwdXQgdGhlIGNoZXZyb24gYXMgaWNvbiBkaXJlY3RseSBpbiB0aGUgbWVudSAtLT5cbiAgICAgICAgICA8IS0tIHRvZG8gdGhlIGljb24gYW5kIHRoZSBtaW5pbWl6ZWQgLS0+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8IS0tIHdlIGRvbid0IHBhc3MgdGhlIGljb25zIGFzIHRoZXkgYXJlIG5vdCBzdXBwb3NlIHRvIGhhdmUgb25lcyA/Py0tPlxuICAgICAgICA8ZGYtc2lkZW5hdmxpc3RcbiAgICAgICAgICBbaXRlbXNdPVwiaXRlbS5zdWJNZW51cyA/PyBbXVwiXG4gICAgICAgICAgW3RwbEl0ZW1dPVwidHBsSXRlbVwiXG4gICAgICAgICAgW2N1cnJlbnRJdGVtXT1cIml0ZW1cIlxuICAgICAgICAgIFtpZF09XCInc2lkZW5hdkNvbnRyb2wnICsgY29udHJvbGxlZFVuaXF1ZUlkLnRvU3RyaW5nKCkgKyAnLScgKyBpXCJcbiAgICAgICAgPjwvZGYtc2lkZW5hdmxpc3Q+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VTdWJNZW51c1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic3ViTWVudXNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNlbHNlU3ViTWVudXM+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRmSWZNZWRpYT1cIml0ZW0uYnJlYWtwb2ludHMhXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInN1Yk1lbnVzXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2RmU2lkZU5hdkl0ZW1Db250ZW50PlxuICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICpuZ0lmPVwidHBsSWNvbiAmJiBpdGVtLmljb247IGVsc2UgZWxzZUljb25cIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cGxJY29uLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VJY29uPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0uaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGNsYXNzPVwie3sgaXRlbS5pY29uIH19IGRmLXNpZGVuYXYtaWNvbiBtZS01XCI+PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC1ncm93LTEgdGV4dC1ub3dyYXBcIiBkZlRpdGxlVHJ1bmNhdGU+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUuYWN0aW9uQnV0dG9uXCI+XG4gICAgICA8bmctdGVtcGxhdGUgI2RmU2lkZU5hdkl0ZW1CdXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImRmLXNpZGVuYXYtaXRlbSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtbm93cmFwXCJcbiAgICAgICAgICAoY2xpY2spPVwic2lkZU5hdlNlcnZpY2UuYWN0aXZlSXRlbShpdGVtKVwiXG4gICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpdGVtLmlzQWN0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlNpZGVOYXZJdGVtQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYnJlYWtwb2ludHM7IGVsc2UgZWxzZUFjdGlvblwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTaWRlTmF2SXRlbUJ1dHRvblwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VBY3Rpb24+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRmSWZNZWRpYT1cIml0ZW0uYnJlYWtwb2ludHMhXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2lkZU5hdkl0ZW1CdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZGZSb3V0ZXJUZW1wbGF0ZT5cbiAgICAgIDxhXG4gICAgICAgIGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ub3dyYXBcIlxuICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcbiAgICAgICAgcm91dGVyTGluaz1cInt7IGl0ZW0udmFsdWUgfX1cIlxuICAgICAgICBhcmlhQ3VycmVudFdoZW5BY3RpdmU9XCJwYWdlXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2lkZU5hdkl0ZW1Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJzaWRlTmF2U2VydmljZS50eXBlLnJvdXRlckxpbmtcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5icmVha3BvaW50czsgZWxzZSBlbHNlUm91dGVyTGlua1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZSb3V0ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VSb3V0ZXJMaW5rPlxuICAgICAgICA8bmctY29udGFpbmVyICpkZklmTWVkaWE9XCJpdGVtLmJyZWFrcG9pbnRzIVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlJvdXRlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJzaWRlTmF2U2VydmljZS50eXBlLnNlcGFyYXRvclwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNkZlNlcGFyYXRvclRtcD5cbiAgICAgICAgPGhyIGNsYXNzPVwic3BhY2luZy0wMVwiIC8+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VTZXBhcmF0b3JcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2VwYXJhdG9yVG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVNlcGFyYXRvcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGZJZk1lZGlhPVwiaXRlbS5icmVha3BvaW50cyFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTZXBhcmF0b3JUbXBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUudGVtcGxhdGVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAqbmdJZj1cInRwbEl0ZW1cIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cGxJdGVtLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwic2lkZU5hdlNlcnZpY2UudHlwZS50aXRsZVwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNkZlRpdGxlVG1wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGRmLXNpZGVuYXYtdGl0bGUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWdyb3ctMVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1ub3dyYXAgdGV4dC11cHBlcmNhc2UgdGV4dC1tdXRlZFwiIGRmVGl0bGVUcnVuY2F0ZT57eyBpdGVtLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYnJlYWtwb2ludHM7IGVsc2UgZWxzZVRpdGxlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlRpdGxlVG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVRpdGxlPlxuICAgICAgICA8bmctY29udGFpbmVyICpkZklmTWVkaWE9XCJpdGVtLmJyZWFrcG9pbnRzIVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlRpdGxlVG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICA8bmctdGVtcGxhdGUgI2RmTGlua0RlZmF1bHRUbXA+XG4gICAgICAgIDxhXG4gICAgICAgICAgY2xhc3M9XCJkZi1zaWRlbmF2LWl0ZW0gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LW5vd3JhcFwiXG4gICAgICAgICAgaHJlZj1cInt7IGl0ZW0udmFsdWUgfX1cIlxuICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaXRlbS5pc0FjdGl2ZSAmJiBpdGVtLnR5cGUgPT09IHNpZGVOYXZTZXJ2aWNlLnR5cGUubGlua1wiXG4gICAgICAgICAgW2F0dHIudGFyZ2V0XT1cIml0ZW0udHlwZSA9PT0gc2lkZU5hdlNlcnZpY2UudHlwZS5leHRlcm5hbExpbmsgPyAnX2JsYW5rJyA6ICcnXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlNpZGVOYXZJdGVtQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2E+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VEZWZhdWx0XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZkxpbmtEZWZhdWx0VG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZURlZmF1bHQ+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRmSWZNZWRpYT1cIml0ZW0uYnJlYWtwb2ludHMhXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmTGlua0RlZmF1bHRUbXBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2xpPlxuPC91bD5cbiJdfQ==
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Directive } from '@angular/core';
|
|
2
|
+
import { hasOverflow } from '../../utils/html-element-helper';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
import * as i1 from "@ng-bootstrap/ng-bootstrap";
|
|
4
5
|
/**
|
|
@@ -14,10 +15,7 @@ export class DfTooltipTruncateDirective {
|
|
|
14
15
|
this.renderer.addClass(this.elementRef.nativeElement, 'text-truncate');
|
|
15
16
|
}
|
|
16
17
|
ngDoCheck() {
|
|
17
|
-
this.tooltip.disableTooltip = !
|
|
18
|
-
}
|
|
19
|
-
hasOverflow(element) {
|
|
20
|
-
return element?.offsetHeight < element?.scrollHeight || element?.offsetWidth < element?.scrollWidth;
|
|
18
|
+
this.tooltip.disableTooltip = !hasOverflow(this.elementRef.nativeElement);
|
|
21
19
|
}
|
|
22
20
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfTooltipTruncateDirective, deps: [{ token: i1.NgbTooltip }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
23
21
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: DfTooltipTruncateDirective, isStandalone: true, selector: "[dfTooltipTruncate]", exportAs: ["dfTooltipTruncate"], ngImport: i0 }); }
|
|
@@ -30,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
|
|
|
30
28
|
standalone: true
|
|
31
29
|
}]
|
|
32
30
|
}], ctorParameters: function () { return [{ type: i1.NgbTooltip }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcFRydW5jYXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci90b29sdGlwL3RydW5jYXRlL3Rvb2x0aXBUcnVuY2F0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEMsTUFBTSxlQUFlLENBQUM7QUFFbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFFOUQ7O0dBRUc7QUFNSCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLFlBQ21CLE9BQW1CLEVBQ25CLFVBQW1DLEVBQ25DLFFBQW1CO1FBRm5CLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUNuQyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM1RSxDQUFDOzhHQWJVLDBCQUEwQjtrR0FBMUIsMEJBQTBCOzsyRkFBMUIsMEJBQTBCO2tCQUx0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRG9DaGVjaywgRWxlbWVudFJlZiwgT25Jbml0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYlRvb2x0aXAgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBoYXNPdmVyZmxvdyB9IGZyb20gJy4uLy4uL3V0aWxzL2h0bWwtZWxlbWVudC1oZWxwZXInO1xuXG4vKipcbiAqIE15IGRmVG9vbHRpcFRydW5jYXRlIGRpcmVjdGl2ZVxuICovXG5ARGlyZWN0aXZlKHtcbiAgZXhwb3J0QXM6ICdkZlRvb2x0aXBUcnVuY2F0ZScsXG4gIHNlbGVjdG9yOiAnW2RmVG9vbHRpcFRydW5jYXRlXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGZUb29sdGlwVHJ1bmNhdGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIERvQ2hlY2sge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvb2x0aXA6IE5nYlRvb2x0aXAsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjJcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd0ZXh0LXRydW5jYXRlJyk7XG4gIH1cblxuICBuZ0RvQ2hlY2soKSB7XG4gICAgdGhpcy50b29sdGlwLmRpc2FibGVUb29sdGlwID0gIWhhc092ZXJmbG93KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param element the HTML element
|
|
3
|
+
* @returns whether the element is overflowing
|
|
4
|
+
*/
|
|
5
|
+
export function hasOverflow(element) {
|
|
6
|
+
return element?.offsetHeight < element?.scrollHeight || element?.offsetWidth < element?.scrollWidth;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1lbGVtZW50LWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci91dGlscy9odG1sLWVsZW1lbnQtaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsT0FBb0I7SUFDOUMsT0FBTyxPQUFPLEVBQUUsWUFBWSxHQUFHLE9BQU8sRUFBRSxZQUFZLElBQUksT0FBTyxFQUFFLFdBQVcsR0FBRyxPQUFPLEVBQUUsV0FBVyxDQUFDO0FBQ3RHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYXJhbSBlbGVtZW50IHRoZSBIVE1MIGVsZW1lbnRcbiAqIEByZXR1cm5zIHdoZXRoZXIgdGhlIGVsZW1lbnQgaXMgb3ZlcmZsb3dpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc092ZXJmbG93KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gIHJldHVybiBlbGVtZW50Py5vZmZzZXRIZWlnaHQgPCBlbGVtZW50Py5zY3JvbGxIZWlnaHQgfHwgZWxlbWVudD8ub2Zmc2V0V2lkdGggPCBlbGVtZW50Py5zY3JvbGxXaWR0aDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { hasOverflow } from './html-element-helper';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* DfTitleTruncate directive
|
|
6
|
+
* It adds the title attribute with the element's inner text as value
|
|
7
|
+
* when the element is truncated.
|
|
8
|
+
*/
|
|
9
|
+
export class DfTitleTruncateDirective {
|
|
10
|
+
constructor(elementRef, renderer) {
|
|
11
|
+
this.elementRef = elementRef;
|
|
12
|
+
this.renderer = renderer;
|
|
13
|
+
}
|
|
14
|
+
ngOnInit() {
|
|
15
|
+
this.renderer.addClass(this.elementRef.nativeElement, 'text-truncate');
|
|
16
|
+
}
|
|
17
|
+
ngDoCheck() {
|
|
18
|
+
const { nativeElement } = this.elementRef;
|
|
19
|
+
const titleAttributeName = 'title';
|
|
20
|
+
if (hasOverflow(nativeElement)) {
|
|
21
|
+
const value = nativeElement.innerText;
|
|
22
|
+
nativeElement.setAttribute(titleAttributeName, value);
|
|
23
|
+
}
|
|
24
|
+
else if (nativeElement.getAttribute(titleAttributeName)) {
|
|
25
|
+
nativeElement.removeAttribute(titleAttributeName);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfTitleTruncateDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
29
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: DfTitleTruncateDirective, isStandalone: true, selector: "[dfTitleTruncate]", exportAs: ["dfTitleTruncate"], ngImport: i0 }); }
|
|
30
|
+
}
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfTitleTruncateDirective, decorators: [{
|
|
32
|
+
type: Directive,
|
|
33
|
+
args: [{
|
|
34
|
+
exportAs: 'dfTitleTruncate',
|
|
35
|
+
selector: '[dfTitleTruncate]',
|
|
36
|
+
standalone: true
|
|
37
|
+
}]
|
|
38
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGVUcnVuY2F0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvdXRpbHMvdGl0bGVUcnVuY2F0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEMsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUVwRDs7OztHQUlHO0FBTUgsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQyxZQUNtQixVQUFtQyxFQUNuQyxRQUFtQjtRQURuQixlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUNuQyxhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQ25DLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELFNBQVM7UUFDUCxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUMxQyxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQztRQUNuQyxJQUFJLFdBQVcsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUM5QixNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDO1lBQ3RDLGFBQWEsQ0FBQyxZQUFZLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDdkQ7YUFBTSxJQUFJLGFBQWEsQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsRUFBRTtZQUN6RCxhQUFhLENBQUMsZUFBZSxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDOzhHQW5CVSx3QkFBd0I7a0dBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIERvQ2hlY2ssIEVsZW1lbnRSZWYsIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBoYXNPdmVyZmxvdyB9IGZyb20gJy4vaHRtbC1lbGVtZW50LWhlbHBlcic7XG5cbi8qKlxuICogRGZUaXRsZVRydW5jYXRlIGRpcmVjdGl2ZVxuICogSXQgYWRkcyB0aGUgdGl0bGUgYXR0cmlidXRlIHdpdGggdGhlIGVsZW1lbnQncyBpbm5lciB0ZXh0IGFzIHZhbHVlXG4gKiB3aGVuIHRoZSBlbGVtZW50IGlzIHRydW5jYXRlZC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIGV4cG9ydEFzOiAnZGZUaXRsZVRydW5jYXRlJyxcbiAgc2VsZWN0b3I6ICdbZGZUaXRsZVRydW5jYXRlXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGZUaXRsZVRydW5jYXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBEb0NoZWNrIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjJcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd0ZXh0LXRydW5jYXRlJyk7XG4gIH1cblxuICBuZ0RvQ2hlY2soKSB7XG4gICAgY29uc3QgeyBuYXRpdmVFbGVtZW50IH0gPSB0aGlzLmVsZW1lbnRSZWY7XG4gICAgY29uc3QgdGl0bGVBdHRyaWJ1dGVOYW1lID0gJ3RpdGxlJztcbiAgICBpZiAoaGFzT3ZlcmZsb3cobmF0aXZlRWxlbWVudCkpIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gbmF0aXZlRWxlbWVudC5pbm5lclRleHQ7XG4gICAgICBuYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSh0aXRsZUF0dHJpYnV0ZU5hbWUsIHZhbHVlKTtcbiAgICB9IGVsc2UgaWYgKG5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKHRpdGxlQXR0cmlidXRlTmFtZSkpIHtcbiAgICAgIG5hdGl2ZUVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKHRpdGxlQXR0cmlidXRlTmFtZSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
package/esm2022/lib/index.mjs
CHANGED
|
@@ -169,4 +169,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
|
|
|
169
169
|
exports: DF_MODULES
|
|
170
170
|
}]
|
|
171
171
|
}] });
|
|
172
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBRTdELGdCQUFnQjtBQUNoQixP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QUF5QjtZQUN6QixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLGNBQWM7WUFDZCxlQUFlO1lBQ2YsWUFBWTtZQUNaLGVBQWU7WUFDZixlQUFlO1lBQ2YsdUJBQXVCO1lBQ3ZCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsYUFBYTs7MkZBT0YsUUFBUTtrQkFKcEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsVUFBVTtvQkFDbkIsT0FBTyxFQUFFLFVBQVU7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERmQWxlcnRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvYWxlcnQvYWxlcnQubW9kdWxlJztcbmltcG9ydCB7IERmRGF0ZVBpY2tlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJztcbmltcG9ydCB7IERmU2VsZWN0TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3NlbGVjdHMvc2VsZWN0Lm1vZHVsZSc7XG5pbXBvcnQgeyBEZlBvcG92ZXJNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvcG9wb3Zlci9wb3BvdmVyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlByb2dyZXNzYmFyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZkFkdmFuY2VkSW5wdXRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvaW5wdXRzL2lucHV0LWFkdmFuY2VkLm1vZHVsZSc7XG5pbXBvcnQgeyBEZkFjY2Vzc2liaWxpdHlNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvYWNjZXNzaWJpbGl0eS9hY2Nlc3NpYmlsaXR5Lm1vZHVsZSc7XG5pbXBvcnQgeyBEZkljb25Nb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvaWNvbi9pY29uLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNsaWRlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zbGlkZXIvc2xpZGVyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlRvb2x0aXBNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvdG9vbHRpcC90b29sdGlwLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZU1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlLm1vZHVsZSc7XG5pbXBvcnQgeyBEZkFkdmFuY2VkQ2FyZE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9jYXJkL2NhcmQtYWR2YW5jZWQubW9kdWxlJztcbmltcG9ydCB7IERmUHJvZ3Jlc3NJbmRpY2F0b3JNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3IubW9kdWxlJztcbmltcG9ydCB7IERmRm9vdGVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2Zvb3Rlci9mb290ZXIubW9kdWxlJztcbmltcG9ydCB7IERmVG9hc3RNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvdG9hc3QvdG9hc3QubW9kdWxlJztcblxuLy8gQWNjZXNzaWJpbGl0eVxuZXhwb3J0IHsgRGZBY2Nlc3NpYmlsaXR5TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvYWNjZXNzaWJpbGl0eS5tb2R1bGUnO1xuZXhwb3J0IHsgU2tpcExpbmtEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvYWNjZXNzaWJpbGl0eS9kaXJlY3RpdmVzL3NraXAtbGluay5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgU2tpcExpbmtzQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvY29tcG9uZW50cy9za2lwLWxpbmtzLWNvbnRhaW5lci9za2lwLWxpbmtzLWNvbnRhaW5lci5jb21wb25lbnQnO1xuXG4vLyBUb2FzdFxuZXhwb3J0IHsgRGZUb2FzdE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci90b2FzdC90b2FzdC5tb2R1bGUnO1xuXG4vLyBBbGVydFxuZXhwb3J0IHsgRGZBbGVydE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9hbGVydC9hbGVydC5tb2R1bGUnO1xuXG4vLyBEYXRlcGlja2VyXG5leHBvcnQgeyBDbG9zZUlucHV0RGF0ZVBpY2tlckRpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9kYXRlcGlja2VyL2Nsb3NlZGF0ZXBpY2tlci5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZEYXRlUGlja2VyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5tb2R1bGUnO1xuZXhwb3J0IHsgRGZEYXRlcGlja2VyUmFuZ2VEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXJhbmdlLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZkRhdGVwaWNrZXJSYW5nZVNlcnZpY2UgfSBmcm9tICcuL2FuZ3VsYXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXJhbmdlLnNlcnZpY2UnO1xuXG4vLyBGb290ZXJcbmV4cG9ydCB7IERmRm9vdGVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2Zvb3Rlci9mb290ZXIubW9kdWxlJztcblxuLy8gSWNvblxuZXhwb3J0IHsgRGZJY29uTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2ljb24vaWNvbi5tb2R1bGUnO1xuZXhwb3J0IHsgRGZJbnNlcnRJY29uTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2ljb24vaW5zZXJ0L2luc2VydC1pY29uLm1vZHVsZSc7XG5leHBvcnQgeyBEZkFtYWRldXNJY29uQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL2ljb24vYW1hZGV1cy1pY29uJztcbmV4cG9ydCB7IERmSW5zZXJ0SWNvbkRpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9pY29uL2luc2VydC9pbnNlcnQtaWNvbi5kaXJlY3RpdmUnO1xuXG4vLyBJbnB1dHNcbmV4cG9ydCB7IERmVHJpZ2dlckNsaWNrRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL2lucHV0cy9jbGljay90cmlnZ2VyLWNsaWNrLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZklucHV0SWNvbkRpcmVjdGl2ZSwgRGZEaXJlY3Rpb24gfSBmcm9tICcuL2FuZ3VsYXIvaW5wdXRzL2ljb24vaW5wdXRpY29uLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZkFkdmFuY2VkSW5wdXRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvaW5wdXRzL2lucHV0LWFkdmFuY2VkLm1vZHVsZSc7XG5cbi8vIE1vZGFsXG5leHBvcnQgeyBEZk1vZGFsU2VydmljZSB9IGZyb20gJy4vYW5ndWxhci9tb2RhbC9tb2RhbC5zZXJ2aWNlJztcblxuLy8gUG9wb3ZlclxuZXhwb3J0IHsgRGZQb3BvdmVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3BvcG92ZXIvcG9wb3Zlci5tb2R1bGUnO1xuZXhwb3J0IHsgRGZQb3BvdmVyQ29uZmlnIH0gZnJvbSAnLi9hbmd1bGFyL3BvcG92ZXIvY29uZmlnL3BvcG92ZXIuY29uZmlnJztcblxuLy8gUHJvZ3Jlc3NiYXJcbmV4cG9ydCB7IERmUHJvZ3Jlc3NiYXJNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NiYXIvcHJvZ3Jlc3NiYXIubW9kdWxlJztcbmV4cG9ydCB7IERmUHJvZ3Jlc3NiYXJDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NiYXIvcHJvZ3Jlc3NiYXIuY29tcG9uZW50JztcblxuLy8gUHJvZ3Jlc3MgaW5kaWNhdG9yXG5leHBvcnQgeyBEZlByb2dyZXNzSW5kaWNhdG9yTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL3Byb2dyZXNzaW5kaWNhdG9yLm1vZHVsZSc7XG5leHBvcnQge1xuICBEZlByb2dyZXNzSW5kaWNhdG9yU2VydmljZSxcbiAgRGZQcm9ncmVzc0luZGljYXRvckNvbnRlbnRcbn0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL3Byb2dyZXNzaW5kaWNhdG9yLnNlcnZpY2UnO1xuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci5kaXJlY3RpdmUnO1xuZXhwb3J0IHtcbiAgRGZQcm9ncmVzc0luZGljYXRvck9wdGlvbnMsXG4gIERmUHJvZ3Jlc3NJbmRpY2F0b3JDb250ZW50VHlwZSxcbiAgRGZQcm9ncmVzc0luZGljYXRvckNvbnRlbnRTcGlubmVyLFxuICBEZlByb2dyZXNzSW5kaWNhdG9yQ29udGVudFByb2dyZXNzQmFyLFxuICBEZlByb2dyZXNzSW5kaWNhdG9yQ29udGVudFBvc2l0aW9uXG59IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci1jb25maWcnO1xuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvclJlZiB9IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci1yZWYnO1xuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvckNvbnRhaW5lckNvbXBvbmVudCB9ICBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3ItY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZlByb2dyZXNzSW5kaWNhdG9yQmFja2Ryb3BDb21wb25lbnQgfSAgZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL3Byb2dyZXNzaW5kaWNhdG9yLWJhY2tkcm9wLmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZkRlZmF1bHRTcGlubmVyQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL2RlZmF1bHQvZGVmYXVsdC1zcGlubmVyLmNvbXBvbmVudCc7XG5cbi8vIFJUTFxuZXhwb3J0IHtcbiAgRGZEaXJlY3Rpb25EZXRlY3Rpb25TZXJ2aWNlLFxuICBSaWdodFRvTGVmdERpcmVjdGlvbkVudW1cbn0gZnJvbSAnLi9hbmd1bGFyL3JpZ2h0LXRvLWxlZnQvZGlyZWN0aW9uRGV0ZWN0aW9uLnNlcnZpY2UnO1xuXG4vLyBTbGlkZXJcbmV4cG9ydCB7IERmU2xpZGVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9zbGlkZXIubW9kdWxlJztcbmV4cG9ydCB7IERmU2xpZGVyRGlyZWN0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9kaXJlY3Rpb24vc2xpZGVyZGlyZWN0aW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZIZWFkZXJEaXJlY3RpdmUsIERmU2lkZU5hdkl0ZW1EaXJlY3RpdmUsIERmU2lkZU5hdkljb25EaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZk1hbmFnZVNpZGVOYXZEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9tYW5hZ2Utc2lkZW5hdi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZFeGNsdWRlVHJhcERpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2V4Y2x1ZGVUcmFwLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBDaGFuZ2VDb250ZXh0IH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9saWIvY2hhbmdlLWNvbnRleHQnO1xuZXhwb3J0IHsgUG9pbnRlclR5cGUgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL2xpYi9wb2ludGVyLXR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9saWIvb3B0aW9ucyc7XG5leHBvcnQgeyBTbGlkZXJDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL2xpYi9zbGlkZXIuY29tcG9uZW50JztcblxuLy8gU2VsZWN0c1xuZXhwb3J0IHsgRGZNYW5hZ2VOYXZTZWxlY3REaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2VsZWN0cy9uYXYvbWFuYWdlLW5hdi1zZWxlY3QuZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmT3B0aW9uSGlnaGxpZ2h0RGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL3NlbGVjdHMvb3B0aW9uLWhpZ2hsaWdodC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZNYW5hZ2VCYWRnZUV2ZW50c0RpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zZWxlY3RzL2V2ZW50cy9tYW5hZ2UtYmFkZ2UtZXZlbnRzLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlNlbGVjdE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zZWxlY3RzL3NlbGVjdC5tb2R1bGUnO1xuXG4vLyBUb29sdGlwXG5leHBvcnQgeyBEZlRvb2x0aXBUcnVuY2F0ZURpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci90b29sdGlwL3RydW5jYXRlL3Rvb2x0aXBUcnVuY2F0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xuXG4vLyBTaWRlbmF2XG5leHBvcnQgeyBEZlNpZGVOYXZJdGVtIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlJztcbmV4cG9ydCB7IERmU2lkZU5hdlNlcnZpY2UgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LnNlcnZpY2UnO1xuZXhwb3J0IHsgRGZJZk1lZGlhRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL21lZGlhcXVlcmllcy9pZk1lZGlhLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZk5hdkl0ZW1UeXBlIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlJztcblxuLy8gU2lkZU5hdkNvbGxhcHNlXG5leHBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZU1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlLm1vZHVsZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZURpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlJztcbmV4cG9ydCB7IERmU2lkZU5hdkNvbGxhcHNlU2VydmljZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlLnNlcnZpY2UnO1xuXG4vLyBNZWRpYSBVdGlsc1xuZXhwb3J0IHtcbiAgQlJFQUtQT0lOVFNfVkFSUyxcbiAgREZfQlJFQUtQT0lOVFNfVkFSX0RFRkFVTFQsXG4gIERmQnJlYWtwb2ludHMsXG4gIERmTWVkaWFRdWVyeSxcbiAgRGZNZWRpYU9ic2VydmVyXG59IGZyb20gJy4vYW5ndWxhci9tZWRpYXF1ZXJpZXMvbWVkaWFVdGlscy5zZXJ2aWNlJztcblxuLy8gTWVkaWEgc2VydmljZVxuZXhwb3J0IHsgRGZNZWRpYSB9IGZyb20gJy4vYW5ndWxhci9tZWRpYXF1ZXJpZXMvbWVkaWEuc2VydmljZSc7XG5leHBvcnQgeyBEZk1lZGlhTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL21lZGlhcXVlcmllcy9tZWRpYS5tb2R1bGUnO1xuXG4vLyBDYXJkXG5leHBvcnQgeyBEZk1hbmFnZUNhcmRTZWxlY3Rpb25EaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvY2FyZC9tYW5hZ2UtY2FyZC1zZWxlY3Rpb24uZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmQWR2YW5jZWRDYXJkTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2NhcmQvY2FyZC1hZHZhbmNlZC5tb2R1bGUnO1xuXG5jb25zdCBERl9NT0RVTEVTID0gW1xuICBEZkFsZXJ0TW9kdWxlLFxuICBEZkRhdGVQaWNrZXJNb2R1bGUsXG4gIERmU2VsZWN0TW9kdWxlLFxuICBEZlByb2dyZXNzYmFyTW9kdWxlLFxuICBEZlByb2dyZXNzSW5kaWNhdG9yTW9kdWxlLFxuICBEZkFkdmFuY2VkSW5wdXRNb2R1bGUsXG4gIERmQWNjZXNzaWJpbGl0eU1vZHVsZSxcbiAgRGZTbGlkZXJNb2R1bGUsXG4gIERmUG9wb3Zlck1vZHVsZSxcbiAgRGZJY29uTW9kdWxlLFxuICBEZlRvb2x0aXBNb2R1bGUsXG4gIERmU2lkZU5hdk1vZHVsZSxcbiAgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUsXG4gIERmQWR2YW5jZWRDYXJkTW9kdWxlLFxuICBEZkZvb3Rlck1vZHVsZSxcbiAgRGZUb2FzdE1vZHVsZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogREZfTU9EVUxFUyxcbiAgZXhwb3J0czogREZfTU9EVUxFU1xufSlcbmV4cG9ydCBjbGFzcyBEZk1vZHVsZSB7fVxuIl19
|
|
172
|
+
// Title truncate
|
|
173
|
+
export { DfTitleTruncateDirective } from './angular/utils/titleTruncate.directive';
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBRTdELGdCQUFnQjtBQUNoQixP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QUF5QjtZQUN6QixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLGNBQWM7WUFDZCxlQUFlO1lBQ2YsWUFBWTtZQUNaLGVBQWU7WUFDZixlQUFlO1lBQ2YsdUJBQXVCO1lBQ3ZCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsYUFBYTs7MkZBT0YsUUFBUTtrQkFKcEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsVUFBVTtvQkFDbkIsT0FBTyxFQUFFLFVBQVU7aUJBQ3BCOztBQUdELGlCQUFpQjtBQUNqQixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZkFsZXJ0TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2FsZXJ0L2FsZXJ0Lm1vZHVsZSc7XG5pbXBvcnQgeyBEZkRhdGVQaWNrZXJNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNlbGVjdE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zZWxlY3RzL3NlbGVjdC5tb2R1bGUnO1xuaW1wb3J0IHsgRGZQb3BvdmVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3BvcG92ZXIvcG9wb3Zlci5tb2R1bGUnO1xuaW1wb3J0IHsgRGZQcm9ncmVzc2Jhck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2Jhci9wcm9ncmVzc2Jhci5tb2R1bGUnO1xuaW1wb3J0IHsgRGZBZHZhbmNlZElucHV0TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2lucHV0cy9pbnB1dC1hZHZhbmNlZC5tb2R1bGUnO1xuaW1wb3J0IHsgRGZBY2Nlc3NpYmlsaXR5TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvYWNjZXNzaWJpbGl0eS5tb2R1bGUnO1xuaW1wb3J0IHsgRGZJY29uTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2ljb24vaWNvbi5tb2R1bGUnO1xuaW1wb3J0IHsgRGZTbGlkZXJNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL3NsaWRlci5tb2R1bGUnO1xuaW1wb3J0IHsgRGZUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xuaW1wb3J0IHsgRGZTaWRlTmF2TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5tb2R1bGUnO1xuaW1wb3J0IHsgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9kZlNpZGVOYXZDb2xsYXBzZS5tb2R1bGUnO1xuaW1wb3J0IHsgRGZBZHZhbmNlZENhcmRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvY2FyZC9jYXJkLWFkdmFuY2VkLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlByb2dyZXNzSW5kaWNhdG9yTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL3Byb2dyZXNzaW5kaWNhdG9yLm1vZHVsZSc7XG5pbXBvcnQgeyBEZkZvb3Rlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9mb290ZXIvZm9vdGVyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlRvYXN0TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3RvYXN0L3RvYXN0Lm1vZHVsZSc7XG5cbi8vIEFjY2Vzc2liaWxpdHlcbmV4cG9ydCB7IERmQWNjZXNzaWJpbGl0eU1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9hY2Nlc3NpYmlsaXR5L2FjY2Vzc2liaWxpdHkubW9kdWxlJztcbmV4cG9ydCB7IFNraXBMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvZGlyZWN0aXZlcy9za2lwLWxpbmsuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFNraXBMaW5rc0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vYW5ndWxhci9hY2Nlc3NpYmlsaXR5L2NvbXBvbmVudHMvc2tpcC1saW5rcy1jb250YWluZXIvc2tpcC1saW5rcy1jb250YWluZXIuY29tcG9uZW50JztcblxuLy8gVG9hc3RcbmV4cG9ydCB7IERmVG9hc3RNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvdG9hc3QvdG9hc3QubW9kdWxlJztcblxuLy8gQWxlcnRcbmV4cG9ydCB7IERmQWxlcnRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvYWxlcnQvYWxlcnQubW9kdWxlJztcblxuLy8gRGF0ZXBpY2tlclxuZXhwb3J0IHsgQ2xvc2VJbnB1dERhdGVQaWNrZXJEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvZGF0ZXBpY2tlci9jbG9zZWRhdGVwaWNrZXIuZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmRGF0ZVBpY2tlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJztcbmV4cG9ydCB7IERmRGF0ZXBpY2tlclJhbmdlRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1yYW5nZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZEYXRlcGlja2VyUmFuZ2VTZXJ2aWNlIH0gZnJvbSAnLi9hbmd1bGFyL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1yYW5nZS5zZXJ2aWNlJztcblxuLy8gRm9vdGVyXG5leHBvcnQgeyBEZkZvb3Rlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9mb290ZXIvZm9vdGVyLm1vZHVsZSc7XG5cbi8vIEljb25cbmV4cG9ydCB7IERmSWNvbk1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9pY29uL2ljb24ubW9kdWxlJztcbmV4cG9ydCB7IERmSW5zZXJ0SWNvbk1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9pY29uL2luc2VydC9pbnNlcnQtaWNvbi5tb2R1bGUnO1xuZXhwb3J0IHsgRGZBbWFkZXVzSWNvbkNvbXBvbmVudCB9IGZyb20gJy4vYW5ndWxhci9pY29uL2FtYWRldXMtaWNvbic7XG5leHBvcnQgeyBEZkluc2VydEljb25EaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvaWNvbi9pbnNlcnQvaW5zZXJ0LWljb24uZGlyZWN0aXZlJztcblxuLy8gSW5wdXRzXG5leHBvcnQgeyBEZlRyaWdnZXJDbGlja0RpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9pbnB1dHMvY2xpY2svdHJpZ2dlci1jbGljay5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZJbnB1dEljb25EaXJlY3RpdmUsIERmRGlyZWN0aW9uIH0gZnJvbSAnLi9hbmd1bGFyL2lucHV0cy9pY29uL2lucHV0aWNvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZBZHZhbmNlZElucHV0TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2lucHV0cy9pbnB1dC1hZHZhbmNlZC5tb2R1bGUnO1xuXG4vLyBNb2RhbFxuZXhwb3J0IHsgRGZNb2RhbFNlcnZpY2UgfSBmcm9tICcuL2FuZ3VsYXIvbW9kYWwvbW9kYWwuc2VydmljZSc7XG5cbi8vIFBvcG92ZXJcbmV4cG9ydCB7IERmUG9wb3Zlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9wb3BvdmVyL3BvcG92ZXIubW9kdWxlJztcbmV4cG9ydCB7IERmUG9wb3ZlckNvbmZpZyB9IGZyb20gJy4vYW5ndWxhci9wb3BvdmVyL2NvbmZpZy9wb3BvdmVyLmNvbmZpZyc7XG5cbi8vIFByb2dyZXNzYmFyXG5leHBvcnQgeyBEZlByb2dyZXNzYmFyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLm1vZHVsZSc7XG5leHBvcnQgeyBEZlByb2dyZXNzYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLmNvbXBvbmVudCc7XG5cbi8vIFByb2dyZXNzIGluZGljYXRvclxuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci5tb2R1bGUnO1xuZXhwb3J0IHtcbiAgRGZQcm9ncmVzc0luZGljYXRvclNlcnZpY2UsXG4gIERmUHJvZ3Jlc3NJbmRpY2F0b3JDb250ZW50XG59IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci5zZXJ2aWNlJztcbmV4cG9ydCB7IERmUHJvZ3Jlc3NJbmRpY2F0b3JEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3IuZGlyZWN0aXZlJztcbmV4cG9ydCB7XG4gIERmUHJvZ3Jlc3NJbmRpY2F0b3JPcHRpb25zLFxuICBEZlByb2dyZXNzSW5kaWNhdG9yQ29udGVudFR5cGUsXG4gIERmUHJvZ3Jlc3NJbmRpY2F0b3JDb250ZW50U3Bpbm5lcixcbiAgRGZQcm9ncmVzc0luZGljYXRvckNvbnRlbnRQcm9ncmVzc0JhcixcbiAgRGZQcm9ncmVzc0luZGljYXRvckNvbnRlbnRQb3NpdGlvblxufSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3ItY29uZmlnJztcbmV4cG9ydCB7IERmUHJvZ3Jlc3NJbmRpY2F0b3JSZWYgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3ItcmVmJztcbmV4cG9ydCB7IERmUHJvZ3Jlc3NJbmRpY2F0b3JDb250YWluZXJDb21wb25lbnQgfSAgZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL3Byb2dyZXNzaW5kaWNhdG9yLWNvbnRhaW5lci5jb21wb25lbnQnO1xuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvckJhY2tkcm9wQ29tcG9uZW50IH0gIGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci1iYWNrZHJvcC5jb21wb25lbnQnO1xuZXhwb3J0IHsgRGZEZWZhdWx0U3Bpbm5lckNvbXBvbmVudCB9IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9kZWZhdWx0L2RlZmF1bHQtc3Bpbm5lci5jb21wb25lbnQnO1xuXG4vLyBSVExcbmV4cG9ydCB7XG4gIERmRGlyZWN0aW9uRGV0ZWN0aW9uU2VydmljZSxcbiAgUmlnaHRUb0xlZnREaXJlY3Rpb25FbnVtXG59IGZyb20gJy4vYW5ndWxhci9yaWdodC10by1sZWZ0L2RpcmVjdGlvbkRldGVjdGlvbi5zZXJ2aWNlJztcblxuLy8gU2xpZGVyXG5leHBvcnQgeyBEZlNsaWRlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zbGlkZXIvc2xpZGVyLm1vZHVsZSc7XG5leHBvcnQgeyBEZlNsaWRlckRpcmVjdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zbGlkZXIvZGlyZWN0aW9uL3NsaWRlcmRpcmVjdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZTaWRlTmF2SGVhZGVyRGlyZWN0aXZlLCBEZlNpZGVOYXZJdGVtRGlyZWN0aXZlLCBEZlNpZGVOYXZJY29uRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5jb21wb25lbnQnO1xuZXhwb3J0IHsgRGZNYW5hZ2VTaWRlTmF2RGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvbWFuYWdlLXNpZGVuYXYuZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmRXhjbHVkZVRyYXBEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9leGNsdWRlVHJhcC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgQ2hhbmdlQ29udGV4dCB9IGZyb20gJy4vYW5ndWxhci9zbGlkZXIvbGliL2NoYW5nZS1jb250ZXh0JztcbmV4cG9ydCB7IFBvaW50ZXJUeXBlIH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9saWIvcG9pbnRlci10eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vYW5ndWxhci9zbGlkZXIvbGliL29wdGlvbnMnO1xuZXhwb3J0IHsgU2xpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9saWIvc2xpZGVyLmNvbXBvbmVudCc7XG5cbi8vIFNlbGVjdHNcbmV4cG9ydCB7IERmTWFuYWdlTmF2U2VsZWN0RGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL3NlbGVjdHMvbmF2L21hbmFnZS1uYXYtc2VsZWN0LmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZk9wdGlvbkhpZ2hsaWdodERpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zZWxlY3RzL29wdGlvbi1oaWdobGlnaHQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmTWFuYWdlQmFkZ2VFdmVudHNEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2VsZWN0cy9ldmVudHMvbWFuYWdlLWJhZGdlLWV2ZW50cy5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZTZWxlY3RNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2VsZWN0cy9zZWxlY3QubW9kdWxlJztcblxuLy8gVG9vbHRpcFxuZXhwb3J0IHsgRGZUb29sdGlwVHJ1bmNhdGVEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvdG9vbHRpcC90cnVuY2F0ZS90b29sdGlwVHJ1bmNhdGUuZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmVG9vbHRpcE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci90b29sdGlwL3Rvb2x0aXAubW9kdWxlJztcblxuLy8gU2lkZW5hdlxuZXhwb3J0IHsgRGZTaWRlTmF2SXRlbSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L3NpZGVuYXYuc2VydmljZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZTZXJ2aWNlIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlJztcbmV4cG9ydCB7IERmSWZNZWRpYURpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9tZWRpYXF1ZXJpZXMvaWZNZWRpYS5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZTaWRlTmF2TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5tb2R1bGUnO1xuZXhwb3J0IHsgRGZTaWRlTmF2Q29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5jb21wb25lbnQnO1xuZXhwb3J0IHsgRGZOYXZJdGVtVHlwZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L3NpZGVuYXYuc2VydmljZSc7XG5cbi8vIFNpZGVOYXZDb2xsYXBzZVxuZXhwb3J0IHsgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9kZlNpZGVOYXZDb2xsYXBzZS5tb2R1bGUnO1xuZXhwb3J0IHsgRGZTaWRlTmF2Q29sbGFwc2VEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9kZlNpZGVOYXZDb2xsYXBzZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZVNlcnZpY2UgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9kZlNpZGVOYXZDb2xsYXBzZS5zZXJ2aWNlJztcblxuLy8gTWVkaWEgVXRpbHNcbmV4cG9ydCB7XG4gIEJSRUFLUE9JTlRTX1ZBUlMsXG4gIERGX0JSRUFLUE9JTlRTX1ZBUl9ERUZBVUxULFxuICBEZkJyZWFrcG9pbnRzLFxuICBEZk1lZGlhUXVlcnksXG4gIERmTWVkaWFPYnNlcnZlclxufSBmcm9tICcuL2FuZ3VsYXIvbWVkaWFxdWVyaWVzL21lZGlhVXRpbHMuc2VydmljZSc7XG5cbi8vIE1lZGlhIHNlcnZpY2VcbmV4cG9ydCB7IERmTWVkaWEgfSBmcm9tICcuL2FuZ3VsYXIvbWVkaWFxdWVyaWVzL21lZGlhLnNlcnZpY2UnO1xuZXhwb3J0IHsgRGZNZWRpYU1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9tZWRpYXF1ZXJpZXMvbWVkaWEubW9kdWxlJztcblxuLy8gQ2FyZFxuZXhwb3J0IHsgRGZNYW5hZ2VDYXJkU2VsZWN0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL2NhcmQvbWFuYWdlLWNhcmQtc2VsZWN0aW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZkFkdmFuY2VkQ2FyZE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9jYXJkL2NhcmQtYWR2YW5jZWQubW9kdWxlJztcblxuY29uc3QgREZfTU9EVUxFUyA9IFtcbiAgRGZBbGVydE1vZHVsZSxcbiAgRGZEYXRlUGlja2VyTW9kdWxlLFxuICBEZlNlbGVjdE1vZHVsZSxcbiAgRGZQcm9ncmVzc2Jhck1vZHVsZSxcbiAgRGZQcm9ncmVzc0luZGljYXRvck1vZHVsZSxcbiAgRGZBZHZhbmNlZElucHV0TW9kdWxlLFxuICBEZkFjY2Vzc2liaWxpdHlNb2R1bGUsXG4gIERmU2xpZGVyTW9kdWxlLFxuICBEZlBvcG92ZXJNb2R1bGUsXG4gIERmSWNvbk1vZHVsZSxcbiAgRGZUb29sdGlwTW9kdWxlLFxuICBEZlNpZGVOYXZNb2R1bGUsXG4gIERmU2lkZU5hdkNvbGxhcHNlTW9kdWxlLFxuICBEZkFkdmFuY2VkQ2FyZE1vZHVsZSxcbiAgRGZGb290ZXJNb2R1bGUsXG4gIERmVG9hc3RNb2R1bGVcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IERGX01PRFVMRVMsXG4gIGV4cG9ydHM6IERGX01PRFVMRVNcbn0pXG5leHBvcnQgY2xhc3MgRGZNb2R1bGUge31cblxuLy8gVGl0bGUgdHJ1bmNhdGVcbmV4cG9ydCB7IERmVGl0bGVUcnVuY2F0ZURpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci91dGlscy90aXRsZVRydW5jYXRlLmRpcmVjdGl2ZSc7XG4iXX0=
|
|
@@ -3795,6 +3795,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
|
|
|
3795
3795
|
}]
|
|
3796
3796
|
}] });
|
|
3797
3797
|
|
|
3798
|
+
/**
|
|
3799
|
+
* @param element the HTML element
|
|
3800
|
+
* @returns whether the element is overflowing
|
|
3801
|
+
*/
|
|
3802
|
+
function hasOverflow(element) {
|
|
3803
|
+
return element?.offsetHeight < element?.scrollHeight || element?.offsetWidth < element?.scrollWidth;
|
|
3804
|
+
}
|
|
3805
|
+
|
|
3798
3806
|
/**
|
|
3799
3807
|
* My dfTooltipTruncate directive
|
|
3800
3808
|
*/
|
|
@@ -3808,10 +3816,7 @@ class DfTooltipTruncateDirective {
|
|
|
3808
3816
|
this.renderer.addClass(this.elementRef.nativeElement, 'text-truncate');
|
|
3809
3817
|
}
|
|
3810
3818
|
ngDoCheck() {
|
|
3811
|
-
this.tooltip.disableTooltip = !
|
|
3812
|
-
}
|
|
3813
|
-
hasOverflow(element) {
|
|
3814
|
-
return element?.offsetHeight < element?.scrollHeight || element?.offsetWidth < element?.scrollWidth;
|
|
3819
|
+
this.tooltip.disableTooltip = !hasOverflow(this.elementRef.nativeElement);
|
|
3815
3820
|
}
|
|
3816
3821
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfTooltipTruncateDirective, deps: [{ token: i1.NgbTooltip }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
3817
3822
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: DfTooltipTruncateDirective, isStandalone: true, selector: "[dfTooltipTruncate]", exportAs: ["dfTooltipTruncate"], ngImport: i0 }); }
|
|
@@ -4815,6 +4820,42 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
|
|
|
4815
4820
|
}]
|
|
4816
4821
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
|
|
4817
4822
|
|
|
4823
|
+
/**
|
|
4824
|
+
* DfTitleTruncate directive
|
|
4825
|
+
* It adds the title attribute with the element's inner text as value
|
|
4826
|
+
* when the element is truncated.
|
|
4827
|
+
*/
|
|
4828
|
+
class DfTitleTruncateDirective {
|
|
4829
|
+
constructor(elementRef, renderer) {
|
|
4830
|
+
this.elementRef = elementRef;
|
|
4831
|
+
this.renderer = renderer;
|
|
4832
|
+
}
|
|
4833
|
+
ngOnInit() {
|
|
4834
|
+
this.renderer.addClass(this.elementRef.nativeElement, 'text-truncate');
|
|
4835
|
+
}
|
|
4836
|
+
ngDoCheck() {
|
|
4837
|
+
const { nativeElement } = this.elementRef;
|
|
4838
|
+
const titleAttributeName = 'title';
|
|
4839
|
+
if (hasOverflow(nativeElement)) {
|
|
4840
|
+
const value = nativeElement.innerText;
|
|
4841
|
+
nativeElement.setAttribute(titleAttributeName, value);
|
|
4842
|
+
}
|
|
4843
|
+
else if (nativeElement.getAttribute(titleAttributeName)) {
|
|
4844
|
+
nativeElement.removeAttribute(titleAttributeName);
|
|
4845
|
+
}
|
|
4846
|
+
}
|
|
4847
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfTitleTruncateDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
4848
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: DfTitleTruncateDirective, isStandalone: true, selector: "[dfTitleTruncate]", exportAs: ["dfTitleTruncate"], ngImport: i0 }); }
|
|
4849
|
+
}
|
|
4850
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfTitleTruncateDirective, decorators: [{
|
|
4851
|
+
type: Directive,
|
|
4852
|
+
args: [{
|
|
4853
|
+
exportAs: 'dfTitleTruncate',
|
|
4854
|
+
selector: '[dfTitleTruncate]',
|
|
4855
|
+
standalone: true
|
|
4856
|
+
}]
|
|
4857
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
|
|
4858
|
+
|
|
4818
4859
|
let uniqueId = 0;
|
|
4819
4860
|
/**
|
|
4820
4861
|
* SideNav is a component to provide navigation feature with a panel on the side of your page
|
|
@@ -4835,11 +4876,19 @@ class DfSideNavListComponent {
|
|
|
4835
4876
|
return `df-sidenav-id-${uniqueId};`;
|
|
4836
4877
|
}
|
|
4837
4878
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfSideNavListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4838
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfSideNavListComponent, isStandalone: true, selector: "df-sidenavlist", inputs: { items: "items", tplIcon: "tplIcon", tplItem: "tplItem", currentItem: "currentItem", id: "id" }, ngImport: i0, template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap
|
|
4879
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfSideNavListComponent, isStandalone: true, selector: "df-sidenavlist", inputs: { items: "items", tplIcon: "tplIcon", tplItem: "tplItem", currentItem: "currentItem", id: "id" }, ngImport: i0, template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n <span\n class=\"ms-3\"\n [class.icon-chevron-down]=\"item.isCollapsed\"\n [class.icon-chevron-up]=\"!item.isCollapsed\"\n ></span>\n <!-- put the chevron as icon directly in the menu -->\n <!-- todo the icon and the minimized -->\n </button>\n <!-- we don't pass the icons as they are not suppose to have ones ??-->\n <df-sidenavlist\n [items]=\"item.subMenus ?? []\"\n [tplItem]=\"tplItem\"\n [currentItem]=\"item\"\n [id]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n ></df-sidenavlist>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSubMenus\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n <ng-template #elseSubMenus>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfSideNavItemContent>\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon me-5\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.actionButton\">\n <ng-template #dfSideNavItemButton>\n <button\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n (click)=\"sideNavService.activeItem(item)\"\n [class.active]=\"item.isActive\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </button>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseAction\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n <ng-template #elseAction>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfRouterTemplate>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n routerLinkActive=\"active\"\n routerLink=\"{{ item.value }}\"\n ariaCurrentWhenActive=\"page\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.routerLink\">\n <ng-container *ngIf=\"!item.breakpoints; else elseRouterLink\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n <ng-template #elseRouterLink>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.separator\">\n <ng-template #dfSeparatorTmp>\n <hr class=\"spacing-01\" />\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSeparator\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n <ng-template #elseSeparator>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.template\">\n <ng-template\n *ngIf=\"tplItem\"\n [ngTemplateOutlet]=\"tplItem.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.title\">\n <ng-template #dfTitleTmp>\n <div class=\"df-sidenav-item df-sidenav-title d-flex align-items-center flex-grow-1\">\n <span class=\"text-nowrap text-uppercase text-muted\" dfTitleTruncate>{{ item.title }}</span>\n </div>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseTitle\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n <ng-template #elseTitle>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <ng-template #dfLinkDefaultTmp>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n href=\"{{ item.value }}\"\n [class.active]=\"item.isActive && item.type === sideNavService.type.link\"\n [attr.target]=\"item.type === sideNavService.type.externalLink ? '_blank' : ''\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseDefault\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n <ng-template #elseDefault>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n </li>\n</ul>\n", dependencies: [{ kind: "component", type: DfSideNavListComponent, selector: "df-sidenavlist", inputs: ["items", "tplIcon", "tplItem", "currentItem", "id"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: NgbCollapseModule }, { kind: "directive", type: i1.NgbCollapse, selector: "[ngbCollapse]", inputs: ["animation", "ngbCollapse", "horizontal"], outputs: ["ngbCollapseChange", "shown", "hidden"], exportAs: ["ngbCollapse"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "ngmodule", type: DfMediaModule }, { kind: "directive", type: DfIfMediaDirective, selector: "[dfIfMedia]", inputs: ["dfIfMedia"] }, { kind: "ngmodule", type: DfSideNavCollapseModule }, { kind: "directive", type: DfManageSideNavDirective, selector: "[dfManageSideNav]" }, { kind: "directive", type: DfTitleTruncateDirective, selector: "[dfTitleTruncate]", exportAs: ["dfTitleTruncate"] }] }); }
|
|
4839
4880
|
}
|
|
4840
4881
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfSideNavListComponent, decorators: [{
|
|
4841
4882
|
type: Component,
|
|
4842
|
-
args: [{ selector: 'df-sidenavlist', standalone: true, imports: [
|
|
4883
|
+
args: [{ selector: 'df-sidenavlist', standalone: true, imports: [
|
|
4884
|
+
CommonModule,
|
|
4885
|
+
NgbCollapseModule,
|
|
4886
|
+
RouterModule,
|
|
4887
|
+
DfMediaModule,
|
|
4888
|
+
DfSideNavCollapseModule,
|
|
4889
|
+
DfManageSideNavDirective,
|
|
4890
|
+
DfTitleTruncateDirective
|
|
4891
|
+
], template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n <span\n class=\"ms-3\"\n [class.icon-chevron-down]=\"item.isCollapsed\"\n [class.icon-chevron-up]=\"!item.isCollapsed\"\n ></span>\n <!-- put the chevron as icon directly in the menu -->\n <!-- todo the icon and the minimized -->\n </button>\n <!-- we don't pass the icons as they are not suppose to have ones ??-->\n <df-sidenavlist\n [items]=\"item.subMenus ?? []\"\n [tplItem]=\"tplItem\"\n [currentItem]=\"item\"\n [id]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n ></df-sidenavlist>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSubMenus\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n <ng-template #elseSubMenus>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfSideNavItemContent>\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon me-5\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.actionButton\">\n <ng-template #dfSideNavItemButton>\n <button\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n (click)=\"sideNavService.activeItem(item)\"\n [class.active]=\"item.isActive\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </button>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseAction\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n <ng-template #elseAction>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfRouterTemplate>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n routerLinkActive=\"active\"\n routerLink=\"{{ item.value }}\"\n ariaCurrentWhenActive=\"page\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.routerLink\">\n <ng-container *ngIf=\"!item.breakpoints; else elseRouterLink\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n <ng-template #elseRouterLink>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.separator\">\n <ng-template #dfSeparatorTmp>\n <hr class=\"spacing-01\" />\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSeparator\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n <ng-template #elseSeparator>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.template\">\n <ng-template\n *ngIf=\"tplItem\"\n [ngTemplateOutlet]=\"tplItem.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.title\">\n <ng-template #dfTitleTmp>\n <div class=\"df-sidenav-item df-sidenav-title d-flex align-items-center flex-grow-1\">\n <span class=\"text-nowrap text-uppercase text-muted\" dfTitleTruncate>{{ item.title }}</span>\n </div>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseTitle\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n <ng-template #elseTitle>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <ng-template #dfLinkDefaultTmp>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n href=\"{{ item.value }}\"\n [class.active]=\"item.isActive && item.type === sideNavService.type.link\"\n [attr.target]=\"item.type === sideNavService.type.externalLink ? '_blank' : ''\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseDefault\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n <ng-template #elseDefault>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n </li>\n</ul>\n" }]
|
|
4843
4892
|
}], propDecorators: { items: [{
|
|
4844
4893
|
type: Input
|
|
4845
4894
|
}], tplIcon: [{
|
|
@@ -5660,5 +5709,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
|
|
|
5660
5709
|
* Generated bundle index. Do not edit.
|
|
5661
5710
|
*/
|
|
5662
5711
|
|
|
5663
|
-
export { BREAKPOINTS_VARS, ChangeContext, CloseInputDatePickerDirective, DF_BREAKPOINTS_VAR_DEFAULT, DfAccessibilityModule, DfAdvancedCardModule, DfAdvancedInputModule, DfAlertModule, DfAmadeusIconComponent, DfBreakpoints, DfDatePickerModule, DfDatepickerRangeDirective, DfDatepickerRangeService, DfDefaultSpinnerComponent, DfDirectionDetectionService, DfExcludeTrapDirective, DfFooterModule, DfIconModule, DfIfMediaDirective, DfInputIconDirective, DfInsertIconDirective, DfInsertIconModule, DfManageBadgeEventsDirective, DfManageCardSelectionDirective, DfManageNavSelectDirective, DfManageSideNavDirective, DfMedia, DfMediaModule, DfMediaObserver, DfMediaQuery, DfModalService, DfModule, DfNavItemType, DfOptionHighlightDirective, DfPopoverConfig, DfPopoverModule, DfProgressIndicatorBackdropComponent, DfProgressIndicatorContainerComponent, DfProgressIndicatorContentPosition, DfProgressIndicatorContentProgressBar, DfProgressIndicatorContentSpinner, DfProgressIndicatorContentType, DfProgressIndicatorDirective, DfProgressIndicatorModule, DfProgressIndicatorRef, DfProgressIndicatorService, DfProgressbarComponent, DfProgressbarModule, DfSelectModule, DfSideNavCollapseDirective, DfSideNavCollapseModule, DfSideNavCollapseService, DfSideNavComponent, DfSideNavHeaderDirective, DfSideNavIconDirective, DfSideNavItemDirective, DfSideNavModule, DfSideNavService, DfSliderDirectionDirective, DfSliderModule, DfToastModule, DfTooltipModule, DfTooltipTruncateDirective, DfTriggerClickDirective, LabelType, Options, PointerType, RightToLeftDirectionEnum, SkipLinkDirective, SkipLinksContainerComponent, SliderComponent };
|
|
5712
|
+
export { BREAKPOINTS_VARS, ChangeContext, CloseInputDatePickerDirective, DF_BREAKPOINTS_VAR_DEFAULT, DfAccessibilityModule, DfAdvancedCardModule, DfAdvancedInputModule, DfAlertModule, DfAmadeusIconComponent, DfBreakpoints, DfDatePickerModule, DfDatepickerRangeDirective, DfDatepickerRangeService, DfDefaultSpinnerComponent, DfDirectionDetectionService, DfExcludeTrapDirective, DfFooterModule, DfIconModule, DfIfMediaDirective, DfInputIconDirective, DfInsertIconDirective, DfInsertIconModule, DfManageBadgeEventsDirective, DfManageCardSelectionDirective, DfManageNavSelectDirective, DfManageSideNavDirective, DfMedia, DfMediaModule, DfMediaObserver, DfMediaQuery, DfModalService, DfModule, DfNavItemType, DfOptionHighlightDirective, DfPopoverConfig, DfPopoverModule, DfProgressIndicatorBackdropComponent, DfProgressIndicatorContainerComponent, DfProgressIndicatorContentPosition, DfProgressIndicatorContentProgressBar, DfProgressIndicatorContentSpinner, DfProgressIndicatorContentType, DfProgressIndicatorDirective, DfProgressIndicatorModule, DfProgressIndicatorRef, DfProgressIndicatorService, DfProgressbarComponent, DfProgressbarModule, DfSelectModule, DfSideNavCollapseDirective, DfSideNavCollapseModule, DfSideNavCollapseService, DfSideNavComponent, DfSideNavHeaderDirective, DfSideNavIconDirective, DfSideNavItemDirective, DfSideNavModule, DfSideNavService, DfSliderDirectionDirective, DfSliderModule, DfTitleTruncateDirective, DfToastModule, DfTooltipModule, DfTooltipTruncateDirective, DfTriggerClickDirective, LabelType, Options, PointerType, RightToLeftDirectionEnum, SkipLinkDirective, SkipLinksContainerComponent, SliderComponent };
|
|
5664
5713
|
//# sourceMappingURL=design-factory.mjs.map
|