@porscheinformatik/clr-addons 21.6.0 → 21.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, NgModule, Injectable, EventEmitter, Output, Input, Directive, ViewChild, ContentChildren, TemplateRef, ViewChildren, HostBinding, ElementRef, Renderer2, forwardRef, DOCUMENT, Inject, ContentChild, Optional, input, ChangeDetectionStrategy, signal, computed, SkipSelf, inject, model, contentChild, linkedSignal, DestroyRef, contentChildren, effect, NgZone, viewChild, ViewContainerRef, afterRenderEffect, InjectionToken, isSignal, HostListener, LOCALE_ID, Self, Host, output, ChangeDetectorRef, Injector, untracked, runInInjectionContext } from '@angular/core';
2
+ import { Component, NgModule, Injectable, EventEmitter, Output, Input, Directive, ViewChild, ContentChildren, TemplateRef, ViewChildren, HostBinding, ElementRef, Renderer2, forwardRef, DOCUMENT, Inject, ContentChild, Optional, input, ChangeDetectionStrategy, signal, computed, SkipSelf, inject, model, contentChild, linkedSignal, DestroyRef, contentChildren, effect, NgZone, viewChild, output, ViewContainerRef, afterRenderEffect, InjectionToken, isSignal, HostListener, LOCALE_ID, Self, Host, ChangeDetectorRef, Injector, untracked, runInInjectionContext } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule, NgComponentOutlet, NgTemplateOutlet, getLocaleDateFormat, FormatWidth, NgOptimizedImage, NgClass } from '@angular/common';
5
5
  import * as i2 from '@clr/angular/icon';
@@ -15,13 +15,13 @@ import { RouterModule } from '@angular/router';
15
15
  import { trigger, transition, style, animate, state } from '@angular/animations';
16
16
  import * as i1$1 from '@clr/angular/forms/common';
17
17
  import * as i2$2 from '@clr/angular/forms/radio';
18
- import * as i3$1 from '@clr/angular/popover/dropdown';
19
- import * as i2$3 from '@clr/angular/popover/common';
20
- import * as i2$4 from '@clr/angular/emphasis/alert';
18
+ import * as i2$3 from '@clr/angular/popover/dropdown';
19
+ import * as i2$4 from '@clr/angular/popover/common';
20
+ import * as i2$5 from '@clr/angular/emphasis/alert';
21
21
  import { takeUntilDestroyed, toObservable, outputFromObservable, toSignal } from '@angular/core/rxjs-interop';
22
- import * as i2$5 from '@clr/angular/progress/spinner';
22
+ import * as i2$6 from '@clr/angular/progress/spinner';
23
23
  import * as i4 from '@clr/angular/forms/checkbox';
24
- import * as i3$2 from '@clr/angular/forms/input';
24
+ import * as i3$1 from '@clr/angular/forms/input';
25
25
  import * as i1$3 from '@angular/common/http';
26
26
  import { CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';
27
27
  import * as i4$1 from '@clr/angular/forms/datepicker';
@@ -42,10 +42,10 @@ class ClrBackButton {
42
42
  back() {
43
43
  this.location.back();
44
44
  }
45
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBackButton, deps: [{ token: i1.Location }], target: i0.ɵɵFactoryTarget.Component }); }
46
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrBackButton, isStandalone: false, selector: "clr-back-button", ngImport: i0, template: "<button type=\"button\" class=\"btn btn-icon btn-link back-button\" (click)=\"back()\" data-testid=\"back-button\">\n <cds-icon shape=\"arrow\" direction=\"left\" size=\"36\"></cds-icon>\n</button>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBackButton, deps: [{ token: i1.Location }], target: i0.ɵɵFactoryTarget.Component }); }
46
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrBackButton, isStandalone: false, selector: "clr-back-button", ngImport: i0, template: "<button type=\"button\" class=\"btn btn-icon btn-link back-button\" (click)=\"back()\" data-testid=\"back-button\">\n <cds-icon shape=\"arrow\" direction=\"left\" size=\"36\"></cds-icon>\n</button>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
47
47
  }
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBackButton, decorators: [{
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBackButton, decorators: [{
49
49
  type: Component,
50
50
  args: [{ selector: 'clr-back-button', standalone: false, template: "<button type=\"button\" class=\"btn btn-icon btn-link back-button\" (click)=\"back()\" data-testid=\"back-button\">\n <cds-icon shape=\"arrow\" direction=\"left\" size=\"36\"></cds-icon>\n</button>\n" }]
51
51
  }], ctorParameters: () => [{ type: i1.Location }] });
@@ -56,11 +56,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
56
56
  * The full license information can be found in LICENSE in the root directory of this project.
57
57
  */
58
58
  class ClrBackButtonModule {
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBackButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
60
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrBackButtonModule, declarations: [ClrBackButton], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrBackButton] }); }
61
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBackButtonModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBackButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
60
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrBackButtonModule, declarations: [ClrBackButton], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrBackButton] }); }
61
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBackButtonModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
62
62
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBackButtonModule, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBackButtonModule, decorators: [{
64
64
  type: NgModule,
65
65
  args: [{
66
66
  imports: [CommonModule, ClarityModule, FormsModule],
@@ -87,10 +87,10 @@ class ClrBreadcrumbService {
87
87
  updateBreadcrumb(breadcrumbElements) {
88
88
  this.breadcrumbChange.next(breadcrumbElements);
89
89
  }
90
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumbService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
91
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumbService, providedIn: 'root' }); }
90
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumbService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
91
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumbService, providedIn: 'root' }); }
92
92
  }
93
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumbService, decorators: [{
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumbService, decorators: [{
94
94
  type: Injectable,
95
95
  args: [{
96
96
  providedIn: 'root',
@@ -118,10 +118,10 @@ class ClrBreadcrumb {
118
118
  this.destroyed.next();
119
119
  this.destroyed.complete();
120
120
  }
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumb, deps: [{ token: ClrBreadcrumbService }], target: i0.ɵɵFactoryTarget.Component }); }
122
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrBreadcrumb, isStandalone: false, selector: "clr-breadcrumb", ngImport: i0, template: "@if (breadcrumbElements.length) {\n<nav aria-label=\"breadcrumb\" data-testid=\"breadcrumb-nav\">\n <ol class=\"breadcrumb\">\n @for (breadcrumbItem of breadcrumbElements; track breadcrumbItem) { @if (breadcrumbItem.url) {\n <li class=\"breadcrumb-item\">\n <a [routerLink]=\"breadcrumbItem.url\" [attr.data-testid]=\"'breadcrumb-item-' + (breadcrumbItem.label)\">\n {{breadcrumbItem.label}}\n </a>\n </li>\n } @if (!breadcrumbItem.url) {\n <li class=\"breadcrumb-item active\" [attr.data-testid]=\"'breadcrumb-active-item-' + (breadcrumbItem.label)\">\n {{breadcrumbItem.label}}\n </li>\n } }\n </ol>\n</nav>\n}\n", dependencies: [{ kind: "directive", type: i2$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumb, deps: [{ token: ClrBreadcrumbService }], target: i0.ɵɵFactoryTarget.Component }); }
122
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrBreadcrumb, isStandalone: false, selector: "clr-breadcrumb", ngImport: i0, template: "@if (breadcrumbElements.length) {\n<nav aria-label=\"breadcrumb\" data-testid=\"breadcrumb-nav\">\n <ol class=\"breadcrumb\">\n @for (breadcrumbItem of breadcrumbElements; track breadcrumbItem) { @if (breadcrumbItem.url) {\n <li class=\"breadcrumb-item\">\n <a [routerLink]=\"breadcrumbItem.url\" [attr.data-testid]=\"'breadcrumb-item-' + (breadcrumbItem.label)\">\n {{breadcrumbItem.label}}\n </a>\n </li>\n } @if (!breadcrumbItem.url) {\n <li class=\"breadcrumb-item active\" [attr.data-testid]=\"'breadcrumb-active-item-' + (breadcrumbItem.label)\">\n {{breadcrumbItem.label}}\n </li>\n } }\n </ol>\n</nav>\n}\n", dependencies: [{ kind: "directive", type: i2$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
123
123
  }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumb, decorators: [{
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumb, decorators: [{
125
125
  type: Component,
126
126
  args: [{ selector: 'clr-breadcrumb', standalone: false, template: "@if (breadcrumbElements.length) {\n<nav aria-label=\"breadcrumb\" data-testid=\"breadcrumb-nav\">\n <ol class=\"breadcrumb\">\n @for (breadcrumbItem of breadcrumbElements; track breadcrumbItem) { @if (breadcrumbItem.url) {\n <li class=\"breadcrumb-item\">\n <a [routerLink]=\"breadcrumbItem.url\" [attr.data-testid]=\"'breadcrumb-item-' + (breadcrumbItem.label)\">\n {{breadcrumbItem.label}}\n </a>\n </li>\n } @if (!breadcrumbItem.url) {\n <li class=\"breadcrumb-item active\" [attr.data-testid]=\"'breadcrumb-active-item-' + (breadcrumbItem.label)\">\n {{breadcrumbItem.label}}\n </li>\n } }\n </ol>\n</nav>\n}\n" }]
127
127
  }], ctorParameters: () => [{ type: ClrBreadcrumbService }] });
@@ -132,11 +132,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
132
132
  * The full license information can be found in LICENSE in the root directory of this project.
133
133
  */
134
134
  class ClrBreadcrumbModule {
135
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
136
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumbModule, declarations: [ClrBreadcrumb], imports: [CommonModule, ClarityModule, RouterModule], exports: [ClrBreadcrumb] }); }
137
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumbModule, providers: [ClrBreadcrumbService], imports: [CommonModule, ClarityModule, RouterModule] }); }
135
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
136
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumbModule, declarations: [ClrBreadcrumb], imports: [CommonModule, ClarityModule, RouterModule], exports: [ClrBreadcrumb] }); }
137
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumbModule, providers: [ClrBreadcrumbService], imports: [CommonModule, ClarityModule, RouterModule] }); }
138
138
  }
139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBreadcrumbModule, decorators: [{
139
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBreadcrumbModule, decorators: [{
140
140
  type: NgModule,
141
141
  args: [{
142
142
  imports: [CommonModule, ClarityModule, RouterModule],
@@ -190,8 +190,8 @@ class ClrCollapseExpandSection {
190
190
  }
191
191
  this.isCollapsed = !this.isCollapsed;
192
192
  }
193
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrCollapseExpandSection, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
194
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrCollapseExpandSection, isStandalone: false, selector: "clr-collapse-expand-section", inputs: { isCollapsed: ["clrIsCollapsed", "isCollapsed"], disableHeaderStyles: ["clrDisableHeaderStyles", "disableHeaderStyles"], disableSubtitle: ["clrDisableSubtitle", "disableSubtitle"] }, outputs: { collapsed: "clrCollapsed", expanded: "clrExpanded" }, ngImport: i0, template: "<div class=\"ces\" data-testid=\"collapse-expand-section\">\n <ng-template #titleContent>\n <ng-content select=\"[clr-ces-title]\"></ng-content>\n </ng-template>\n <div class=\"ces-title\" [class.disabled-header-styles]=\"disableHeaderStyles\">\n @if (!disableHeaderStyles) {\n <h2>\n <span\n class=\"ces-title-trigger\"\n data-testid=\"collapse-expand-section-title-trigger\"\n (click)=\"onCollapseExpand()\"\n (keydown.enter)=\"onCollapseExpand()\"\n (keydown.space)=\"onCollapseExpand(); $event.preventDefault()\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-expanded]=\"!isCollapsed\"\n >\n <ng-container *ngTemplateOutlet=\"titleContent\"></ng-container>\n </span>\n <ng-container *ngTemplateOutlet=\"caretBtn\"></ng-container>\n </h2>\n } @else {\n <span\n class=\"ces-title-trigger\"\n data-testid=\"collapse-expand-section-title-trigger-unstyled\"\n (click)=\"onCollapseExpand()\"\n (keydown.enter)=\"onCollapseExpand()\"\n (keydown.space)=\"onCollapseExpand(); $event.preventDefault()\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-expanded]=\"!isCollapsed\"\n >\n <ng-container *ngTemplateOutlet=\"titleContent\"></ng-container>\n </span>\n <ng-container *ngTemplateOutlet=\"caretBtn\"></ng-container>\n }\n <ng-template #caretBtn>\n <button\n type=\"button\"\n (click)=\"onCollapseExpand()\"\n class=\"btn btn-icon btn-link ces-caret-btn\"\n data-testid=\"collapse-expand-section-caret-button\"\n >\n <cds-icon\n shape=\"angle\"\n size=\"28\"\n class=\"ces-caret-icon\"\n [@rotateIcon]=\"isCollapsed\"\n [@.disabled]=\"disableAnimation\"\n ></cds-icon>\n </button>\n </ng-template>\n </div>\n <ng-template #subtitleContent>\n <ng-content select=\"[clr-ces-subtitle]\"></ng-content>\n </ng-template>\n @if (!disableSubtitle) {\n <div class=\"ces-subtitle\" data-testid=\"collapse-expand-section-subtitle\">\n @if (!disableHeaderStyles) {\n <h4>\n <ng-container *ngTemplateOutlet=\"subtitleContent\"></ng-container>\n </h4>\n } @else {\n <ng-container *ngTemplateOutlet=\"subtitleContent\"></ng-container>\n }\n </div>\n } @if (!isCollapsed) {\n <div\n data-testid=\"collapse-expand-section-content\"\n [@collapseExpandAnimation]=\"isCollapsed\"\n [@.disabled]=\"disableAnimation\"\n >\n <ng-content select=\"[clr-ces-content]\"></ng-content>\n </div>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }], animations: [
193
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrCollapseExpandSection, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
194
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrCollapseExpandSection, isStandalone: false, selector: "clr-collapse-expand-section", inputs: { isCollapsed: ["clrIsCollapsed", "isCollapsed"], disableHeaderStyles: ["clrDisableHeaderStyles", "disableHeaderStyles"], disableSubtitle: ["clrDisableSubtitle", "disableSubtitle"] }, outputs: { collapsed: "clrCollapsed", expanded: "clrExpanded" }, ngImport: i0, template: "<div class=\"ces\" data-testid=\"collapse-expand-section\">\n <ng-template #titleContent>\n <ng-content select=\"[clr-ces-title]\"></ng-content>\n </ng-template>\n <div class=\"ces-title\" [class.disabled-header-styles]=\"disableHeaderStyles\">\n @if (!disableHeaderStyles) {\n <h2>\n <span\n class=\"ces-title-trigger\"\n data-testid=\"collapse-expand-section-title-trigger\"\n (click)=\"onCollapseExpand()\"\n (keydown.enter)=\"onCollapseExpand()\"\n (keydown.space)=\"onCollapseExpand(); $event.preventDefault()\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-expanded]=\"!isCollapsed\"\n >\n <ng-container *ngTemplateOutlet=\"titleContent\"></ng-container>\n </span>\n <ng-container *ngTemplateOutlet=\"caretBtn\"></ng-container>\n </h2>\n } @else {\n <span\n class=\"ces-title-trigger\"\n data-testid=\"collapse-expand-section-title-trigger-unstyled\"\n (click)=\"onCollapseExpand()\"\n (keydown.enter)=\"onCollapseExpand()\"\n (keydown.space)=\"onCollapseExpand(); $event.preventDefault()\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-expanded]=\"!isCollapsed\"\n >\n <ng-container *ngTemplateOutlet=\"titleContent\"></ng-container>\n </span>\n <ng-container *ngTemplateOutlet=\"caretBtn\"></ng-container>\n }\n <ng-template #caretBtn>\n <button\n type=\"button\"\n (click)=\"onCollapseExpand()\"\n class=\"btn btn-icon btn-link ces-caret-btn\"\n data-testid=\"collapse-expand-section-caret-button\"\n >\n <cds-icon\n shape=\"angle\"\n size=\"28\"\n class=\"ces-caret-icon\"\n [@rotateIcon]=\"isCollapsed\"\n [@.disabled]=\"disableAnimation\"\n ></cds-icon>\n </button>\n </ng-template>\n </div>\n <ng-template #subtitleContent>\n <ng-content select=\"[clr-ces-subtitle]\"></ng-content>\n </ng-template>\n @if (!disableSubtitle) {\n <div class=\"ces-subtitle\" data-testid=\"collapse-expand-section-subtitle\">\n @if (!disableHeaderStyles) {\n <h4>\n <ng-container *ngTemplateOutlet=\"subtitleContent\"></ng-container>\n </h4>\n } @else {\n <ng-container *ngTemplateOutlet=\"subtitleContent\"></ng-container>\n }\n </div>\n } @if (!isCollapsed) {\n <div\n data-testid=\"collapse-expand-section-content\"\n [@collapseExpandAnimation]=\"isCollapsed\"\n [@.disabled]=\"disableAnimation\"\n >\n <ng-content select=\"[clr-ces-content]\"></ng-content>\n </div>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }], animations: [
195
195
  trigger('collapseExpandAnimation', [
196
196
  transition(':enter', [
197
197
  style({ opacity: 0, height: 0, overflow: 'hidden' }),
@@ -210,7 +210,7 @@ class ClrCollapseExpandSection {
210
210
  ]),
211
211
  ] }); }
212
212
  }
213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrCollapseExpandSection, decorators: [{
213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrCollapseExpandSection, decorators: [{
214
214
  type: Component,
215
215
  args: [{ selector: 'clr-collapse-expand-section', animations: [
216
216
  trigger('collapseExpandAnimation', [
@@ -253,11 +253,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
253
253
  * The full license information can be found in LICENSE in the root directory of this project.
254
254
  */
255
255
  class ClrCollapseExpandSectionModule {
256
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrCollapseExpandSectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
257
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrCollapseExpandSectionModule, declarations: [ClrCollapseExpandSection], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrCollapseExpandSection] }); }
258
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrCollapseExpandSectionModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
256
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrCollapseExpandSectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
257
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrCollapseExpandSectionModule, declarations: [ClrCollapseExpandSection], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrCollapseExpandSection] }); }
258
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrCollapseExpandSectionModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
259
259
  }
260
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrCollapseExpandSectionModule, decorators: [{
260
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrCollapseExpandSectionModule, decorators: [{
261
261
  type: NgModule,
262
262
  args: [{
263
263
  imports: [CommonModule, ClarityModule, FormsModule],
@@ -313,8 +313,8 @@ class ClrContentPanel {
313
313
  // this event is used by the tree table to adjust the colomns width
314
314
  window.dispatchEvent(new Event('resize'));
315
315
  }
316
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
317
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrContentPanel, isStandalone: false, selector: "clr-content-panel", outputs: { opened: "clrOpened", closed: "clrClosed" }, host: { properties: { "class.content-panel": "true" } }, ngImport: i0, template: "@if (_open) {\n<div data-testid=\"content-panel\" [@slideIn] class=\"content-panel-content-wrapper\" (@slideIn.done)=\"resizeWindow()\">\n <h3 class=\"content-panel-title\" data-testid=\"content-panel-title\">\n <button\n type=\"button\"\n class=\"close content-panel-close-btn\"\n (click)=\"close()\"\n data-testid=\"content-panel-close-button\"\n >\n <cds-icon class=\"content-panel-close-icon\" shape=\"times\" size=\"24\"></cds-icon>\n </button>\n <ng-content select=\"[clr-content-panel-title]\"></ng-content>\n </h3>\n <ng-content select=\"[clr-content-panel-content]\"></ng-content>\n</div>\n<div\n data-testid=\"content-panel-backdrop\"\n [@fade]\n class=\"content-panel-backdrop\"\n (click)=\"close()\"\n (@fade.done)=\"resizeWindow()\"\n></div>\n}\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }], animations: [
316
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
317
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrContentPanel, isStandalone: false, selector: "clr-content-panel", outputs: { opened: "clrOpened", closed: "clrClosed" }, host: { properties: { "class.content-panel": "true" } }, ngImport: i0, template: "@if (_open) {\n<div data-testid=\"content-panel\" [@slideIn] class=\"content-panel-content-wrapper\" (@slideIn.done)=\"resizeWindow()\">\n <h3 class=\"content-panel-title\" data-testid=\"content-panel-title\">\n <button\n type=\"button\"\n class=\"close content-panel-close-btn\"\n (click)=\"close()\"\n data-testid=\"content-panel-close-button\"\n >\n <cds-icon class=\"content-panel-close-icon\" shape=\"times\" size=\"24\"></cds-icon>\n </button>\n <ng-content select=\"[clr-content-panel-title]\"></ng-content>\n </h3>\n <ng-content select=\"[clr-content-panel-content]\"></ng-content>\n</div>\n<div\n data-testid=\"content-panel-backdrop\"\n [@fade]\n class=\"content-panel-backdrop\"\n (click)=\"close()\"\n (@fade.done)=\"resizeWindow()\"\n></div>\n}\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }], animations: [
318
318
  trigger('slideIn', [
319
319
  transition(':enter', [style({ opacity: 0, width: 0 }), animate('0.2s', style({ opacity: 1, width: '*' }))]),
320
320
  transition(':leave', [style({ opacity: 1, width: '*' }), animate('0.2s', style({ opacity: 0, width: 0 }))]),
@@ -325,7 +325,7 @@ class ClrContentPanel {
325
325
  ]),
326
326
  ] }); }
327
327
  }
328
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanel, decorators: [{
328
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanel, decorators: [{
329
329
  type: Component,
330
330
  args: [{ selector: 'clr-content-panel', animations: [
331
331
  trigger('slideIn', [
@@ -353,8 +353,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
353
353
  * The full license information can be found in LICENSE in the root directory of this project.
354
354
  */
355
355
  class ClrContentPanelContainer {
356
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelContainer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
357
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrContentPanelContainer, isStandalone: false, selector: "clr-content-panel-container", host: { properties: { "class.content-container": "true", "class.content-panel-container": "true" } }, ngImport: i0, template: `
356
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelContainer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
357
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrContentPanelContainer, isStandalone: false, selector: "clr-content-panel-container", host: { properties: { "class.content-container": "true", "class.content-panel-container": "true" } }, ngImport: i0, template: `
358
358
  <div class="content-panel-outer-wrapper" data-testid="content-panel-container">
359
359
  <ng-content select="clr-content-panel-container-content"></ng-content>
360
360
  <ng-content select="clr-content-panel-container-footer"></ng-content>
@@ -362,7 +362,7 @@ class ClrContentPanelContainer {
362
362
  <ng-content select="clr-content-panel"></ng-content>
363
363
  `, isInline: true }); }
364
364
  }
365
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelContainer, decorators: [{
365
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelContainer, decorators: [{
366
366
  type: Component,
367
367
  args: [{
368
368
  selector: 'clr-content-panel-container',
@@ -387,10 +387,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
387
387
  * The full license information can be found in LICENSE in the root directory of this project.
388
388
  */
389
389
  class ClrContentPanelContainerContent {
390
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelContainerContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
391
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrContentPanelContainerContent, isStandalone: false, selector: "clr-content-panel-container-content", host: { properties: { "class.content-area": "true" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true }); }
390
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelContainerContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
391
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrContentPanelContainerContent, isStandalone: false, selector: "clr-content-panel-container-content", host: { properties: { "class.content-area": "true" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true }); }
392
392
  }
393
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelContainerContent, decorators: [{
393
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelContainerContent, decorators: [{
394
394
  type: Component,
395
395
  args: [{
396
396
  selector: 'clr-content-panel-container-content',
@@ -408,10 +408,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
408
408
  * The full license information can be found in LICENSE in the root directory of this project.
409
409
  */
410
410
  class ClrContentPanelContainerFooter {
411
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelContainerFooter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
412
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrContentPanelContainerFooter, isStandalone: false, selector: "clr-content-panel-container-footer", host: { properties: { "class.content-area-footer": "true" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true }); }
411
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelContainerFooter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
412
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrContentPanelContainerFooter, isStandalone: false, selector: "clr-content-panel-container-footer", host: { properties: { "class.content-area-footer": "true" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true }); }
413
413
  }
414
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelContainerFooter, decorators: [{
414
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelContainerFooter, decorators: [{
415
415
  type: Component,
416
416
  args: [{
417
417
  selector: 'clr-content-panel-container-footer',
@@ -429,14 +429,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
429
429
  * The full license information can be found in LICENSE in the root directory of this project.
430
430
  */
431
431
  class ClrContentPanelModule {
432
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
433
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelModule, declarations: [ClrContentPanel,
432
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
433
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelModule, declarations: [ClrContentPanel,
434
434
  ClrContentPanelContainer,
435
435
  ClrContentPanelContainerContent,
436
436
  ClrContentPanelContainerFooter], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrContentPanel, ClrContentPanelContainer, ClrContentPanelContainerContent, ClrContentPanelContainerFooter] }); }
437
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
437
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
438
438
  }
439
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrContentPanelModule, decorators: [{
439
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrContentPanelModule, decorators: [{
440
440
  type: NgModule,
441
441
  args: [{
442
442
  imports: [CommonModule, ClarityModule, FormsModule],
@@ -507,10 +507,10 @@ class ClrDataListPredefinedValidatorDirective {
507
507
  validate(control) {
508
508
  return ClrDataListValidators.predefined(this.clrDataListPredefined)(control);
509
509
  }
510
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDataListPredefinedValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
511
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrDataListPredefinedValidatorDirective, isStandalone: false, selector: "[clrDataListPredefined]", inputs: { clrDataListPredefined: "clrDataListPredefined" }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrDataListPredefinedValidatorDirective, multi: true }], ngImport: i0 }); }
510
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDataListPredefinedValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
511
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrDataListPredefinedValidatorDirective, isStandalone: false, selector: "[clrDataListPredefined]", inputs: { clrDataListPredefined: "clrDataListPredefined" }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrDataListPredefinedValidatorDirective, multi: true }], ngImport: i0 }); }
512
512
  }
513
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDataListPredefinedValidatorDirective, decorators: [{
513
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDataListPredefinedValidatorDirective, decorators: [{
514
514
  type: Directive,
515
515
  args: [{
516
516
  selector: '[clrDataListPredefined]',
@@ -527,11 +527,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
527
527
  * The full license information can be found in LICENSE in the root directory of this project.
528
528
  */
529
529
  class ClrDataListValidatorModule {
530
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDataListValidatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
531
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrDataListValidatorModule, declarations: [ClrDataListPredefinedValidatorDirective], exports: [ClrDataListPredefinedValidatorDirective] }); }
532
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDataListValidatorModule }); }
530
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDataListValidatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
531
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrDataListValidatorModule, declarations: [ClrDataListPredefinedValidatorDirective], exports: [ClrDataListPredefinedValidatorDirective] }); }
532
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDataListValidatorModule }); }
533
533
  }
534
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDataListValidatorModule, decorators: [{
534
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDataListValidatorModule, decorators: [{
535
535
  type: NgModule,
536
536
  args: [{
537
537
  declarations: [ClrDataListPredefinedValidatorDirective],
@@ -563,8 +563,8 @@ class ClrDateTimeContainer {
563
563
  // Append it as a child
564
564
  this.renderer.appendChild(inputWrapper, timeInputElement);
565
565
  }
566
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateTimeContainer, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
567
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrDateTimeContainer, isStandalone: false, selector: "clr-date-time-container", host: { properties: { "class.date-time-container": "true" } }, viewQueries: [{ propertyName: "timeInput", first: true, predicate: ["timeInput"], descendants: true, static: true }], ngImport: i0, template: `
566
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateTimeContainer, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
567
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrDateTimeContainer, isStandalone: false, selector: "clr-date-time-container", host: { properties: { "class.date-time-container": "true" } }, viewQueries: [{ propertyName: "timeInput", first: true, predicate: ["timeInput"], descendants: true, static: true }], ngImport: i0, template: `
568
568
  <ng-content select="clr-date-container"></ng-content>
569
569
 
570
570
  <ng-template #timeInput>
@@ -574,7 +574,7 @@ class ClrDateTimeContainer {
574
574
  </ng-template>
575
575
  `, isInline: true }); }
576
576
  }
577
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateTimeContainer, decorators: [{
577
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateTimeContainer, decorators: [{
578
578
  type: Component,
579
579
  args: [{
580
580
  selector: 'clr-date-time-container',
@@ -603,10 +603,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
603
603
  * The full license information can be found in LICENSE in the root directory of this project.
604
604
  */
605
605
  class ClrTimeInput {
606
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTimeInput, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
607
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrTimeInput, isStandalone: false, selector: "[clrTime]", host: { properties: { "class.clr-input": "true" } }, ngImport: i0 }); }
606
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTimeInput, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
607
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrTimeInput, isStandalone: false, selector: "[clrTime]", host: { properties: { "class.clr-input": "true" } }, ngImport: i0 }); }
608
608
  }
609
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTimeInput, decorators: [{
609
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTimeInput, decorators: [{
610
610
  type: Directive,
611
611
  args: [{
612
612
  selector: '[clrTime]',
@@ -623,11 +623,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
623
623
  * The full license information can be found in LICENSE in the root directory of this project.
624
624
  */
625
625
  class ClrDateTimeModule {
626
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
627
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrDateTimeModule, declarations: [ClrDateTimeContainer, ClrTimeInput], imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule], exports: [ClrDateTimeContainer, ClrTimeInput] }); }
628
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateTimeModule, imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule] }); }
626
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
627
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrDateTimeModule, declarations: [ClrDateTimeContainer, ClrTimeInput], imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule], exports: [ClrDateTimeContainer, ClrTimeInput] }); }
628
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateTimeModule, imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule] }); }
629
629
  }
630
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateTimeModule, decorators: [{
630
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateTimeModule, decorators: [{
631
631
  type: NgModule,
632
632
  args: [{
633
633
  imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule],
@@ -678,10 +678,10 @@ class ClrDotPager {
678
678
  get pageArray() {
679
679
  return [...Array(this._pages).keys()];
680
680
  }
681
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDotPager, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
682
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrDotPager, isStandalone: false, selector: "clr-dot-pager", inputs: { pages: ["clrPages", "pages"], currentPage: ["clrCurrentPage", "currentPage"] }, outputs: { currentPageChange: "clrCurrentPageChange" }, host: { properties: { "class.dot-pager": "true" } }, ngImport: i0, template: "@if (pages > 0) {\n<clr-radio-container clrInline>\n @for (page of pageArray; track page) {\n <clr-radio-wrapper>\n <input\n clrRadio\n type=\"radio\"\n [value]=\"page+1\"\n [(ngModel)]=\"currentPage\"\n name=\"{{uniqueName}}\"\n [attr.data-testid]=\"'dot-pager-dot-' + (page + 1)\"\n />\n <label>&nbsp;</label>\n </clr-radio-wrapper>\n }\n</clr-radio-container>\n}\n", dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i2$2.ClrRadio, selector: "[clrRadio]" }, { kind: "component", type: i2$2.ClrRadioContainer, selector: "clr-radio-container", inputs: ["clrInline"] }, { kind: "component", type: i2$2.ClrRadioWrapper, selector: "clr-radio-wrapper" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
681
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDotPager, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
682
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrDotPager, isStandalone: false, selector: "clr-dot-pager", inputs: { pages: ["clrPages", "pages"], currentPage: ["clrCurrentPage", "currentPage"] }, outputs: { currentPageChange: "clrCurrentPageChange" }, host: { properties: { "class.dot-pager": "true" } }, ngImport: i0, template: "@if (pages > 0) {\n<clr-radio-container clrInline>\n @for (page of pageArray; track page) {\n <clr-radio-wrapper>\n <input\n clrRadio\n type=\"radio\"\n [value]=\"page+1\"\n [(ngModel)]=\"currentPage\"\n name=\"{{uniqueName}}\"\n [attr.data-testid]=\"'dot-pager-dot-' + (page + 1)\"\n />\n <label>&nbsp;</label>\n </clr-radio-wrapper>\n }\n</clr-radio-container>\n}\n", dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i2$2.ClrRadio, selector: "[clrRadio]" }, { kind: "component", type: i2$2.ClrRadioContainer, selector: "clr-radio-container", inputs: ["clrInline"] }, { kind: "component", type: i2$2.ClrRadioWrapper, selector: "clr-radio-wrapper" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
683
683
  }
684
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDotPager, decorators: [{
684
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDotPager, decorators: [{
685
685
  type: Component,
686
686
  args: [{ selector: 'clr-dot-pager', host: { '[class.dot-pager]': 'true' }, standalone: false, template: "@if (pages > 0) {\n<clr-radio-container clrInline>\n @for (page of pageArray; track page) {\n <clr-radio-wrapper>\n <input\n clrRadio\n type=\"radio\"\n [value]=\"page+1\"\n [(ngModel)]=\"currentPage\"\n name=\"{{uniqueName}}\"\n [attr.data-testid]=\"'dot-pager-dot-' + (page + 1)\"\n />\n <label>&nbsp;</label>\n </clr-radio-wrapper>\n }\n</clr-radio-container>\n}\n" }]
687
687
  }], propDecorators: { currentPageChange: [{
@@ -701,11 +701,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
701
701
  * The full license information can be found in LICENSE in the root directory of this project.
702
702
  */
703
703
  class ClrDotPagerModule {
704
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDotPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
705
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrDotPagerModule, declarations: [ClrDotPager], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrDotPager] }); }
706
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDotPagerModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
704
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDotPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
705
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrDotPagerModule, declarations: [ClrDotPager], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrDotPager] }); }
706
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDotPagerModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
707
707
  }
708
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDotPagerModule, decorators: [{
708
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDotPagerModule, decorators: [{
709
709
  type: NgModule,
710
710
  args: [{
711
711
  imports: [CommonModule, ClarityModule, FormsModule],
@@ -841,10 +841,10 @@ class ClrDropdownOverflowDirective {
841
841
  const pxPerVhUnit = window.innerHeight / 100;
842
842
  return vh * pxPerVhUnit;
843
843
  }
844
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDropdownOverflowDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
845
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrDropdownOverflowDirective, isStandalone: false, selector: "clr-dropdown-menu", inputs: { clrDropdownMenuMaxHeight: "clrDropdownMenuMaxHeight", clrDropdownMenuItemMinHeight: "clrDropdownMenuItemMinHeight", clrMarginBottom: "clrMarginBottom" }, queries: [{ propertyName: "nestedDropdownChildren", predicate: ClrDropdown, descendants: true }], ngImport: i0 }); }
844
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDropdownOverflowDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
845
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrDropdownOverflowDirective, isStandalone: false, selector: "clr-dropdown-menu", inputs: { clrDropdownMenuMaxHeight: "clrDropdownMenuMaxHeight", clrDropdownMenuItemMinHeight: "clrDropdownMenuItemMinHeight", clrMarginBottom: "clrMarginBottom" }, queries: [{ propertyName: "nestedDropdownChildren", predicate: ClrDropdown, descendants: true }], ngImport: i0 }); }
846
846
  }
847
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDropdownOverflowDirective, decorators: [{
847
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDropdownOverflowDirective, decorators: [{
848
848
  type: Directive,
849
849
  args: [{
850
850
  selector: 'clr-dropdown-menu',
@@ -999,10 +999,10 @@ class ClrFlowBar {
999
999
  const index = this.getCurrentIndex();
1000
1000
  return this._steps.slice(index + 1, this._steps.length).find(step => step.enabled);
1001
1001
  }
1002
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFlowBar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1003
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrFlowBar, isStandalone: false, selector: "clr-flow-bar", inputs: { _steps: ["clrSteps", "_steps"], _activeStep: ["clrActiveStep", "_activeStep"] }, outputs: { _activeStepChange: "clrActiveStepChange" }, host: { properties: { "class.flow-bar": "true" } }, ngImport: i0, template: "<div class=\"flow-bar-wrapper\">\n @for (step of _steps; track step; let index = $index; let last = $last) {\n <div class=\"flow-bar-step\" [class.active]=\"step === _activeStep\">\n <button\n class=\"btn btn-link flow-bar-btn\"\n [disabled]=\"!step.enabled\"\n [class.active]=\"step === _activeStep\"\n (click)=\"changeActiveStep(step)\"\n [attr.data-testid]=\"'flow-bar-step-' + (step.title | async)\"\n >\n {{index + 1}}. {{(step.title | async)}}\n </button>\n @if (!last) {\n <cds-icon shape=\"angle\" direction=\"right\"></cds-icon>\n }\n </div>\n }\n</div>\n<clr-dropdown class=\"flow-bar-dropdown clr-flex-fill\" data-testid=\"flow-bar-dropdown\">\n <button type=\"button\" class=\"btn btn-outline-primary\" clrDropdownTrigger data-testid=\"flow-bar-dropdown-trigger\">\n {{_steps.indexOf(_activeStep) + 1}}. {{_activeStep?.title | async}}\n <cds-icon shape=\"angle\" direction=\"down\"></cds-icon>\n </button>\n <clr-dropdown-menu>\n @for (step of _steps; track step; let index = $index; let last = $last) {\n <button\n clrDropdownItem\n type=\"button\"\n class=\"btn\"\n [disabled]=\"!step.enabled\"\n (click)=\"changeActiveStep(step)\"\n [attr.data-testid]=\"'flow-bar-dropdown-step-' + (step.title | async)\"\n >\n {{index + 1}}. {{step.title | async}}\n </button>\n }\n </clr-dropdown-menu>\n</clr-dropdown>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i3$1.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i3$1.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i3$1.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i3$1.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: ClrDropdownOverflowDirective, selector: "clr-dropdown-menu", inputs: ["clrDropdownMenuMaxHeight", "clrDropdownMenuItemMinHeight", "clrMarginBottom"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
1002
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFlowBar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1003
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrFlowBar, isStandalone: false, selector: "clr-flow-bar", inputs: { _steps: ["clrSteps", "_steps"], _activeStep: ["clrActiveStep", "_activeStep"] }, outputs: { _activeStepChange: "clrActiveStepChange" }, host: { properties: { "class.flow-bar": "true" } }, ngImport: i0, template: "<div class=\"flow-bar-wrapper\">\n @for (step of _steps; track step; let index = $index; let last = $last) {\n <div class=\"flow-bar-step\" [class.active]=\"step === _activeStep\">\n <button\n class=\"btn btn-link flow-bar-btn\"\n [disabled]=\"!step.enabled\"\n [class.active]=\"step === _activeStep\"\n (click)=\"changeActiveStep(step)\"\n [attr.data-testid]=\"'flow-bar-step-' + (step.title | async)\"\n >\n {{index + 1}}. {{(step.title | async)}}\n </button>\n @if (!last) {\n <cds-icon shape=\"angle\" direction=\"right\"></cds-icon>\n }\n </div>\n }\n</div>\n<clr-dropdown class=\"flow-bar-dropdown clr-flex-fill\" data-testid=\"flow-bar-dropdown\">\n <button type=\"button\" class=\"btn btn-outline-primary\" clrDropdownTrigger data-testid=\"flow-bar-dropdown-trigger\">\n {{_steps.indexOf(_activeStep) + 1}}. {{_activeStep?.title | async}}\n <cds-icon shape=\"angle\" direction=\"down\"></cds-icon>\n </button>\n <clr-dropdown-menu>\n @for (step of _steps; track step; let index = $index; let last = $last) {\n <button\n clrDropdownItem\n type=\"button\"\n class=\"btn\"\n [disabled]=\"!step.enabled\"\n (click)=\"changeActiveStep(step)\"\n [attr.data-testid]=\"'flow-bar-dropdown-step-' + (step.title | async)\"\n >\n {{index + 1}}. {{step.title | async}}\n </button>\n }\n </clr-dropdown-menu>\n</clr-dropdown>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i2$3.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i2$3.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i2$3.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i2$3.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: ClrDropdownOverflowDirective, selector: "clr-dropdown-menu", inputs: ["clrDropdownMenuMaxHeight", "clrDropdownMenuItemMinHeight", "clrMarginBottom"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
1004
1004
  }
1005
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFlowBar, decorators: [{
1005
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFlowBar, decorators: [{
1006
1006
  type: Component,
1007
1007
  args: [{ selector: 'clr-flow-bar', host: {
1008
1008
  '[class.flow-bar]': 'true',
@@ -1024,11 +1024,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
1024
1024
  * The full license information can be found in LICENSE in the root directory of this project.
1025
1025
  */
1026
1026
  class ClrDropdownOverflowModule {
1027
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDropdownOverflowModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1028
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrDropdownOverflowModule, declarations: [ClrDropdownOverflowDirective], exports: [ClrDropdownOverflowDirective] }); }
1029
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDropdownOverflowModule }); }
1027
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDropdownOverflowModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1028
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrDropdownOverflowModule, declarations: [ClrDropdownOverflowDirective], exports: [ClrDropdownOverflowDirective] }); }
1029
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDropdownOverflowModule }); }
1030
1030
  }
1031
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDropdownOverflowModule, decorators: [{
1031
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDropdownOverflowModule, decorators: [{
1032
1032
  type: NgModule,
1033
1033
  args: [{
1034
1034
  declarations: [ClrDropdownOverflowDirective],
@@ -1048,11 +1048,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
1048
1048
  * The full license information can be found in LICENSE in the root directory of this project.
1049
1049
  */
1050
1050
  class ClrFlowBarModule {
1051
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFlowBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1052
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrFlowBarModule, declarations: [ClrFlowBar], imports: [CommonModule, ClarityModule, FormsModule, ClrDropdownOverflowModule], exports: [ClrFlowBar] }); }
1053
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFlowBarModule, imports: [CommonModule, ClarityModule, FormsModule, ClrDropdownOverflowModule] }); }
1051
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFlowBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1052
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrFlowBarModule, declarations: [ClrFlowBar], imports: [CommonModule, ClarityModule, FormsModule, ClrDropdownOverflowModule], exports: [ClrFlowBar] }); }
1053
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFlowBarModule, imports: [CommonModule, ClarityModule, FormsModule, ClrDropdownOverflowModule] }); }
1054
1054
  }
1055
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFlowBarModule, decorators: [{
1055
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFlowBarModule, decorators: [{
1056
1056
  type: NgModule,
1057
1057
  args: [{
1058
1058
  imports: [CommonModule, ClarityModule, FormsModule, ClrDropdownOverflowModule],
@@ -1118,10 +1118,10 @@ class ClrGenericQuickList {
1118
1118
  ngOnDestroy() {
1119
1119
  clearTimeout(this.timeout);
1120
1120
  }
1121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrGenericQuickList, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1122
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrGenericQuickList, isStandalone: false, selector: "clr-generic-quick-list", inputs: { allItems: ["clrAllItems", "allItems"], addLabel: ["clrAddLabel", "addLabel"], addPossible: ["clrAddPossible", "addPossible"], blankItem: ["clrBlankItem", "blankItem"], controlClasses: ["clrControlClasses", "controlClasses"], required: ["clrMandatory", "required"], readonly: "readonly", compactMode: "compactMode" }, outputs: { added: "clrAdded", removed: "clrRemoved" }, host: { properties: { "class.generic-quick-list": "true", "class.clr-form-control": "true", "class.readonly-list": "this.readonly" } }, queries: [{ propertyName: "itemTemplate", predicate: TemplateRef }], viewQueries: [{ propertyName: "itemRows", predicate: ["row"], descendants: true }], ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n @for (item of allItems; track item; let i = $index) {\n <div class=\"controls-wrapper\" [attr.data-testid]=\"'generic-quick-list-item-' + (item.id || i)\">\n @if (itemTemplate) {\n <div class=\"controls-container\" #row [attr.data-testid]=\"'generic-quick-list-item-content-' + (item.id || i)\">\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n } @if (!(readonly || readonly === '')) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n [attr.data-testid]=\"'generic-quick-list-remove-button-' + (item.id || i)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n } @if (!(readonly || readonly === '') && compactMode && i === allItems.length - 1) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-compact-button\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n }\n </div>\n } @if (!(readonly || readonly === '') && allItems.length === 0 && compactMode) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-compact-button-empty\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n } @if (!(readonly || readonly === '') && !compactMode) {\n <button\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-button\"\n >\n {{addLabel}}\n </button>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
1121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrGenericQuickList, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1122
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrGenericQuickList, isStandalone: false, selector: "clr-generic-quick-list", inputs: { allItems: ["clrAllItems", "allItems"], addLabel: ["clrAddLabel", "addLabel"], addPossible: ["clrAddPossible", "addPossible"], blankItem: ["clrBlankItem", "blankItem"], controlClasses: ["clrControlClasses", "controlClasses"], required: ["clrMandatory", "required"], readonly: "readonly", compactMode: "compactMode" }, outputs: { added: "clrAdded", removed: "clrRemoved" }, host: { properties: { "class.generic-quick-list": "true", "class.clr-form-control": "true", "class.readonly-list": "this.readonly" } }, queries: [{ propertyName: "itemTemplate", predicate: TemplateRef }], viewQueries: [{ propertyName: "itemRows", predicate: ["row"], descendants: true }], ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n @for (item of allItems; track item; let i = $index) {\n <div class=\"controls-wrapper\" [attr.data-testid]=\"'generic-quick-list-item-' + (item.id || i)\">\n @if (itemTemplate) {\n <div class=\"controls-container\" #row [attr.data-testid]=\"'generic-quick-list-item-content-' + (item.id || i)\">\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n } @if (!(readonly || readonly === '')) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n [attr.data-testid]=\"'generic-quick-list-remove-button-' + (item.id || i)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n } @if (!(readonly || readonly === '') && compactMode && i === allItems.length - 1) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-compact-button\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n }\n </div>\n } @if (!(readonly || readonly === '') && allItems.length === 0 && compactMode) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-compact-button-empty\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n } @if (!(readonly || readonly === '') && !compactMode) {\n <button\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-button\"\n >\n {{addLabel}}\n </button>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
1123
1123
  }
1124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrGenericQuickList, decorators: [{
1124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrGenericQuickList, decorators: [{
1125
1125
  type: Component,
1126
1126
  args: [{ selector: 'clr-generic-quick-list', host: { '[class.generic-quick-list]': 'true', '[class.clr-form-control]': 'true' }, standalone: false, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n @for (item of allItems; track item; let i = $index) {\n <div class=\"controls-wrapper\" [attr.data-testid]=\"'generic-quick-list-item-' + (item.id || i)\">\n @if (itemTemplate) {\n <div class=\"controls-container\" #row [attr.data-testid]=\"'generic-quick-list-item-content-' + (item.id || i)\">\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n } @if (!(readonly || readonly === '')) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n [attr.data-testid]=\"'generic-quick-list-remove-button-' + (item.id || i)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n } @if (!(readonly || readonly === '') && compactMode && i === allItems.length - 1) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-compact-button\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n }\n </div>\n } @if (!(readonly || readonly === '') && allItems.length === 0 && compactMode) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-compact-button-empty\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n } @if (!(readonly || readonly === '') && !compactMode) {\n <button\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n data-testid=\"generic-quick-list-add-button\"\n >\n {{addLabel}}\n </button>\n }\n</div>\n" }]
1127
1127
  }], propDecorators: { allItems: [{
@@ -1169,11 +1169,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
1169
1169
  * The full license information can be found in LICENSE in the root directory of this project.
1170
1170
  */
1171
1171
  class ClrGenericQuickListModule {
1172
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrGenericQuickListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1173
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrGenericQuickListModule, declarations: [ClrGenericQuickList], imports: [CommonModule, ClarityModule], exports: [ClrGenericQuickList] }); }
1174
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrGenericQuickListModule, imports: [CommonModule, ClarityModule] }); }
1172
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrGenericQuickListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1173
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrGenericQuickListModule, declarations: [ClrGenericQuickList], imports: [CommonModule, ClarityModule], exports: [ClrGenericQuickList] }); }
1174
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrGenericQuickListModule, imports: [CommonModule, ClarityModule] }); }
1175
1175
  }
1176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrGenericQuickListModule, decorators: [{
1176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrGenericQuickListModule, decorators: [{
1177
1177
  type: NgModule,
1178
1178
  args: [{
1179
1179
  imports: [CommonModule, ClarityModule],
@@ -1206,10 +1206,10 @@ class ClrIconAvatar {
1206
1206
  getShape() {
1207
1207
  return this.shape ?? 'user';
1208
1208
  }
1209
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIconAvatar, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
1210
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrIconAvatar, isStandalone: false, selector: "clr-icon-avatar", inputs: { shape: ["clrShape", "shape"], size: ["clrSize", "size"] }, host: { properties: { "class.clr-avatar": "this.avatar" } }, viewQueries: [{ propertyName: "avatarElement", first: true, predicate: ["avatar"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"avatar-circle\">\n <div #avatar class=\"avatar-icon\">\n <cds-icon [shape]=\"getShape()\" data-testid=\"icon-avatar-icon\"></cds-icon>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: i1$2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
1209
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIconAvatar, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
1210
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrIconAvatar, isStandalone: false, selector: "clr-icon-avatar", inputs: { shape: ["clrShape", "shape"], size: ["clrSize", "size"] }, host: { properties: { "class.clr-avatar": "this.avatar" } }, viewQueries: [{ propertyName: "avatarElement", first: true, predicate: ["avatar"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"avatar-circle\">\n <div #avatar class=\"avatar-icon\">\n <cds-icon [shape]=\"getShape()\" data-testid=\"icon-avatar-icon\"></cds-icon>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: i1$2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
1211
1211
  }
1212
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIconAvatar, decorators: [{
1212
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIconAvatar, decorators: [{
1213
1213
  type: Component,
1214
1214
  args: [{ selector: 'clr-icon-avatar', standalone: false, template: "<div class=\"avatar-circle\">\n <div #avatar class=\"avatar-icon\">\n <cds-icon [shape]=\"getShape()\" data-testid=\"icon-avatar-icon\"></cds-icon>\n </div>\n</div>\n" }]
1215
1215
  }], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { avatar: [{
@@ -1232,11 +1232,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
1232
1232
  * The full license information can be found in LICENSE in the root directory of this project.
1233
1233
  */
1234
1234
  class ClrIconAvatarModule {
1235
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIconAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1236
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrIconAvatarModule, declarations: [ClrIconAvatar], imports: [CommonModule, ClarityModule, ClrIcon], exports: [ClrIconAvatar] }); }
1237
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIconAvatarModule, imports: [CommonModule, ClarityModule, ClrIcon] }); }
1235
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIconAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1236
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrIconAvatarModule, declarations: [ClrIconAvatar], imports: [CommonModule, ClarityModule, ClrIcon], exports: [ClrIconAvatar] }); }
1237
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIconAvatarModule, imports: [CommonModule, ClarityModule, ClrIcon] }); }
1238
1238
  }
1239
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIconAvatarModule, decorators: [{
1239
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIconAvatarModule, decorators: [{
1240
1240
  type: NgModule,
1241
1241
  args: [{
1242
1242
  imports: [CommonModule, ClarityModule, ClrIcon],
@@ -1281,10 +1281,10 @@ class ClrLetterAvatar {
1281
1281
  return '';
1282
1282
  }
1283
1283
  }
1284
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrLetterAvatar, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
1285
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrLetterAvatar, isStandalone: false, selector: "clr-letter-avatar", inputs: { name: ["clrName", "name"], size: ["clrSize", "size"] }, host: { properties: { "class.clr-avatar": "this.avatar" } }, viewQueries: [{ propertyName: "avatarElement", first: true, predicate: ["avatar"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"avatar-circle\">\n <div #avatar class=\"avatar-initials\" data-testid=\"letter-avatar-initials\">{{getInitials()}}</div>\n</div>\n" }); }
1284
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrLetterAvatar, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
1285
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrLetterAvatar, isStandalone: false, selector: "clr-letter-avatar", inputs: { name: ["clrName", "name"], size: ["clrSize", "size"] }, host: { properties: { "class.clr-avatar": "this.avatar" } }, viewQueries: [{ propertyName: "avatarElement", first: true, predicate: ["avatar"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"avatar-circle\">\n <div #avatar class=\"avatar-initials\" data-testid=\"letter-avatar-initials\">{{getInitials()}}</div>\n</div>\n" }); }
1286
1286
  }
1287
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrLetterAvatar, decorators: [{
1287
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrLetterAvatar, decorators: [{
1288
1288
  type: Component,
1289
1289
  args: [{ selector: 'clr-letter-avatar', standalone: false, template: "<div class=\"avatar-circle\">\n <div #avatar class=\"avatar-initials\" data-testid=\"letter-avatar-initials\">{{getInitials()}}</div>\n</div>\n" }]
1290
1290
  }], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { avatar: [{
@@ -1307,11 +1307,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
1307
1307
  * The full license information can be found in LICENSE in the root directory of this project.
1308
1308
  */
1309
1309
  class ClrLetterAvatarModule {
1310
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrLetterAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1311
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrLetterAvatarModule, declarations: [ClrLetterAvatar], imports: [CommonModule, ClarityModule], exports: [ClrLetterAvatar] }); }
1312
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrLetterAvatarModule, imports: [CommonModule, ClarityModule] }); }
1310
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrLetterAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1311
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrLetterAvatarModule, declarations: [ClrLetterAvatar], imports: [CommonModule, ClarityModule], exports: [ClrLetterAvatar] }); }
1312
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrLetterAvatarModule, imports: [CommonModule, ClarityModule] }); }
1313
1313
  }
1314
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrLetterAvatarModule, decorators: [{
1314
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrLetterAvatarModule, decorators: [{
1315
1315
  type: NgModule,
1316
1316
  args: [{
1317
1317
  imports: [CommonModule, ClarityModule],
@@ -1341,10 +1341,10 @@ class ClrMainNavGroupItem {
1341
1341
  this.renderer.setAttribute(this.el.nativeElement, 'tabindex', '-1');
1342
1342
  this.el.nativeElement.blur();
1343
1343
  }
1344
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMainNavGroupItem, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1345
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrMainNavGroupItem, isStandalone: false, selector: "[clrMainNavGroupItem]", ngImport: i0 }); }
1344
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMainNavGroupItem, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1345
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrMainNavGroupItem, isStandalone: false, selector: "[clrMainNavGroupItem]", ngImport: i0 }); }
1346
1346
  }
1347
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMainNavGroupItem, decorators: [{
1347
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMainNavGroupItem, decorators: [{
1348
1348
  type: Directive,
1349
1349
  args: [{
1350
1350
  selector: '[clrMainNavGroupItem]',
@@ -1487,10 +1487,10 @@ class ClrMainNavGroup {
1487
1487
  this.currentFocusedId = 0;
1488
1488
  setTimeout(() => this.items.toArray()[this.currentFocusedId].focus());
1489
1489
  }
1490
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMainNavGroup, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1491
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrMainNavGroup, isStandalone: false, selector: "clr-main-nav-group", inputs: { title: ["clrTitle", "title"], icon: ["clrIcon", "icon"] }, host: { properties: { "class.main-nav-group": "true" } }, queries: [{ propertyName: "items", predicate: ClrMainNavGroupItem }], ngImport: i0, template: "<section\n class=\"nav-link collapsible\"\n (click)=\"onClick($event)\"\n (keydown.enter)=\"onClick($event)\"\n (keydown.space)=\"onClick($event)\"\n [class.active]=\"isActive()\"\n tabindex=\"0\"\n [attr.data-testid]=\"'main-nav-group-toggle-' + (id)\"\n>\n <input\n id=\"{{prefix}}{{id}}\"\n type=\"checkbox\"\n [checked]=\"isChecked()\"\n [attr.data-testid]=\"'main-nav-group-checkbox-' + (id)\"\n />\n <label class=\"nav-text nav-trigger\" for=\"{{prefix}}{{id}}\" [attr.data-testid]=\"'main-nav-group-label-' + (id)\">\n @if (icon) {\n <cds-icon class=\"title-icon\" [shape]=\"icon\"></cds-icon>\n } {{title}}\n <cds-icon class=\"dropdown-icon\" shape=\"angle\" direction=\"down\"></cds-icon>\n </label>\n <div class=\"nav-list dropdown-menu\">\n <ng-content></ng-content>\n </div>\n</section>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }] }); }
1490
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMainNavGroup, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1491
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrMainNavGroup, isStandalone: false, selector: "clr-main-nav-group", inputs: { title: ["clrTitle", "title"], icon: ["clrIcon", "icon"] }, host: { properties: { "class.main-nav-group": "true" } }, queries: [{ propertyName: "items", predicate: ClrMainNavGroupItem }], ngImport: i0, template: "<section\n class=\"nav-link collapsible\"\n (click)=\"onClick($event)\"\n (keydown.enter)=\"onClick($event)\"\n (keydown.space)=\"onClick($event)\"\n [class.active]=\"isActive()\"\n tabindex=\"0\"\n [attr.data-testid]=\"'main-nav-group-toggle-' + (id)\"\n>\n <input\n id=\"{{prefix}}{{id}}\"\n type=\"checkbox\"\n [checked]=\"isChecked()\"\n [attr.data-testid]=\"'main-nav-group-checkbox-' + (id)\"\n />\n <label class=\"nav-text nav-trigger\" for=\"{{prefix}}{{id}}\" [attr.data-testid]=\"'main-nav-group-label-' + (id)\">\n @if (icon) {\n <cds-icon class=\"title-icon\" [shape]=\"icon\"></cds-icon>\n } {{title}}\n <cds-icon class=\"dropdown-icon\" shape=\"angle\" direction=\"down\"></cds-icon>\n </label>\n <div class=\"nav-list dropdown-menu\">\n <ng-content></ng-content>\n </div>\n</section>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }] }); }
1492
1492
  }
1493
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMainNavGroup, decorators: [{
1493
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMainNavGroup, decorators: [{
1494
1494
  type: Component,
1495
1495
  args: [{ selector: 'clr-main-nav-group', host: { '[class.main-nav-group]': 'true' }, standalone: false, template: "<section\n class=\"nav-link collapsible\"\n (click)=\"onClick($event)\"\n (keydown.enter)=\"onClick($event)\"\n (keydown.space)=\"onClick($event)\"\n [class.active]=\"isActive()\"\n tabindex=\"0\"\n [attr.data-testid]=\"'main-nav-group-toggle-' + (id)\"\n>\n <input\n id=\"{{prefix}}{{id}}\"\n type=\"checkbox\"\n [checked]=\"isChecked()\"\n [attr.data-testid]=\"'main-nav-group-checkbox-' + (id)\"\n />\n <label class=\"nav-text nav-trigger\" for=\"{{prefix}}{{id}}\" [attr.data-testid]=\"'main-nav-group-label-' + (id)\">\n @if (icon) {\n <cds-icon class=\"title-icon\" [shape]=\"icon\"></cds-icon>\n } {{title}}\n <cds-icon class=\"dropdown-icon\" shape=\"angle\" direction=\"down\"></cds-icon>\n </label>\n <div class=\"nav-list dropdown-menu\">\n <ng-content></ng-content>\n </div>\n</section>\n" }]
1496
1496
  }], ctorParameters: () => [{ type: i0.Injector }], propDecorators: { title: [{
@@ -1510,11 +1510,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
1510
1510
  * The full license information can be found in LICENSE in the root directory of this project.
1511
1511
  */
1512
1512
  class ClrMainNavGroupModule {
1513
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMainNavGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1514
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrMainNavGroupModule, declarations: [ClrMainNavGroup, ClrMainNavGroupItem], imports: [CommonModule, RouterModule, ClarityModule], exports: [ClrMainNavGroup, ClrMainNavGroupItem] }); }
1515
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMainNavGroupModule, imports: [CommonModule, RouterModule, ClarityModule] }); }
1513
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMainNavGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1514
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrMainNavGroupModule, declarations: [ClrMainNavGroup, ClrMainNavGroupItem], imports: [CommonModule, RouterModule, ClarityModule], exports: [ClrMainNavGroup, ClrMainNavGroupItem] }); }
1515
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMainNavGroupModule, imports: [CommonModule, RouterModule, ClarityModule] }); }
1516
1516
  }
1517
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMainNavGroupModule, decorators: [{
1517
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMainNavGroupModule, decorators: [{
1518
1518
  type: NgModule,
1519
1519
  args: [{
1520
1520
  imports: [CommonModule, RouterModule, ClarityModule],
@@ -1596,10 +1596,10 @@ class ClrRequiredOneMultilang {
1596
1596
  validate(control) {
1597
1597
  return this._active ? ClrMultilingualInputValidators.requiredOne()(control) : null;
1598
1598
  }
1599
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrRequiredOneMultilang, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1600
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrRequiredOneMultilang, isStandalone: false, selector: "[clrRequiredOneMultilang]", inputs: { active: ["clrRequiredOneMultilang", "active"] }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrRequiredOneMultilang, multi: true }], ngImport: i0 }); }
1599
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrRequiredOneMultilang, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1600
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrRequiredOneMultilang, isStandalone: false, selector: "[clrRequiredOneMultilang]", inputs: { active: ["clrRequiredOneMultilang", "active"] }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrRequiredOneMultilang, multi: true }], ngImport: i0 }); }
1601
1601
  }
1602
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrRequiredOneMultilang, decorators: [{
1602
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrRequiredOneMultilang, decorators: [{
1603
1603
  type: Directive,
1604
1604
  args: [{
1605
1605
  selector: '[clrRequiredOneMultilang]',
@@ -1617,10 +1617,10 @@ class ClrRequiredAllMultilang {
1617
1617
  validate(control) {
1618
1618
  return this._active ? ClrMultilingualInputValidators.requiredAll()(control) : null;
1619
1619
  }
1620
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrRequiredAllMultilang, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1621
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrRequiredAllMultilang, isStandalone: false, selector: "[clrRequiredAllMultilang]", inputs: { active: ["clrRequiredAllMultilang", "active"] }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrRequiredAllMultilang, multi: true }], ngImport: i0 }); }
1620
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrRequiredAllMultilang, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1621
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrRequiredAllMultilang, isStandalone: false, selector: "[clrRequiredAllMultilang]", inputs: { active: ["clrRequiredAllMultilang", "active"] }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrRequiredAllMultilang, multi: true }], ngImport: i0 }); }
1622
1622
  }
1623
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrRequiredAllMultilang, decorators: [{
1623
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrRequiredAllMultilang, decorators: [{
1624
1624
  type: Directive,
1625
1625
  args: [{
1626
1626
  selector: '[clrRequiredAllMultilang]',
@@ -1653,10 +1653,10 @@ class ControlIdService {
1653
1653
  get idChange() {
1654
1654
  return this._idChange.asObservable();
1655
1655
  }
1656
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ControlIdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1657
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ControlIdService }); }
1656
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ControlIdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1657
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ControlIdService }); }
1658
1658
  }
1659
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ControlIdService, decorators: [{
1659
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ControlIdService, decorators: [{
1660
1660
  type: Injectable
1661
1661
  }] });
1662
1662
 
@@ -1740,10 +1740,10 @@ class ClrAbstractFormComponent {
1740
1740
  ClrForm.prototype.markAsTouched = origMarkAsTouched;
1741
1741
  }
1742
1742
  }
1743
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAbstractFormComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
1744
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrAbstractFormComponent, isStandalone: true, host: { properties: { "class.clr-form-control": "this.formControl", "class.clr-error": "this.showError" } }, ngImport: i0 }); }
1743
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAbstractFormComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
1744
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrAbstractFormComponent, isStandalone: true, host: { properties: { "class.clr-form-control": "this.formControl", "class.clr-error": "this.showError" } }, ngImport: i0 }); }
1745
1745
  }
1746
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAbstractFormComponent, decorators: [{
1746
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAbstractFormComponent, decorators: [{
1747
1747
  type: Directive
1748
1748
  }], ctorParameters: () => [{ type: i0.Injector }], propDecorators: { formControl: [{
1749
1749
  type: HostBinding,
@@ -1850,10 +1850,10 @@ class ClrMultilingualAbstract extends ClrAbstractFormComponent {
1850
1850
  }
1851
1851
  });
1852
1852
  }
1853
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualAbstract, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
1854
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrMultilingualAbstract, isStandalone: true, inputs: { controlClasses: ["clrControlClasses", "controlClasses"], selectedLang: ["clrSelectedLang", "selectedLang"], languageIcons: ["clrLanguageIcons", "languageIcons"], readonly: "readonly", maxlength: "maxlength", showSingleLanguageSelector: ["clrShowSingleLanguageSelector", "showSingleLanguageSelector"], fallbackLanguage: ["clrFallbackLang", "fallbackLanguage"], missingPre: ["clrMissingPrefix", "missingPre"], langs: ["clrLanguages", "langs"] }, host: { properties: { "class.clr-multilingual": "this.multi" } }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
1853
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualAbstract, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
1854
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrMultilingualAbstract, isStandalone: true, inputs: { controlClasses: ["clrControlClasses", "controlClasses"], selectedLang: ["clrSelectedLang", "selectedLang"], languageIcons: ["clrLanguageIcons", "languageIcons"], readonly: "readonly", maxlength: "maxlength", showSingleLanguageSelector: ["clrShowSingleLanguageSelector", "showSingleLanguageSelector"], fallbackLanguage: ["clrFallbackLang", "fallbackLanguage"], missingPre: ["clrMissingPrefix", "missingPre"], langs: ["clrLanguages", "langs"] }, host: { properties: { "class.clr-multilingual": "this.multi" } }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
1855
1855
  }
1856
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualAbstract, decorators: [{
1856
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualAbstract, decorators: [{
1857
1857
  type: Directive
1858
1858
  }], ctorParameters: () => [{ type: i0.Injector }], propDecorators: { multi: [{
1859
1859
  type: HostBinding,
@@ -1899,8 +1899,8 @@ class ClrMultilingualSelector {
1899
1899
  }
1900
1900
  return this.icons.get(lang) || this.icons.get(lang.toUpperCase()) || this.icons.get(lang.toLowerCase());
1901
1901
  }
1902
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualSelector, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1903
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrMultilingualSelector, isStandalone: false, selector: "clr-multilingual-selector", inputs: { disabled: "disabled", icons: "icons", texts: "texts", selectedLang: "selectedLang" }, outputs: { selectedLangChange: "selectedLangChange" }, ngImport: i0, template: `
1902
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualSelector, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1903
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrMultilingualSelector, isStandalone: false, selector: "clr-multilingual-selector", inputs: { disabled: "disabled", icons: "icons", texts: "texts", selectedLang: "selectedLang" }, outputs: { selectedLangChange: "selectedLangChange" }, ngImport: i0, template: `
1904
1904
  <div>
1905
1905
  <clr-dropdown [clrCloseMenuOnItemClick]="true">
1906
1906
  <button
@@ -1937,9 +1937,9 @@ class ClrMultilingualSelector {
1937
1937
  </clr-dropdown-menu>
1938
1938
  </clr-dropdown>
1939
1939
  </div>
1940
- `, isInline: true, dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i3$1.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i3$1.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i3$1.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i3$1.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$3.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "directive", type: ClrDropdownOverflowDirective, selector: "clr-dropdown-menu", inputs: ["clrDropdownMenuMaxHeight", "clrDropdownMenuItemMinHeight", "clrMarginBottom"] }, { kind: "pipe", type: i1.KeyValuePipe, name: "keyvalue" }] }); }
1940
+ `, isInline: true, dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i2$3.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i2$3.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i2$3.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i2$3.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$4.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "directive", type: ClrDropdownOverflowDirective, selector: "clr-dropdown-menu", inputs: ["clrDropdownMenuMaxHeight", "clrDropdownMenuItemMinHeight", "clrMarginBottom"] }, { kind: "pipe", type: i1.KeyValuePipe, name: "keyvalue" }] }); }
1941
1941
  }
1942
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualSelector, decorators: [{
1942
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualSelector, decorators: [{
1943
1943
  type: Component,
1944
1944
  args: [{
1945
1945
  selector: 'clr-multilingual-selector',
@@ -2005,8 +2005,8 @@ class ClrMultilingualInput extends ClrMultilingualAbstract {
2005
2005
  constructor(injector) {
2006
2006
  super(injector);
2007
2007
  }
2008
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualInput, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
2009
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrMultilingualInput, isStandalone: false, selector: "clr-multilingual-input", providers: [
2008
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualInput, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
2009
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrMultilingualInput, isStandalone: false, selector: "clr-multilingual-input", providers: [
2010
2010
  {
2011
2011
  provide: NG_VALUE_ACCESSOR,
2012
2012
  useExisting: forwardRef(() => ClrMultilingualInput),
@@ -2015,7 +2015,7 @@ class ClrMultilingualInput extends ClrMultilingualAbstract {
2015
2015
  ControlIdService,
2016
2016
  ], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n @if (showLanguageSelector()) {\n <clr-multilingual-selector\n data-testid=\"multilingual-input-language-selector\"\n [disabled]=\"disabled\"\n [texts]=\"shownTexts\"\n [icons]=\"languageIcons\"\n [selectedLang]=\"selectedLang\"\n (selectedLangChange)=\"changeLanguage($event)\"\n >\n </clr-multilingual-selector>\n } @if (readonly || readonly === '') {\n <span\n [attr.data-testid]=\"'multilingual-input-readonly-value-' + (selectedLang)\"\n [title]=\"!!shownTexts && !!selectedLang ? shownTexts.get(selectedLang) : ''\"\n class=\"text-truncate\"\n >\n {{ !!shownTexts && !!selectedLang ? shownTexts.get(selectedLang) : '' }}\n </span>\n } @else {\n <div class=\"clr-multi-input-wrapper\">\n <div class=\"clr-input-wrapper\">\n <input\n class=\"clr-input\"\n type=\"text\"\n [id]=\"inputId\"\n [ngModel]=\"!!shownTexts && !!selectedLang ? shownTexts.get(selectedLang) : ''\"\n (ngModelChange)=\"setText(selectedLang, $event)\"\n (blur)=\"onTouch()\"\n [disabled]=\"disabled\"\n autocomplete=\"off\"\n [attr.data-testid]=\"'multilingual-input-text-' + (selectedLang)\"\n [maxlength]=\"maxlength || null\"\n #input\n />\n @if (showError) {\n <cds-icon class=\"clr-validate-icon\" shape=\"exclamation-circle\" aria-hidden=\"true\"></cds-icon>\n }\n </div>\n @if (!showError) {\n <ng-content select=\"clr-control-helper\"></ng-content>\n } @if (showError) {\n <ng-content select=\"clr-control-error\"></ng-content>\n }\n </div>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ClrMultilingualSelector, selector: "clr-multilingual-selector", inputs: ["disabled", "icons", "texts", "selectedLang"], outputs: ["selectedLangChange"] }] }); }
2017
2017
  }
2018
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualInput, decorators: [{
2018
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualInput, decorators: [{
2019
2019
  type: Component,
2020
2020
  args: [{ selector: 'clr-multilingual-input', providers: [
2021
2021
  {
@@ -2037,8 +2037,8 @@ class ClrMultilingualTextarea extends ClrMultilingualAbstract {
2037
2037
  constructor(injector) {
2038
2038
  super(injector);
2039
2039
  }
2040
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualTextarea, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
2041
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrMultilingualTextarea, isStandalone: false, selector: "clr-multilingual-textarea", inputs: { rows: "rows" }, providers: [
2040
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualTextarea, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
2041
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrMultilingualTextarea, isStandalone: false, selector: "clr-multilingual-textarea", inputs: { rows: "rows" }, providers: [
2042
2042
  {
2043
2043
  provide: NG_VALUE_ACCESSOR,
2044
2044
  useExisting: forwardRef(() => ClrMultilingualTextarea),
@@ -2047,7 +2047,7 @@ class ClrMultilingualTextarea extends ClrMultilingualAbstract {
2047
2047
  ControlIdService,
2048
2048
  ], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n @if (showLanguageSelector()) {\n <clr-multilingual-selector\n data-testid=\"multilingual-textarea-language-selector\"\n [disabled]=\"disabled\"\n [texts]=\"shownTexts\"\n [icons]=\"languageIcons\"\n [selectedLang]=\"selectedLang\"\n (selectedLangChange)=\"changeLanguage($event)\"\n >\n </clr-multilingual-selector>\n }\n <div class=\"clr-multi-input-wrapper\">\n <div class=\"clr-textarea-wrapper\">\n <textarea\n class=\"clr-textarea\"\n [id]=\"inputId\"\n [ngModel]=\"!!shownTexts && !!selectedLang ? shownTexts.get(selectedLang) : ''\"\n (ngModelChange)=\"setText(selectedLang, $event)\"\n (blur)=\"onTouch()\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly || readonly === ''\"\n [maxlength]=\"maxlength || null\"\n [attr.data-testid]=\"'multilingual-textarea-text-' + (selectedLang)\"\n [rows]=\"rows || 1\"\n #input\n ></textarea>\n @if (showError) {\n <cds-icon class=\"clr-validate-icon\" shape=\"exclamation-circle\" aria-hidden=\"true\"></cds-icon>\n }\n </div>\n @if (!showError) {\n <ng-content select=\"clr-control-helper\"></ng-content>\n } @if (showError) {\n <ng-content select=\"clr-control-error\"></ng-content>\n }\n <ng-content></ng-content>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ClrMultilingualSelector, selector: "clr-multilingual-selector", inputs: ["disabled", "icons", "texts", "selectedLang"], outputs: ["selectedLangChange"] }] }); }
2049
2049
  }
2050
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualTextarea, decorators: [{
2050
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualTextarea, decorators: [{
2051
2051
  type: Component,
2052
2052
  args: [{ selector: 'clr-multilingual-textarea', providers: [
2053
2053
  {
@@ -2067,8 +2067,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
2067
2067
  * The full license information can be found in LICENSE in the root directory of this project.
2068
2068
  */
2069
2069
  class ClrMultilingualModule {
2070
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2071
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualModule, declarations: [ClrMultilingualInput,
2070
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2071
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualModule, declarations: [ClrMultilingualInput,
2072
2072
  ClrMultilingualTextarea,
2073
2073
  ClrRequiredOneMultilang,
2074
2074
  ClrRequiredAllMultilang,
@@ -2077,9 +2077,9 @@ class ClrMultilingualModule {
2077
2077
  ClrRequiredOneMultilang,
2078
2078
  ClrRequiredAllMultilang,
2079
2079
  ClrMultilingualSelector] }); }
2080
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualModule, imports: [CommonModule, ClarityModule, FormsModule, ClrDropdownOverflowModule] }); }
2080
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualModule, imports: [CommonModule, ClarityModule, FormsModule, ClrDropdownOverflowModule] }); }
2081
2081
  }
2082
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMultilingualModule, decorators: [{
2082
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMultilingualModule, decorators: [{
2083
2083
  type: NgModule,
2084
2084
  args: [{
2085
2085
  imports: [CommonModule, ClarityModule, FormsModule, ClrDropdownOverflowModule],
@@ -2284,8 +2284,8 @@ class ClrNotification {
2284
2284
  setCurrentPosition() {
2285
2285
  zonedTimer(300, this.ngZone).subscribe(() => (this.state = { value: 'currentPosition', params: { absolute: this._translate } }));
2286
2286
  }
2287
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNotification, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
2288
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrNotification, isStandalone: false, selector: "clr-notification", inputs: { timeout: "timeout", notificationType: "notificationType", dismissable: "dismissable", progressbar: "progressbar" }, outputs: { closed: "closed" }, host: { properties: { "class.notification": "true" } }, viewQueries: [{ propertyName: "clrAlert", first: true, predicate: ClrAlert, descendants: true, static: true }], ngImport: i0, template: "<div class=\"notification__wrapper\" data-testid=\"notification\" [@slideDown] [@move]=\"state\" [@fade]=\"state\">\n @if (progressbar && timeout > 0) {\n <div class=\"progress top\" [ngClass]=\"notificationType\" data-testid=\"notification-progress-container\">\n <progress class=\"progress\" [max]=\"timeout\" [value]=\"progressStatus\" data-testid=\"notification-progress\"></progress>\n </div>\n }\n <clr-alert\n data-testid=\"notification-alert\"\n [clrAlertType]=\"notificationType\"\n [clrAlertAppLevel]=\"true\"\n [clrAlertClosable]=\"dismissable\"\n (clrAlertClosedChange)=\"close()\"\n >\n <div class=\"alert-item\">\n <span class=\"alert-text\" data-testid=\"notification-message\">\n <ng-content select=\"[clr-notification-message]\"></ng-content>\n </span>\n </div>\n </clr-alert>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2$4.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertLightweight", "clrAlertType", "clrAlertIcon", "clrAlertClosed"], outputs: ["clrAlertClosedChange"] }, { kind: "directive", type: i2$4.ClrAlertText, selector: ".alert-text" }], animations: [
2287
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNotification, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
2288
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrNotification, isStandalone: false, selector: "clr-notification", inputs: { timeout: "timeout", notificationType: "notificationType", dismissable: "dismissable", progressbar: "progressbar" }, outputs: { closed: "closed" }, host: { properties: { "class.notification": "true" } }, viewQueries: [{ propertyName: "clrAlert", first: true, predicate: ClrAlert, descendants: true, static: true }], ngImport: i0, template: "<div class=\"notification__wrapper\" data-testid=\"notification\" [@slideDown] [@move]=\"state\" [@fade]=\"state\">\n @if (progressbar && timeout > 0) {\n <div class=\"progress top\" [ngClass]=\"notificationType\" data-testid=\"notification-progress-container\">\n <progress class=\"progress\" [max]=\"timeout\" [value]=\"progressStatus\" data-testid=\"notification-progress\"></progress>\n </div>\n }\n <clr-alert\n data-testid=\"notification-alert\"\n [clrAlertType]=\"notificationType\"\n [clrAlertAppLevel]=\"true\"\n [clrAlertClosable]=\"dismissable\"\n (clrAlertClosedChange)=\"close()\"\n >\n <div class=\"alert-item\">\n <span class=\"alert-text\" data-testid=\"notification-message\">\n <ng-content select=\"[clr-notification-message]\"></ng-content>\n </span>\n </div>\n </clr-alert>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2$5.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertLightweight", "clrAlertType", "clrAlertIcon", "clrAlertClosed"], outputs: ["clrAlertClosedChange"] }, { kind: "directive", type: i2$5.ClrAlertText, selector: ".alert-text" }], animations: [
2289
2289
  trigger('slideDown', [
2290
2290
  transition(':enter', [
2291
2291
  style({ transform: 'translateY(-200%)' }),
@@ -2305,7 +2305,7 @@ class ClrNotification {
2305
2305
  ]),
2306
2306
  ] }); }
2307
2307
  }
2308
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNotification, decorators: [{
2308
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNotification, decorators: [{
2309
2309
  type: Component,
2310
2310
  args: [{ selector: 'clr-notification', animations: [
2311
2311
  trigger('slideDown', [
@@ -2349,11 +2349,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
2349
2349
  * The full license information can be found in LICENSE in the root directory of this project.
2350
2350
  */
2351
2351
  class ClrNotificationModule {
2352
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2353
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrNotificationModule, declarations: [ClrNotification], imports: [CommonModule, ClarityModule, FormsModule] }); }
2354
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNotificationModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
2352
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2353
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrNotificationModule, declarations: [ClrNotification], imports: [CommonModule, ClarityModule, FormsModule] }); }
2354
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNotificationModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
2355
2355
  }
2356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNotificationModule, decorators: [{
2356
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNotificationModule, decorators: [{
2357
2357
  type: NgModule,
2358
2358
  args: [{
2359
2359
  imports: [CommonModule, ClarityModule, FormsModule],
@@ -2437,10 +2437,10 @@ class ClrNotificationService {
2437
2437
  notificationInstance.progressbar = options.progressbar;
2438
2438
  }
2439
2439
  }
2440
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNotificationService, deps: [{ token: i0.Injector }, { token: i0.ApplicationRef }, { token: i0.ComponentFactoryResolver }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
2441
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNotificationService }); }
2440
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNotificationService, deps: [{ token: i0.Injector }, { token: i0.ApplicationRef }, { token: i0.ComponentFactoryResolver }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
2441
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNotificationService }); }
2442
2442
  }
2443
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNotificationService, decorators: [{
2443
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNotificationService, decorators: [{
2444
2444
  type: Injectable
2445
2445
  }], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ApplicationRef }, { type: i0.ComponentFactoryResolver }, { type: Document, decorators: [{
2446
2446
  type: Inject,
@@ -2799,8 +2799,8 @@ class ClrNumericField {
2799
2799
  // 16 is the highest precision before numbers have weird behaviour. see https://stackoverflow.com/q/21472828/15120942
2800
2800
  return Math[method](+(value * Math.pow(10, this.decimalPlaces)).toPrecision(15)) / Math.pow(10, this.decimalPlaces);
2801
2801
  }
2802
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNumericField, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
2803
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrNumericField, isStandalone: false, selector: "[clrNumeric]", inputs: { textAlign: ["clrTextAlign", "textAlign"], decimalPlaces: ["clrDecimalPlaces", "decimalPlaces"], roundValue: ["clrRoundDisplayValue", "roundValue"], autofillDecimals: ["clrAutofillDecimals", "autofillDecimals"], decimalSeparator: ["clrDecimalSep", "decimalSeparator"], groupingSeparator: ["clrGroupingSep", "groupingSeparator"], unitPosition: ["clrUnitPosition", "unitPosition"], numericValue: ["clrNumericValue", "numericValue"], unit: ["clrUnit", "unit"] }, outputs: { numericValueChanged: "clrNumericValueChange" }, host: { listeners: { "change": "onChange(getValueForFormControl())", "input": "onChange(getValueForFormControl())", "blur": "onTouched()" }, properties: { "class.text-right": "textAlign === \"right\"" } }, providers: [
2802
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNumericField, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
2803
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrNumericField, isStandalone: false, selector: "[clrNumeric]", inputs: { textAlign: ["clrTextAlign", "textAlign"], decimalPlaces: ["clrDecimalPlaces", "decimalPlaces"], roundValue: ["clrRoundDisplayValue", "roundValue"], autofillDecimals: ["clrAutofillDecimals", "autofillDecimals"], decimalSeparator: ["clrDecimalSep", "decimalSeparator"], groupingSeparator: ["clrGroupingSep", "groupingSeparator"], unitPosition: ["clrUnitPosition", "unitPosition"], numericValue: ["clrNumericValue", "numericValue"], unit: ["clrUnit", "unit"] }, outputs: { numericValueChanged: "clrNumericValueChange" }, host: { listeners: { "change": "onChange(getValueForFormControl())", "input": "onChange(getValueForFormControl())", "blur": "onTouched()" }, properties: { "class.text-right": "textAlign === \"right\"" } }, providers: [
2804
2804
  {
2805
2805
  provide: NG_VALUE_ACCESSOR,
2806
2806
  useExisting: forwardRef(() => ClrNumericField),
@@ -2808,7 +2808,7 @@ class ClrNumericField {
2808
2808
  },
2809
2809
  ], ngImport: i0 }); }
2810
2810
  }
2811
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNumericField, decorators: [{
2811
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNumericField, decorators: [{
2812
2812
  type: Directive,
2813
2813
  args: [{
2814
2814
  selector: '[clrNumeric]',
@@ -2949,10 +2949,10 @@ class ClrMaxNumeric {
2949
2949
  validate(control) {
2950
2950
  return ClrNumericFieldValidators.max(this._max, this._groupingSep, this._decimalSep)(control);
2951
2951
  }
2952
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMaxNumeric, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2953
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrMaxNumeric, isStandalone: false, selector: "[clrMaxNumeric]", inputs: { _max: ["clrMaxNumeric", "_max"], _groupingSep: ["clrGroupingSep", "_groupingSep"], _decimalSep: ["clrDecimalSep", "_decimalSep"] }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrMaxNumeric, multi: true }], ngImport: i0 }); }
2952
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMaxNumeric, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2953
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrMaxNumeric, isStandalone: false, selector: "[clrMaxNumeric]", inputs: { _max: ["clrMaxNumeric", "_max"], _groupingSep: ["clrGroupingSep", "_groupingSep"], _decimalSep: ["clrDecimalSep", "_decimalSep"] }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrMaxNumeric, multi: true }], ngImport: i0 }); }
2954
2954
  }
2955
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMaxNumeric, decorators: [{
2955
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMaxNumeric, decorators: [{
2956
2956
  type: Directive,
2957
2957
  args: [{
2958
2958
  selector: '[clrMaxNumeric]',
@@ -2977,10 +2977,10 @@ class ClrMinNumeric {
2977
2977
  validate(control) {
2978
2978
  return ClrNumericFieldValidators.min(this._min, this._groupingSep, this._decimalSep)(control);
2979
2979
  }
2980
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMinNumeric, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2981
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrMinNumeric, isStandalone: false, selector: "[clrMinNumeric]", inputs: { _min: ["clrMinNumeric", "_min"], _groupingSep: ["clrGroupingSep", "_groupingSep"], _decimalSep: ["clrDecimalSep", "_decimalSep"] }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrMinNumeric, multi: true }], ngImport: i0 }); }
2980
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMinNumeric, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2981
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrMinNumeric, isStandalone: false, selector: "[clrMinNumeric]", inputs: { _min: ["clrMinNumeric", "_min"], _groupingSep: ["clrGroupingSep", "_groupingSep"], _decimalSep: ["clrDecimalSep", "_decimalSep"] }, providers: [{ provide: NG_VALIDATORS, useExisting: ClrMinNumeric, multi: true }], ngImport: i0 }); }
2982
2982
  }
2983
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrMinNumeric, decorators: [{
2983
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrMinNumeric, decorators: [{
2984
2984
  type: Directive,
2985
2985
  args: [{
2986
2986
  selector: '[clrMinNumeric]',
@@ -3004,11 +3004,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
3004
3004
  * The full license information can be found in LICENSE in the root directory of this project.
3005
3005
  */
3006
3006
  class ClrNumericFieldModule {
3007
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNumericFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3008
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrNumericFieldModule, declarations: [ClrNumericField, ClrMaxNumeric, ClrMinNumeric], imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule], exports: [ClrNumericField, ClrMaxNumeric, ClrMinNumeric] }); }
3009
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNumericFieldModule, imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule] }); }
3007
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNumericFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3008
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrNumericFieldModule, declarations: [ClrNumericField, ClrMaxNumeric, ClrMinNumeric], imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule], exports: [ClrNumericField, ClrMaxNumeric, ClrMinNumeric] }); }
3009
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNumericFieldModule, imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule] }); }
3010
3010
  }
3011
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrNumericFieldModule, decorators: [{
3011
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrNumericFieldModule, decorators: [{
3012
3012
  type: NgModule,
3013
3013
  args: [{
3014
3014
  imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule],
@@ -3132,10 +3132,10 @@ class ClrPager {
3132
3132
  }
3133
3133
  return middlePages;
3134
3134
  }
3135
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPager, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3136
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrPager, isStandalone: false, selector: "clr-pager", inputs: { pageSize: ["clrPageSize", "pageSize"], totalItems: ["clrTotalItems", "totalItems"], last: ["clrLast", "last"], page: ["clrPage", "page"] }, outputs: { pageChange: "clrPageChange" }, host: { properties: { "class.pager": "true" } }, ngImport: i0, template: "@if (last > 1) {\n<div class=\"btn-group\">\n <button\n class=\"btn pagination-previous\"\n (click)=\"previous()\"\n [disabled]=\"page == 1\"\n data-testid=\"pager-previous-button\"\n >\n <cds-icon shape=\"angle\" direction=\"left\"></cds-icon>\n </button>\n @if (page > 2) {\n <button class=\"btn\" (click)=\"page = 1\" data-testid=\"pager-page-1\">1</button>\n } @if (page > 3) {\n <button class=\"btn\" disabled data-testid=\"pager-leading-ellipsis\">...</button>\n } @for (pageNum of middlePages; track pageNum) { @if (pageNum !== page) {\n <button class=\"btn\" (click)=\"page = pageNum\" [attr.data-testid]=\"'pager-page-' + (pageNum)\">{{pageNum}}</button>\n } @else {\n <button class=\"btn btn-primary\" type=\"button\" [attr.data-testid]=\"'pager-current-page-' + (pageNum)\">\n {{pageNum}}\n </button>\n } } @if (page < last - 2) {\n <button class=\"btn\" disabled data-testid=\"pager-trailing-ellipsis\">...</button>\n } @if (page < last - 1) {\n <button class=\"btn\" (click)=\"page = last\" [attr.data-testid]=\"'pager-page-' + (last)\">{{last}}</button>\n }\n <button class=\"btn pagination-next\" (click)=\"next()\" [disabled]=\"page == last\" data-testid=\"pager-next-button\">\n <cds-icon shape=\"angle\" direction=\"right\"></cds-icon>\n </button>\n</div>\n}\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
3135
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPager, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3136
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrPager, isStandalone: false, selector: "clr-pager", inputs: { pageSize: ["clrPageSize", "pageSize"], totalItems: ["clrTotalItems", "totalItems"], last: ["clrLast", "last"], page: ["clrPage", "page"] }, outputs: { pageChange: "clrPageChange" }, host: { properties: { "class.pager": "true" } }, ngImport: i0, template: "@if (last > 1) {\n<div class=\"btn-group\">\n <button\n class=\"btn pagination-previous\"\n (click)=\"previous()\"\n [disabled]=\"page == 1\"\n data-testid=\"pager-previous-button\"\n >\n <cds-icon shape=\"angle\" direction=\"left\"></cds-icon>\n </button>\n @if (page > 2) {\n <button class=\"btn\" (click)=\"page = 1\" data-testid=\"pager-page-1\">1</button>\n } @if (page > 3) {\n <button class=\"btn\" disabled data-testid=\"pager-leading-ellipsis\">...</button>\n } @for (pageNum of middlePages; track pageNum) { @if (pageNum !== page) {\n <button class=\"btn\" (click)=\"page = pageNum\" [attr.data-testid]=\"'pager-page-' + (pageNum)\">{{pageNum}}</button>\n } @else {\n <button class=\"btn btn-primary\" type=\"button\" [attr.data-testid]=\"'pager-current-page-' + (pageNum)\">\n {{pageNum}}\n </button>\n } } @if (page < last - 2) {\n <button class=\"btn\" disabled data-testid=\"pager-trailing-ellipsis\">...</button>\n } @if (page < last - 1) {\n <button class=\"btn\" (click)=\"page = last\" [attr.data-testid]=\"'pager-page-' + (last)\">{{last}}</button>\n }\n <button class=\"btn pagination-next\" (click)=\"next()\" [disabled]=\"page == last\" data-testid=\"pager-next-button\">\n <cds-icon shape=\"angle\" direction=\"right\"></cds-icon>\n </button>\n</div>\n}\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
3137
3137
  }
3138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPager, decorators: [{
3138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPager, decorators: [{
3139
3139
  type: Component,
3140
3140
  args: [{ selector: 'clr-pager', host: { '[class.pager]': 'true' }, standalone: false, template: "@if (last > 1) {\n<div class=\"btn-group\">\n <button\n class=\"btn pagination-previous\"\n (click)=\"previous()\"\n [disabled]=\"page == 1\"\n data-testid=\"pager-previous-button\"\n >\n <cds-icon shape=\"angle\" direction=\"left\"></cds-icon>\n </button>\n @if (page > 2) {\n <button class=\"btn\" (click)=\"page = 1\" data-testid=\"pager-page-1\">1</button>\n } @if (page > 3) {\n <button class=\"btn\" disabled data-testid=\"pager-leading-ellipsis\">...</button>\n } @for (pageNum of middlePages; track pageNum) { @if (pageNum !== page) {\n <button class=\"btn\" (click)=\"page = pageNum\" [attr.data-testid]=\"'pager-page-' + (pageNum)\">{{pageNum}}</button>\n } @else {\n <button class=\"btn btn-primary\" type=\"button\" [attr.data-testid]=\"'pager-current-page-' + (pageNum)\">\n {{pageNum}}\n </button>\n } } @if (page < last - 2) {\n <button class=\"btn\" disabled data-testid=\"pager-trailing-ellipsis\">...</button>\n } @if (page < last - 1) {\n <button class=\"btn\" (click)=\"page = last\" [attr.data-testid]=\"'pager-page-' + (last)\">{{last}}</button>\n }\n <button class=\"btn pagination-next\" (click)=\"next()\" [disabled]=\"page == last\" data-testid=\"pager-next-button\">\n <cds-icon shape=\"angle\" direction=\"right\"></cds-icon>\n </button>\n</div>\n}\n" }]
3141
3141
  }], propDecorators: { pageChange: [{
@@ -3179,10 +3179,10 @@ class ClrPagedSearchResultList {
3179
3179
  */
3180
3180
  this.pageSizeChange = new EventEmitter();
3181
3181
  }
3182
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPagedSearchResultList, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3183
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrPagedSearchResultList, isStandalone: false, selector: "clr-paged-search-result-list", inputs: { pageSize: ["clrPageSize", "pageSize"], pageSizeOptions: ["clrPageSizeOptions", "pageSizeOptions"], pageSizeLabel: ["clrPageSizeLabel", "pageSizeLabel"], currentPage: ["clrPage", "currentPage"], totalItems: ["clrTotalItems", "totalItems"], items: ["clrItems", "items"], clrPagerPosition: "clrPagerPosition" }, outputs: { pageChange: "clrPageChange", pageSizeChange: "clrPageSizeChange" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: "@if (clrPagerPosition === 'top' || clrPagerPosition === 'both') {\n<div>\n <ng-container [ngTemplateOutlet]=\"pager\" [ngTemplateOutletContext]=\"{ $implicit: 'top' }\"></ng-container>\n</div>\n} @for (item of items; track item) {\n<ng-container [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{item: item}\">\n @if (!itemTemplate) {\n <div>Item template input is undefined!</div>\n }\n</ng-container>\n} @if (clrPagerPosition === 'bottom' || clrPagerPosition === 'both') {\n<div>\n <ng-container [ngTemplateOutlet]=\"pager\" [ngTemplateOutletContext]=\"{ $implicit: 'bottom' }\"></ng-container>\n</div>\n}\n<ng-template #pager let-position>\n <div class=\"clr-row\" [attr.data-testid]=\"'paged-search-result-list-pager-row-' + (position)\">\n <div\n [class.pager-top]=\"position === 'top'\"\n [class.pager-bottom]=\"position === 'bottom'\"\n [attr.data-testid]=\"'paged-search-result-list-pager-container-' + (position)\"\n >\n <ng-container *ngTemplateOutlet=\"pageSizeDropdown\"></ng-container>\n <clr-pager\n [clrPage]=\"currentPage\"\n [clrPageSize]=\"pageSize\"\n [clrTotalItems]=\"totalItems\"\n (clrPageChange)=\"pageChange.emit($event)\"\n [attr.data-testid]=\"'paged-search-result-list-pager-' + (position)\"\n ></clr-pager>\n </div>\n </div>\n</ng-template>\n<ng-template #pageSizeDropdown>\n @if (pageSizeOptions?.length > 1) {\n <div>\n <clr-dropdown>\n <button\n type=\"button\"\n class=\"btn btn-link btn-no-capitalized\"\n clrDropdownTrigger\n data-testid=\"paged-search-result-list-page-size-trigger\"\n >\n <span class=\"options-text-button\" data-testid=\"paged-search-result-list-page-size-label\">\n {{ pageSizeLabel }}: {{ pageSize }}\n </span>\n <cds-icon class=\"options-icon-button\" shape=\"cog\"></cds-icon>\n <cds-icon shape=\"angle\" direction=\"down\"></cds-icon>\n </button>\n <clr-dropdown-menu\n class=\"spinner-in-front\"\n clrPosition=\"top-right\"\n data-testid=\"paged-search-result-list-page-size-menu\"\n >\n @for (sizeOption of pageSizeOptions; track sizeOption) {\n <button\n type=\"button\"\n clrDropdownItem\n (click)=\"pageSizeChange.emit(sizeOption)\"\n [attr.data-testid]=\"'paged-search-result-list-page-size-option-' + (sizeOption)\"\n >\n {{ sizeOption }}\n </button>\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n </div>\n }\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i3$1.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i3$1.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i3$1.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i3$1.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "component", type: ClrPager, selector: "clr-pager", inputs: ["clrPageSize", "clrTotalItems", "clrLast", "clrPage"], outputs: ["clrPageChange"] }] }); }
3182
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPagedSearchResultList, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3183
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrPagedSearchResultList, isStandalone: false, selector: "clr-paged-search-result-list", inputs: { pageSize: ["clrPageSize", "pageSize"], pageSizeOptions: ["clrPageSizeOptions", "pageSizeOptions"], pageSizeLabel: ["clrPageSizeLabel", "pageSizeLabel"], currentPage: ["clrPage", "currentPage"], totalItems: ["clrTotalItems", "totalItems"], items: ["clrItems", "items"], clrPagerPosition: "clrPagerPosition" }, outputs: { pageChange: "clrPageChange", pageSizeChange: "clrPageSizeChange" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: "@if (clrPagerPosition === 'top' || clrPagerPosition === 'both') {\n<div>\n <ng-container [ngTemplateOutlet]=\"pager\" [ngTemplateOutletContext]=\"{ $implicit: 'top' }\"></ng-container>\n</div>\n} @for (item of items; track item) {\n<ng-container [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{item: item}\">\n @if (!itemTemplate) {\n <div>Item template input is undefined!</div>\n }\n</ng-container>\n} @if (clrPagerPosition === 'bottom' || clrPagerPosition === 'both') {\n<div>\n <ng-container [ngTemplateOutlet]=\"pager\" [ngTemplateOutletContext]=\"{ $implicit: 'bottom' }\"></ng-container>\n</div>\n}\n<ng-template #pager let-position>\n <div class=\"clr-row\" [attr.data-testid]=\"'paged-search-result-list-pager-row-' + (position)\">\n <div\n [class.pager-top]=\"position === 'top'\"\n [class.pager-bottom]=\"position === 'bottom'\"\n [attr.data-testid]=\"'paged-search-result-list-pager-container-' + (position)\"\n >\n <ng-container *ngTemplateOutlet=\"pageSizeDropdown\"></ng-container>\n <clr-pager\n [clrPage]=\"currentPage\"\n [clrPageSize]=\"pageSize\"\n [clrTotalItems]=\"totalItems\"\n (clrPageChange)=\"pageChange.emit($event)\"\n [attr.data-testid]=\"'paged-search-result-list-pager-' + (position)\"\n ></clr-pager>\n </div>\n </div>\n</ng-template>\n<ng-template #pageSizeDropdown>\n @if (pageSizeOptions?.length > 1) {\n <div>\n <clr-dropdown>\n <button\n type=\"button\"\n class=\"btn btn-link btn-no-capitalized\"\n clrDropdownTrigger\n data-testid=\"paged-search-result-list-page-size-trigger\"\n >\n <span class=\"options-text-button\" data-testid=\"paged-search-result-list-page-size-label\">\n {{ pageSizeLabel }}: {{ pageSize }}\n </span>\n <cds-icon class=\"options-icon-button\" shape=\"cog\"></cds-icon>\n <cds-icon shape=\"angle\" direction=\"down\"></cds-icon>\n </button>\n <clr-dropdown-menu\n class=\"spinner-in-front\"\n clrPosition=\"top-right\"\n data-testid=\"paged-search-result-list-page-size-menu\"\n >\n @for (sizeOption of pageSizeOptions; track sizeOption) {\n <button\n type=\"button\"\n clrDropdownItem\n (click)=\"pageSizeChange.emit(sizeOption)\"\n [attr.data-testid]=\"'paged-search-result-list-page-size-option-' + (sizeOption)\"\n >\n {{ sizeOption }}\n </button>\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n </div>\n }\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i2$3.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i2$3.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i2$3.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i2$3.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "component", type: ClrPager, selector: "clr-pager", inputs: ["clrPageSize", "clrTotalItems", "clrLast", "clrPage"], outputs: ["clrPageChange"] }] }); }
3184
3184
  }
3185
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPagedSearchResultList, decorators: [{
3185
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPagedSearchResultList, decorators: [{
3186
3186
  type: Component,
3187
3187
  args: [{ selector: 'clr-paged-search-result-list', standalone: false, template: "@if (clrPagerPosition === 'top' || clrPagerPosition === 'both') {\n<div>\n <ng-container [ngTemplateOutlet]=\"pager\" [ngTemplateOutletContext]=\"{ $implicit: 'top' }\"></ng-container>\n</div>\n} @for (item of items; track item) {\n<ng-container [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{item: item}\">\n @if (!itemTemplate) {\n <div>Item template input is undefined!</div>\n }\n</ng-container>\n} @if (clrPagerPosition === 'bottom' || clrPagerPosition === 'both') {\n<div>\n <ng-container [ngTemplateOutlet]=\"pager\" [ngTemplateOutletContext]=\"{ $implicit: 'bottom' }\"></ng-container>\n</div>\n}\n<ng-template #pager let-position>\n <div class=\"clr-row\" [attr.data-testid]=\"'paged-search-result-list-pager-row-' + (position)\">\n <div\n [class.pager-top]=\"position === 'top'\"\n [class.pager-bottom]=\"position === 'bottom'\"\n [attr.data-testid]=\"'paged-search-result-list-pager-container-' + (position)\"\n >\n <ng-container *ngTemplateOutlet=\"pageSizeDropdown\"></ng-container>\n <clr-pager\n [clrPage]=\"currentPage\"\n [clrPageSize]=\"pageSize\"\n [clrTotalItems]=\"totalItems\"\n (clrPageChange)=\"pageChange.emit($event)\"\n [attr.data-testid]=\"'paged-search-result-list-pager-' + (position)\"\n ></clr-pager>\n </div>\n </div>\n</ng-template>\n<ng-template #pageSizeDropdown>\n @if (pageSizeOptions?.length > 1) {\n <div>\n <clr-dropdown>\n <button\n type=\"button\"\n class=\"btn btn-link btn-no-capitalized\"\n clrDropdownTrigger\n data-testid=\"paged-search-result-list-page-size-trigger\"\n >\n <span class=\"options-text-button\" data-testid=\"paged-search-result-list-page-size-label\">\n {{ pageSizeLabel }}: {{ pageSize }}\n </span>\n <cds-icon class=\"options-icon-button\" shape=\"cog\"></cds-icon>\n <cds-icon shape=\"angle\" direction=\"down\"></cds-icon>\n </button>\n <clr-dropdown-menu\n class=\"spinner-in-front\"\n clrPosition=\"top-right\"\n data-testid=\"paged-search-result-list-page-size-menu\"\n >\n @for (sizeOption of pageSizeOptions; track sizeOption) {\n <button\n type=\"button\"\n clrDropdownItem\n (click)=\"pageSizeChange.emit(sizeOption)\"\n [attr.data-testid]=\"'paged-search-result-list-page-size-option-' + (sizeOption)\"\n >\n {{ sizeOption }}\n </button>\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n </div>\n }\n</ng-template>\n" }]
3188
3188
  }], propDecorators: { pageSize: [{
@@ -3223,11 +3223,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
3223
3223
  * The full license information can be found in LICENSE in the root directory of this project.
3224
3224
  */
3225
3225
  class ClrPagerModule {
3226
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3227
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrPagerModule, declarations: [ClrPager], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrPager] }); }
3228
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPagerModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
3226
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3227
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrPagerModule, declarations: [ClrPager], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrPager] }); }
3228
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPagerModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
3229
3229
  }
3230
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPagerModule, decorators: [{
3230
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPagerModule, decorators: [{
3231
3231
  type: NgModule,
3232
3232
  args: [{
3233
3233
  imports: [CommonModule, ClarityModule, FormsModule],
@@ -3242,11 +3242,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
3242
3242
  * The full license information can be found in LICENSE in the root directory of this project.
3243
3243
  */
3244
3244
  class ClrPagedSearchResultListModule {
3245
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPagedSearchResultListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3246
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrPagedSearchResultListModule, declarations: [ClrPagedSearchResultList], imports: [CommonModule, ClarityModule, FormsModule, ClrPagerModule], exports: [ClrPagedSearchResultList] }); }
3247
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPagedSearchResultListModule, imports: [CommonModule, ClarityModule, FormsModule, ClrPagerModule] }); }
3245
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPagedSearchResultListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3246
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrPagedSearchResultListModule, declarations: [ClrPagedSearchResultList], imports: [CommonModule, ClarityModule, FormsModule, ClrPagerModule], exports: [ClrPagedSearchResultList] }); }
3247
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPagedSearchResultListModule, imports: [CommonModule, ClarityModule, FormsModule, ClrPagerModule] }); }
3248
3248
  }
3249
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrPagedSearchResultListModule, decorators: [{
3249
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrPagedSearchResultListModule, decorators: [{
3250
3250
  type: NgModule,
3251
3251
  args: [{
3252
3252
  imports: [CommonModule, ClarityModule, FormsModule, ClrPagerModule],
@@ -3312,15 +3312,15 @@ class ClrProgressSpinnerComponent {
3312
3312
  return new Date().getTime() - this.startTimestamp;
3313
3313
  }
3314
3314
  }
3315
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrProgressSpinnerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3316
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrProgressSpinnerComponent, isStandalone: false, selector: "clr-progress-spinner", inputs: { size: ["clrSize", "size"], showSpinner: ["clrShowSpinner", "showSpinner"] }, host: { properties: { "class.progress-spinner-overlay": "_showSpinner" } }, ngImport: i0, template: `
3315
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrProgressSpinnerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3316
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrProgressSpinnerComponent, isStandalone: false, selector: "clr-progress-spinner", inputs: { size: ["clrSize", "size"], showSpinner: ["clrShowSpinner", "showSpinner"] }, host: { properties: { "class.progress-spinner-overlay": "_showSpinner" } }, ngImport: i0, template: `
3317
3317
  @if (_showSpinner) {
3318
3318
  <span [class]="'spinner-' + size + ' spinner'" data-testid="progress-spinner"></span>
3319
3319
  <span data-testid="progress-spinner-content">&nbsp;<ng-content></ng-content></span>
3320
3320
  }
3321
3321
  `, isInline: true }); }
3322
3322
  }
3323
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrProgressSpinnerComponent, decorators: [{
3323
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrProgressSpinnerComponent, decorators: [{
3324
3324
  type: Component,
3325
3325
  args: [{
3326
3326
  selector: 'clr-progress-spinner',
@@ -3349,11 +3349,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
3349
3349
  * The full license information can be found in LICENSE in the root directory of this project.
3350
3350
  */
3351
3351
  class ClrProgressSpinnerModule {
3352
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrProgressSpinnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3353
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrProgressSpinnerModule, declarations: [ClrProgressSpinnerComponent], imports: [CommonModule], exports: [ClrProgressSpinnerComponent] }); }
3354
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrProgressSpinnerModule, imports: [CommonModule] }); }
3352
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrProgressSpinnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3353
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrProgressSpinnerModule, declarations: [ClrProgressSpinnerComponent], imports: [CommonModule], exports: [ClrProgressSpinnerComponent] }); }
3354
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrProgressSpinnerModule, imports: [CommonModule] }); }
3355
3355
  }
3356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrProgressSpinnerModule, decorators: [{
3356
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrProgressSpinnerModule, decorators: [{
3357
3357
  type: NgModule,
3358
3358
  args: [{
3359
3359
  imports: [CommonModule],
@@ -3412,10 +3412,10 @@ class ClrAddOption {
3412
3412
  this.select.nativeElement.focus();
3413
3413
  }
3414
3414
  }
3415
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAddOption, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3416
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrAddOption, isStandalone: false, selector: "clr-add-option", inputs: { blankOption: "blankOption", value: "value", mandatory: "mandatory", allValues: "allValues", excludedValues: "excludedValues", readonly: "readonly", disabled: "disabled", disableAddButton: "disableAddButton", showAddButton: "showAddButton" }, outputs: { valueChanged: "valueChanged", remove: "remove", add: "add" }, host: { properties: { "class.quick-list-option": "true" } }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true }], ngImport: i0, template: "@if (!(readonly || readonly === '')) {\n<div class=\"clr-select-wrapper quick-list-input\">\n <select\n #select\n clr-select\n class=\"quick-list-select\"\n name=\"options\"\n [(ngModel)]=\"selectedValue\"\n [disabled]=\"disabled\"\n [attr.data-testid]=\"'quick-list-select-' + (value.id)\"\n >\n @if (blankOption.id === selectedValue) {\n <option [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\" data-testid=\"quick-list-blank-option\">\n {{blankOption.label}}\n </option>\n } @for (val of getValues(); track val) {\n <option\n [selected]=\"val.id === selectedValue\"\n [ngValue]=\"val.id\"\n [attr.data-testid]=\"'quick-list-option-' + (val.id)\"\n >\n {{val.label}}\n </option>\n }\n </select>\n</div>\n} @else {\n<span [attr.data-testid]=\"'quick-list-readonly-value-' + (value.id)\">{{value.label}}</span>\n} @if (!(readonly || readonly === '')) {\n<button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n [attr.data-testid]=\"'quick-list-remove-button-' + (value.id)\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n} @if (!(readonly || readonly === '') && showAddButton) {\n<button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n [disabled]=\"disableAddButton\"\n data-testid=\"quick-list-add-compact-button\"\n>\n <cds-icon shape=\"plus-circle\"></cds-icon>\n</button>\n}\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
3415
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAddOption, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3416
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrAddOption, isStandalone: false, selector: "clr-add-option", inputs: { blankOption: "blankOption", value: "value", mandatory: "mandatory", allValues: "allValues", excludedValues: "excludedValues", readonly: "readonly", disabled: "disabled", disableAddButton: "disableAddButton", showAddButton: "showAddButton" }, outputs: { valueChanged: "valueChanged", remove: "remove", add: "add" }, host: { properties: { "class.quick-list-option": "true" } }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true }], ngImport: i0, template: "@if (!(readonly || readonly === '')) {\n<div class=\"clr-select-wrapper quick-list-input\">\n <select\n #select\n clr-select\n class=\"quick-list-select\"\n name=\"options\"\n [(ngModel)]=\"selectedValue\"\n [disabled]=\"disabled\"\n [attr.data-testid]=\"'quick-list-select-' + (value.id)\"\n >\n @if (blankOption.id === selectedValue) {\n <option [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\" data-testid=\"quick-list-blank-option\">\n {{blankOption.label}}\n </option>\n } @for (val of getValues(); track val) {\n <option\n [selected]=\"val.id === selectedValue\"\n [ngValue]=\"val.id\"\n [attr.data-testid]=\"'quick-list-option-' + (val.id)\"\n >\n {{val.label}}\n </option>\n }\n </select>\n</div>\n} @else {\n<span [attr.data-testid]=\"'quick-list-readonly-value-' + (value.id)\">{{value.label}}</span>\n} @if (!(readonly || readonly === '')) {\n<button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n [attr.data-testid]=\"'quick-list-remove-button-' + (value.id)\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n} @if (!(readonly || readonly === '') && showAddButton) {\n<button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n [disabled]=\"disableAddButton\"\n data-testid=\"quick-list-add-compact-button\"\n>\n <cds-icon shape=\"plus-circle\"></cds-icon>\n</button>\n}\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
3417
3417
  }
3418
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAddOption, decorators: [{
3418
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAddOption, decorators: [{
3419
3419
  type: Component,
3420
3420
  args: [{ selector: 'clr-add-option', host: { '[class.quick-list-option]': 'true' }, standalone: false, template: "@if (!(readonly || readonly === '')) {\n<div class=\"clr-select-wrapper quick-list-input\">\n <select\n #select\n clr-select\n class=\"quick-list-select\"\n name=\"options\"\n [(ngModel)]=\"selectedValue\"\n [disabled]=\"disabled\"\n [attr.data-testid]=\"'quick-list-select-' + (value.id)\"\n >\n @if (blankOption.id === selectedValue) {\n <option [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\" data-testid=\"quick-list-blank-option\">\n {{blankOption.label}}\n </option>\n } @for (val of getValues(); track val) {\n <option\n [selected]=\"val.id === selectedValue\"\n [ngValue]=\"val.id\"\n [attr.data-testid]=\"'quick-list-option-' + (val.id)\"\n >\n {{val.label}}\n </option>\n }\n </select>\n</div>\n} @else {\n<span [attr.data-testid]=\"'quick-list-readonly-value-' + (value.id)\">{{value.label}}</span>\n} @if (!(readonly || readonly === '')) {\n<button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n [attr.data-testid]=\"'quick-list-remove-button-' + (value.id)\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n} @if (!(readonly || readonly === '') && showAddButton) {\n<button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n [disabled]=\"disableAddButton\"\n data-testid=\"quick-list-add-compact-button\"\n>\n <cds-icon shape=\"plus-circle\"></cds-icon>\n</button>\n}\n" }]
3421
3421
  }], propDecorators: { blankOption: [{
@@ -3514,8 +3514,8 @@ class ClrQuickList extends ClrAbstractFormComponent {
3514
3514
  addNotPossible() {
3515
3515
  return this.hasBlankOption() || this.values.length === this.allValues.length;
3516
3516
  }
3517
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrQuickList, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3518
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrQuickList, isStandalone: false, selector: "clr-quick-list", inputs: { blankOption: ["clrBlankOption", "blankOption"], allValues: ["clrAllValues", "allValues"], mandatory: ["clrMandatory", "mandatory"], values: ["clrValues", "values"], addLabel: ["clrAddLabel", "addLabel"], controlClasses: ["clrControlClasses", "controlClasses"], readonly: "readonly", compactMode: "compactMode" }, outputs: { valuesChanged: "clrValuesChanged", emptyOptionAdded: "clrEmptyOptionAdded" }, host: { properties: { "class.quick-list": "true" } }, providers: [
3517
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrQuickList, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3518
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrQuickList, isStandalone: false, selector: "clr-quick-list", inputs: { blankOption: ["clrBlankOption", "blankOption"], allValues: ["clrAllValues", "allValues"], mandatory: ["clrMandatory", "mandatory"], values: ["clrValues", "values"], addLabel: ["clrAddLabel", "addLabel"], controlClasses: ["clrControlClasses", "controlClasses"], readonly: "readonly", compactMode: "compactMode" }, outputs: { valuesChanged: "clrValuesChanged", emptyOptionAdded: "clrEmptyOptionAdded" }, host: { properties: { "class.quick-list": "true" } }, providers: [
3519
3519
  {
3520
3520
  provide: NG_VALUE_ACCESSOR,
3521
3521
  useExisting: forwardRef(() => ClrQuickList),
@@ -3523,7 +3523,7 @@ class ClrQuickList extends ClrAbstractFormComponent {
3523
3523
  },
3524
3524
  ], viewQueries: [{ propertyName: "options", predicate: ClrAddOption, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n @for (value of values; track value; let i = $index) {\n <clr-add-option\n [attr.data-testid]=\"'quick-list-option-row-' + (value.id || i)\"\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [disableAddButton]=\"addNotPossible() || disabled\"\n [showAddButton]=\"compactMode && i === values.length - 1\"\n >\n </clr-add-option>\n } @if (!(readonly || readonly === '') && values.length === 0 && compactMode) {\n <button\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n data-testid=\"quick-list-add-compact-button-empty\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n } @if (!(readonly || readonly === '') && !compactMode) {\n <button\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n data-testid=\"quick-list-add-button\"\n >\n {{addLabel}}\n </button>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: ClrAddOption, selector: "clr-add-option", inputs: ["blankOption", "value", "mandatory", "allValues", "excludedValues", "readonly", "disabled", "disableAddButton", "showAddButton"], outputs: ["valueChanged", "remove", "add"] }] }); }
3525
3525
  }
3526
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrQuickList, decorators: [{
3526
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrQuickList, decorators: [{
3527
3527
  type: Component,
3528
3528
  args: [{ selector: 'clr-quick-list', host: { '[class.quick-list]': 'true' }, providers: [
3529
3529
  {
@@ -3571,11 +3571,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
3571
3571
  * The full license information can be found in LICENSE in the root directory of this project.
3572
3572
  */
3573
3573
  class ClrQuickListModule {
3574
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrQuickListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3575
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrQuickListModule, declarations: [ClrQuickList, ClrAddOption], imports: [CommonModule, FormsModule, ClarityModule, ClrFormsModule], exports: [ClrQuickList] }); }
3576
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrQuickListModule, imports: [CommonModule, FormsModule, ClarityModule, ClrFormsModule] }); }
3574
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrQuickListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3575
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrQuickListModule, declarations: [ClrQuickList, ClrAddOption], imports: [CommonModule, FormsModule, ClarityModule, ClrFormsModule], exports: [ClrQuickList] }); }
3576
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrQuickListModule, imports: [CommonModule, FormsModule, ClarityModule, ClrFormsModule] }); }
3577
3577
  }
3578
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrQuickListModule, decorators: [{
3578
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrQuickListModule, decorators: [{
3579
3579
  type: NgModule,
3580
3580
  args: [{
3581
3581
  imports: [CommonModule, FormsModule, ClarityModule, ClrFormsModule],
@@ -3677,10 +3677,10 @@ class ClrSearchField {
3677
3677
  delete this.keyupListener;
3678
3678
  }
3679
3679
  }
3680
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSearchField, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i3.NgControl, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
3681
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrSearchField, isStandalone: false, selector: "[clrSearch]", host: { properties: { "class.search-input": "true" } }, ngImport: i0 }); }
3680
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSearchField, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i3.NgControl, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
3681
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrSearchField, isStandalone: false, selector: "[clrSearch]", host: { properties: { "class.search-input": "true" } }, ngImport: i0 }); }
3682
3682
  }
3683
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSearchField, decorators: [{
3683
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSearchField, decorators: [{
3684
3684
  type: Directive,
3685
3685
  args: [{
3686
3686
  selector: '[clrSearch]',
@@ -3697,11 +3697,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
3697
3697
  * The full license information can be found in LICENSE in the root directory of this project.
3698
3698
  */
3699
3699
  class ClrSearchFieldModule {
3700
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSearchFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3701
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrSearchFieldModule, declarations: [ClrSearchField], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrSearchField] }); }
3702
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSearchFieldModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
3700
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSearchFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3701
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrSearchFieldModule, declarations: [ClrSearchField], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrSearchField] }); }
3702
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSearchFieldModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
3703
3703
  }
3704
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSearchFieldModule, decorators: [{
3704
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSearchFieldModule, decorators: [{
3705
3705
  type: NgModule,
3706
3706
  args: [{
3707
3707
  imports: [CommonModule, ClarityModule, FormsModule],
@@ -3744,8 +3744,8 @@ class ClrTreetableActionOverflow {
3744
3744
  closeOverflowContent(event) {
3745
3745
  this.smartToggleService.toggleWithEvent(event);
3746
3746
  }
3747
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableActionOverflow, deps: [{ token: i1$2.ClrPopoverService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
3748
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrTreetableActionOverflow, isStandalone: false, selector: "clr-tt-action-overflow", inputs: { empty: { classPropertyName: "empty", publicName: "empty", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "cell" }, properties: { "class.treetable-row-actions": "true", "class.treetable-cell": "true" } }, providers: [ClrPopoverService], ngImport: i0, template: `
3747
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableActionOverflow, deps: [{ token: i1$2.ClrPopoverService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
3748
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrTreetableActionOverflow, isStandalone: false, selector: "clr-tt-action-overflow", inputs: { empty: { classPropertyName: "empty", publicName: "empty", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "cell" }, properties: { "class.treetable-row-actions": "true", "class.treetable-cell": "true" } }, providers: [ClrPopoverService], ngImport: i0, template: `
3749
3749
  @if (!empty()) {
3750
3750
  <ng-container>
3751
3751
  <button
@@ -3767,9 +3767,9 @@ class ClrTreetableActionOverflow {
3767
3767
  </div>
3768
3768
  </ng-container>
3769
3769
  }
3770
- `, isInline: true, dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i2$3.ClrPopoverOrigin, selector: "[clrPopoverOrigin]" }, { kind: "directive", type: i2$3.ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: i2$3.ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentAvailablePositions", "clrPopoverContentType", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose", "clrPopoverContentOrigin"] }, { kind: "directive", type: i1$2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3770
+ `, isInline: true, dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i2$4.ClrPopoverOrigin, selector: "[clrPopoverOrigin]" }, { kind: "directive", type: i2$4.ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: i2$4.ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentAvailablePositions", "clrPopoverContentType", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose", "clrPopoverContentOrigin"] }, { kind: "directive", type: i1$2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3771
3771
  }
3772
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableActionOverflow, decorators: [{
3772
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableActionOverflow, decorators: [{
3773
3773
  type: Component,
3774
3774
  args: [{
3775
3775
  selector: 'clr-tt-action-overflow',
@@ -3838,10 +3838,10 @@ class ClrTreetableRecursionService {
3838
3838
  setTemplate(newTemplate) {
3839
3839
  this._template.set(newTemplate);
3840
3840
  }
3841
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRecursionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3842
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRecursionService }); }
3841
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRecursionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3842
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRecursionService }); }
3843
3843
  }
3844
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRecursionService, decorators: [{
3844
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRecursionService, decorators: [{
3845
3845
  type: Injectable
3846
3846
  }] });
3847
3847
  function treetableRecursionServiceFactory(existing) {
@@ -3868,8 +3868,8 @@ class ClrTreetableRecursiveRows {
3868
3868
  getContext(node) {
3869
3869
  return { $implicit: node.value, isLeaf: node.isLeaf, clrTtNode: node };
3870
3870
  }
3871
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRecursiveRows, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3872
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrTreetableRecursiveRows, isStandalone: false, selector: "clr-tt-recursive-rows", inputs: { parent: { classPropertyName: "parent", publicName: "parent", isSignal: true, isRequired: false, transformFunction: null }, children: { classPropertyName: "children", publicName: "children", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "\"group\"" } }, ngImport: i0, template: `
3871
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRecursiveRows, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3872
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrTreetableRecursiveRows, isStandalone: false, selector: "clr-tt-recursive-rows", inputs: { parent: { classPropertyName: "parent", publicName: "parent", isSignal: true, isRequired: false, transformFunction: null }, children: { classPropertyName: "children", publicName: "children", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "\"group\"" } }, ngImport: i0, template: `
3873
3873
  <ng-container>
3874
3874
  @for (child of parent()?.children || children(); track child.id) {
3875
3875
  <ng-container *ngTemplateOutlet="template(); context: getContext(child)" />
@@ -3877,7 +3877,7 @@ class ClrTreetableRecursiveRows {
3877
3877
  </ng-container>
3878
3878
  `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3879
3879
  }
3880
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRecursiveRows, decorators: [{
3880
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRecursiveRows, decorators: [{
3881
3881
  type: Component,
3882
3882
  args: [{
3883
3883
  selector: 'clr-tt-recursive-rows',
@@ -3912,8 +3912,8 @@ class ClrTreetableRowCheckbox {
3912
3912
  ? ClrTreetableSelectedState.UNSELECTED
3913
3913
  : ClrTreetableSelectedState.SELECTED);
3914
3914
  }
3915
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRowCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3916
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.22", type: ClrTreetableRowCheckbox, isStandalone: false, selector: "clr-tt-row-checkbox", inputs: { clrTtSelectionState: { classPropertyName: "clrTtSelectionState", publicName: "clrTtSelectionState", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtSelectionState: "clrTtSelectionStateChange" }, host: { attributes: { "role": "gridcell" }, properties: { "class.treetable-row-selection": "true", "class.treetable-cell": "true" } }, ngImport: i0, template: `
3915
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRowCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3916
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.23", type: ClrTreetableRowCheckbox, isStandalone: false, selector: "clr-tt-row-checkbox", inputs: { clrTtSelectionState: { classPropertyName: "clrTtSelectionState", publicName: "clrTtSelectionState", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtSelectionState: "clrTtSelectionStateChange" }, host: { attributes: { "role": "gridcell" }, properties: { "class.treetable-row-selection": "true", "class.treetable-cell": "true" } }, ngImport: i0, template: `
3917
3917
  <div class="clr-checkbox-wrapper" data-testid="treetable-row-checkbox-wrapper">
3918
3918
  <input
3919
3919
  type="checkbox"
@@ -3925,7 +3925,7 @@ class ClrTreetableRowCheckbox {
3925
3925
  </div>
3926
3926
  `, isInline: true, styles: [".treetable-children-container{opacity:0;will-change:height,opacity}.treetable-children-container.expanded{opacity:1}.treetable-children-container.collapsed{height:0;opacity:0;overflow:hidden}.treetable-children-container.animate{transition:height .4s ease,opacity .4s ease}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3927
3927
  }
3928
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRowCheckbox, decorators: [{
3928
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRowCheckbox, decorators: [{
3929
3929
  type: Component,
3930
3930
  args: [{ selector: 'clr-tt-row-checkbox', template: `
3931
3931
  <div class="clr-checkbox-wrapper" data-testid="treetable-row-checkbox-wrapper">
@@ -3994,10 +3994,10 @@ class ClrTreetableRow {
3994
3994
  this.onExpandCollapseClick();
3995
3995
  }
3996
3996
  }
3997
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRow, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3998
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrTreetableRow, isStandalone: false, selector: "clr-tt-row", inputs: { clrExpanded: { classPropertyName: "clrExpanded", publicName: "clrExpanded", isSignal: true, isRequired: false, transformFunction: null }, clrExpandable: { classPropertyName: "clrExpandable", publicName: "clrExpandable", isSignal: true, isRequired: false, transformFunction: null }, clrClickable: { classPropertyName: "clrClickable", publicName: "clrClickable", isSignal: true, isRequired: false, transformFunction: null }, clrTtItem: { classPropertyName: "clrTtItem", publicName: "clrTtItem", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrExpanded: "clrExpandedChange" }, host: { properties: { "class.treetable-row-wrapper": "true", "class.treetable-selected": "isSelected()" } }, providers: [TREETABLE_RECURSION_SERVICE_PROVIDER], queries: [{ propertyName: "_actionOverflow", first: true, predicate: ClrTreetableActionOverflow, descendants: true, isSignal: true }], ngImport: i0, template: "<!--\n ~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div\n class=\"clr-tt-node-content treetable-row\"\n [attr.data-testid]=\"'treetable-row-' + (clrTtItem()?.id || 'item')\"\n [class.clr-row-clickable]=\"showClickClass()\"\n [class.treetable-selected]=\"isSelected()\"\n (click)=\"onRowClick($event)\"\n>\n @if (showSelection()) {\n <clr-tt-row-checkbox\n [attr.data-testid]=\"'treetable-row-checkbox-' + (clrTtItem()?.id || 'item')\"\n [clrTtSelectionState]=\"clrTtItem().selected()\"\n (clrTtSelectionStateChange)=\"toggleSelection($event)\"\n (click)=\"$event.stopPropagation()\"\n >\n </clr-tt-row-checkbox>\n }\n\n <ng-content select=\"clr-tt-action-overflow\" />\n\n @if (showActionOverflow() && showEmptyActionOverflow()) {\n <clr-tt-action-overflow [empty]=\"true\" />\n }\n\n <div class=\"treetable-scrolling-cells\">\n @if (clrExpandable()) {\n <div class=\"treetable-expandable-caret\">\n <button\n type=\"button\"\n class=\"treetable-expandable-caret-button\"\n data-testId=\"clrTtRowCaret\"\n (click)=\"onCaretClick()\"\n >\n <cds-icon\n shape=\"angle\"\n [direction]=\"clrExpanded() ? 'down' : 'right'\"\n class=\"treetable-expandable-caret-icon\"\n ></cds-icon>\n </button>\n </div>\n }\n\n <ng-content select=\"clr-tt-cell\" />\n </div>\n</div>\n\n<div\n class=\"treetable-children-container\"\n data-testId=\"clrTtRowChildContainer\"\n [class.expanded]=\"clrExpanded()\"\n [class.collapsed]=\"!clrExpanded()\"\n [class.animate]=\"shouldAnimate()\"\n>\n @if (isRecursionMode()) {\n <clr-tt-recursive-rows [parent]=\"clrTtItem()\" />\n } @else {\n <ng-content select=\"clr-tt-row\" />\n }\n</div>\n", styles: [".treetable-children-container{opacity:0;will-change:height,opacity}.treetable-children-container.expanded{opacity:1}.treetable-children-container.collapsed{height:0;opacity:0;overflow:hidden}.treetable-children-container.animate{transition:height .4s ease,opacity .4s ease}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: ClrTreetableActionOverflow, selector: "clr-tt-action-overflow", inputs: ["empty"] }, { kind: "component", type: ClrTreetableRecursiveRows, selector: "clr-tt-recursive-rows", inputs: ["parent", "children"] }, { kind: "component", type: ClrTreetableRowCheckbox, selector: "clr-tt-row-checkbox", inputs: ["clrTtSelectionState"], outputs: ["clrTtSelectionStateChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3997
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRow, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3998
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrTreetableRow, isStandalone: false, selector: "clr-tt-row", inputs: { clrExpanded: { classPropertyName: "clrExpanded", publicName: "clrExpanded", isSignal: true, isRequired: false, transformFunction: null }, clrExpandable: { classPropertyName: "clrExpandable", publicName: "clrExpandable", isSignal: true, isRequired: false, transformFunction: null }, clrClickable: { classPropertyName: "clrClickable", publicName: "clrClickable", isSignal: true, isRequired: false, transformFunction: null }, clrTtItem: { classPropertyName: "clrTtItem", publicName: "clrTtItem", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrExpanded: "clrExpandedChange" }, host: { properties: { "class.treetable-row-wrapper": "true", "class.treetable-selected": "isSelected()" } }, providers: [TREETABLE_RECURSION_SERVICE_PROVIDER], queries: [{ propertyName: "_actionOverflow", first: true, predicate: ClrTreetableActionOverflow, descendants: true, isSignal: true }], ngImport: i0, template: "<!--\n ~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div\n class=\"clr-tt-node-content treetable-row\"\n [attr.data-testid]=\"'treetable-row-' + (clrTtItem()?.id || 'item')\"\n [class.clr-row-clickable]=\"showClickClass()\"\n [class.treetable-selected]=\"isSelected()\"\n (click)=\"onRowClick($event)\"\n>\n @if (showSelection()) {\n <clr-tt-row-checkbox\n [attr.data-testid]=\"'treetable-row-checkbox-' + (clrTtItem()?.id || 'item')\"\n [clrTtSelectionState]=\"clrTtItem().selected()\"\n (clrTtSelectionStateChange)=\"toggleSelection($event)\"\n (click)=\"$event.stopPropagation()\"\n >\n </clr-tt-row-checkbox>\n }\n\n <ng-content select=\"clr-tt-action-overflow\" />\n\n @if (showActionOverflow() && showEmptyActionOverflow()) {\n <clr-tt-action-overflow [empty]=\"true\" />\n }\n\n <div class=\"treetable-scrolling-cells\">\n @if (clrExpandable()) {\n <div class=\"treetable-expandable-caret\">\n <button\n type=\"button\"\n class=\"treetable-expandable-caret-button\"\n data-testId=\"clrTtRowCaret\"\n (click)=\"onCaretClick()\"\n >\n <cds-icon\n shape=\"angle\"\n [direction]=\"clrExpanded() ? 'down' : 'right'\"\n class=\"treetable-expandable-caret-icon\"\n ></cds-icon>\n </button>\n </div>\n }\n\n <ng-content select=\"clr-tt-cell\" />\n </div>\n</div>\n\n<div\n class=\"treetable-children-container\"\n data-testId=\"clrTtRowChildContainer\"\n [class.expanded]=\"clrExpanded()\"\n [class.collapsed]=\"!clrExpanded()\"\n [class.animate]=\"shouldAnimate()\"\n>\n @if (isRecursionMode()) {\n <clr-tt-recursive-rows [parent]=\"clrTtItem()\" />\n } @else {\n <ng-content select=\"clr-tt-row\" />\n }\n</div>\n", styles: [".treetable-children-container{opacity:0;will-change:height,opacity}.treetable-children-container.expanded{opacity:1}.treetable-children-container.collapsed{height:0;opacity:0;overflow:hidden}.treetable-children-container.animate{transition:height .4s ease,opacity .4s ease}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: ClrTreetableActionOverflow, selector: "clr-tt-action-overflow", inputs: ["empty"] }, { kind: "component", type: ClrTreetableRecursiveRows, selector: "clr-tt-recursive-rows", inputs: ["parent", "children"] }, { kind: "component", type: ClrTreetableRowCheckbox, selector: "clr-tt-row-checkbox", inputs: ["clrTtSelectionState"], outputs: ["clrTtSelectionStateChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3999
3999
  }
4000
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableRow, decorators: [{
4000
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableRow, decorators: [{
4001
4001
  type: Component,
4002
4002
  args: [{ selector: 'clr-tt-row', providers: [TREETABLE_RECURSION_SERVICE_PROVIDER], host: { '[class.treetable-row-wrapper]': 'true', '[class.treetable-selected]': 'isSelected()' }, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<!--\n ~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div\n class=\"clr-tt-node-content treetable-row\"\n [attr.data-testid]=\"'treetable-row-' + (clrTtItem()?.id || 'item')\"\n [class.clr-row-clickable]=\"showClickClass()\"\n [class.treetable-selected]=\"isSelected()\"\n (click)=\"onRowClick($event)\"\n>\n @if (showSelection()) {\n <clr-tt-row-checkbox\n [attr.data-testid]=\"'treetable-row-checkbox-' + (clrTtItem()?.id || 'item')\"\n [clrTtSelectionState]=\"clrTtItem().selected()\"\n (clrTtSelectionStateChange)=\"toggleSelection($event)\"\n (click)=\"$event.stopPropagation()\"\n >\n </clr-tt-row-checkbox>\n }\n\n <ng-content select=\"clr-tt-action-overflow\" />\n\n @if (showActionOverflow() && showEmptyActionOverflow()) {\n <clr-tt-action-overflow [empty]=\"true\" />\n }\n\n <div class=\"treetable-scrolling-cells\">\n @if (clrExpandable()) {\n <div class=\"treetable-expandable-caret\">\n <button\n type=\"button\"\n class=\"treetable-expandable-caret-button\"\n data-testId=\"clrTtRowCaret\"\n (click)=\"onCaretClick()\"\n >\n <cds-icon\n shape=\"angle\"\n [direction]=\"clrExpanded() ? 'down' : 'right'\"\n class=\"treetable-expandable-caret-icon\"\n ></cds-icon>\n </button>\n </div>\n }\n\n <ng-content select=\"clr-tt-cell\" />\n </div>\n</div>\n\n<div\n class=\"treetable-children-container\"\n data-testId=\"clrTtRowChildContainer\"\n [class.expanded]=\"clrExpanded()\"\n [class.collapsed]=\"!clrExpanded()\"\n [class.animate]=\"shouldAnimate()\"\n>\n @if (isRecursionMode()) {\n <clr-tt-recursive-rows [parent]=\"clrTtItem()\" />\n } @else {\n <ng-content select=\"clr-tt-row\" />\n }\n</div>\n", styles: [".treetable-children-container{opacity:0;will-change:height,opacity}.treetable-children-container.expanded{opacity:1}.treetable-children-container.collapsed{height:0;opacity:0;overflow:hidden}.treetable-children-container.animate{transition:height .4s ease,opacity .4s ease}\n"] }]
4003
4003
  }], propDecorators: { clrExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrExpanded", required: false }] }, { type: i0.Output, args: ["clrExpandedChange"] }], clrExpandable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrExpandable", required: false }] }], clrClickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrClickable", required: false }] }], clrTtItem: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtItem", required: false }] }], _actionOverflow: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ClrTreetableActionOverflow), { isSignal: true }] }] } });
@@ -4048,10 +4048,10 @@ class SortStateService {
4048
4048
  }
4049
4049
  return (this._reverse() ? -1 : 1) * currentComparator.compare(a, b);
4050
4050
  }
4051
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: SortStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4052
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: SortStateService }); }
4051
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SortStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4052
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SortStateService }); }
4053
4053
  }
4054
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: SortStateService, decorators: [{
4054
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SortStateService, decorators: [{
4055
4055
  type: Injectable
4056
4056
  }] });
4057
4057
 
@@ -4347,10 +4347,10 @@ class FilterStateService {
4347
4347
  });
4348
4348
  return registered;
4349
4349
  }
4350
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: FilterStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4351
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: FilterStateService }); }
4350
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: FilterStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4351
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: FilterStateService }); }
4352
4352
  }
4353
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: FilterStateService, decorators: [{
4353
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: FilterStateService, decorators: [{
4354
4354
  type: Injectable
4355
4355
  }], ctorParameters: () => [] });
4356
4356
 
@@ -4439,14 +4439,21 @@ class TreetableDataStateService {
4439
4439
  }
4440
4440
  return this.filterTreeRecursively(treetableNodes, activeFilters);
4441
4441
  }, ...(ngDevMode ? [{ debugName: "_filteredNodes" }] : /* istanbul ignore next */ []));
4442
- this.displayedNodes = computed(() => {
4443
- const nodes = this._filteredNodes();
4444
- const { comparator } = this._sort.sortState();
4445
- if (!comparator) {
4446
- return nodes;
4447
- }
4448
- return this.sortTreeRecursively(nodes);
4449
- }, ...(ngDevMode ? [{ debugName: "displayedNodes" }] : /* istanbul ignore next */ []));
4442
+ this.displayedNodes = computed(() => this.applySort(this._filteredNodes()), ...(ngDevMode ? [{ debugName: "displayedNodes" }] : /* istanbul ignore next */ []));
4443
+ /**
4444
+ * All nodes of the data source, ignoring the active filters. The active sort is applied, so the
4445
+ * order matches the order of the displayed nodes.
4446
+ */
4447
+ this.allNodes = computed(() => this.applySort(this._treetableNodes()), ...(ngDevMode ? [{ debugName: "allNodes" }] : /* istanbul ignore next */ []));
4448
+ /**
4449
+ * All items of the data source as a flat, depth-first list. Active filters are ignored, the
4450
+ * active sort is applied.
4451
+ */
4452
+ this.allItems = computed(() => this.flatten(this.allNodes()), ...(ngDevMode ? [{ debugName: "allItems" }] : /* istanbul ignore next */ []));
4453
+ /**
4454
+ * All currently displayed items (filtered and sorted) as a flat, depth-first list.
4455
+ */
4456
+ this.displayedItems = computed(() => this.flatten(this.displayedNodes()), ...(ngDevMode ? [{ debugName: "displayedItems" }] : /* istanbul ignore next */ []));
4450
4457
  this.areAllNodesSelected = computed(() => this.displayedNodes().every(node => node.selected() === ClrTreetableSelectedState.SELECTED), ...(ngDevMode ? [{ debugName: "areAllNodesSelected" }] : /* istanbul ignore next */ []));
4451
4458
  this.selectedNodes = computed(() => {
4452
4459
  const result = [];
@@ -4541,6 +4548,26 @@ class TreetableDataStateService {
4541
4548
  }
4542
4549
  return result;
4543
4550
  }
4551
+ /**
4552
+ * Applies the currently active sort to the given nodes. Returns them unchanged if no sort is active.
4553
+ */
4554
+ applySort(nodes) {
4555
+ const { comparator } = this._sort.sortState();
4556
+ if (!comparator) {
4557
+ return nodes;
4558
+ }
4559
+ return this.sortTreeRecursively(nodes);
4560
+ }
4561
+ /**
4562
+ * Flattens the given nodes into a depth-first list of their values.
4563
+ */
4564
+ flatten(nodes) {
4565
+ const result = [];
4566
+ this.traverseTreeNodes(nodes, (node) => {
4567
+ result.push(node.value);
4568
+ });
4569
+ return result;
4570
+ }
4544
4571
  sortTreeRecursively(nodes) {
4545
4572
  const sortedNodes = [...nodes].sort((nodeA, nodeB) => this._sort.compare(nodeA.value, nodeB.value));
4546
4573
  return sortedNodes.map(node => {
@@ -4560,10 +4587,10 @@ class TreetableDataStateService {
4560
4587
  }
4561
4588
  }
4562
4589
  }
4563
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableDataStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4564
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableDataStateService }); }
4590
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableDataStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4591
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableDataStateService }); }
4565
4592
  }
4566
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableDataStateService, decorators: [{
4593
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableDataStateService, decorators: [{
4567
4594
  type: Injectable
4568
4595
  }], ctorParameters: () => [] });
4569
4596
 
@@ -4620,6 +4647,8 @@ class TreetableColumnStateService {
4620
4647
  hidden: false,
4621
4648
  initialHidden: false,
4622
4649
  titleTemplateRef: options.titleTemplateRef,
4650
+ field: options.field,
4651
+ colType: options.colType ?? 'string',
4623
4652
  },
4624
4653
  }));
4625
4654
  }
@@ -4716,10 +4745,10 @@ class TreetableColumnStateService {
4716
4745
  };
4717
4746
  });
4718
4747
  }
4719
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableColumnStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4720
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableColumnStateService }); }
4748
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableColumnStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4749
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableColumnStateService }); }
4721
4750
  }
4722
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableColumnStateService, decorators: [{
4751
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableColumnStateService, decorators: [{
4723
4752
  type: Injectable
4724
4753
  }], ctorParameters: () => [] });
4725
4754
 
@@ -4734,6 +4763,8 @@ class ClrTreetable {
4734
4763
  this.treetableId = `clr-treetable-${++treetableId}`;
4735
4764
  this.selectAllId = `clr-tt-select-all${treetableId}`;
4736
4765
  this._dataStateService = inject((TreetableDataStateService));
4766
+ this._columnStateService = inject(TreetableColumnStateService);
4767
+ this._filterStateService = inject((FilterStateService));
4737
4768
  this._recursionService = inject((ClrTreetableRecursionService));
4738
4769
  this._commonStringsService = inject(ClrCommonStringsService);
4739
4770
  this.commonStrings = this._commonStringsService.keys;
@@ -4753,6 +4784,30 @@ class ClrTreetable {
4753
4784
  this.showSelection = computed(() => this.selectionType() === SelectionType.Multi, ...(ngDevMode ? [{ debugName: "showSelection" }] : /* istanbul ignore next */ []));
4754
4785
  this.areAllRowsSelected = computed(() => this._dataStateService.areAllNodesSelected(), ...(ngDevMode ? [{ debugName: "areAllRowsSelected" }] : /* istanbul ignore next */ []));
4755
4786
  this.hasActionOverflow = computed(() => this._actionOverflow()?.length > 0, ...(ngDevMode ? [{ debugName: "hasActionOverflow" }] : /* istanbul ignore next */ []));
4787
+ /**
4788
+ * All items of the data source as a flat, depth-first list. Active filters are ignored, the
4789
+ * active sort is applied.
4790
+ */
4791
+ this.allItems = this._dataStateService.allItems;
4792
+ /**
4793
+ * All currently displayed items (filtered and sorted) as a flat, depth-first list.
4794
+ */
4795
+ this.displayedItems = this._dataStateService.displayedItems;
4796
+ /**
4797
+ * All currently selected items as a flat, depth-first list.
4798
+ *
4799
+ * Selection is tracked on the displayed nodes, so a selected item that is hidden by an active
4800
+ * filter is not part of this list.
4801
+ */
4802
+ this.selectedItems = this._dataStateService.selectedNodes;
4803
+ /**
4804
+ * True as long as at least one filter of the treetable is active.
4805
+ */
4806
+ this.hasActiveFilters = this._filterStateService.hasActiveFilters;
4807
+ /**
4808
+ * State of all currently visible (not hidden) columns, in render order.
4809
+ */
4810
+ this.visibleColumnStates = this._columnStateService.visibleColumns;
4756
4811
  effect(() => {
4757
4812
  const selectedItems = this.clrTtSelected();
4758
4813
  if (selectedItems) {
@@ -4766,16 +4821,16 @@ class ClrTreetable {
4766
4821
  toggleSelectAll() {
4767
4822
  this._dataStateService.toggleSelectionForDisplayedNodes();
4768
4823
  }
4769
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetable, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4770
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrTreetable, isStandalone: false, selector: "clr-treetable", inputs: { clrClickableRows: { classPropertyName: "clrClickableRows", publicName: "clrClickableRows", isSignal: true, isRequired: false, transformFunction: null }, clrHideHeader: { classPropertyName: "clrHideHeader", publicName: "clrHideHeader", isSignal: true, isRequired: false, transformFunction: null }, clrTtLoading: { classPropertyName: "clrTtLoading", publicName: "clrTtLoading", isSignal: true, isRequired: false, transformFunction: null }, clrTtSelected: { classPropertyName: "clrTtSelected", publicName: "clrTtSelected", isSignal: true, isRequired: false, transformFunction: null }, clrTtAutoParentSelection: { classPropertyName: "clrTtAutoParentSelection", publicName: "clrTtAutoParentSelection", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtSelectedChange: "clrTtSelectedChange", clrTtRefresh: "clrTtRefresh" }, host: { properties: { "class.empty": "empty()", "class.treetable-host": "true" } }, providers: [
4824
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetable, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4825
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrTreetable, isStandalone: false, selector: "clr-treetable", inputs: { clrClickableRows: { classPropertyName: "clrClickableRows", publicName: "clrClickableRows", isSignal: true, isRequired: false, transformFunction: null }, clrHideHeader: { classPropertyName: "clrHideHeader", publicName: "clrHideHeader", isSignal: true, isRequired: false, transformFunction: null }, clrTtLoading: { classPropertyName: "clrTtLoading", publicName: "clrTtLoading", isSignal: true, isRequired: false, transformFunction: null }, clrTtSelected: { classPropertyName: "clrTtSelected", publicName: "clrTtSelected", isSignal: true, isRequired: false, transformFunction: null }, clrTtAutoParentSelection: { classPropertyName: "clrTtAutoParentSelection", publicName: "clrTtAutoParentSelection", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtSelectedChange: "clrTtSelectedChange", clrTtRefresh: "clrTtRefresh" }, host: { properties: { "class.empty": "empty()", "class.treetable-host": "true" } }, providers: [
4771
4826
  TREETABLE_RECURSION_SERVICE_PROVIDER,
4772
4827
  TreetableDataStateService,
4773
4828
  TreetableColumnStateService,
4774
4829
  SortStateService,
4775
4830
  FilterStateService,
4776
- ], queries: [{ propertyName: "_ttRows", predicate: ClrTreetableRow, descendants: true, isSignal: true }, { propertyName: "_actionOverflow", predicate: ClrTreetableActionOverflow, descendants: true, isSignal: true }], ngImport: i0, template: "<!--\n~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n~ This software is released under MIT license.\n~ The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<div class=\"treetable\" data-testid=\"treetable\">\n <div class=\"treetable-grid\" role=\"grid\" data-testid=\"treetable-grid\">\n <div class=\"treetable-header\" role=\"rowgroup\" data-testid=\"treetable-header\" [class.hide-header]=\"clrHideHeader()\">\n @if (showSelection() && !empty()) {\n <div class=\"treetable-row-selection treetable-column\" role=\"columnheader\">\n <div class=\"clr-checkbox-wrapper\">\n <input\n type=\"checkbox\"\n data-testId=\"clrTtSelectAll\"\n [id]=\"selectAllId\"\n [checked]=\"areAllRowsSelected()\"\n (change)=\"toggleSelectAll()\"\n />\n <!-- Usage of class clr-col-null here prevents clr-col-* classes from being added when a treetable is wrapped inside clrForm -->\n <label [for]=\"selectAllId\" class=\"clr-control-label clr-col-null\" data-testid=\"treetable-select-all-label\">\n <span class=\"clr-sr-only\" data-testid=\"treetable-select-all-text\">{{ commonStrings.selectAll }}</span>\n </label>\n </div>\n </div>\n } @if (hasActionOverflow()) {\n <div class=\"treetable-row-actions treetable-column\" data-testid=\"treetable-action-header\">&nbsp;</div>\n }\n <div class=\"treetable-row-scrollable\" data-testid=\"treetable-column-headers\">\n <ng-content select=\"clr-tt-column\" />\n </div>\n </div>\n\n <div class=\"treetable-body\" data-testid=\"treetable-body\">\n @if (isRecursionMode()) {\n <clr-tt-recursive-rows [children]=\"displayedNodes()\" />\n } @else {\n <ng-content select=\"clr-tt-row\" />\n } @if (empty() && !clrTtLoading()) {\n <ng-content select=\"clr-tt-placeholder\" />\n }\n </div>\n </div>\n\n <ng-content select=\"clr-tt-footer\"></ng-content>\n\n @if (clrTtLoading()) {\n <div class=\"treetable-spinner\" data-testid=\"treetable-loading\">\n <clr-spinner clrMedium data-testid=\"treetable-loading-spinner\" />\n </div>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "component", type: i2$5.ClrSpinner, selector: "clr-spinner", inputs: ["clrInline", "clrInverse", "clrSmall", "clrMedium"] }, { kind: "component", type: ClrTreetableRecursiveRows, selector: "clr-tt-recursive-rows", inputs: ["parent", "children"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4831
+ ], queries: [{ propertyName: "_ttRows", predicate: ClrTreetableRow, descendants: true, isSignal: true }, { propertyName: "_actionOverflow", predicate: ClrTreetableActionOverflow, descendants: true, isSignal: true }], ngImport: i0, template: "<!--\n~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n~ This software is released under MIT license.\n~ The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<div class=\"treetable\" data-testid=\"treetable\">\n <div class=\"treetable-grid\" role=\"grid\" data-testid=\"treetable-grid\">\n <div class=\"treetable-header\" role=\"rowgroup\" data-testid=\"treetable-header\" [class.hide-header]=\"clrHideHeader()\">\n @if (showSelection() && !empty()) {\n <div class=\"treetable-row-selection treetable-column\" role=\"columnheader\">\n <div class=\"clr-checkbox-wrapper\">\n <input\n type=\"checkbox\"\n data-testId=\"clrTtSelectAll\"\n [id]=\"selectAllId\"\n [checked]=\"areAllRowsSelected()\"\n (change)=\"toggleSelectAll()\"\n />\n <!-- Usage of class clr-col-null here prevents clr-col-* classes from being added when a treetable is wrapped inside clrForm -->\n <label [for]=\"selectAllId\" class=\"clr-control-label clr-col-null\" data-testid=\"treetable-select-all-label\">\n <span class=\"clr-sr-only\" data-testid=\"treetable-select-all-text\">{{ commonStrings.selectAll }}</span>\n </label>\n </div>\n </div>\n } @if (hasActionOverflow()) {\n <div class=\"treetable-row-actions treetable-column\" data-testid=\"treetable-action-header\">&nbsp;</div>\n }\n <div class=\"treetable-row-scrollable\" data-testid=\"treetable-column-headers\">\n <ng-content select=\"clr-tt-column\" />\n </div>\n </div>\n\n <div class=\"treetable-body\" data-testid=\"treetable-body\">\n @if (isRecursionMode()) {\n <clr-tt-recursive-rows [children]=\"displayedNodes()\" />\n } @else {\n <ng-content select=\"clr-tt-row\" />\n } @if (empty() && !clrTtLoading()) {\n <ng-content select=\"clr-tt-placeholder\" />\n }\n </div>\n </div>\n\n <ng-content select=\"clr-tt-footer\"></ng-content>\n\n @if (clrTtLoading()) {\n <div class=\"treetable-spinner\" data-testid=\"treetable-loading\">\n <clr-spinner clrMedium data-testid=\"treetable-loading-spinner\" />\n </div>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "component", type: i2$6.ClrSpinner, selector: "clr-spinner", inputs: ["clrInline", "clrInverse", "clrSmall", "clrMedium"] }, { kind: "component", type: ClrTreetableRecursiveRows, selector: "clr-tt-recursive-rows", inputs: ["parent", "children"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4777
4832
  }
4778
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetable, decorators: [{
4833
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetable, decorators: [{
4779
4834
  type: Component,
4780
4835
  args: [{ selector: 'clr-treetable', host: { '[class.empty]': 'empty()', '[class.treetable-host]': 'true' }, providers: [
4781
4836
  TREETABLE_RECURSION_SERVICE_PROVIDER,
@@ -4984,8 +5039,8 @@ class ClrTreetableColumnSeparator {
4984
5039
  ? Math.max(measuredWidth, MIN_COLUMN_WIDTH)
4985
5040
  : MIN_COLUMN_WIDTH;
4986
5041
  }
4987
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableColumnSeparator, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4988
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.22", type: ClrTreetableColumnSeparator, isStandalone: false, selector: "clr-tt-column-separator", inputs: { columnId: { classPropertyName: "columnId", publicName: "columnId", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class.treetable-column-separator": "true" } }, viewQueries: [{ propertyName: "_resizeTracker", first: true, predicate: ["resizeTracker"], descendants: true, isSignal: true }, { propertyName: "_columnHandle", first: true, predicate: ["columnHandle"], descendants: true, isSignal: true }], ngImport: i0, template: `
5042
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableColumnSeparator, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5043
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.23", type: ClrTreetableColumnSeparator, isStandalone: false, selector: "clr-tt-column-separator", inputs: { columnId: { classPropertyName: "columnId", publicName: "columnId", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class.treetable-column-separator": "true" } }, viewQueries: [{ propertyName: "_resizeTracker", first: true, predicate: ["resizeTracker"], descendants: true, isSignal: true }, { propertyName: "_columnHandle", first: true, predicate: ["columnHandle"], descendants: true, isSignal: true }], ngImport: i0, template: `
4989
5044
  <button
4990
5045
  type="button"
4991
5046
  class="treetable-column-handle"
@@ -5003,7 +5058,7 @@ class ClrTreetableColumnSeparator {
5003
5058
  ></div>
5004
5059
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5005
5060
  }
5006
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableColumnSeparator, decorators: [{
5061
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableColumnSeparator, decorators: [{
5007
5062
  type: Component,
5008
5063
  args: [{
5009
5064
  selector: 'clr-tt-column-separator',
@@ -5040,7 +5095,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
5040
5095
  let columnId = 0;
5041
5096
  class ClrTreetableColumn {
5042
5097
  ngOnInit() {
5043
- this._columnState.register({ id: this.columnId, titleTemplateRef: this._columnTitleRef() });
5098
+ this._columnState.register({
5099
+ id: this.columnId,
5100
+ titleTemplateRef: this._columnTitleRef(),
5101
+ field: this.clrTtField() ?? undefined,
5102
+ colType: this.clrTtColType(),
5103
+ });
5044
5104
  }
5045
5105
  ngAfterViewInit() {
5046
5106
  // Only set a default testid if the consumer didn't already provide one.
@@ -5059,6 +5119,19 @@ class ClrTreetableColumn {
5059
5119
  this._columnTitleRef = viewChild('columnTitle', { ...(ngDevMode ? { debugName: "_columnTitleRef" } : /* istanbul ignore next */ {}), read: TemplateRef });
5060
5120
  this._columnState = inject(TreetableColumnStateService);
5061
5121
  this._sort = inject((SortStateService));
5122
+ /**
5123
+ * Property path of the item rendered in this column, e.g. `name` or `address.city`.
5124
+ *
5125
+ * The treetable itself does not use this value for rendering. It is metadata consumed by features
5126
+ * that need to map a column to a raw data property, most notably `clr-export-treetable-button`.
5127
+ */
5128
+ this.clrTtField = input(null, ...(ngDevMode ? [{ debugName: "clrTtField" }] : /* istanbul ignore next */ []));
5129
+ /**
5130
+ * Type of the values rendered in this column.
5131
+ *
5132
+ * It is only used as metadata for the export, where it determines the type of the written cells.
5133
+ */
5134
+ this.clrTtColType = input('string', ...(ngDevMode ? [{ debugName: "clrTtColType" }] : /* istanbul ignore next */ []));
5062
5135
  this.clrTtSortBy = input(null, ...(ngDevMode ? [{ debugName: "clrTtSortBy" }] : /* istanbul ignore next */ []));
5063
5136
  this._internalSortOrder = computed(() => {
5064
5137
  const sortState = this._sort.sortState();
@@ -5139,8 +5212,8 @@ class ClrTreetableColumn {
5139
5212
  }
5140
5213
  this._sort.toggle(comparator, reverse);
5141
5214
  }
5142
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableColumn, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5143
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrTreetableColumn, isStandalone: false, selector: "clr-tt-column", inputs: { clrTtSortBy: { classPropertyName: "clrTtSortBy", publicName: "clrTtSortBy", isSignal: true, isRequired: false, transformFunction: null }, clrTtSortOrder: { classPropertyName: "clrTtSortOrder", publicName: "clrTtSortOrder", isSignal: true, isRequired: false, transformFunction: null }, clrTtColumnSize: { classPropertyName: "clrTtColumnSize", publicName: "clrTtColumnSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtSortOrderChange: "clrTtSortOrderChange", clrTtColumnResize: "clrTtColumnResize" }, host: { attributes: { "role": "columnheader" }, properties: { "class.treetable-column": "true", "attr.aria-sort": "ariaSort()" } }, providers: [ClrPopoverService], viewQueries: [{ propertyName: "_columnTitleRef", first: true, predicate: ["columnTitle"], descendants: true, read: TemplateRef, isSignal: true }], ngImport: i0, template: `
5215
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableColumn, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5216
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrTreetableColumn, isStandalone: false, selector: "clr-tt-column", inputs: { clrTtField: { classPropertyName: "clrTtField", publicName: "clrTtField", isSignal: true, isRequired: false, transformFunction: null }, clrTtColType: { classPropertyName: "clrTtColType", publicName: "clrTtColType", isSignal: true, isRequired: false, transformFunction: null }, clrTtSortBy: { classPropertyName: "clrTtSortBy", publicName: "clrTtSortBy", isSignal: true, isRequired: false, transformFunction: null }, clrTtSortOrder: { classPropertyName: "clrTtSortOrder", publicName: "clrTtSortOrder", isSignal: true, isRequired: false, transformFunction: null }, clrTtColumnSize: { classPropertyName: "clrTtColumnSize", publicName: "clrTtColumnSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtSortOrderChange: "clrTtSortOrderChange", clrTtColumnResize: "clrTtColumnResize" }, host: { attributes: { "role": "columnheader" }, properties: { "class.treetable-column": "true", "attr.aria-sort": "ariaSort()", "attr.data-column-id": "columnId" } }, providers: [ClrPopoverService], viewQueries: [{ propertyName: "_columnTitleRef", first: true, predicate: ["columnTitle"], descendants: true, read: TemplateRef, isSignal: true }], ngImport: i0, template: `
5144
5217
  @if (isSortable()) {
5145
5218
  <button type="button" class="treetable-column-title" data-testId="clrTtSortButton" (click)="sort()">
5146
5219
  <ng-container *ngTemplateOutlet="columnTitle" />
@@ -5169,7 +5242,7 @@ class ClrTreetableColumn {
5169
5242
  </ng-template>
5170
5243
  `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: ClrTreetableColumnSeparator, selector: "clr-tt-column-separator", inputs: ["columnId"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5171
5244
  }
5172
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableColumn, decorators: [{
5245
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableColumn, decorators: [{
5173
5246
  type: Component,
5174
5247
  args: [{
5175
5248
  selector: 'clr-tt-column',
@@ -5205,12 +5278,251 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
5205
5278
  host: {
5206
5279
  '[class.treetable-column]': 'true',
5207
5280
  '[attr.aria-sort]': 'ariaSort()',
5281
+ '[attr.data-column-id]': 'columnId',
5208
5282
  role: 'columnheader',
5209
5283
  },
5210
5284
  changeDetection: ChangeDetectionStrategy.OnPush,
5211
5285
  standalone: false,
5212
5286
  }]
5213
- }], ctorParameters: () => [], propDecorators: { _columnTitleRef: [{ type: i0.ViewChild, args: ['columnTitle', { ...{ read: TemplateRef }, isSignal: true }] }], clrTtSortBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtSortBy", required: false }] }], clrTtSortOrder: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtSortOrder", required: false }] }], clrTtSortOrderChange: [{ type: i0.Output, args: ["clrTtSortOrderChange"] }], clrTtColumnSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtColumnSize", required: false }] }], clrTtColumnResize: [{ type: i0.Output, args: ["clrTtColumnResize"] }] } });
5287
+ }], ctorParameters: () => [], propDecorators: { _columnTitleRef: [{ type: i0.ViewChild, args: ['columnTitle', { ...{ read: TemplateRef }, isSignal: true }] }], clrTtField: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtField", required: false }] }], clrTtColType: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtColType", required: false }] }], clrTtSortBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtSortBy", required: false }] }], clrTtSortOrder: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtSortOrder", required: false }] }], clrTtSortOrderChange: [{ type: i0.Output, args: ["clrTtSortOrderChange"] }], clrTtColumnSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "clrTtColumnSize", required: false }] }], clrTtColumnResize: [{ type: i0.Output, args: ["clrTtColumnResize"] }] } });
5288
+
5289
+ /**
5290
+ * Generic excel export service based on the optional `zipcelx` dependency.
5291
+ *
5292
+ * It is used as the shared writer for all export buttons of this library
5293
+ * (e.g. datagrid and treetable export).
5294
+ */
5295
+ class ExportExcelService {
5296
+ constructor() {
5297
+ this.init();
5298
+ }
5299
+ async init() {
5300
+ try {
5301
+ this.zipcelx = await import('zipcelx');
5302
+ }
5303
+ catch (error) {
5304
+ console.warn('Optional feature requires `zipcelx`. Please install it: npm install zipcelx', error);
5305
+ }
5306
+ }
5307
+ /**
5308
+ * Writes the given headers and rows into an excel file and triggers the download.
5309
+ *
5310
+ * @param filename Name of the exported file (without extension).
5311
+ * @param headers The header row of the exported sheet.
5312
+ * @param rows The data rows of the exported sheet.
5313
+ */
5314
+ exportToExcel(filename, headers, rows) {
5315
+ const config = {
5316
+ filename,
5317
+ sheet: {
5318
+ data: [headers, ...rows],
5319
+ },
5320
+ };
5321
+ this.zipcelx.default(config);
5322
+ }
5323
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportExcelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5324
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportExcelService, providedIn: 'root' }); }
5325
+ }
5326
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportExcelService, decorators: [{
5327
+ type: Injectable,
5328
+ args: [{ providedIn: 'root' }]
5329
+ }], ctorParameters: () => [] });
5330
+
5331
+ /**
5332
+ * The available export types of the export buttons.
5333
+ */
5334
+ var ExportTypeEnum;
5335
+ (function (ExportTypeEnum) {
5336
+ /** All entries, ignoring active filters. */
5337
+ ExportTypeEnum["ALL"] = "ALL";
5338
+ /** Only the entries that pass the active filters. */
5339
+ ExportTypeEnum["FILTERED"] = "FILTERED";
5340
+ /** Only the currently selected entries. */
5341
+ ExportTypeEnum["SELECTED"] = "SELECTED";
5342
+ })(ExportTypeEnum || (ExportTypeEnum = {}));
5343
+
5344
+ /*
5345
+ * Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.
5346
+ * This software is released under MIT license.
5347
+ * The full license information can be found in LICENSE in the root directory of this project.
5348
+ */
5349
+
5350
+ /*
5351
+ * Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.
5352
+ * This software is released under MIT license.
5353
+ * The full license information can be found in LICENSE in the root directory of this project.
5354
+ */
5355
+
5356
+ /*
5357
+ * Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.
5358
+ * This software is released under MIT license.
5359
+ * The full license information can be found in LICENSE in the root directory of this project.
5360
+ */
5361
+ /**
5362
+ * Export button for the `clr-treetable`.
5363
+ *
5364
+ * The button is placed as a sibling of the treetable and receives the treetable instance and its
5365
+ * `ElementRef`. Column headers are read from the rendered treetable, cell values are resolved via
5366
+ * the `clrTtField` property path of the corresponding `clr-tt-column`.
5367
+ *
5368
+ * `clrTtField` is the opt-in for the export: only columns that declare it are exported. A column
5369
+ * without `clrTtField` is omitted entirely, header and values alike. Hidden columns are excluded as
5370
+ * well. The type of the exported cells is taken from `clrTtColType` (`string` by default).
5371
+ *
5372
+ * The button offers the same export types as the datagrid export button:
5373
+ * - `ALL`: all rows, ignoring active filters. The active sort is applied.
5374
+ * - `FILTERED`: the rows that pass the active filters. Only offered while a filter is active.
5375
+ * - `SELECTED`: the currently selected rows. Only offered while at least one row is selected.
5376
+ * Selection is tracked on the displayed rows, so a selected row that is hidden by a filter is not
5377
+ * part of the export.
5378
+ *
5379
+ * @example
5380
+ * <clr-export-treetable-button [treetable]="tt" [treetableRef]="ttRef" />
5381
+ * <clr-treetable #tt>...</clr-treetable>
5382
+ */
5383
+ class ExportTreetableButtonComponent {
5384
+ constructor() {
5385
+ this._exportService = inject(ExportExcelService);
5386
+ /** The treetable instance to export. */
5387
+ this.treetable = input(...(ngDevMode ? [undefined, { debugName: "treetable" }] : /* istanbul ignore next */ []));
5388
+ /** The `ElementRef` of the same treetable, used to read the rendered column titles. */
5389
+ this.treetableRef = input(...(ngDevMode ? [undefined, { debugName: "treetableRef" }] : /* istanbul ignore next */ []));
5390
+ /** Restricts and/or relabels the offered export types. */
5391
+ this.exportTypesToShow = input(...(ngDevMode ? [undefined, { debugName: "exportTypesToShow" }] : /* istanbul ignore next */ []));
5392
+ /** If true, no file is written and `backendExport` is emitted instead. */
5393
+ this.isBackendExport = input(false, ...(ngDevMode ? [{ debugName: "isBackendExport" }] : /* istanbul ignore next */ []));
5394
+ /** File name of the exported file (without extension). */
5395
+ this.exportTitlePrefix = input('export-treetable', ...(ngDevMode ? [{ debugName: "exportTitlePrefix" }] : /* istanbul ignore next */ []));
5396
+ /** Horizontal alignment of the button. */
5397
+ this.exportButtonPosition = input('right', ...(ngDevMode ? [{ debugName: "exportButtonPosition" }] : /* istanbul ignore next */ []));
5398
+ /** Custom or translated label of the button. */
5399
+ this.exportButtonText = input('EXPORT', ...(ngDevMode ? [{ debugName: "exportButtonText" }] : /* istanbul ignore next */ []));
5400
+ /** Emitted instead of writing a file when `isBackendExport` is true. */
5401
+ this.backendExport = output();
5402
+ this.exportTypes = [
5403
+ { type: ExportTypeEnum.ALL, value: 'All entries' },
5404
+ { type: ExportTypeEnum.FILTERED, value: 'Filtered entries' },
5405
+ { type: ExportTypeEnum.SELECTED, value: 'Selected entries' },
5406
+ ];
5407
+ /**
5408
+ * The export types that are currently possible. `FILTERED` is only possible while at least one
5409
+ * filter is active, `SELECTED` only if at least one row is selected.
5410
+ */
5411
+ this.possibleExportTypes = computed(() => {
5412
+ const treetable = this.treetable();
5413
+ const types = [ExportTypeEnum.ALL];
5414
+ if (treetable?.hasActiveFilters()) {
5415
+ types.push(ExportTypeEnum.FILTERED);
5416
+ }
5417
+ if (treetable?.selectedItems()?.length > 0) {
5418
+ types.push(ExportTypeEnum.SELECTED);
5419
+ }
5420
+ return types;
5421
+ }, ...(ngDevMode ? [{ debugName: "possibleExportTypes" }] : /* istanbul ignore next */ []));
5422
+ /**
5423
+ * The export types shown in the dropdown, restricted by `exportTypesToShow` and by the current
5424
+ * state of the treetable.
5425
+ */
5426
+ this.exportTypesFiltered = computed(() => {
5427
+ let exportTypesToShowVal = this.exportTypesToShow();
5428
+ if (!exportTypesToShowVal || exportTypesToShowVal.length === 0) {
5429
+ exportTypesToShowVal = this.exportTypes;
5430
+ }
5431
+ return exportTypesToShowVal
5432
+ .filter(showType => this.possibleExportTypes().some(type => type === showType.type))
5433
+ .map(showType => ({
5434
+ type: showType.type,
5435
+ value: showType.value ?? this.exportTypes.find(type => type.type === showType.type)?.value,
5436
+ }));
5437
+ }, ...(ngDevMode ? [{ debugName: "exportTypesFiltered" }] : /* istanbul ignore next */ []));
5438
+ }
5439
+ onExport(type) {
5440
+ if (this.isBackendExport()) {
5441
+ this.backendExport.emit(type);
5442
+ }
5443
+ else {
5444
+ this.exportExcel(type);
5445
+ }
5446
+ }
5447
+ exportExcel(type) {
5448
+ const treetable = this.treetable();
5449
+ if (!treetable || !this.treetableRef()) {
5450
+ return;
5451
+ }
5452
+ const columnTitles = this.getColumnTitles();
5453
+ // `clrTtField` is the opt-in for the export: columns without it are omitted entirely.
5454
+ const exportColumns = treetable.visibleColumnStates().filter(column => !!column.field);
5455
+ if (exportColumns.length === 0) {
5456
+ console.warn('No columns declared for export. Add [clrTtField] to a treetable column that should be exported.');
5457
+ return;
5458
+ }
5459
+ const headerRow = exportColumns.map(column => ({
5460
+ value: columnTitles.get(column.id) ?? '',
5461
+ type: 'string',
5462
+ }));
5463
+ const dataRows = this.getRowsToExport(type).map(item => exportColumns.map(column => this.toCell(this.getValueByPath(item, column.field), column.colType)));
5464
+ this._exportService.exportToExcel(this.exportTitlePrefix(), headerRow, dataRows);
5465
+ }
5466
+ getRowsToExport(type) {
5467
+ switch (type) {
5468
+ case ExportTypeEnum.ALL:
5469
+ return this.treetable()?.allItems() ?? [];
5470
+ case ExportTypeEnum.FILTERED:
5471
+ return this.treetable()?.displayedItems() ?? [];
5472
+ case ExportTypeEnum.SELECTED:
5473
+ return this.treetable()?.selectedItems() ?? [];
5474
+ default:
5475
+ return [];
5476
+ }
5477
+ }
5478
+ /**
5479
+ * Reads the rendered column titles from the DOM and maps them by column id. Hidden columns are
5480
+ * skipped, because they are not part of the export either.
5481
+ */
5482
+ getColumnTitles() {
5483
+ const nativeEl = this.treetableRef()?.nativeElement;
5484
+ const columnEls = nativeEl?.querySelectorAll(`clr-tt-column:not(${HIDDEN_COLUMN_CSS_CLASS})`) ?? [];
5485
+ const titles = new Map();
5486
+ columnEls.forEach(columnEl => {
5487
+ const columnId = columnEl.getAttribute('data-column-id');
5488
+ if (!columnId) {
5489
+ return;
5490
+ }
5491
+ titles.set(columnId, columnEl.querySelector('.treetable-column-title')?.textContent?.trim() ?? '');
5492
+ });
5493
+ return titles;
5494
+ }
5495
+ /**
5496
+ * Resolves a (possibly nested) property path like `address.city` on the given item.
5497
+ */
5498
+ getValueByPath(item, path) {
5499
+ if (!path) {
5500
+ return undefined;
5501
+ }
5502
+ return path.split('.').reduce((current, segment) => current?.[segment], item);
5503
+ }
5504
+ /**
5505
+ * Maps a resolved value to an export cell.
5506
+ *
5507
+ * The cell type is taken from the `clrTtColType` of the column (`string` by default). A `number`
5508
+ * column falls back to `string` for values that are not a finite number, because an empty numeric
5509
+ * cell would result in an invalid excel file.
5510
+ */
5511
+ toCell(value, colType = 'string') {
5512
+ const stringValue = value == null ? '' : String(value);
5513
+ const isNumber = colType === 'number' && stringValue.trim() !== '' && Number.isFinite(Number(stringValue));
5514
+ return {
5515
+ value: stringValue,
5516
+ type: isNumber ? 'number' : 'string',
5517
+ };
5518
+ }
5519
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportTreetableButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5520
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ExportTreetableButtonComponent, isStandalone: false, selector: "clr-export-treetable-button", inputs: { treetable: { classPropertyName: "treetable", publicName: "treetable", isSignal: true, isRequired: false, transformFunction: null }, treetableRef: { classPropertyName: "treetableRef", publicName: "treetableRef", isSignal: true, isRequired: false, transformFunction: null }, exportTypesToShow: { classPropertyName: "exportTypesToShow", publicName: "exportTypesToShow", isSignal: true, isRequired: false, transformFunction: null }, isBackendExport: { classPropertyName: "isBackendExport", publicName: "isBackendExport", isSignal: true, isRequired: false, transformFunction: null }, exportTitlePrefix: { classPropertyName: "exportTitlePrefix", publicName: "exportTitlePrefix", isSignal: true, isRequired: false, transformFunction: null }, exportButtonPosition: { classPropertyName: "exportButtonPosition", publicName: "exportButtonPosition", isSignal: true, isRequired: false, transformFunction: null }, exportButtonText: { classPropertyName: "exportButtonText", publicName: "exportButtonText", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { backendExport: "backendExport" }, ngImport: i0, template: "<div\n [class]=\"{\n 'export-btn-right': exportButtonPosition() === 'right',\n 'export-btn-left': exportButtonPosition() === 'left',\n }\"\n>\n <clr-dropdown>\n <button class=\"btn btn-sm btn-outline\" clrDropdownTrigger type=\"button\" data-testid=\"clr-tt-export-trigger\">\n {{ exportButtonText() }}\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n <clr-dropdown-menu *clrIfOpen clrPosition=\"bottom-right\">\n @for (exportType of exportTypesFiltered(); track exportType.type) {\n <button\n (click)=\"onExport(exportType.type)\"\n clrDropdownItem\n [attr.data-testid]=\"'clr-tt-export-' + exportType.type\"\n >\n {{ exportType.value }}\n </button>\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n</div>\n", styles: [".export-btn-right{display:flex;justify-content:flex-end}.export-btn-left{display:flex;justify-content:flex-start}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i2$3.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i2$3.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i2$3.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i2$3.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$4.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5521
+ }
5522
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportTreetableButtonComponent, decorators: [{
5523
+ type: Component,
5524
+ args: [{ selector: 'clr-export-treetable-button', standalone: false, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [class]=\"{\n 'export-btn-right': exportButtonPosition() === 'right',\n 'export-btn-left': exportButtonPosition() === 'left',\n }\"\n>\n <clr-dropdown>\n <button class=\"btn btn-sm btn-outline\" clrDropdownTrigger type=\"button\" data-testid=\"clr-tt-export-trigger\">\n {{ exportButtonText() }}\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n <clr-dropdown-menu *clrIfOpen clrPosition=\"bottom-right\">\n @for (exportType of exportTypesFiltered(); track exportType.type) {\n <button\n (click)=\"onExport(exportType.type)\"\n clrDropdownItem\n [attr.data-testid]=\"'clr-tt-export-' + exportType.type\"\n >\n {{ exportType.value }}\n </button>\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n</div>\n", styles: [".export-btn-right{display:flex;justify-content:flex-end}.export-btn-left{display:flex;justify-content:flex-start}\n"] }]
5525
+ }], propDecorators: { treetable: [{ type: i0.Input, args: [{ isSignal: true, alias: "treetable", required: false }] }], treetableRef: [{ type: i0.Input, args: [{ isSignal: true, alias: "treetableRef", required: false }] }], exportTypesToShow: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportTypesToShow", required: false }] }], isBackendExport: [{ type: i0.Input, args: [{ isSignal: true, alias: "isBackendExport", required: false }] }], exportTitlePrefix: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportTitlePrefix", required: false }] }], exportButtonPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportButtonPosition", required: false }] }], exportButtonText: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportButtonText", required: false }] }], backendExport: [{ type: i0.Output, args: ["backendExport"] }] } });
5214
5526
 
5215
5527
  let id = 0;
5216
5528
  class ClrTreetableColumnManagerMenuComponent {
@@ -5237,8 +5549,8 @@ class ClrTreetableColumnManagerMenuComponent {
5237
5549
  this._columnService.displayAllColumns();
5238
5550
  }
5239
5551
  }
5240
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableColumnManagerMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5241
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrTreetableColumnManagerMenuComponent, isStandalone: false, selector: "clr-tt-column-manager-menu", host: { properties: { "class.column-manager-menu": "true", "class.active": "open()" } }, hostDirectives: [{ directive: i1$2.ClrPopoverHostDirective }], ngImport: i0, template: `
5552
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableColumnManagerMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5553
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrTreetableColumnManagerMenuComponent, isStandalone: false, selector: "clr-tt-column-manager-menu", host: { properties: { "class.column-manager-menu": "true", "class.active": "open()" } }, hostDirectives: [{ directive: i1$2.ClrPopoverHostDirective }], ngImport: i0, template: `
5242
5554
  <button
5243
5555
  role="button"
5244
5556
  type="button"
@@ -5315,9 +5627,9 @@ class ClrTreetableColumnManagerMenuComponent {
5315
5627
  </button>
5316
5628
  </div>
5317
5629
  </div>
5318
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i4.ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: i4.ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "directive", type: i2$3.ClrPopoverOrigin, selector: "[clrPopoverOrigin]" }, { kind: "directive", type: i2$3.ClrPopoverCloseButton, selector: "[clrPopoverCloseButton]", outputs: ["clrPopoverOnCloseChange"] }, { kind: "directive", type: i2$3.ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: i2$3.ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentAvailablePositions", "clrPopoverContentType", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose", "clrPopoverContentOrigin"] }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5630
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i4.ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: i4.ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "directive", type: i2$4.ClrPopoverOrigin, selector: "[clrPopoverOrigin]" }, { kind: "directive", type: i2$4.ClrPopoverCloseButton, selector: "[clrPopoverCloseButton]", outputs: ["clrPopoverOnCloseChange"] }, { kind: "directive", type: i2$4.ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: i2$4.ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentAvailablePositions", "clrPopoverContentType", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose", "clrPopoverContentOrigin"] }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5319
5631
  }
5320
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableColumnManagerMenuComponent, decorators: [{
5632
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableColumnManagerMenuComponent, decorators: [{
5321
5633
  type: Component,
5322
5634
  args: [{
5323
5635
  selector: 'clr-tt-column-manager-menu',
@@ -5419,8 +5731,8 @@ class ClrTreetableFooter {
5419
5731
  this.selectedRows = this._dataService.selectedNodes;
5420
5732
  this.hasSelectedRows = computed(() => this.selectedRows()?.length > 0, ...(ngDevMode ? [{ debugName: "hasSelectedRows" }] : /* istanbul ignore next */ []));
5421
5733
  }
5422
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableFooter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5423
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrTreetableFooter, isStandalone: false, selector: "clr-tt-footer", host: { properties: { "class.treetable-footer": "true" } }, ngImport: i0, template: `
5734
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableFooter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5735
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrTreetableFooter, isStandalone: false, selector: "clr-tt-footer", host: { properties: { "class.treetable-footer": "true" } }, ngImport: i0, template: `
5424
5736
  @if (hasSelectedRows()) {
5425
5737
  <div class="clr-form-control-disabled">
5426
5738
  <clr-checkbox-wrapper class="treetable-footer-select" data-testid="treetable-footer-selected-wrapper">
@@ -5447,7 +5759,7 @@ class ClrTreetableFooter {
5447
5759
  </div>
5448
5760
  `, isInline: true, dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i4.ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: i4.ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "component", type: ClrTreetableColumnManagerMenuComponent, selector: "clr-tt-column-manager-menu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5449
5761
  }
5450
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableFooter, decorators: [{
5762
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableFooter, decorators: [{
5451
5763
  type: Component,
5452
5764
  args: [{
5453
5765
  selector: 'clr-tt-footer',
@@ -5544,10 +5856,10 @@ class ClrTreetableHideableColumn {
5544
5856
  // When the directive is destroyed, mark the column as non-hideable
5545
5857
  this._columnState.changeHideable(this._column.columnId, false, false);
5546
5858
  }
5547
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableHideableColumn, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5548
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.22", type: ClrTreetableHideableColumn, isStandalone: false, selector: "[clrTtHideableColumn]", inputs: { clrTtHideableColumn: { classPropertyName: "clrTtHideableColumn", publicName: "clrTtHideableColumn", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtHiddenChange: "clrTtHiddenChange" }, ngImport: i0 }); }
5859
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableHideableColumn, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5860
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.23", type: ClrTreetableHideableColumn, isStandalone: false, selector: "[clrTtHideableColumn]", inputs: { clrTtHideableColumn: { classPropertyName: "clrTtHideableColumn", publicName: "clrTtHideableColumn", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtHiddenChange: "clrTtHiddenChange" }, ngImport: i0 }); }
5549
5861
  }
5550
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableHideableColumn, decorators: [{
5862
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableHideableColumn, decorators: [{
5551
5863
  type: Directive,
5552
5864
  args: [{
5553
5865
  selector: '[clrTtHideableColumn]',
@@ -5581,8 +5893,8 @@ class ClrTreetableFilter {
5581
5893
  this.registered().unregister();
5582
5894
  }
5583
5895
  }
5584
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableFilter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5585
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.22", type: ClrTreetableFilter, isStandalone: false, selector: "clr-tt-filter", inputs: { clrTtFilter: { classPropertyName: "clrTtFilter", publicName: "clrTtFilter", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
5896
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableFilter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5897
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.23", type: ClrTreetableFilter, isStandalone: false, selector: "clr-tt-filter", inputs: { clrTtFilter: { classPropertyName: "clrTtFilter", publicName: "clrTtFilter", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
5586
5898
  <button
5587
5899
  type="button"
5588
5900
  clrPopoverOrigin
@@ -5616,9 +5928,9 @@ class ClrTreetableFilter {
5616
5928
 
5617
5929
  <ng-content></ng-content>
5618
5930
  </div>
5619
- `, isInline: true, dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i2$3.ClrPopoverOrigin, selector: "[clrPopoverOrigin]" }, { kind: "directive", type: i2$3.ClrPopoverCloseButton, selector: "[clrPopoverCloseButton]", outputs: ["clrPopoverOnCloseChange"] }, { kind: "directive", type: i2$3.ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: i2$3.ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentAvailablePositions", "clrPopoverContentType", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose", "clrPopoverContentOrigin"] }, { kind: "directive", type: i1$2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5931
+ `, isInline: true, dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i2$4.ClrPopoverOrigin, selector: "[clrPopoverOrigin]" }, { kind: "directive", type: i2$4.ClrPopoverCloseButton, selector: "[clrPopoverCloseButton]", outputs: ["clrPopoverOnCloseChange"] }, { kind: "directive", type: i2$4.ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: i2$4.ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentAvailablePositions", "clrPopoverContentType", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose", "clrPopoverContentOrigin"] }, { kind: "directive", type: i1$2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5620
5932
  }
5621
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableFilter, decorators: [{
5933
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableFilter, decorators: [{
5622
5934
  type: Component,
5623
5935
  args: [{
5624
5936
  selector: 'clr-tt-filter',
@@ -5680,10 +5992,10 @@ class ClrTreetableCell {
5680
5992
  this._renderer.setAttribute(host, 'data-testid', DEFAULT_TEST_ID);
5681
5993
  }
5682
5994
  }
5683
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableCell, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5684
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrTreetableCell, isStandalone: false, selector: "clr-tt-cell", host: { attributes: { "role": "gridcell" }, properties: { "class.treetable-cell": "true" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5995
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableCell, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5996
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrTreetableCell, isStandalone: false, selector: "clr-tt-cell", host: { attributes: { "role": "gridcell" }, properties: { "class.treetable-cell": "true" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5685
5997
  }
5686
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableCell, decorators: [{
5998
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableCell, decorators: [{
5687
5999
  type: Component,
5688
6000
  args: [{
5689
6001
  selector: 'clr-tt-cell',
@@ -5703,15 +6015,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
5703
6015
  * The full license information can be found in LICENSE in the root directory of this project.
5704
6016
  */
5705
6017
  class ClrTreetablePlaceholder {
5706
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetablePlaceholder, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5707
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrTreetablePlaceholder, isStandalone: false, selector: "clr-tt-placeholder", host: { properties: { "class.treetable-placeholder-container": "true" } }, ngImport: i0, template: `
6018
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetablePlaceholder, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6019
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrTreetablePlaceholder, isStandalone: false, selector: "clr-tt-placeholder", host: { properties: { "class.treetable-placeholder-container": "true" } }, ngImport: i0, template: `
5708
6020
  <div class="treetable-placeholder treetable-empty" data-testid="treetable-placeholder">
5709
6021
  <div class="treetable-placeholder-image" data-testid="treetable-placeholder-image"></div>
5710
6022
  <ng-content></ng-content>
5711
6023
  </div>
5712
6024
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5713
6025
  }
5714
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetablePlaceholder, decorators: [{
6026
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetablePlaceholder, decorators: [{
5715
6027
  type: Component,
5716
6028
  args: [{
5717
6029
  selector: 'clr-tt-placeholder',
@@ -5773,10 +6085,10 @@ class TreetableHeaderRenderer {
5773
6085
  this.renderer.setStyle(el, 'width', `${width}px`);
5774
6086
  this.renderer.setStyle(el, 'flex', '0 0 auto');
5775
6087
  }
5776
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableHeaderRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5777
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: TreetableHeaderRenderer, isStandalone: false, selector: "clr-tt-column", ngImport: i0 }); }
6088
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableHeaderRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6089
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: TreetableHeaderRenderer, isStandalone: false, selector: "clr-tt-column", ngImport: i0 }); }
5778
6090
  }
5779
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableHeaderRenderer, decorators: [{
6091
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableHeaderRenderer, decorators: [{
5780
6092
  type: Directive,
5781
6093
  args: [{
5782
6094
  selector: 'clr-tt-column',
@@ -5817,10 +6129,10 @@ class TreetableCellRenderer {
5817
6129
  this.renderer.setStyle(el, 'width', `${width}px`);
5818
6130
  this.renderer.setStyle(el, 'flex', '0 0 auto');
5819
6131
  }
5820
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableCellRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5821
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: TreetableCellRenderer, isStandalone: false, selector: "clr-tt-cell", ngImport: i0 }); }
6132
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableCellRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6133
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: TreetableCellRenderer, isStandalone: false, selector: "clr-tt-cell", ngImport: i0 }); }
5822
6134
  }
5823
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableCellRenderer, decorators: [{
6135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableCellRenderer, decorators: [{
5824
6136
  type: Directive,
5825
6137
  args: [{
5826
6138
  selector: 'clr-tt-cell',
@@ -5837,10 +6149,10 @@ class TreetableRowRenderer {
5837
6149
  constructor() {
5838
6150
  this.cells = contentChildren(TreetableCellRenderer, ...(ngDevMode ? [{ debugName: "cells" }] : /* istanbul ignore next */ []));
5839
6151
  }
5840
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableRowRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5841
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.22", type: TreetableRowRenderer, isStandalone: false, selector: "clr-tt-row", queries: [{ propertyName: "cells", predicate: TreetableCellRenderer, isSignal: true }], ngImport: i0 }); }
6152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableRowRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6153
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.23", type: TreetableRowRenderer, isStandalone: false, selector: "clr-tt-row", queries: [{ propertyName: "cells", predicate: TreetableCellRenderer, isSignal: true }], ngImport: i0 }); }
5842
6154
  }
5843
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableRowRenderer, decorators: [{
6155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableRowRenderer, decorators: [{
5844
6156
  type: Directive,
5845
6157
  args: [{
5846
6158
  selector: 'clr-tt-row',
@@ -6024,10 +6336,10 @@ class TreetableMainRenderer {
6024
6336
  },
6025
6337
  };
6026
6338
  }
6027
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableMainRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6028
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.22", type: TreetableMainRenderer, isStandalone: false, selector: "clr-treetable", queries: [{ propertyName: "headers", predicate: TreetableHeaderRenderer, isSignal: true }, { propertyName: "rows", predicate: TreetableRowRenderer, descendants: true, isSignal: true }, { propertyName: "columns", predicate: ClrTreetableColumn, isSignal: true }], ngImport: i0 }); }
6339
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableMainRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6340
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.23", type: TreetableMainRenderer, isStandalone: false, selector: "clr-treetable", queries: [{ propertyName: "headers", predicate: TreetableHeaderRenderer, isSignal: true }, { propertyName: "rows", predicate: TreetableRowRenderer, descendants: true, isSignal: true }, { propertyName: "columns", predicate: ClrTreetableColumn, isSignal: true }], ngImport: i0 }); }
6029
6341
  }
6030
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableMainRenderer, decorators: [{
6342
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableMainRenderer, decorators: [{
6031
6343
  type: Directive,
6032
6344
  args: [{
6033
6345
  selector: 'clr-treetable',
@@ -6065,10 +6377,10 @@ class TreetableItemsDirective {
6065
6377
  ctx) {
6066
6378
  return true;
6067
6379
  }
6068
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableItemsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6069
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.22", type: TreetableItemsDirective, isStandalone: false, selector: "[clrTtItems][clrTtItemsOf]", inputs: { clrTtItemsOf: { classPropertyName: "clrTtItemsOf", publicName: "clrTtItemsOf", isSignal: true, isRequired: true, transformFunction: null }, clrTtItemsGetChildren: { classPropertyName: "clrTtItemsGetChildren", publicName: "clrTtItemsGetChildren", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }
6380
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableItemsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6381
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.23", type: TreetableItemsDirective, isStandalone: false, selector: "[clrTtItems][clrTtItemsOf]", inputs: { clrTtItemsOf: { classPropertyName: "clrTtItemsOf", publicName: "clrTtItemsOf", isSignal: true, isRequired: true, transformFunction: null }, clrTtItemsGetChildren: { classPropertyName: "clrTtItemsGetChildren", publicName: "clrTtItemsGetChildren", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }
6070
6382
  }
6071
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: TreetableItemsDirective, decorators: [{
6383
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: TreetableItemsDirective, decorators: [{
6072
6384
  type: Directive,
6073
6385
  args: [{
6074
6386
  selector: '[clrTtItems][clrTtItemsOf]',
@@ -6130,8 +6442,8 @@ class ClrTreetableStringFilter {
6130
6442
  inputChanged(value) {
6131
6443
  this._textChange$.next(value);
6132
6444
  }
6133
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableStringFilter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6134
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.22", type: ClrTreetableStringFilter, isStandalone: false, selector: "clr-tt-string-filter", inputs: { clrTtStringFilter: { classPropertyName: "clrTtStringFilter", publicName: "clrTtStringFilter", isSignal: true, isRequired: true, transformFunction: null }, clrTtFilterPlaceholder: { classPropertyName: "clrTtFilterPlaceholder", publicName: "clrTtFilterPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, clrTtFilterLabel: { classPropertyName: "clrTtFilterLabel", publicName: "clrTtFilterLabel", isSignal: true, isRequired: false, transformFunction: null }, clrTtFilterValue: { classPropertyName: "clrTtFilterValue", publicName: "clrTtFilterValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtFilterValue: "clrTtFilterValueChange" }, viewQueries: [{ propertyName: "_input", first: true, predicate: ["input"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
6445
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableStringFilter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6446
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.23", type: ClrTreetableStringFilter, isStandalone: false, selector: "clr-tt-string-filter", inputs: { clrTtStringFilter: { classPropertyName: "clrTtStringFilter", publicName: "clrTtStringFilter", isSignal: true, isRequired: true, transformFunction: null }, clrTtFilterPlaceholder: { classPropertyName: "clrTtFilterPlaceholder", publicName: "clrTtFilterPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, clrTtFilterLabel: { classPropertyName: "clrTtFilterLabel", publicName: "clrTtFilterLabel", isSignal: true, isRequired: false, transformFunction: null }, clrTtFilterValue: { classPropertyName: "clrTtFilterValue", publicName: "clrTtFilterValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clrTtFilterValue: "clrTtFilterValueChange" }, viewQueries: [{ propertyName: "_input", first: true, predicate: ["input"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
6135
6447
  <clr-tt-filter [clrTtFilter]="this">
6136
6448
  <button
6137
6449
  class="btn btn-sm btn-icon btn-link btn-trash"
@@ -6156,9 +6468,9 @@ class ClrTreetableStringFilter {
6156
6468
  />
6157
6469
  </clr-input-container>
6158
6470
  </clr-tt-filter>
6159
- `, isInline: true, styles: [".btn-trash{position:absolute;top:15px;right:40px;padding:0}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i3$2.ClrInput, selector: "[clrInput]" }, { kind: "component", type: i3$2.ClrInputContainer, selector: "clr-input-container" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ClrTreetableFilter, selector: "clr-tt-filter", inputs: ["clrTtFilter"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6471
+ `, isInline: true, styles: [".btn-trash{position:absolute;top:15px;right:40px;padding:0}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i3$1.ClrInput, selector: "[clrInput]" }, { kind: "component", type: i3$1.ClrInputContainer, selector: "clr-input-container" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ClrTreetableFilter, selector: "clr-tt-filter", inputs: ["clrTtFilter"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6160
6472
  }
6161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableStringFilter, decorators: [{
6473
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableStringFilter, decorators: [{
6162
6474
  type: Component,
6163
6475
  args: [{ selector: 'clr-tt-string-filter', template: `
6164
6476
  <clr-tt-filter [clrTtFilter]="this">
@@ -6209,13 +6521,14 @@ const CLR_TREETABLE_DIRECTIVES = [
6209
6521
  TreetableItemsDirective,
6210
6522
  ClrTreetableFilter,
6211
6523
  ClrTreetableStringFilter,
6524
+ ExportTreetableButtonComponent,
6212
6525
  ];
6213
6526
  class ClrTreetableModule {
6214
6527
  constructor() {
6215
6528
  ClarityIcons.addIcons(angleIcon, arrowIcon, ellipsisVerticalIcon, filterGridCircleIcon, filterGridIcon);
6216
6529
  }
6217
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6218
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableModule, declarations: [ClrTreetable,
6530
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6531
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableModule, declarations: [ClrTreetable,
6219
6532
  ClrTreetableRow,
6220
6533
  ClrTreetableCell,
6221
6534
  ClrTreetableColumn,
@@ -6229,7 +6542,8 @@ class ClrTreetableModule {
6229
6542
  TreetableCellRenderer,
6230
6543
  TreetableItemsDirective,
6231
6544
  ClrTreetableFilter,
6232
- ClrTreetableStringFilter, ClrTreetableRecursiveRows,
6545
+ ClrTreetableStringFilter,
6546
+ ExportTreetableButtonComponent, ClrTreetableRecursiveRows,
6233
6547
  ClrTreetableRowCheckbox,
6234
6548
  ClrTreetableColumnManagerMenuComponent,
6235
6549
  ClrTreetableColumnSeparator], imports: [CommonModule, ClarityModule, ReactiveFormsModule, FormsModule, CdkTrapFocusModule], exports: [ClrTreetable,
@@ -6246,10 +6560,11 @@ class ClrTreetableModule {
6246
6560
  TreetableCellRenderer,
6247
6561
  TreetableItemsDirective,
6248
6562
  ClrTreetableFilter,
6249
- ClrTreetableStringFilter] }); }
6250
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableModule, imports: [CommonModule, ClarityModule, ReactiveFormsModule, FormsModule, CdkTrapFocusModule] }); }
6563
+ ClrTreetableStringFilter,
6564
+ ExportTreetableButtonComponent] }); }
6565
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableModule, imports: [CommonModule, ClarityModule, ReactiveFormsModule, FormsModule, CdkTrapFocusModule] }); }
6251
6566
  }
6252
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTreetableModule, decorators: [{
6567
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTreetableModule, decorators: [{
6253
6568
  type: NgModule,
6254
6569
  args: [{
6255
6570
  imports: [CommonModule, ClarityModule, ReactiveFormsModule, FormsModule, CdkTrapFocusModule],
@@ -6359,8 +6674,8 @@ class ClrViewEditSection {
6359
6674
  this.toggleCollapsed(true);
6360
6675
  }
6361
6676
  }
6362
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrViewEditSection, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
6363
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrViewEditSection, isStandalone: false, selector: "clr-view-edit-section", inputs: { _title: ["clrTitle", "_title"], _saveText: ["clrSaveText", "_saveText"], _preventSave: ["clrPreventModeChangeOnSave", "_preventSave"], _cancelText: ["clrCancelText", "_cancelText"], _editable: ["clrEditable", "_editable"], _editIcon: ["clrEditIcon", "_editIcon"], _isCollapsible: ["clrIsCollapsible", "_isCollapsible"], _isCollapsed: ["clrIsCollapsed", "_isCollapsed"], _titleTextStyle: ["clrTitleTextStyle", "_titleTextStyle"], _titleTextFontWeight: ["clrTitleTextFontWeight", "_titleTextFontWeight"], _showBadge: ["clrShowBadge", "_showBadge"], _badgeContent: ["clrBadgeContent", "_badgeContent"], _badgeClass: ["clrBadgeClass", "_badgeClass"], viewRef: ["clrViewRef", "viewRef"], editRef: ["clrEditRef", "editRef"], editMode: ["clrEditMode", "editMode"] }, outputs: { _isCollapsedChange: "clrIsCollapsedChange", _editModeChanged: "clrEditModeChange", _submitted: "clrSectionSubmitted", _cancelled: "clrSectionEditCancelled" }, ngImport: i0, template: "<div class=\"card view-edit-section\" (keyup.escape)=\"onCancel()\" data-testid=\"view-edit-section\">\n <div class=\"card-block\">\n <div class=\"card-title\">\n <ng-template #titleContainer>\n <span\n class=\"ves-title-text\"\n [attr.cds-text]=\"_titleTextStyle + ' ' + _titleTextFontWeight\"\n data-testid=\"view-edit-section-title\"\n >\n {{ _title }} @if (_showBadge) { @if (_badgeContent) {\n <span class=\"ves-badge\" [ngClass]=\"_badgeClass\" data-testid=\"view-edit-section-badge\">\n {{ _badgeContent }}\n </span>\n }\n <ng-content select=\"[badge]\"></ng-content>\n }\n </span>\n </ng-template>\n @if (_isCollapsible && !editMode) {\n <span class=\"ces-title-row\">\n <span\n class=\"ces-title-trigger\"\n data-testid=\"view-edit-section-title-trigger\"\n (click)=\"onCollapseExpand()\"\n (keydown.enter)=\"onCollapseExpand()\"\n (keydown.space)=\"onCollapseExpand(); $event.preventDefault()\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-expanded]=\"!_isCollapsed\"\n >\n <ng-template [ngTemplateOutlet]=\"titleContainer\"></ng-template>\n </span>\n <button\n type=\"button\"\n (click)=\"onCollapseExpand()\"\n class=\"btn btn-icon btn-link ces-caret-btn\"\n data-testid=\"view-edit-section-caret-button\"\n >\n <cds-icon shape=\"angle\" size=\"20\" class=\"ces-caret-icon\" [@rotateIcon]=\"_isCollapsed\"></cds-icon>\n </button>\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"titleContainer\"></ng-template>\n }\n <div class=\"ves-actions\">\n @if (_editable && !editMode && actionBlock.children.length == 0) {\n <button\n type=\"button\"\n (click)=\"onEdit()\"\n class=\"btn btn-icon btn-link ves-action\"\n data-testid=\"view-edit-section-edit-button\"\n >\n <cds-icon class=\"ves-edit-icon\" [shape]=\"_editIcon\" size=\"20\"></cds-icon>\n </button>\n }\n <div #actionBlock>\n <ng-content select=\"[action-block]\"></ng-content>\n </div>\n </div>\n </div>\n @if (!(_isCollapsed && _isCollapsible)) {\n <div class=\"card-text\" [@collapseExpandAnimation]=\"initialized\" data-testid=\"view-edit-section-content\">\n @if (!editMode) {\n <ng-template [ngTemplateOutlet]=\"viewRef\"></ng-template>\n } @if (editMode) {\n <ng-template [ngTemplateOutlet]=\"editRef\"></ng-template>\n } @if (editMode) {\n <form clrForm (ngSubmit)=\"onSubmit()\" class=\"button-bar\" data-testid=\"view-edit-section-form\">\n <button class=\"btn btn-primary ves-save\" type=\"submit\" data-testid=\"view-edit-section-save-button\">\n {{ _saveText }}\n </button>\n <button class=\"btn ves-cancel\" (click)=\"onCancel()\" type=\"button\" data-testid=\"view-edit-section-cancel-button\">\n {{ _cancelText }}\n </button>\n </form>\n }\n </div>\n }\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrForm, selector: "[clrForm]", inputs: ["clrLabelSize"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]):not([formArray]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], animations: [
6677
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrViewEditSection, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
6678
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrViewEditSection, isStandalone: false, selector: "clr-view-edit-section", inputs: { _title: ["clrTitle", "_title"], _saveText: ["clrSaveText", "_saveText"], _preventSave: ["clrPreventModeChangeOnSave", "_preventSave"], _cancelText: ["clrCancelText", "_cancelText"], _editable: ["clrEditable", "_editable"], _editIcon: ["clrEditIcon", "_editIcon"], _isCollapsible: ["clrIsCollapsible", "_isCollapsible"], _isCollapsed: ["clrIsCollapsed", "_isCollapsed"], _titleTextStyle: ["clrTitleTextStyle", "_titleTextStyle"], _titleTextFontWeight: ["clrTitleTextFontWeight", "_titleTextFontWeight"], _showBadge: ["clrShowBadge", "_showBadge"], _badgeContent: ["clrBadgeContent", "_badgeContent"], _badgeClass: ["clrBadgeClass", "_badgeClass"], viewRef: ["clrViewRef", "viewRef"], editRef: ["clrEditRef", "editRef"], editMode: ["clrEditMode", "editMode"] }, outputs: { _isCollapsedChange: "clrIsCollapsedChange", _editModeChanged: "clrEditModeChange", _submitted: "clrSectionSubmitted", _cancelled: "clrSectionEditCancelled" }, ngImport: i0, template: "<div class=\"card view-edit-section\" (keyup.escape)=\"onCancel()\" data-testid=\"view-edit-section\">\n <div class=\"card-block\">\n <div class=\"card-title\">\n <ng-template #titleContainer>\n <span\n class=\"ves-title-text\"\n [attr.cds-text]=\"_titleTextStyle + ' ' + _titleTextFontWeight\"\n data-testid=\"view-edit-section-title\"\n >\n {{ _title }} @if (_showBadge) { @if (_badgeContent) {\n <span class=\"ves-badge\" [ngClass]=\"_badgeClass\" data-testid=\"view-edit-section-badge\">\n {{ _badgeContent }}\n </span>\n }\n <ng-content select=\"[badge]\"></ng-content>\n }\n </span>\n </ng-template>\n @if (_isCollapsible && !editMode) {\n <span class=\"ces-title-row\">\n <span\n class=\"ces-title-trigger\"\n data-testid=\"view-edit-section-title-trigger\"\n (click)=\"onCollapseExpand()\"\n (keydown.enter)=\"onCollapseExpand()\"\n (keydown.space)=\"onCollapseExpand(); $event.preventDefault()\"\n tabindex=\"0\"\n role=\"button\"\n [attr.aria-expanded]=\"!_isCollapsed\"\n >\n <ng-template [ngTemplateOutlet]=\"titleContainer\"></ng-template>\n </span>\n <button\n type=\"button\"\n (click)=\"onCollapseExpand()\"\n class=\"btn btn-icon btn-link ces-caret-btn\"\n data-testid=\"view-edit-section-caret-button\"\n >\n <cds-icon shape=\"angle\" size=\"20\" class=\"ces-caret-icon\" [@rotateIcon]=\"_isCollapsed\"></cds-icon>\n </button>\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"titleContainer\"></ng-template>\n }\n <div class=\"ves-actions\">\n @if (_editable && !editMode && actionBlock.children.length == 0) {\n <button\n type=\"button\"\n (click)=\"onEdit()\"\n class=\"btn btn-icon btn-link ves-action\"\n data-testid=\"view-edit-section-edit-button\"\n >\n <cds-icon class=\"ves-edit-icon\" [shape]=\"_editIcon\" size=\"20\"></cds-icon>\n </button>\n }\n <div #actionBlock>\n <ng-content select=\"[action-block]\"></ng-content>\n </div>\n </div>\n </div>\n @if (!(_isCollapsed && _isCollapsible)) {\n <div class=\"card-text\" [@collapseExpandAnimation]=\"initialized\" data-testid=\"view-edit-section-content\">\n @if (!editMode) {\n <ng-template [ngTemplateOutlet]=\"viewRef\"></ng-template>\n } @if (editMode) {\n <ng-template [ngTemplateOutlet]=\"editRef\"></ng-template>\n } @if (editMode) {\n <form clrForm (ngSubmit)=\"onSubmit()\" class=\"button-bar\" data-testid=\"view-edit-section-form\">\n <button class=\"btn btn-primary ves-save\" type=\"submit\" data-testid=\"view-edit-section-save-button\">\n {{ _saveText }}\n </button>\n <button class=\"btn ves-cancel\" (click)=\"onCancel()\" type=\"button\" data-testid=\"view-edit-section-cancel-button\">\n {{ _cancelText }}\n </button>\n </form>\n }\n </div>\n }\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrForm, selector: "[clrForm]", inputs: ["clrLabelSize"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]):not([formArray]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], animations: [
6364
6679
  trigger('collapseExpandAnimation', [
6365
6680
  transition(':enter', [
6366
6681
  style({ opacity: 0, height: 0, overflow: 'hidden' }),
@@ -6379,7 +6694,7 @@ class ClrViewEditSection {
6379
6694
  ]),
6380
6695
  ] }); }
6381
6696
  }
6382
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrViewEditSection, decorators: [{
6697
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrViewEditSection, decorators: [{
6383
6698
  type: Component,
6384
6699
  args: [{ selector: 'clr-view-edit-section', animations: [
6385
6700
  trigger('collapseExpandAnimation', [
@@ -6467,11 +6782,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
6467
6782
  * The full license information can be found in LICENSE in the root directory of this project.
6468
6783
  */
6469
6784
  class ClrViewEditSectionModule {
6470
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrViewEditSectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6471
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrViewEditSectionModule, declarations: [ClrViewEditSection], imports: [CommonModule, ClarityModule, FormsModule, ClrFormsModule], exports: [ClrViewEditSection] }); }
6472
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrViewEditSectionModule, imports: [CommonModule, ClarityModule, FormsModule, ClrFormsModule] }); }
6785
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrViewEditSectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6786
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrViewEditSectionModule, declarations: [ClrViewEditSection], imports: [CommonModule, ClarityModule, FormsModule, ClrFormsModule], exports: [ClrViewEditSection] }); }
6787
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrViewEditSectionModule, imports: [CommonModule, ClarityModule, FormsModule, ClrFormsModule] }); }
6473
6788
  }
6474
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrViewEditSectionModule, decorators: [{
6789
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrViewEditSectionModule, decorators: [{
6475
6790
  type: NgModule,
6476
6791
  args: [{
6477
6792
  imports: [CommonModule, ClarityModule, FormsModule, ClrFormsModule],
@@ -6590,10 +6905,10 @@ class ClrHistoryService {
6590
6905
  domain.shift();
6591
6906
  return domain.join('.');
6592
6907
  }
6593
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryService, deps: [{ token: HISTORY_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable }); }
6594
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryService }); }
6908
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryService, deps: [{ token: HISTORY_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable }); }
6909
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryService }); }
6595
6910
  }
6596
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryService, decorators: [{
6911
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryService, decorators: [{
6597
6912
  type: Injectable
6598
6913
  }], ctorParameters: () => [{ type: undefined, decorators: [{
6599
6914
  type: Inject,
@@ -6653,10 +6968,10 @@ class ClrHistory {
6653
6968
  togglePinHistory() {
6654
6969
  this.historyService.setHistoryPinned(this.username, !this.pinActivated);
6655
6970
  }
6656
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistory, deps: [{ token: ClrHistoryService }, { token: HISTORY_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
6657
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrHistory, isStandalone: false, selector: "clr-history", inputs: { username: ["clrUsername", "username"], tenantId: ["clrTenantId", "tenantId"], context: ["clrContext", "context"], pinActive: ["clrPinActive", "pinActive"], dropdownHeader: ["clrDropdownHeader", "dropdownHeader"], dropdownPin: ["clrDropdownPin", "dropdownPin"], dropdownUnpin: ["clrDropdownUnpin", "dropdownUnpin"], domain: ["clrDomain", "domain"], position: ["clrPosition", "position"] }, host: { classAttribute: "clr-history" }, ngImport: i0, template: "<clr-dropdown>\n <button\n type=\"button\"\n class=\"btn btn-icon btn-outline-primary history-button\"\n clrDropdownTrigger\n data-testid=\"history-trigger\"\n >\n <cds-icon shape=\"history\" size=\"16\"></cds-icon>\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n <clr-dropdown-menu [clrPosition]=\"position\" *clrIfOpen data-testid=\"history-menu\">\n <label class=\"dropdown-header\" aria-hidden=\"true\" data-testid=\"history-header\">{{ dropdownHeader }}</label>\n @for (history of historyElements$ | async; track history) {\n <button\n type=\"button\"\n clrDropdownItem\n (click)=\"select(history)\"\n [attr.data-testid]=\"'history-option-' + (history.title)\"\n >\n {{ history.title }}\n </button>\n } @if (pinActive) {\n <div class=\"dropdown-divider\" role=\"separator\" aria-hidden=\"true\"></div>\n }\n <button clrDropdownItem (click)=\"togglePinHistory()\" data-testid=\"history-pin-toggle\">\n @if (pinActive && !pinActivated) {\n <span data-testid=\"history-pin-label\">{{ dropdownPin }}</span>\n } @if (pinActive && pinActivated) {\n <span data-testid=\"history-unpin-label\">{{ dropdownUnpin }}</span>\n }\n </button>\n </clr-dropdown-menu>\n</clr-dropdown>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "component", type: i3$1.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i3$1.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i3$1.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i3$1.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$3.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "directive", type: ClrDropdownOverflowDirective, selector: "clr-dropdown-menu", inputs: ["clrDropdownMenuMaxHeight", "clrDropdownMenuItemMinHeight", "clrMarginBottom"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
6971
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistory, deps: [{ token: ClrHistoryService }, { token: HISTORY_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
6972
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrHistory, isStandalone: false, selector: "clr-history", inputs: { username: ["clrUsername", "username"], tenantId: ["clrTenantId", "tenantId"], context: ["clrContext", "context"], pinActive: ["clrPinActive", "pinActive"], dropdownHeader: ["clrDropdownHeader", "dropdownHeader"], dropdownPin: ["clrDropdownPin", "dropdownPin"], dropdownUnpin: ["clrDropdownUnpin", "dropdownUnpin"], domain: ["clrDomain", "domain"], position: ["clrPosition", "position"] }, host: { classAttribute: "clr-history" }, ngImport: i0, template: "<clr-dropdown>\n <button\n type=\"button\"\n class=\"btn btn-icon btn-outline-primary history-button\"\n clrDropdownTrigger\n data-testid=\"history-trigger\"\n >\n <cds-icon shape=\"history\" size=\"16\"></cds-icon>\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n <clr-dropdown-menu [clrPosition]=\"position\" *clrIfOpen data-testid=\"history-menu\">\n <label class=\"dropdown-header\" aria-hidden=\"true\" data-testid=\"history-header\">{{ dropdownHeader }}</label>\n @for (history of historyElements$ | async; track history) {\n <button\n type=\"button\"\n clrDropdownItem\n (click)=\"select(history)\"\n [attr.data-testid]=\"'history-option-' + (history.title)\"\n >\n {{ history.title }}\n </button>\n } @if (pinActive) {\n <div class=\"dropdown-divider\" role=\"separator\" aria-hidden=\"true\"></div>\n }\n <button clrDropdownItem (click)=\"togglePinHistory()\" data-testid=\"history-pin-toggle\">\n @if (pinActive && !pinActivated) {\n <span data-testid=\"history-pin-label\">{{ dropdownPin }}</span>\n } @if (pinActive && pinActivated) {\n <span data-testid=\"history-unpin-label\">{{ dropdownUnpin }}</span>\n }\n </button>\n </clr-dropdown-menu>\n</clr-dropdown>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "component", type: i2$3.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i2$3.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i2$3.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i2$3.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$4.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "directive", type: ClrDropdownOverflowDirective, selector: "clr-dropdown-menu", inputs: ["clrDropdownMenuMaxHeight", "clrDropdownMenuItemMinHeight", "clrMarginBottom"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
6658
6973
  }
6659
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistory, decorators: [{
6974
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistory, decorators: [{
6660
6975
  type: Component,
6661
6976
  args: [{ selector: 'clr-history', host: { class: 'clr-history' }, standalone: false, template: "<clr-dropdown>\n <button\n type=\"button\"\n class=\"btn btn-icon btn-outline-primary history-button\"\n clrDropdownTrigger\n data-testid=\"history-trigger\"\n >\n <cds-icon shape=\"history\" size=\"16\"></cds-icon>\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n <clr-dropdown-menu [clrPosition]=\"position\" *clrIfOpen data-testid=\"history-menu\">\n <label class=\"dropdown-header\" aria-hidden=\"true\" data-testid=\"history-header\">{{ dropdownHeader }}</label>\n @for (history of historyElements$ | async; track history) {\n <button\n type=\"button\"\n clrDropdownItem\n (click)=\"select(history)\"\n [attr.data-testid]=\"'history-option-' + (history.title)\"\n >\n {{ history.title }}\n </button>\n } @if (pinActive) {\n <div class=\"dropdown-divider\" role=\"separator\" aria-hidden=\"true\"></div>\n }\n <button clrDropdownItem (click)=\"togglePinHistory()\" data-testid=\"history-pin-toggle\">\n @if (pinActive && !pinActivated) {\n <span data-testid=\"history-pin-label\">{{ dropdownPin }}</span>\n } @if (pinActive && pinActivated) {\n <span data-testid=\"history-unpin-label\">{{ dropdownUnpin }}</span>\n }\n </button>\n </clr-dropdown-menu>\n</clr-dropdown>\n" }]
6662
6977
  }], ctorParameters: () => [{ type: ClrHistoryService }, { type: HistoryProvider, decorators: [{
@@ -6728,10 +7043,10 @@ class ClrHistoryPinned {
6728
7043
  ngOnDestroy() {
6729
7044
  this.settingsSubscription.unsubscribe();
6730
7045
  }
6731
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryPinned, deps: [{ token: ClrHistoryService }, { token: HISTORY_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
6732
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrHistoryPinned, isStandalone: false, selector: "clr-history-pinned", inputs: { username: ["clrUsername", "username"], tenantId: ["clrTenantId", "tenantId"], context: ["clrContext", "context"], domain: ["clrDomain", "domain"] }, ngImport: i0, template: "@if ((active$ | async)) {\n<nav aria-label=\"history\" class=\"history-container\" data-testid=\"history-pinned-nav\">\n <ol class=\"history\">\n <!-- dummy entry with no visible content to reserve space for the history header -->\n <li>&nbsp;</li>\n @for (historyItem of historyElements$ | async; track historyItem) { @if (historyItem.url) {\n <li class=\"history-item\" [attr.data-testid]=\"'history-pinned-entry-' + (historyItem.title)\">\n <a [href]=\"historyItem.url\" [attr.data-testid]=\"'history-pinned-link-' + (historyItem.title)\"\n >{{ historyItem.title }}</a\n >\n </li>\n } }\n </ol>\n</nav>\n}\n", dependencies: [{ kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
7046
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryPinned, deps: [{ token: ClrHistoryService }, { token: HISTORY_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
7047
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrHistoryPinned, isStandalone: false, selector: "clr-history-pinned", inputs: { username: ["clrUsername", "username"], tenantId: ["clrTenantId", "tenantId"], context: ["clrContext", "context"], domain: ["clrDomain", "domain"] }, ngImport: i0, template: "@if ((active$ | async)) {\n<nav aria-label=\"history\" class=\"history-container\" data-testid=\"history-pinned-nav\">\n <ol class=\"history\">\n <!-- dummy entry with no visible content to reserve space for the history header -->\n <li>&nbsp;</li>\n @for (historyItem of historyElements$ | async; track historyItem) { @if (historyItem.url) {\n <li class=\"history-item\" [attr.data-testid]=\"'history-pinned-entry-' + (historyItem.title)\">\n <a [href]=\"historyItem.url\" [attr.data-testid]=\"'history-pinned-link-' + (historyItem.title)\"\n >{{ historyItem.title }}</a\n >\n </li>\n } }\n </ol>\n</nav>\n}\n", dependencies: [{ kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
6733
7048
  }
6734
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryPinned, decorators: [{
7049
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryPinned, decorators: [{
6735
7050
  type: Component,
6736
7051
  args: [{ selector: 'clr-history-pinned', standalone: false, template: "@if ((active$ | async)) {\n<nav aria-label=\"history\" class=\"history-container\" data-testid=\"history-pinned-nav\">\n <ol class=\"history\">\n <!-- dummy entry with no visible content to reserve space for the history header -->\n <li>&nbsp;</li>\n @for (historyItem of historyElements$ | async; track historyItem) { @if (historyItem.url) {\n <li class=\"history-item\" [attr.data-testid]=\"'history-pinned-entry-' + (historyItem.title)\">\n <a [href]=\"historyItem.url\" [attr.data-testid]=\"'history-pinned-link-' + (historyItem.title)\"\n >{{ historyItem.title }}</a\n >\n </li>\n } }\n </ol>\n</nav>\n}\n" }]
6737
7052
  }], ctorParameters: () => [{ type: ClrHistoryService }, { type: HistoryProvider, decorators: [{
@@ -6789,10 +7104,10 @@ class ClrHistoryHttpImplService {
6789
7104
  }
6790
7105
  return url;
6791
7106
  }
6792
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryHttpImplService, deps: [{ token: HISTORY_NOTIFICATION_URL_PROVIDER }, { token: i1$3.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
6793
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryHttpImplService }); }
7107
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryHttpImplService, deps: [{ token: HISTORY_NOTIFICATION_URL_PROVIDER }, { token: i1$3.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
7108
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryHttpImplService }); }
6794
7109
  }
6795
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryHttpImplService, decorators: [{
7110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryHttpImplService, decorators: [{
6796
7111
  type: Injectable
6797
7112
  }], ctorParameters: () => [{ type: undefined, decorators: [{
6798
7113
  type: Inject,
@@ -6805,16 +7120,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
6805
7120
  * The full license information can be found in LICENSE in the root directory of this project.
6806
7121
  */
6807
7122
  class ClrHistoryModule {
6808
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6809
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryModule, declarations: [ClrHistory, ClrHistoryPinned], imports: [CommonModule, ClarityModule, RouterModule, ClrDropdownOverflowModule], exports: [ClrHistory, ClrHistoryPinned] }); }
6810
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryModule, providers: [
7123
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7124
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryModule, declarations: [ClrHistory, ClrHistoryPinned], imports: [CommonModule, ClarityModule, RouterModule, ClrDropdownOverflowModule], exports: [ClrHistory, ClrHistoryPinned] }); }
7125
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryModule, providers: [
6811
7126
  {
6812
7127
  provide: HISTORY_TOKEN,
6813
7128
  useClass: ClrHistoryHttpImplService,
6814
7129
  },
6815
7130
  ], imports: [CommonModule, ClarityModule, RouterModule, ClrDropdownOverflowModule] }); }
6816
7131
  }
6817
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrHistoryModule, decorators: [{
7132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrHistoryModule, decorators: [{
6818
7133
  type: NgModule,
6819
7134
  args: [{
6820
7135
  imports: [CommonModule, ClarityModule, RouterModule, ClrDropdownOverflowModule],
@@ -6841,10 +7156,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
6841
7156
  * The full license information can be found in LICENSE in the root directory of this project.
6842
7157
  */
6843
7158
  class ClrAutocompleteOff {
6844
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAutocompleteOff, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6845
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrAutocompleteOff, isStandalone: false, selector: "input:not([autocomplete])", host: { properties: { "attr.autocomplete": "\"off\"" } }, ngImport: i0 }); }
7159
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAutocompleteOff, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
7160
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrAutocompleteOff, isStandalone: false, selector: "input:not([autocomplete])", host: { properties: { "attr.autocomplete": "\"off\"" } }, ngImport: i0 }); }
6846
7161
  }
6847
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAutocompleteOff, decorators: [{
7162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAutocompleteOff, decorators: [{
6848
7163
  type: Directive,
6849
7164
  args: [{
6850
7165
  selector: 'input:not([autocomplete])',
@@ -6861,11 +7176,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
6861
7176
  * The full license information can be found in LICENSE in the root directory of this project.
6862
7177
  */
6863
7178
  class ClrAutocompleteOffModule {
6864
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAutocompleteOffModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6865
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrAutocompleteOffModule, declarations: [ClrAutocompleteOff], exports: [ClrAutocompleteOff] }); }
6866
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAutocompleteOffModule }); }
7179
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAutocompleteOffModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7180
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrAutocompleteOffModule, declarations: [ClrAutocompleteOff], exports: [ClrAutocompleteOff] }); }
7181
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAutocompleteOffModule }); }
6867
7182
  }
6868
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAutocompleteOffModule, decorators: [{
7183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAutocompleteOffModule, decorators: [{
6869
7184
  type: NgModule,
6870
7185
  args: [{
6871
7186
  declarations: [ClrAutocompleteOff],
@@ -12433,10 +12748,10 @@ class ClrBrandAvatar {
12433
12748
  output = output.replace('Š', 'S');
12434
12749
  return output;
12435
12750
  }
12436
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBrandAvatar, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
12437
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrBrandAvatar, isStandalone: false, selector: "clr-brand-avatar", inputs: { brand: ["clrBrand", "brand"], size: ["clrSize", "size"] }, host: { properties: { "class.clr-brand-avatar": "this.avatar" } }, viewQueries: [{ propertyName: "avatarElement", first: true, predicate: ["avatar"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"brand-avatar-rectangle\">\n <div #avatar class=\"brand-avatar-icon-container\">\n <cds-icon\n data-testid=\"brand-avatar-icon\"\n [size]=\"'' + size\"\n [shape]=\"getShape()\"\n [ngClass]=\"{'default-icon': getShape() === getDefaultIcon()}\"\n ></cds-icon>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
12751
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBrandAvatar, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
12752
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrBrandAvatar, isStandalone: false, selector: "clr-brand-avatar", inputs: { brand: ["clrBrand", "brand"], size: ["clrSize", "size"] }, host: { properties: { "class.clr-brand-avatar": "this.avatar" } }, viewQueries: [{ propertyName: "avatarElement", first: true, predicate: ["avatar"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"brand-avatar-rectangle\">\n <div #avatar class=\"brand-avatar-icon-container\">\n <cds-icon\n data-testid=\"brand-avatar-icon\"\n [size]=\"'' + size\"\n [shape]=\"getShape()\"\n [ngClass]=\"{'default-icon': getShape() === getDefaultIcon()}\"\n ></cds-icon>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
12438
12753
  }
12439
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBrandAvatar, decorators: [{
12754
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBrandAvatar, decorators: [{
12440
12755
  type: Component,
12441
12756
  args: [{ selector: 'clr-brand-avatar', standalone: false, template: "<div class=\"brand-avatar-rectangle\">\n <div #avatar class=\"brand-avatar-icon-container\">\n <cds-icon\n data-testid=\"brand-avatar-icon\"\n [size]=\"'' + size\"\n [shape]=\"getShape()\"\n [ngClass]=\"{'default-icon': getShape() === getDefaultIcon()}\"\n ></cds-icon>\n </div>\n</div>\n" }]
12442
12757
  }], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { avatar: [{
@@ -12459,11 +12774,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
12459
12774
  * The full license information can be found in LICENSE in the root directory of this project.
12460
12775
  */
12461
12776
  class ClrBrandAvatarModule {
12462
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBrandAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12463
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrBrandAvatarModule, declarations: [ClrBrandAvatar], imports: [CommonModule, ClarityModule], exports: [ClrBrandAvatar] }); }
12464
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBrandAvatarModule, imports: [CommonModule, ClarityModule] }); }
12777
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBrandAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12778
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrBrandAvatarModule, declarations: [ClrBrandAvatar], imports: [CommonModule, ClarityModule], exports: [ClrBrandAvatar] }); }
12779
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBrandAvatarModule, imports: [CommonModule, ClarityModule] }); }
12465
12780
  }
12466
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrBrandAvatarModule, decorators: [{
12781
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrBrandAvatarModule, decorators: [{
12467
12782
  type: NgModule,
12468
12783
  args: [{
12469
12784
  imports: [CommonModule, ClarityModule],
@@ -12580,10 +12895,10 @@ class ClrAddonsLabel {
12580
12895
  this.destroyed$.next();
12581
12896
  this.destroyed$.complete();
12582
12897
  }
12583
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAddonsLabel, deps: [{ token: ControlIdService, optional: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
12584
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrAddonsLabel, isStandalone: false, selector: "label", ngImport: i0 }); }
12898
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAddonsLabel, deps: [{ token: ControlIdService, optional: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
12899
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrAddonsLabel, isStandalone: false, selector: "label", ngImport: i0 }); }
12585
12900
  }
12586
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAddonsLabel, decorators: [{
12901
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAddonsLabel, decorators: [{
12587
12902
  type: Directive,
12588
12903
  args: [{
12589
12904
  selector: 'label',
@@ -12641,10 +12956,10 @@ class LocationBarSearchComponent {
12641
12956
  getMinCharactersText() {
12642
12957
  return `Type ${this.searchRequest?.minCharacters ?? this.MIN_CHARACTERS_DEFAULT}+ characters to search.`;
12643
12958
  }
12644
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: LocationBarSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12645
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: LocationBarSearchComponent, isStandalone: false, selector: "clr-location-bar-search", inputs: { searchRequest: ["clrSearchRequest", "searchRequest"] }, outputs: { searchPerformed: "searchPerformed" }, viewQueries: [{ propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"clr-col-md-12 search-wrapper\">\n <form clrForm>\n <clr-input-container class=\"input-container\">\n <label hidden></label>\n <input\n #searchInput\n class=\"clr-col-md-12\"\n clrInput\n clrSearch\n [placeholder]=\"searchRequest?.placeholder ?? ''\"\n type=\"text\"\n name=\"search\"\n (keydown.Space)=\"preventDropdownActions($event)\"\n [formControl]=\"searchControl\"\n data-testid=\"location-bar-search-input\"\n />\n @if (displayWarning) {\n <clr-control-helper class=\"min-text-warning\" data-testid=\"location-bar-search-min-warning\">{{\n searchRequest?.minCharacterText ?? getMinCharactersText()\n }}</clr-control-helper>\n }\n </clr-input-container>\n </form>\n</div>\n", styles: ["input::placeholder{font-size:.55rem}.search-wrapper{margin-bottom:.3rem}.input-container{margin-top:0}.min-text-warning{color:var(--cds-global-color-construction-800)}\n"], dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "component", type: i1$1.ClrControlHelper, selector: "clr-control-helper" }, { kind: "directive", type: i1$1.ClrForm, selector: "[clrForm]", inputs: ["clrLabelSize"] }, { kind: "directive", type: i3$2.ClrInput, selector: "[clrInput]" }, { kind: "component", type: i3$2.ClrInputContainer, selector: "clr-input-container" }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]):not([formArray]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: ClrAutocompleteOff, selector: "input:not([autocomplete])" }, { kind: "directive", type: ClrAddonsLabel, selector: "label" }, { kind: "directive", type: ClrSearchField, selector: "[clrSearch]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12959
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: LocationBarSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12960
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: LocationBarSearchComponent, isStandalone: false, selector: "clr-location-bar-search", inputs: { searchRequest: ["clrSearchRequest", "searchRequest"] }, outputs: { searchPerformed: "searchPerformed" }, viewQueries: [{ propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"clr-col-md-12 search-wrapper\">\n <form clrForm>\n <clr-input-container class=\"input-container\">\n <label hidden></label>\n <input\n #searchInput\n class=\"clr-col-md-12\"\n clrInput\n clrSearch\n [placeholder]=\"searchRequest?.placeholder ?? ''\"\n type=\"text\"\n name=\"search\"\n (keydown.Space)=\"preventDropdownActions($event)\"\n [formControl]=\"searchControl\"\n data-testid=\"location-bar-search-input\"\n />\n @if (displayWarning) {\n <clr-control-helper class=\"min-text-warning\" data-testid=\"location-bar-search-min-warning\">{{\n searchRequest?.minCharacterText ?? getMinCharactersText()\n }}</clr-control-helper>\n }\n </clr-input-container>\n </form>\n</div>\n", styles: ["input::placeholder{font-size:.55rem}.search-wrapper{margin-bottom:.3rem}.input-container{margin-top:0}.min-text-warning{color:var(--cds-global-color-construction-800)}\n"], dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "component", type: i1$1.ClrControlHelper, selector: "clr-control-helper" }, { kind: "directive", type: i1$1.ClrForm, selector: "[clrForm]", inputs: ["clrLabelSize"] }, { kind: "directive", type: i3$1.ClrInput, selector: "[clrInput]" }, { kind: "component", type: i3$1.ClrInputContainer, selector: "clr-input-container" }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]):not([formArray]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: ClrAutocompleteOff, selector: "input:not([autocomplete])" }, { kind: "directive", type: ClrAddonsLabel, selector: "label" }, { kind: "directive", type: ClrSearchField, selector: "[clrSearch]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12646
12961
  }
12647
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: LocationBarSearchComponent, decorators: [{
12962
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: LocationBarSearchComponent, decorators: [{
12648
12963
  type: Component,
12649
12964
  args: [{ selector: 'clr-location-bar-search', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div class=\"clr-col-md-12 search-wrapper\">\n <form clrForm>\n <clr-input-container class=\"input-container\">\n <label hidden></label>\n <input\n #searchInput\n class=\"clr-col-md-12\"\n clrInput\n clrSearch\n [placeholder]=\"searchRequest?.placeholder ?? ''\"\n type=\"text\"\n name=\"search\"\n (keydown.Space)=\"preventDropdownActions($event)\"\n [formControl]=\"searchControl\"\n data-testid=\"location-bar-search-input\"\n />\n @if (displayWarning) {\n <clr-control-helper class=\"min-text-warning\" data-testid=\"location-bar-search-min-warning\">{{\n searchRequest?.minCharacterText ?? getMinCharactersText()\n }}</clr-control-helper>\n }\n </clr-input-container>\n </form>\n</div>\n", styles: ["input::placeholder{font-size:.55rem}.search-wrapper{margin-bottom:.3rem}.input-container{margin-top:0}.min-text-warning{color:var(--cds-global-color-construction-800)}\n"] }]
12650
12965
  }], propDecorators: { searchRequest: [{
@@ -12767,10 +13082,10 @@ class LocationBarNodeComponent {
12767
13082
  }
12768
13083
  this.searchItemChanged.emit(searchedItem);
12769
13084
  }
12770
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: LocationBarNodeComponent, deps: [{ token: CONTENT_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
12771
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: LocationBarNodeComponent, isStandalone: false, selector: "clr-location-bar-node", inputs: { parentNode: "parentNode", searchResultItems: ["clrSearchResultItems", "searchResultItems"], searchRequest: ["clrSearchRequest", "searchRequest"] }, outputs: { selectionChanged: "selectionChanged", searchItemChanged: "searchItemChanged" }, host: { properties: { "class.location-bar-node": "true" } }, viewQueries: [{ propertyName: "locationBarSearch", first: true, predicate: ["locationBarSearch"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (parentNode) {\n @if (parentNode.getChildren()?.length > 0) {\n <ng-content></ng-content>\n }\n @if ((selectableChilds.length > 0 && !parentNode.getSelectedChild()) || selectableChilds.length > 1) {\n <clr-dropdown data-testid=\"location-bar-dropdown\">\n <button\n class=\"btn btn-link btn-sm\"\n (blur)=\"focus = false\"\n (focus)=\"focus = true\"\n (click)=\"resetSearch()\"\n clrDropdownTrigger\n data-testid=\"location-bar-dropdown-trigger\"\n >\n @if (parentNode.getSelectedChild(); as node) {\n <span\n (click)=\"resetSearch()\"\n class=\"text-truncate\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ node.label }}\"\n [attr.data-testid]=\"'location-bar-selected-node-' + node.label\"\n >\n {{ node.label }}\n </span>\n <cds-icon shape=\"angle\" direction=\"down\" size=\"xs\" class=\"caret-icon\"></cds-icon>\n } @else {\n <cds-icon\n class=\"locationbar-unselected\"\n size=\"18\"\n [solid]=\"focus\"\n shape=\"tree-view\"\n data-testid=\"location-bar-unselected-icon\"\n ></cds-icon\n >&nbsp;...\n }\n </button>\n <clr-dropdown-menu\n class=\"locationbar-clr-dropdown-menu\"\n [clrPosition]=\"'bottom-left'\"\n [clrDropdownMenuItemMinHeight]=\"'24px'\"\n *clrIfOpen\n >\n @if (searchRequest) {\n <clr-location-bar-search\n #locationBarSearch\n [clrSearchRequest]=\"searchRequest\"\n (searchPerformed)=\"onSearch($event)\"\n ></clr-location-bar-search>\n }\n @if (displaySearchResult()) {\n @if (searchResultItems.length !== 0) {\n @for (searchResultItem of searchResultItems; track searchResultItem; let index = $index) {\n <button\n type=\"button\"\n clrDropdownItem\n class=\"text-truncate\"\n (click)=\"onSearchItemChanged(searchResultItem)\"\n [attr.data-testid]=\"'location-bar-search-result-' + index\"\n >\n <ng-container\n *ngTemplateOutlet=\"searchRequest?.searchResultItemRef; context: { $implicit: searchResultItem }\"\n ></ng-container>\n </button>\n }\n } @else {\n <span class=\"locationbar-no-result-text\" data-testid=\"location-bar-no-results-text\">\n {{ searchRequest?.noResultsText ?? 'No search result found.' }}\n </span>\n }\n } @else {\n @for (item of selectableChilds; track item) {\n <button\n type=\"button\"\n clrDropdownItem\n class=\"text-truncate\"\n [class.locationbar-selected-child]=\"item.id === parentNode.getSelectedChild()?.id\"\n (click)=\"selectNode(item)\"\n title=\"{{ item.label }}\"\n [attr.data-testid]=\"'location-bar-child-' + item.label\"\n >\n {{ item.label }}\n </button>\n }\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n } @else {\n @if (parentNode.getSelectedChild()) {\n @if (parentNode.getSelectedChild().selectable) {\n <button\n class=\"btn btn-link btn-sm locationbar-btn\"\n (click)=\"selectNode(parentNode.getSelectedChild())\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ parentNode.getSelectedChild().label }}\"\n [attr.data-testid]=\"'location-bar-selected-button-' + parentNode.getSelectedChild().label\"\n >\n {{ parentNode.getSelectedChild().label }}\n </button>\n } @else {\n <span\n class=\"locationbar-unselectable-node text-truncate\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ parentNode.getSelectedChild().label }}\"\n [attr.data-testid]=\"'location-bar-unselectable-node-' + parentNode.getSelectedChild().label\"\n >\n {{ parentNode.getSelectedChild().label }}\n </span>\n }\n }\n }\n @if (parentNode.getSelectedChild() && parentNode.getChildren().length > 0) {\n <clr-location-bar-node\n [parentNode]=\"parentNode.getSelectedChild()\"\n [clrSearchRequest]=\"searchRequest\"\n [clrSearchResultItems]=\"searchResultItems\"\n (selectionChanged)=\"onSelectionChanged($event)\"\n (searchItemChanged)=\"onSearchItemChanged(null)\"\n >\n <span data-testid=\"location-bar-separator\">/</span>\n </clr-location-bar-node>\n }\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "component", type: i3$1.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i3$1.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i3$1.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i3$1.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$3.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "directive", type: ClrDropdownOverflowDirective, selector: "clr-dropdown-menu", inputs: ["clrDropdownMenuMaxHeight", "clrDropdownMenuItemMinHeight", "clrMarginBottom"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: LocationBarNodeComponent, selector: "clr-location-bar-node", inputs: ["parentNode", "clrSearchResultItems", "clrSearchRequest"], outputs: ["selectionChanged", "searchItemChanged"] }, { kind: "component", type: LocationBarSearchComponent, selector: "clr-location-bar-search", inputs: ["clrSearchRequest"], outputs: ["searchPerformed"] }] }); }
13085
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: LocationBarNodeComponent, deps: [{ token: CONTENT_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
13086
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: LocationBarNodeComponent, isStandalone: false, selector: "clr-location-bar-node", inputs: { parentNode: "parentNode", searchResultItems: ["clrSearchResultItems", "searchResultItems"], searchRequest: ["clrSearchRequest", "searchRequest"] }, outputs: { selectionChanged: "selectionChanged", searchItemChanged: "searchItemChanged" }, host: { properties: { "class.location-bar-node": "true" } }, viewQueries: [{ propertyName: "locationBarSearch", first: true, predicate: ["locationBarSearch"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (parentNode) {\n @if (parentNode.getChildren()?.length > 0) {\n <ng-content></ng-content>\n }\n @if ((selectableChilds.length > 0 && !parentNode.getSelectedChild()) || selectableChilds.length > 1) {\n <clr-dropdown data-testid=\"location-bar-dropdown\">\n <button\n class=\"btn btn-link btn-sm\"\n (blur)=\"focus = false\"\n (focus)=\"focus = true\"\n (click)=\"resetSearch()\"\n clrDropdownTrigger\n data-testid=\"location-bar-dropdown-trigger\"\n >\n @if (parentNode.getSelectedChild(); as node) {\n <span\n (click)=\"resetSearch()\"\n class=\"text-truncate\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ node.label }}\"\n [attr.data-testid]=\"'location-bar-selected-node-' + node.label\"\n >\n {{ node.label }}\n </span>\n <cds-icon shape=\"angle\" direction=\"down\" size=\"xs\" class=\"caret-icon\"></cds-icon>\n } @else {\n <cds-icon\n class=\"locationbar-unselected\"\n size=\"18\"\n [solid]=\"focus\"\n shape=\"tree-view\"\n data-testid=\"location-bar-unselected-icon\"\n ></cds-icon\n >&nbsp;...\n }\n </button>\n <clr-dropdown-menu\n class=\"locationbar-clr-dropdown-menu\"\n [clrPosition]=\"'bottom-left'\"\n [clrDropdownMenuItemMinHeight]=\"'24px'\"\n *clrIfOpen\n >\n @if (searchRequest) {\n <clr-location-bar-search\n #locationBarSearch\n [clrSearchRequest]=\"searchRequest\"\n (searchPerformed)=\"onSearch($event)\"\n ></clr-location-bar-search>\n }\n @if (displaySearchResult()) {\n @if (searchResultItems.length !== 0) {\n @for (searchResultItem of searchResultItems; track searchResultItem; let index = $index) {\n <button\n type=\"button\"\n clrDropdownItem\n class=\"text-truncate\"\n (click)=\"onSearchItemChanged(searchResultItem)\"\n [attr.data-testid]=\"'location-bar-search-result-' + index\"\n >\n <ng-container\n *ngTemplateOutlet=\"searchRequest?.searchResultItemRef; context: { $implicit: searchResultItem }\"\n ></ng-container>\n </button>\n }\n } @else {\n <span class=\"locationbar-no-result-text\" data-testid=\"location-bar-no-results-text\">\n {{ searchRequest?.noResultsText ?? 'No search result found.' }}\n </span>\n }\n } @else {\n @for (item of selectableChilds; track item) {\n <button\n type=\"button\"\n clrDropdownItem\n class=\"text-truncate\"\n [class.locationbar-selected-child]=\"item.id === parentNode.getSelectedChild()?.id\"\n (click)=\"selectNode(item)\"\n title=\"{{ item.label }}\"\n [attr.data-testid]=\"'location-bar-child-' + item.label\"\n >\n {{ item.label }}\n </button>\n }\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n } @else {\n @if (parentNode.getSelectedChild()) {\n @if (parentNode.getSelectedChild().selectable) {\n <button\n class=\"btn btn-link btn-sm locationbar-btn\"\n (click)=\"selectNode(parentNode.getSelectedChild())\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ parentNode.getSelectedChild().label }}\"\n [attr.data-testid]=\"'location-bar-selected-button-' + parentNode.getSelectedChild().label\"\n >\n {{ parentNode.getSelectedChild().label }}\n </button>\n } @else {\n <span\n class=\"locationbar-unselectable-node text-truncate\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ parentNode.getSelectedChild().label }}\"\n [attr.data-testid]=\"'location-bar-unselectable-node-' + parentNode.getSelectedChild().label\"\n >\n {{ parentNode.getSelectedChild().label }}\n </span>\n }\n }\n }\n @if (parentNode.getSelectedChild() && parentNode.getChildren().length > 0) {\n <clr-location-bar-node\n [parentNode]=\"parentNode.getSelectedChild()\"\n [clrSearchRequest]=\"searchRequest\"\n [clrSearchResultItems]=\"searchResultItems\"\n (selectionChanged)=\"onSelectionChanged($event)\"\n (searchItemChanged)=\"onSearchItemChanged(null)\"\n >\n <span data-testid=\"location-bar-separator\">/</span>\n </clr-location-bar-node>\n }\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "component", type: i2$3.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i2$3.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i2$3.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i2$3.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$4.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "directive", type: ClrDropdownOverflowDirective, selector: "clr-dropdown-menu", inputs: ["clrDropdownMenuMaxHeight", "clrDropdownMenuItemMinHeight", "clrMarginBottom"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: LocationBarNodeComponent, selector: "clr-location-bar-node", inputs: ["parentNode", "clrSearchResultItems", "clrSearchRequest"], outputs: ["selectionChanged", "searchItemChanged"] }, { kind: "component", type: LocationBarSearchComponent, selector: "clr-location-bar-search", inputs: ["clrSearchRequest"], outputs: ["searchPerformed"] }] }); }
12772
13087
  }
12773
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: LocationBarNodeComponent, decorators: [{
13088
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: LocationBarNodeComponent, decorators: [{
12774
13089
  type: Component,
12775
13090
  args: [{ selector: 'clr-location-bar-node', host: { '[class.location-bar-node]': 'true' }, standalone: false, template: "@if (parentNode) {\n @if (parentNode.getChildren()?.length > 0) {\n <ng-content></ng-content>\n }\n @if ((selectableChilds.length > 0 && !parentNode.getSelectedChild()) || selectableChilds.length > 1) {\n <clr-dropdown data-testid=\"location-bar-dropdown\">\n <button\n class=\"btn btn-link btn-sm\"\n (blur)=\"focus = false\"\n (focus)=\"focus = true\"\n (click)=\"resetSearch()\"\n clrDropdownTrigger\n data-testid=\"location-bar-dropdown-trigger\"\n >\n @if (parentNode.getSelectedChild(); as node) {\n <span\n (click)=\"resetSearch()\"\n class=\"text-truncate\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ node.label }}\"\n [attr.data-testid]=\"'location-bar-selected-node-' + node.label\"\n >\n {{ node.label }}\n </span>\n <cds-icon shape=\"angle\" direction=\"down\" size=\"xs\" class=\"caret-icon\"></cds-icon>\n } @else {\n <cds-icon\n class=\"locationbar-unselected\"\n size=\"18\"\n [solid]=\"focus\"\n shape=\"tree-view\"\n data-testid=\"location-bar-unselected-icon\"\n ></cds-icon\n >&nbsp;...\n }\n </button>\n <clr-dropdown-menu\n class=\"locationbar-clr-dropdown-menu\"\n [clrPosition]=\"'bottom-left'\"\n [clrDropdownMenuItemMinHeight]=\"'24px'\"\n *clrIfOpen\n >\n @if (searchRequest) {\n <clr-location-bar-search\n #locationBarSearch\n [clrSearchRequest]=\"searchRequest\"\n (searchPerformed)=\"onSearch($event)\"\n ></clr-location-bar-search>\n }\n @if (displaySearchResult()) {\n @if (searchResultItems.length !== 0) {\n @for (searchResultItem of searchResultItems; track searchResultItem; let index = $index) {\n <button\n type=\"button\"\n clrDropdownItem\n class=\"text-truncate\"\n (click)=\"onSearchItemChanged(searchResultItem)\"\n [attr.data-testid]=\"'location-bar-search-result-' + index\"\n >\n <ng-container\n *ngTemplateOutlet=\"searchRequest?.searchResultItemRef; context: { $implicit: searchResultItem }\"\n ></ng-container>\n </button>\n }\n } @else {\n <span class=\"locationbar-no-result-text\" data-testid=\"location-bar-no-results-text\">\n {{ searchRequest?.noResultsText ?? 'No search result found.' }}\n </span>\n }\n } @else {\n @for (item of selectableChilds; track item) {\n <button\n type=\"button\"\n clrDropdownItem\n class=\"text-truncate\"\n [class.locationbar-selected-child]=\"item.id === parentNode.getSelectedChild()?.id\"\n (click)=\"selectNode(item)\"\n title=\"{{ item.label }}\"\n [attr.data-testid]=\"'location-bar-child-' + item.label\"\n >\n {{ item.label }}\n </button>\n }\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n } @else {\n @if (parentNode.getSelectedChild()) {\n @if (parentNode.getSelectedChild().selectable) {\n <button\n class=\"btn btn-link btn-sm locationbar-btn\"\n (click)=\"selectNode(parentNode.getSelectedChild())\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ parentNode.getSelectedChild().label }}\"\n [attr.data-testid]=\"'location-bar-selected-button-' + parentNode.getSelectedChild().label\"\n >\n {{ parentNode.getSelectedChild().label }}\n </button>\n } @else {\n <span\n class=\"locationbar-unselectable-node text-truncate\"\n [class.locationbar-last-level]=\"!parentNode.getSelectedChild().getSelectedChild()\"\n title=\"{{ parentNode.getSelectedChild().label }}\"\n [attr.data-testid]=\"'location-bar-unselectable-node-' + parentNode.getSelectedChild().label\"\n >\n {{ parentNode.getSelectedChild().label }}\n </span>\n }\n }\n }\n @if (parentNode.getSelectedChild() && parentNode.getChildren().length > 0) {\n <clr-location-bar-node\n [parentNode]=\"parentNode.getSelectedChild()\"\n [clrSearchRequest]=\"searchRequest\"\n [clrSearchResultItems]=\"searchResultItems\"\n (selectionChanged)=\"onSelectionChanged($event)\"\n (searchItemChanged)=\"onSearchItemChanged(null)\"\n >\n <span data-testid=\"location-bar-separator\">/</span>\n </clr-location-bar-node>\n }\n}\n" }]
12776
13091
  }], ctorParameters: () => [{ type: LocationBarContentProvider, decorators: [{
@@ -12821,10 +13136,10 @@ class LocationBarComponent {
12821
13136
  onSelectionChanged(selection) {
12822
13137
  this.selectionChanged.emit(selection);
12823
13138
  }
12824
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: LocationBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12825
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: LocationBarComponent, isStandalone: false, selector: "clr-location-bar", inputs: { iconShape: ["clrIconShape", "iconShape"], iconTitle: ["clrIconTitle", "iconTitle"], searchRequest: ["clrSearchRequest", "searchRequest"], searchResultItems: ["clrSearchResultItems", "searchResultItems"], roots: ["clrRoots", "roots"] }, outputs: { selectionChanged: "clrSelectionChanged", searchItemChanged: "clrSearchItemChanged" }, usesOnChanges: true, ngImport: i0, template: "@if (iconShape) {\n<cds-icon [shape]=\"iconShape\" [title]=\"iconTitle\" data-testid=\"location-bar-icon\"></cds-icon>\n}\n<clr-location-bar-node\n (selectionChanged)=\"onSelectionChanged($event)\"\n (searchItemChanged)=\"searchItemChanged.emit($event)\"\n [parentNode]=\"root$ | async\"\n [clrSearchRequest]=\"searchRequest\"\n [clrSearchResultItems]=\"searchResultItems\"\n>\n</clr-location-bar-node>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: LocationBarNodeComponent, selector: "clr-location-bar-node", inputs: ["parentNode", "clrSearchResultItems", "clrSearchRequest"], outputs: ["selectionChanged", "searchItemChanged"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
13139
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: LocationBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13140
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: LocationBarComponent, isStandalone: false, selector: "clr-location-bar", inputs: { iconShape: ["clrIconShape", "iconShape"], iconTitle: ["clrIconTitle", "iconTitle"], searchRequest: ["clrSearchRequest", "searchRequest"], searchResultItems: ["clrSearchResultItems", "searchResultItems"], roots: ["clrRoots", "roots"] }, outputs: { selectionChanged: "clrSelectionChanged", searchItemChanged: "clrSearchItemChanged" }, usesOnChanges: true, ngImport: i0, template: "@if (iconShape) {\n<cds-icon [shape]=\"iconShape\" [title]=\"iconTitle\" data-testid=\"location-bar-icon\"></cds-icon>\n}\n<clr-location-bar-node\n (selectionChanged)=\"onSelectionChanged($event)\"\n (searchItemChanged)=\"searchItemChanged.emit($event)\"\n [parentNode]=\"root$ | async\"\n [clrSearchRequest]=\"searchRequest\"\n [clrSearchResultItems]=\"searchResultItems\"\n>\n</clr-location-bar-node>\n", dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: LocationBarNodeComponent, selector: "clr-location-bar-node", inputs: ["parentNode", "clrSearchResultItems", "clrSearchRequest"], outputs: ["selectionChanged", "searchItemChanged"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
12826
13141
  }
12827
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: LocationBarComponent, decorators: [{
13142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: LocationBarComponent, decorators: [{
12828
13143
  type: Component,
12829
13144
  args: [{ selector: 'clr-location-bar', standalone: false, template: "@if (iconShape) {\n<cds-icon [shape]=\"iconShape\" [title]=\"iconTitle\" data-testid=\"location-bar-icon\"></cds-icon>\n}\n<clr-location-bar-node\n (selectionChanged)=\"onSelectionChanged($event)\"\n (searchItemChanged)=\"searchItemChanged.emit($event)\"\n [parentNode]=\"root$ | async\"\n [clrSearchRequest]=\"searchRequest\"\n [clrSearchResultItems]=\"searchResultItems\"\n>\n</clr-location-bar-node>\n" }]
12830
13145
  }], propDecorators: { iconShape: [{
@@ -12856,11 +13171,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
12856
13171
  * The full license information can be found in LICENSE in the root directory of this project.
12857
13172
  */
12858
13173
  class ClrFormModule {
12859
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12860
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrFormModule, declarations: [ClrAddonsLabel], exports: [ClrAddonsLabel] }); }
12861
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFormModule }); }
13174
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13175
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrFormModule, declarations: [ClrAddonsLabel], exports: [ClrAddonsLabel] }); }
13176
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFormModule }); }
12862
13177
  }
12863
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFormModule, decorators: [{
13178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFormModule, decorators: [{
12864
13179
  type: NgModule,
12865
13180
  args: [{
12866
13181
  declarations: [ClrAddonsLabel],
@@ -12869,8 +13184,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
12869
13184
  }] });
12870
13185
 
12871
13186
  class ClrLocationBarModule {
12872
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrLocationBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12873
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrLocationBarModule, declarations: [LocationBarComponent, LocationBarNodeComponent, LocationBarSearchComponent], imports: [CommonModule,
13187
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrLocationBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13188
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrLocationBarModule, declarations: [LocationBarComponent, LocationBarNodeComponent, LocationBarSearchComponent], imports: [CommonModule,
12874
13189
  ClrIcon,
12875
13190
  ClrDropdownModule,
12876
13191
  ClrDropdownOverflowModule,
@@ -12880,7 +13195,7 @@ class ClrLocationBarModule {
12880
13195
  ClrFormModule,
12881
13196
  ClrSearchFieldModule,
12882
13197
  ReactiveFormsModule], exports: [LocationBarComponent] }); }
12883
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrLocationBarModule, imports: [CommonModule,
13198
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrLocationBarModule, imports: [CommonModule,
12884
13199
  ClrIcon,
12885
13200
  ClrDropdownModule,
12886
13201
  ClrDropdownOverflowModule,
@@ -12891,7 +13206,7 @@ class ClrLocationBarModule {
12891
13206
  ClrSearchFieldModule,
12892
13207
  ReactiveFormsModule] }); }
12893
13208
  }
12894
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrLocationBarModule, decorators: [{
13209
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrLocationBarModule, decorators: [{
12895
13210
  type: NgModule,
12896
13211
  args: [{
12897
13212
  declarations: [LocationBarComponent, LocationBarNodeComponent, LocationBarSearchComponent],
@@ -12915,10 +13230,10 @@ class DatagridFieldDirective {
12915
13230
  getFieldName() {
12916
13231
  return this.clrDgField ?? this.clrDgFieldKey;
12917
13232
  }
12918
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DatagridFieldDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
12919
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: DatagridFieldDirective, isStandalone: false, selector: "[clrDgField],[clrDgFieldKey]", inputs: { clrDgField: "clrDgField", clrDgFieldKey: "clrDgFieldKey" }, ngImport: i0 }); }
13233
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DatagridFieldDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13234
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: DatagridFieldDirective, isStandalone: false, selector: "[clrDgField],[clrDgFieldKey]", inputs: { clrDgField: "clrDgField", clrDgFieldKey: "clrDgFieldKey" }, ngImport: i0 }); }
12920
13235
  }
12921
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DatagridFieldDirective, decorators: [{
13236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DatagridFieldDirective, decorators: [{
12922
13237
  type: Directive,
12923
13238
  args: [{
12924
13239
  selector: '[clrDgField],[clrDgFieldKey]',
@@ -13002,10 +13317,10 @@ class DatagridColumnReorderDirective {
13002
13317
  isDragItemDgColumn(item) {
13003
13318
  return item.element.nativeElement.tagName === 'CLR-DG-COLUMN';
13004
13319
  }
13005
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DatagridColumnReorderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13006
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: DatagridColumnReorderDirective, isStandalone: false, selector: "[clrDatagridColumnReorder]", inputs: { columnDefinitions: ["clrDatagridColumnReorder", "columnDefinitions"] }, outputs: { columnOrderChanged: "clrDatagridColumnOrderChanged" }, host: { properties: { "class.datagrid-column-reorder": "true" } }, queries: [{ propertyName: "clrColumns", predicate: ClrDatagridColumn }], ngImport: i0 }); }
13320
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DatagridColumnReorderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13321
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: DatagridColumnReorderDirective, isStandalone: false, selector: "[clrDatagridColumnReorder]", inputs: { columnDefinitions: ["clrDatagridColumnReorder", "columnDefinitions"] }, outputs: { columnOrderChanged: "clrDatagridColumnOrderChanged" }, host: { properties: { "class.datagrid-column-reorder": "true" } }, queries: [{ propertyName: "clrColumns", predicate: ClrDatagridColumn }], ngImport: i0 }); }
13007
13322
  }
13008
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DatagridColumnReorderDirective, decorators: [{
13323
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DatagridColumnReorderDirective, decorators: [{
13009
13324
  type: Directive,
13010
13325
  args: [{
13011
13326
  selector: '[clrDatagridColumnReorder]',
@@ -13031,8 +13346,8 @@ class DynamicCellContentComponent {
13031
13346
  this.item = input(...(ngDevMode ? [undefined, { debugName: "item" }] : /* istanbul ignore next */ []));
13032
13347
  this.defaultDisplayValue = input('', ...(ngDevMode ? [{ debugName: "defaultDisplayValue" }] : /* istanbul ignore next */ []));
13033
13348
  }
13034
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DynamicCellContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13035
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: DynamicCellContentComponent, isStandalone: false, selector: "clr-dg-dynamic-cell-content", inputs: { col: { classPropertyName: "col", publicName: "col", isSignal: true, isRequired: false, transformFunction: null }, item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: false, transformFunction: null }, defaultDisplayValue: { classPropertyName: "defaultDisplayValue", publicName: "defaultDisplayValue", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
13349
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DynamicCellContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13350
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: DynamicCellContentComponent, isStandalone: false, selector: "clr-dg-dynamic-cell-content", inputs: { col: { classPropertyName: "col", publicName: "col", isSignal: true, isRequired: false, transformFunction: null }, item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: false, transformFunction: null }, defaultDisplayValue: { classPropertyName: "defaultDisplayValue", publicName: "defaultDisplayValue", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
13036
13351
  @if (col().component) {
13037
13352
  <ng-container *ngComponentOutlet="col().component; inputs: { item: item() }" />
13038
13353
  } @else if (col().template) {
@@ -13046,7 +13361,7 @@ class DynamicCellContentComponent {
13046
13361
  }
13047
13362
  `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13048
13363
  }
13049
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DynamicCellContentComponent, decorators: [{
13364
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DynamicCellContentComponent, decorators: [{
13050
13365
  type: Component,
13051
13366
  args: [{
13052
13367
  selector: 'clr-dg-dynamic-cell-content',
@@ -13069,11 +13384,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
13069
13384
  }], propDecorators: { col: [{ type: i0.Input, args: [{ isSignal: true, alias: "col", required: false }] }], item: [{ type: i0.Input, args: [{ isSignal: true, alias: "item", required: false }] }], defaultDisplayValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultDisplayValue", required: false }] }] } });
13070
13385
 
13071
13386
  class ClrDatagridColumnReorderModule {
13072
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDatagridColumnReorderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13073
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrDatagridColumnReorderModule, declarations: [DatagridColumnReorderDirective, DynamicCellContentComponent], imports: [NgComponentOutlet, NgTemplateOutlet], exports: [DatagridColumnReorderDirective, DynamicCellContentComponent] }); }
13074
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDatagridColumnReorderModule }); }
13387
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDatagridColumnReorderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13388
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrDatagridColumnReorderModule, declarations: [DatagridColumnReorderDirective, DynamicCellContentComponent], imports: [NgComponentOutlet, NgTemplateOutlet], exports: [DatagridColumnReorderDirective, DynamicCellContentComponent] }); }
13389
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDatagridColumnReorderModule }); }
13075
13390
  }
13076
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDatagridColumnReorderModule, decorators: [{
13391
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDatagridColumnReorderModule, decorators: [{
13077
13392
  type: NgModule,
13078
13393
  args: [{
13079
13394
  declarations: [DatagridColumnReorderDirective, DynamicCellContentComponent],
@@ -13394,10 +13709,10 @@ class StatePersistenceKeyDirective {
13394
13709
  this.destroy$.next();
13395
13710
  this.destroy$.complete();
13396
13711
  }
13397
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: StatePersistenceKeyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13398
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: StatePersistenceKeyDirective, isStandalone: false, selector: "[clrStatePersistenceKey]", inputs: { options: ["clrStatePersistenceKey", "options"], useLocalStoreOnly: ["clrUseLocalStoreOnly", "useLocalStoreOnly"], paginationDescription: ["clrPaginationDescription", "paginationDescription"] }, host: { listeners: { "window:beforeunload": "persistColumnWidths()" } }, queries: [{ propertyName: "pagination", first: true, predicate: ClrDatagridPagination, descendants: true }, { propertyName: "paginationElem", first: true, predicate: ClrDatagridPagination, descendants: true, read: ElementRef }, { propertyName: "customFilters", predicate: ClrDatagridFilter, descendants: true }, { propertyName: "gridColumnRefs", predicate: ClrDatagridColumn, read: ElementRef }, { propertyName: "gridColumns", predicate: ClrDatagridColumn }], ngImport: i0 }); }
13712
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: StatePersistenceKeyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13713
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: StatePersistenceKeyDirective, isStandalone: false, selector: "[clrStatePersistenceKey]", inputs: { options: ["clrStatePersistenceKey", "options"], useLocalStoreOnly: ["clrUseLocalStoreOnly", "useLocalStoreOnly"], paginationDescription: ["clrPaginationDescription", "paginationDescription"] }, host: { listeners: { "window:beforeunload": "persistColumnWidths()" } }, queries: [{ propertyName: "pagination", first: true, predicate: ClrDatagridPagination, descendants: true }, { propertyName: "paginationElem", first: true, predicate: ClrDatagridPagination, descendants: true, read: ElementRef }, { propertyName: "customFilters", predicate: ClrDatagridFilter, descendants: true }, { propertyName: "gridColumnRefs", predicate: ClrDatagridColumn, read: ElementRef }, { propertyName: "gridColumns", predicate: ClrDatagridColumn }], ngImport: i0 }); }
13399
13714
  }
13400
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: StatePersistenceKeyDirective, decorators: [{
13715
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: StatePersistenceKeyDirective, decorators: [{
13401
13716
  type: Directive,
13402
13717
  args: [{
13403
13718
  selector: '[clrStatePersistenceKey]',
@@ -13488,10 +13803,10 @@ class ColumnHiddenStatePersistenceDirective {
13488
13803
  this.destroy$.next();
13489
13804
  this.destroy$.complete();
13490
13805
  }
13491
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ColumnHiddenStatePersistenceDirective, deps: [{ token: DatagridFieldDirective, optional: true }, { token: StatePersistenceKeyDirective, optional: true }, { token: i1$2.ClrDatagrid }, { token: i1$2.ClrDatagridHideableColumn }], target: i0.ɵɵFactoryTarget.Directive }); }
13492
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ColumnHiddenStatePersistenceDirective, isStandalone: false, selector: "[clrDgHideableColumn]", ngImport: i0 }); }
13806
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ColumnHiddenStatePersistenceDirective, deps: [{ token: DatagridFieldDirective, optional: true }, { token: StatePersistenceKeyDirective, optional: true }, { token: i1$2.ClrDatagrid }, { token: i1$2.ClrDatagridHideableColumn }], target: i0.ɵɵFactoryTarget.Directive }); }
13807
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ColumnHiddenStatePersistenceDirective, isStandalone: false, selector: "[clrDgHideableColumn]", ngImport: i0 }); }
13493
13808
  }
13494
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ColumnHiddenStatePersistenceDirective, decorators: [{
13809
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ColumnHiddenStatePersistenceDirective, decorators: [{
13495
13810
  type: Directive,
13496
13811
  args: [{
13497
13812
  selector: '[clrDgHideableColumn]',
@@ -13504,11 +13819,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
13504
13819
  }] }, { type: i1$2.ClrDatagrid }, { type: i1$2.ClrDatagridHideableColumn }] });
13505
13820
 
13506
13821
  class ClrDatagridStatePersistenceModule {
13507
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDatagridStatePersistenceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13508
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrDatagridStatePersistenceModule, declarations: [ColumnHiddenStatePersistenceDirective, DatagridFieldDirective, StatePersistenceKeyDirective], exports: [ColumnHiddenStatePersistenceDirective, DatagridFieldDirective, StatePersistenceKeyDirective] }); }
13509
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDatagridStatePersistenceModule }); }
13822
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDatagridStatePersistenceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13823
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrDatagridStatePersistenceModule, declarations: [ColumnHiddenStatePersistenceDirective, DatagridFieldDirective, StatePersistenceKeyDirective], exports: [ColumnHiddenStatePersistenceDirective, DatagridFieldDirective, StatePersistenceKeyDirective] }); }
13824
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDatagridStatePersistenceModule }); }
13510
13825
  }
13511
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDatagridStatePersistenceModule, decorators: [{
13826
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDatagridStatePersistenceModule, decorators: [{
13512
13827
  type: NgModule,
13513
13828
  args: [{
13514
13829
  declarations: [ColumnHiddenStatePersistenceDirective, DatagridFieldDirective, StatePersistenceKeyDirective],
@@ -13635,10 +13950,10 @@ class ClrEnumFilterComponent {
13635
13950
  }
13636
13951
  return value ? { value: value, displayValue: value } : { value: '', displayValue: this.emptyValue };
13637
13952
  }
13638
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrEnumFilterComponent, deps: [{ token: i1$2.ClrDatagridFilter }, { token: i1$2.ClrDatagrid }], target: i0.ɵɵFactoryTarget.Component }); }
13639
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrEnumFilterComponent, isStandalone: false, selector: "clr-enum-filter", inputs: { property: ["clrProperty", "property"], setEmptyValuesTranslation: ["clrEmptyValuesTranslation", "setEmptyValuesTranslation"], value: ["clrFilterValues", "value"], clrPossibleValues: "clrPossibleValues" }, outputs: { clrFilterValuesChange: "clrFilterValuesChange" }, ngImport: i0, template: "<button class=\"btn btn-sm btn-icon btn-link btn-trash\" (click)=\"clearFilters()\" data-testid=\"enum-filter-clear-button\">\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<clr-checkbox-container class=\"filter-selection\">\n @for (possibleValue of possibleValues; track possibleValue) {\n <clr-checkbox-wrapper>\n <input\n type=\"checkbox\"\n clrCheckbox\n value=\"{{ possibleValue.displayValue ?? possibleValue }}\"\n name=\"possibleValue\"\n [ngModel]=\"containsFilterValue(filteredValues, possibleValue)\"\n (ngModelChange)=\"onChange(possibleValue, $event)\"\n [attr.data-testid]=\"'enum-filter-option-' + possibleValue.value\"\n />\n <label [attr.data-testid]=\"'enum-filter-option-label-' + possibleValue.value\">\n {{ possibleValue.displayValue ?? possibleValue }}\n </label>\n </clr-checkbox-wrapper>\n }\n</clr-checkbox-container>\n", styles: [".filter-selection{display:block;max-height:calc(100dvh - 4rem);overflow-y:auto}.btn-trash{position:absolute;top:15px;right:40px;padding:0}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i4.ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: i4.ClrCheckboxContainer, selector: "clr-checkbox-container,clr-toggle-container", inputs: ["clrInline"] }, { kind: "component", type: i4.ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
13953
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrEnumFilterComponent, deps: [{ token: i1$2.ClrDatagridFilter }, { token: i1$2.ClrDatagrid }], target: i0.ɵɵFactoryTarget.Component }); }
13954
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrEnumFilterComponent, isStandalone: false, selector: "clr-enum-filter", inputs: { property: ["clrProperty", "property"], setEmptyValuesTranslation: ["clrEmptyValuesTranslation", "setEmptyValuesTranslation"], value: ["clrFilterValues", "value"], clrPossibleValues: "clrPossibleValues" }, outputs: { clrFilterValuesChange: "clrFilterValuesChange" }, ngImport: i0, template: "<button class=\"btn btn-sm btn-icon btn-link btn-trash\" (click)=\"clearFilters()\" data-testid=\"enum-filter-clear-button\">\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<clr-checkbox-container class=\"filter-selection\">\n @for (possibleValue of possibleValues; track possibleValue) {\n <clr-checkbox-wrapper>\n <input\n type=\"checkbox\"\n clrCheckbox\n value=\"{{ possibleValue.displayValue ?? possibleValue }}\"\n name=\"possibleValue\"\n [ngModel]=\"containsFilterValue(filteredValues, possibleValue)\"\n (ngModelChange)=\"onChange(possibleValue, $event)\"\n [attr.data-testid]=\"'enum-filter-option-' + possibleValue.value\"\n />\n <label [attr.data-testid]=\"'enum-filter-option-label-' + possibleValue.value\">\n {{ possibleValue.displayValue ?? possibleValue }}\n </label>\n </clr-checkbox-wrapper>\n }\n</clr-checkbox-container>\n", styles: [".filter-selection{display:block;max-height:calc(100dvh - 4rem);overflow-y:auto}.btn-trash{position:absolute;top:15px;right:40px;padding:0}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i4.ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: i4.ClrCheckboxContainer, selector: "clr-checkbox-container,clr-toggle-container", inputs: ["clrInline"] }, { kind: "component", type: i4.ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
13640
13955
  }
13641
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrEnumFilterComponent, decorators: [{
13956
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrEnumFilterComponent, decorators: [{
13642
13957
  type: Component,
13643
13958
  args: [{ selector: 'clr-enum-filter', standalone: false, template: "<button class=\"btn btn-sm btn-icon btn-link btn-trash\" (click)=\"clearFilters()\" data-testid=\"enum-filter-clear-button\">\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<clr-checkbox-container class=\"filter-selection\">\n @for (possibleValue of possibleValues; track possibleValue) {\n <clr-checkbox-wrapper>\n <input\n type=\"checkbox\"\n clrCheckbox\n value=\"{{ possibleValue.displayValue ?? possibleValue }}\"\n name=\"possibleValue\"\n [ngModel]=\"containsFilterValue(filteredValues, possibleValue)\"\n (ngModelChange)=\"onChange(possibleValue, $event)\"\n [attr.data-testid]=\"'enum-filter-option-' + possibleValue.value\"\n />\n <label [attr.data-testid]=\"'enum-filter-option-label-' + possibleValue.value\">\n {{ possibleValue.displayValue ?? possibleValue }}\n </label>\n </clr-checkbox-wrapper>\n }\n</clr-checkbox-container>\n", styles: [".filter-selection{display:block;max-height:calc(100dvh - 4rem);overflow-y:auto}.btn-trash{position:absolute;top:15px;right:40px;padding:0}\n"] }]
13644
13959
  }], ctorParameters: () => [{ type: i1$2.ClrDatagridFilter }, { type: i1$2.ClrDatagrid }], propDecorators: { property: [{
@@ -13657,11 +13972,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
13657
13972
  }] } });
13658
13973
 
13659
13974
  class ClrEnumFilterModule {
13660
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrEnumFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13661
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrEnumFilterModule, declarations: [ClrEnumFilterComponent], imports: [ClarityModule, CommonModule, FormsModule], exports: [ClrEnumFilterComponent] }); }
13662
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrEnumFilterModule, imports: [ClarityModule, CommonModule, FormsModule] }); }
13975
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrEnumFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13976
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrEnumFilterModule, declarations: [ClrEnumFilterComponent], imports: [ClarityModule, CommonModule, FormsModule], exports: [ClrEnumFilterComponent] }); }
13977
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrEnumFilterModule, imports: [ClarityModule, CommonModule, FormsModule] }); }
13663
13978
  }
13664
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrEnumFilterModule, decorators: [{
13979
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrEnumFilterModule, decorators: [{
13665
13980
  type: NgModule,
13666
13981
  args: [{
13667
13982
  imports: [ClarityModule, CommonModule, FormsModule],
@@ -13879,10 +14194,10 @@ class ClrDateFilterComponent {
13879
14194
  this.valError = this._from > this._to;
13880
14195
  }
13881
14196
  }
13882
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateFilterComponent, deps: [{ token: i1$2.ClrCommonStringsService }, { token: i1$2.ClrDatagridFilter }], target: i0.ɵɵFactoryTarget.Component }); }
13883
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrDateFilterComponent, isStandalone: false, selector: "clr-date-filter", inputs: { timeActive: "timeActive", dateValidationError: "dateValidationError", property: ["clrProperty", "property"], maxPlaceholder: ["clrFilterMaxPlaceholder", "maxPlaceholder"], minPlaceholder: ["clrFilterMinPlaceholder", "minPlaceholder"], value: ["clrFilterValue", "value"] }, outputs: { filterValueChange: "clrFilterValueChange" }, ngImport: i0, template: "<button class=\"btn btn-sm btn-icon btn-link btn-trash\" (click)=\"clearFilter()\" data-testid=\"date-filter-clear-button\">\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n@if (!timeActive) {\n<clr-date-container class=\"filter-selection\">\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n data-testid=\"date-filter-from-date-input\"\n />\n</clr-date-container>\n<clr-date-container class=\"filter-selection\">\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n data-testid=\"date-filter-to-date-input\"\n />\n</clr-date-container>\n@if (valError) {\n<clr-control-error data-testid=\"date-filter-validation-error\">\n {{ dateValidationError || 'Date \"from\" must be before date \"to\"!' }}\n</clr-control-error>\n} } @if (timeActive) {\n<clr-date-time-container class=\"filter-selection\">\n <clr-date-container class=\"time-filter-active\">\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input time-filter-active-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n data-testid=\"date-filter-from-date-input\"\n />\n </clr-date-container>\n <input\n clrTime\n type=\"time\"\n class=\"time-filter-input\"\n step=\"60\"\n [(ngModel)]=\"fromTime\"\n data-testid=\"date-filter-from-time-input\"\n />\n</clr-date-time-container>\n<clr-date-time-container>\n <clr-date-container class=\"time-filter-active\">\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input time-filter-active-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n data-testid=\"date-filter-to-date-input\"\n />\n </clr-date-container>\n <input\n clrTime\n type=\"time\"\n class=\"time-filter-input\"\n step=\"60\"\n [(ngModel)]=\"toTime\"\n data-testid=\"date-filter-to-time-input\"\n />\n</clr-date-time-container>\n@if (valError) {\n<clr-control-error data-testid=\"date-filter-validation-error\">\n {{ dateValidationError || 'Date \"from\" must be before date \"to\"!' }}\n</clr-control-error>\n} }\n", styles: [".btn-trash{position:absolute;top:15px;right:40px;padding:0}.time-filter-active{width:12rem;margin-top:.5rem}.time-filter-active-input,.time-filter-input{width:4.5rem!important}.filter-selection{margin-top:.5rem}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i1$1.ClrControlError, selector: "clr-control-error" }, { kind: "directive", type: i4$1.ClrDateInput, selector: "[clrDate]", inputs: ["clrDate", "min", "max"], outputs: ["clrDateChange"] }, { kind: "component", type: i4$1.ClrDateContainer, selector: "clr-date-container, clr-date-range-container", inputs: ["clrFirstDayOfWeek", "showActionButtons", "clrPosition", "rangeOptions", "min", "max"] }, { kind: "directive", type: i4$1.ClrDateInputValidator, selector: "[clrDate], [clrStartDate], [clrEndDate]" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ClrDateTimeContainer, selector: "clr-date-time-container" }, { kind: "directive", type: ClrTimeInput, selector: "[clrTime]" }] }); }
14197
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateFilterComponent, deps: [{ token: i1$2.ClrCommonStringsService }, { token: i1$2.ClrDatagridFilter }], target: i0.ɵɵFactoryTarget.Component }); }
14198
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrDateFilterComponent, isStandalone: false, selector: "clr-date-filter", inputs: { timeActive: "timeActive", dateValidationError: "dateValidationError", property: ["clrProperty", "property"], maxPlaceholder: ["clrFilterMaxPlaceholder", "maxPlaceholder"], minPlaceholder: ["clrFilterMinPlaceholder", "minPlaceholder"], value: ["clrFilterValue", "value"] }, outputs: { filterValueChange: "clrFilterValueChange" }, ngImport: i0, template: "<button class=\"btn btn-sm btn-icon btn-link btn-trash\" (click)=\"clearFilter()\" data-testid=\"date-filter-clear-button\">\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n@if (!timeActive) {\n<clr-date-container class=\"filter-selection\">\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n data-testid=\"date-filter-from-date-input\"\n />\n</clr-date-container>\n<clr-date-container class=\"filter-selection\">\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n data-testid=\"date-filter-to-date-input\"\n />\n</clr-date-container>\n@if (valError) {\n<clr-control-error data-testid=\"date-filter-validation-error\">\n {{ dateValidationError || 'Date \"from\" must be before date \"to\"!' }}\n</clr-control-error>\n} } @if (timeActive) {\n<clr-date-time-container class=\"filter-selection\">\n <clr-date-container class=\"time-filter-active\">\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input time-filter-active-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n data-testid=\"date-filter-from-date-input\"\n />\n </clr-date-container>\n <input\n clrTime\n type=\"time\"\n class=\"time-filter-input\"\n step=\"60\"\n [(ngModel)]=\"fromTime\"\n data-testid=\"date-filter-from-time-input\"\n />\n</clr-date-time-container>\n<clr-date-time-container>\n <clr-date-container class=\"time-filter-active\">\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input time-filter-active-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n data-testid=\"date-filter-to-date-input\"\n />\n </clr-date-container>\n <input\n clrTime\n type=\"time\"\n class=\"time-filter-input\"\n step=\"60\"\n [(ngModel)]=\"toTime\"\n data-testid=\"date-filter-to-time-input\"\n />\n</clr-date-time-container>\n@if (valError) {\n<clr-control-error data-testid=\"date-filter-validation-error\">\n {{ dateValidationError || 'Date \"from\" must be before date \"to\"!' }}\n</clr-control-error>\n} }\n", styles: [".btn-trash{position:absolute;top:15px;right:40px;padding:0}.time-filter-active{width:12rem;margin-top:.5rem}.time-filter-active-input,.time-filter-input{width:4.5rem!important}.filter-selection{margin-top:.5rem}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i1$1.ClrControlError, selector: "clr-control-error" }, { kind: "directive", type: i4$1.ClrDateInput, selector: "[clrDate]", inputs: ["clrDate", "min", "max"], outputs: ["clrDateChange"] }, { kind: "component", type: i4$1.ClrDateContainer, selector: "clr-date-container, clr-date-range-container", inputs: ["clrFirstDayOfWeek", "showActionButtons", "clrPosition", "rangeOptions", "min", "max"] }, { kind: "directive", type: i4$1.ClrDateInputValidator, selector: "[clrDate], [clrStartDate], [clrEndDate]" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ClrDateTimeContainer, selector: "clr-date-time-container" }, { kind: "directive", type: ClrTimeInput, selector: "[clrTime]" }] }); }
13884
14199
  }
13885
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateFilterComponent, decorators: [{
14200
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateFilterComponent, decorators: [{
13886
14201
  type: Component,
13887
14202
  args: [{ selector: 'clr-date-filter', standalone: false, template: "<button class=\"btn btn-sm btn-icon btn-link btn-trash\" (click)=\"clearFilter()\" data-testid=\"date-filter-clear-button\">\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n@if (!timeActive) {\n<clr-date-container class=\"filter-selection\">\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n data-testid=\"date-filter-from-date-input\"\n />\n</clr-date-container>\n<clr-date-container class=\"filter-selection\">\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n data-testid=\"date-filter-to-date-input\"\n />\n</clr-date-container>\n@if (valError) {\n<clr-control-error data-testid=\"date-filter-validation-error\">\n {{ dateValidationError || 'Date \"from\" must be before date \"to\"!' }}\n</clr-control-error>\n} } @if (timeActive) {\n<clr-date-time-container class=\"filter-selection\">\n <clr-date-container class=\"time-filter-active\">\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input time-filter-active-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n data-testid=\"date-filter-from-date-input\"\n />\n </clr-date-container>\n <input\n clrTime\n type=\"time\"\n class=\"time-filter-input\"\n step=\"60\"\n [(ngModel)]=\"fromTime\"\n data-testid=\"date-filter-from-time-input\"\n />\n</clr-date-time-container>\n<clr-date-time-container>\n <clr-date-container class=\"time-filter-active\">\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input time-filter-active-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n data-testid=\"date-filter-to-date-input\"\n />\n </clr-date-container>\n <input\n clrTime\n type=\"time\"\n class=\"time-filter-input\"\n step=\"60\"\n [(ngModel)]=\"toTime\"\n data-testid=\"date-filter-to-time-input\"\n />\n</clr-date-time-container>\n@if (valError) {\n<clr-control-error data-testid=\"date-filter-validation-error\">\n {{ dateValidationError || 'Date \"from\" must be before date \"to\"!' }}\n</clr-control-error>\n} }\n", styles: [".btn-trash{position:absolute;top:15px;right:40px;padding:0}.time-filter-active{width:12rem;margin-top:.5rem}.time-filter-active-input,.time-filter-input{width:4.5rem!important}.filter-selection{margin-top:.5rem}\n"] }]
13888
14203
  }], ctorParameters: () => [{ type: i1$2.ClrCommonStringsService }, { type: i1$2.ClrDatagridFilter }], propDecorators: { timeActive: [{
@@ -13907,11 +14222,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
13907
14222
  }] } });
13908
14223
 
13909
14224
  class ClrDateFilterModule {
13910
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13911
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrDateFilterModule, declarations: [ClrDateFilterComponent], imports: [ClarityModule, CommonModule, FormsModule, ClrDateTimeModule, ClrFormModule], exports: [ClrDateFilterComponent] }); }
13912
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateFilterModule, imports: [ClarityModule, CommonModule, FormsModule, ClrDateTimeModule, ClrFormModule] }); }
14225
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
14226
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrDateFilterModule, declarations: [ClrDateFilterComponent], imports: [ClarityModule, CommonModule, FormsModule, ClrDateTimeModule, ClrFormModule], exports: [ClrDateFilterComponent] }); }
14227
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateFilterModule, imports: [ClarityModule, CommonModule, FormsModule, ClrDateTimeModule, ClrFormModule] }); }
13913
14228
  }
13914
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDateFilterModule, decorators: [{
14229
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDateFilterModule, decorators: [{
13915
14230
  type: NgModule,
13916
14231
  args: [{
13917
14232
  imports: [ClarityModule, CommonModule, FormsModule, ClrDateTimeModule, ClrFormModule],
@@ -14100,10 +14415,10 @@ class ClrDatepickerComponent {
14100
14415
  focus() {
14101
14416
  this.inputElm.nativeElement.focus();
14102
14417
  }
14103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14104
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrDatepickerComponent, isStandalone: false, selector: "clr-datepicker", inputs: { value: "value", label: "label", minDate: "minDate", maxDate: "maxDate", timeSelection: "timeSelection" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "inputElm", first: true, predicate: ["inputElm"], descendants: true }], ngImport: i0, template: "<clr-date-container>\n <label data-testid=\"datepicker-label\">{{ this.label }}</label>\n <input\n #inputElm\n clrDate\n [(clrDate)]=\"this.date\"\n [min]=\"this.minDateAttr\"\n [max]=\"this.maxDateAttr\"\n data-testid=\"datepicker-input\"\n />\n</clr-date-container>\n", dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i4$1.ClrDateInput, selector: "[clrDate]", inputs: ["clrDate", "min", "max"], outputs: ["clrDateChange"] }, { kind: "component", type: i4$1.ClrDateContainer, selector: "clr-date-container, clr-date-range-container", inputs: ["clrFirstDayOfWeek", "showActionButtons", "clrPosition", "rangeOptions", "min", "max"] }, { kind: "directive", type: i4$1.ClrDateInputValidator, selector: "[clrDate], [clrStartDate], [clrEndDate]" }] }); }
14418
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14419
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrDatepickerComponent, isStandalone: false, selector: "clr-datepicker", inputs: { value: "value", label: "label", minDate: "minDate", maxDate: "maxDate", timeSelection: "timeSelection" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "inputElm", first: true, predicate: ["inputElm"], descendants: true }], ngImport: i0, template: "<clr-date-container>\n <label data-testid=\"datepicker-label\">{{ this.label }}</label>\n <input\n #inputElm\n clrDate\n [(clrDate)]=\"this.date\"\n [min]=\"this.minDateAttr\"\n [max]=\"this.maxDateAttr\"\n data-testid=\"datepicker-input\"\n />\n</clr-date-container>\n", dependencies: [{ kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i4$1.ClrDateInput, selector: "[clrDate]", inputs: ["clrDate", "min", "max"], outputs: ["clrDateChange"] }, { kind: "component", type: i4$1.ClrDateContainer, selector: "clr-date-container, clr-date-range-container", inputs: ["clrFirstDayOfWeek", "showActionButtons", "clrPosition", "rangeOptions", "min", "max"] }, { kind: "directive", type: i4$1.ClrDateInputValidator, selector: "[clrDate], [clrStartDate], [clrEndDate]" }] }); }
14105
14420
  }
14106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDatepickerComponent, decorators: [{
14421
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDatepickerComponent, decorators: [{
14107
14422
  type: Component,
14108
14423
  args: [{ selector: 'clr-datepicker', standalone: false, template: "<clr-date-container>\n <label data-testid=\"datepicker-label\">{{ this.label }}</label>\n <input\n #inputElm\n clrDate\n [(clrDate)]=\"this.date\"\n [min]=\"this.minDateAttr\"\n [max]=\"this.maxDateAttr\"\n data-testid=\"datepicker-input\"\n />\n</clr-date-container>\n" }]
14109
14424
  }], propDecorators: { value: [{
@@ -14176,10 +14491,10 @@ class DaterangeControlStateService {
14176
14491
  this.statusChange.emit(this._invalid);
14177
14492
  }
14178
14493
  }
14179
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeControlStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
14180
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeControlStateService }); }
14494
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeControlStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
14495
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeControlStateService }); }
14181
14496
  }
14182
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeControlStateService, decorators: [{
14497
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeControlStateService, decorators: [{
14183
14498
  type: Injectable
14184
14499
  }] });
14185
14500
 
@@ -14517,10 +14832,10 @@ class DaterangeParsingService {
14517
14832
  }
14518
14833
  return result;
14519
14834
  }
14520
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeParsingService, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
14521
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeParsingService, providedIn: 'root' }); }
14835
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeParsingService, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
14836
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeParsingService, providedIn: 'root' }); }
14522
14837
  }
14523
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeParsingService, decorators: [{
14838
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeParsingService, decorators: [{
14524
14839
  type: Injectable,
14525
14840
  args: [{
14526
14841
  providedIn: 'root',
@@ -14587,10 +14902,10 @@ class DaterangeService {
14587
14902
  this._selectedDaterange.from == null ||
14588
14903
  this._selectedDaterange.to == null);
14589
14904
  }
14590
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
14591
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeService }); }
14905
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
14906
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeService }); }
14592
14907
  }
14593
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DaterangeService, decorators: [{
14908
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: DaterangeService, decorators: [{
14594
14909
  type: Injectable
14595
14910
  }] });
14596
14911
 
@@ -14665,10 +14980,10 @@ class ClrAbstractContainer {
14665
14980
  this.daterangeControlStateService = daterangeControlStateService;
14666
14981
  this.isFormControl = true;
14667
14982
  }
14668
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAbstractContainer, deps: [{ token: i1$2.ClrLayout, optional: true }, { token: DaterangeControlStateService }], target: i0.ɵɵFactoryTarget.Directive }); }
14669
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrAbstractContainer, isStandalone: true, host: { properties: { "class.clr-form-control": "this.isFormControl", "class.clr-row": "this.addLayoutGrid" } }, queries: [{ propertyName: "labelComponent", first: true, predicate: ClrControlLabel, descendants: true }, { propertyName: "controlHelperComponent", first: true, predicate: ClrControlHelper, descendants: true }, { propertyName: "controlErrorComponent", first: true, predicate: ClrControlError, descendants: true }, { propertyName: "controlSuccessComponent", first: true, predicate: ClrControlSuccess, descendants: true }], ngImport: i0 }); }
14983
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAbstractContainer, deps: [{ token: i1$2.ClrLayout, optional: true }, { token: DaterangeControlStateService }], target: i0.ɵɵFactoryTarget.Directive }); }
14984
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrAbstractContainer, isStandalone: true, host: { properties: { "class.clr-form-control": "this.isFormControl", "class.clr-row": "this.addLayoutGrid" } }, queries: [{ propertyName: "labelComponent", first: true, predicate: ClrControlLabel, descendants: true }, { propertyName: "controlHelperComponent", first: true, predicate: ClrControlHelper, descendants: true }, { propertyName: "controlErrorComponent", first: true, predicate: ClrControlError, descendants: true }, { propertyName: "controlSuccessComponent", first: true, predicate: ClrControlSuccess, descendants: true }], ngImport: i0 }); }
14670
14985
  }
14671
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAbstractContainer, decorators: [{
14986
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAbstractContainer, decorators: [{
14672
14987
  type: Directive
14673
14988
  }], ctorParameters: () => [{ type: i1$2.ClrLayout, decorators: [{
14674
14989
  type: Optional
@@ -14963,10 +15278,10 @@ class ClrDaterangepickerDirective {
14963
15278
  }, true);
14964
15279
  }
14965
15280
  }
14966
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangepickerDirective, deps: [{ token: i3.NgControl, self: true }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DaterangeControlStateService }, { token: ControlIdService }, { token: DaterangeService }, { token: DaterangeParsingService }], target: i0.ɵɵFactoryTarget.Directive }); }
14967
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrDaterangepickerDirective, isStandalone: false, selector: "[clrDaterangepicker]", inputs: { min: "min", max: "max", separatorText: "separatorText", placeholder: "placeholder", id: "id", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "change": "onChangeEvent($event.target)", "focus": "focusEvent()", "blur": "blurEvent()" }, properties: { "attr.placeholder": "this.placeholderText", "id": "this.id", "disabled": "this.disabled", "attr.type": "this.inputType", "class.clr-input": "this.inputClass" } }, ngImport: i0 }); }
15281
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangepickerDirective, deps: [{ token: i3.NgControl, self: true }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DaterangeControlStateService }, { token: ControlIdService }, { token: DaterangeService }, { token: DaterangeParsingService }], target: i0.ɵɵFactoryTarget.Directive }); }
15282
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrDaterangepickerDirective, isStandalone: false, selector: "[clrDaterangepicker]", inputs: { min: "min", max: "max", separatorText: "separatorText", placeholder: "placeholder", id: "id", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "change": "onChangeEvent($event.target)", "focus": "focusEvent()", "blur": "blurEvent()" }, properties: { "attr.placeholder": "this.placeholderText", "id": "this.id", "disabled": "this.disabled", "attr.type": "this.inputType", "class.clr-input": "this.inputClass" } }, ngImport: i0 }); }
14968
15283
  }
14969
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangepickerDirective, decorators: [{
15284
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangepickerDirective, decorators: [{
14970
15285
  type: Directive,
14971
15286
  args: [{
14972
15287
  selector: '[clrDaterangepicker]',
@@ -15045,10 +15360,10 @@ class ClrTimepickerComponent {
15045
15360
  focus() {
15046
15361
  this.inputElm.nativeElement.focus();
15047
15362
  }
15048
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTimepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15049
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrTimepickerComponent, isStandalone: false, selector: "clr-timepicker", inputs: { value: "value", activateSeconds: "activateSeconds" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "inputElm", first: true, predicate: ["inputElm"], descendants: true }], ngImport: i0, template: "<clr-input-container class=\"clr-input-time\">\n <label class=\"clr-control-label\">&nbsp;</label>\n <input\n clrInput\n #inputElm\n [(ngModel)]=\"this.time\"\n type=\"time\"\n step=\"{{ activateSeconds ? 1 : 60 }}\"\n data-testid=\"timepicker-input\"\n />\n</clr-input-container>\n", styles: [".clr-input-time{margin-top:0}\n"], dependencies: [{ kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i3$2.ClrInput, selector: "[clrInput]" }, { kind: "component", type: i3$2.ClrInputContainer, selector: "clr-input-container" }] }); }
15363
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTimepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15364
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrTimepickerComponent, isStandalone: false, selector: "clr-timepicker", inputs: { value: "value", activateSeconds: "activateSeconds" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "inputElm", first: true, predicate: ["inputElm"], descendants: true }], ngImport: i0, template: "<clr-input-container class=\"clr-input-time\">\n <label class=\"clr-control-label\">&nbsp;</label>\n <input\n clrInput\n #inputElm\n [(ngModel)]=\"this.time\"\n type=\"time\"\n step=\"{{ activateSeconds ? 1 : 60 }}\"\n data-testid=\"timepicker-input\"\n />\n</clr-input-container>\n", styles: [".clr-input-time{margin-top:0}\n"], dependencies: [{ kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i3$1.ClrInput, selector: "[clrInput]" }, { kind: "component", type: i3$1.ClrInputContainer, selector: "clr-input-container" }] }); }
15050
15365
  }
15051
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrTimepickerComponent, decorators: [{
15366
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrTimepickerComponent, decorators: [{
15052
15367
  type: Component,
15053
15368
  args: [{ selector: 'clr-timepicker', standalone: false, template: "<clr-input-container class=\"clr-input-time\">\n <label class=\"clr-control-label\">&nbsp;</label>\n <input\n clrInput\n #inputElm\n [(ngModel)]=\"this.time\"\n type=\"time\"\n step=\"{{ activateSeconds ? 1 : 60 }}\"\n data-testid=\"timepicker-input\"\n />\n</clr-input-container>\n", styles: [".clr-input-time{margin-top:0}\n"] }]
15054
15369
  }], ctorParameters: () => [], propDecorators: { value: [{
@@ -15283,10 +15598,10 @@ class ClrDaterangepickerContainerComponent extends ClrAbstractContainer {
15283
15598
  toTime: value,
15284
15599
  });
15285
15600
  }
15286
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangepickerContainerComponent, deps: [{ token: i1$2.ClrPopoverService }, { token: i1$2.ClrCommonStringsService }, { token: i1$2.ClrLayout, optional: true }, { token: DaterangeControlStateService }, { token: DaterangeService }, { token: DaterangeParsingService }], target: i0.ɵɵFactoryTarget.Component }); }
15287
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrDaterangepickerContainerComponent, isStandalone: false, selector: "clr-daterangepicker-container", inputs: { presets: "presets", presetsDateTime: "presetsDateTime", timeSelection: "timeSelection", activateSeconds: "activateSeconds", popoverPosition: ["clrPosition", "popoverPosition"], labelFrom: "labelFrom", labelTo: "labelTo" }, host: { properties: { "class": "this.classes" } }, providers: [ClrPopoverService, DaterangeControlStateService, DaterangeService, ControlIdService], queries: [{ propertyName: "daterangepickerDirective", first: true, predicate: ClrDaterangepickerDirective, descendants: true }], viewQueries: [{ propertyName: "datepickerComponents", predicate: ClrDatepickerComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n@if (!this.labelComponent && this.addLayoutGrid) {\n <label></label>\n}\n<div\n [class.clr-col-12]=\"this.addLayoutGrid\"\n [class.clr-col-md-10]=\"this.addLayoutGrid\"\n [class.clr-error]=\"this.isInvalid\"\n class=\"clr-control-container\"\n>\n <div class=\"clr-input-wrapper\">\n <div\n [class.clr-focus]=\"this.focus\"\n class=\"custom-input-group clr-input-group\"\n [ngClass]=\"_timeSelection ? 'custom-input-group-time' : 'custom-input-group-date'\"\n >\n <ng-content select=\"[clrDaterangepicker]\"></ng-content>\n <button\n [attr.aria-label]=\"this.friendlyDaterange\"\n [disabled]=\"this.disabled\"\n [title]=\"this.friendlyDaterange\"\n class=\"clr-input-group-icon-action\"\n clrPopoverOpenCloseButton\n clrPopoverOrigin\n type=\"button\"\n data-testid=\"daterangepicker-toggle-button\"\n >\n <cds-icon shape=\"calendar\" status=\"info\"></cds-icon>\n </button>\n </div>\n @if (this.isInvalid) {\n <cds-icon aria-hidden=\"true\" class=\"clr-validate-icon\" shape=\"exclamation-circle\" status=\"danger\"></cds-icon>\n }\n @if (!this.isInvalid) {\n <cds-icon aria-hidden=\"true\" class=\"clr-validate-icon\" shape=\"check-circle\" status=\"success\"></cds-icon>\n }\n </div>\n @if (this.showHelper) {\n <ng-content select=\"clr-control-helper\"></ng-content>\n }\n @if (this.showInvalid) {\n <ng-content select=\"clr-control-error\"></ng-content>\n }\n @if (this.showValid) {\n <ng-content select=\"clr-control-success\"></ng-content>\n }\n\n <div\n *clrPopoverContent=\"this.open; at: this.popoverPosition; outsideClickToClose: true; scrollToClose: true\"\n class=\"clr-daterangepicker-container-popup datepicker\"\n data-testid=\"daterangepicker-popup\"\n >\n <button\n class=\"btn btn-sm btn-link close clr-smart-close-button btn-trash\"\n type=\"button\"\n (click)=\"daterangeService.updateSelectedDaterange(null)\"\n data-testid=\"daterangepicker-clear-button\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n [attr.aria-label]=\"this.commonStrings.close\"\n class=\"btn btn-sm btn-link close\"\n clrPopoverCloseButton\n type=\"button\"\n data-testid=\"daterangepicker-close-button\"\n >\n <cds-icon [attr.title]=\"this.commonStrings.close\" aria-hidden=\"true\" shape=\"window-close\"></cds-icon>\n <span class=\"clr-sr-only\">{{ this.commonStrings.close }}</span>\n </button>\n <div class=\"clr-daterangepicker-container-popup-content\">\n <form [clrLayout]=\"'vertical'\" clrForm>\n <div class=\"datetime-container\">\n <clr-datepicker\n (valueChange)=\"this.onDateFromChange($event)\"\n [label]=\"this.labelFrom\"\n [maxDate]=\"this.maxDate\"\n [minDate]=\"this.minDate\"\n [value]=\"this.dateFrom\"\n class=\"clr-datepicker\"\n data-testid=\"daterangepicker-date-from\"\n >\n </clr-datepicker>\n @if (_timeSelection) {\n <clr-timepicker\n class=\"timepicker\"\n (valueChange)=\"this.onTimeFromChange($event)\"\n [value]=\"this.timeFrom\"\n [activateSeconds]=\"_activateSeconds\"\n data-testid=\"daterangepicker-time-from\"\n >\n </clr-timepicker>\n }\n </div>\n <div class=\"datetime-container datetime-container-to\">\n <clr-datepicker\n (valueChange)=\"this.onDateToChange($event)\"\n [label]=\"this.labelTo\"\n [maxDate]=\"this.maxDate\"\n [minDate]=\"this.minDate\"\n [value]=\"this.dateTo\"\n class=\"clr-datepicker\"\n data-testid=\"daterangepicker-date-to\"\n >\n </clr-datepicker>\n @if (_timeSelection) {\n <clr-timepicker\n class=\"timepicker\"\n (valueChange)=\"this.onTimeToChange($event)\"\n [value]=\"this.timeTo\"\n [activateSeconds]=\"_activateSeconds\"\n data-testid=\"daterangepicker-time-to\"\n >\n </clr-timepicker>\n }\n </div>\n </form>\n @if (this.presets?.length > 0) {\n <div class=\"clr-daterangepicker-container-popup-content-presets\">\n @for (preset of this.presets; track preset) {\n <button\n (click)=\"this.applyPreset(preset)\"\n class=\"btn btn-outline btn-sm btn-block\"\n type=\"button\"\n [attr.data-testid]=\"'daterangepicker-preset-' + preset.text\"\n >\n {{ preset.text }}\n </button>\n }\n </div>\n }\n @if (this.presetsDateTime?.length > 0) {\n <div class=\"clr-daterangepicker-container-popup-content-presets\">\n @for (preset of this.presetsDateTime; track preset) {\n <button\n (click)=\"this.applyPresetTime(preset)\"\n class=\"btn btn-outline btn-sm btn-block\"\n type=\"button\"\n [attr.data-testid]=\"'daterangepicker-time-preset-' + preset.text\"\n >\n {{ preset.text }}\n </button>\n }\n </div>\n }\n </div>\n </div>\n</div>\n", styles: [".clr-input-wrapper>.clr-input-group{max-width:fit-content;padding-right:1.5rem}.clr-input-wrapper>.clr-input-group ::ng-deep>.clr-input{width:100%;padding:0 .3rem}.clr-daterangepicker-container-popup.datepicker{padding:0;width:auto;height:auto;display:block}.clr-daterangepicker-container-popup.datepicker .clr-smart-close-button{min-width:1.2rem;padding:0;position:absolute;right:0;margin:5px}.clr-daterangepicker-container-popup.datepicker .btn-trash{padding-right:25px;margin:5px}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content{padding:1rem;display:flex;flex-direction:row}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-form ::ng-deep clr-datepicker:first-of-type ::ng-deep clr-date-container{margin-top:0}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-daterangepicker-container-popup-content-presets{margin-left:.6rem;padding:.3rem}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-daterangepicker-container-popup-content-presets .btn{margin-right:0}.datetime-container{display:flex;flex-direction:row;align-items:flex-start}.datetime-container-to{padding-top:1rem}.timepicker{padding-left:1rem}.timepicker clr-input-container{margin-top:.8rem}.custom-input-group{padding-right:0!important}.custom-input-group .clr-input-group-icon-action{margin-left:.5rem}.custom-input-group input{min-width:10rem!important;width:10rem!important}.custom-input-group-time{min-width:17rem!important}.custom-input-group-date{min-width:12rem!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]):not([formArray]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i1$2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i1$1.ClrForm, selector: "[clrForm]", inputs: ["clrLabelSize"] }, { kind: "directive", type: i1$1.ClrLayout, selector: "[clrForm][clrLayout]", inputs: ["clrLayout"] }, { kind: "directive", type: i2$3.ClrPopoverOrigin, selector: "[clrPopoverOrigin]" }, { kind: "directive", type: i2$3.ClrPopoverCloseButton, selector: "[clrPopoverCloseButton]", outputs: ["clrPopoverOnCloseChange"] }, { kind: "directive", type: i2$3.ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: i2$3.ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentAvailablePositions", "clrPopoverContentType", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose", "clrPopoverContentOrigin"] }, { kind: "component", type: ClrDatepickerComponent, selector: "clr-datepicker", inputs: ["value", "label", "minDate", "maxDate", "timeSelection"], outputs: ["valueChange"] }, { kind: "component", type: ClrTimepickerComponent, selector: "clr-timepicker", inputs: ["value", "activateSeconds"], outputs: ["valueChange"] }] }); }
15601
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangepickerContainerComponent, deps: [{ token: i1$2.ClrPopoverService }, { token: i1$2.ClrCommonStringsService }, { token: i1$2.ClrLayout, optional: true }, { token: DaterangeControlStateService }, { token: DaterangeService }, { token: DaterangeParsingService }], target: i0.ɵɵFactoryTarget.Component }); }
15602
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrDaterangepickerContainerComponent, isStandalone: false, selector: "clr-daterangepicker-container", inputs: { presets: "presets", presetsDateTime: "presetsDateTime", timeSelection: "timeSelection", activateSeconds: "activateSeconds", popoverPosition: ["clrPosition", "popoverPosition"], labelFrom: "labelFrom", labelTo: "labelTo" }, host: { properties: { "class": "this.classes" } }, providers: [ClrPopoverService, DaterangeControlStateService, DaterangeService, ControlIdService], queries: [{ propertyName: "daterangepickerDirective", first: true, predicate: ClrDaterangepickerDirective, descendants: true }], viewQueries: [{ propertyName: "datepickerComponents", predicate: ClrDatepickerComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n@if (!this.labelComponent && this.addLayoutGrid) {\n <label></label>\n}\n<div\n [class.clr-col-12]=\"this.addLayoutGrid\"\n [class.clr-col-md-10]=\"this.addLayoutGrid\"\n [class.clr-error]=\"this.isInvalid\"\n class=\"clr-control-container\"\n>\n <div class=\"clr-input-wrapper\">\n <div\n [class.clr-focus]=\"this.focus\"\n class=\"custom-input-group clr-input-group\"\n [ngClass]=\"_timeSelection ? 'custom-input-group-time' : 'custom-input-group-date'\"\n >\n <ng-content select=\"[clrDaterangepicker]\"></ng-content>\n <button\n [attr.aria-label]=\"this.friendlyDaterange\"\n [disabled]=\"this.disabled\"\n [title]=\"this.friendlyDaterange\"\n class=\"clr-input-group-icon-action\"\n clrPopoverOpenCloseButton\n clrPopoverOrigin\n type=\"button\"\n data-testid=\"daterangepicker-toggle-button\"\n >\n <cds-icon shape=\"calendar\" status=\"info\"></cds-icon>\n </button>\n </div>\n @if (this.isInvalid) {\n <cds-icon aria-hidden=\"true\" class=\"clr-validate-icon\" shape=\"exclamation-circle\" status=\"danger\"></cds-icon>\n }\n @if (!this.isInvalid) {\n <cds-icon aria-hidden=\"true\" class=\"clr-validate-icon\" shape=\"check-circle\" status=\"success\"></cds-icon>\n }\n </div>\n @if (this.showHelper) {\n <ng-content select=\"clr-control-helper\"></ng-content>\n }\n @if (this.showInvalid) {\n <ng-content select=\"clr-control-error\"></ng-content>\n }\n @if (this.showValid) {\n <ng-content select=\"clr-control-success\"></ng-content>\n }\n\n <div\n *clrPopoverContent=\"this.open; at: this.popoverPosition; outsideClickToClose: true; scrollToClose: true\"\n class=\"clr-daterangepicker-container-popup datepicker\"\n data-testid=\"daterangepicker-popup\"\n >\n <button\n class=\"btn btn-sm btn-link close clr-smart-close-button btn-trash\"\n type=\"button\"\n (click)=\"daterangeService.updateSelectedDaterange(null)\"\n data-testid=\"daterangepicker-clear-button\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n [attr.aria-label]=\"this.commonStrings.close\"\n class=\"btn btn-sm btn-link close\"\n clrPopoverCloseButton\n type=\"button\"\n data-testid=\"daterangepicker-close-button\"\n >\n <cds-icon [attr.title]=\"this.commonStrings.close\" aria-hidden=\"true\" shape=\"window-close\"></cds-icon>\n <span class=\"clr-sr-only\">{{ this.commonStrings.close }}</span>\n </button>\n <div class=\"clr-daterangepicker-container-popup-content\">\n <form [clrLayout]=\"'vertical'\" clrForm>\n <div class=\"datetime-container\">\n <clr-datepicker\n (valueChange)=\"this.onDateFromChange($event)\"\n [label]=\"this.labelFrom\"\n [maxDate]=\"this.maxDate\"\n [minDate]=\"this.minDate\"\n [value]=\"this.dateFrom\"\n class=\"clr-datepicker\"\n data-testid=\"daterangepicker-date-from\"\n >\n </clr-datepicker>\n @if (_timeSelection) {\n <clr-timepicker\n class=\"timepicker\"\n (valueChange)=\"this.onTimeFromChange($event)\"\n [value]=\"this.timeFrom\"\n [activateSeconds]=\"_activateSeconds\"\n data-testid=\"daterangepicker-time-from\"\n >\n </clr-timepicker>\n }\n </div>\n <div class=\"datetime-container datetime-container-to\">\n <clr-datepicker\n (valueChange)=\"this.onDateToChange($event)\"\n [label]=\"this.labelTo\"\n [maxDate]=\"this.maxDate\"\n [minDate]=\"this.minDate\"\n [value]=\"this.dateTo\"\n class=\"clr-datepicker\"\n data-testid=\"daterangepicker-date-to\"\n >\n </clr-datepicker>\n @if (_timeSelection) {\n <clr-timepicker\n class=\"timepicker\"\n (valueChange)=\"this.onTimeToChange($event)\"\n [value]=\"this.timeTo\"\n [activateSeconds]=\"_activateSeconds\"\n data-testid=\"daterangepicker-time-to\"\n >\n </clr-timepicker>\n }\n </div>\n </form>\n @if (this.presets?.length > 0) {\n <div class=\"clr-daterangepicker-container-popup-content-presets\">\n @for (preset of this.presets; track preset) {\n <button\n (click)=\"this.applyPreset(preset)\"\n class=\"btn btn-outline btn-sm btn-block\"\n type=\"button\"\n [attr.data-testid]=\"'daterangepicker-preset-' + preset.text\"\n >\n {{ preset.text }}\n </button>\n }\n </div>\n }\n @if (this.presetsDateTime?.length > 0) {\n <div class=\"clr-daterangepicker-container-popup-content-presets\">\n @for (preset of this.presetsDateTime; track preset) {\n <button\n (click)=\"this.applyPresetTime(preset)\"\n class=\"btn btn-outline btn-sm btn-block\"\n type=\"button\"\n [attr.data-testid]=\"'daterangepicker-time-preset-' + preset.text\"\n >\n {{ preset.text }}\n </button>\n }\n </div>\n }\n </div>\n </div>\n</div>\n", styles: [".clr-input-wrapper>.clr-input-group{max-width:fit-content;padding-right:1.5rem}.clr-input-wrapper>.clr-input-group ::ng-deep>.clr-input{width:100%;padding:0 .3rem}.clr-daterangepicker-container-popup.datepicker{padding:0;width:auto;height:auto;display:block}.clr-daterangepicker-container-popup.datepicker .clr-smart-close-button{min-width:1.2rem;padding:0;position:absolute;right:0;margin:5px}.clr-daterangepicker-container-popup.datepicker .btn-trash{padding-right:25px;margin:5px}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content{padding:1rem;display:flex;flex-direction:row}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-form ::ng-deep clr-datepicker:first-of-type ::ng-deep clr-date-container{margin-top:0}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-daterangepicker-container-popup-content-presets{margin-left:.6rem;padding:.3rem}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-daterangepicker-container-popup-content-presets .btn{margin-right:0}.datetime-container{display:flex;flex-direction:row;align-items:flex-start}.datetime-container-to{padding-top:1rem}.timepicker{padding-left:1rem}.timepicker clr-input-container{margin-top:.8rem}.custom-input-group{padding-right:0!important}.custom-input-group .clr-input-group-icon-action{margin-left:.5rem}.custom-input-group input{min-width:10rem!important;width:10rem!important}.custom-input-group-time{min-width:17rem!important}.custom-input-group-date{min-width:12rem!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]):not([formArray]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i1$2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i1$1.ClrControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i1$1.ClrForm, selector: "[clrForm]", inputs: ["clrLabelSize"] }, { kind: "directive", type: i1$1.ClrLayout, selector: "[clrForm][clrLayout]", inputs: ["clrLayout"] }, { kind: "directive", type: i2$4.ClrPopoverOrigin, selector: "[clrPopoverOrigin]" }, { kind: "directive", type: i2$4.ClrPopoverCloseButton, selector: "[clrPopoverCloseButton]", outputs: ["clrPopoverOnCloseChange"] }, { kind: "directive", type: i2$4.ClrPopoverOpenCloseButton, selector: "[clrPopoverOpenCloseButton]", outputs: ["clrPopoverOpenCloseChange"] }, { kind: "directive", type: i2$4.ClrPopoverContent, selector: "[clrPopoverContent]", inputs: ["clrPopoverContent", "clrPopoverContentAt", "clrPopoverContentAvailablePositions", "clrPopoverContentType", "clrPopoverContentOutsideClickToClose", "clrPopoverContentScrollToClose", "clrPopoverContentOrigin"] }, { kind: "component", type: ClrDatepickerComponent, selector: "clr-datepicker", inputs: ["value", "label", "minDate", "maxDate", "timeSelection"], outputs: ["valueChange"] }, { kind: "component", type: ClrTimepickerComponent, selector: "clr-timepicker", inputs: ["value", "activateSeconds"], outputs: ["valueChange"] }] }); }
15288
15603
  }
15289
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangepickerContainerComponent, decorators: [{
15604
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangepickerContainerComponent, decorators: [{
15290
15605
  type: Component,
15291
15606
  args: [{ selector: 'clr-daterangepicker-container', providers: [ClrPopoverService, DaterangeControlStateService, DaterangeService, ControlIdService], standalone: false, template: "<ng-content select=\"label\"></ng-content>\n@if (!this.labelComponent && this.addLayoutGrid) {\n <label></label>\n}\n<div\n [class.clr-col-12]=\"this.addLayoutGrid\"\n [class.clr-col-md-10]=\"this.addLayoutGrid\"\n [class.clr-error]=\"this.isInvalid\"\n class=\"clr-control-container\"\n>\n <div class=\"clr-input-wrapper\">\n <div\n [class.clr-focus]=\"this.focus\"\n class=\"custom-input-group clr-input-group\"\n [ngClass]=\"_timeSelection ? 'custom-input-group-time' : 'custom-input-group-date'\"\n >\n <ng-content select=\"[clrDaterangepicker]\"></ng-content>\n <button\n [attr.aria-label]=\"this.friendlyDaterange\"\n [disabled]=\"this.disabled\"\n [title]=\"this.friendlyDaterange\"\n class=\"clr-input-group-icon-action\"\n clrPopoverOpenCloseButton\n clrPopoverOrigin\n type=\"button\"\n data-testid=\"daterangepicker-toggle-button\"\n >\n <cds-icon shape=\"calendar\" status=\"info\"></cds-icon>\n </button>\n </div>\n @if (this.isInvalid) {\n <cds-icon aria-hidden=\"true\" class=\"clr-validate-icon\" shape=\"exclamation-circle\" status=\"danger\"></cds-icon>\n }\n @if (!this.isInvalid) {\n <cds-icon aria-hidden=\"true\" class=\"clr-validate-icon\" shape=\"check-circle\" status=\"success\"></cds-icon>\n }\n </div>\n @if (this.showHelper) {\n <ng-content select=\"clr-control-helper\"></ng-content>\n }\n @if (this.showInvalid) {\n <ng-content select=\"clr-control-error\"></ng-content>\n }\n @if (this.showValid) {\n <ng-content select=\"clr-control-success\"></ng-content>\n }\n\n <div\n *clrPopoverContent=\"this.open; at: this.popoverPosition; outsideClickToClose: true; scrollToClose: true\"\n class=\"clr-daterangepicker-container-popup datepicker\"\n data-testid=\"daterangepicker-popup\"\n >\n <button\n class=\"btn btn-sm btn-link close clr-smart-close-button btn-trash\"\n type=\"button\"\n (click)=\"daterangeService.updateSelectedDaterange(null)\"\n data-testid=\"daterangepicker-clear-button\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n [attr.aria-label]=\"this.commonStrings.close\"\n class=\"btn btn-sm btn-link close\"\n clrPopoverCloseButton\n type=\"button\"\n data-testid=\"daterangepicker-close-button\"\n >\n <cds-icon [attr.title]=\"this.commonStrings.close\" aria-hidden=\"true\" shape=\"window-close\"></cds-icon>\n <span class=\"clr-sr-only\">{{ this.commonStrings.close }}</span>\n </button>\n <div class=\"clr-daterangepicker-container-popup-content\">\n <form [clrLayout]=\"'vertical'\" clrForm>\n <div class=\"datetime-container\">\n <clr-datepicker\n (valueChange)=\"this.onDateFromChange($event)\"\n [label]=\"this.labelFrom\"\n [maxDate]=\"this.maxDate\"\n [minDate]=\"this.minDate\"\n [value]=\"this.dateFrom\"\n class=\"clr-datepicker\"\n data-testid=\"daterangepicker-date-from\"\n >\n </clr-datepicker>\n @if (_timeSelection) {\n <clr-timepicker\n class=\"timepicker\"\n (valueChange)=\"this.onTimeFromChange($event)\"\n [value]=\"this.timeFrom\"\n [activateSeconds]=\"_activateSeconds\"\n data-testid=\"daterangepicker-time-from\"\n >\n </clr-timepicker>\n }\n </div>\n <div class=\"datetime-container datetime-container-to\">\n <clr-datepicker\n (valueChange)=\"this.onDateToChange($event)\"\n [label]=\"this.labelTo\"\n [maxDate]=\"this.maxDate\"\n [minDate]=\"this.minDate\"\n [value]=\"this.dateTo\"\n class=\"clr-datepicker\"\n data-testid=\"daterangepicker-date-to\"\n >\n </clr-datepicker>\n @if (_timeSelection) {\n <clr-timepicker\n class=\"timepicker\"\n (valueChange)=\"this.onTimeToChange($event)\"\n [value]=\"this.timeTo\"\n [activateSeconds]=\"_activateSeconds\"\n data-testid=\"daterangepicker-time-to\"\n >\n </clr-timepicker>\n }\n </div>\n </form>\n @if (this.presets?.length > 0) {\n <div class=\"clr-daterangepicker-container-popup-content-presets\">\n @for (preset of this.presets; track preset) {\n <button\n (click)=\"this.applyPreset(preset)\"\n class=\"btn btn-outline btn-sm btn-block\"\n type=\"button\"\n [attr.data-testid]=\"'daterangepicker-preset-' + preset.text\"\n >\n {{ preset.text }}\n </button>\n }\n </div>\n }\n @if (this.presetsDateTime?.length > 0) {\n <div class=\"clr-daterangepicker-container-popup-content-presets\">\n @for (preset of this.presetsDateTime; track preset) {\n <button\n (click)=\"this.applyPresetTime(preset)\"\n class=\"btn btn-outline btn-sm btn-block\"\n type=\"button\"\n [attr.data-testid]=\"'daterangepicker-time-preset-' + preset.text\"\n >\n {{ preset.text }}\n </button>\n }\n </div>\n }\n </div>\n </div>\n</div>\n", styles: [".clr-input-wrapper>.clr-input-group{max-width:fit-content;padding-right:1.5rem}.clr-input-wrapper>.clr-input-group ::ng-deep>.clr-input{width:100%;padding:0 .3rem}.clr-daterangepicker-container-popup.datepicker{padding:0;width:auto;height:auto;display:block}.clr-daterangepicker-container-popup.datepicker .clr-smart-close-button{min-width:1.2rem;padding:0;position:absolute;right:0;margin:5px}.clr-daterangepicker-container-popup.datepicker .btn-trash{padding-right:25px;margin:5px}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content{padding:1rem;display:flex;flex-direction:row}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-form ::ng-deep clr-datepicker:first-of-type ::ng-deep clr-date-container{margin-top:0}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-daterangepicker-container-popup-content-presets{margin-left:.6rem;padding:.3rem}.clr-daterangepicker-container-popup.datepicker .clr-daterangepicker-container-popup-content .clr-daterangepicker-container-popup-content-presets .btn{margin-right:0}.datetime-container{display:flex;flex-direction:row;align-items:flex-start}.datetime-container-to{padding-top:1rem}.timepicker{padding-left:1rem}.timepicker clr-input-container{margin-top:.8rem}.custom-input-group{padding-right:0!important}.custom-input-group .clr-input-group-icon-action{margin-left:.5rem}.custom-input-group input{min-width:10rem!important;width:10rem!important}.custom-input-group-time{min-width:17rem!important}.custom-input-group-date{min-width:12rem!important}\n"] }]
15292
15607
  }], ctorParameters: () => [{ type: i1$2.ClrPopoverService }, { type: i1$2.ClrCommonStringsService }, { type: i1$2.ClrLayout, decorators: [{
@@ -15389,10 +15704,10 @@ class ClrIfDaterangeErrorDirective {
15389
15704
  this.displayedContent = false;
15390
15705
  }
15391
15706
  }
15392
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIfDaterangeErrorDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: DaterangeControlStateService, optional: true }, { token: ClrDaterangepickerContainerComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
15393
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrIfDaterangeErrorDirective, isStandalone: false, selector: "[clrIfDaterangeError]", inputs: { clrIfDaterangeError: "clrIfDaterangeError" }, ngImport: i0 }); }
15707
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIfDaterangeErrorDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: DaterangeControlStateService, optional: true }, { token: ClrDaterangepickerContainerComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
15708
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrIfDaterangeErrorDirective, isStandalone: false, selector: "[clrIfDaterangeError]", inputs: { clrIfDaterangeError: "clrIfDaterangeError" }, ngImport: i0 }); }
15394
15709
  }
15395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIfDaterangeErrorDirective, decorators: [{
15710
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIfDaterangeErrorDirective, decorators: [{
15396
15711
  type: Directive,
15397
15712
  args: [{
15398
15713
  selector: '[clrIfDaterangeError]',
@@ -15458,8 +15773,8 @@ class ClrDaterangeMaxValidator {
15458
15773
  }
15459
15774
  return null;
15460
15775
  }
15461
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangeMaxValidator, deps: [{ token: DaterangeService, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
15462
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrDaterangeMaxValidator, isStandalone: false, selector: "[clrDaterangepicker][max], [clrDaterangeMax]", inputs: { active: ["clrDaterangeMax", "active"] }, providers: [
15776
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangeMaxValidator, deps: [{ token: DaterangeService, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
15777
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrDaterangeMaxValidator, isStandalone: false, selector: "[clrDaterangepicker][max], [clrDaterangeMax]", inputs: { active: ["clrDaterangeMax", "active"] }, providers: [
15463
15778
  {
15464
15779
  provide: NG_VALIDATORS,
15465
15780
  useExisting: forwardRef(() => ClrDaterangeMaxValidator),
@@ -15467,7 +15782,7 @@ class ClrDaterangeMaxValidator {
15467
15782
  },
15468
15783
  ], ngImport: i0 }); }
15469
15784
  }
15470
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangeMaxValidator, decorators: [{
15785
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangeMaxValidator, decorators: [{
15471
15786
  type: Directive,
15472
15787
  args: [{
15473
15788
  selector: '[clrDaterangepicker][max], [clrDaterangeMax]',
@@ -15539,8 +15854,8 @@ class ClrDaterangeMinValidator {
15539
15854
  }
15540
15855
  return null;
15541
15856
  }
15542
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangeMinValidator, deps: [{ token: DaterangeService, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
15543
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrDaterangeMinValidator, isStandalone: false, selector: "[clrDaterangepicker][min], [clrDaterangeMin]", inputs: { active: ["clrDaterangeMin", "active"] }, providers: [
15857
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangeMinValidator, deps: [{ token: DaterangeService, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
15858
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrDaterangeMinValidator, isStandalone: false, selector: "[clrDaterangepicker][min], [clrDaterangeMin]", inputs: { active: ["clrDaterangeMin", "active"] }, providers: [
15544
15859
  {
15545
15860
  provide: NG_VALIDATORS,
15546
15861
  useExisting: forwardRef(() => ClrDaterangeMinValidator),
@@ -15548,7 +15863,7 @@ class ClrDaterangeMinValidator {
15548
15863
  },
15549
15864
  ], ngImport: i0 }); }
15550
15865
  }
15551
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangeMinValidator, decorators: [{
15866
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangeMinValidator, decorators: [{
15552
15867
  type: Directive,
15553
15868
  args: [{
15554
15869
  selector: '[clrDaterangepicker][min], [clrDaterangeMin]',
@@ -15621,8 +15936,8 @@ class ClrDaterangeOrderValidator {
15621
15936
  }
15622
15937
  return null;
15623
15938
  }
15624
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangeOrderValidator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15625
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrDaterangeOrderValidator, isStandalone: false, selector: "[clrDaterangepicker], [clrDaterangeOrder]", inputs: { active: ["clrDaterangeOrder", "active"] }, providers: [
15939
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangeOrderValidator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15940
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrDaterangeOrderValidator, isStandalone: false, selector: "[clrDaterangepicker], [clrDaterangeOrder]", inputs: { active: ["clrDaterangeOrder", "active"] }, providers: [
15626
15941
  {
15627
15942
  provide: NG_VALIDATORS,
15628
15943
  useExisting: forwardRef(() => ClrDaterangeOrderValidator),
@@ -15630,7 +15945,7 @@ class ClrDaterangeOrderValidator {
15630
15945
  },
15631
15946
  ], ngImport: i0 }); }
15632
15947
  }
15633
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangeOrderValidator, decorators: [{
15948
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangeOrderValidator, decorators: [{
15634
15949
  type: Directive,
15635
15950
  args: [{
15636
15951
  selector: '[clrDaterangepicker], [clrDaterangeOrder]',
@@ -15690,8 +16005,8 @@ class ClrDaterangeRequiredValidator {
15690
16005
  }
15691
16006
  return null;
15692
16007
  }
15693
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangeRequiredValidator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15694
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrDaterangeRequiredValidator, isStandalone: false, selector: "[clrDaterangepicker][required], [clrDaterangeRequired]", inputs: { active: ["clrDaterangeRequired", "active"] }, providers: [
16008
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangeRequiredValidator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16009
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrDaterangeRequiredValidator, isStandalone: false, selector: "[clrDaterangepicker][required], [clrDaterangeRequired]", inputs: { active: ["clrDaterangeRequired", "active"] }, providers: [
15695
16010
  {
15696
16011
  provide: NG_VALIDATORS,
15697
16012
  useExisting: forwardRef(() => ClrDaterangeRequiredValidator),
@@ -15699,7 +16014,7 @@ class ClrDaterangeRequiredValidator {
15699
16014
  },
15700
16015
  ], ngImport: i0 }); }
15701
16016
  }
15702
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangeRequiredValidator, decorators: [{
16017
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangeRequiredValidator, decorators: [{
15703
16018
  type: Directive,
15704
16019
  args: [{
15705
16020
  selector: '[clrDaterangepicker][required], [clrDaterangeRequired]',
@@ -15718,8 +16033,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
15718
16033
  }] } });
15719
16034
 
15720
16035
  class ClrDaterangepickerModule {
15721
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
15722
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangepickerModule, declarations: [ClrDatepickerComponent,
16036
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16037
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangepickerModule, declarations: [ClrDatepickerComponent,
15723
16038
  ClrDaterangeMaxValidator,
15724
16039
  ClrDaterangeMinValidator,
15725
16040
  ClrDaterangeOrderValidator,
@@ -15734,9 +16049,9 @@ class ClrDaterangepickerModule {
15734
16049
  ClrDaterangepickerDirective,
15735
16050
  ClrDaterangeRequiredValidator,
15736
16051
  ClrIfDaterangeErrorDirective] }); }
15737
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangepickerModule, imports: [CommonModule, FormsModule, ClarityModule, ClrDatepickerModule, ClrIcon] }); }
16052
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangepickerModule, imports: [CommonModule, FormsModule, ClarityModule, ClrDatepickerModule, ClrIcon] }); }
15738
16053
  }
15739
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrDaterangepickerModule, decorators: [{
16054
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrDaterangepickerModule, decorators: [{
15740
16055
  type: NgModule,
15741
16056
  args: [{
15742
16057
  imports: [CommonModule, FormsModule, ClarityModule, ClrDatepickerModule, ClrIcon],
@@ -15833,10 +16148,10 @@ class ClrIfWarning {
15833
16148
  this.renderer.addClass(this.formContainer, 'clr-warning');
15834
16149
  }
15835
16150
  }
15836
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIfWarning, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
15837
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrIfWarning, isStandalone: false, selector: "[clrIfWarning]", inputs: { clrIfWarning: "clrIfWarning" }, ngImport: i0 }); }
16151
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIfWarning, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
16152
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrIfWarning, isStandalone: false, selector: "[clrIfWarning]", inputs: { clrIfWarning: "clrIfWarning" }, ngImport: i0 }); }
15838
16153
  }
15839
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIfWarning, decorators: [{
16154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIfWarning, decorators: [{
15840
16155
  type: Directive,
15841
16156
  args: [{
15842
16157
  selector: '[clrIfWarning]',
@@ -15848,11 +16163,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
15848
16163
 
15849
16164
  ClarityIcons.addIcons(exclamationTriangleIcon);
15850
16165
  class ClrIfWarningModule {
15851
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIfWarningModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
15852
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrIfWarningModule, declarations: [ClrIfWarning], imports: [CommonModule], exports: [ClrIfWarning] }); }
15853
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIfWarningModule, imports: [CommonModule] }); }
16166
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIfWarningModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16167
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrIfWarningModule, declarations: [ClrIfWarning], imports: [CommonModule], exports: [ClrIfWarning] }); }
16168
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIfWarningModule, imports: [CommonModule] }); }
15854
16169
  }
15855
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrIfWarningModule, decorators: [{
16170
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrIfWarningModule, decorators: [{
15856
16171
  type: NgModule,
15857
16172
  args: [{
15858
16173
  declarations: [ClrIfWarning],
@@ -15902,8 +16217,8 @@ class ClrActionPanel {
15902
16217
  // this event is used by the tree table to adjust the colomns width
15903
16218
  window.dispatchEvent(new Event('resize'));
15904
16219
  }
15905
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15906
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrActionPanel, isStandalone: false, selector: "clr-action-panel", outputs: { opened: "clrOpened", closed: "clrClosed" }, host: { properties: { "class.action-panel": "true" } }, ngImport: i0, template: "@if (_open) {\n<div data-testid=\"action-panel\" [@slideIn] class=\"action-panel-action-wrapper\" (@slideIn.done)=\"resizeWindow()\">\n <ng-content select=\"[clr-action-panel-content]\"></ng-content>\n</div>\n<div\n data-testid=\"action-panel-backdrop\"\n [@fade]\n class=\"action-panel-backdrop\"\n (click)=\"close()\"\n (@fade.done)=\"resizeWindow()\"\n></div>\n}\n", animations: [
16220
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16221
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrActionPanel, isStandalone: false, selector: "clr-action-panel", outputs: { opened: "clrOpened", closed: "clrClosed" }, host: { properties: { "class.action-panel": "true" } }, ngImport: i0, template: "@if (_open) {\n<div data-testid=\"action-panel\" [@slideIn] class=\"action-panel-action-wrapper\" (@slideIn.done)=\"resizeWindow()\">\n <ng-content select=\"[clr-action-panel-content]\"></ng-content>\n</div>\n<div\n data-testid=\"action-panel-backdrop\"\n [@fade]\n class=\"action-panel-backdrop\"\n (click)=\"close()\"\n (@fade.done)=\"resizeWindow()\"\n></div>\n}\n", animations: [
15907
16222
  trigger('slideIn', [
15908
16223
  transition(':enter', [style({ opacity: 0, width: 0 }), animate('0.2s', style({ opacity: 1, width: '*' }))]),
15909
16224
  transition(':leave', [style({ opacity: 1, width: '*' }), animate('0.2s', style({ opacity: 0, width: 0 }))]),
@@ -15914,7 +16229,7 @@ class ClrActionPanel {
15914
16229
  ]),
15915
16230
  ] }); }
15916
16231
  }
15917
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanel, decorators: [{
16232
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanel, decorators: [{
15918
16233
  type: Component,
15919
16234
  args: [{ selector: 'clr-action-panel', animations: [
15920
16235
  trigger('slideIn', [
@@ -15942,8 +16257,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
15942
16257
  * The full license information can be found in LICENSE in the root directory of this project.
15943
16258
  */
15944
16259
  class ClrActionPanelContainer {
15945
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelContainer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15946
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrActionPanelContainer, isStandalone: false, selector: "clr-action-panel-container", host: { properties: { "class.content-container": "true", "class.action-panel-container": "true" } }, ngImport: i0, template: `
16260
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelContainer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16261
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrActionPanelContainer, isStandalone: false, selector: "clr-action-panel-container", host: { properties: { "class.content-container": "true", "class.action-panel-container": "true" } }, ngImport: i0, template: `
15947
16262
  <div class="action-panel-outer-wrapper" data-testid="action-panel-container">
15948
16263
  <ng-content select="clr-action-panel-container-content"></ng-content>
15949
16264
  <ng-content select="clr-action-panel-container-footer"></ng-content>
@@ -15951,7 +16266,7 @@ class ClrActionPanelContainer {
15951
16266
  <ng-content select="clr-action-panel"></ng-content>
15952
16267
  `, isInline: true }); }
15953
16268
  }
15954
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelContainer, decorators: [{
16269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelContainer, decorators: [{
15955
16270
  type: Component,
15956
16271
  args: [{
15957
16272
  selector: 'clr-action-panel-container',
@@ -15976,10 +16291,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
15976
16291
  * The full license information can be found in LICENSE in the root directory of this project.
15977
16292
  */
15978
16293
  class ClrActionPanelContainerContent {
15979
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelContainerContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15980
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrActionPanelContainerContent, isStandalone: false, selector: "clr-action-panel-container-content", host: { properties: { "class.content-area": "true" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true }); }
16294
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelContainerContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16295
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrActionPanelContainerContent, isStandalone: false, selector: "clr-action-panel-container-content", host: { properties: { "class.content-area": "true" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true }); }
15981
16296
  }
15982
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelContainerContent, decorators: [{
16297
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelContainerContent, decorators: [{
15983
16298
  type: Component,
15984
16299
  args: [{
15985
16300
  selector: 'clr-action-panel-container-content',
@@ -15997,10 +16312,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
15997
16312
  * The full license information can be found in LICENSE in the root directory of this project.
15998
16313
  */
15999
16314
  class ClrActionPanelContainerFooter {
16000
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelContainerFooter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16001
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: ClrActionPanelContainerFooter, isStandalone: false, selector: "clr-action-panel-container-footer", host: { properties: { "class.content-area-footer": "true" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true }); }
16315
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelContainerFooter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16316
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ClrActionPanelContainerFooter, isStandalone: false, selector: "clr-action-panel-container-footer", host: { properties: { "class.content-area-footer": "true" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true }); }
16002
16317
  }
16003
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelContainerFooter, decorators: [{
16318
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelContainerFooter, decorators: [{
16004
16319
  type: Component,
16005
16320
  args: [{
16006
16321
  selector: 'clr-action-panel-container-footer',
@@ -16018,14 +16333,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
16018
16333
  * The full license information can be found in LICENSE in the root directory of this project.
16019
16334
  */
16020
16335
  class ClrActionPanelModule {
16021
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16022
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelModule, declarations: [ClrActionPanel,
16336
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16337
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelModule, declarations: [ClrActionPanel,
16023
16338
  ClrActionPanelContainer,
16024
16339
  ClrActionPanelContainerContent,
16025
16340
  ClrActionPanelContainerFooter], imports: [CommonModule, ClarityModule, FormsModule], exports: [ClrActionPanel, ClrActionPanelContainer, ClrActionPanelContainerContent, ClrActionPanelContainerFooter] }); }
16026
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
16341
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelModule, imports: [CommonModule, ClarityModule, FormsModule] }); }
16027
16342
  }
16028
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrActionPanelModule, decorators: [{
16343
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrActionPanelModule, decorators: [{
16029
16344
  type: NgModule,
16030
16345
  args: [{
16031
16346
  imports: [CommonModule, ClarityModule, FormsModule],
@@ -16171,10 +16486,10 @@ class ClrReadonlyDirective {
16171
16486
  }
16172
16487
  return formattedValue;
16173
16488
  }
16174
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrReadonlyDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
16175
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrReadonlyDirective, isStandalone: false, selector: "[clrReadonly]", inputs: { unitPosition: ["clrUnitPosition", "unitPosition"], property: ["clrReadOnlyProperty", "property"], clrReadOnly: ["clrReadonly", "clrReadOnly"], unit: ["clrUnit", "unit"], decimalPlaces: ["clrDecimalPlaces", "decimalPlaces"], roundValue: ["clrRoundDisplayValue", "roundValue"], autofillDecimals: ["clrAutofillDecimals", "autofillDecimals"], decimalSeparator: ["clrDecimalSep", "decimalSeparator"], groupingSeparator: ["clrGroupingSep", "groupingSeparator"] }, usesOnChanges: true, ngImport: i0 }); }
16489
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrReadonlyDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
16490
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrReadonlyDirective, isStandalone: false, selector: "[clrReadonly]", inputs: { unitPosition: ["clrUnitPosition", "unitPosition"], property: ["clrReadOnlyProperty", "property"], clrReadOnly: ["clrReadonly", "clrReadOnly"], unit: ["clrUnit", "unit"], decimalPlaces: ["clrDecimalPlaces", "decimalPlaces"], roundValue: ["clrRoundDisplayValue", "roundValue"], autofillDecimals: ["clrAutofillDecimals", "autofillDecimals"], decimalSeparator: ["clrDecimalSep", "decimalSeparator"], groupingSeparator: ["clrGroupingSep", "groupingSeparator"] }, usesOnChanges: true, ngImport: i0 }); }
16176
16491
  }
16177
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrReadonlyDirective, decorators: [{
16492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrReadonlyDirective, decorators: [{
16178
16493
  type: Directive,
16179
16494
  args: [{
16180
16495
  selector: '[clrReadonly]',
@@ -16210,11 +16525,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
16210
16525
  }] } });
16211
16526
 
16212
16527
  class ClrReadonlyDirectiveModule {
16213
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrReadonlyDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16214
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrReadonlyDirectiveModule, declarations: [ClrReadonlyDirective], exports: [ClrReadonlyDirective] }); }
16215
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrReadonlyDirectiveModule }); }
16528
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrReadonlyDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16529
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrReadonlyDirectiveModule, declarations: [ClrReadonlyDirective], exports: [ClrReadonlyDirective] }); }
16530
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrReadonlyDirectiveModule }); }
16216
16531
  }
16217
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrReadonlyDirectiveModule, decorators: [{
16532
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrReadonlyDirectiveModule, decorators: [{
16218
16533
  type: NgModule,
16219
16534
  args: [{
16220
16535
  declarations: [ClrReadonlyDirective],
@@ -16247,10 +16562,10 @@ class ClrFocusFirstInvalidFieldDirective {
16247
16562
  parentElement.focus();
16248
16563
  }
16249
16564
  }
16250
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFocusFirstInvalidFieldDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16251
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrFocusFirstInvalidFieldDirective, isStandalone: true, selector: "form[clrFocusFirstInvalidField]", host: { listeners: { "ngSubmit": "onFormSubmit()" } }, ngImport: i0 }); }
16565
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFocusFirstInvalidFieldDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16566
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrFocusFirstInvalidFieldDirective, isStandalone: true, selector: "form[clrFocusFirstInvalidField]", host: { listeners: { "ngSubmit": "onFormSubmit()" } }, ngImport: i0 }); }
16252
16567
  }
16253
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrFocusFirstInvalidFieldDirective, decorators: [{
16568
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrFocusFirstInvalidFieldDirective, decorators: [{
16254
16569
  type: Directive,
16255
16570
  args: [{
16256
16571
  selector: 'form[clrFocusFirstInvalidField]',
@@ -16296,10 +16611,10 @@ class ClrControlEnterSubmitDirective {
16296
16611
  });
16297
16612
  }
16298
16613
  }
16299
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrControlEnterSubmitDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1$2.ClrForm, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
16300
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrControlEnterSubmitDirective, isStandalone: true, selector: "form[clrControlEnterSubmit]", inputs: { tooltipText: ["clrControlEnterSubmit", "tooltipText"] }, host: { listeners: { "window:keydown.control.enter": "submitCtrlEnter($event)" } }, ngImport: i0 }); }
16614
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrControlEnterSubmitDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1$2.ClrForm, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
16615
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrControlEnterSubmitDirective, isStandalone: true, selector: "form[clrControlEnterSubmit]", inputs: { tooltipText: ["clrControlEnterSubmit", "tooltipText"] }, host: { listeners: { "window:keydown.control.enter": "submitCtrlEnter($event)" } }, ngImport: i0 }); }
16301
16616
  }
16302
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrControlEnterSubmitDirective, decorators: [{
16617
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrControlEnterSubmitDirective, decorators: [{
16303
16618
  type: Directive,
16304
16619
  args: [{
16305
16620
  selector: 'form[clrControlEnterSubmit]',
@@ -16441,10 +16756,10 @@ class ClrKeyboardNavCtrlArrowDirective {
16441
16756
  // on the next navigation event, which is intuitive fallback behaviour.
16442
16757
  return -1;
16443
16758
  }
16444
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrKeyboardNavCtrlArrowDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16445
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrKeyboardNavCtrlArrowDirective, isStandalone: true, selector: "[clrKeyboardNavCtrlArrow]", inputs: { clrNavItemSelector: "clrNavItemSelector", clrNavOrientation: "clrNavOrientation", clrNavDisabled: "clrNavDisabled" }, host: { listeners: { "window:keydown": "onWindowKeyDown($event)" } }, ngImport: i0 }); }
16759
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrKeyboardNavCtrlArrowDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16760
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrKeyboardNavCtrlArrowDirective, isStandalone: true, selector: "[clrKeyboardNavCtrlArrow]", inputs: { clrNavItemSelector: "clrNavItemSelector", clrNavOrientation: "clrNavOrientation", clrNavDisabled: "clrNavDisabled" }, host: { listeners: { "window:keydown": "onWindowKeyDown($event)" } }, ngImport: i0 }); }
16446
16761
  }
16447
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrKeyboardNavCtrlArrowDirective, decorators: [{
16762
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrKeyboardNavCtrlArrowDirective, decorators: [{
16448
16763
  type: Directive,
16449
16764
  args: [{
16450
16765
  selector: '[clrKeyboardNavCtrlArrow]',
@@ -16606,10 +16921,10 @@ class ClrKeyboardNavAltMnemonicDirective {
16606
16921
  this.digitBuffer = '';
16607
16922
  this.renderer.removeClass(this.el.nativeElement, MNEMONICS_VISIBLE_CLASS);
16608
16923
  }
16609
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrKeyboardNavAltMnemonicDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16610
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ClrKeyboardNavAltMnemonicDirective, isStandalone: true, selector: "[clrKeyboardNavAltMnemonic]", inputs: { clrNavItemSelector: "clrNavItemSelector", clrNavDisabled: "clrNavDisabled" }, host: { listeners: { "window:keydown": "onWindowKeyDown($event)", "window:keyup": "onWindowKeyUp($event)", "window:blur": "onWindowBlur()" } }, ngImport: i0 }); }
16924
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrKeyboardNavAltMnemonicDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16925
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: ClrKeyboardNavAltMnemonicDirective, isStandalone: true, selector: "[clrKeyboardNavAltMnemonic]", inputs: { clrNavItemSelector: "clrNavItemSelector", clrNavDisabled: "clrNavDisabled" }, host: { listeners: { "window:keydown": "onWindowKeyDown($event)", "window:keyup": "onWindowKeyUp($event)", "window:blur": "onWindowBlur()" } }, ngImport: i0 }); }
16611
16926
  }
16612
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrKeyboardNavAltMnemonicDirective, decorators: [{
16927
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrKeyboardNavAltMnemonicDirective, decorators: [{
16613
16928
  type: Directive,
16614
16929
  args: [{
16615
16930
  selector: '[clrKeyboardNavAltMnemonic]',
@@ -16732,10 +17047,10 @@ class ClrImageCarousel {
16732
17047
  this.closeCarousel.emit();
16733
17048
  }
16734
17049
  }
16735
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrImageCarousel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16736
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrImageCarousel, isStandalone: false, selector: "clr-image-carousel", inputs: { images: { classPropertyName: "images", publicName: "images", isSignal: true, isRequired: false, transformFunction: null }, productName: { classPropertyName: "productName", publicName: "productName", isSignal: true, isRequired: false, transformFunction: null }, initialIndex: { classPropertyName: "initialIndex", publicName: "initialIndex", isSignal: true, isRequired: false, transformFunction: null }, hideHeader: { classPropertyName: "hideHeader", publicName: "hideHeader", isSignal: true, isRequired: false, transformFunction: null }, imageSize: { classPropertyName: "imageSize", publicName: "imageSize", isSignal: true, isRequired: false, transformFunction: null }, thumbnailSize: { classPropertyName: "thumbnailSize", publicName: "thumbnailSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closeCarousel: "closeCarousel" }, host: { listeners: { "document:keydown": "onKeydown($event)" } }, viewQueries: [{ propertyName: "thumbStripRef", first: true, predicate: ["thumbStrip"], descendants: true }], ngImport: i0, template: "<!--\n~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n~ This software is released under MIT license.\n~ The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<div class=\"clr-image-carousel\" data-testid=\"image-carousel\">\n <!-- Header -->\n @if (!hideHeader()) {\n <div class=\"clr-image-carousel__header\">\n <span class=\"clr-image-carousel__title\" data-testid=\"image-carousel-title\">{{ productName() }}</span>\n <button\n class=\"clr-image-carousel__close\"\n (click)=\"closeCarousel.emit()\"\n aria-label=\"Close\"\n data-testid=\"image-carousel-close-button\"\n >\n <cds-icon shape=\"times\"></cds-icon>\n </button>\n </div>\n }\n\n <!-- Spotlight + thumbnails, constrained to image width -->\n <div class=\"clr-image-carousel__content\" [style.width.px]=\"imageSize() > 0 ? imageSize() : null\">\n <!-- Spotlight -->\n <div class=\"clr-image-carousel__spotlight\">\n <div\n class=\"clr-image-carousel__img-wrap\"\n [style.width.px]=\"imageSize() > 0 ? imageSize() : null\"\n [style.height.px]=\"imageSize() > 0 ? imageSize() : null\"\n >\n <button\n class=\"clr-image-carousel__arrow clr-image-carousel__arrow--prev\"\n (click)=\"prev()\"\n aria-label=\"Previous\"\n data-testid=\"image-carousel-prev-button\"\n >\n <cds-icon shape=\"circle-arrow\" direction=\"left\" solid></cds-icon>\n </button>\n\n @if (images().length > 0) {\n <img\n [src]=\"images()[activeIndex()].src\"\n [alt]=\"images()[activeIndex()].alt || ''\"\n class=\"clr-image-carousel__img\"\n data-testid=\"image-carousel-active-image\"\n />\n }\n\n <button\n class=\"clr-image-carousel__arrow clr-image-carousel__arrow--next\"\n (click)=\"next()\"\n aria-label=\"Next\"\n data-testid=\"image-carousel-next-button\"\n >\n <cds-icon shape=\"circle-arrow\" direction=\"right\" solid></cds-icon>\n </button>\n </div>\n </div>\n\n <!-- Thumbnail strip -->\n <div\n class=\"clr-image-carousel__thumbs-wrap\"\n [class.clr-image-carousel__thumbs-wrap--fade-left]=\"showFadeLeft()\"\n [class.clr-image-carousel__thumbs-wrap--fade-right]=\"showFadeRight()\"\n >\n <div\n class=\"clr-image-carousel__thumbs\"\n [class.clr-image-carousel__thumbs--centered]=\"!needsScroll()\"\n (scroll)=\"onThumbStripScroll()\"\n #thumbStrip\n data-testid=\"image-carousel-thumbnails\"\n >\n @for (img of images(); track img; let i = $index) {\n <div\n class=\"clr-image-carousel__thumb\"\n [style.width.px]=\"thumbnailSize()\"\n [style.height.px]=\"thumbnailSize()\"\n [class.clr-image-carousel__thumb--active]=\"i === activeIndex()\"\n (click)=\"setActive(i)\"\n [attr.data-testid]=\"'image-carousel-thumbnail-' + (i)\"\n >\n <img\n [src]=\"img.src\"\n [alt]=\"img.alt || ''\"\n class=\"clr-image-carousel__thumb-img\"\n [attr.data-testid]=\"'image-carousel-thumbnail-image-' + (i)\"\n />\n </div>\n }\n </div>\n </div>\n </div>\n</div>\n", styles: [".clr-image-carousel{display:flex;flex-direction:column;align-items:center;padding:0 24px;box-sizing:border-box;width:100%;background:var(--clr-modal-bg-color, #fff);overflow:hidden}.clr-image-carousel__header{display:flex;align-items:center;justify-content:space-between;height:68px;flex-shrink:0;box-sizing:border-box;align-self:stretch}.clr-image-carousel__title{font-size:14px;font-weight:400;line-height:24px}.clr-image-carousel__close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:inherit}.clr-image-carousel__close cds-icon{--color: currentColor;width:18px;height:18px}.clr-image-carousel__close:hover{opacity:.7}.clr-image-carousel__content{display:flex;flex-direction:column;flex-shrink:0;width:100%}.clr-image-carousel__spotlight{flex-shrink:0;display:flex;align-items:center;justify-content:center}.clr-image-carousel__img-wrap{position:relative;width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:3px}.clr-image-carousel__img{display:block;width:100%;height:100%;object-fit:cover}.clr-image-carousel__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:none;border:none;padding:0;outline:none;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.25;transition:opacity .15s}.clr-image-carousel__arrow:focus{outline:none}.clr-image-carousel__arrow:hover{opacity:1}.clr-image-carousel__arrow--prev{left:12px}.clr-image-carousel__arrow--next{right:12px}.clr-image-carousel__arrow cds-icon{--color: white;width:56px;height:56px}.clr-image-carousel__thumbs-wrap{position:relative;flex-shrink:0;width:100%;overflow:hidden}.clr-image-carousel__thumbs-wrap:before,.clr-image-carousel__thumbs-wrap:after{content:\"\";position:absolute;top:0;bottom:0;width:48px;z-index:1;pointer-events:none;opacity:0;transition:opacity .15s}.clr-image-carousel__thumbs-wrap:before{left:0;background:linear-gradient(to right,var(--clr-modal-bg-color, #fff),transparent)}.clr-image-carousel__thumbs-wrap:after{right:0;background:linear-gradient(to left,var(--clr-modal-bg-color, #fff),transparent)}.clr-image-carousel__thumbs-wrap--fade-left:before{opacity:1}.clr-image-carousel__thumbs-wrap--fade-right:after{opacity:1}.clr-image-carousel__thumbs{display:flex;gap:8px;padding:8px 0 24px;overflow-x:auto;flex-shrink:0;width:100%;box-sizing:border-box;scroll-behavior:smooth;scrollbar-width:none}.clr-image-carousel__thumbs::-webkit-scrollbar{display:none}.clr-image-carousel__thumbs--centered{justify-content:center;overflow-x:hidden}.clr-image-carousel__thumbs-spacer{flex-shrink:0}.clr-image-carousel__thumb{flex-shrink:0;overflow:hidden;cursor:pointer;border-radius:3px;outline:4px solid transparent;outline-offset:-4px;transition:outline-color .15s}.clr-image-carousel__thumb--active{outline-color:#14a1a9}.clr-image-carousel__thumb:hover:not(.clr-image-carousel__thumb--active){outline-color:var(--cds-global-color-gray-400, #aaa)}.clr-image-carousel__thumb-img{width:100%;height:100%;object-fit:cover;display:block}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
17050
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrImageCarousel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17051
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrImageCarousel, isStandalone: false, selector: "clr-image-carousel", inputs: { images: { classPropertyName: "images", publicName: "images", isSignal: true, isRequired: false, transformFunction: null }, productName: { classPropertyName: "productName", publicName: "productName", isSignal: true, isRequired: false, transformFunction: null }, initialIndex: { classPropertyName: "initialIndex", publicName: "initialIndex", isSignal: true, isRequired: false, transformFunction: null }, hideHeader: { classPropertyName: "hideHeader", publicName: "hideHeader", isSignal: true, isRequired: false, transformFunction: null }, imageSize: { classPropertyName: "imageSize", publicName: "imageSize", isSignal: true, isRequired: false, transformFunction: null }, thumbnailSize: { classPropertyName: "thumbnailSize", publicName: "thumbnailSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closeCarousel: "closeCarousel" }, host: { listeners: { "document:keydown": "onKeydown($event)" } }, viewQueries: [{ propertyName: "thumbStripRef", first: true, predicate: ["thumbStrip"], descendants: true }], ngImport: i0, template: "<!--\n~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n~ This software is released under MIT license.\n~ The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<div class=\"clr-image-carousel\" data-testid=\"image-carousel\">\n <!-- Header -->\n @if (!hideHeader()) {\n <div class=\"clr-image-carousel__header\">\n <span class=\"clr-image-carousel__title\" data-testid=\"image-carousel-title\">{{ productName() }}</span>\n <button\n class=\"clr-image-carousel__close\"\n (click)=\"closeCarousel.emit()\"\n aria-label=\"Close\"\n data-testid=\"image-carousel-close-button\"\n >\n <cds-icon shape=\"times\"></cds-icon>\n </button>\n </div>\n }\n\n <!-- Spotlight + thumbnails, constrained to image width -->\n <div class=\"clr-image-carousel__content\" [style.width.px]=\"imageSize() > 0 ? imageSize() : null\">\n <!-- Spotlight -->\n <div class=\"clr-image-carousel__spotlight\">\n <div\n class=\"clr-image-carousel__img-wrap\"\n [style.width.px]=\"imageSize() > 0 ? imageSize() : null\"\n [style.height.px]=\"imageSize() > 0 ? imageSize() : null\"\n >\n <button\n class=\"clr-image-carousel__arrow clr-image-carousel__arrow--prev\"\n (click)=\"prev()\"\n aria-label=\"Previous\"\n data-testid=\"image-carousel-prev-button\"\n >\n <cds-icon shape=\"circle-arrow\" direction=\"left\" solid></cds-icon>\n </button>\n\n @if (images().length > 0) {\n <img\n [src]=\"images()[activeIndex()].src\"\n [alt]=\"images()[activeIndex()].alt || ''\"\n class=\"clr-image-carousel__img\"\n data-testid=\"image-carousel-active-image\"\n />\n }\n\n <button\n class=\"clr-image-carousel__arrow clr-image-carousel__arrow--next\"\n (click)=\"next()\"\n aria-label=\"Next\"\n data-testid=\"image-carousel-next-button\"\n >\n <cds-icon shape=\"circle-arrow\" direction=\"right\" solid></cds-icon>\n </button>\n </div>\n </div>\n\n <!-- Thumbnail strip -->\n <div\n class=\"clr-image-carousel__thumbs-wrap\"\n [class.clr-image-carousel__thumbs-wrap--fade-left]=\"showFadeLeft()\"\n [class.clr-image-carousel__thumbs-wrap--fade-right]=\"showFadeRight()\"\n >\n <div\n class=\"clr-image-carousel__thumbs\"\n [class.clr-image-carousel__thumbs--centered]=\"!needsScroll()\"\n (scroll)=\"onThumbStripScroll()\"\n #thumbStrip\n data-testid=\"image-carousel-thumbnails\"\n >\n @for (img of images(); track img; let i = $index) {\n <div\n class=\"clr-image-carousel__thumb\"\n [style.width.px]=\"thumbnailSize()\"\n [style.height.px]=\"thumbnailSize()\"\n [class.clr-image-carousel__thumb--active]=\"i === activeIndex()\"\n (click)=\"setActive(i)\"\n [attr.data-testid]=\"'image-carousel-thumbnail-' + (i)\"\n >\n <img\n [src]=\"img.src\"\n [alt]=\"img.alt || ''\"\n class=\"clr-image-carousel__thumb-img\"\n [attr.data-testid]=\"'image-carousel-thumbnail-image-' + (i)\"\n />\n </div>\n }\n </div>\n </div>\n </div>\n</div>\n", styles: [".clr-image-carousel{display:flex;flex-direction:column;align-items:center;padding:0 24px;box-sizing:border-box;width:100%;background:var(--clr-modal-bg-color, #fff);overflow:hidden}.clr-image-carousel__header{display:flex;align-items:center;justify-content:space-between;height:68px;flex-shrink:0;box-sizing:border-box;align-self:stretch}.clr-image-carousel__title{font-size:14px;font-weight:400;line-height:24px}.clr-image-carousel__close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:inherit}.clr-image-carousel__close cds-icon{--color: currentColor;width:18px;height:18px}.clr-image-carousel__close:hover{opacity:.7}.clr-image-carousel__content{display:flex;flex-direction:column;flex-shrink:0;width:100%}.clr-image-carousel__spotlight{flex-shrink:0;display:flex;align-items:center;justify-content:center}.clr-image-carousel__img-wrap{position:relative;width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:3px}.clr-image-carousel__img{display:block;width:100%;height:100%;object-fit:cover}.clr-image-carousel__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:none;border:none;padding:0;outline:none;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.25;transition:opacity .15s}.clr-image-carousel__arrow:focus{outline:none}.clr-image-carousel__arrow:hover{opacity:1}.clr-image-carousel__arrow--prev{left:12px}.clr-image-carousel__arrow--next{right:12px}.clr-image-carousel__arrow cds-icon{--color: white;width:56px;height:56px}.clr-image-carousel__thumbs-wrap{position:relative;flex-shrink:0;width:100%;overflow:hidden}.clr-image-carousel__thumbs-wrap:before,.clr-image-carousel__thumbs-wrap:after{content:\"\";position:absolute;top:0;bottom:0;width:48px;z-index:1;pointer-events:none;opacity:0;transition:opacity .15s}.clr-image-carousel__thumbs-wrap:before{left:0;background:linear-gradient(to right,var(--clr-modal-bg-color, #fff),transparent)}.clr-image-carousel__thumbs-wrap:after{right:0;background:linear-gradient(to left,var(--clr-modal-bg-color, #fff),transparent)}.clr-image-carousel__thumbs-wrap--fade-left:before{opacity:1}.clr-image-carousel__thumbs-wrap--fade-right:after{opacity:1}.clr-image-carousel__thumbs{display:flex;gap:8px;padding:8px 0 24px;overflow-x:auto;flex-shrink:0;width:100%;box-sizing:border-box;scroll-behavior:smooth;scrollbar-width:none}.clr-image-carousel__thumbs::-webkit-scrollbar{display:none}.clr-image-carousel__thumbs--centered{justify-content:center;overflow-x:hidden}.clr-image-carousel__thumbs-spacer{flex-shrink:0}.clr-image-carousel__thumb{flex-shrink:0;overflow:hidden;cursor:pointer;border-radius:3px;outline:4px solid transparent;outline-offset:-4px;transition:outline-color .15s}.clr-image-carousel__thumb--active{outline-color:#14a1a9}.clr-image-carousel__thumb:hover:not(.clr-image-carousel__thumb--active){outline-color:var(--cds-global-color-gray-400, #aaa)}.clr-image-carousel__thumb-img{width:100%;height:100%;object-fit:cover;display:block}\n"], dependencies: [{ kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] }); }
16737
17052
  }
16738
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrImageCarousel, decorators: [{
17053
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrImageCarousel, decorators: [{
16739
17054
  type: Component,
16740
17055
  args: [{ selector: 'clr-image-carousel', standalone: false, template: "<!--\n~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n~ This software is released under MIT license.\n~ The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<div class=\"clr-image-carousel\" data-testid=\"image-carousel\">\n <!-- Header -->\n @if (!hideHeader()) {\n <div class=\"clr-image-carousel__header\">\n <span class=\"clr-image-carousel__title\" data-testid=\"image-carousel-title\">{{ productName() }}</span>\n <button\n class=\"clr-image-carousel__close\"\n (click)=\"closeCarousel.emit()\"\n aria-label=\"Close\"\n data-testid=\"image-carousel-close-button\"\n >\n <cds-icon shape=\"times\"></cds-icon>\n </button>\n </div>\n }\n\n <!-- Spotlight + thumbnails, constrained to image width -->\n <div class=\"clr-image-carousel__content\" [style.width.px]=\"imageSize() > 0 ? imageSize() : null\">\n <!-- Spotlight -->\n <div class=\"clr-image-carousel__spotlight\">\n <div\n class=\"clr-image-carousel__img-wrap\"\n [style.width.px]=\"imageSize() > 0 ? imageSize() : null\"\n [style.height.px]=\"imageSize() > 0 ? imageSize() : null\"\n >\n <button\n class=\"clr-image-carousel__arrow clr-image-carousel__arrow--prev\"\n (click)=\"prev()\"\n aria-label=\"Previous\"\n data-testid=\"image-carousel-prev-button\"\n >\n <cds-icon shape=\"circle-arrow\" direction=\"left\" solid></cds-icon>\n </button>\n\n @if (images().length > 0) {\n <img\n [src]=\"images()[activeIndex()].src\"\n [alt]=\"images()[activeIndex()].alt || ''\"\n class=\"clr-image-carousel__img\"\n data-testid=\"image-carousel-active-image\"\n />\n }\n\n <button\n class=\"clr-image-carousel__arrow clr-image-carousel__arrow--next\"\n (click)=\"next()\"\n aria-label=\"Next\"\n data-testid=\"image-carousel-next-button\"\n >\n <cds-icon shape=\"circle-arrow\" direction=\"right\" solid></cds-icon>\n </button>\n </div>\n </div>\n\n <!-- Thumbnail strip -->\n <div\n class=\"clr-image-carousel__thumbs-wrap\"\n [class.clr-image-carousel__thumbs-wrap--fade-left]=\"showFadeLeft()\"\n [class.clr-image-carousel__thumbs-wrap--fade-right]=\"showFadeRight()\"\n >\n <div\n class=\"clr-image-carousel__thumbs\"\n [class.clr-image-carousel__thumbs--centered]=\"!needsScroll()\"\n (scroll)=\"onThumbStripScroll()\"\n #thumbStrip\n data-testid=\"image-carousel-thumbnails\"\n >\n @for (img of images(); track img; let i = $index) {\n <div\n class=\"clr-image-carousel__thumb\"\n [style.width.px]=\"thumbnailSize()\"\n [style.height.px]=\"thumbnailSize()\"\n [class.clr-image-carousel__thumb--active]=\"i === activeIndex()\"\n (click)=\"setActive(i)\"\n [attr.data-testid]=\"'image-carousel-thumbnail-' + (i)\"\n >\n <img\n [src]=\"img.src\"\n [alt]=\"img.alt || ''\"\n class=\"clr-image-carousel__thumb-img\"\n [attr.data-testid]=\"'image-carousel-thumbnail-image-' + (i)\"\n />\n </div>\n }\n </div>\n </div>\n </div>\n</div>\n", styles: [".clr-image-carousel{display:flex;flex-direction:column;align-items:center;padding:0 24px;box-sizing:border-box;width:100%;background:var(--clr-modal-bg-color, #fff);overflow:hidden}.clr-image-carousel__header{display:flex;align-items:center;justify-content:space-between;height:68px;flex-shrink:0;box-sizing:border-box;align-self:stretch}.clr-image-carousel__title{font-size:14px;font-weight:400;line-height:24px}.clr-image-carousel__close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:inherit}.clr-image-carousel__close cds-icon{--color: currentColor;width:18px;height:18px}.clr-image-carousel__close:hover{opacity:.7}.clr-image-carousel__content{display:flex;flex-direction:column;flex-shrink:0;width:100%}.clr-image-carousel__spotlight{flex-shrink:0;display:flex;align-items:center;justify-content:center}.clr-image-carousel__img-wrap{position:relative;width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:3px}.clr-image-carousel__img{display:block;width:100%;height:100%;object-fit:cover}.clr-image-carousel__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:none;border:none;padding:0;outline:none;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.25;transition:opacity .15s}.clr-image-carousel__arrow:focus{outline:none}.clr-image-carousel__arrow:hover{opacity:1}.clr-image-carousel__arrow--prev{left:12px}.clr-image-carousel__arrow--next{right:12px}.clr-image-carousel__arrow cds-icon{--color: white;width:56px;height:56px}.clr-image-carousel__thumbs-wrap{position:relative;flex-shrink:0;width:100%;overflow:hidden}.clr-image-carousel__thumbs-wrap:before,.clr-image-carousel__thumbs-wrap:after{content:\"\";position:absolute;top:0;bottom:0;width:48px;z-index:1;pointer-events:none;opacity:0;transition:opacity .15s}.clr-image-carousel__thumbs-wrap:before{left:0;background:linear-gradient(to right,var(--clr-modal-bg-color, #fff),transparent)}.clr-image-carousel__thumbs-wrap:after{right:0;background:linear-gradient(to left,var(--clr-modal-bg-color, #fff),transparent)}.clr-image-carousel__thumbs-wrap--fade-left:before{opacity:1}.clr-image-carousel__thumbs-wrap--fade-right:after{opacity:1}.clr-image-carousel__thumbs{display:flex;gap:8px;padding:8px 0 24px;overflow-x:auto;flex-shrink:0;width:100%;box-sizing:border-box;scroll-behavior:smooth;scrollbar-width:none}.clr-image-carousel__thumbs::-webkit-scrollbar{display:none}.clr-image-carousel__thumbs--centered{justify-content:center;overflow-x:hidden}.clr-image-carousel__thumbs-spacer{flex-shrink:0}.clr-image-carousel__thumb{flex-shrink:0;overflow:hidden;cursor:pointer;border-radius:3px;outline:4px solid transparent;outline-offset:-4px;transition:outline-color .15s}.clr-image-carousel__thumb--active{outline-color:#14a1a9}.clr-image-carousel__thumb:hover:not(.clr-image-carousel__thumb--active){outline-color:var(--cds-global-color-gray-400, #aaa)}.clr-image-carousel__thumb-img{width:100%;height:100%;object-fit:cover;display:block}\n"] }]
16741
17056
  }], ctorParameters: () => [], propDecorators: { thumbStripRef: [{
@@ -16795,10 +17110,10 @@ class ClrImageGallery {
16795
17110
  this.closeModal();
16796
17111
  }
16797
17112
  }
16798
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrImageGallery, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16799
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrImageGallery, isStandalone: false, selector: "clr-image-gallery", inputs: { images: { classPropertyName: "images", publicName: "images", isSignal: true, isRequired: false, transformFunction: null }, productName: { classPropertyName: "productName", publicName: "productName", isSignal: true, isRequired: false, transformFunction: null }, spotlightSize: { classPropertyName: "spotlightSize", publicName: "spotlightSize", isSignal: true, isRequired: false, transformFunction: null }, useBuiltInModal: { classPropertyName: "useBuiltInModal", publicName: "useBuiltInModal", isSignal: true, isRequired: false, transformFunction: null }, carouselImageSize: { classPropertyName: "carouselImageSize", publicName: "carouselImageSize", isSignal: true, isRequired: false, transformFunction: null }, carouselThumbnailSize: { classPropertyName: "carouselThumbnailSize", publicName: "carouselThumbnailSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { galleryOpen: "galleryOpen" }, ngImport: i0, template: "<!--\n~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n~ This software is released under MIT license.\n~ The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<!-- Static gallery view -->\n<div class=\"clr-image-gallery\" [style.width.px]=\"spotlightSize()\" data-testid=\"image-gallery\">\n <!-- Spotlight image -->\n <div\n class=\"clr-image-gallery__spotlight\"\n [style.width.px]=\"spotlightSize()\"\n [style.height.px]=\"spotlightSize()\"\n (click)=\"openModal(0)\"\n data-testid=\"image-gallery-spotlight\"\n >\n @if (images().length > 0) {\n <img\n [ngSrc]=\"images()[0].src\"\n [width]=\"spotlightSize()\"\n [height]=\"spotlightSize()\"\n [alt]=\"images()[0].alt || ''\"\n class=\"clr-image-gallery__spotlight-img\"\n data-testid=\"image-gallery-spotlight-image\"\n />\n }\n </div>\n\n <!-- Thumbnail row -->\n @if (images().length > 1) {\n <div class=\"clr-image-gallery__thumbs\" data-testid=\"image-gallery-thumbnails\">\n @for (img of staticThumbnails(); track img; let i = $index) {\n <div\n class=\"clr-image-gallery__thumb\"\n [style.width.px]=\"thumbnailSize()\"\n [style.height.px]=\"thumbnailSize()\"\n (click)=\"openModal(i + 1)\"\n [attr.data-testid]=\"'image-gallery-thumbnail-' + (i + 1)\"\n >\n <img\n [ngSrc]=\"img.src\"\n [width]=\"thumbnailSize()\"\n [height]=\"thumbnailSize()\"\n [alt]=\"img.alt || ''\"\n class=\"clr-image-gallery__thumb-img\"\n [attr.data-testid]=\"'image-gallery-thumbnail-image-' + (i + 1)\"\n />\n <!-- Overlay on last thumbnail when there are more images -->\n @if (i === maxThumbnails - 1 && remainingCount() > 0) {\n <div class=\"clr-image-gallery__thumb-overlay\" data-testid=\"image-gallery-remaining-overlay\">\n <span data-testid=\"image-gallery-remaining-count\">{{ remainingCount() }}+</span>\n </div>\n }\n </div>\n }\n </div>\n }\n</div>\n\n<!-- Built-in modal (only when useBuiltInModal is true) -->\n@if (useBuiltInModal() && modalOpen()) {\n<div\n class=\"clr-image-gallery-backdrop\"\n (click)=\"onBackdropClick($event)\"\n role=\"dialog\"\n aria-modal=\"true\"\n data-testid=\"image-gallery-dialog\"\n>\n <div class=\"clr-image-gallery-modal\" data-testid=\"image-gallery-modal\">\n <clr-image-carousel\n data-testid=\"image-gallery-carousel\"\n [images]=\"images()\"\n [productName]=\"productName()\"\n [initialIndex]=\"activeIndex()\"\n [imageSize]=\"carouselImageSize()\"\n [thumbnailSize]=\"carouselThumbnailSize()\"\n (closeCarousel)=\"closeModal()\"\n ></clr-image-carousel>\n </div>\n</div>\n}\n", styles: [".clr-image-gallery{display:inline-flex;flex-direction:column;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.clr-image-gallery__spotlight{overflow:hidden;flex-shrink:0;border-radius:3px}.clr-image-gallery__spotlight-img{width:100%;height:100%;object-fit:cover;display:block}.clr-image-gallery__thumbs{display:flex;gap:8px}.clr-image-gallery__thumb{position:relative;overflow:hidden;flex-shrink:0;border-radius:3px}.clr-image-gallery__thumb-img{width:100%;height:100%;object-fit:cover;display:block}.clr-image-gallery__thumb-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:600}.clr-image-gallery-backdrop{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000}.clr-image-gallery-modal{background:var(--clr-modal-bg-color, #fff);border-radius:4px;display:flex;flex-direction:column;height:96vh;width:calc(96vh - 116px);max-width:98vw;overflow:hidden;box-shadow:0 4px 32px #00000059}\n"], dependencies: [{ kind: "directive", type: i1.NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "decoding", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "component", type: ClrImageCarousel, selector: "clr-image-carousel", inputs: ["images", "productName", "initialIndex", "hideHeader", "imageSize", "thumbnailSize"], outputs: ["closeCarousel"] }] }); }
17113
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrImageGallery, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17114
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrImageGallery, isStandalone: false, selector: "clr-image-gallery", inputs: { images: { classPropertyName: "images", publicName: "images", isSignal: true, isRequired: false, transformFunction: null }, productName: { classPropertyName: "productName", publicName: "productName", isSignal: true, isRequired: false, transformFunction: null }, spotlightSize: { classPropertyName: "spotlightSize", publicName: "spotlightSize", isSignal: true, isRequired: false, transformFunction: null }, useBuiltInModal: { classPropertyName: "useBuiltInModal", publicName: "useBuiltInModal", isSignal: true, isRequired: false, transformFunction: null }, carouselImageSize: { classPropertyName: "carouselImageSize", publicName: "carouselImageSize", isSignal: true, isRequired: false, transformFunction: null }, carouselThumbnailSize: { classPropertyName: "carouselThumbnailSize", publicName: "carouselThumbnailSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { galleryOpen: "galleryOpen" }, ngImport: i0, template: "<!--\n~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n~ This software is released under MIT license.\n~ The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<!-- Static gallery view -->\n<div class=\"clr-image-gallery\" [style.width.px]=\"spotlightSize()\" data-testid=\"image-gallery\">\n <!-- Spotlight image -->\n <div\n class=\"clr-image-gallery__spotlight\"\n [style.width.px]=\"spotlightSize()\"\n [style.height.px]=\"spotlightSize()\"\n (click)=\"openModal(0)\"\n data-testid=\"image-gallery-spotlight\"\n >\n @if (images().length > 0) {\n <img\n [ngSrc]=\"images()[0].src\"\n [width]=\"spotlightSize()\"\n [height]=\"spotlightSize()\"\n [alt]=\"images()[0].alt || ''\"\n class=\"clr-image-gallery__spotlight-img\"\n data-testid=\"image-gallery-spotlight-image\"\n />\n }\n </div>\n\n <!-- Thumbnail row -->\n @if (images().length > 1) {\n <div class=\"clr-image-gallery__thumbs\" data-testid=\"image-gallery-thumbnails\">\n @for (img of staticThumbnails(); track img; let i = $index) {\n <div\n class=\"clr-image-gallery__thumb\"\n [style.width.px]=\"thumbnailSize()\"\n [style.height.px]=\"thumbnailSize()\"\n (click)=\"openModal(i + 1)\"\n [attr.data-testid]=\"'image-gallery-thumbnail-' + (i + 1)\"\n >\n <img\n [ngSrc]=\"img.src\"\n [width]=\"thumbnailSize()\"\n [height]=\"thumbnailSize()\"\n [alt]=\"img.alt || ''\"\n class=\"clr-image-gallery__thumb-img\"\n [attr.data-testid]=\"'image-gallery-thumbnail-image-' + (i + 1)\"\n />\n <!-- Overlay on last thumbnail when there are more images -->\n @if (i === maxThumbnails - 1 && remainingCount() > 0) {\n <div class=\"clr-image-gallery__thumb-overlay\" data-testid=\"image-gallery-remaining-overlay\">\n <span data-testid=\"image-gallery-remaining-count\">{{ remainingCount() }}+</span>\n </div>\n }\n </div>\n }\n </div>\n }\n</div>\n\n<!-- Built-in modal (only when useBuiltInModal is true) -->\n@if (useBuiltInModal() && modalOpen()) {\n<div\n class=\"clr-image-gallery-backdrop\"\n (click)=\"onBackdropClick($event)\"\n role=\"dialog\"\n aria-modal=\"true\"\n data-testid=\"image-gallery-dialog\"\n>\n <div class=\"clr-image-gallery-modal\" data-testid=\"image-gallery-modal\">\n <clr-image-carousel\n data-testid=\"image-gallery-carousel\"\n [images]=\"images()\"\n [productName]=\"productName()\"\n [initialIndex]=\"activeIndex()\"\n [imageSize]=\"carouselImageSize()\"\n [thumbnailSize]=\"carouselThumbnailSize()\"\n (closeCarousel)=\"closeModal()\"\n ></clr-image-carousel>\n </div>\n</div>\n}\n", styles: [".clr-image-gallery{display:inline-flex;flex-direction:column;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.clr-image-gallery__spotlight{overflow:hidden;flex-shrink:0;border-radius:3px}.clr-image-gallery__spotlight-img{width:100%;height:100%;object-fit:cover;display:block}.clr-image-gallery__thumbs{display:flex;gap:8px}.clr-image-gallery__thumb{position:relative;overflow:hidden;flex-shrink:0;border-radius:3px}.clr-image-gallery__thumb-img{width:100%;height:100%;object-fit:cover;display:block}.clr-image-gallery__thumb-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:600}.clr-image-gallery-backdrop{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000}.clr-image-gallery-modal{background:var(--clr-modal-bg-color, #fff);border-radius:4px;display:flex;flex-direction:column;height:96vh;width:calc(96vh - 116px);max-width:98vw;overflow:hidden;box-shadow:0 4px 32px #00000059}\n"], dependencies: [{ kind: "directive", type: i1.NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "decoding", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "component", type: ClrImageCarousel, selector: "clr-image-carousel", inputs: ["images", "productName", "initialIndex", "hideHeader", "imageSize", "thumbnailSize"], outputs: ["closeCarousel"] }] }); }
16800
17115
  }
16801
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrImageGallery, decorators: [{
17116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrImageGallery, decorators: [{
16802
17117
  type: Component,
16803
17118
  args: [{ selector: 'clr-image-gallery', standalone: false, template: "<!--\n~ Copyright (c) 2018-2026 Porsche Informatik. All Rights Reserved.\n~ This software is released under MIT license.\n~ The full license information can be found in LICENSE in the root directory of this project.\n-->\n\n<!-- Static gallery view -->\n<div class=\"clr-image-gallery\" [style.width.px]=\"spotlightSize()\" data-testid=\"image-gallery\">\n <!-- Spotlight image -->\n <div\n class=\"clr-image-gallery__spotlight\"\n [style.width.px]=\"spotlightSize()\"\n [style.height.px]=\"spotlightSize()\"\n (click)=\"openModal(0)\"\n data-testid=\"image-gallery-spotlight\"\n >\n @if (images().length > 0) {\n <img\n [ngSrc]=\"images()[0].src\"\n [width]=\"spotlightSize()\"\n [height]=\"spotlightSize()\"\n [alt]=\"images()[0].alt || ''\"\n class=\"clr-image-gallery__spotlight-img\"\n data-testid=\"image-gallery-spotlight-image\"\n />\n }\n </div>\n\n <!-- Thumbnail row -->\n @if (images().length > 1) {\n <div class=\"clr-image-gallery__thumbs\" data-testid=\"image-gallery-thumbnails\">\n @for (img of staticThumbnails(); track img; let i = $index) {\n <div\n class=\"clr-image-gallery__thumb\"\n [style.width.px]=\"thumbnailSize()\"\n [style.height.px]=\"thumbnailSize()\"\n (click)=\"openModal(i + 1)\"\n [attr.data-testid]=\"'image-gallery-thumbnail-' + (i + 1)\"\n >\n <img\n [ngSrc]=\"img.src\"\n [width]=\"thumbnailSize()\"\n [height]=\"thumbnailSize()\"\n [alt]=\"img.alt || ''\"\n class=\"clr-image-gallery__thumb-img\"\n [attr.data-testid]=\"'image-gallery-thumbnail-image-' + (i + 1)\"\n />\n <!-- Overlay on last thumbnail when there are more images -->\n @if (i === maxThumbnails - 1 && remainingCount() > 0) {\n <div class=\"clr-image-gallery__thumb-overlay\" data-testid=\"image-gallery-remaining-overlay\">\n <span data-testid=\"image-gallery-remaining-count\">{{ remainingCount() }}+</span>\n </div>\n }\n </div>\n }\n </div>\n }\n</div>\n\n<!-- Built-in modal (only when useBuiltInModal is true) -->\n@if (useBuiltInModal() && modalOpen()) {\n<div\n class=\"clr-image-gallery-backdrop\"\n (click)=\"onBackdropClick($event)\"\n role=\"dialog\"\n aria-modal=\"true\"\n data-testid=\"image-gallery-dialog\"\n>\n <div class=\"clr-image-gallery-modal\" data-testid=\"image-gallery-modal\">\n <clr-image-carousel\n data-testid=\"image-gallery-carousel\"\n [images]=\"images()\"\n [productName]=\"productName()\"\n [initialIndex]=\"activeIndex()\"\n [imageSize]=\"carouselImageSize()\"\n [thumbnailSize]=\"carouselThumbnailSize()\"\n (closeCarousel)=\"closeModal()\"\n ></clr-image-carousel>\n </div>\n</div>\n}\n", styles: [".clr-image-gallery{display:inline-flex;flex-direction:column;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.clr-image-gallery__spotlight{overflow:hidden;flex-shrink:0;border-radius:3px}.clr-image-gallery__spotlight-img{width:100%;height:100%;object-fit:cover;display:block}.clr-image-gallery__thumbs{display:flex;gap:8px}.clr-image-gallery__thumb{position:relative;overflow:hidden;flex-shrink:0;border-radius:3px}.clr-image-gallery__thumb-img{width:100%;height:100%;object-fit:cover;display:block}.clr-image-gallery__thumb-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:600}.clr-image-gallery-backdrop{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000}.clr-image-gallery-modal{background:var(--clr-modal-bg-color, #fff);border-radius:4px;display:flex;flex-direction:column;height:96vh;width:calc(96vh - 116px);max-width:98vw;overflow:hidden;box-shadow:0 4px 32px #00000059}\n"] }]
16804
17119
  }], propDecorators: { images: [{ type: i0.Input, args: [{ isSignal: true, alias: "images", required: false }] }], productName: [{ type: i0.Input, args: [{ isSignal: true, alias: "productName", required: false }] }], spotlightSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "spotlightSize", required: false }] }], useBuiltInModal: [{ type: i0.Input, args: [{ isSignal: true, alias: "useBuiltInModal", required: false }] }], galleryOpen: [{ type: i0.Output, args: ["galleryOpen"] }], carouselImageSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "carouselImageSize", required: false }] }], carouselThumbnailSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "carouselThumbnailSize", required: false }] }] } });
@@ -16809,11 +17124,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
16809
17124
  * The full license information can be found in LICENSE in the root directory of this project.
16810
17125
  */
16811
17126
  class ClrImageGalleryModule {
16812
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrImageGalleryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16813
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrImageGalleryModule, declarations: [ClrImageGallery, ClrImageCarousel], imports: [CommonModule, ClarityModule, NgOptimizedImage], exports: [ClrImageGallery, ClrImageCarousel] }); }
16814
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrImageGalleryModule, imports: [CommonModule, ClarityModule] }); }
17127
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrImageGalleryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17128
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrImageGalleryModule, declarations: [ClrImageGallery, ClrImageCarousel], imports: [CommonModule, ClarityModule, NgOptimizedImage], exports: [ClrImageGallery, ClrImageCarousel] }); }
17129
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrImageGalleryModule, imports: [CommonModule, ClarityModule] }); }
16815
17130
  }
16816
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrImageGalleryModule, decorators: [{
17131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrImageGalleryModule, decorators: [{
16817
17132
  type: NgModule,
16818
17133
  args: [{
16819
17134
  imports: [CommonModule, ClarityModule, NgOptimizedImage],
@@ -16834,8 +17149,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
16834
17149
  * The full license information can be found in LICENSE in the root directory of this project.
16835
17150
  */
16836
17151
  class ClrAddonsModule {
16837
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAddonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16838
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrAddonsModule, imports: [ClrFocusFirstInvalidFieldDirective,
17152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAddonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17153
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrAddonsModule, imports: [ClrFocusFirstInvalidFieldDirective,
16839
17154
  ClrControlEnterSubmitDirective,
16840
17155
  ClrKeyboardNavCtrlArrowDirective,
16841
17156
  ClrKeyboardNavAltMnemonicDirective], exports: [ClrViewEditSectionModule,
@@ -16879,7 +17194,7 @@ class ClrAddonsModule {
16879
17194
  ClrKeyboardNavCtrlArrowDirective,
16880
17195
  ClrKeyboardNavAltMnemonicDirective,
16881
17196
  ClrImageGalleryModule] }); }
16882
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAddonsModule, imports: [ClrViewEditSectionModule,
17197
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAddonsModule, imports: [ClrViewEditSectionModule,
16883
17198
  ClrPagerModule,
16884
17199
  ClrDotPagerModule,
16885
17200
  ClrPagedSearchResultListModule,
@@ -16917,7 +17232,7 @@ class ClrAddonsModule {
16917
17232
  ClrDatagridColumnReorderModule,
16918
17233
  ClrImageGalleryModule] }); }
16919
17234
  }
16920
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrAddonsModule, decorators: [{
17235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrAddonsModule, decorators: [{
16921
17236
  type: NgModule,
16922
17237
  args: [{
16923
17238
  imports: [
@@ -16979,40 +17294,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
16979
17294
  * The full license information can be found in LICENSE in the root directory of this project.
16980
17295
  */
16981
17296
 
16982
- var ExportTypeEnum;
16983
- (function (ExportTypeEnum) {
16984
- ExportTypeEnum["ALL"] = "ALL";
16985
- ExportTypeEnum["FILTERED"] = "FILTERED";
16986
- ExportTypeEnum["SELECTED"] = "SELECTED";
16987
- })(ExportTypeEnum || (ExportTypeEnum = {}));
16988
-
16989
- class ExportDatagridService {
16990
- constructor() {
16991
- this.init();
16992
- }
16993
- async init() {
16994
- try {
16995
- this.zipcelx = await import('zipcelx');
16996
- }
16997
- catch (error) {
16998
- console.warn('Optional feature requires `zipcelx`. Please install it: npm install zipcelx', error);
16999
- }
17000
- }
17001
- exportToExcel(filename, headers, rows) {
17002
- const config = {
17003
- filename,
17004
- sheet: {
17005
- data: [headers, ...rows],
17006
- },
17007
- };
17008
- this.zipcelx.default(config);
17009
- }
17010
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ExportDatagridService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
17011
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ExportDatagridService }); }
17297
+ /**
17298
+ * Excel export service used by the datagrid export button.
17299
+ *
17300
+ * It is a thin alias of the shared {@link ExportExcelService}.
17301
+ */
17302
+ class ExportDatagridService extends ExportExcelService {
17303
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportDatagridService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
17304
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportDatagridService }); }
17012
17305
  }
17013
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ExportDatagridService, decorators: [{
17306
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportDatagridService, decorators: [{
17014
17307
  type: Injectable
17015
- }], ctorParameters: () => [] });
17308
+ }] });
17016
17309
 
17017
17310
  class ExportDatagridButtonComponent {
17018
17311
  constructor(exportService) {
@@ -17083,7 +17376,7 @@ class ExportDatagridButtonComponent {
17083
17376
  const rowsToExport = this.getRowsToExport(type);
17084
17377
  // Map data rows for visible columns only
17085
17378
  const dataRows = rowsToExport.map(row => visibleColumns.map(col => ({
17086
- value: String(row[col.field] ?? ''),
17379
+ value: String(this.getValueByPath(row, col.field) ?? ''),
17087
17380
  type: col.colType,
17088
17381
  })));
17089
17382
  this.exportService.exportToExcel(this.exportTitlePrefix(), headerRow, dataRows);
@@ -17124,6 +17417,15 @@ class ExportDatagridButtonComponent {
17124
17417
  return [];
17125
17418
  }
17126
17419
  }
17420
+ /**
17421
+ * Resolves a (possibly nested) property path like `address.city` on the given item.
17422
+ */
17423
+ getValueByPath(item, path) {
17424
+ if (!path) {
17425
+ return undefined;
17426
+ }
17427
+ return path.split('.').reduce((current, segment) => current?.[segment], item);
17428
+ }
17127
17429
  getColumnsTitle() {
17128
17430
  const nativeEl = this.datagridRef()?.nativeElement;
17129
17431
  const headerEls = nativeEl?.querySelectorAll('clr-dg-column:not(.datagrid-hidden-column)') ?? [];
@@ -17136,10 +17438,10 @@ class ExportDatagridButtonComponent {
17136
17438
  });
17137
17439
  return columnTitles;
17138
17440
  }
17139
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ExportDatagridButtonComponent, deps: [{ token: ExportDatagridService }], target: i0.ɵɵFactoryTarget.Component }); }
17140
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ExportDatagridButtonComponent, isStandalone: true, selector: "clr-export-datagrid-button", inputs: { datagrid: { classPropertyName: "datagrid", publicName: "datagrid", isSignal: true, isRequired: false, transformFunction: null }, datagridRef: { classPropertyName: "datagridRef", publicName: "datagridRef", isSignal: true, isRequired: false, transformFunction: null }, exportTypesToShow: { classPropertyName: "exportTypesToShow", publicName: "exportTypesToShow", isSignal: true, isRequired: false, transformFunction: null }, isBackendExport: { classPropertyName: "isBackendExport", publicName: "isBackendExport", isSignal: true, isRequired: false, transformFunction: null }, exportTitlePrefix: { classPropertyName: "exportTitlePrefix", publicName: "exportTitlePrefix", isSignal: true, isRequired: false, transformFunction: null }, exportButtonPosition: { classPropertyName: "exportButtonPosition", publicName: "exportButtonPosition", isSignal: true, isRequired: false, transformFunction: null }, exportButtonText: { classPropertyName: "exportButtonText", publicName: "exportButtonText", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { backendExport: "backendExport" }, ngImport: i0, template: "<div\n [ngClass]=\"{\n 'export-btn-right': exportButtonPosition() === 'right',\n 'export-btn-left': exportButtonPosition() === 'left'\n }\"\n>\n <clr-dropdown>\n <button class=\"btn btn-sm btn-outline\" clrDropdownTrigger type=\"button\">\n {{ exportButtonText() }}\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n <clr-dropdown-menu *clrIfOpen clrPosition=\"bottom-right\">\n @for (exportType of exportTypesFiltered(); track exportType) {\n <button (click)=\"onExport(exportType.type)\" clrDropdownItem>\n {{ exportType.value }}\n </button>\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n</div>\n", styles: [".export-btn-right{display:flex;justify-content:flex-end}.export-btn-left{display:flex;justify-content:flex-start}.custom-button-export{margin:0}\n"], dependencies: [{ kind: "ngmodule", type: ClarityModule }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i3$1.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i3$1.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i3$1.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i3$1.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$3.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
17441
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportDatagridButtonComponent, deps: [{ token: ExportDatagridService }], target: i0.ɵɵFactoryTarget.Component }); }
17442
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ExportDatagridButtonComponent, isStandalone: true, selector: "clr-export-datagrid-button", inputs: { datagrid: { classPropertyName: "datagrid", publicName: "datagrid", isSignal: true, isRequired: false, transformFunction: null }, datagridRef: { classPropertyName: "datagridRef", publicName: "datagridRef", isSignal: true, isRequired: false, transformFunction: null }, exportTypesToShow: { classPropertyName: "exportTypesToShow", publicName: "exportTypesToShow", isSignal: true, isRequired: false, transformFunction: null }, isBackendExport: { classPropertyName: "isBackendExport", publicName: "isBackendExport", isSignal: true, isRequired: false, transformFunction: null }, exportTitlePrefix: { classPropertyName: "exportTitlePrefix", publicName: "exportTitlePrefix", isSignal: true, isRequired: false, transformFunction: null }, exportButtonPosition: { classPropertyName: "exportButtonPosition", publicName: "exportButtonPosition", isSignal: true, isRequired: false, transformFunction: null }, exportButtonText: { classPropertyName: "exportButtonText", publicName: "exportButtonText", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { backendExport: "backendExport" }, ngImport: i0, template: "<div\n [ngClass]=\"{\n 'export-btn-right': exportButtonPosition() === 'right',\n 'export-btn-left': exportButtonPosition() === 'left'\n }\"\n>\n <clr-dropdown>\n <button class=\"btn btn-sm btn-outline\" clrDropdownTrigger type=\"button\">\n {{ exportButtonText() }}\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n <clr-dropdown-menu *clrIfOpen clrPosition=\"bottom-right\">\n @for (exportType of exportTypesFiltered(); track exportType) {\n <button (click)=\"onExport(exportType.type)\" clrDropdownItem>\n {{ exportType.value }}\n </button>\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n</div>\n", styles: [".export-btn-right{display:flex;justify-content:flex-end}.export-btn-left{display:flex;justify-content:flex-start}.custom-button-export{margin:0}\n"], dependencies: [{ kind: "ngmodule", type: ClarityModule }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i2$3.ClrDropdown, selector: "clr-dropdown", inputs: ["clrCloseMenuOnItemClick"] }, { kind: "component", type: i2$3.ClrDropdownMenu, selector: "clr-dropdown-menu", inputs: ["clrPosition"] }, { kind: "directive", type: i2$3.ClrDropdownTrigger, selector: "[clrDropdownTrigger],[clrDropdownToggle]" }, { kind: "directive", type: i2$3.ClrDropdownItem, selector: "[clrDropdownItem]", inputs: ["clrDisabled", "id"] }, { kind: "directive", type: i2$4.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
17141
17443
  }
17142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ExportDatagridButtonComponent, decorators: [{
17444
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ExportDatagridButtonComponent, decorators: [{
17143
17445
  type: Component,
17144
17446
  args: [{ selector: 'clr-export-datagrid-button', standalone: true, imports: [ClarityModule, NgClass], template: "<div\n [ngClass]=\"{\n 'export-btn-right': exportButtonPosition() === 'right',\n 'export-btn-left': exportButtonPosition() === 'left'\n }\"\n>\n <clr-dropdown>\n <button class=\"btn btn-sm btn-outline\" clrDropdownTrigger type=\"button\">\n {{ exportButtonText() }}\n <cds-icon shape=\"angle\" direction=\"down\" size=\"12\"></cds-icon>\n </button>\n <clr-dropdown-menu *clrIfOpen clrPosition=\"bottom-right\">\n @for (exportType of exportTypesFiltered(); track exportType) {\n <button (click)=\"onExport(exportType.type)\" clrDropdownItem>\n {{ exportType.value }}\n </button>\n }\n </clr-dropdown-menu>\n </clr-dropdown>\n</div>\n", styles: [".export-btn-right{display:flex;justify-content:flex-end}.export-btn-left{display:flex;justify-content:flex-start}.custom-button-export{margin:0}\n"] }]
17145
17447
  }], ctorParameters: () => [{ type: ExportDatagridService }], propDecorators: { datagrid: [{ type: i0.Input, args: [{ isSignal: true, alias: "datagrid", required: false }] }], datagridRef: [{ type: i0.Input, args: [{ isSignal: true, alias: "datagridRef", required: false }] }], exportTypesToShow: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportTypesToShow", required: false }] }], isBackendExport: [{ type: i0.Input, args: [{ isSignal: true, alias: "isBackendExport", required: false }] }], exportTitlePrefix: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportTitlePrefix", required: false }] }], exportButtonPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportButtonPosition", required: false }] }], exportButtonText: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportButtonText", required: false }] }], backendExport: [{
@@ -17147,11 +17449,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
17147
17449
  }] } });
17148
17450
 
17149
17451
  class ClrExportDatagridButtonModule {
17150
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrExportDatagridButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17151
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: ClrExportDatagridButtonModule, imports: [ExportDatagridButtonComponent], exports: [ExportDatagridButtonComponent] }); }
17152
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrExportDatagridButtonModule, providers: [ExportDatagridService], imports: [ExportDatagridButtonComponent] }); }
17452
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrExportDatagridButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17453
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: ClrExportDatagridButtonModule, imports: [ExportDatagridButtonComponent], exports: [ExportDatagridButtonComponent] }); }
17454
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrExportDatagridButtonModule, providers: [ExportDatagridService], imports: [ExportDatagridButtonComponent] }); }
17153
17455
  }
17154
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrExportDatagridButtonModule, decorators: [{
17456
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrExportDatagridButtonModule, decorators: [{
17155
17457
  type: NgModule,
17156
17458
  args: [{
17157
17459
  imports: [ExportDatagridButtonComponent],
@@ -17264,10 +17566,10 @@ class ClrCopyToClipboard {
17264
17566
  });
17265
17567
  });
17266
17568
  }
17267
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrCopyToClipboard, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17268
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.22", type: ClrCopyToClipboard, isStandalone: true, selector: "clr-copy-to-clipboard", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, tooltipText: { classPropertyName: "tooltipText", publicName: "tooltipText", isSignal: true, isRequired: false, transformFunction: null }, hiddenUntilHovered: { classPropertyName: "hiddenUntilHovered", publicName: "hiddenUntilHovered", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.hidden-until-hovered": "hiddenUntilHovered()", "class.parent-hovered": "parentHovered" } }, ngImport: i0, template: "<clr-tooltip>\n <cds-icon\n clrTooltipTrigger\n class=\"copy-to-clipboard-icon\"\n data-testid=\"copy-to-clipboard-button\"\n [cdkCopyToClipboard]=\"trimmedValue()\"\n (cdkCopyToClipboardCopied)=\"onCopied($event)\"\n [shape]=\"showCopiedIcon ? 'success-standard' : 'copy-to-clipboard'\"\n [ngClass]=\"{ 'attribute-was-copied-color': showCopiedIcon }\"\n (click)=\"$event.stopPropagation()\"\n (keydown.enter)=\"$event.stopPropagation()\"\n (mousedown)=\"$event.preventDefault()\"\n ></cds-icon>\n <clr-tooltip-content\n class=\"clr-tooltip-fit-content\"\n data-testid=\"copy-to-clipboard-tooltip\"\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n >{{ tooltipText() }}</clr-tooltip-content\n >\n</clr-tooltip>\n", styles: [":host,.tooltip{display:flex;align-items:center}.copy-to-clipboard-icon{cursor:pointer;color:var(--cds-alias-status-disabled-tint)!important}.copy-to-clipboard-icon:hover{color:var(--cds-alias-typography-link-color)!important}.attribute-was-copied-color{color:var(--cds-alias-status-success)!important}:host(.hidden-until-hovered){visibility:hidden;opacity:0;transition:opacity .15s ease,visibility .15s ease}:host(.hidden-until-hovered.parent-hovered),:host(.hidden-until-hovered:focus-within){visibility:visible;opacity:1}.copy-to-clipboard-parent{display:flex;flex-direction:row;align-items:center;gap:.25rem}\n"], dependencies: [{ kind: "directive", type: CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "ngmodule", type: ClrTooltipModule }, { kind: "component", type: i1$4.ClrTooltip, selector: "clr-tooltip" }, { kind: "directive", type: i1$4.ClrTooltipTrigger, selector: "[clrTooltipTrigger]" }, { kind: "component", type: i1$4.ClrTooltipContent, selector: "clr-tooltip-content", inputs: ["id", "clrPosition", "clrSize"] }, { kind: "directive", type: i2$3.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17569
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrCopyToClipboard, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17570
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.23", type: ClrCopyToClipboard, isStandalone: true, selector: "clr-copy-to-clipboard", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, tooltipText: { classPropertyName: "tooltipText", publicName: "tooltipText", isSignal: true, isRequired: false, transformFunction: null }, hiddenUntilHovered: { classPropertyName: "hiddenUntilHovered", publicName: "hiddenUntilHovered", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.hidden-until-hovered": "hiddenUntilHovered()", "class.parent-hovered": "parentHovered" } }, ngImport: i0, template: "<clr-tooltip>\n <cds-icon\n clrTooltipTrigger\n class=\"copy-to-clipboard-icon\"\n data-testid=\"copy-to-clipboard-button\"\n [cdkCopyToClipboard]=\"trimmedValue()\"\n (cdkCopyToClipboardCopied)=\"onCopied($event)\"\n [shape]=\"showCopiedIcon ? 'success-standard' : 'copy-to-clipboard'\"\n [ngClass]=\"{ 'attribute-was-copied-color': showCopiedIcon }\"\n (click)=\"$event.stopPropagation()\"\n (keydown.enter)=\"$event.stopPropagation()\"\n (mousedown)=\"$event.preventDefault()\"\n ></cds-icon>\n <clr-tooltip-content\n class=\"clr-tooltip-fit-content\"\n data-testid=\"copy-to-clipboard-tooltip\"\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n >{{ tooltipText() }}</clr-tooltip-content\n >\n</clr-tooltip>\n", styles: [":host,.tooltip{display:flex;align-items:center}.copy-to-clipboard-icon{cursor:pointer;color:var(--cds-alias-status-disabled-tint)!important}.copy-to-clipboard-icon:hover{color:var(--cds-alias-typography-link-color)!important}.attribute-was-copied-color{color:var(--cds-alias-status-success)!important}:host(.hidden-until-hovered){visibility:hidden;opacity:0;transition:opacity .15s ease,visibility .15s ease}:host(.hidden-until-hovered.parent-hovered),:host(.hidden-until-hovered:focus-within){visibility:visible;opacity:1}.copy-to-clipboard-parent{display:flex;flex-direction:row;align-items:center;gap:.25rem}\n"], dependencies: [{ kind: "directive", type: CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "ngmodule", type: ClrTooltipModule }, { kind: "component", type: i1$4.ClrTooltip, selector: "clr-tooltip" }, { kind: "directive", type: i1$4.ClrTooltipTrigger, selector: "[clrTooltipTrigger]" }, { kind: "component", type: i1$4.ClrTooltipContent, selector: "clr-tooltip-content", inputs: ["id", "clrPosition", "clrSize"] }, { kind: "directive", type: i2$4.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17269
17571
  }
17270
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrCopyToClipboard, decorators: [{
17572
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrCopyToClipboard, decorators: [{
17271
17573
  type: Component,
17272
17574
  args: [{ selector: 'clr-copy-to-clipboard', imports: [CdkCopyToClipboard, NgClass, ClrIcon, ClrTooltipModule], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, host: {
17273
17575
  '[class.hidden-until-hovered]': 'hiddenUntilHovered()',
@@ -17520,10 +17822,10 @@ class ClrSummaryItemValue {
17520
17822
  }
17521
17823
  return false;
17522
17824
  }
17523
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryItemValue, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17524
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrSummaryItemValue, isStandalone: true, selector: "clr-summary-item-value", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "clicked" }, host: { properties: { "class.has-icon": "this.hasIcon", "class.has-text": "this.hasText", "class.hidden": "this.isHidden" } }, providers: [provideAnimations()], viewQueries: [{ propertyName: "projectedContent", first: true, predicate: ["projectedContent"], descendants: true }, { propertyName: "valueElement", first: true, predicate: ["valueElement"], descendants: true }], ngImport: i0, template: "@if (icon() !== undefined && icon() !== null && icon() !== '') { @if (href()) { @if (tooltip()) {\n<clr-tooltip>\n <a\n clrTooltipTrigger\n class=\"value-icon-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-link\"\n >\n <cds-icon [shape]=\"icon()\" class=\"value-icon value-link\"></cds-icon>\n </a>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-link-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<a\n class=\"value-icon-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-link-plain\"\n>\n <cds-icon [shape]=\"icon()\" class=\"value-icon value-link\"></cds-icon>\n</a>\n} } @else if (hasClickHandler) { @if (tooltip()) {\n<clr-tooltip>\n <cds-icon\n clrTooltipTrigger\n [shape]=\"icon()\"\n class=\"value-icon value-link\"\n tabindex=\"0\"\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-action\"\n ></cds-icon>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-action-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<cds-icon\n [shape]=\"icon()\"\n class=\"value-icon value-link\"\n tabindex=\"0\"\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-action-plain\"\n></cds-icon>\n} } @else { @if (tooltip()) {\n<clr-tooltip>\n <cds-icon\n clrTooltipTrigger\n [shape]=\"icon()\"\n class=\"value-icon value-icon-neutral\"\n data-testid=\"summary-item-value-icon\"\n ></cds-icon>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<cds-icon [shape]=\"icon()\" class=\"value-icon value-icon-neutral\" data-testid=\"summary-item-value-icon-plain\"></cds-icon>\n} } } @else if (value() !== undefined && value() !== null && value() !== '') { @if (href()) { @if (effectiveTooltip) {\n<clr-tooltip>\n <a\n #valueElement\n class=\"value value-link\"\n clrTooltipTrigger\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-link\"\n >\n {{ value() }}\n </a>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-link-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<a\n #valueElement\n class=\"value value-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-link-plain\"\n>\n {{ value() }}\n</a>\n} } @else if (hasClickHandler) {\n<clr-tooltip>\n <span\n #valueElement\n class=\"value value-link\"\n clrTooltipTrigger\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-action\"\n >\n {{ value() }}\n </span>\n @if (effectiveTooltip) {\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-action-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n }\n</clr-tooltip>\n} @else if(effectiveTooltip) {\n<clr-tooltip>\n <span #valueElement class=\"value\" clrTooltipTrigger data-testid=\"summary-item-value\">{{ value() }}</span>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<span #valueElement class=\"value\" data-testid=\"summary-item-value-plain\">{{ value() }}</span>\n} } @else {\n<span class=\"projected-wrapper\" #projectedContent data-testid=\"summary-item-value-projected\">\n <ng-content></ng-content>\n</span>\n}\n", styles: [":host{display:inline-flex;flex-direction:row;align-items:center;gap:.25rem;flex:0 1 auto;max-width:100%;min-width:0;overflow:visible}:host.hidden{display:none}:host(.has-icon){flex:0 0 auto;width:auto}.value,.value-link,.projected-wrapper,clr-tooltip [clrTooltipTrigger]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}cds-icon{flex-shrink:0}.value-icon-link{display:inline-flex;align-items:center;text-decoration:none;cursor:pointer}.value-icon-link cds-icon{color:var(--cds-alias-typography-link-color)}.value-icon-link:hover cds-icon,.value-icon-link:focus cds-icon{color:var(--cds-alias-typography-link-color-hover)}.value-icon-link:visited cds-icon{color:var(--cds-alias-typography-link-color-visited)}.value-icon{height:20px;width:20px}.value-icon-neutral{color:var(--cds-alias-status-neutral)}.value-link,.edit-link{color:var(--cds-alias-typography-link-color);text-decoration:underline;cursor:pointer}.value-link:visited,.edit-link:visited{color:var(--cds-alias-typography-link-color-visited)}.value-link:hover,.value-link:focus,.edit-link:hover,.edit-link:focus{color:var(--cds-alias-typography-link-color-hover);text-decoration:underline}.value{display:inline-block}clr-tooltip{display:inline-flex;flex:1 1 auto;min-width:0;overflow:visible}clr-tooltip [clrTooltipTrigger]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}::ng-deep clr-tooltip-content{overflow-wrap:break-word;word-wrap:break-word;hyphens:auto}::ng-deep .tooltip-content{overflow-wrap:break-word;word-wrap:break-word;hyphens:auto}:host(.error){color:var(--cds-alias-status-danger)}:host(.error) cds-icon{color:var(--cds-alias-status-danger)!important}:host(.error) .value{color:var(--cds-alias-status-danger)}:host(.warning){color:var(--cds-alias-status-warning)}:host(.warning) cds-icon{color:var(--cds-alias-status-warning)!important}:host(.warning) .value{color:var(--cds-alias-status-warning)}\n"], dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: ClarityModule }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i2$3.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "component", type: i1$4.ClrTooltip, selector: "clr-tooltip" }, { kind: "directive", type: i1$4.ClrTooltipTrigger, selector: "[clrTooltipTrigger]" }, { kind: "component", type: i1$4.ClrTooltipContent, selector: "clr-tooltip-content", inputs: ["id", "clrPosition", "clrSize"] }] }); }
17825
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryItemValue, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17826
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrSummaryItemValue, isStandalone: true, selector: "clr-summary-item-value", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "clicked" }, host: { properties: { "class.has-icon": "this.hasIcon", "class.has-text": "this.hasText", "class.hidden": "this.isHidden" } }, providers: [provideAnimations()], viewQueries: [{ propertyName: "projectedContent", first: true, predicate: ["projectedContent"], descendants: true }, { propertyName: "valueElement", first: true, predicate: ["valueElement"], descendants: true }], ngImport: i0, template: "@if (icon() !== undefined && icon() !== null && icon() !== '') { @if (href()) { @if (tooltip()) {\n<clr-tooltip>\n <a\n clrTooltipTrigger\n class=\"value-icon-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-link\"\n >\n <cds-icon [shape]=\"icon()\" class=\"value-icon value-link\"></cds-icon>\n </a>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-link-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<a\n class=\"value-icon-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-link-plain\"\n>\n <cds-icon [shape]=\"icon()\" class=\"value-icon value-link\"></cds-icon>\n</a>\n} } @else if (hasClickHandler) { @if (tooltip()) {\n<clr-tooltip>\n <cds-icon\n clrTooltipTrigger\n [shape]=\"icon()\"\n class=\"value-icon value-link\"\n tabindex=\"0\"\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-action\"\n ></cds-icon>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-action-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<cds-icon\n [shape]=\"icon()\"\n class=\"value-icon value-link\"\n tabindex=\"0\"\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-action-plain\"\n></cds-icon>\n} } @else { @if (tooltip()) {\n<clr-tooltip>\n <cds-icon\n clrTooltipTrigger\n [shape]=\"icon()\"\n class=\"value-icon value-icon-neutral\"\n data-testid=\"summary-item-value-icon\"\n ></cds-icon>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<cds-icon [shape]=\"icon()\" class=\"value-icon value-icon-neutral\" data-testid=\"summary-item-value-icon-plain\"></cds-icon>\n} } } @else if (value() !== undefined && value() !== null && value() !== '') { @if (href()) { @if (effectiveTooltip) {\n<clr-tooltip>\n <a\n #valueElement\n class=\"value value-link\"\n clrTooltipTrigger\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-link\"\n >\n {{ value() }}\n </a>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-link-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<a\n #valueElement\n class=\"value value-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-link-plain\"\n>\n {{ value() }}\n</a>\n} } @else if (hasClickHandler) {\n<clr-tooltip>\n <span\n #valueElement\n class=\"value value-link\"\n clrTooltipTrigger\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-action\"\n >\n {{ value() }}\n </span>\n @if (effectiveTooltip) {\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-action-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n }\n</clr-tooltip>\n} @else if(effectiveTooltip) {\n<clr-tooltip>\n <span #valueElement class=\"value\" clrTooltipTrigger data-testid=\"summary-item-value\">{{ value() }}</span>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<span #valueElement class=\"value\" data-testid=\"summary-item-value-plain\">{{ value() }}</span>\n} } @else {\n<span class=\"projected-wrapper\" #projectedContent data-testid=\"summary-item-value-projected\">\n <ng-content></ng-content>\n</span>\n}\n", styles: [":host{display:inline-flex;flex-direction:row;align-items:center;gap:.25rem;flex:0 1 auto;max-width:100%;min-width:0;overflow:visible}:host.hidden{display:none}:host(.has-icon){flex:0 0 auto;width:auto}.value,.value-link,.projected-wrapper,clr-tooltip [clrTooltipTrigger]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}cds-icon{flex-shrink:0}.value-icon-link{display:inline-flex;align-items:center;text-decoration:none;cursor:pointer}.value-icon-link cds-icon{color:var(--cds-alias-typography-link-color)}.value-icon-link:hover cds-icon,.value-icon-link:focus cds-icon{color:var(--cds-alias-typography-link-color-hover)}.value-icon-link:visited cds-icon{color:var(--cds-alias-typography-link-color-visited)}.value-icon{height:20px;width:20px}.value-icon-neutral{color:var(--cds-alias-status-neutral)}.value-link,.edit-link{color:var(--cds-alias-typography-link-color);text-decoration:underline;cursor:pointer}.value-link:visited,.edit-link:visited{color:var(--cds-alias-typography-link-color-visited)}.value-link:hover,.value-link:focus,.edit-link:hover,.edit-link:focus{color:var(--cds-alias-typography-link-color-hover);text-decoration:underline}.value{display:inline-block}clr-tooltip{display:inline-flex;flex:1 1 auto;min-width:0;overflow:visible}clr-tooltip [clrTooltipTrigger]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}::ng-deep clr-tooltip-content{overflow-wrap:break-word;word-wrap:break-word;hyphens:auto}::ng-deep .tooltip-content{overflow-wrap:break-word;word-wrap:break-word;hyphens:auto}:host(.error){color:var(--cds-alias-status-danger)}:host(.error) cds-icon{color:var(--cds-alias-status-danger)!important}:host(.error) .value{color:var(--cds-alias-status-danger)}:host(.warning){color:var(--cds-alias-status-warning)}:host(.warning) cds-icon{color:var(--cds-alias-status-warning)!important}:host(.warning) .value{color:var(--cds-alias-status-warning)}\n"], dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: ClarityModule }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "directive", type: i2$4.ClrIfOpen, selector: "[clrIfOpen]", inputs: ["clrIfOpen"], outputs: ["clrIfOpenChange"] }, { kind: "component", type: i1$4.ClrTooltip, selector: "clr-tooltip" }, { kind: "directive", type: i1$4.ClrTooltipTrigger, selector: "[clrTooltipTrigger]" }, { kind: "component", type: i1$4.ClrTooltipContent, selector: "clr-tooltip-content", inputs: ["id", "clrPosition", "clrSize"] }] }); }
17525
17827
  }
17526
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryItemValue, decorators: [{
17828
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryItemValue, decorators: [{
17527
17829
  type: Component,
17528
17830
  args: [{ selector: 'clr-summary-item-value', standalone: true, imports: [RouterModule, ClarityModule, ClrIcon], providers: [provideAnimations()], template: "@if (icon() !== undefined && icon() !== null && icon() !== '') { @if (href()) { @if (tooltip()) {\n<clr-tooltip>\n <a\n clrTooltipTrigger\n class=\"value-icon-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-link\"\n >\n <cds-icon [shape]=\"icon()\" class=\"value-icon value-link\"></cds-icon>\n </a>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-link-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<a\n class=\"value-icon-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-link-plain\"\n>\n <cds-icon [shape]=\"icon()\" class=\"value-icon value-link\"></cds-icon>\n</a>\n} } @else if (hasClickHandler) { @if (tooltip()) {\n<clr-tooltip>\n <cds-icon\n clrTooltipTrigger\n [shape]=\"icon()\"\n class=\"value-icon value-link\"\n tabindex=\"0\"\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-action\"\n ></cds-icon>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-action-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<cds-icon\n [shape]=\"icon()\"\n class=\"value-icon value-link\"\n tabindex=\"0\"\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-icon-action-plain\"\n></cds-icon>\n} } @else { @if (tooltip()) {\n<clr-tooltip>\n <cds-icon\n clrTooltipTrigger\n [shape]=\"icon()\"\n class=\"value-icon value-icon-neutral\"\n data-testid=\"summary-item-value-icon\"\n ></cds-icon>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-icon-tooltip\"\n >\n {{ tooltip() }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<cds-icon [shape]=\"icon()\" class=\"value-icon value-icon-neutral\" data-testid=\"summary-item-value-icon-plain\"></cds-icon>\n} } } @else if (value() !== undefined && value() !== null && value() !== '') { @if (href()) { @if (effectiveTooltip) {\n<clr-tooltip>\n <a\n #valueElement\n class=\"value value-link\"\n clrTooltipTrigger\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-link\"\n >\n {{ value() }}\n </a>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-link-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<a\n #valueElement\n class=\"value value-link\"\n [href]=\"href()\"\n [attr.target]=\"target() ?? null\"\n (click)=\"handleClick()\"\n data-testid=\"summary-item-value-link-plain\"\n>\n {{ value() }}\n</a>\n} } @else if (hasClickHandler) {\n<clr-tooltip>\n <span\n #valueElement\n class=\"value value-link\"\n clrTooltipTrigger\n (click)=\"handleClick()\"\n (keydown.enter)=\"handleClick()\"\n data-testid=\"summary-item-value-action\"\n >\n {{ value() }}\n </span>\n @if (effectiveTooltip) {\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-action-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n }\n</clr-tooltip>\n} @else if(effectiveTooltip) {\n<clr-tooltip>\n <span #valueElement class=\"value\" clrTooltipTrigger data-testid=\"summary-item-value\">{{ value() }}</span>\n <clr-tooltip-content\n [clrSize]=\"tooltipSize\"\n [clrPosition]=\"tooltipPosition\"\n *clrIfOpen\n data-testid=\"summary-item-value-tooltip\"\n >\n {{ effectiveTooltip }}</clr-tooltip-content\n >\n</clr-tooltip>\n} @else {\n<span #valueElement class=\"value\" data-testid=\"summary-item-value-plain\">{{ value() }}</span>\n} } @else {\n<span class=\"projected-wrapper\" #projectedContent data-testid=\"summary-item-value-projected\">\n <ng-content></ng-content>\n</span>\n}\n", styles: [":host{display:inline-flex;flex-direction:row;align-items:center;gap:.25rem;flex:0 1 auto;max-width:100%;min-width:0;overflow:visible}:host.hidden{display:none}:host(.has-icon){flex:0 0 auto;width:auto}.value,.value-link,.projected-wrapper,clr-tooltip [clrTooltipTrigger]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}cds-icon{flex-shrink:0}.value-icon-link{display:inline-flex;align-items:center;text-decoration:none;cursor:pointer}.value-icon-link cds-icon{color:var(--cds-alias-typography-link-color)}.value-icon-link:hover cds-icon,.value-icon-link:focus cds-icon{color:var(--cds-alias-typography-link-color-hover)}.value-icon-link:visited cds-icon{color:var(--cds-alias-typography-link-color-visited)}.value-icon{height:20px;width:20px}.value-icon-neutral{color:var(--cds-alias-status-neutral)}.value-link,.edit-link{color:var(--cds-alias-typography-link-color);text-decoration:underline;cursor:pointer}.value-link:visited,.edit-link:visited{color:var(--cds-alias-typography-link-color-visited)}.value-link:hover,.value-link:focus,.edit-link:hover,.edit-link:focus{color:var(--cds-alias-typography-link-color-hover);text-decoration:underline}.value{display:inline-block}clr-tooltip{display:inline-flex;flex:1 1 auto;min-width:0;overflow:visible}clr-tooltip [clrTooltipTrigger]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}::ng-deep clr-tooltip-content{overflow-wrap:break-word;word-wrap:break-word;hyphens:auto}::ng-deep .tooltip-content{overflow-wrap:break-word;word-wrap:break-word;hyphens:auto}:host(.error){color:var(--cds-alias-status-danger)}:host(.error) cds-icon{color:var(--cds-alias-status-danger)!important}:host(.error) .value{color:var(--cds-alias-status-danger)}:host(.warning){color:var(--cds-alias-status-warning)}:host(.warning) cds-icon{color:var(--cds-alias-status-warning)!important}:host(.warning) .value{color:var(--cds-alias-status-warning)}\n"] }]
17529
17831
  }], ctorParameters: () => [], propDecorators: { projectedContent: [{
@@ -17732,10 +18034,10 @@ class ClrSummaryItem {
17732
18034
  return !child.hasIcon && !!child.value()?.trim();
17733
18035
  });
17734
18036
  }
17735
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17736
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrSummaryItem, isStandalone: true, selector: "clr-summary-item", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, warning: { classPropertyName: "warning", publicName: "warning", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, editConfig: { classPropertyName: "editConfig", publicName: "editConfig", isSignal: true, isRequired: false, transformFunction: null }, showOnEmptyValue: { classPropertyName: "showOnEmptyValue", publicName: "showOnEmptyValue", isSignal: true, isRequired: false, transformFunction: null }, valueCopyable: { classPropertyName: "valueCopyable", publicName: "valueCopyable", isSignal: true, isRequired: false, transformFunction: null }, copyButtonTooltip: { classPropertyName: "copyButtonTooltip", publicName: "copyButtonTooltip", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "valueChildren", predicate: ClrSummaryItemValue, descendants: true }], viewQueries: [{ propertyName: "template", first: true, predicate: ["itemTemplate"], descendants: true, static: true }, { propertyName: "valuesContainer", first: true, predicate: ["valuesContainer"], descendants: true }], ngImport: i0, template: "<ng-template #itemTemplate>\n <div\n class=\"summary-item\"\n [attr.data-testid]=\"'summary-item-' + (label())\"\n [class.hidden]=\"\n !hasProjectedContent && !hasLoading && !hasError && !hasWarning && !showEditButton && !showOnEmptyValue()\n \"\n >\n <span class=\"summary-item-label\" [attr.data-testid]=\"'summary-item-label-' + (label())\">{{ label() }}:</span>\n <div class=\"summary-item-values\" #valuesContainer [attr.data-testid]=\"'summary-item-values-' + (label())\">\n @if (hasLoading) {\n <div class=\"summary-item-loading\" [attr.data-testid]=\"'summary-item-loading-' + (label())\">\n <span class=\"spinner spinner-inline\" [attr.data-testid]=\"'summary-item-loading-spinner-' + (label())\"></span>\n <span [attr.data-testid]=\"'summary-item-loading-text-' + (label())\">{{ loadingText }}</span>\n </div>\n } @else if (hasError) {\n <clr-summary-item-value\n icon=\"error-standard\"\n class=\"error\"\n [attr.data-testid]=\"'summary-item-error-icon-' + (label())\"\n ></clr-summary-item-value>\n <clr-summary-item-value\n [value]=\"errorText\"\n [clickable]=\"true\"\n (clicked)=\"errorClick()\"\n class=\"error\"\n [attr.data-testid]=\"'summary-item-error-' + (label())\"\n ></clr-summary-item-value>\n } @else if (hasWarning) {\n <clr-summary-item-value\n icon=\"warning-standard\"\n class=\"warning\"\n [attr.data-testid]=\"'summary-item-warning-icon-' + (label())\"\n ></clr-summary-item-value>\n <clr-summary-item-value\n [value]=\"warningText\"\n [clickable]=\"true\"\n (clicked)=\"warningClick()\"\n class=\"warning\"\n [attr.data-testid]=\"'summary-item-warning-' + (label())\"\n ></clr-summary-item-value>\n } @else {\n <ng-content select=\"clr-summary-item-value\"></ng-content>\n @if (showCopyButton) {\n <clr-copy-to-clipboard\n [value]=\"copyableValue\"\n [tooltipText]=\"copyButtonTooltip()\"\n [attr.data-testid]=\"'summary-item-copy-button-' + (label())\"\n ></clr-copy-to-clipboard>\n }\n <ng-content></ng-content>\n @if (showEditButton) {\n <clr-summary-item-value\n [value]=\"editText\"\n [clickable]=\"true\"\n (clicked)=\"editClick()\"\n [attr.data-testid]=\"'summary-item-edit-' + (label())\"\n ></clr-summary-item-value>\n } @else if (!hasProjectedContent) {\n <span class=\"value value-placeholder\" [attr.data-testid]=\"'summary-item-placeholder-' + (label())\">&mdash;</span>\n } }\n </div>\n </div>\n</ng-template>\n", styles: [":host{display:block;min-width:0;max-width:100%;overflow:hidden}.summary-item{display:flex;flex-direction:row;align-items:center;gap:.25rem;width:100%;min-width:0}.summary-item.hidden{display:none}.summary-item-label{flex-shrink:0;white-space:nowrap;font-weight:600}.summary-item-values{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.25rem;flex:1 1 auto;min-width:0;max-width:100%;overflow:visible}clr-copy-to-clipboard{flex:0 0 auto}.summary-item-loading{display:flex;align-items:center}.summary-item-loading .loading-spinner{width:20px;height:20px;flex-shrink:0}.summary-item-loading .loading-text{color:var(--cds-alias-typography-color-300);white-space:nowrap}.value{display:inline-block;flex:1 1 auto;min-width:0;overflow:visible;text-overflow:ellipsis;white-space:nowrap}.value-link,.edit-link{color:var(--cds-alias-typography-link-color);text-decoration:underline;cursor:pointer}.value-link:visited,.edit-link:visited{color:var(--cds-alias-typography-link-color-visited)}.value-link:hover,.value-link:focus,.edit-link:hover,.edit-link:focus{color:var(--cds-alias-typography-link-color-hover);text-decoration:underline}\n"], dependencies: [{ kind: "ngmodule", type: ClarityModule }, { kind: "component", type: ClrSummaryItemValue, selector: "clr-summary-item-value", inputs: ["value", "icon", "tooltip", "clickable", "href", "target"], outputs: ["clicked"] }, { kind: "component", type: ClrCopyToClipboard, selector: "clr-copy-to-clipboard", inputs: ["value", "tooltipText", "hiddenUntilHovered"] }] }); }
18037
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18038
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrSummaryItem, isStandalone: true, selector: "clr-summary-item", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, warning: { classPropertyName: "warning", publicName: "warning", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, editConfig: { classPropertyName: "editConfig", publicName: "editConfig", isSignal: true, isRequired: false, transformFunction: null }, showOnEmptyValue: { classPropertyName: "showOnEmptyValue", publicName: "showOnEmptyValue", isSignal: true, isRequired: false, transformFunction: null }, valueCopyable: { classPropertyName: "valueCopyable", publicName: "valueCopyable", isSignal: true, isRequired: false, transformFunction: null }, copyButtonTooltip: { classPropertyName: "copyButtonTooltip", publicName: "copyButtonTooltip", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "valueChildren", predicate: ClrSummaryItemValue, descendants: true }], viewQueries: [{ propertyName: "template", first: true, predicate: ["itemTemplate"], descendants: true, static: true }, { propertyName: "valuesContainer", first: true, predicate: ["valuesContainer"], descendants: true }], ngImport: i0, template: "<ng-template #itemTemplate>\n <div\n class=\"summary-item\"\n [attr.data-testid]=\"'summary-item-' + (label())\"\n [class.hidden]=\"\n !hasProjectedContent && !hasLoading && !hasError && !hasWarning && !showEditButton && !showOnEmptyValue()\n \"\n >\n <span class=\"summary-item-label\" [attr.data-testid]=\"'summary-item-label-' + (label())\">{{ label() }}:</span>\n <div class=\"summary-item-values\" #valuesContainer [attr.data-testid]=\"'summary-item-values-' + (label())\">\n @if (hasLoading) {\n <div class=\"summary-item-loading\" [attr.data-testid]=\"'summary-item-loading-' + (label())\">\n <span class=\"spinner spinner-inline\" [attr.data-testid]=\"'summary-item-loading-spinner-' + (label())\"></span>\n <span [attr.data-testid]=\"'summary-item-loading-text-' + (label())\">{{ loadingText }}</span>\n </div>\n } @else if (hasError) {\n <clr-summary-item-value\n icon=\"error-standard\"\n class=\"error\"\n [attr.data-testid]=\"'summary-item-error-icon-' + (label())\"\n ></clr-summary-item-value>\n <clr-summary-item-value\n [value]=\"errorText\"\n [clickable]=\"true\"\n (clicked)=\"errorClick()\"\n class=\"error\"\n [attr.data-testid]=\"'summary-item-error-' + (label())\"\n ></clr-summary-item-value>\n } @else if (hasWarning) {\n <clr-summary-item-value\n icon=\"warning-standard\"\n class=\"warning\"\n [attr.data-testid]=\"'summary-item-warning-icon-' + (label())\"\n ></clr-summary-item-value>\n <clr-summary-item-value\n [value]=\"warningText\"\n [clickable]=\"true\"\n (clicked)=\"warningClick()\"\n class=\"warning\"\n [attr.data-testid]=\"'summary-item-warning-' + (label())\"\n ></clr-summary-item-value>\n } @else {\n <ng-content select=\"clr-summary-item-value\"></ng-content>\n @if (showCopyButton) {\n <clr-copy-to-clipboard\n [value]=\"copyableValue\"\n [tooltipText]=\"copyButtonTooltip()\"\n [attr.data-testid]=\"'summary-item-copy-button-' + (label())\"\n ></clr-copy-to-clipboard>\n }\n <ng-content></ng-content>\n @if (showEditButton) {\n <clr-summary-item-value\n [value]=\"editText\"\n [clickable]=\"true\"\n (clicked)=\"editClick()\"\n [attr.data-testid]=\"'summary-item-edit-' + (label())\"\n ></clr-summary-item-value>\n } @else if (!hasProjectedContent) {\n <span class=\"value value-placeholder\" [attr.data-testid]=\"'summary-item-placeholder-' + (label())\">&mdash;</span>\n } }\n </div>\n </div>\n</ng-template>\n", styles: [":host{display:block;min-width:0;max-width:100%;overflow:hidden}.summary-item{display:flex;flex-direction:row;align-items:center;gap:.25rem;width:100%;min-width:0}.summary-item.hidden{display:none}.summary-item-label{flex-shrink:0;white-space:nowrap;font-weight:600}.summary-item-values{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.25rem;flex:1 1 auto;min-width:0;max-width:100%;overflow:visible}clr-copy-to-clipboard{flex:0 0 auto}.summary-item-loading{display:flex;align-items:center}.summary-item-loading .loading-spinner{width:20px;height:20px;flex-shrink:0}.summary-item-loading .loading-text{color:var(--cds-alias-typography-color-300);white-space:nowrap}.value{display:inline-block;flex:1 1 auto;min-width:0;overflow:visible;text-overflow:ellipsis;white-space:nowrap}.value-link,.edit-link{color:var(--cds-alias-typography-link-color);text-decoration:underline;cursor:pointer}.value-link:visited,.edit-link:visited{color:var(--cds-alias-typography-link-color-visited)}.value-link:hover,.value-link:focus,.edit-link:hover,.edit-link:focus{color:var(--cds-alias-typography-link-color-hover);text-decoration:underline}\n"], dependencies: [{ kind: "ngmodule", type: ClarityModule }, { kind: "component", type: ClrSummaryItemValue, selector: "clr-summary-item-value", inputs: ["value", "icon", "tooltip", "clickable", "href", "target"], outputs: ["clicked"] }, { kind: "component", type: ClrCopyToClipboard, selector: "clr-copy-to-clipboard", inputs: ["value", "tooltipText", "hiddenUntilHovered"] }] }); }
17737
18039
  }
17738
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryItem, decorators: [{
18040
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryItem, decorators: [{
17739
18041
  type: Component,
17740
18042
  args: [{ selector: 'clr-summary-item', standalone: true, imports: [ClarityModule, ClrSummaryItemValue, ClrCopyToClipboard], template: "<ng-template #itemTemplate>\n <div\n class=\"summary-item\"\n [attr.data-testid]=\"'summary-item-' + (label())\"\n [class.hidden]=\"\n !hasProjectedContent && !hasLoading && !hasError && !hasWarning && !showEditButton && !showOnEmptyValue()\n \"\n >\n <span class=\"summary-item-label\" [attr.data-testid]=\"'summary-item-label-' + (label())\">{{ label() }}:</span>\n <div class=\"summary-item-values\" #valuesContainer [attr.data-testid]=\"'summary-item-values-' + (label())\">\n @if (hasLoading) {\n <div class=\"summary-item-loading\" [attr.data-testid]=\"'summary-item-loading-' + (label())\">\n <span class=\"spinner spinner-inline\" [attr.data-testid]=\"'summary-item-loading-spinner-' + (label())\"></span>\n <span [attr.data-testid]=\"'summary-item-loading-text-' + (label())\">{{ loadingText }}</span>\n </div>\n } @else if (hasError) {\n <clr-summary-item-value\n icon=\"error-standard\"\n class=\"error\"\n [attr.data-testid]=\"'summary-item-error-icon-' + (label())\"\n ></clr-summary-item-value>\n <clr-summary-item-value\n [value]=\"errorText\"\n [clickable]=\"true\"\n (clicked)=\"errorClick()\"\n class=\"error\"\n [attr.data-testid]=\"'summary-item-error-' + (label())\"\n ></clr-summary-item-value>\n } @else if (hasWarning) {\n <clr-summary-item-value\n icon=\"warning-standard\"\n class=\"warning\"\n [attr.data-testid]=\"'summary-item-warning-icon-' + (label())\"\n ></clr-summary-item-value>\n <clr-summary-item-value\n [value]=\"warningText\"\n [clickable]=\"true\"\n (clicked)=\"warningClick()\"\n class=\"warning\"\n [attr.data-testid]=\"'summary-item-warning-' + (label())\"\n ></clr-summary-item-value>\n } @else {\n <ng-content select=\"clr-summary-item-value\"></ng-content>\n @if (showCopyButton) {\n <clr-copy-to-clipboard\n [value]=\"copyableValue\"\n [tooltipText]=\"copyButtonTooltip()\"\n [attr.data-testid]=\"'summary-item-copy-button-' + (label())\"\n ></clr-copy-to-clipboard>\n }\n <ng-content></ng-content>\n @if (showEditButton) {\n <clr-summary-item-value\n [value]=\"editText\"\n [clickable]=\"true\"\n (clicked)=\"editClick()\"\n [attr.data-testid]=\"'summary-item-edit-' + (label())\"\n ></clr-summary-item-value>\n } @else if (!hasProjectedContent) {\n <span class=\"value value-placeholder\" [attr.data-testid]=\"'summary-item-placeholder-' + (label())\">&mdash;</span>\n } }\n </div>\n </div>\n</ng-template>\n", styles: [":host{display:block;min-width:0;max-width:100%;overflow:hidden}.summary-item{display:flex;flex-direction:row;align-items:center;gap:.25rem;width:100%;min-width:0}.summary-item.hidden{display:none}.summary-item-label{flex-shrink:0;white-space:nowrap;font-weight:600}.summary-item-values{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.25rem;flex:1 1 auto;min-width:0;max-width:100%;overflow:visible}clr-copy-to-clipboard{flex:0 0 auto}.summary-item-loading{display:flex;align-items:center}.summary-item-loading .loading-spinner{width:20px;height:20px;flex-shrink:0}.summary-item-loading .loading-text{color:var(--cds-alias-typography-color-300);white-space:nowrap}.value{display:inline-block;flex:1 1 auto;min-width:0;overflow:visible;text-overflow:ellipsis;white-space:nowrap}.value-link,.edit-link{color:var(--cds-alias-typography-link-color);text-decoration:underline;cursor:pointer}.value-link:visited,.edit-link:visited{color:var(--cds-alias-typography-link-color-visited)}.value-link:hover,.value-link:focus,.edit-link:hover,.edit-link:focus{color:var(--cds-alias-typography-link-color-hover);text-decoration:underline}\n"] }]
17741
18043
  }], propDecorators: { template: [{
@@ -17816,10 +18118,10 @@ class ClrSummaryAreaStateService {
17816
18118
  return false;
17817
18119
  }
17818
18120
  }
17819
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryAreaStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
17820
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryAreaStateService, providedIn: 'root' }); }
18121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryAreaStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
18122
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryAreaStateService, providedIn: 'root' }); }
17821
18123
  }
17822
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryAreaStateService, decorators: [{
18124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryAreaStateService, decorators: [{
17823
18125
  type: Injectable,
17824
18126
  args: [{ providedIn: 'root' }]
17825
18127
  }] });
@@ -18146,10 +18448,10 @@ class ClrSummaryArea {
18146
18448
  });
18147
18449
  }
18148
18450
  }
18149
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryArea, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18150
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: ClrSummaryArea, isStandalone: true, selector: "clr-summary-area", inputs: { rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, localStorageKey: { classPropertyName: "localStorageKey", publicName: "localStorageKey", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, warning: { classPropertyName: "warning", publicName: "warning", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "window:resize": "onResize()" } }, queries: [{ propertyName: "items", predicate: ClrSummaryItem, descendants: true }], viewQueries: [{ propertyName: "panelsRef", first: true, predicate: ["panelsRef"], descendants: true, static: true }], ngImport: i0, template: "<div\n #panelsRef\n class=\"summary-area-panels\"\n data-testid=\"summary-area-panels\"\n [class.is-active]=\"!isCollapsed()\"\n [class.loading-active]=\"hasLoading\"\n [style.height]=\"panelHeight\"\n>\n <div\n class=\"summary-area-panel summary-area-panel--state\"\n data-testid=\"summary-area-state-panel\"\n [class.is-active]=\"!isCollapsed() && (hasLoading || hasError || hasWarning)\"\n [class.is-error]=\"hasError\"\n [class.is-warning]=\"hasWarning\"\n [style.--rows]=\"currentRows()\"\n [attr.aria-hidden]=\"isCollapsed() || !(hasLoading || hasError || hasWarning) ? 'true' : 'false'\"\n [attr.inert]=\"isCollapsed() || !(hasLoading || hasError || hasWarning) ? '' : null\"\n >\n <div class=\"summary-area-panel__body\">\n <div\n class=\"summary-area-loading\"\n data-testid=\"summary-area-loading\"\n [class.is-visible]=\"loadingVisible\"\n [attr.aria-hidden]=\"!hasLoading\"\n [style.height]=\"loadingPanelHeight\"\n >\n <clr-spinner [clrMedium]=\"true\" data-testid=\"summary-area-loading-spinner\"></clr-spinner>\n <span class=\"loading-text\" data-testid=\"summary-area-loading-text\">{{ loadingText }}</span>\n </div>\n @if (hasError) {\n <div class=\"summary-area-alert\" data-testid=\"summary-area-error-alert\">\n <clr-alert [clrAlertLightweight]=\"true\" [clrAlertType]=\"'danger'\" data-testid=\"summary-area-error\">\n <clr-alert-item>\n @if (errorLinkText && errorClick) {\n <span class=\"alert-text\" data-testid=\"summary-area-error-text\">{{ errorText }}</span>\n <span\n class=\"alert-action\"\n (click)=\"errorClick()\"\n (keydown.enter)=\"errorClick()\"\n data-testid=\"summary-area-error-action\"\n >{{ errorLinkText }}</span\n >\n } @else if (errorClick) {\n <span\n class=\"alert-action\"\n (click)=\"errorClick()\"\n (keydown.enter)=\"errorClick()\"\n data-testid=\"summary-area-error-text-action\"\n >{{ errorText }}</span\n >\n } @else {\n <span class=\"alert-text\" data-testid=\"summary-area-error-text-only\">{{ errorText }}</span>\n }\n </clr-alert-item>\n </clr-alert>\n </div>\n } @else if (hasWarning) {\n <div class=\"summary-area-alert\" data-testid=\"summary-area-warning-alert\">\n <clr-alert [clrAlertLightweight]=\"true\" [clrAlertType]=\"'warning'\" data-testid=\"summary-area-warning\">\n <clr-alert-item>\n @if (warningLinkText && warningClick) {\n <span class=\"alert-text\" data-testid=\"summary-area-warning-text\">{{ warningText }}</span>\n <span\n class=\"alert-action\"\n (click)=\"warningClick()\"\n (keydown.enter)=\"warningClick()\"\n data-testid=\"summary-area-warning-action\"\n >\n {{ warningLinkText }}\n </span>\n } @else if (warningClick) {\n <span\n class=\"alert-action\"\n (click)=\"warningClick()\"\n (keydown.enter)=\"warningClick()\"\n data-testid=\"summary-area-warning-text-action\"\n >{{ warningText }}</span\n >\n } @else {\n <span class=\"alert-text\" data-testid=\"summary-area-warning-text-only\">{{ warningText }}</span>\n }\n </clr-alert-item>\n </clr-alert>\n </div>\n }\n </div>\n </div>\n\n <div\n class=\"summary-area-panel summary-area-panel--grid\"\n data-testid=\"summary-area-grid-panel\"\n [class.is-active]=\"!isCollapsed() && !hasError && !hasWarning && !hasLoading\"\n [attr.aria-hidden]=\"isCollapsed() || hasError || hasWarning || hasLoading ? 'true' : 'false'\"\n [attr.inert]=\"isCollapsed() || hasError || hasWarning || hasLoading ? '' : null\"\n >\n <div class=\"summary-area-panel__body\">\n <div class=\"summary-area-container\">\n <div\n class=\"summary-grid\"\n [style.--columns]=\"currentColumns\"\n [style.--rows]=\"currentRows()\"\n data-testid=\"summary-area-grid\"\n >\n @for (item of visibleItems; track item) {\n <ng-container *ngTemplateOutlet=\"item.template\"></ng-container>\n }\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".summary-area-container,.summary-area-alert{margin:0 24px 9px;max-width:100%;overflow-x:auto}.summary-grid{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,320px));grid-template-rows:repeat(var(--rows),auto);grid-auto-flow:column;max-width:100%;column-gap:36px;row-gap:6px;padding:3px 0}.summary-item{max-width:320px;min-width:0;height:20px;overflow:visible;display:flex;flex-direction:column}clr-alert-item{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}clr-alert-item .alert-text{flex:none;width:auto;white-space:nowrap;align-self:flex-start}clr-alert-item .alert-action{white-space:nowrap}.alert-action{color:var(--cds-alias-typography-link-color)!important;cursor:pointer}.alert-action:visited{color:var(--cds-alias-typography-link-color-visited)}.alert-action:hover,.alert-action:focus{color:var(--cds-alias-typography-link-color-hover)}clr-alert ::ng-deep>.alert-lightweight{padding-left:0;padding-right:0}.summary-area-panels{position:relative;height:0;opacity:0;transform-origin:top center;pointer-events:none;visibility:hidden;overflow:hidden;margin:0 0 9px;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .4s ease-in-out,visibility .4s ease-in-out}.summary-area-panels.is-active{opacity:1;pointer-events:auto;visibility:visible;overflow:visible;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .4s ease-in-out,visibility .4s ease-in-out}.summary-area-panels.loading-active{display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .4s ease-in-out}.summary-area-panel{transform-origin:top center;opacity:0;pointer-events:none;transition:opacity .4s ease-in-out;position:absolute;top:0;left:0;right:0}.summary-area-panel__body{will-change:opacity}.summary-area-panel.is-active{opacity:1;pointer-events:auto;position:relative;transition:opacity .4s ease-in-out}.summary-area-panel.is-active .summary-area-panel__body{overflow:visible}.summary-area-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;margin:0 24px;padding:3px 0;opacity:0;transition:opacity 0s ease-in-out}.summary-area-loading.is-visible{opacity:1;transition:opacity .4s ease-in-out}.summary-area-loading .loading-text{color:var(--cds-alias-typography-color-300)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ClarityModule }, { kind: "component", type: i2$4.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertLightweight", "clrAlertType", "clrAlertIcon", "clrAlertClosed"], outputs: ["clrAlertClosedChange"] }, { kind: "component", type: i2$4.ClrAlertItem, selector: "clr-alert-item" }, { kind: "directive", type: i2$4.ClrAlertText, selector: ".alert-text" }, { kind: "component", type: i2$5.ClrSpinner, selector: "clr-spinner", inputs: ["clrInline", "clrInverse", "clrSmall", "clrMedium"] }] }); }
18451
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryArea, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18452
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: ClrSummaryArea, isStandalone: true, selector: "clr-summary-area", inputs: { rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, localStorageKey: { classPropertyName: "localStorageKey", publicName: "localStorageKey", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, warning: { classPropertyName: "warning", publicName: "warning", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "window:resize": "onResize()" } }, queries: [{ propertyName: "items", predicate: ClrSummaryItem, descendants: true }], viewQueries: [{ propertyName: "panelsRef", first: true, predicate: ["panelsRef"], descendants: true, static: true }], ngImport: i0, template: "<div\n #panelsRef\n class=\"summary-area-panels\"\n data-testid=\"summary-area-panels\"\n [class.is-active]=\"!isCollapsed()\"\n [class.loading-active]=\"hasLoading\"\n [style.height]=\"panelHeight\"\n>\n <div\n class=\"summary-area-panel summary-area-panel--state\"\n data-testid=\"summary-area-state-panel\"\n [class.is-active]=\"!isCollapsed() && (hasLoading || hasError || hasWarning)\"\n [class.is-error]=\"hasError\"\n [class.is-warning]=\"hasWarning\"\n [style.--rows]=\"currentRows()\"\n [attr.aria-hidden]=\"isCollapsed() || !(hasLoading || hasError || hasWarning) ? 'true' : 'false'\"\n [attr.inert]=\"isCollapsed() || !(hasLoading || hasError || hasWarning) ? '' : null\"\n >\n <div class=\"summary-area-panel__body\">\n <div\n class=\"summary-area-loading\"\n data-testid=\"summary-area-loading\"\n [class.is-visible]=\"loadingVisible\"\n [attr.aria-hidden]=\"!hasLoading\"\n [style.height]=\"loadingPanelHeight\"\n >\n <clr-spinner [clrMedium]=\"true\" data-testid=\"summary-area-loading-spinner\"></clr-spinner>\n <span class=\"loading-text\" data-testid=\"summary-area-loading-text\">{{ loadingText }}</span>\n </div>\n @if (hasError) {\n <div class=\"summary-area-alert\" data-testid=\"summary-area-error-alert\">\n <clr-alert [clrAlertLightweight]=\"true\" [clrAlertType]=\"'danger'\" data-testid=\"summary-area-error\">\n <clr-alert-item>\n @if (errorLinkText && errorClick) {\n <span class=\"alert-text\" data-testid=\"summary-area-error-text\">{{ errorText }}</span>\n <span\n class=\"alert-action\"\n (click)=\"errorClick()\"\n (keydown.enter)=\"errorClick()\"\n data-testid=\"summary-area-error-action\"\n >{{ errorLinkText }}</span\n >\n } @else if (errorClick) {\n <span\n class=\"alert-action\"\n (click)=\"errorClick()\"\n (keydown.enter)=\"errorClick()\"\n data-testid=\"summary-area-error-text-action\"\n >{{ errorText }}</span\n >\n } @else {\n <span class=\"alert-text\" data-testid=\"summary-area-error-text-only\">{{ errorText }}</span>\n }\n </clr-alert-item>\n </clr-alert>\n </div>\n } @else if (hasWarning) {\n <div class=\"summary-area-alert\" data-testid=\"summary-area-warning-alert\">\n <clr-alert [clrAlertLightweight]=\"true\" [clrAlertType]=\"'warning'\" data-testid=\"summary-area-warning\">\n <clr-alert-item>\n @if (warningLinkText && warningClick) {\n <span class=\"alert-text\" data-testid=\"summary-area-warning-text\">{{ warningText }}</span>\n <span\n class=\"alert-action\"\n (click)=\"warningClick()\"\n (keydown.enter)=\"warningClick()\"\n data-testid=\"summary-area-warning-action\"\n >\n {{ warningLinkText }}\n </span>\n } @else if (warningClick) {\n <span\n class=\"alert-action\"\n (click)=\"warningClick()\"\n (keydown.enter)=\"warningClick()\"\n data-testid=\"summary-area-warning-text-action\"\n >{{ warningText }}</span\n >\n } @else {\n <span class=\"alert-text\" data-testid=\"summary-area-warning-text-only\">{{ warningText }}</span>\n }\n </clr-alert-item>\n </clr-alert>\n </div>\n }\n </div>\n </div>\n\n <div\n class=\"summary-area-panel summary-area-panel--grid\"\n data-testid=\"summary-area-grid-panel\"\n [class.is-active]=\"!isCollapsed() && !hasError && !hasWarning && !hasLoading\"\n [attr.aria-hidden]=\"isCollapsed() || hasError || hasWarning || hasLoading ? 'true' : 'false'\"\n [attr.inert]=\"isCollapsed() || hasError || hasWarning || hasLoading ? '' : null\"\n >\n <div class=\"summary-area-panel__body\">\n <div class=\"summary-area-container\">\n <div\n class=\"summary-grid\"\n [style.--columns]=\"currentColumns\"\n [style.--rows]=\"currentRows()\"\n data-testid=\"summary-area-grid\"\n >\n @for (item of visibleItems; track item) {\n <ng-container *ngTemplateOutlet=\"item.template\"></ng-container>\n }\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".summary-area-container,.summary-area-alert{margin:0 24px 9px;max-width:100%;overflow-x:auto}.summary-grid{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,320px));grid-template-rows:repeat(var(--rows),auto);grid-auto-flow:column;max-width:100%;column-gap:36px;row-gap:6px;padding:3px 0}.summary-item{max-width:320px;min-width:0;height:20px;overflow:visible;display:flex;flex-direction:column}clr-alert-item{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}clr-alert-item .alert-text{flex:none;width:auto;white-space:nowrap;align-self:flex-start}clr-alert-item .alert-action{white-space:nowrap}.alert-action{color:var(--cds-alias-typography-link-color)!important;cursor:pointer}.alert-action:visited{color:var(--cds-alias-typography-link-color-visited)}.alert-action:hover,.alert-action:focus{color:var(--cds-alias-typography-link-color-hover)}clr-alert ::ng-deep>.alert-lightweight{padding-left:0;padding-right:0}.summary-area-panels{position:relative;height:0;opacity:0;transform-origin:top center;pointer-events:none;visibility:hidden;overflow:hidden;margin:0 0 9px;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .4s ease-in-out,visibility .4s ease-in-out}.summary-area-panels.is-active{opacity:1;pointer-events:auto;visibility:visible;overflow:visible;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .4s ease-in-out,visibility .4s ease-in-out}.summary-area-panels.loading-active{display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .4s ease-in-out}.summary-area-panel{transform-origin:top center;opacity:0;pointer-events:none;transition:opacity .4s ease-in-out;position:absolute;top:0;left:0;right:0}.summary-area-panel__body{will-change:opacity}.summary-area-panel.is-active{opacity:1;pointer-events:auto;position:relative;transition:opacity .4s ease-in-out}.summary-area-panel.is-active .summary-area-panel__body{overflow:visible}.summary-area-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;margin:0 24px;padding:3px 0;opacity:0;transition:opacity 0s ease-in-out}.summary-area-loading.is-visible{opacity:1;transition:opacity .4s ease-in-out}.summary-area-loading .loading-text{color:var(--cds-alias-typography-color-300)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ClarityModule }, { kind: "component", type: i2$5.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertLightweight", "clrAlertType", "clrAlertIcon", "clrAlertClosed"], outputs: ["clrAlertClosedChange"] }, { kind: "component", type: i2$5.ClrAlertItem, selector: "clr-alert-item" }, { kind: "directive", type: i2$5.ClrAlertText, selector: ".alert-text" }, { kind: "component", type: i2$6.ClrSpinner, selector: "clr-spinner", inputs: ["clrInline", "clrInverse", "clrSmall", "clrMedium"] }] }); }
18151
18453
  }
18152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryArea, decorators: [{
18454
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryArea, decorators: [{
18153
18455
  type: Component,
18154
18456
  args: [{ selector: 'clr-summary-area', standalone: true, imports: [CommonModule, ClarityModule], template: "<div\n #panelsRef\n class=\"summary-area-panels\"\n data-testid=\"summary-area-panels\"\n [class.is-active]=\"!isCollapsed()\"\n [class.loading-active]=\"hasLoading\"\n [style.height]=\"panelHeight\"\n>\n <div\n class=\"summary-area-panel summary-area-panel--state\"\n data-testid=\"summary-area-state-panel\"\n [class.is-active]=\"!isCollapsed() && (hasLoading || hasError || hasWarning)\"\n [class.is-error]=\"hasError\"\n [class.is-warning]=\"hasWarning\"\n [style.--rows]=\"currentRows()\"\n [attr.aria-hidden]=\"isCollapsed() || !(hasLoading || hasError || hasWarning) ? 'true' : 'false'\"\n [attr.inert]=\"isCollapsed() || !(hasLoading || hasError || hasWarning) ? '' : null\"\n >\n <div class=\"summary-area-panel__body\">\n <div\n class=\"summary-area-loading\"\n data-testid=\"summary-area-loading\"\n [class.is-visible]=\"loadingVisible\"\n [attr.aria-hidden]=\"!hasLoading\"\n [style.height]=\"loadingPanelHeight\"\n >\n <clr-spinner [clrMedium]=\"true\" data-testid=\"summary-area-loading-spinner\"></clr-spinner>\n <span class=\"loading-text\" data-testid=\"summary-area-loading-text\">{{ loadingText }}</span>\n </div>\n @if (hasError) {\n <div class=\"summary-area-alert\" data-testid=\"summary-area-error-alert\">\n <clr-alert [clrAlertLightweight]=\"true\" [clrAlertType]=\"'danger'\" data-testid=\"summary-area-error\">\n <clr-alert-item>\n @if (errorLinkText && errorClick) {\n <span class=\"alert-text\" data-testid=\"summary-area-error-text\">{{ errorText }}</span>\n <span\n class=\"alert-action\"\n (click)=\"errorClick()\"\n (keydown.enter)=\"errorClick()\"\n data-testid=\"summary-area-error-action\"\n >{{ errorLinkText }}</span\n >\n } @else if (errorClick) {\n <span\n class=\"alert-action\"\n (click)=\"errorClick()\"\n (keydown.enter)=\"errorClick()\"\n data-testid=\"summary-area-error-text-action\"\n >{{ errorText }}</span\n >\n } @else {\n <span class=\"alert-text\" data-testid=\"summary-area-error-text-only\">{{ errorText }}</span>\n }\n </clr-alert-item>\n </clr-alert>\n </div>\n } @else if (hasWarning) {\n <div class=\"summary-area-alert\" data-testid=\"summary-area-warning-alert\">\n <clr-alert [clrAlertLightweight]=\"true\" [clrAlertType]=\"'warning'\" data-testid=\"summary-area-warning\">\n <clr-alert-item>\n @if (warningLinkText && warningClick) {\n <span class=\"alert-text\" data-testid=\"summary-area-warning-text\">{{ warningText }}</span>\n <span\n class=\"alert-action\"\n (click)=\"warningClick()\"\n (keydown.enter)=\"warningClick()\"\n data-testid=\"summary-area-warning-action\"\n >\n {{ warningLinkText }}\n </span>\n } @else if (warningClick) {\n <span\n class=\"alert-action\"\n (click)=\"warningClick()\"\n (keydown.enter)=\"warningClick()\"\n data-testid=\"summary-area-warning-text-action\"\n >{{ warningText }}</span\n >\n } @else {\n <span class=\"alert-text\" data-testid=\"summary-area-warning-text-only\">{{ warningText }}</span>\n }\n </clr-alert-item>\n </clr-alert>\n </div>\n }\n </div>\n </div>\n\n <div\n class=\"summary-area-panel summary-area-panel--grid\"\n data-testid=\"summary-area-grid-panel\"\n [class.is-active]=\"!isCollapsed() && !hasError && !hasWarning && !hasLoading\"\n [attr.aria-hidden]=\"isCollapsed() || hasError || hasWarning || hasLoading ? 'true' : 'false'\"\n [attr.inert]=\"isCollapsed() || hasError || hasWarning || hasLoading ? '' : null\"\n >\n <div class=\"summary-area-panel__body\">\n <div class=\"summary-area-container\">\n <div\n class=\"summary-grid\"\n [style.--columns]=\"currentColumns\"\n [style.--rows]=\"currentRows()\"\n data-testid=\"summary-area-grid\"\n >\n @for (item of visibleItems; track item) {\n <ng-container *ngTemplateOutlet=\"item.template\"></ng-container>\n }\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".summary-area-container,.summary-area-alert{margin:0 24px 9px;max-width:100%;overflow-x:auto}.summary-grid{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,320px));grid-template-rows:repeat(var(--rows),auto);grid-auto-flow:column;max-width:100%;column-gap:36px;row-gap:6px;padding:3px 0}.summary-item{max-width:320px;min-width:0;height:20px;overflow:visible;display:flex;flex-direction:column}clr-alert-item{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}clr-alert-item .alert-text{flex:none;width:auto;white-space:nowrap;align-self:flex-start}clr-alert-item .alert-action{white-space:nowrap}.alert-action{color:var(--cds-alias-typography-link-color)!important;cursor:pointer}.alert-action:visited{color:var(--cds-alias-typography-link-color-visited)}.alert-action:hover,.alert-action:focus{color:var(--cds-alias-typography-link-color-hover)}clr-alert ::ng-deep>.alert-lightweight{padding-left:0;padding-right:0}.summary-area-panels{position:relative;height:0;opacity:0;transform-origin:top center;pointer-events:none;visibility:hidden;overflow:hidden;margin:0 0 9px;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .4s ease-in-out,visibility .4s ease-in-out}.summary-area-panels.is-active{opacity:1;pointer-events:auto;visibility:visible;overflow:visible;transition:height .3s cubic-bezier(.4,0,.2,1),opacity .4s ease-in-out,visibility .4s ease-in-out}.summary-area-panels.loading-active{display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .4s ease-in-out}.summary-area-panel{transform-origin:top center;opacity:0;pointer-events:none;transition:opacity .4s ease-in-out;position:absolute;top:0;left:0;right:0}.summary-area-panel__body{will-change:opacity}.summary-area-panel.is-active{opacity:1;pointer-events:auto;position:relative;transition:opacity .4s ease-in-out}.summary-area-panel.is-active .summary-area-panel__body{overflow:visible}.summary-area-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;margin:0 24px;padding:3px 0;opacity:0;transition:opacity 0s ease-in-out}.summary-area-loading.is-visible{opacity:1;transition:opacity .4s ease-in-out}.summary-area-loading .loading-text{color:var(--cds-alias-typography-color-300)}\n"] }]
18155
18457
  }], ctorParameters: () => [], propDecorators: { items: [{
@@ -18195,10 +18497,10 @@ class ClrSummaryAreaToggle {
18195
18497
  this.state.toggle(this.localStorageKey());
18196
18498
  this.summaryToggle.emit();
18197
18499
  }
18198
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryAreaToggle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18199
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.22", type: ClrSummaryAreaToggle, isStandalone: true, selector: "clr-summary-area-toggle", inputs: { ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, localStorageKey: { classPropertyName: "localStorageKey", publicName: "localStorageKey", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { summaryToggle: "summaryToggle" }, host: { listeners: { "keydown": "handleKeydown($event)" } }, ngImport: i0, template: "<button\n class=\"summary-area-toggle\"\n data-testid=\"summary-area-toggle\"\n type=\"button\"\n [attr.aria-pressed]=\"!collapsed()\"\n [attr.aria-label]=\"ariaLabel()\"\n (click)=\"handleToggle($event)\"\n>\n <cds-icon\n shape=\"angle-double\"\n size=\"20\"\n direction=\"up\"\n class=\"icon-rotate summary-area-icon\"\n [class.icon-rotated]=\"collapsed()\"\n [class.no-animation]=\"suppressAnimation\"\n ></cds-icon>\n</button>\n", styles: [".summary-area-toggle{background:transparent;border:none;padding:0;margin:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.summary-area-icon{margin-left:10px;margin-right:10px;opacity:.7}.icon-rotated{transform:rotate(180deg);transition:all .2s ease-in-out}.icon-rotated.no-animation{transition:none!important}.summary-area-toggle:disabled{cursor:not-allowed;opacity:.4}\n"], dependencies: [{ kind: "component", type: ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "ngmodule", type: ClrTooltipModule }] }); }
18500
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryAreaToggle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18501
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.23", type: ClrSummaryAreaToggle, isStandalone: true, selector: "clr-summary-area-toggle", inputs: { ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, localStorageKey: { classPropertyName: "localStorageKey", publicName: "localStorageKey", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { summaryToggle: "summaryToggle" }, host: { listeners: { "keydown": "handleKeydown($event)" } }, ngImport: i0, template: "<button\n class=\"summary-area-toggle\"\n data-testid=\"summary-area-toggle\"\n type=\"button\"\n [attr.aria-pressed]=\"!collapsed()\"\n [attr.aria-label]=\"ariaLabel()\"\n (click)=\"handleToggle($event)\"\n>\n <cds-icon\n shape=\"angle-double\"\n size=\"20\"\n direction=\"up\"\n class=\"icon-rotate summary-area-icon\"\n [class.icon-rotated]=\"collapsed()\"\n [class.no-animation]=\"suppressAnimation\"\n ></cds-icon>\n</button>\n", styles: [".summary-area-toggle{background:transparent;border:none;padding:0;margin:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.summary-area-icon{margin-left:10px;margin-right:10px;opacity:.7}.icon-rotated{transform:rotate(180deg);transition:all .2s ease-in-out}.icon-rotated.no-animation{transition:none!important}.summary-area-toggle:disabled{cursor:not-allowed;opacity:.4}\n"], dependencies: [{ kind: "component", type: ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "ngmodule", type: ClrTooltipModule }] }); }
18200
18502
  }
18201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ClrSummaryAreaToggle, decorators: [{
18503
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ClrSummaryAreaToggle, decorators: [{
18202
18504
  type: Component,
18203
18505
  args: [{ selector: 'clr-summary-area-toggle', standalone: true, imports: [ClrIcon, ClrTooltipModule], template: "<button\n class=\"summary-area-toggle\"\n data-testid=\"summary-area-toggle\"\n type=\"button\"\n [attr.aria-pressed]=\"!collapsed()\"\n [attr.aria-label]=\"ariaLabel()\"\n (click)=\"handleToggle($event)\"\n>\n <cds-icon\n shape=\"angle-double\"\n size=\"20\"\n direction=\"up\"\n class=\"icon-rotate summary-area-icon\"\n [class.icon-rotated]=\"collapsed()\"\n [class.no-animation]=\"suppressAnimation\"\n ></cds-icon>\n</button>\n", styles: [".summary-area-toggle{background:transparent;border:none;padding:0;margin:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.summary-area-icon{margin-left:10px;margin-right:10px;opacity:.7}.icon-rotated{transform:rotate(180deg);transition:all .2s ease-in-out}.icon-rotated.no-animation{transition:none!important}.summary-area-toggle:disabled{cursor:not-allowed;opacity:.4}\n"] }]
18204
18506
  }], propDecorators: { summaryToggle: [{ type: i0.Output, args: ["summaryToggle"] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], localStorageKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "localStorageKey", required: false }] }], handleKeydown: [{
@@ -18234,5 +18536,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
18234
18536
  * Generated bundle index. Do not edit.
18235
18537
  */
18236
18538
 
18237
- export { ACShape, AcceptanceDateShape, AcceptedBrands, AccessoryPartsShape, AudiBrandShape, AwardWinnerPremiumShape, BIG_ENDIAN, BlocksGroupForwardShape, BundleForwardShape, BusinessCustomersCommercialShape, BusinessCustomersPrivateShape, BusinessPartnerWithCar, CLR_BLANK_OPTION, CONTENT_PROVIDER, CalculatorForwardShape, CaliforniaServiceShape, CampaignOutdatedShape, CampaignShape, CarOffSite, CarOnSite, CircleFilled, CircleHalfFilled, CircleQuarterFilled, CircleThreeQuartersFilled, ClrActionPanel, ClrActionPanelContainer, ClrActionPanelContainerContent, ClrActionPanelContainerFooter, ClrActionPanelModule, ClrActiveNotification, ClrAddonsLabel, ClrAddonsModule, ClrAutocompleteOff, ClrAutocompleteOffModule, ClrBackButton, ClrBackButtonModule, ClrBrandAvatar, ClrBrandAvatarModule, ClrBreadcrumb, ClrBreadcrumbModule, ClrBreadcrumbService, ClrCollapseExpandSection, ClrCollapseExpandSectionModule, ClrContentPanel, ClrContentPanelContainer, ClrContentPanelContainerContent, ClrContentPanelContainerFooter, ClrContentPanelModule, ClrContentRef, ClrControlEnterSubmitDirective, ClrCopyToClipboard, ClrDataListPredefinedValidatorDirective, ClrDataListValidatorModule, ClrDataListValidators, ClrDatagridColumnReorderModule, ClrDatagridStatePersistenceModule, ClrDateFilterComponent, ClrDateFilterModule, ClrDateTimeContainer, ClrDateTimeModule, ClrDaterangeMaxValidator, ClrDaterangeMinValidator, ClrDaterangeOrderValidator, ClrDaterangeRequiredValidator, ClrDaterangepickerContainerComponent, ClrDaterangepickerDirective, ClrDaterangepickerModule, ClrDotPager, ClrDotPagerModule, ClrDropdownOverflowDirective, ClrDropdownOverflowModule, ClrEnumFilterComponent, ClrEnumFilterModule, ClrExportDatagridButtonModule, ClrFlowBar, ClrFlowBarModule, ClrFocusFirstInvalidFieldDirective, ClrFormModule, ClrGenericQuickList, ClrGenericQuickListModule, ClrHistory, ClrHistoryModule, ClrHistoryPinned, ClrHistoryService, ClrIconAvatar, ClrIconAvatarModule, ClrIfDaterangeErrorDirective, ClrIfWarning, ClrIfWarningModule, ClrImageCarousel, ClrImageGallery, ClrImageGalleryModule, ClrKeyboardNavAltMnemonicDirective, ClrKeyboardNavCtrlArrowDirective, ClrLetterAvatar, ClrLetterAvatarModule, ClrLocationBarModule, ClrMainNavGroup, ClrMainNavGroupItem, ClrMainNavGroupModule, ClrMaxNumeric, ClrMinNumeric, ClrMultilingualInput, ClrMultilingualInputValidators, ClrMultilingualModule, ClrMultilingualSelector, ClrMultilingualTextarea, ClrNotification, ClrNotificationModule, ClrNotificationRef, ClrNotificationService, ClrNumericField, ClrNumericFieldModule, ClrNumericFieldValidators, ClrPagedSearchResultList, ClrPagedSearchResultListModule, ClrPager, ClrPagerModule, ClrProgressSpinnerComponent, ClrProgressSpinnerModule, ClrQuickList, ClrQuickListModule, ClrReadonlyDirective, ClrReadonlyDirectiveModule, ClrRequiredAllMultilang, ClrRequiredOneMultilang, ClrSearchField, ClrSearchFieldModule, ClrSummaryArea, ClrSummaryAreaStateService, ClrSummaryAreaToggle, ClrSummaryItem, ClrSummaryItemValue, ClrTimeInput, ClrTreetable, ClrTreetableActionOverflow, ClrTreetableCell, ClrTreetableColumn, ClrTreetableFilter, ClrTreetableFooter, ClrTreetableHideableColumn, ClrTreetableModule, ClrTreetablePlaceholder, ClrTreetableRow, ClrTreetableSortOrder, ClrTreetableStringFilter, ClrTreetableTreeNode, ClrViewEditSection, ClrViewEditSectionModule, ColumnHiddenStatePersistenceDirective, CompletedByDateShape, CupraBrandShape, Customer, CustomerVip, CustomerVipCollection, CustomerWaiting, CustomerWaitingCollection, DATE, DELIMITER_REGEX, DWABrandShape, DatagridColumnReorderDirective, DatagridFieldDirective, DayModel, DeliveryDate, DieselShape, DollarBillForwardShape, DollarBillPartialShape, DynamicCellContentComponent, EnergyShape, ExportDatagridButtonComponent, ExportDatagridService, ExportTypeEnum, ExternalPartForwardShape, FirstRegistrationDate, GasCarsServiceShape, GasShape, HISTORY_NOTIFICATION_URL_PROVIDER, HISTORY_PROVIDER, HISTORY_TOKEN, HistoryProvider, InternalPartForwardShape, InvoiceReadyShape, InvoiceRecipient, InvoiceShape, ItemsForwardShape, ItemsReceiveShape, LITTLE_ENDIAN, LITTLE_ENDIAN_REGEX, LocationBarComponent, LocationBarContentProvider, LocationBarNode, LogoCommissionModule, LogoCommissionModuleFavIcon, LogoCommissionModuleNegative, LogoCommissionModuleNegativeFavIcon, LogoCostApproval, LogoCostApprovalFavIcon, LogoCostApprovalNegative, LogoCostApprovalNegativeFavIcon, LogoCostControlling, LogoCostControllingFavIcon, LogoCostControllingNegative, LogoCostControllingNegativeFavIcon, LogoDigitalServiceReception, LogoDigitalServiceReceptionFavIcon, LogoDigitalServiceReceptionNegative, LogoDigitalServiceReceptionNegativeFavIcon, LogoDocFlow, LogoDocFlowFavIcon, LogoDocFlowNegative, LogoDocFlowNegativeFavIcon, LogoDocScan, LogoDocScanFavIcon, LogoDocScanNegative, LogoDocScanNegativeFavIcon, LogoDocStore, LogoDocStoreFavIcon, LogoDocStoreNegative, LogoDocStoreNegativeFavIcon, LogoEBilling, LogoEBillingFavIcon, LogoEBillingNegative, LogoEBillingNegativeFavIcon, LogoEPayment, LogoEPaymentFavIcon, LogoEPaymentNegative, LogoEPaymentNegativeFavIcon, LogoMobilityPlanner, LogoMobilityPlannerFavIcon, LogoMobilityPlannerNegative, LogoMobilityPlannerNegativeFavIcon, LogoPartsMobile, LogoPartsMobileFavIcon, LogoPartsMobileNegative, LogoPartsMobileNegativeFavIcon, LogoSBO, LogoSBOFavIcon, LogoSBONegative, LogoSBONegativeFavIcon, LogoServiceCube, LogoServiceCubeFavIcon, LogoServiceCubeNegative, LogoServiceCubeNegativeFavIcon, LogoWCP, LogoWCPFavIcon, LogoWCPNegative, LogoWCPNegativeFavIcon, LogoWorkshopOrderTracker, LogoWorkshopOrderTrackerFavIcon, LogoWorkshopOrderTrackerNegative, LogoWorkshopOrderTrackerNegativeFavIcon, MIDDLE_ENDIAN, MIDDLE_ENDIAN_REGEX, MONTH, Mechanic, NewCarUtilityVehicleShape, NodeId, Number0, Number1, Number10, Number11, Number12, Number13, Number14, Number15, Number16, Number17, Number18, Number19, Number2, Number20, Number3, Number4, Number5, Number6, Number7, Number8, Number9, OrderShape, OrderStatusShape, PaintMaterialForwardShape, PaintMaterialShape, ParkingLocation, PartAvailabilityInfoShape, PartAvailabilityNoShape, PartAvailabilityUnknownShape, PartAvailabilityWarningShape, PartAvailabilityYesShape, PartIdenticalPredecessorShape, PartIdenticalShape, PartIdenticalSuccessorShape, PartIdenticalSuccpredecessorShape, PartNonStockForwardShape, PartPredecessorShape, PartSuccessorPredecessorShape, PartSuccessorShape, PartsChangelocation, PartsForwardShape, PartsInventory, PartsNonStockShape, PartsPicking, PartsPickingPlus, PartsReceiving, PartsShape, PlusServiceShape, PorscheBrandShape, PriceTypeSwitchShape, RepeatRepairCollection, RepeatRepairShape, ReplacementVehicleCollection, ReplacementVehicleShape, ReturnDateShape, SEPARATOR_TEXT_DEFAULT, SeatBrandShape, ServiceAdvisor, SkodaBrandShape, SortStateService, StatePersistenceKeyDirective, TRANSLATIONS, TaskAndAppointment, TextForward, TimeModel, TopcardShape, TouaregServiceShape, TreetableCellRenderer, TreetableDataStateService, TreetableHeaderRenderer, TreetableItemsDirective, TreetableMainRenderer, TreetableRowRenderer, USER_INPUT_REGEX, VWBrandShape, VWNBrandShape, VWShape, VehicleConversionShape, VinShape, VsfSearchShape, VsfSearchShape48, WCPShape, WrenchForward, YEAR, acceleration, accelerationIcon, acceptanceDateIcon, accessories, accessoriesIcon, accessoryPartsIcon, adblueAppIcon, adblue_app, add, addIcon, airConditionerIcon, air_conditioning, alert, alertFilledAppIcon, alertIcon, alertNotificationFilledAppIcon, alert_filled_app, alert_notification_filled_app, allIcons, ambientLightAppIcon, ambient_light_app, amplifier, amplifierIcon, appConnectAppIcon, app_connect_app, archive, archiveIcon, arrowDownIcon, arrowLeftAlignedAppIcon, arrowLeftIcon, arrowRightIcon, arrowSliderAppIcon, arrowUpIcon, arrow_down, arrow_left, arrow_left_aligned_app, arrow_right, arrow_slider_app, arrow_up, attachment, attachmentIcon, audiBrandIcon, authentPlugChargeAppIcon, authentQrAppIcon, authentRfidAppIcon, authentTouchidAppIcon, authent_plug_charge_app, authent_qr_app, authent_rfid_app, authent_touch_id_app, automaticTempAppIcon, automatic_temp_app, awardWinnerPremiumIcon, award_winner_premium, back, backIcon, battery, batteryIcon, batterySocChargingAppIcon, batterySocDepartureAppIcon, batterySocDestinationAppIcon, battery_soc_charging_app, battery_soc_departure_app, battery_soc_destination_app, bin, binIcon, blocksGroupForwardIcon, bluetooth, bluetoothIcon, bookmark, bookmarkFilledIcon, bookmarkIcon, bookmark_filled, brakeAppIcon, brake_app, brochure, brochureIcon, bulletpointAppIcon, bulletpoint_app, bundleForwardIcon, businessCustomersCommercialIcon, businessCustomersPrivateIcon, businessPartnerWithCarIcon, business_customers_commercial, business_customers_private, calc, calcIcon, calculatorForwardIcon, calendar, calendarCustomIcon, californiaServiceIcon, californiaSpecialistIcon, california_specialist, cameraScanIcon, camera_scan, campaignIcon, campaignOutdatedIcon, carDocumentsIcon, carErrorAppIcon, carInsuranceIcon, carOffSite, carOnSite, carPickupServiceIcon, carPlusIcon, carSettingsIcon, carVerifiedAppIcon, carWashIcon, carWheelAppIcon, car_documents, car_error_app, car_insurance, car_pickup_service, car_plus, car_settings, car_verified_app, car_wheel_app, carwash, certifiedRepairIcon, certifiedRetailerIcon, certified_repair, certified_retailer, challengeAppIcon, challenge_app, charging, chargingIcon, chargingPduAppIcon, chargingStationIcon, chargingTarifOverviewAppIcon, charging_pdu_app, charging_station, charging_tarif_overview_app, chat, chatAppIcon, chatIcon, chat_app, checkboxCheckedAppIcon, checkboxCheckedIcon, checkboxUncheckedAppIcon, checkboxUncheckedIcon, checkbox_checked, checkbox_checked_app, checkbox_unchecked, checkbox_unchecked_app, checkmark, checkmarkAppIcon, checkmarkFilledAppIcon, checkmarkIcon, checkmark_app, checkmark_filled_app, chevronDownIcon, chevronLeftAlignedappIcon, chevronLeftIcon, chevronRightAlignedappIcon, chevronRightIcon, chevronSmallLeftAlignedappIcon, chevronSmallRightAlignedappIcon, chevronUpIcon, chevron_down, chevron_left, chevron_left_alignedapp, chevron_right, chevron_right_alignedapp, chevron_small_left_alignedapp, chevron_small_right_alignedapp, chevron_up, circleFilledIcon, circleHalfFilledIcon, circleQuarterFilledIcon, circleThreeQuartersFilledIcon, city, cityIcon, clearAppIcon, clearRightAlignedappIcon, clear_app, clear_right_alignedapp, clock, clockIcon, close, closeAppIcon, closeCircleIcon, closeIcon, closeLeftAlignedappIcon, closeRightAlignedappIcon, close_app, close_circle, close_left_alignedapp, close_right_alignedapp, clrIconSVG, coffeeFilledAppIcon, coffee_filled_app, compassAppIcon, compass_app, completedByDateIcon, configuratorCommercialIcon, configuratorPrivateIcon, configurator_commercial, configurator_private, construction, constructionIcon, consumptionFuelFilledAppIcon, consumptionIcon, consumption_fuel, consumption_fuel_filled_app, contact, contactDealerFilledAppIcon, contactDealerIcon, contactIcon, contact_dealer, contact_dealer_filled_app, countryRoadIcon, country_road, craft, craftIcon, cupraBrandIcon, customerIcon, customerVipIcon, customerWaitingIcon, customersCenterIcon, customers_center, dataCopyAppIcon, dataExpiredIcon, dataFilledIcon, dataInputIcon, dataPlugAppIcon, dataSearchIcon, dataTimeExtensionIcon, data_copy_app, data_expired, data_filled, data_input, data_plug_app, data_search, data_time_extension, defaultSummaryAreaCollapsedKey, defogDefrostAutoAppIcon, defogDefrostIcon, defog_defrost, defog_defrost_auto_app, deliveryDateIcon, destinationAppIcon, destination_app, dieselIcon, direction, directionIcon, dischargingAppIcon, discharging_app, discountAppIcon, discount_app, discoveryAppIcon, discovery_app, dollarBillForwardIcon, dollarBillPartialIcon, download, downloadCustomIcon, dragIndicatorIcon, drag_indicator, driversAssistanceIcon, drivers_assistance, dropFilledAppIcon, drop_filled_app, dwaBrandIcon, eco, ecoIcon, edit, editIcon, editSmallRightAlignedAppIcon, edit_small_right_aligned_app, efficiency, efficiencyIcon, electricCarsIcon, electricCarsServiceIcon, electric_cars, electric_cars_service, electricity, electricityFilledAppIcon, electricityIcon, electricity_filled_app, emergency, emergencyIcon, emission, emissionIcon, energyIcon, engine, engineIcon, entertainment, entertainmentIcon, escapeHtml, escapeRegex, exportAppIcon, export_app, expressServiceIcon, express_service, exterior, exterior360Icon, exteriorIcon, exterior_360, externalPartForwardIcon, faq, faqIcon, fastForwardIcon, fast_forward, fax, faxIcon, filter, filterIcon, findACarIcon, findADealerIcon, find_a_car, find_a_dealer, firstRegistrationDateIcon, fleetServiceCommercialIcon, fleetServicePrivateIcon, fleet_service_commercial, fleet_service_private, folderFilledAppIcon, folder_filled_app, foodFilledAppIcon, food_filled_app, formatNumber, fullscreenEnterIcon, fullscreenExitIcon, fullscreen_enter, fullscreen_exit, gallery, galleryIcon, garageAppIcon, garage_app, gasAppIcon, gasCarsServiceIcon, gasIcon, gas_app, glassDamageAppIcon, glass_damage_app, gte, gteIcon, heart, heartFilledAppIcon, heartIcon, heart_filled_app, heightAppIcon, height_app, highwayRoadIcon, highway_road, history, historyIcon, homeAppIcon, homeEnergyAppIcon, homeFilledAppIcon, home_app, home_energy_app, home_filled_app, hornAppIcon, hornFilledAppIcon, horn_app, horn_filled_app, hybrid, hybridIcon, immediateChargingAppIcon, immediate_charging_app, info, infoFilledIcon, infoIcon, info_filled, inputHideIcon, inputShowIcon, input_hide, input_show, interior, interior360Icon, interiorIcon, interior_360, internalPartForwardIcon, internet, internetIcon, invitationAppIcon, invitation_app, invoiceIcon, invoiceReadyIcon, invoiceRecipientIcon, itemsForwardIcon, itemsRecieveIcon, jobportal, jobportalIcon, keyAppIcon, keyCardAppIcon, keyDigitalAppIcon, key_app, key_card_app, key_digital_app, keyboardAppIcon, keyboard_app, layerCollapseAppIcon, layerExpandAppIcon, layer_collapse_app, layer_expand_app, layersAppIcon, layers_app, legalTermsAndConditionsAppIcon, legal_terms_and_conditions_app, licencePlateAppIcon, licence_plate_app, lightAssistappIcon, light_assistapp, lightingAppIcon, lighting_app, linkExternAppIcon, link_extern_app, list, listIcon, loadingVolumeIcon, loading_volume, localBusinessIcon, local_business, locate, locateIcon, lock, lockIcon, lockOpenIcon, lock_open, login, loginIcon, logistic, logisticIcon, logoCommissionModuleFavIcon, logoCommissionModuleIcon, logoCommissionModuleNegativeFavIcon, logoCommissionModuleNegativeIcon, logoCostApprovalFavIcon, logoCostApprovalIcon, logoCostApprovalNegativeFavIcon, logoCostApprovalNegativeIcon, logoCrossControllingFavIcon, logoCrossControllingIcon, logoCrossControllingNegativeFavIcon, logoCrossControllingNegativeIcon, logoDigitalServiceReceptionFavIcon, logoDigitalServiceReceptionIcon, logoDigitalServiceReceptionNegativeFavIcon, logoDigitalServiceReceptionNegativeIcon, logoDocFlowFavIcon, logoDocFlowIcon, logoDocFlowNegativeFavIcon, logoDocFlowNegativeIcon, logoDocScanFavIcon, logoDocScanIcon, logoDocScanNegativeFavIcon, logoDocScanNegativeIcon, logoDocStoreFavIcon, logoDocStoreIcon, logoDocStoreNegativeFavIcon, logoDocStoreNegativeIcon, logoEBillingFavIcon, logoEBillingIcon, logoEBillingNegativeFavIcon, logoEBillingNegativeIcon, logoEPaymentFavIcon, logoEPaymentIcon, logoEPaymentNegativeFavIcon, logoEPaymentNegativeIcon, logoMobilityPlannerFavIcon, logoMobilityPlannerIcon, logoMobilityPlannerNegativeFavIcon, logoMobilityPlannerNegativeIcon, logoPartsMobileFavIcon, logoPartsMobileIcon, logoPartsMobileNegativeFavIcon, logoPartsMobileNegativeIcon, logoSBOFavIcon, logoSBOIcon, logoSBONegativeFavIcon, logoSBONegativeIcon, logoServiceCubeFavIcon, logoServiceCubeIcon, logoServiceCubeNegativeFavIcon, logoServiceCubeNegativeIcon, logoWCPFavIcon, logoWCPIcon, logoWCPNegativeFavIcon, logoWCPNegativeIcon, logoWorkshopOrderTrackerFavIcon, logoWorkshopOrderTrackerIcon, logoWorkshopOrderTrackerNegativeFavIcon, logoWorkshopOrderTrackerNegativeIcon, logout, logoutIcon, magnifier, magnifierIcon, magnifierMinusIcon, magnifierPlusIcon, magnifier_minus, magnifier_plus, mail, mailIcon, mailResendAppIcon, mail_resend_app, manual, manualIcon, map, mapIcon, mapToInternalTree, mechanicIcon, media, mediaIcon, menu, menuAppAppIcon, menuIcon, menu_app_app, microphoneAppIcon, microphone_app, mobile, mobileIcon, moreAppIcon, moreAppbarAppIcon, more_app, more_appbar_app, mot, motIcon, motability, motabilityIcon, navigate, navigateFilledAppIcon, navigateIcon, navigate_filled_app, newCarCommercialIcon, newCarPrivateFilledAppIcon, newCarPrivateIcon, newCarUtilityVehicleIcon, new_car_commercial, new_car_private, new_car_private_filled_app, nightServiceIcon, night_service, notification, notificationFilledIcon, notificationIcon, notification_filled, number0Icon, number10Icon, number11Icon, number12Icon, number13Icon, number14Icon, number15Icon, number16Icon, number17Icon, number18Icon, number19Icon, number1Icon, number20Icon, number2Icon, number3Icon, number4Icon, number5Icon, number6Icon, number7Icon, number8Icon, number9Icon, offers, offersFilledAppIcon, offersIcon, offers_filled_app, officeAppIcon, officeFilledAppIcon, office_app, office_filled_app, oilLevelIcon, oilLevelWarningIcon, oilTemperatureAppIcon, oil_level, oil_level_warning, oil_temperature_app, onCallDutyIcon, on_call_duty, openSatIcon, open_sat, orderIcon, orderStatusIcon, paintMaterialForwardIcon, paintMaterialIcon, paintShopIcon, paint_shop, paragraphAppIcon, paragraph_app, parkHeaterAppIcon, park_heater_app, parking, parkingFilledAppIcon, parkingGarageAppIcon, parkingIcon, parkingLocationIcon, parkingRouteAppIcon, parkingValetAppIcon, parking_filled_app, parking_garage_app, parking_route_app, parking_valet_app, partAvailabilityInfoIcon, partAvailabilityNoIcon, partAvailabilityUnknownIcon, partAvailabilityWarningIcon, partAvailabilityYesIcon, partIdenticalIcon, partIdenticalPredecessorIcon, partIdenticalSuccessorIcon, partIdenticalSuccpredecessorIcon, partPredecessorIcon, partSuccessorIcon, partSuccessorPredecessorIcon, partsChangelocationIcon, partsForwardIcon, partsIcon, partsInventoryIcon, partsNonStockForwardIcon, partsNonStockIcon, partsPickingIcon, partsPickingPlusIcon, partsReceivingIcon, pause, pauseIcon, payload, payloadIcon, paymentAppIcon, paymentCashAppIcon, paymentChargingCardAppIcon, paymentCreditcardAppIcon, paymentMachineAppIcon, payment_app, payment_cash_app, payment_charging_card_app, payment_creditcard_app, payment_machine_app, performance, performanceIcon, petrol, petrolIcon, phone, phoneIcon, pin, pinFilledAppIcon, pinGenericFilledAppIcon, pinIcon, pin_filled_app, pin_generic_filled_app, play, playIcon, plugCcsAppIcon, plugChademoAppIcon, plugChargeAppIcon, plugGenericAppIcon, plugSchukoAppIcon, plugType1AppIcon, plugType2AppIcon, plug_ccs_app, plug_chademo_app, plug_charge_app, plug_generic_app, plug_schuko_app, plug_type1_app, plug_type2_app, plusServiceIcon, porscheBrandIcon, power, powerIcon, powerTrainIcon, powertrain, preHeaterAppIcon, pre_heater_app, preciseLaneNavigationAppIcon, precise_lane_navigation_app, presentAppIcon, present_app, priceTypeSwitchIcon, printer, printerIcon, privacyAppIcon, privacy_app, profile, profileIcon, profileRegisterAppIcon, profileVerifiedIcon, profile_register_app, profile_verified, publicServiceIcon, publicTransportAppIcon, public_service, public_transport_app, qualifiedWorkshopIcon, qualified_workshop, questionnaireAppIcon, questionnaire_app, radio, radioButtonInselectedIcon, radioButtonSelectedForDefIcon, radioButtonSelectedIcon, radioIcon, radio_button_inselected, radio_button_selected, radio_button_selected_for_development, range, rangeIcon, reload, reloadIcon, remove, removeIcon, repeat, repeatIcon, repeatRepairIcon, replacementVehicleIcon, returnDateIcon, rewind, rewindIcon, roadsideAssistanceIcon, roadside_assistance, route, routeArrowAppIcon, routeIcon, route_arrow_app, routesHistoryAppIcon, routes_history_app, rss, rssIcon, safety, safetyIcon, save, saveAppIcon, saveIcon, save_app, seat, seatAirIcon, seatBrandIcon, seatIcon, seat_air, secretTipAppIcon, secretTipFilledAppIcon, secret_tip_app, secret_tip_filled_app, selected, selectedIcon, selectedPartnerNetworkAppIcon, selected_partner_network_app, sendToCarAppIcon, send_to_car_app, service, serviceAdvisorIcon, serviceBellIcon, serviceFilledAppIcon, serviceIcon, service_bell, service_filled_app, settings, settingsIcon, shareAndroidIcon, shareIosIcon, share_android, share_ios, shoppingCartFilledAppIcon, shoppingCartIcon, shopping_cart, shopping_cart_filled_app, shuffle, shuffleIcon, size, sizeIcon, skillAppIcon, skill_app, skipBackwardIcon, skipForwardIcon, skip_backward, skip_forward, skodaBrandIcon, softwareDownloadAppIcon, software_download_app, sortingAppIcon, sorting_app, sound, soundIcon, sparkles, sparklesIcon, standardEquipmentIcon, standard_equipment, starFilledIcon, starOutlineIcon, star_filled, star_outline, statisticAppIcon, statistic_app, stockLocatorCommercialIcon, stockLocatorPrivateIcon, stock_locator_commercial, stock_locator_private, stop, stopIcon, strip, switchPositionAppIcon, switch_position_app, syncAppIcon, sync_app, taskAndAppointmentIcon, taxiDealerIcon, taxi_dealer, technicalSpecificationIcon, technical_specification, temperatureAppIcon, temperature_app, testDriveIcon, test_drive, textForwardIcon, thumbsdownAppIcon, thumbsdownFilledAppIcon, thumbsdown_app, thumbsdown_filled_app, thumbsupAppIcon, thumbsupFilledAppIcon, thumbsup_app, thumbsup_filled_app, timeClimatisationAppIcon, timePreferredAppIcon, time_climatisation_app, time_preferred_app, timer, timerIcon, topcardIcon, touaregServiceIcon, transcriptDownloadIcon, transcript_download, transmissionAutomaticIcon, transmissionManualIcon, transmission_automatic, transmission_manual, tripAppIcon, tripLongAppIcon, tripPartedAppIcon, tripShortAppIcon, trip_app, trip_long_app, trip_parted_app, trip_short_app, turnSignalsIcon, turn_signals, unselected, unselectedIcon, updateRefreshAppIcon, update_refresh_app, upload, uploadAppIcon, uploadCustomIcon, upload_app, usedCarCommercialIcon, usedCarPrivateIcon, used_car_commercial, used_car_private, vehicleAmarokIcon, vehicleCaddyIcon, vehicleConversionIcon, vehicleCrafterIcon, vehicleHightIcon, vehicleIdBuzzIcon, vehicleMultivanIcon, vehicleTransporterIcon, vehicle_amarok, vehicle_caddy, vehicle_crafter, vehicle_hight, vehicle_idbuzz, vehicle_multivan, vehicle_transporter, videoChatIcon, video_chat, view360Icon, view_360, vinIcon, virtualRealityIcon, virtual_reality, voiceMessageAppIcon, voice_message_app, volkswagenAppIcon, volkswagenIcon, volkswagen_app, volumeMaximumIcon, volumeMediumIcon, volumeMuteIcon, volume_maximum, volume_medium, volume_mute, vsfSearch48Icon, vsfSearchIcon, vwBrandIcon, vwConnectLicenseAppIcon, vw_connect_license_app, vwnBrandIcon, walkingAppIcon, walkingFilledAppIcon, walking_app, walking_filled_app, wallbox, wallboxIcon, wcAppIcon, wc_app, wcpIcon, weAssistAppIcon, weChargeAppIcon, weDeliverAppIcon, weExperienceAppIcon, weParkAppIcon, weUpgradeAppIcon, we_assist_app, we_charge_app, we_deliver_app, we_experience_app, we_park_app, we_upgrade_app, weatherSunAppIcon, weather_sun_app, wheelToWheelIcon, wheel_to_wheel, windscreenWashIcon, windscreen_wash, wlanHotspotIcon, wlan_hotspot, wrenchForwardIcon };
18539
+ export { ACShape, AcceptanceDateShape, AcceptedBrands, AccessoryPartsShape, AudiBrandShape, AwardWinnerPremiumShape, BIG_ENDIAN, BlocksGroupForwardShape, BundleForwardShape, BusinessCustomersCommercialShape, BusinessCustomersPrivateShape, BusinessPartnerWithCar, CLR_BLANK_OPTION, CONTENT_PROVIDER, CalculatorForwardShape, CaliforniaServiceShape, CampaignOutdatedShape, CampaignShape, CarOffSite, CarOnSite, CircleFilled, CircleHalfFilled, CircleQuarterFilled, CircleThreeQuartersFilled, ClrActionPanel, ClrActionPanelContainer, ClrActionPanelContainerContent, ClrActionPanelContainerFooter, ClrActionPanelModule, ClrActiveNotification, ClrAddonsLabel, ClrAddonsModule, ClrAutocompleteOff, ClrAutocompleteOffModule, ClrBackButton, ClrBackButtonModule, ClrBrandAvatar, ClrBrandAvatarModule, ClrBreadcrumb, ClrBreadcrumbModule, ClrBreadcrumbService, ClrCollapseExpandSection, ClrCollapseExpandSectionModule, ClrContentPanel, ClrContentPanelContainer, ClrContentPanelContainerContent, ClrContentPanelContainerFooter, ClrContentPanelModule, ClrContentRef, ClrControlEnterSubmitDirective, ClrCopyToClipboard, ClrDataListPredefinedValidatorDirective, ClrDataListValidatorModule, ClrDataListValidators, ClrDatagridColumnReorderModule, ClrDatagridStatePersistenceModule, ClrDateFilterComponent, ClrDateFilterModule, ClrDateTimeContainer, ClrDateTimeModule, ClrDaterangeMaxValidator, ClrDaterangeMinValidator, ClrDaterangeOrderValidator, ClrDaterangeRequiredValidator, ClrDaterangepickerContainerComponent, ClrDaterangepickerDirective, ClrDaterangepickerModule, ClrDotPager, ClrDotPagerModule, ClrDropdownOverflowDirective, ClrDropdownOverflowModule, ClrEnumFilterComponent, ClrEnumFilterModule, ClrExportDatagridButtonModule, ClrFlowBar, ClrFlowBarModule, ClrFocusFirstInvalidFieldDirective, ClrFormModule, ClrGenericQuickList, ClrGenericQuickListModule, ClrHistory, ClrHistoryModule, ClrHistoryPinned, ClrHistoryService, ClrIconAvatar, ClrIconAvatarModule, ClrIfDaterangeErrorDirective, ClrIfWarning, ClrIfWarningModule, ClrImageCarousel, ClrImageGallery, ClrImageGalleryModule, ClrKeyboardNavAltMnemonicDirective, ClrKeyboardNavCtrlArrowDirective, ClrLetterAvatar, ClrLetterAvatarModule, ClrLocationBarModule, ClrMainNavGroup, ClrMainNavGroupItem, ClrMainNavGroupModule, ClrMaxNumeric, ClrMinNumeric, ClrMultilingualInput, ClrMultilingualInputValidators, ClrMultilingualModule, ClrMultilingualSelector, ClrMultilingualTextarea, ClrNotification, ClrNotificationModule, ClrNotificationRef, ClrNotificationService, ClrNumericField, ClrNumericFieldModule, ClrNumericFieldValidators, ClrPagedSearchResultList, ClrPagedSearchResultListModule, ClrPager, ClrPagerModule, ClrProgressSpinnerComponent, ClrProgressSpinnerModule, ClrQuickList, ClrQuickListModule, ClrReadonlyDirective, ClrReadonlyDirectiveModule, ClrRequiredAllMultilang, ClrRequiredOneMultilang, ClrSearchField, ClrSearchFieldModule, ClrSummaryArea, ClrSummaryAreaStateService, ClrSummaryAreaToggle, ClrSummaryItem, ClrSummaryItemValue, ClrTimeInput, ClrTreetable, ClrTreetableActionOverflow, ClrTreetableCell, ClrTreetableColumn, ClrTreetableFilter, ClrTreetableFooter, ClrTreetableHideableColumn, ClrTreetableModule, ClrTreetablePlaceholder, ClrTreetableRow, ClrTreetableSortOrder, ClrTreetableStringFilter, ClrTreetableTreeNode, ClrViewEditSection, ClrViewEditSectionModule, ColumnHiddenStatePersistenceDirective, CompletedByDateShape, CupraBrandShape, Customer, CustomerVip, CustomerVipCollection, CustomerWaiting, CustomerWaitingCollection, DATE, DELIMITER_REGEX, DWABrandShape, DatagridColumnReorderDirective, DatagridFieldDirective, DayModel, DeliveryDate, DieselShape, DollarBillForwardShape, DollarBillPartialShape, DynamicCellContentComponent, EnergyShape, ExportDatagridButtonComponent, ExportDatagridService, ExportExcelService, ExportTreetableButtonComponent, ExportTypeEnum, ExternalPartForwardShape, FirstRegistrationDate, GasCarsServiceShape, GasShape, HISTORY_NOTIFICATION_URL_PROVIDER, HISTORY_PROVIDER, HISTORY_TOKEN, HistoryProvider, InternalPartForwardShape, InvoiceReadyShape, InvoiceRecipient, InvoiceShape, ItemsForwardShape, ItemsReceiveShape, LITTLE_ENDIAN, LITTLE_ENDIAN_REGEX, LocationBarComponent, LocationBarContentProvider, LocationBarNode, LogoCommissionModule, LogoCommissionModuleFavIcon, LogoCommissionModuleNegative, LogoCommissionModuleNegativeFavIcon, LogoCostApproval, LogoCostApprovalFavIcon, LogoCostApprovalNegative, LogoCostApprovalNegativeFavIcon, LogoCostControlling, LogoCostControllingFavIcon, LogoCostControllingNegative, LogoCostControllingNegativeFavIcon, LogoDigitalServiceReception, LogoDigitalServiceReceptionFavIcon, LogoDigitalServiceReceptionNegative, LogoDigitalServiceReceptionNegativeFavIcon, LogoDocFlow, LogoDocFlowFavIcon, LogoDocFlowNegative, LogoDocFlowNegativeFavIcon, LogoDocScan, LogoDocScanFavIcon, LogoDocScanNegative, LogoDocScanNegativeFavIcon, LogoDocStore, LogoDocStoreFavIcon, LogoDocStoreNegative, LogoDocStoreNegativeFavIcon, LogoEBilling, LogoEBillingFavIcon, LogoEBillingNegative, LogoEBillingNegativeFavIcon, LogoEPayment, LogoEPaymentFavIcon, LogoEPaymentNegative, LogoEPaymentNegativeFavIcon, LogoMobilityPlanner, LogoMobilityPlannerFavIcon, LogoMobilityPlannerNegative, LogoMobilityPlannerNegativeFavIcon, LogoPartsMobile, LogoPartsMobileFavIcon, LogoPartsMobileNegative, LogoPartsMobileNegativeFavIcon, LogoSBO, LogoSBOFavIcon, LogoSBONegative, LogoSBONegativeFavIcon, LogoServiceCube, LogoServiceCubeFavIcon, LogoServiceCubeNegative, LogoServiceCubeNegativeFavIcon, LogoWCP, LogoWCPFavIcon, LogoWCPNegative, LogoWCPNegativeFavIcon, LogoWorkshopOrderTracker, LogoWorkshopOrderTrackerFavIcon, LogoWorkshopOrderTrackerNegative, LogoWorkshopOrderTrackerNegativeFavIcon, MIDDLE_ENDIAN, MIDDLE_ENDIAN_REGEX, MONTH, Mechanic, NewCarUtilityVehicleShape, NodeId, Number0, Number1, Number10, Number11, Number12, Number13, Number14, Number15, Number16, Number17, Number18, Number19, Number2, Number20, Number3, Number4, Number5, Number6, Number7, Number8, Number9, OrderShape, OrderStatusShape, PaintMaterialForwardShape, PaintMaterialShape, ParkingLocation, PartAvailabilityInfoShape, PartAvailabilityNoShape, PartAvailabilityUnknownShape, PartAvailabilityWarningShape, PartAvailabilityYesShape, PartIdenticalPredecessorShape, PartIdenticalShape, PartIdenticalSuccessorShape, PartIdenticalSuccpredecessorShape, PartNonStockForwardShape, PartPredecessorShape, PartSuccessorPredecessorShape, PartSuccessorShape, PartsChangelocation, PartsForwardShape, PartsInventory, PartsNonStockShape, PartsPicking, PartsPickingPlus, PartsReceiving, PartsShape, PlusServiceShape, PorscheBrandShape, PriceTypeSwitchShape, RepeatRepairCollection, RepeatRepairShape, ReplacementVehicleCollection, ReplacementVehicleShape, ReturnDateShape, SEPARATOR_TEXT_DEFAULT, SeatBrandShape, ServiceAdvisor, SkodaBrandShape, SortStateService, StatePersistenceKeyDirective, TRANSLATIONS, TaskAndAppointment, TextForward, TimeModel, TopcardShape, TouaregServiceShape, TreetableCellRenderer, TreetableDataStateService, TreetableHeaderRenderer, TreetableItemsDirective, TreetableMainRenderer, TreetableRowRenderer, USER_INPUT_REGEX, VWBrandShape, VWNBrandShape, VWShape, VehicleConversionShape, VinShape, VsfSearchShape, VsfSearchShape48, WCPShape, WrenchForward, YEAR, acceleration, accelerationIcon, acceptanceDateIcon, accessories, accessoriesIcon, accessoryPartsIcon, adblueAppIcon, adblue_app, add, addIcon, airConditionerIcon, air_conditioning, alert, alertFilledAppIcon, alertIcon, alertNotificationFilledAppIcon, alert_filled_app, alert_notification_filled_app, allIcons, ambientLightAppIcon, ambient_light_app, amplifier, amplifierIcon, appConnectAppIcon, app_connect_app, archive, archiveIcon, arrowDownIcon, arrowLeftAlignedAppIcon, arrowLeftIcon, arrowRightIcon, arrowSliderAppIcon, arrowUpIcon, arrow_down, arrow_left, arrow_left_aligned_app, arrow_right, arrow_slider_app, arrow_up, attachment, attachmentIcon, audiBrandIcon, authentPlugChargeAppIcon, authentQrAppIcon, authentRfidAppIcon, authentTouchidAppIcon, authent_plug_charge_app, authent_qr_app, authent_rfid_app, authent_touch_id_app, automaticTempAppIcon, automatic_temp_app, awardWinnerPremiumIcon, award_winner_premium, back, backIcon, battery, batteryIcon, batterySocChargingAppIcon, batterySocDepartureAppIcon, batterySocDestinationAppIcon, battery_soc_charging_app, battery_soc_departure_app, battery_soc_destination_app, bin, binIcon, blocksGroupForwardIcon, bluetooth, bluetoothIcon, bookmark, bookmarkFilledIcon, bookmarkIcon, bookmark_filled, brakeAppIcon, brake_app, brochure, brochureIcon, bulletpointAppIcon, bulletpoint_app, bundleForwardIcon, businessCustomersCommercialIcon, businessCustomersPrivateIcon, businessPartnerWithCarIcon, business_customers_commercial, business_customers_private, calc, calcIcon, calculatorForwardIcon, calendar, calendarCustomIcon, californiaServiceIcon, californiaSpecialistIcon, california_specialist, cameraScanIcon, camera_scan, campaignIcon, campaignOutdatedIcon, carDocumentsIcon, carErrorAppIcon, carInsuranceIcon, carOffSite, carOnSite, carPickupServiceIcon, carPlusIcon, carSettingsIcon, carVerifiedAppIcon, carWashIcon, carWheelAppIcon, car_documents, car_error_app, car_insurance, car_pickup_service, car_plus, car_settings, car_verified_app, car_wheel_app, carwash, certifiedRepairIcon, certifiedRetailerIcon, certified_repair, certified_retailer, challengeAppIcon, challenge_app, charging, chargingIcon, chargingPduAppIcon, chargingStationIcon, chargingTarifOverviewAppIcon, charging_pdu_app, charging_station, charging_tarif_overview_app, chat, chatAppIcon, chatIcon, chat_app, checkboxCheckedAppIcon, checkboxCheckedIcon, checkboxUncheckedAppIcon, checkboxUncheckedIcon, checkbox_checked, checkbox_checked_app, checkbox_unchecked, checkbox_unchecked_app, checkmark, checkmarkAppIcon, checkmarkFilledAppIcon, checkmarkIcon, checkmark_app, checkmark_filled_app, chevronDownIcon, chevronLeftAlignedappIcon, chevronLeftIcon, chevronRightAlignedappIcon, chevronRightIcon, chevronSmallLeftAlignedappIcon, chevronSmallRightAlignedappIcon, chevronUpIcon, chevron_down, chevron_left, chevron_left_alignedapp, chevron_right, chevron_right_alignedapp, chevron_small_left_alignedapp, chevron_small_right_alignedapp, chevron_up, circleFilledIcon, circleHalfFilledIcon, circleQuarterFilledIcon, circleThreeQuartersFilledIcon, city, cityIcon, clearAppIcon, clearRightAlignedappIcon, clear_app, clear_right_alignedapp, clock, clockIcon, close, closeAppIcon, closeCircleIcon, closeIcon, closeLeftAlignedappIcon, closeRightAlignedappIcon, close_app, close_circle, close_left_alignedapp, close_right_alignedapp, clrIconSVG, coffeeFilledAppIcon, coffee_filled_app, compassAppIcon, compass_app, completedByDateIcon, configuratorCommercialIcon, configuratorPrivateIcon, configurator_commercial, configurator_private, construction, constructionIcon, consumptionFuelFilledAppIcon, consumptionIcon, consumption_fuel, consumption_fuel_filled_app, contact, contactDealerFilledAppIcon, contactDealerIcon, contactIcon, contact_dealer, contact_dealer_filled_app, countryRoadIcon, country_road, craft, craftIcon, cupraBrandIcon, customerIcon, customerVipIcon, customerWaitingIcon, customersCenterIcon, customers_center, dataCopyAppIcon, dataExpiredIcon, dataFilledIcon, dataInputIcon, dataPlugAppIcon, dataSearchIcon, dataTimeExtensionIcon, data_copy_app, data_expired, data_filled, data_input, data_plug_app, data_search, data_time_extension, defaultSummaryAreaCollapsedKey, defogDefrostAutoAppIcon, defogDefrostIcon, defog_defrost, defog_defrost_auto_app, deliveryDateIcon, destinationAppIcon, destination_app, dieselIcon, direction, directionIcon, dischargingAppIcon, discharging_app, discountAppIcon, discount_app, discoveryAppIcon, discovery_app, dollarBillForwardIcon, dollarBillPartialIcon, download, downloadCustomIcon, dragIndicatorIcon, drag_indicator, driversAssistanceIcon, drivers_assistance, dropFilledAppIcon, drop_filled_app, dwaBrandIcon, eco, ecoIcon, edit, editIcon, editSmallRightAlignedAppIcon, edit_small_right_aligned_app, efficiency, efficiencyIcon, electricCarsIcon, electricCarsServiceIcon, electric_cars, electric_cars_service, electricity, electricityFilledAppIcon, electricityIcon, electricity_filled_app, emergency, emergencyIcon, emission, emissionIcon, energyIcon, engine, engineIcon, entertainment, entertainmentIcon, escapeHtml, escapeRegex, exportAppIcon, export_app, expressServiceIcon, express_service, exterior, exterior360Icon, exteriorIcon, exterior_360, externalPartForwardIcon, faq, faqIcon, fastForwardIcon, fast_forward, fax, faxIcon, filter, filterIcon, findACarIcon, findADealerIcon, find_a_car, find_a_dealer, firstRegistrationDateIcon, fleetServiceCommercialIcon, fleetServicePrivateIcon, fleet_service_commercial, fleet_service_private, folderFilledAppIcon, folder_filled_app, foodFilledAppIcon, food_filled_app, formatNumber, fullscreenEnterIcon, fullscreenExitIcon, fullscreen_enter, fullscreen_exit, gallery, galleryIcon, garageAppIcon, garage_app, gasAppIcon, gasCarsServiceIcon, gasIcon, gas_app, glassDamageAppIcon, glass_damage_app, gte, gteIcon, heart, heartFilledAppIcon, heartIcon, heart_filled_app, heightAppIcon, height_app, highwayRoadIcon, highway_road, history, historyIcon, homeAppIcon, homeEnergyAppIcon, homeFilledAppIcon, home_app, home_energy_app, home_filled_app, hornAppIcon, hornFilledAppIcon, horn_app, horn_filled_app, hybrid, hybridIcon, immediateChargingAppIcon, immediate_charging_app, info, infoFilledIcon, infoIcon, info_filled, inputHideIcon, inputShowIcon, input_hide, input_show, interior, interior360Icon, interiorIcon, interior_360, internalPartForwardIcon, internet, internetIcon, invitationAppIcon, invitation_app, invoiceIcon, invoiceReadyIcon, invoiceRecipientIcon, itemsForwardIcon, itemsRecieveIcon, jobportal, jobportalIcon, keyAppIcon, keyCardAppIcon, keyDigitalAppIcon, key_app, key_card_app, key_digital_app, keyboardAppIcon, keyboard_app, layerCollapseAppIcon, layerExpandAppIcon, layer_collapse_app, layer_expand_app, layersAppIcon, layers_app, legalTermsAndConditionsAppIcon, legal_terms_and_conditions_app, licencePlateAppIcon, licence_plate_app, lightAssistappIcon, light_assistapp, lightingAppIcon, lighting_app, linkExternAppIcon, link_extern_app, list, listIcon, loadingVolumeIcon, loading_volume, localBusinessIcon, local_business, locate, locateIcon, lock, lockIcon, lockOpenIcon, lock_open, login, loginIcon, logistic, logisticIcon, logoCommissionModuleFavIcon, logoCommissionModuleIcon, logoCommissionModuleNegativeFavIcon, logoCommissionModuleNegativeIcon, logoCostApprovalFavIcon, logoCostApprovalIcon, logoCostApprovalNegativeFavIcon, logoCostApprovalNegativeIcon, logoCrossControllingFavIcon, logoCrossControllingIcon, logoCrossControllingNegativeFavIcon, logoCrossControllingNegativeIcon, logoDigitalServiceReceptionFavIcon, logoDigitalServiceReceptionIcon, logoDigitalServiceReceptionNegativeFavIcon, logoDigitalServiceReceptionNegativeIcon, logoDocFlowFavIcon, logoDocFlowIcon, logoDocFlowNegativeFavIcon, logoDocFlowNegativeIcon, logoDocScanFavIcon, logoDocScanIcon, logoDocScanNegativeFavIcon, logoDocScanNegativeIcon, logoDocStoreFavIcon, logoDocStoreIcon, logoDocStoreNegativeFavIcon, logoDocStoreNegativeIcon, logoEBillingFavIcon, logoEBillingIcon, logoEBillingNegativeFavIcon, logoEBillingNegativeIcon, logoEPaymentFavIcon, logoEPaymentIcon, logoEPaymentNegativeFavIcon, logoEPaymentNegativeIcon, logoMobilityPlannerFavIcon, logoMobilityPlannerIcon, logoMobilityPlannerNegativeFavIcon, logoMobilityPlannerNegativeIcon, logoPartsMobileFavIcon, logoPartsMobileIcon, logoPartsMobileNegativeFavIcon, logoPartsMobileNegativeIcon, logoSBOFavIcon, logoSBOIcon, logoSBONegativeFavIcon, logoSBONegativeIcon, logoServiceCubeFavIcon, logoServiceCubeIcon, logoServiceCubeNegativeFavIcon, logoServiceCubeNegativeIcon, logoWCPFavIcon, logoWCPIcon, logoWCPNegativeFavIcon, logoWCPNegativeIcon, logoWorkshopOrderTrackerFavIcon, logoWorkshopOrderTrackerIcon, logoWorkshopOrderTrackerNegativeFavIcon, logoWorkshopOrderTrackerNegativeIcon, logout, logoutIcon, magnifier, magnifierIcon, magnifierMinusIcon, magnifierPlusIcon, magnifier_minus, magnifier_plus, mail, mailIcon, mailResendAppIcon, mail_resend_app, manual, manualIcon, map, mapIcon, mapToInternalTree, mechanicIcon, media, mediaIcon, menu, menuAppAppIcon, menuIcon, menu_app_app, microphoneAppIcon, microphone_app, mobile, mobileIcon, moreAppIcon, moreAppbarAppIcon, more_app, more_appbar_app, mot, motIcon, motability, motabilityIcon, navigate, navigateFilledAppIcon, navigateIcon, navigate_filled_app, newCarCommercialIcon, newCarPrivateFilledAppIcon, newCarPrivateIcon, newCarUtilityVehicleIcon, new_car_commercial, new_car_private, new_car_private_filled_app, nightServiceIcon, night_service, notification, notificationFilledIcon, notificationIcon, notification_filled, number0Icon, number10Icon, number11Icon, number12Icon, number13Icon, number14Icon, number15Icon, number16Icon, number17Icon, number18Icon, number19Icon, number1Icon, number20Icon, number2Icon, number3Icon, number4Icon, number5Icon, number6Icon, number7Icon, number8Icon, number9Icon, offers, offersFilledAppIcon, offersIcon, offers_filled_app, officeAppIcon, officeFilledAppIcon, office_app, office_filled_app, oilLevelIcon, oilLevelWarningIcon, oilTemperatureAppIcon, oil_level, oil_level_warning, oil_temperature_app, onCallDutyIcon, on_call_duty, openSatIcon, open_sat, orderIcon, orderStatusIcon, paintMaterialForwardIcon, paintMaterialIcon, paintShopIcon, paint_shop, paragraphAppIcon, paragraph_app, parkHeaterAppIcon, park_heater_app, parking, parkingFilledAppIcon, parkingGarageAppIcon, parkingIcon, parkingLocationIcon, parkingRouteAppIcon, parkingValetAppIcon, parking_filled_app, parking_garage_app, parking_route_app, parking_valet_app, partAvailabilityInfoIcon, partAvailabilityNoIcon, partAvailabilityUnknownIcon, partAvailabilityWarningIcon, partAvailabilityYesIcon, partIdenticalIcon, partIdenticalPredecessorIcon, partIdenticalSuccessorIcon, partIdenticalSuccpredecessorIcon, partPredecessorIcon, partSuccessorIcon, partSuccessorPredecessorIcon, partsChangelocationIcon, partsForwardIcon, partsIcon, partsInventoryIcon, partsNonStockForwardIcon, partsNonStockIcon, partsPickingIcon, partsPickingPlusIcon, partsReceivingIcon, pause, pauseIcon, payload, payloadIcon, paymentAppIcon, paymentCashAppIcon, paymentChargingCardAppIcon, paymentCreditcardAppIcon, paymentMachineAppIcon, payment_app, payment_cash_app, payment_charging_card_app, payment_creditcard_app, payment_machine_app, performance, performanceIcon, petrol, petrolIcon, phone, phoneIcon, pin, pinFilledAppIcon, pinGenericFilledAppIcon, pinIcon, pin_filled_app, pin_generic_filled_app, play, playIcon, plugCcsAppIcon, plugChademoAppIcon, plugChargeAppIcon, plugGenericAppIcon, plugSchukoAppIcon, plugType1AppIcon, plugType2AppIcon, plug_ccs_app, plug_chademo_app, plug_charge_app, plug_generic_app, plug_schuko_app, plug_type1_app, plug_type2_app, plusServiceIcon, porscheBrandIcon, power, powerIcon, powerTrainIcon, powertrain, preHeaterAppIcon, pre_heater_app, preciseLaneNavigationAppIcon, precise_lane_navigation_app, presentAppIcon, present_app, priceTypeSwitchIcon, printer, printerIcon, privacyAppIcon, privacy_app, profile, profileIcon, profileRegisterAppIcon, profileVerifiedIcon, profile_register_app, profile_verified, publicServiceIcon, publicTransportAppIcon, public_service, public_transport_app, qualifiedWorkshopIcon, qualified_workshop, questionnaireAppIcon, questionnaire_app, radio, radioButtonInselectedIcon, radioButtonSelectedForDefIcon, radioButtonSelectedIcon, radioIcon, radio_button_inselected, radio_button_selected, radio_button_selected_for_development, range, rangeIcon, reload, reloadIcon, remove, removeIcon, repeat, repeatIcon, repeatRepairIcon, replacementVehicleIcon, returnDateIcon, rewind, rewindIcon, roadsideAssistanceIcon, roadside_assistance, route, routeArrowAppIcon, routeIcon, route_arrow_app, routesHistoryAppIcon, routes_history_app, rss, rssIcon, safety, safetyIcon, save, saveAppIcon, saveIcon, save_app, seat, seatAirIcon, seatBrandIcon, seatIcon, seat_air, secretTipAppIcon, secretTipFilledAppIcon, secret_tip_app, secret_tip_filled_app, selected, selectedIcon, selectedPartnerNetworkAppIcon, selected_partner_network_app, sendToCarAppIcon, send_to_car_app, service, serviceAdvisorIcon, serviceBellIcon, serviceFilledAppIcon, serviceIcon, service_bell, service_filled_app, settings, settingsIcon, shareAndroidIcon, shareIosIcon, share_android, share_ios, shoppingCartFilledAppIcon, shoppingCartIcon, shopping_cart, shopping_cart_filled_app, shuffle, shuffleIcon, size, sizeIcon, skillAppIcon, skill_app, skipBackwardIcon, skipForwardIcon, skip_backward, skip_forward, skodaBrandIcon, softwareDownloadAppIcon, software_download_app, sortingAppIcon, sorting_app, sound, soundIcon, sparkles, sparklesIcon, standardEquipmentIcon, standard_equipment, starFilledIcon, starOutlineIcon, star_filled, star_outline, statisticAppIcon, statistic_app, stockLocatorCommercialIcon, stockLocatorPrivateIcon, stock_locator_commercial, stock_locator_private, stop, stopIcon, strip, switchPositionAppIcon, switch_position_app, syncAppIcon, sync_app, taskAndAppointmentIcon, taxiDealerIcon, taxi_dealer, technicalSpecificationIcon, technical_specification, temperatureAppIcon, temperature_app, testDriveIcon, test_drive, textForwardIcon, thumbsdownAppIcon, thumbsdownFilledAppIcon, thumbsdown_app, thumbsdown_filled_app, thumbsupAppIcon, thumbsupFilledAppIcon, thumbsup_app, thumbsup_filled_app, timeClimatisationAppIcon, timePreferredAppIcon, time_climatisation_app, time_preferred_app, timer, timerIcon, topcardIcon, touaregServiceIcon, transcriptDownloadIcon, transcript_download, transmissionAutomaticIcon, transmissionManualIcon, transmission_automatic, transmission_manual, tripAppIcon, tripLongAppIcon, tripPartedAppIcon, tripShortAppIcon, trip_app, trip_long_app, trip_parted_app, trip_short_app, turnSignalsIcon, turn_signals, unselected, unselectedIcon, updateRefreshAppIcon, update_refresh_app, upload, uploadAppIcon, uploadCustomIcon, upload_app, usedCarCommercialIcon, usedCarPrivateIcon, used_car_commercial, used_car_private, vehicleAmarokIcon, vehicleCaddyIcon, vehicleConversionIcon, vehicleCrafterIcon, vehicleHightIcon, vehicleIdBuzzIcon, vehicleMultivanIcon, vehicleTransporterIcon, vehicle_amarok, vehicle_caddy, vehicle_crafter, vehicle_hight, vehicle_idbuzz, vehicle_multivan, vehicle_transporter, videoChatIcon, video_chat, view360Icon, view_360, vinIcon, virtualRealityIcon, virtual_reality, voiceMessageAppIcon, voice_message_app, volkswagenAppIcon, volkswagenIcon, volkswagen_app, volumeMaximumIcon, volumeMediumIcon, volumeMuteIcon, volume_maximum, volume_medium, volume_mute, vsfSearch48Icon, vsfSearchIcon, vwBrandIcon, vwConnectLicenseAppIcon, vw_connect_license_app, vwnBrandIcon, walkingAppIcon, walkingFilledAppIcon, walking_app, walking_filled_app, wallbox, wallboxIcon, wcAppIcon, wc_app, wcpIcon, weAssistAppIcon, weChargeAppIcon, weDeliverAppIcon, weExperienceAppIcon, weParkAppIcon, weUpgradeAppIcon, we_assist_app, we_charge_app, we_deliver_app, we_experience_app, we_park_app, we_upgrade_app, weatherSunAppIcon, weather_sun_app, wheelToWheelIcon, wheel_to_wheel, windscreenWashIcon, windscreen_wash, wlanHotspotIcon, wlan_hotspot, wrenchForwardIcon };
18238
18540
  //# sourceMappingURL=porscheinformatik-clr-addons.mjs.map