@odx/angular 10.2.2 → 11.0.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @odx/angular
2
2
 
3
+ ## 11.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - 2b3cadc: In this version, we have discontinued the use of the @ngrx/component library. As a result, the LetDirective is no longer part of the CoreModule. If you still require this directive, please install @ngrx/component separately and import it as needed in your project.
8
+
3
9
  ## 10.2.2
4
10
 
5
11
  ### Patch Changes
@@ -13,6 +13,13 @@ export declare class CalendarComponent implements OnChanges {
13
13
  protected readonly calendar: CalendarService;
14
14
  protected readonly daterange: DaterangeService;
15
15
  protected readonly CalendarView: typeof CalendarView;
16
+ protected readonly vm$: import("rxjs").Observable<{
17
+ activeDate: Date;
18
+ calendarView: CalendarView;
19
+ selectedDate: Date | null;
20
+ selectedDateRange: import("./models").DateRangeState;
21
+ previewDate: Date;
22
+ }>;
16
23
  readonly element: import("@angular/core").ElementRef<HTMLElement>;
17
24
  /**
18
25
  * Represents the selected date in the calendar component.
@@ -4,13 +4,14 @@ import { ChangeDetectionStrategy, Component, EventEmitter, inject, Input, Output
4
4
  import { CoreModule } from '@odx/angular';
5
5
  import { CSSComponent } from '@odx/angular/internal';
6
6
  import { EventManager, hasChanged, injectElement } from '@odx/angular/utils';
7
+ import { combineLatest } from 'rxjs';
7
8
  import { injectCalendarConfig } from './calendar.config';
8
9
  import { CalendarService } from './calendar.service';
9
10
  import { CalendarMonthComponent, CalendarYearComponent, CalendarYearsComponent } from './components';
10
11
  import { DaterangeService } from './daterange.service';
11
12
  import { CalendarSelectionMode, CalendarView } from './models';
12
13
  import * as i0 from "@angular/core";
13
- import * as i1 from "@ngrx/component";
14
+ import * as i1 from "@angular/common";
14
15
  /**
15
16
  * A component for selecting a date or date range. It provides a calendar interface for selecting dates and date ranges,
16
17
  * and supports various configuration options for customizing the appearance and behavior of the calendar.
@@ -21,6 +22,13 @@ let CalendarComponent = class CalendarComponent {
21
22
  this.calendar = inject(CalendarService);
22
23
  this.daterange = inject(DaterangeService);
23
24
  this.CalendarView = CalendarView;
25
+ this.vm$ = combineLatest({
26
+ activeDate: this.calendar.activeDate$,
27
+ calendarView: this.calendar.calendarView$,
28
+ selectedDate: this.calendar.selectedDate$,
29
+ selectedDateRange: this.daterange.dateRangeState$,
30
+ previewDate: this.calendar.previewDate$,
31
+ });
24
32
  this.element = injectElement();
25
33
  /**
26
34
  * Represents the selected date in the calendar component.
@@ -80,7 +88,7 @@ let CalendarComponent = class CalendarComponent {
80
88
  }
81
89
  }
82
90
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
83
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CalendarComponent, isStandalone: true, selector: "odx-calendar", inputs: { selectedDate: "selectedDate", selectedDateRange: "selectedDateRange", minDate: "minDate", maxDate: "maxDate", filterFn: "filterFn" }, outputs: { selectedDateChange: "selectedDateChange", selectedDateRangeChange: "selectedDateRangeChange" }, providers: [CalendarService, EventManager, DaterangeService], usesOnChanges: true, ngImport: i0, template: "<ng-template\n [ngrxLet]=\"{\n activeDate: calendar.activeDate$,\n calendarView: calendar.calendarView$,\n selectedDate: calendar.selectedDate$,\n selectedDateRange: daterange.dateRangeState$,\n previewDate: calendar.previewDate$,\n }\"\n let-vm\n>\n @switch (vm.calendarView) {\n @case (CalendarView.Year) {\n <odx-calendar-year\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @case (CalendarView.Years) {\n <odx-calendar-years\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @default {\n <odx-calendar-month\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [previewDate]=\"vm.previewDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n }\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.LetDirective, selector: "[ngrxLet]", inputs: ["ngrxLet", "ngrxLetSuspenseTpl"] }, { kind: "ngmodule", type: A11yModule }, { kind: "component", type: CalendarMonthComponent, selector: "odx-calendar-month" }, { kind: "component", type: CalendarYearComponent, selector: "odx-calendar-year" }, { kind: "component", type: CalendarYearsComponent, selector: "odx-calendar-years" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
91
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CalendarComponent, isStandalone: true, selector: "odx-calendar", inputs: { selectedDate: "selectedDate", selectedDateRange: "selectedDateRange", minDate: "minDate", maxDate: "maxDate", filterFn: "filterFn" }, outputs: { selectedDateChange: "selectedDateChange", selectedDateRangeChange: "selectedDateRangeChange" }, providers: [CalendarService, EventManager, DaterangeService], usesOnChanges: true, ngImport: i0, template: "@if (vm$ | async; as vm) {\n @switch (vm.calendarView) {\n @case (CalendarView.Year) {\n <odx-calendar-year\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @case (CalendarView.Years) {\n <odx-calendar-years\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @default {\n <odx-calendar-month\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [previewDate]=\"vm.previewDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n }\n}\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: A11yModule }, { kind: "component", type: CalendarMonthComponent, selector: "odx-calendar-month" }, { kind: "component", type: CalendarYearComponent, selector: "odx-calendar-year" }, { kind: "component", type: CalendarYearsComponent, selector: "odx-calendar-years" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
84
92
  };
85
93
  CalendarComponent = __decorate([
86
94
  CSSComponent('calendar'),
@@ -89,7 +97,7 @@ CalendarComponent = __decorate([
89
97
  export { CalendarComponent };
90
98
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CalendarComponent, decorators: [{
91
99
  type: Component,
92
- args: [{ selector: 'odx-calendar', standalone: true, imports: [CoreModule, A11yModule, CalendarMonthComponent, CalendarYearComponent, CalendarYearsComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [CalendarService, EventManager, DaterangeService], template: "<ng-template\n [ngrxLet]=\"{\n activeDate: calendar.activeDate$,\n calendarView: calendar.calendarView$,\n selectedDate: calendar.selectedDate$,\n selectedDateRange: daterange.dateRangeState$,\n previewDate: calendar.previewDate$,\n }\"\n let-vm\n>\n @switch (vm.calendarView) {\n @case (CalendarView.Year) {\n <odx-calendar-year\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @case (CalendarView.Years) {\n <odx-calendar-years\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @default {\n <odx-calendar-month\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [previewDate]=\"vm.previewDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n }\n</ng-template>\n" }]
100
+ args: [{ selector: 'odx-calendar', standalone: true, imports: [CoreModule, A11yModule, CalendarMonthComponent, CalendarYearComponent, CalendarYearsComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [CalendarService, EventManager, DaterangeService], template: "@if (vm$ | async; as vm) {\n @switch (vm.calendarView) {\n @case (CalendarView.Year) {\n <odx-calendar-year\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @case (CalendarView.Years) {\n <odx-calendar-years\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @default {\n <odx-calendar-month\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [previewDate]=\"vm.previewDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n }\n}\n" }]
93
101
  }], ctorParameters: () => [], propDecorators: { selectedDate: [{
94
102
  type: Input
95
103
  }], selectedDateRange: [{
@@ -105,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
105
113
  }], selectedDateRangeChange: [{
106
114
  type: Output
107
115
  }] } });
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvY2FsZW5kYXIvc3JjL2xpYi9jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9jYWxlbmRhci9zcmMvbGliL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEksT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFhLE1BQU0sb0JBQW9CLENBQUM7QUFDeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsWUFBWSxFQUFrRCxNQUFNLFVBQVUsQ0FBQzs7O0FBRS9HOzs7R0FHRztBQVdJLElBQU0saUJBQWlCLEdBQXZCLE1BQU0saUJBQWlCO0lBb0Y1QjtRQW5GaUIsV0FBTSxHQUFHLG9CQUFvQixFQUFFLENBQUM7UUFDOUIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNuQyxjQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDckMsaUJBQVksR0FBRyxZQUFZLENBQUM7UUFFL0IsWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO1FBRTFDOzs7Ozs7V0FNRztRQUVJLGlCQUFZLEdBQW9CLElBQUksQ0FBQztRQUU1Qzs7Ozs7O1dBTUc7UUFFSSxzQkFBaUIsR0FBMEIsSUFBSSxDQUFDO1FBRXZEOzs7Ozs7V0FNRztRQUVJLFlBQU8sR0FBaUIsSUFBSSxDQUFDO1FBRXBDOzs7Ozs7V0FNRztRQUVJLFlBQU8sR0FBaUIsSUFBSSxDQUFDO1FBRXBDOzs7Ozs7Ozs7Ozs7V0FZRztRQUVJLGFBQVEsR0FBdUIsSUFBSSxDQUFDO1FBdUJ6QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDcEQsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUM7SUFDakUsQ0FBQztJQUVNLFdBQVcsQ0FBQyxPQUFxQztRQUN0RCxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDN0UsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLGlCQUFpQixJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEtBQUsscUJBQXFCLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDL0ksSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdEQsQ0FBQztJQUNILENBQUM7K0dBakdVLGlCQUFpQjttR0FBakIsaUJBQWlCLHNUQUZqQixDQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLENBQUMsK0NDdkI5RCw2dkNBNENBLDJDRHpCWSxVQUFVLDhJQUFFLFVBQVUsK0JBQUUsc0JBQXNCLCtEQUFFLHFCQUFxQiw4REFBRSxzQkFBc0I7O0FBTTVGLGlCQUFpQjtJQVY3QixZQUFZLENBQUMsVUFBVSxDQUFDOztHQVVaLGlCQUFpQixDQWtHN0I7OzRGQWxHWSxpQkFBaUI7a0JBVDdCLFNBQVM7K0JBQ0UsY0FBYyxjQUNaLElBQUksV0FDUCxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLENBQUMsbUJBRXZGLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksYUFDMUIsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixDQUFDO3dEQWtCckQsWUFBWTtzQkFEbEIsS0FBSztnQkFXQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBV0MsT0FBTztzQkFEYixLQUFLO2dCQVdDLE9BQU87c0JBRGIsS0FBSztnQkFpQkMsUUFBUTtzQkFEZCxLQUFLO2dCQVdDLGtCQUFrQjtzQkFEeEIsTUFBTTtnQkFXQSx1QkFBdUI7c0JBRDdCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IEV2ZW50TWFuYWdlciwgaGFzQ2hhbmdlZCwgaW5qZWN0RWxlbWVudCwgTmdDaGFuZ2VzIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IGluamVjdENhbGVuZGFyQ29uZmlnIH0gZnJvbSAnLi9jYWxlbmRhci5jb25maWcnO1xuaW1wb3J0IHsgQ2FsZW5kYXJTZXJ2aWNlIH0gZnJvbSAnLi9jYWxlbmRhci5zZXJ2aWNlJztcbmltcG9ydCB7IENhbGVuZGFyTW9udGhDb21wb25lbnQsIENhbGVuZGFyWWVhckNvbXBvbmVudCwgQ2FsZW5kYXJZZWFyc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBEYXRlcmFuZ2VTZXJ2aWNlIH0gZnJvbSAnLi9kYXRlcmFuZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBDYWxlbmRhclNlbGVjdGlvbk1vZGUsIENhbGVuZGFyVmlldywgRGF0ZUZpbHRlciwgRGF0ZVJhbmdlLCBEYXRlVHlwZSwgRGF0ZVR5cGVSYW5nZSB9IGZyb20gJy4vbW9kZWxzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCBmb3Igc2VsZWN0aW5nIGEgZGF0ZSBvciBkYXRlIHJhbmdlLiBJdCBwcm92aWRlcyBhIGNhbGVuZGFyIGludGVyZmFjZSBmb3Igc2VsZWN0aW5nIGRhdGVzIGFuZCBkYXRlIHJhbmdlcyxcbiAqIGFuZCBzdXBwb3J0cyB2YXJpb3VzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgY3VzdG9taXppbmcgdGhlIGFwcGVhcmFuY2UgYW5kIGJlaGF2aW9yIG9mIHRoZSBjYWxlbmRhci5cbiAqL1xuQENTU0NvbXBvbmVudCgnY2FsZW5kYXInKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2R4LWNhbGVuZGFyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEExMXlNb2R1bGUsIENhbGVuZGFyTW9udGhDb21wb25lbnQsIENhbGVuZGFyWWVhckNvbXBvbmVudCwgQ2FsZW5kYXJZZWFyc0NvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtDYWxlbmRhclNlcnZpY2UsIEV2ZW50TWFuYWdlciwgRGF0ZXJhbmdlU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWcgPSBpbmplY3RDYWxlbmRhckNvbmZpZygpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2FsZW5kYXIgPSBpbmplY3QoQ2FsZW5kYXJTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRhdGVyYW5nZSA9IGluamVjdChEYXRlcmFuZ2VTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IENhbGVuZGFyVmlldyA9IENhbGVuZGFyVmlldztcblxuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICAvKipcbiAgICogUmVwcmVzZW50cyB0aGUgc2VsZWN0ZWQgZGF0ZSBpbiB0aGUgY2FsZW5kYXIgY29tcG9uZW50LlxuICAgKiBJdCBjYW4gYmUgb2YgdHlwZSBgRGF0ZVR5cGVgIG9yIGBudWxsYCBpZiBubyBkYXRlIGlzIHNlbGVjdGVkLlxuICAgKlxuICAgKiBAdHlwZSB7RGF0ZVR5cGUgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2VsZWN0ZWREYXRlOiBEYXRlVHlwZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIHRoZSBzZWxlY3RlZCBkYXRlIHJhbmdlIGluIHRoZSBjYWxlbmRhciBjb21wb25lbnQuXG4gICAqIEl0IGNhbiBiZSBvZiB0eXBlIGBEYXRlVHlwZVJhbmdlYCBvciBgbnVsbGAgaWYgbm8gZGF0ZSByYW5nZSBpcyBzZWxlY3RlZC5cbiAgICpcbiAgICogQHR5cGUge0RhdGVUeXBlUmFuZ2UgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2VsZWN0ZWREYXRlUmFuZ2U/OiBEYXRlVHlwZVJhbmdlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBtaW5pbXVtIHNlbGVjdGFibGUgZGF0ZSBmb3IgdGhlIGNhbGVuZGFyIGNvbXBvbmVudC5cbiAgICogSWYgc2V0IHRvIG51bGwsIHRoZXJlIGlzIG5vIG1pbmltdW0gZGF0ZSByZXN0cmljdGlvbi5cbiAgICpcbiAgICogQHR5cGUge0RhdGUgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbWluRGF0ZT86IERhdGUgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhlIG1heGltdW0gc2VsZWN0YWJsZSBkYXRlIGZvciB0aGUgY2FsZW5kYXIgY29tcG9uZW50LlxuICAgKiBJZiBzZXQgdG8gbnVsbCwgdGhlcmUgaXMgbm8gbWF4aW11bSBkYXRlIHJlc3RyaWN0aW9uLlxuICAgKlxuICAgKiBAdHlwZSB7RGF0ZSB8IG51bGx9XG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtYXhEYXRlPzogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsdGVyIGZ1bmN0aW9uIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIGRhdGVzIGFyZSBzZWxlY3RhYmxlIGluIHRoZSBjYWxlbmRhci5cbiAgICogSWYgc2V0IHRvIGBudWxsYCwgYWxsIGRhdGVzIHdpbGwgYmUgc2VsZWN0YWJsZS5cbiAgICpcbiAgICogQHR5cGUge0RhdGVGaWx0ZXIgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHRzXG4gICAqIC8vIEZpbHRlciBvdXQgd2Vla2VuZHNcbiAgICogY29uc3QgZmlsdGVyRm46IERhdGVGaWx0ZXIgPSAoZGF0ZSkgPT4gZGF0ZS5nZXREYXkoKSAhPT0gMCAmJiBkYXRlLmdldERheSgpICE9PSA2O1xuICAgKiBgYGBcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJGbj86IERhdGVGaWx0ZXIgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbmV2ZXIgdGhlIHNlbGVjdGVkIGRhdGUgY2hhbmdlcy5cbiAgICogVGhlIGV2ZW50IHBheWxvYWQgaXMgZWl0aGVyIGEgRGF0ZSBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBzZWxlY3RlZCBkYXRlIG9yIG51bGxcbiAgICogaWYgbm8gZGF0ZSBpcyBzZWxlY3RlZC5cbiAgICpcbiAgICogQGVtaXRzIHtEYXRlIHwgbnVsbH1cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc2VsZWN0ZWREYXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZSB8IG51bGw+O1xuXG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuZXZlciB0aGUgc2VsZWN0ZWQgZGF0ZSByYW5nZSBjaGFuZ2VzLlxuICAgKiBUaGUgZXZlbnQgcGF5bG9hZCBpcyBlaXRoZXIgYSBEYXRlUmFuZ2Ugb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgc2VsZWN0ZWQgZGF0ZSByYW5nZVxuICAgKiBvciBudWxsIGlmIG5vIGRhdGUgcmFuZ2UgaXMgc2VsZWN0ZWQuXG4gICAqXG4gICAqIEBlbWl0cyB7RGF0ZVJhbmdlIHwgbnVsbH1cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc2VsZWN0ZWREYXRlUmFuZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxEYXRlUmFuZ2UgfCBudWxsPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZUNoYW5nZSA9IHRoaXMuY2FsZW5kYXIub3V0cHV0RGF0ZSQ7XG4gICAgdGhpcy5zZWxlY3RlZERhdGVSYW5nZUNoYW5nZSA9IHRoaXMuZGF0ZXJhbmdlLm91dHB1dERhdGVSYW5nZSQ7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogTmdDaGFuZ2VzPENhbGVuZGFyQ29tcG9uZW50Pik6IHZvaWQge1xuICAgIGlmIChoYXNDaGFuZ2VkKGNoYW5nZXMsICdzZWxlY3RlZERhdGUnLCBmYWxzZSkpIHtcbiAgICAgIHRoaXMuY2FsZW5kYXIuc2VsZWN0RGF0ZSh0aGlzLnNlbGVjdGVkRGF0ZSwgeyBza2lwRGF0ZXJhbmdlVXBkYXRlOiB0cnVlIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNlbGVjdGVkRGF0ZVJhbmdlICYmIGhhc0NoYW5nZWQoY2hhbmdlcywgJ3NlbGVjdGVkRGF0ZVJhbmdlJywgZmFsc2UpICYmIHRoaXMuY29uZmlnLnNlbGVjdGlvbk1vZGUgPT09IENhbGVuZGFyU2VsZWN0aW9uTW9kZS5EYXRlUmFuZ2UpIHtcbiAgICAgIHRoaXMuZGF0ZXJhbmdlLnNldERhdGVSYW5nZSh0aGlzLnNlbGVjdGVkRGF0ZVJhbmdlKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZVxuICBbbmdyeExldF09XCJ7XG4gICAgYWN0aXZlRGF0ZTogY2FsZW5kYXIuYWN0aXZlRGF0ZSQsXG4gICAgY2FsZW5kYXJWaWV3OiBjYWxlbmRhci5jYWxlbmRhclZpZXckLFxuICAgIHNlbGVjdGVkRGF0ZTogY2FsZW5kYXIuc2VsZWN0ZWREYXRlJCxcbiAgICBzZWxlY3RlZERhdGVSYW5nZTogZGF0ZXJhbmdlLmRhdGVSYW5nZVN0YXRlJCxcbiAgICBwcmV2aWV3RGF0ZTogY2FsZW5kYXIucHJldmlld0RhdGUkLFxuICB9XCJcbiAgbGV0LXZtXG4+XG4gIEBzd2l0Y2ggKHZtLmNhbGVuZGFyVmlldykge1xuICAgIEBjYXNlIChDYWxlbmRhclZpZXcuWWVhcikge1xuICAgICAgPG9keC1jYWxlbmRhci15ZWFyXG4gICAgICAgIFthY3RpdmVEYXRlXT1cInZtLmFjdGl2ZURhdGVcIlxuICAgICAgICBbc2VsZWN0ZWREYXRlXT1cInZtLnNlbGVjdGVkRGF0ZVwiXG4gICAgICAgIFtzZWxlY3RlZERhdGVSYW5nZV09XCJ2bS5zZWxlY3RlZERhdGVSYW5nZVwiXG4gICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcbiAgICAgICAgW2ZpbHRlckZuXT1cImZpbHRlckZuXCJcbiAgICAgIC8+XG4gICAgfVxuICAgIEBjYXNlIChDYWxlbmRhclZpZXcuWWVhcnMpIHtcbiAgICAgIDxvZHgtY2FsZW5kYXIteWVhcnNcbiAgICAgICAgW2FjdGl2ZURhdGVdPVwidm0uYWN0aXZlRGF0ZVwiXG4gICAgICAgIFtzZWxlY3RlZERhdGVdPVwidm0uc2VsZWN0ZWREYXRlXCJcbiAgICAgICAgW3NlbGVjdGVkRGF0ZVJhbmdlXT1cInZtLnNlbGVjdGVkRGF0ZVJhbmdlXCJcbiAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG4gICAgICAgIFttYXhEYXRlXT1cIm1heERhdGVcIlxuICAgICAgICBbZmlsdGVyRm5dPVwiZmlsdGVyRm5cIlxuICAgICAgLz5cbiAgICB9XG4gICAgQGRlZmF1bHQge1xuICAgICAgPG9keC1jYWxlbmRhci1tb250aFxuICAgICAgICBbYWN0aXZlRGF0ZV09XCJ2bS5hY3RpdmVEYXRlXCJcbiAgICAgICAgW3NlbGVjdGVkRGF0ZV09XCJ2bS5zZWxlY3RlZERhdGVcIlxuICAgICAgICBbc2VsZWN0ZWREYXRlUmFuZ2VdPVwidm0uc2VsZWN0ZWREYXRlUmFuZ2VcIlxuICAgICAgICBbcHJldmlld0RhdGVdPVwidm0ucHJldmlld0RhdGVcIlxuICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcbiAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgICAgIFtmaWx0ZXJGbl09XCJmaWx0ZXJGblwiXG4gICAgICAvPlxuICAgIH1cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvY2FsZW5kYXIvc3JjL2xpYi9jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9jYWxlbmRhci9zcmMvbGliL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEksT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFhLE1BQU0sb0JBQW9CLENBQUM7QUFDeEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxZQUFZLEVBQWtELE1BQU0sVUFBVSxDQUFDOzs7QUFFL0c7OztHQUdHO0FBV0ksSUFBTSxpQkFBaUIsR0FBdkIsTUFB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cnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IEV2ZW50TWFuYWdlciwgaGFzQ2hhbmdlZCwgaW5qZWN0RWxlbWVudCwgTmdDaGFuZ2VzIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGluamVjdENhbGVuZGFyQ29uZmlnIH0gZnJvbSAnLi9jYWxlbmRhci5jb25maWcnO1xuaW1wb3J0IHsgQ2FsZW5kYXJTZXJ2aWNlIH0gZnJvbSAnLi9jYWxlbmRhci5zZXJ2aWNlJztcbmltcG9ydCB7IENhbGVuZGFyTW9udGhDb21wb25lbnQsIENhbGVuZGFyWWVhckNvbXBvbmVudCwgQ2FsZW5kYXJZZWFyc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBEYXRlcmFuZ2VTZXJ2aWNlIH0gZnJvbSAnLi9kYXRlcmFuZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBDYWxlbmRhclNlbGVjdGlvbk1vZGUsIENhbGVuZGFyVmlldywgRGF0ZUZpbHRlciwgRGF0ZVJhbmdlLCBEYXRlVHlwZSwgRGF0ZVR5cGVSYW5nZSB9IGZyb20gJy4vbW9kZWxzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCBmb3Igc2VsZWN0aW5nIGEgZGF0ZSBvciBkYXRlIHJhbmdlLiBJdCBwcm92aWRlcyBhIGNhbGVuZGFyIGludGVyZmFjZSBmb3Igc2VsZWN0aW5nIGRhdGVzIGFuZCBkYXRlIHJhbmdlcyxcbiAqIGFuZCBzdXBwb3J0cyB2YXJpb3VzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgY3VzdG9taXppbmcgdGhlIGFwcGVhcmFuY2UgYW5kIGJlaGF2aW9yIG9mIHRoZSBjYWxlbmRhci5cbiAqL1xuQENTU0NvbXBvbmVudCgnY2FsZW5kYXInKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2R4LWNhbGVuZGFyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEExMXlNb2R1bGUsIENhbGVuZGFyTW9udGhDb21wb25lbnQsIENhbGVuZGFyWWVhckNvbXBvbmVudCwgQ2FsZW5kYXJZZWFyc0NvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtDYWxlbmRhclNlcnZpY2UsIEV2ZW50TWFuYWdlciwgRGF0ZXJhbmdlU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWcgPSBpbmplY3RDYWxlbmRhckNvbmZpZygpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2FsZW5kYXIgPSBpbmplY3QoQ2FsZW5kYXJTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRhdGVyYW5nZSA9IGluamVjdChEYXRlcmFuZ2VTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IENhbGVuZGFyVmlldyA9IENhbGVuZGFyVmlldztcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdm0kID0gY29tYmluZUxhdGVzdCh7XG4gICAgYWN0aXZlRGF0ZTogdGhpcy5jYWxlbmRhci5hY3RpdmVEYXRlJCxcbiAgICBjYWxlbmRhclZpZXc6IHRoaXMuY2FsZW5kYXIuY2FsZW5kYXJWaWV3JCxcbiAgICBzZWxlY3RlZERhdGU6IHRoaXMuY2FsZW5kYXIuc2VsZWN0ZWREYXRlJCxcbiAgICBzZWxlY3RlZERhdGVSYW5nZTogdGhpcy5kYXRlcmFuZ2UuZGF0ZVJhbmdlU3RhdGUkLFxuICAgIHByZXZpZXdEYXRlOiB0aGlzLmNhbGVuZGFyLnByZXZpZXdEYXRlJCxcbiAgfSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgLyoqXG4gICAqIFJlcHJlc2VudHMgdGhlIHNlbGVjdGVkIGRhdGUgaW4gdGhlIGNhbGVuZGFyIGNvbXBvbmVudC5cbiAgICogSXQgY2FuIGJlIG9mIHR5cGUgYERhdGVUeXBlYCBvciBgbnVsbGAgaWYgbm8gZGF0ZSBpcyBzZWxlY3RlZC5cbiAgICpcbiAgICogQHR5cGUge0RhdGVUeXBlIHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNlbGVjdGVkRGF0ZTogRGF0ZVR5cGUgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogUmVwcmVzZW50cyB0aGUgc2VsZWN0ZWQgZGF0ZSByYW5nZSBpbiB0aGUgY2FsZW5kYXIgY29tcG9uZW50LlxuICAgKiBJdCBjYW4gYmUgb2YgdHlwZSBgRGF0ZVR5cGVSYW5nZWAgb3IgYG51bGxgIGlmIG5vIGRhdGUgcmFuZ2UgaXMgc2VsZWN0ZWQuXG4gICAqXG4gICAqIEB0eXBlIHtEYXRlVHlwZVJhbmdlIHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNlbGVjdGVkRGF0ZVJhbmdlPzogRGF0ZVR5cGVSYW5nZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBzZWxlY3RhYmxlIGRhdGUgZm9yIHRoZSBjYWxlbmRhciBjb21wb25lbnQuXG4gICAqIElmIHNldCB0byBudWxsLCB0aGVyZSBpcyBubyBtaW5pbXVtIGRhdGUgcmVzdHJpY3Rpb24uXG4gICAqXG4gICAqIEB0eXBlIHtEYXRlIHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1pbkRhdGU/OiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHNlbGVjdGFibGUgZGF0ZSBmb3IgdGhlIGNhbGVuZGFyIGNvbXBvbmVudC5cbiAgICogSWYgc2V0IHRvIG51bGwsIHRoZXJlIGlzIG5vIG1heGltdW0gZGF0ZSByZXN0cmljdGlvbi5cbiAgICpcbiAgICogQHR5cGUge0RhdGUgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbWF4RGF0ZT86IERhdGUgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhlIGZpbHRlciBmdW5jdGlvbiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBkYXRlcyBhcmUgc2VsZWN0YWJsZSBpbiB0aGUgY2FsZW5kYXIuXG4gICAqIElmIHNldCB0byBgbnVsbGAsIGFsbCBkYXRlcyB3aWxsIGJlIHNlbGVjdGFibGUuXG4gICAqXG4gICAqIEB0eXBlIHtEYXRlRmlsdGVyIHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0c1xuICAgKiAvLyBGaWx0ZXIgb3V0IHdlZWtlbmRzXG4gICAqIGNvbnN0IGZpbHRlckZuOiBEYXRlRmlsdGVyID0gKGRhdGUpID0+IGRhdGUuZ2V0RGF5KCkgIT09IDAgJiYgZGF0ZS5nZXREYXkoKSAhPT0gNjtcbiAgICogYGBgXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZmlsdGVyRm4/OiBEYXRlRmlsdGVyIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW5ldmVyIHRoZSBzZWxlY3RlZCBkYXRlIGNoYW5nZXMuXG4gICAqIFRoZSBldmVudCBwYXlsb2FkIGlzIGVpdGhlciBhIERhdGUgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgc2VsZWN0ZWQgZGF0ZSBvciBudWxsXG4gICAqIGlmIG5vIGRhdGUgaXMgc2VsZWN0ZWQuXG4gICAqXG4gICAqIEBlbWl0cyB7RGF0ZSB8IG51bGx9XG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHNlbGVjdGVkRGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPERhdGUgfCBudWxsPjtcblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbmV2ZXIgdGhlIHNlbGVjdGVkIGRhdGUgcmFuZ2UgY2hhbmdlcy5cbiAgICogVGhlIGV2ZW50IHBheWxvYWQgaXMgZWl0aGVyIGEgRGF0ZVJhbmdlIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIHNlbGVjdGVkIGRhdGUgcmFuZ2VcbiAgICogb3IgbnVsbCBpZiBubyBkYXRlIHJhbmdlIGlzIHNlbGVjdGVkLlxuICAgKlxuICAgKiBAZW1pdHMge0RhdGVSYW5nZSB8IG51bGx9XG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHNlbGVjdGVkRGF0ZVJhbmdlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZVJhbmdlIHwgbnVsbD47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zZWxlY3RlZERhdGVDaGFuZ2UgPSB0aGlzLmNhbGVuZGFyLm91dHB1dERhdGUkO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2VDaGFuZ2UgPSB0aGlzLmRhdGVyYW5nZS5vdXRwdXREYXRlUmFuZ2UkO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IE5nQ2hhbmdlczxDYWxlbmRhckNvbXBvbmVudD4pOiB2b2lkIHtcbiAgICBpZiAoaGFzQ2hhbmdlZChjaGFuZ2VzLCAnc2VsZWN0ZWREYXRlJywgZmFsc2UpKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyLnNlbGVjdERhdGUodGhpcy5zZWxlY3RlZERhdGUsIHsgc2tpcERhdGVyYW5nZVVwZGF0ZTogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zZWxlY3RlZERhdGVSYW5nZSAmJiBoYXNDaGFuZ2VkKGNoYW5nZXMsICdzZWxlY3RlZERhdGVSYW5nZScsIGZhbHNlKSAmJiB0aGlzLmNvbmZpZy5zZWxlY3Rpb25Nb2RlID09PSBDYWxlbmRhclNlbGVjdGlvbk1vZGUuRGF0ZVJhbmdlKSB7XG4gICAgICB0aGlzLmRhdGVyYW5nZS5zZXREYXRlUmFuZ2UodGhpcy5zZWxlY3RlZERhdGVSYW5nZSk7XG4gICAgfVxuICB9XG59XG4iLCJAaWYgKHZtJCB8IGFzeW5jOyBhcyB2bSkge1xuICBAc3dpdGNoICh2bS5jYWxlbmRhclZpZXcpIHtcbiAgICBAY2FzZSAoQ2FsZW5kYXJWaWV3LlllYXIpIHtcbiAgICAgIDxvZHgtY2FsZW5kYXIteWVhclxuICAgICAgICBbYWN0aXZlRGF0ZV09XCJ2bS5hY3RpdmVEYXRlXCJcbiAgICAgICAgW3NlbGVjdGVkRGF0ZV09XCJ2bS5zZWxlY3RlZERhdGVcIlxuICAgICAgICBbc2VsZWN0ZWREYXRlUmFuZ2VdPVwidm0uc2VsZWN0ZWREYXRlUmFuZ2VcIlxuICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcbiAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgICAgIFtmaWx0ZXJGbl09XCJmaWx0ZXJGblwiXG4gICAgICAvPlxuICAgIH1cbiAgICBAY2FzZSAoQ2FsZW5kYXJWaWV3LlllYXJzKSB7XG4gICAgICA8b2R4LWNhbGVuZGFyLXllYXJzXG4gICAgICAgIFthY3RpdmVEYXRlXT1cInZtLmFjdGl2ZURhdGVcIlxuICAgICAgICBbc2VsZWN0ZWREYXRlXT1cInZtLnNlbGVjdGVkRGF0ZVwiXG4gICAgICAgIFtzZWxlY3RlZERhdGVSYW5nZV09XCJ2bS5zZWxlY3RlZERhdGVSYW5nZVwiXG4gICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcbiAgICAgICAgW2ZpbHRlckZuXT1cImZpbHRlckZuXCJcbiAgICAgIC8+XG4gICAgfVxuICAgIEBkZWZhdWx0IHtcbiAgICAgIDxvZHgtY2FsZW5kYXItbW9udGhcbiAgICAgICAgW2FjdGl2ZURhdGVdPVwidm0uYWN0aXZlRGF0ZVwiXG4gICAgICAgIFtzZWxlY3RlZERhdGVdPVwidm0uc2VsZWN0ZWREYXRlXCJcbiAgICAgICAgW3NlbGVjdGVkRGF0ZVJhbmdlXT1cInZtLnNlbGVjdGVkRGF0ZVJhbmdlXCJcbiAgICAgICAgW3ByZXZpZXdEYXRlXT1cInZtLnByZXZpZXdEYXRlXCJcbiAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG4gICAgICAgIFttYXhEYXRlXT1cIm1heERhdGVcIlxuICAgICAgICBbZmlsdGVyRm5dPVwiZmlsdGVyRm5cIlxuICAgICAgLz5cbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { DOCUMENT } from '@angular/common';
3
- import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';
3
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation, inject } from '@angular/core';
4
4
  import { CoreModule } from '@odx/angular';
5
5
  import { CSSComponent } from '@odx/angular/internal';
6
6
  import { deferFn, isFunction } from '@odx/angular/utils';
@@ -13,7 +13,6 @@ import { CalendarHeaderComponent } from '../calendar-header';
13
13
  import * as i0 from "@angular/core";
14
14
  import * as i1 from "@angular/common";
15
15
  import * as i2 from "@odx/angular";
16
- import * as i3 from "@ngrx/component";
17
16
  /**
18
17
  * Represents the component for displaying the years view in a calendar.
19
18
  * Extends the `CalendarViewDirective` class and implements the `AfterViewInit` interface.
@@ -59,7 +58,7 @@ let CalendarYearsComponent = class CalendarYearsComponent extends CalendarViewDi
59
58
  }
60
59
  }
61
60
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CalendarYearsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
62
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CalendarYearsComponent, isStandalone: true, selector: "odx-calendar-years", providers: [CalendarYearsService], usesInheritance: true, ngImport: i0, template: "<table class=\"odx-calendar__table\" role=\"grid\" aria-describedby=\"odx-calendar\" *ngrxLet=\"calendar.activeDate$ as activeDate\">\n <thead aria-hidden=\"true\">\n <th></th>\n </thead>\n\n <tbody\n class=\"odx-calendar__body\"\n (keydown.ArrowLeft)=\"previousYear($event)\"\n (keydown.ArrowRight)=\"nextYear($event)\"\n (keydown.ArrowUp)=\"previousRow($event)\"\n (keydown.ArrowDown)=\"nextRow($event)\"\n >\n @for (yearRow of calendarYears.years$ | async; track $index) {\n <tr class=\"odx-calendar__year-row\">\n @for (year of yearRow; track $index) {\n <td role=\"gridcell\">\n <button\n [disabled]=\"isDateDisabled(year)\"\n [odxCalendarCell]=\"year\"\n [odxCalendarCellActiveDate]=\"activeDate\"\n [odxCalendarCellCalendarView]=\"currentView\"\n [odxCalendarCellSelectedDate]=\"selectedDate\"\n [odxCalendarCellSelectedDateRange]=\"selectedDateRange\"\n (click)=\"selectDate(year)\"\n >\n {{ year | odxDateLabel: { year: 'numeric' } }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n</table>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "directive", type: i2.DisabledController, selector: "[disabled]", inputs: ["disabled"] }, { kind: "directive", type: i3.LetDirective, selector: "[ngrxLet]", inputs: ["ngrxLet", "ngrxLetSuspenseTpl"] }, { kind: "directive", type: CalendarCellDirective, selector: "[odxCalendarCell]", inputs: ["odxCalendarCell", "odxCalendarCellCalendarView", "odxCalendarCellActiveDate", "odxCalendarCellSelectedDate", "odxCalendarCellSelectedDateRange", "odxCalendarCellPreviewDate"] }, { kind: "pipe", type: DateLabelPipe, name: "odxDateLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
61
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CalendarYearsComponent, isStandalone: true, selector: "odx-calendar-years", providers: [CalendarYearsService], usesInheritance: true, ngImport: i0, template: "<table class=\"odx-calendar__table\" role=\"grid\" aria-describedby=\"odx-calendar\">\n <thead aria-hidden=\"true\">\n <th></th>\n </thead>\n\n <tbody\n class=\"odx-calendar__body\"\n (keydown.ArrowLeft)=\"previousYear($event)\"\n (keydown.ArrowRight)=\"nextYear($event)\"\n (keydown.ArrowUp)=\"previousRow($event)\"\n (keydown.ArrowDown)=\"nextRow($event)\"\n >\n @for (yearRow of calendarYears.years$ | async; track $index) {\n <tr class=\"odx-calendar__year-row\">\n @for (year of yearRow; track $index) {\n <td role=\"gridcell\">\n <button\n [disabled]=\"isDateDisabled(year)\"\n [odxCalendarCell]=\"year\"\n [odxCalendarCellActiveDate]=\"calendar.activeDate$ | async\"\n [odxCalendarCellCalendarView]=\"currentView\"\n [odxCalendarCellSelectedDate]=\"selectedDate\"\n [odxCalendarCellSelectedDateRange]=\"selectedDateRange\"\n (click)=\"selectDate(year)\"\n >\n {{ year | odxDateLabel: { year: 'numeric' } }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n</table>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "directive", type: i2.DisabledController, selector: "[disabled]", inputs: ["disabled"] }, { kind: "directive", type: CalendarCellDirective, selector: "[odxCalendarCell]", inputs: ["odxCalendarCell", "odxCalendarCellCalendarView", "odxCalendarCellActiveDate", "odxCalendarCellSelectedDate", "odxCalendarCellSelectedDateRange", "odxCalendarCellPreviewDate"] }, { kind: "pipe", type: DateLabelPipe, name: "odxDateLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
63
62
  };
64
63
  CalendarYearsComponent = __decorate([
65
64
  CSSComponent('calendar-years')
@@ -67,6 +66,6 @@ CalendarYearsComponent = __decorate([
67
66
  export { CalendarYearsComponent };
68
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CalendarYearsComponent, decorators: [{
69
68
  type: Component,
70
- args: [{ selector: 'odx-calendar-years', standalone: true, imports: [CoreModule, CalendarCellDirective, CalendarHeaderComponent, DateLabelPipe], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [CalendarYearsService], template: "<table class=\"odx-calendar__table\" role=\"grid\" aria-describedby=\"odx-calendar\" *ngrxLet=\"calendar.activeDate$ as activeDate\">\n <thead aria-hidden=\"true\">\n <th></th>\n </thead>\n\n <tbody\n class=\"odx-calendar__body\"\n (keydown.ArrowLeft)=\"previousYear($event)\"\n (keydown.ArrowRight)=\"nextYear($event)\"\n (keydown.ArrowUp)=\"previousRow($event)\"\n (keydown.ArrowDown)=\"nextRow($event)\"\n >\n @for (yearRow of calendarYears.years$ | async; track $index) {\n <tr class=\"odx-calendar__year-row\">\n @for (year of yearRow; track $index) {\n <td role=\"gridcell\">\n <button\n [disabled]=\"isDateDisabled(year)\"\n [odxCalendarCell]=\"year\"\n [odxCalendarCellActiveDate]=\"activeDate\"\n [odxCalendarCellCalendarView]=\"currentView\"\n [odxCalendarCellSelectedDate]=\"selectedDate\"\n [odxCalendarCellSelectedDateRange]=\"selectedDateRange\"\n (click)=\"selectDate(year)\"\n >\n {{ year | odxDateLabel: { year: 'numeric' } }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n</table>\n" }]
69
+ args: [{ selector: 'odx-calendar-years', standalone: true, imports: [CoreModule, CalendarCellDirective, CalendarHeaderComponent, DateLabelPipe], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [CalendarYearsService], template: "<table class=\"odx-calendar__table\" role=\"grid\" aria-describedby=\"odx-calendar\">\n <thead aria-hidden=\"true\">\n <th></th>\n </thead>\n\n <tbody\n class=\"odx-calendar__body\"\n (keydown.ArrowLeft)=\"previousYear($event)\"\n (keydown.ArrowRight)=\"nextYear($event)\"\n (keydown.ArrowUp)=\"previousRow($event)\"\n (keydown.ArrowDown)=\"nextRow($event)\"\n >\n @for (yearRow of calendarYears.years$ | async; track $index) {\n <tr class=\"odx-calendar__year-row\">\n @for (year of yearRow; track $index) {\n <td role=\"gridcell\">\n <button\n [disabled]=\"isDateDisabled(year)\"\n [odxCalendarCell]=\"year\"\n [odxCalendarCellActiveDate]=\"calendar.activeDate$ | async\"\n [odxCalendarCellCalendarView]=\"currentView\"\n [odxCalendarCellSelectedDate]=\"selectedDate\"\n [odxCalendarCellSelectedDateRange]=\"selectedDateRange\"\n (click)=\"selectDate(year)\"\n >\n {{ year | odxDateLabel: { year: 'numeric' } }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n</table>\n" }]
71
70
  }] });
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIteWVhcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvY2FsZW5kYXIvc3JjL2xpYi9jb21wb25lbnRzL2NhbGVuZGFyLXllYXJzL2NhbGVuZGFyLXllYXJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2NhbGVuZGFyL3NyYy9saWIvY29tcG9uZW50cy9jYWxlbmRhci15ZWFycy9jYWxlbmRhci15ZWFycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9CQUFv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dXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGRlZmVyRm4sIGlzRnVuY3Rpb24gfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgYWRkTW9udGhzLCBnZXRZZWFyLCBzZXRZZWFyLCBzdWJNb250aHMgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBDYWxlbmRhckNlbGxEaXJlY3RpdmUsIENhbGVuZGFyVmlld0RpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgQ2FsZW5kYXJWaWV3IH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IERhdGVMYWJlbFBpcGUgfSBmcm9tICcuLi8uLi9waXBlcyc7XG5pbXBvcnQgeyBDYWxlbmRhclllYXJzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IENhbGVuZGFySGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vY2FsZW5kYXItaGVhZGVyJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBjb21wb25lbnQgZm9yIGRpc3BsYXlpbmcgdGhlIHllYXJzIHZpZXcgaW4gYSBjYWxlbmRhci5cbiAqIEV4dGVuZHMgdGhlIGBDYWxlbmRhclZpZXdEaXJlY3RpdmVgIGNsYXNzIGFuZCBpbXBsZW1lbnRzIHRoZSBgQWZ0ZXJWaWV3SW5pdGAgaW50ZXJmYWNlLlxuICpcbiAqIEBzZWUge0NhbGVuZGFyVmlld0RpcmVjdGl2ZX1cbiAqL1xuQENTU0NvbXBvbmVudCgnY2FsZW5kYXIteWVhcnMnKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2R4LWNhbGVuZGFyLXllYXJzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIENhbGVuZGFyQ2VsbERpcmVjdGl2ZSwgQ2FsZW5kYXJIZWFkZXJDb21wb25lbnQsIERhdGVMYWJlbFBpcGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXIteWVhcnMuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbQ2FsZW5kYXJZZWFyc1NlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBDYWxlbmRhclllYXJzQ29tcG9uZW50IGV4dGVuZHMgQ2FsZW5kYXJWaWV3RGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBjYWxlbmRhclllYXJzID0gaW5qZWN0KENhbGVuZGFyWWVhcnNTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5leHRWaWV3ID0gQ2FsZW5kYXJWaWV3LlllYXI7XG4gIHByb3RlY3RlZCByZWFkb25seSBjdXJyZW50VmlldyA9IENhbGVuZGFyVmlldy5ZZWFycztcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGRlZmVyRm4oKCkgPT4gdGhpcy5zY3JvbGxDdXJyZW50WWVhckludG9WaWV3KCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHByZXZpb3VzWWVhcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZUFjdGl2ZURhdGUoZXZlbnQsIHN1Yk1vbnRocyh0aGlzLmFjdGl2ZURhdGUsIDEyKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbmV4dFllYXIoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVBY3RpdmVEYXRlKGV2ZW50LCBhZGRNb250aHModGhpcy5hY3RpdmVEYXRlLCAxMikpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHByZXZpb3VzUm93KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQWN0aXZlRGF0ZShldmVudCwgc3ViTW9udGhzKHRoaXMuYWN0aXZlRGF0ZSwgMTIgKiAzKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbmV4dFJvdyhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZUFjdGl2ZURhdGUoZXZlbnQsIGFkZE1vbnRocyh0aGlzLmFjdGl2ZURhdGUsIDEyICogMykpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNlbGVjdERhdGUodmFsdWU6IERhdGUpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0RhdGVEaXNhYmxlZCh2YWx1ZSkpIHJldHVybjtcblxuICAgIGNvbnN0IGRhdGUgPSBzZXRZZWFyKHRoaXMuYWN0aXZlRGF0ZSwgZ2V0WWVhcih2YWx1ZSkpO1xuICAgIHRoaXMuY2FsZW5kYXIuc2VsZWN0RGF0ZShkYXRlLCB7IHNraXBEYXRlcmFuZ2VVcGRhdGU6IHRydWUgfSk7XG5cbiAgICB0aGlzLmNoYW5nZVZpZXcoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2Nyb2xsQ3VycmVudFllYXJJbnRvVmlldygpOiB2b2lkIHtcbiAgICBjb25zdCBzZWxlY3RlZFllYXIgPSB0aGlzLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5vZHgtY2FsZW5kYXItY2VsbC5pcy1zZWxlY3RlZCcpO1xuICAgIGNvbnN0IGN1cnJlbnRZZWFyID0gdGhpcy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcub2R4LWNhbGVuZGFyLWNlbGwtLWlzLWN1cnJlbnQnKTtcblxuICAgIGNvbnN0IGVsZW1lbnQgPSBzZWxlY3RlZFllYXIgfHwgY3VycmVudFllYXI7XG5cbiAgICBpZiAoZWxlbWVudCAmJiBpc0Z1bmN0aW9uKGVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcpKSB7XG4gICAgICBlbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmxvY2s6ICdjZW50ZXInLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8dGFibGUgY2xhc3M9XCJvZHgtY2FsZW5kYXJfX3RhYmxlXCIgcm9sZT1cImdyaWRcIiBhcmlhLWRlc2NyaWJlZGJ5PVwib2R4LWNhbGVuZGFyXCIgKm5ncnhMZXQ9XCJjYWxlbmRhci5hY3RpdmVEYXRlJCBhcyBhY3RpdmVEYXRlXCI+XG4gIDx0aGVhZCBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICA8dGg+PC90aD5cbiAgPC90aGVhZD5cblxuICA8dGJvZHlcbiAgICBjbGFzcz1cIm9keC1jYWxlbmRhcl9fYm9keVwiXG4gICAgKGtleWRvd24uQXJyb3dMZWZ0KT1cInByZXZpb3VzWWVhcigkZXZlbnQpXCJcbiAgICAoa2V5ZG93bi5BcnJvd1JpZ2h0KT1cIm5leHRZZWFyKCRldmVudClcIlxuICAgIChrZXlkb3duLkFycm93VXApPVwicHJldmlvdXNSb3coJGV2ZW50KVwiXG4gICAgKGtleWRvd24uQXJyb3dEb3duKT1cIm5leHRSb3coJGV2ZW50KVwiXG4gID5cbiAgICBAZm9yICh5ZWFyUm93IG9mIGNhbGVuZGFyWWVhcnMueWVhcnMkIHwgYXN5bmM7IHRyYWNrICRpbmRleCkge1xuICAgICAgPHRyIGNsYXNzPVwib2R4LWNhbGVuZGFyX195ZWFyLXJvd1wiPlxuICAgICAgICBAZm9yICh5ZWFyIG9mIHllYXJSb3c7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgIDx0ZCByb2xlPVwiZ3JpZGNlbGxcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzRGF0ZURpc2FibGVkKHllYXIpXCJcbiAgICAgICAgICAgICAgW29keENhbGVuZGFyQ2VsbF09XCJ5ZWFyXCJcbiAgICAgICAgICAgICAgW29keENhbGVuZGFyQ2VsbEFjdGl2ZURhdGVdPVwiYWN0aXZlRGF0ZVwiXG4gICAgICAgICAgICAgIFtvZHhDYWxlbmRhckNlbGxDYWxlbmRhclZpZXddPVwiY3VycmVudFZpZXdcIlxuICAgICAgICAgICAgICBbb2R4Q2FsZW5kYXJDZWxsU2VsZWN0ZWREYXRlXT1cInNlbGVjdGVkRGF0ZVwiXG4gICAgICAgICAgICAgIFtvZHhDYWxlbmRhckNlbGxTZWxlY3RlZERhdGVSYW5nZV09XCJzZWxlY3RlZERhdGVSYW5nZVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3REYXRlKHllYXIpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgeWVhciB8IG9keERhdGVMYWJlbDogeyB5ZWFyOiAnbnVtZXJpYycgfSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC90ZD5cbiAgICAgICAgfVxuICAgICAgPC90cj5cbiAgICB9XG4gIDwvdGJvZHk+XG48L3RhYmxlPlxuIl19
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIteWVhcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvY2FsZW5kYXIvc3JjL2xpYi9jb21wb25lbnRzL2NhbGVuZGFyLXllYXJzL2NhbGVuZGFyLXllYXJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2NhbGVuZGFyL3NyYy9saWIvY29tcG9uZW50cy9jYWxlbmRhci15ZWFycy9jYWxlbmRhci15ZWFycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9CQUFv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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BvZHgvYW5ndWxhcic7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgZGVmZXJGbiwgaXNGdW5jdGlvbiB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBhZGRNb250aHMsIGdldFllYXIsIHNldFllYXIsIHN1Yk1vbnRocyB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IENhbGVuZGFyQ2VsbERpcmVjdGl2ZSwgQ2FsZW5kYXJWaWV3RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBDYWxlbmRhclZpZXcgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgRGF0ZUxhYmVsUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzJztcbmltcG9ydCB7IENhbGVuZGFyWWVhcnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ2FsZW5kYXJIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9jYWxlbmRhci1oZWFkZXInO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGNvbXBvbmVudCBmb3IgZGlzcGxheWluZyB0aGUgeWVhcnMgdmlldyBpbiBhIGNhbGVuZGFyLlxuICogRXh0ZW5kcyB0aGUgYENhbGVuZGFyVmlld0RpcmVjdGl2ZWAgY2xhc3MgYW5kIGltcGxlbWVudHMgdGhlIGBBZnRlclZpZXdJbml0YCBpbnRlcmZhY2UuXG4gKlxuICogQHNlZSB7Q2FsZW5kYXJWaWV3RGlyZWN0aXZlfVxuICovXG5AQ1NTQ29tcG9uZW50KCdjYWxlbmRhci15ZWFycycpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtY2FsZW5kYXIteWVhcnMnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgQ2FsZW5kYXJDZWxsRGlyZWN0aXZlLCBDYWxlbmRhckhlYWRlckNvbXBvbmVudCwgRGF0ZUxhYmVsUGlwZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci15ZWFycy5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtDYWxlbmRhclllYXJzU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyWWVhcnNDb21wb25lbnQgZXh0ZW5kcyBDYWxlbmRhclZpZXdEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNhbGVuZGFyWWVhcnMgPSBpbmplY3QoQ2FsZW5kYXJZZWFyc1NlcnZpY2UpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbmV4dFZpZXcgPSBDYWxlbmRhclZpZXcuWWVhcjtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGN1cnJlbnRWaWV3ID0gQ2FsZW5kYXJWaWV3LlllYXJzO1xuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgZGVmZXJGbigoKSA9PiB0aGlzLnNjcm9sbEN1cnJlbnRZZWFySW50b1ZpZXcoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJldmlvdXNZZWFyKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQWN0aXZlRGF0ZShldmVudCwgc3ViTW9udGhzKHRoaXMuYWN0aXZlRGF0ZSwgMTIpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBuZXh0WWVhcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZUFjdGl2ZURhdGUoZXZlbnQsIGFkZE1vbnRocyh0aGlzLmFjdGl2ZURhdGUsIDEyKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJldmlvdXNSb3coZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVBY3RpdmVEYXRlKGV2ZW50LCBzdWJNb250aHModGhpcy5hY3RpdmVEYXRlLCAxMiAqIDMpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBuZXh0Um93KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQWN0aXZlRGF0ZShldmVudCwgYWRkTW9udGhzKHRoaXMuYWN0aXZlRGF0ZSwgMTIgKiAzKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VsZWN0RGF0ZSh2YWx1ZTogRGF0ZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlzRGF0ZURpc2FibGVkKHZhbHVlKSkgcmV0dXJuO1xuXG4gICAgY29uc3QgZGF0ZSA9IHNldFllYXIodGhpcy5hY3RpdmVEYXRlLCBnZXRZZWFyKHZhbHVlKSk7XG4gICAgdGhpcy5jYWxlbmRhci5zZWxlY3REYXRlKGRhdGUsIHsgc2tpcERhdGVyYW5nZVVwZGF0ZTogdHJ1ZSB9KTtcblxuICAgIHRoaXMuY2hhbmdlVmlldygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzY3JvbGxDdXJyZW50WWVhckludG9WaWV3KCk6IHZvaWQge1xuICAgIGNvbnN0IHNlbGVjdGVkWWVhciA9IHRoaXMuZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm9keC1jYWxlbmRhci1jZWxsLmlzLXNlbGVjdGVkJyk7XG4gICAgY29uc3QgY3VycmVudFllYXIgPSB0aGlzLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5vZHgtY2FsZW5kYXItY2VsbC0taXMtY3VycmVudCcpO1xuXG4gICAgY29uc3QgZWxlbWVudCA9IHNlbGVjdGVkWWVhciB8fCBjdXJyZW50WWVhcjtcblxuICAgIGlmIChlbGVtZW50ICYmIGlzRnVuY3Rpb24oZWxlbWVudC5zY3JvbGxJbnRvVmlldykpIHtcbiAgICAgIGVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ2NlbnRlcicsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjx0YWJsZSBjbGFzcz1cIm9keC1jYWxlbmRhcl9fdGFibGVcIiByb2xlPVwiZ3JpZFwiIGFyaWEtZGVzY3JpYmVkYnk9XCJvZHgtY2FsZW5kYXJcIj5cbiAgPHRoZWFkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgIDx0aD48L3RoPlxuICA8L3RoZWFkPlxuXG4gIDx0Ym9keVxuICAgIGNsYXNzPVwib2R4LWNhbGVuZGFyX19ib2R5XCJcbiAgICAoa2V5ZG93bi5BcnJvd0xlZnQpPVwicHJldmlvdXNZZWFyKCRldmVudClcIlxuICAgIChrZXlkb3duLkFycm93UmlnaHQpPVwibmV4dFllYXIoJGV2ZW50KVwiXG4gICAgKGtleWRvd24uQXJyb3dVcCk9XCJwcmV2aW91c1JvdygkZXZlbnQpXCJcbiAgICAoa2V5ZG93bi5BcnJvd0Rvd24pPVwibmV4dFJvdygkZXZlbnQpXCJcbiAgPlxuICAgIEBmb3IgKHllYXJSb3cgb2YgY2FsZW5kYXJZZWFycy55ZWFycyQgfCBhc3luYzsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8dHIgY2xhc3M9XCJvZHgtY2FsZW5kYXJfX3llYXItcm93XCI+XG4gICAgICAgIEBmb3IgKHllYXIgb2YgeWVhclJvdzsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgPHRkIHJvbGU9XCJncmlkY2VsbFwiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEYXRlRGlzYWJsZWQoeWVhcilcIlxuICAgICAgICAgICAgICBbb2R4Q2FsZW5kYXJDZWxsXT1cInllYXJcIlxuICAgICAgICAgICAgICBbb2R4Q2FsZW5kYXJDZWxsQWN0aXZlRGF0ZV09XCJjYWxlbmRhci5hY3RpdmVEYXRlJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgW29keENhbGVuZGFyQ2VsbENhbGVuZGFyVmlld109XCJjdXJyZW50Vmlld1wiXG4gICAgICAgICAgICAgIFtvZHhDYWxlbmRhckNlbGxTZWxlY3RlZERhdGVdPVwic2VsZWN0ZWREYXRlXCJcbiAgICAgICAgICAgICAgW29keENhbGVuZGFyQ2VsbFNlbGVjdGVkRGF0ZVJhbmdlXT1cInNlbGVjdGVkRGF0ZVJhbmdlXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdERhdGUoeWVhcilcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyB5ZWFyIHwgb2R4RGF0ZUxhYmVsOiB7IHllYXI6ICdudW1lcmljJyB9IH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L3RkPlxuICAgICAgICB9XG4gICAgICA8L3RyPlxuICAgIH1cbiAgPC90Ym9keT5cbjwvdGFibGU+XG4iXX0=
@@ -2,7 +2,6 @@ import { __decorate } from "tslib";
2
2
  import { transition, trigger, useAnimation } from '@angular/animations';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { ChangeDetectionStrategy, Component, ViewEncapsulation, inject } from '@angular/core';
5
- import { LetDirective } from '@ngrx/component';
6
5
  import { collapse } from '@odx/angular/animations';
7
6
  import { InteractiveDirective } from '@odx/angular/cdk/a11y';
8
7
  import { DynamicViewDirective } from '@odx/angular/cdk/dynamic-view';
@@ -47,7 +46,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
47
46
  type: Component,
48
47
  args: [{ selector: 'odx-notification-center', standalone: true, imports: [
49
48
  CommonModule,
50
- LetDirective,
51
49
  ActionGroupComponent,
52
50
  BadgeDirective,
53
51
  ButtonComponent,
@@ -60,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
60
58
  ListModule,
61
59
  ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [provideTranslations(notificationI18n)], animations: [trigger('notificationAnimation', [transition(':leave', useAnimation(collapse, { delay: 150 }))])], template: "@if (notificationCenterService.notifications$ | async; as notifications) {\n <h3 class=\"odx-notification-center__header\">\n <ng-template [odxDynamicView]=\"(notificationCenterService.title$ | async) ?? ('title' | odxTranslate | async)\" />\n </h3>\n <odx-list class=\"odx-notification-center__content\">\n @for (notification of notifications.values; track notification.id) {\n <odx-list-item\n @notificationAnimation\n [muted]=\"isMuted(notification)\"\n [selected]=\"!notification.hasBeenSeen\"\n (click)=\"notificationCenterService.executeAction(notification)\"\n >\n <odx-notification-item [notification]=\"notification\" (dismiss)=\"notificationCenterService.dismiss(notification)\" />\n </odx-list-item>\n }\n </odx-list>\n <div class=\"odx-notification-center__footer\">\n <button odxButton [disabled]=\"false\" (click)=\"notificationCenterService.dismissAll()\">\n {{ 'dismissAll' | odxTranslate | async }}\n </button>\n </div>\n}\n" }]
62
60
  }] });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWNlbnRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9ub3RpZmljYXRpb24vc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1jZW50ZXIvbm90aWZpY2F0aW9uLWNlbnRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9ub3RpZmljYXRpb24vc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1jZW50ZXIvbm90aWZpY2F0aW9uLWNlbnRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWEsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDckUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVuRCxPQUFPLGdCQUFnQixNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7OztBQUU3Rjs7R0FFRztBQXlCSSxJQUFNLDJCQUEyQixHQUFqQyxNQUFNLDJCQUEyQjtJQUFqQztRQUNjLDhCQUF5QixHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRWpFLFlBQU8sR0FBRyxhQUFhLEVBQUUsQ0FBQztLQVMzQztJQVBRLFdBQVc7UUFDaEIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFFUyxPQUFPLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFtQjtRQUN6RCxPQUFPLFdBQVcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7SUFDeEMsQ0FBQzsrR0FYVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixzRUFIM0IsQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLDBCQzdDcEQsMi9CQXNCQSwyQ0RPSSxZQUFZLG9GQUlaLGVBQWUseUdBQ2Ysb0JBQW9CLHNKQUVwQixjQUFjLDRIQUNkLGFBQWEscURBQ2IseUJBQXlCLGlIQUV6QixVQUFVLHVPQU1BLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7O0FBRW5HLDJCQUEyQjtJQXhCdkMsWUFBWSxDQUFDLHFCQUFxQixDQUFDO0dBd0J2QiwyQkFBMkIsQ0FZdkM7OzRGQVpZLDJCQUEyQjtrQkF2QnZDLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYix5QkFBeUI7d0JBQ3pCLG9CQUFvQjt3QkFDcEIsVUFBVTtxQkFDWCxpQkFFYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsbUJBQW1CLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxjQUN0QyxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25EZXN0cm95LCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMZXREaXJlY3RpdmUgfSBmcm9tICdAbmdyeC9jb21wb25lbnQnO1xuaW1wb3J0IHsgY29sbGFwc2UgfSBmcm9tICdAb2R4L2FuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBJbnRlcmFjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBEeW5hbWljVmlld0RpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvZHluYW1pYy12aWV3JztcbmltcG9ydCB7IEFjdGlvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYWN0aW9uLWdyb3VwJztcbmltcG9ydCB7IEJhZGdlRGlyZWN0aXZlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYmFkZ2UnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHsgTGlzdE1vZHVsZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2xpc3QnO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUsIHByb3ZpZGVUcmFuc2xhdGlvbnMgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwvdHJhbnNsYXRlJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uUmVmIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCBub3RpZmljYXRpb25JMThuIGZyb20gJy4uLy4uL25vdGlmaWNhdGlvbi5pMThuJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkNlbnRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50JztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCBmb3IgZGlzcGxheWluZyBhbmQgbWFuYWdpbmcgYSBsaXN0IG9mIG5vdGlmaWNhdGlvbnMuIEl0IGludGVncmF0ZXMgdmFyaW91cyBzdWItY29tcG9uZW50cyBhbmQgZGlyZWN0aXZlcyB0byBwcm92aWRlIGEgcmljaCB1c2VyIGludGVyZmFjZSBmb3Igbm90aWZpY2F0aW9uIGludGVyYWN0aW9uLiBTdXBwb3J0cyBhbmltYXRpb25zIGZvciBub3RpZmljYXRpb24gdHJhbnNpdGlvbnMgYW5kIGxldmVyYWdlcyBBbmd1bGFyJ3MgY2hhbmdlIGRldGVjdGlvbiBzdHJhdGVnaWVzIGZvciBwZXJmb3JtYW5jZS5cbiAqL1xuQENTU0NvbXBvbmVudCgnbm90aWZpY2F0aW9uLWNlbnRlcicpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtbm90aWZpY2F0aW9uLWNlbnRlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTGV0RGlyZWN0aXZlLFxuICAgIEFjdGlvbkdyb3VwQ29tcG9uZW50LFxuICAgIEJhZGdlRGlyZWN0aXZlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBEeW5hbWljVmlld0RpcmVjdGl2ZSxcbiAgICBJY29uQ29tcG9uZW50LFxuICAgIERyb3Bkb3duTW9kdWxlLFxuICAgIFRyYW5zbGF0ZVBpcGUsXG4gICAgTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBJbnRlcmFjdGl2ZURpcmVjdGl2ZSxcbiAgICBMaXN0TW9kdWxlLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLWNlbnRlci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtwcm92aWRlVHJhbnNsYXRpb25zKG5vdGlmaWNhdGlvbkkxOG4pXSxcbiAgYW5pbWF0aW9uczogW3RyaWdnZXIoJ25vdGlmaWNhdGlvbkFuaW1hdGlvbicsIFt0cmFuc2l0aW9uKCc6bGVhdmUnLCB1c2VBbmltYXRpb24oY29sbGFwc2UsIHsgZGVsYXk6IDE1MCB9KSldKV0sXG59KVxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbkNlbnRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCByZWFkb25seSBub3RpZmljYXRpb25DZW50ZXJTZXJ2aWNlID0gaW5qZWN0KE5vdGlmaWNhdGlvbkNlbnRlclNlcnZpY2UpO1xuXG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm5vdGlmaWNhdGlvbkNlbnRlclNlcnZpY2UubWFya0FsbEFzU2VlbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGlzTXV0ZWQoeyBvcHRpb25zLCBoYXNCZWVuU2VlbiB9OiBOb3RpZmljYXRpb25SZWYpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaGFzQmVlblNlZW4gJiYgIW9wdGlvbnMuYWN0aW9uO1xuICB9XG59XG4iLCJAaWYgKG5vdGlmaWNhdGlvbkNlbnRlclNlcnZpY2Uubm90aWZpY2F0aW9ucyQgfCBhc3luYzsgYXMgbm90aWZpY2F0aW9ucykge1xuICA8aDMgY2xhc3M9XCJvZHgtbm90aWZpY2F0aW9uLWNlbnRlcl9faGVhZGVyXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtvZHhEeW5hbWljVmlld109XCIobm90aWZpY2F0aW9uQ2VudGVyU2VydmljZS50aXRsZSQgfCBhc3luYykgPz8gKCd0aXRsZScgfCBvZHhUcmFuc2xhdGUgfCBhc3luYylcIiAvPlxuICA8L2gzPlxuICA8b2R4LWxpc3QgY2xhc3M9XCJvZHgtbm90aWZpY2F0aW9uLWNlbnRlcl9fY29udGVudFwiPlxuICAgIEBmb3IgKG5vdGlmaWNhdGlvbiBvZiBub3RpZmljYXRpb25zLnZhbHVlczsgdHJhY2sgbm90aWZpY2F0aW9uLmlkKSB7XG4gICAgICA8b2R4LWxpc3QtaXRlbVxuICAgICAgICBAbm90aWZpY2F0aW9uQW5pbWF0aW9uXG4gICAgICAgIFttdXRlZF09XCJpc011dGVkKG5vdGlmaWNhdGlvbilcIlxuICAgICAgICBbc2VsZWN0ZWRdPVwiIW5vdGlmaWNhdGlvbi5oYXNCZWVuU2VlblwiXG4gICAgICAgIChjbGljayk9XCJub3RpZmljYXRpb25DZW50ZXJTZXJ2aWNlLmV4ZWN1dGVBY3Rpb24obm90aWZpY2F0aW9uKVwiXG4gICAgICA+XG4gICAgICAgIDxvZHgtbm90aWZpY2F0aW9uLWl0ZW0gW25vdGlmaWNhdGlvbl09XCJub3RpZmljYXRpb25cIiAoZGlzbWlzcyk9XCJub3RpZmljYXRpb25DZW50ZXJTZXJ2aWNlLmRpc21pc3Mobm90aWZpY2F0aW9uKVwiIC8+XG4gICAgICA8L29keC1saXN0LWl0ZW0+XG4gICAgfVxuICA8L29keC1saXN0PlxuICA8ZGl2IGNsYXNzPVwib2R4LW5vdGlmaWNhdGlvbi1jZW50ZXJfX2Zvb3RlclwiPlxuICAgIDxidXR0b24gb2R4QnV0dG9uIFtkaXNhYmxlZF09XCJmYWxzZVwiIChjbGljayk9XCJub3RpZmljYXRpb25DZW50ZXJTZXJ2aWNlLmRpc21pc3NBbGwoKVwiPlxuICAgICAge3sgJ2Rpc21pc3NBbGwnIHwgb2R4VHJhbnNsYXRlIHwgYXN5bmMgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG59XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWNlbnRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9ub3RpZmljYXRpb24vc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1jZW50ZXIvbm90aWZpY2F0aW9uLWNlbnRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9ub3RpZmljYXRpb24vc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1jZW50ZXIvbm90aWZpY2F0aW9uLWNlbnRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWEsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRW5ELE9BQU8sZ0JBQWdCLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0RBQWtELENBQUM7Ozs7O0FBRTdGOztHQUVHO0FBd0JJLElBQU0sMkJBQTJCLEdBQWpDLE1BQU0sMkJBQTJCO0lBQWpDO1FBQ2MsOEJBQXlCLEdBQUcsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFFakUsWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO0tBUzNDO0lBUFEsV0FBVztRQUNoQixJQUFJLENBQUMseUJBQXlCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDakQsQ0FBQztJQUVTLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQW1CO1FBQ3pELE9BQU8sV0FBVyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztJQUN4QyxDQUFDOytHQVhVLDJCQUEyQjttR0FBM0IsMkJBQTJCLHNFQUgzQixDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLENBQUMsMEJDM0NwRCwyL0JBc0JBLDJDRE1JLFlBQVksb0ZBR1osZUFBZSx5R0FDZixvQkFBb0Isc0pBRXBCLGNBQWMsNEhBQ2QsYUFBYSxxREFDYix5QkFBeUIsaUhBRXpCLFVBQVUsdU9BTUEsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7QUFFbkcsMkJBQTJCO0lBdkJ2QyxZQUFZLENBQUMscUJBQXFCLENBQUM7R0F1QnZCLDJCQUEyQixDQVl2Qzs7NEZBWlksMkJBQTJCO2tCQXRCdkMsU0FBUzsrQkFDRSx5QkFBeUIsY0FDdkIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYix5QkFBeUI7d0JBQ3pCLG9CQUFvQjt3QkFDcEIsVUFBVTtxQkFDWCxpQkFFYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsbUJBQW1CLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxjQUN0QyxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25EZXN0cm95LCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb2xsYXBzZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IEludGVyYWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IER5bmFtaWNWaWV3RGlyZWN0aXZlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9keW5hbWljLXZpZXcnO1xuaW1wb3J0IHsgQWN0aW9uR3JvdXBDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9hY3Rpb24tZ3JvdXAnO1xuaW1wb3J0IHsgQmFkZ2VEaXJlY3RpdmUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9kcm9wZG93bic7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBMaXN0TW9kdWxlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvbGlzdCc7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSwgcHJvdmlkZVRyYW5zbGF0aW9ucyB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbC90cmFuc2xhdGUnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25SZWYgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IG5vdGlmaWNhdGlvbkkxOG4gZnJvbSAnLi4vLi4vbm90aWZpY2F0aW9uLmkxOG4nO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uQ2VudGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9ub3RpZmljYXRpb24taXRlbS9ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IGZvciBkaXNwbGF5aW5nIGFuZCBtYW5hZ2luZyBhIGxpc3Qgb2Ygbm90aWZpY2F0aW9ucy4gSXQgaW50ZWdyYXRlcyB2YXJpb3VzIHN1Yi1jb21wb25lbnRzIGFuZCBkaXJlY3RpdmVzIHRvIHByb3ZpZGUgYSByaWNoIHVzZXIgaW50ZXJmYWNlIGZvciBub3RpZmljYXRpb24gaW50ZXJhY3Rpb24uIFN1cHBvcnRzIGFuaW1hdGlvbnMgZm9yIG5vdGlmaWNhdGlvbiB0cmFuc2l0aW9ucyBhbmQgbGV2ZXJhZ2VzIEFuZ3VsYXIncyBjaGFuZ2UgZGV0ZWN0aW9uIHN0cmF0ZWdpZXMgZm9yIHBlcmZvcm1hbmNlLlxuICovXG5AQ1NTQ29tcG9uZW50KCdub3RpZmljYXRpb24tY2VudGVyJylcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29keC1ub3RpZmljYXRpb24tY2VudGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBY3Rpb25Hcm91cENvbXBvbmVudCxcbiAgICBCYWRnZURpcmVjdGl2ZSxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgRHluYW1pY1ZpZXdEaXJlY3RpdmUsXG4gICAgSWNvbkNvbXBvbmVudCxcbiAgICBEcm9wZG93bk1vZHVsZSxcbiAgICBUcmFuc2xhdGVQaXBlLFxuICAgIE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQsXG4gICAgSW50ZXJhY3RpdmVEaXJlY3RpdmUsXG4gICAgTGlzdE1vZHVsZSxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL25vdGlmaWNhdGlvbi1jZW50ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbcHJvdmlkZVRyYW5zbGF0aW9ucyhub3RpZmljYXRpb25JMThuKV0sXG4gIGFuaW1hdGlvbnM6IFt0cmlnZ2VyKCdub3RpZmljYXRpb25BbmltYXRpb24nLCBbdHJhbnNpdGlvbignOmxlYXZlJywgdXNlQW5pbWF0aW9uKGNvbGxhcHNlLCB7IGRlbGF5OiAxNTAgfSkpXSldLFxufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25DZW50ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbm90aWZpY2F0aW9uQ2VudGVyU2VydmljZSA9IGluamVjdChOb3RpZmljYXRpb25DZW50ZXJTZXJ2aWNlKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5ub3RpZmljYXRpb25DZW50ZXJTZXJ2aWNlLm1hcmtBbGxBc1NlZW4oKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpc011dGVkKHsgb3B0aW9ucywgaGFzQmVlblNlZW4gfTogTm90aWZpY2F0aW9uUmVmKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGhhc0JlZW5TZWVuICYmICFvcHRpb25zLmFjdGlvbjtcbiAgfVxufVxuIiwiQGlmIChub3RpZmljYXRpb25DZW50ZXJTZXJ2aWNlLm5vdGlmaWNhdGlvbnMkIHwgYXN5bmM7IGFzIG5vdGlmaWNhdGlvbnMpIHtcbiAgPGgzIGNsYXNzPVwib2R4LW5vdGlmaWNhdGlvbi1jZW50ZXJfX2hlYWRlclwiPlxuICAgIDxuZy10ZW1wbGF0ZSBbb2R4RHluYW1pY1ZpZXddPVwiKG5vdGlmaWNhdGlvbkNlbnRlclNlcnZpY2UudGl0bGUkIHwgYXN5bmMpID8/ICgndGl0bGUnIHwgb2R4VHJhbnNsYXRlIHwgYXN5bmMpXCIgLz5cbiAgPC9oMz5cbiAgPG9keC1saXN0IGNsYXNzPVwib2R4LW5vdGlmaWNhdGlvbi1jZW50ZXJfX2NvbnRlbnRcIj5cbiAgICBAZm9yIChub3RpZmljYXRpb24gb2Ygbm90aWZpY2F0aW9ucy52YWx1ZXM7IHRyYWNrIG5vdGlmaWNhdGlvbi5pZCkge1xuICAgICAgPG9keC1saXN0LWl0ZW1cbiAgICAgICAgQG5vdGlmaWNhdGlvbkFuaW1hdGlvblxuICAgICAgICBbbXV0ZWRdPVwiaXNNdXRlZChub3RpZmljYXRpb24pXCJcbiAgICAgICAgW3NlbGVjdGVkXT1cIiFub3RpZmljYXRpb24uaGFzQmVlblNlZW5cIlxuICAgICAgICAoY2xpY2spPVwibm90aWZpY2F0aW9uQ2VudGVyU2VydmljZS5leGVjdXRlQWN0aW9uKG5vdGlmaWNhdGlvbilcIlxuICAgICAgPlxuICAgICAgICA8b2R4LW5vdGlmaWNhdGlvbi1pdGVtIFtub3RpZmljYXRpb25dPVwibm90aWZpY2F0aW9uXCIgKGRpc21pc3MpPVwibm90aWZpY2F0aW9uQ2VudGVyU2VydmljZS5kaXNtaXNzKG5vdGlmaWNhdGlvbilcIiAvPlxuICAgICAgPC9vZHgtbGlzdC1pdGVtPlxuICAgIH1cbiAgPC9vZHgtbGlzdD5cbiAgPGRpdiBjbGFzcz1cIm9keC1ub3RpZmljYXRpb24tY2VudGVyX19mb290ZXJcIj5cbiAgICA8YnV0dG9uIG9keEJ1dHRvbiBbZGlzYWJsZWRdPVwiZmFsc2VcIiAoY2xpY2spPVwibm90aWZpY2F0aW9uQ2VudGVyU2VydmljZS5kaXNtaXNzQWxsKClcIj5cbiAgICAgIHt7ICdkaXNtaXNzQWxsJyB8IG9keFRyYW5zbGF0ZSB8IGFzeW5jIH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxufVxuIl19
@@ -1,21 +1,19 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import { NgModule } from '@angular/core';
3
- import { LetDirective } from '@ngrx/component';
4
3
  import { DisabledController, ReadonlyController } from './controllers';
5
4
  import { ClickOutsideDirective } from './directives';
6
5
  import * as i0 from "@angular/core";
7
6
  const controllers = [DisabledController, ReadonlyController];
8
- const modules = [ClickOutsideDirective, LetDirective];
9
7
  export class CoreModule {
10
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
11
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: CoreModule, imports: [DisabledController, ReadonlyController, ClickOutsideDirective, LetDirective], exports: [CommonModule, DisabledController, ReadonlyController, ClickOutsideDirective, LetDirective] }); }
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: CoreModule, imports: [DisabledController, ReadonlyController, ClickOutsideDirective], exports: [CommonModule, DisabledController, ReadonlyController, ClickOutsideDirective] }); }
12
10
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CoreModule, imports: [CommonModule] }); }
13
11
  }
14
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CoreModule, decorators: [{
15
13
  type: NgModule,
16
14
  args: [{
17
- imports: [...controllers, ...modules],
18
- exports: [CommonModule, ...controllers, ...modules],
15
+ imports: [...controllers, ClickOutsideDirective],
16
+ exports: [CommonModule, ...controllers, ClickOutsideDirective],
19
17
  }]
20
18
  }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9jb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFckQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0FBQzdELE1BQU0sT0FBTyxHQUFHLENBQUMscUJBQXFCLEVBQUUsWUFBWSxDQUFDLENBQUM7QUFNdEQsTUFBTSxPQUFPLFVBQVU7K0dBQVYsVUFBVTtnSEFBVixVQUFVLFlBUEYsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQzFDLHFCQUFxQixFQUFFLFlBQVksYUFJeEMsWUFBWSxFQUxILGtCQUFrQixFQUFFLGtCQUFrQixFQUMxQyxxQkFBcUIsRUFBRSxZQUFZO2dIQU12QyxVQUFVLFlBRlgsWUFBWTs7NEZBRVgsVUFBVTtrQkFKdEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxHQUFHLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQztvQkFDckMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLEdBQUcsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDO2lCQUNwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGV0RGlyZWN0aXZlIH0gZnJvbSAnQG5ncngvY29tcG9uZW50JztcbmltcG9ydCB7IERpc2FibGVkQ29udHJvbGxlciwgUmVhZG9ubHlDb250cm9sbGVyIH0gZnJvbSAnLi9jb250cm9sbGVycyc7XG5pbXBvcnQgeyBDbGlja091dHNpZGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuXG5jb25zdCBjb250cm9sbGVycyA9IFtEaXNhYmxlZENvbnRyb2xsZXIsIFJlYWRvbmx5Q29udHJvbGxlcl07XG5jb25zdCBtb2R1bGVzID0gW0NsaWNrT3V0c2lkZURpcmVjdGl2ZSwgTGV0RGlyZWN0aXZlXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogWy4uLmNvbnRyb2xsZXJzLCAuLi5tb2R1bGVzXSxcbiAgZXhwb3J0czogW0NvbW1vbk1vZHVsZSwgLi4uY29udHJvbGxlcnMsIC4uLm1vZHVsZXNdLFxufSlcbmV4cG9ydCBjbGFzcyBDb3JlTW9kdWxlIHt9XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9jb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUVyRCxNQUFNLFdBQVcsR0FBRyxDQUFDLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLENBQUM7QUFNN0QsTUFBTSxPQUFPLFVBQVU7K0dBQVYsVUFBVTtnSEFBVixVQUFVLFlBTkYsa0JBQWtCLEVBQUUsa0JBQWtCLEVBRy9CLHFCQUFxQixhQUNyQyxZQUFZLEVBSkgsa0JBQWtCLEVBQUUsa0JBQWtCLEVBSWpCLHFCQUFxQjtnSEFFbEQsVUFBVSxZQUZYLFlBQVk7OzRGQUVYLFVBQVU7a0JBSnRCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsR0FBRyxXQUFXLEVBQUUscUJBQXFCLENBQUM7b0JBQ2hELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxHQUFHLFdBQVcsRUFBRSxxQkFBcUIsQ0FBQztpQkFDL0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpc2FibGVkQ29udHJvbGxlciwgUmVhZG9ubHlDb250cm9sbGVyIH0gZnJvbSAnLi9jb250cm9sbGVycyc7XG5pbXBvcnQgeyBDbGlja091dHNpZGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuXG5jb25zdCBjb250cm9sbGVycyA9IFtEaXNhYmxlZENvbnRyb2xsZXIsIFJlYWRvbmx5Q29udHJvbGxlcl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFsuLi5jb250cm9sbGVycywgQ2xpY2tPdXRzaWRlRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW0NvbW1vbk1vZHVsZSwgLi4uY29udHJvbGxlcnMsIENsaWNrT3V0c2lkZURpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIENvcmVNb2R1bGUge31cbiJdfQ==
@@ -6,15 +6,14 @@ import * as i2 from '@odx/angular';
6
6
  import { CoreModule, WindowRef, DisabledController } from '@odx/angular';
7
7
  import { CSSComponent, fastDeepEqual, CSSModifier } from '@odx/angular/internal';
8
8
  import { createConfigTokens, isString, isPresent, injectElement, hasChanged, EventManager, deferFn, untilDestroyed, isFunction } from '@odx/angular/utils';
9
+ import { BehaviorSubject, shareReplay, map, filter, distinctUntilChanged, merge, defer, of, withLatestFrom, combineLatest } from 'rxjs';
9
10
  import { isSameDay, isSameMonth, isSameYear, endOfDay, endOfMonth, endOfYear, startOfDay, startOfMonth, startOfYear, isValid, toDate, isBefore, isEqual, addMonths, subMonths, isWithinInterval, startOfWeek, addDays, endOfWeek, eachMonthOfInterval, addYears, getYear, setYear, subDays, subWeeks, addWeeks, setMonth, getMonth } from 'date-fns';
10
- import { BehaviorSubject, shareReplay, map, filter, distinctUntilChanged, merge, defer, of, withLatestFrom } from 'rxjs';
11
11
  import { ActionGroupComponent } from '@odx/angular/components/action-group';
12
12
  import { ButtonComponent } from '@odx/angular/components/button';
13
13
  import { IconComponent } from '@odx/angular/components/icon';
14
14
  import { LocalizationService } from '@odx/angular/localization';
15
15
  import * as i1 from '@angular/common';
16
16
  import { DOCUMENT } from '@angular/common';
17
- import * as i3 from '@ngrx/component';
18
17
 
19
18
  var CalendarSelectionMode;
20
19
  (function (CalendarSelectionMode) {
@@ -938,14 +937,14 @@ let CalendarYearsComponent = class CalendarYearsComponent extends CalendarViewDi
938
937
  }
939
938
  }
940
939
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CalendarYearsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
941
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CalendarYearsComponent, isStandalone: true, selector: "odx-calendar-years", providers: [CalendarYearsService], usesInheritance: true, ngImport: i0, template: "<table class=\"odx-calendar__table\" role=\"grid\" aria-describedby=\"odx-calendar\" *ngrxLet=\"calendar.activeDate$ as activeDate\">\n <thead aria-hidden=\"true\">\n <th></th>\n </thead>\n\n <tbody\n class=\"odx-calendar__body\"\n (keydown.ArrowLeft)=\"previousYear($event)\"\n (keydown.ArrowRight)=\"nextYear($event)\"\n (keydown.ArrowUp)=\"previousRow($event)\"\n (keydown.ArrowDown)=\"nextRow($event)\"\n >\n @for (yearRow of calendarYears.years$ | async; track $index) {\n <tr class=\"odx-calendar__year-row\">\n @for (year of yearRow; track $index) {\n <td role=\"gridcell\">\n <button\n [disabled]=\"isDateDisabled(year)\"\n [odxCalendarCell]=\"year\"\n [odxCalendarCellActiveDate]=\"activeDate\"\n [odxCalendarCellCalendarView]=\"currentView\"\n [odxCalendarCellSelectedDate]=\"selectedDate\"\n [odxCalendarCellSelectedDateRange]=\"selectedDateRange\"\n (click)=\"selectDate(year)\"\n >\n {{ year | odxDateLabel: { year: 'numeric' } }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n</table>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "directive", type: i2.DisabledController, selector: "[disabled]", inputs: ["disabled"] }, { kind: "directive", type: i3.LetDirective, selector: "[ngrxLet]", inputs: ["ngrxLet", "ngrxLetSuspenseTpl"] }, { kind: "directive", type: CalendarCellDirective, selector: "[odxCalendarCell]", inputs: ["odxCalendarCell", "odxCalendarCellCalendarView", "odxCalendarCellActiveDate", "odxCalendarCellSelectedDate", "odxCalendarCellSelectedDateRange", "odxCalendarCellPreviewDate"] }, { kind: "pipe", type: DateLabelPipe, name: "odxDateLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
940
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CalendarYearsComponent, isStandalone: true, selector: "odx-calendar-years", providers: [CalendarYearsService], usesInheritance: true, ngImport: i0, template: "<table class=\"odx-calendar__table\" role=\"grid\" aria-describedby=\"odx-calendar\">\n <thead aria-hidden=\"true\">\n <th></th>\n </thead>\n\n <tbody\n class=\"odx-calendar__body\"\n (keydown.ArrowLeft)=\"previousYear($event)\"\n (keydown.ArrowRight)=\"nextYear($event)\"\n (keydown.ArrowUp)=\"previousRow($event)\"\n (keydown.ArrowDown)=\"nextRow($event)\"\n >\n @for (yearRow of calendarYears.years$ | async; track $index) {\n <tr class=\"odx-calendar__year-row\">\n @for (year of yearRow; track $index) {\n <td role=\"gridcell\">\n <button\n [disabled]=\"isDateDisabled(year)\"\n [odxCalendarCell]=\"year\"\n [odxCalendarCellActiveDate]=\"calendar.activeDate$ | async\"\n [odxCalendarCellCalendarView]=\"currentView\"\n [odxCalendarCellSelectedDate]=\"selectedDate\"\n [odxCalendarCellSelectedDateRange]=\"selectedDateRange\"\n (click)=\"selectDate(year)\"\n >\n {{ year | odxDateLabel: { year: 'numeric' } }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n</table>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "directive", type: i2.DisabledController, selector: "[disabled]", inputs: ["disabled"] }, { kind: "directive", type: CalendarCellDirective, selector: "[odxCalendarCell]", inputs: ["odxCalendarCell", "odxCalendarCellCalendarView", "odxCalendarCellActiveDate", "odxCalendarCellSelectedDate", "odxCalendarCellSelectedDateRange", "odxCalendarCellPreviewDate"] }, { kind: "pipe", type: DateLabelPipe, name: "odxDateLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
942
941
  };
943
942
  CalendarYearsComponent = __decorate([
944
943
  CSSComponent('calendar-years')
945
944
  ], CalendarYearsComponent);
946
945
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CalendarYearsComponent, decorators: [{
947
946
  type: Component,
948
- args: [{ selector: 'odx-calendar-years', standalone: true, imports: [CoreModule, CalendarCellDirective, CalendarHeaderComponent, DateLabelPipe], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [CalendarYearsService], template: "<table class=\"odx-calendar__table\" role=\"grid\" aria-describedby=\"odx-calendar\" *ngrxLet=\"calendar.activeDate$ as activeDate\">\n <thead aria-hidden=\"true\">\n <th></th>\n </thead>\n\n <tbody\n class=\"odx-calendar__body\"\n (keydown.ArrowLeft)=\"previousYear($event)\"\n (keydown.ArrowRight)=\"nextYear($event)\"\n (keydown.ArrowUp)=\"previousRow($event)\"\n (keydown.ArrowDown)=\"nextRow($event)\"\n >\n @for (yearRow of calendarYears.years$ | async; track $index) {\n <tr class=\"odx-calendar__year-row\">\n @for (year of yearRow; track $index) {\n <td role=\"gridcell\">\n <button\n [disabled]=\"isDateDisabled(year)\"\n [odxCalendarCell]=\"year\"\n [odxCalendarCellActiveDate]=\"activeDate\"\n [odxCalendarCellCalendarView]=\"currentView\"\n [odxCalendarCellSelectedDate]=\"selectedDate\"\n [odxCalendarCellSelectedDateRange]=\"selectedDateRange\"\n (click)=\"selectDate(year)\"\n >\n {{ year | odxDateLabel: { year: 'numeric' } }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n</table>\n" }]
947
+ args: [{ selector: 'odx-calendar-years', standalone: true, imports: [CoreModule, CalendarCellDirective, CalendarHeaderComponent, DateLabelPipe], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [CalendarYearsService], template: "<table class=\"odx-calendar__table\" role=\"grid\" aria-describedby=\"odx-calendar\">\n <thead aria-hidden=\"true\">\n <th></th>\n </thead>\n\n <tbody\n class=\"odx-calendar__body\"\n (keydown.ArrowLeft)=\"previousYear($event)\"\n (keydown.ArrowRight)=\"nextYear($event)\"\n (keydown.ArrowUp)=\"previousRow($event)\"\n (keydown.ArrowDown)=\"nextRow($event)\"\n >\n @for (yearRow of calendarYears.years$ | async; track $index) {\n <tr class=\"odx-calendar__year-row\">\n @for (year of yearRow; track $index) {\n <td role=\"gridcell\">\n <button\n [disabled]=\"isDateDisabled(year)\"\n [odxCalendarCell]=\"year\"\n [odxCalendarCellActiveDate]=\"calendar.activeDate$ | async\"\n [odxCalendarCellCalendarView]=\"currentView\"\n [odxCalendarCellSelectedDate]=\"selectedDate\"\n [odxCalendarCellSelectedDateRange]=\"selectedDateRange\"\n (click)=\"selectDate(year)\"\n >\n {{ year | odxDateLabel: { year: 'numeric' } }}\n </button>\n </td>\n }\n </tr>\n }\n </tbody>\n</table>\n" }]
949
948
  }] });
950
949
 
951
950
  /**
@@ -1027,6 +1026,13 @@ let CalendarComponent = class CalendarComponent {
1027
1026
  this.calendar = inject(CalendarService);
1028
1027
  this.daterange = inject(DaterangeService);
1029
1028
  this.CalendarView = CalendarView;
1029
+ this.vm$ = combineLatest({
1030
+ activeDate: this.calendar.activeDate$,
1031
+ calendarView: this.calendar.calendarView$,
1032
+ selectedDate: this.calendar.selectedDate$,
1033
+ selectedDateRange: this.daterange.dateRangeState$,
1034
+ previewDate: this.calendar.previewDate$,
1035
+ });
1030
1036
  this.element = injectElement();
1031
1037
  /**
1032
1038
  * Represents the selected date in the calendar component.
@@ -1086,7 +1092,7 @@ let CalendarComponent = class CalendarComponent {
1086
1092
  }
1087
1093
  }
1088
1094
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1089
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CalendarComponent, isStandalone: true, selector: "odx-calendar", inputs: { selectedDate: "selectedDate", selectedDateRange: "selectedDateRange", minDate: "minDate", maxDate: "maxDate", filterFn: "filterFn" }, outputs: { selectedDateChange: "selectedDateChange", selectedDateRangeChange: "selectedDateRangeChange" }, providers: [CalendarService, EventManager, DaterangeService], usesOnChanges: true, ngImport: i0, template: "<ng-template\n [ngrxLet]=\"{\n activeDate: calendar.activeDate$,\n calendarView: calendar.calendarView$,\n selectedDate: calendar.selectedDate$,\n selectedDateRange: daterange.dateRangeState$,\n previewDate: calendar.previewDate$,\n }\"\n let-vm\n>\n @switch (vm.calendarView) {\n @case (CalendarView.Year) {\n <odx-calendar-year\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @case (CalendarView.Years) {\n <odx-calendar-years\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @default {\n <odx-calendar-month\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [previewDate]=\"vm.previewDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n }\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i3.LetDirective, selector: "[ngrxLet]", inputs: ["ngrxLet", "ngrxLetSuspenseTpl"] }, { kind: "ngmodule", type: A11yModule }, { kind: "component", type: CalendarMonthComponent, selector: "odx-calendar-month" }, { kind: "component", type: CalendarYearComponent, selector: "odx-calendar-year" }, { kind: "component", type: CalendarYearsComponent, selector: "odx-calendar-years" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1095
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CalendarComponent, isStandalone: true, selector: "odx-calendar", inputs: { selectedDate: "selectedDate", selectedDateRange: "selectedDateRange", minDate: "minDate", maxDate: "maxDate", filterFn: "filterFn" }, outputs: { selectedDateChange: "selectedDateChange", selectedDateRangeChange: "selectedDateRangeChange" }, providers: [CalendarService, EventManager, DaterangeService], usesOnChanges: true, ngImport: i0, template: "@if (vm$ | async; as vm) {\n @switch (vm.calendarView) {\n @case (CalendarView.Year) {\n <odx-calendar-year\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @case (CalendarView.Years) {\n <odx-calendar-years\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @default {\n <odx-calendar-month\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [previewDate]=\"vm.previewDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n }\n}\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: A11yModule }, { kind: "component", type: CalendarMonthComponent, selector: "odx-calendar-month" }, { kind: "component", type: CalendarYearComponent, selector: "odx-calendar-year" }, { kind: "component", type: CalendarYearsComponent, selector: "odx-calendar-years" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1090
1096
  };
1091
1097
  CalendarComponent = __decorate([
1092
1098
  CSSComponent('calendar'),
@@ -1094,7 +1100,7 @@ CalendarComponent = __decorate([
1094
1100
  ], CalendarComponent);
1095
1101
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CalendarComponent, decorators: [{
1096
1102
  type: Component,
1097
- args: [{ selector: 'odx-calendar', standalone: true, imports: [CoreModule, A11yModule, CalendarMonthComponent, CalendarYearComponent, CalendarYearsComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [CalendarService, EventManager, DaterangeService], template: "<ng-template\n [ngrxLet]=\"{\n activeDate: calendar.activeDate$,\n calendarView: calendar.calendarView$,\n selectedDate: calendar.selectedDate$,\n selectedDateRange: daterange.dateRangeState$,\n previewDate: calendar.previewDate$,\n }\"\n let-vm\n>\n @switch (vm.calendarView) {\n @case (CalendarView.Year) {\n <odx-calendar-year\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @case (CalendarView.Years) {\n <odx-calendar-years\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @default {\n <odx-calendar-month\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [previewDate]=\"vm.previewDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n }\n</ng-template>\n" }]
1103
+ args: [{ selector: 'odx-calendar', standalone: true, imports: [CoreModule, A11yModule, CalendarMonthComponent, CalendarYearComponent, CalendarYearsComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [CalendarService, EventManager, DaterangeService], template: "@if (vm$ | async; as vm) {\n @switch (vm.calendarView) {\n @case (CalendarView.Year) {\n <odx-calendar-year\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @case (CalendarView.Years) {\n <odx-calendar-years\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n @default {\n <odx-calendar-month\n [activeDate]=\"vm.activeDate\"\n [selectedDate]=\"vm.selectedDate\"\n [selectedDateRange]=\"vm.selectedDateRange\"\n [previewDate]=\"vm.previewDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [filterFn]=\"filterFn\"\n />\n }\n }\n}\n" }]
1098
1104
  }], ctorParameters: () => [], propDecorators: { selectedDate: [{
1099
1105
  type: Input
1100
1106
  }], selectedDateRange: [{