@dereekb/dbx-form 10.2.0 → 11.0.1
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/calendar/lib/calendar.schedule.selection.cell.component.d.ts +0 -1
- package/calendar/lib/calendar.schedule.selection.component.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.days.component.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.dialog.button.component.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.popover.button.component.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.range.component.d.ts +2 -3
- package/calendar/lib/calendar.schedule.selection.store.provide.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.toggle.button.component.d.ts +0 -1
- package/calendar/lib/field/schedule/calendar.schedule.field.component.d.ts +2 -3
- package/esm2022/calendar/lib/calendar.module.mjs +6 -6
- package/esm2022/calendar/lib/calendar.schedule.selection.cell.component.mjs +10 -13
- package/esm2022/calendar/lib/calendar.schedule.selection.component.mjs +49 -52
- package/esm2022/calendar/lib/calendar.schedule.selection.days.component.mjs +23 -27
- package/esm2022/calendar/lib/calendar.schedule.selection.days.form.component.mjs +5 -8
- package/esm2022/calendar/lib/calendar.schedule.selection.dialog.button.component.mjs +12 -13
- package/esm2022/calendar/lib/calendar.schedule.selection.dialog.component.mjs +4 -4
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.button.component.mjs +22 -24
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.component.mjs +4 -4
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.content.component.mjs +4 -4
- package/esm2022/calendar/lib/calendar.schedule.selection.range.component.mjs +81 -86
- package/esm2022/calendar/lib/calendar.schedule.selection.store.mjs +123 -123
- package/esm2022/calendar/lib/calendar.schedule.selection.store.provide.mjs +8 -13
- package/esm2022/calendar/lib/calendar.schedule.selection.toggle.button.component.mjs +39 -42
- package/esm2022/calendar/lib/field/schedule/calendar.schedule.field.component.mjs +24 -31
- package/esm2022/calendar/lib/field/schedule/calendar.schedule.module.mjs +6 -6
- package/esm2022/lib/form/action/form.action.directive.mjs +29 -20
- package/esm2022/lib/form/action/form.action.module.mjs +4 -4
- package/esm2022/lib/form/action/transition/form.action.transition.module.mjs +4 -4
- package/esm2022/lib/form/action/transition/form.action.transition.safety.directive.mjs +7 -18
- package/esm2022/lib/form/form.module.mjs +4 -4
- package/esm2022/lib/form/io/form.changes.directive.mjs +7 -13
- package/esm2022/lib/form/io/form.input.directive.mjs +7 -13
- package/esm2022/lib/form/io/form.io.module.mjs +4 -4
- package/esm2022/lib/form/io/form.loading.directive.mjs +9 -15
- package/esm2022/lib/form.module.mjs +4 -4
- package/esm2022/lib/formly/field/checklist/checklist.field.mjs +4 -4
- package/esm2022/lib/formly/field/checklist/checklist.item.field.component.mjs +23 -31
- package/esm2022/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +5 -4
- package/esm2022/lib/formly/field/checklist/checklist.item.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/component/component.field.component.mjs +4 -4
- package/esm2022/lib/formly/field/component/component.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/form.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/selection/list/list.field.component.mjs +33 -36
- package/esm2022/lib/formly/field/selection/list/list.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +3 -3
- package/esm2022/lib/formly/field/selection/pickable/pickable.field.directive.mjs +72 -74
- package/esm2022/lib/formly/field/selection/pickable/pickable.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +21 -24
- package/esm2022/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +6 -9
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +27 -34
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.directive.mjs +32 -30
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +8 -11
- package/esm2022/lib/formly/field/selection/selection.module.mjs +4 -4
- package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.component.mjs +143 -145
- package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/texteditor/texteditor.field.component.mjs +19 -24
- package/esm2022/lib/formly/field/texteditor/texteditor.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/value/array/array.field.component.mjs +22 -25
- package/esm2022/lib/formly/field/value/array/array.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/value/boolean/boolean.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/date/date.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/value/date/datetime.field.component.mjs +233 -236
- package/esm2022/lib/formly/field/value/date/datetime.field.service.mjs +7 -15
- package/esm2022/lib/formly/field/value/date/fixeddaterange.field.component.mjs +97 -101
- package/esm2022/lib/formly/field/value/number/number.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/phone/phone.field.component.mjs +15 -18
- package/esm2022/lib/formly/field/value/phone/phone.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/value/text/text.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/value.module.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/expand.wrapper.component.mjs +39 -0
- package/esm2022/lib/formly/field/wrapper/expand.wrapper.delegate.mjs +55 -0
- package/esm2022/lib/formly/field/wrapper/flex.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/form.wrapper.module.mjs +10 -10
- package/esm2022/lib/formly/field/wrapper/index.mjs +3 -3
- package/esm2022/lib/formly/field/wrapper/info.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/section.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/style.wrapper.component.mjs +8 -11
- package/esm2022/lib/formly/field/wrapper/subsection.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/toggle.wrapper.component.mjs +15 -18
- package/esm2022/lib/formly/field/wrapper/working.wrapper.component.mjs +6 -9
- package/esm2022/lib/formly/field/wrapper/wrapper.key.mjs +2 -3
- package/esm2022/lib/formly/field/wrapper/wrapper.mjs +3 -3
- package/esm2022/lib/formly/form/form.form.module.mjs +4 -4
- package/esm2022/lib/formly/form/search.form.component.mjs +6 -9
- package/esm2022/lib/formly/formly.context.directive.mjs +5 -8
- package/esm2022/lib/formly/formly.context.mjs +10 -12
- package/esm2022/lib/formly/formly.directive.mjs +16 -25
- package/esm2022/lib/formly/formly.form.component.mjs +73 -77
- package/esm2022/lib/formly/formly.module.mjs +6 -6
- package/esm2022/lib/layout/form.layout.module.mjs +4 -4
- package/esm2022/lib/layout/form.spacer.component.mjs +4 -4
- package/esm2022/mapbox/lib/field/latlng/latlng.field.component.mjs +48 -57
- package/esm2022/mapbox/lib/field/latlng/latlng.field.marker.component.mjs +17 -20
- package/esm2022/mapbox/lib/field/latlng/latlng.module.mjs +6 -6
- package/esm2022/mapbox/lib/field/zoom/zoom.field.component.mjs +26 -32
- package/esm2022/mapbox/lib/field/zoom/zoom.module.mjs +6 -6
- package/esm2022/mapbox/lib/mapbox.module.mjs +4 -4
- package/fesm2022/dereekb-dbx-form-calendar.mjs +383 -407
- package/fesm2022/dereekb-dbx-form-calendar.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-form-mapbox.mjs +96 -111
- package/fesm2022/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-form.mjs +1071 -1163
- package/fesm2022/dereekb-dbx-form.mjs.map +1 -1
- package/lib/form/action/form.action.directive.d.ts +3 -3
- package/lib/form/action/transition/form.action.transition.safety.directive.d.ts +3 -7
- package/lib/form/io/form.changes.directive.d.ts +2 -3
- package/lib/form/io/form.input.directive.d.ts +3 -4
- package/lib/form/io/form.loading.directive.d.ts +3 -4
- package/lib/formly/field/checklist/checklist.field.d.ts +0 -1
- package/lib/formly/field/checklist/checklist.item.field.component.d.ts +4 -6
- package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +0 -1
- package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +1 -2
- package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +0 -1
- package/lib/formly/field/selection/sourceselect/sourceselect.field.component.d.ts +2 -2
- package/lib/formly/field/texteditor/texteditor.field.component.d.ts +2 -4
- package/lib/formly/field/value/date/datetime.field.component.d.ts +1 -3
- package/lib/formly/field/value/date/datetime.field.service.d.ts +1 -4
- package/lib/formly/field/value/date/fixeddaterange.field.component.d.ts +2 -6
- package/lib/formly/field/wrapper/{expandable.wrapper.component.d.ts → expand.wrapper.component.d.ts} +4 -4
- package/lib/formly/field/wrapper/{expandable.wrapper.delegate.d.ts → expand.wrapper.delegate.d.ts} +7 -7
- package/lib/formly/field/wrapper/form.wrapper.module.d.ts +1 -1
- package/lib/formly/field/wrapper/index.d.ts +2 -2
- package/lib/formly/field/wrapper/toggle.wrapper.component.d.ts +4 -4
- package/lib/formly/field/wrapper/wrapper.d.ts +1 -1
- package/lib/formly/field/wrapper/wrapper.key.d.ts +1 -1
- package/lib/formly/formly.directive.d.ts +0 -1
- package/lib/formly/formly.form.component.d.ts +2 -3
- package/mapbox/esm2022/lib/field/latlng/latlng.field.component.mjs +48 -57
- package/mapbox/esm2022/lib/field/latlng/latlng.field.marker.component.mjs +17 -20
- package/mapbox/esm2022/lib/field/latlng/latlng.module.mjs +6 -6
- package/mapbox/esm2022/lib/field/zoom/zoom.field.component.mjs +26 -32
- package/mapbox/esm2022/lib/field/zoom/zoom.module.mjs +6 -6
- package/mapbox/esm2022/lib/mapbox.module.mjs +4 -4
- package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs +96 -111
- package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/mapbox/lib/field/latlng/latlng.field.component.d.ts +4 -6
- package/mapbox/lib/field/latlng/latlng.field.marker.component.d.ts +1 -2
- package/mapbox/lib/field/zoom/zoom.field.component.d.ts +2 -3
- package/mapbox/package.json +1 -1
- package/package.json +1 -1
- package/esm2022/lib/formly/field/wrapper/expandable.wrapper.component.mjs +0 -39
- package/esm2022/lib/formly/field/wrapper/expandable.wrapper.delegate.mjs +0 -58
|
@@ -7,7 +7,6 @@ export declare class DbxScheduleSelectionCalendarCellComponent {
|
|
|
7
7
|
content: CalendarScheduleSelectionCellContent;
|
|
8
8
|
get icon(): string | undefined;
|
|
9
9
|
get text(): string | undefined;
|
|
10
|
-
constructor(dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore);
|
|
11
10
|
set day(day: CalendarMonthViewDay<CalendarScheduleSelectionMetadata>);
|
|
12
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxScheduleSelectionCalendarCellComponent, never>;
|
|
13
12
|
static ɵcmp: i0.ɵɵComponentDeclaration<DbxScheduleSelectionCalendarCellComponent, "dbx-schedule-selection-calendar-cell", never, { "day": { "alias": "day"; "required": false; }; }, {}, never, never, false, never>;
|
|
@@ -50,13 +50,12 @@ export declare class DbxScheduleSelectionCalendarComponent<T> implements OnInit,
|
|
|
50
50
|
readonly showButtons$: Observable<boolean>;
|
|
51
51
|
readonly showClearSelectionButton$: Observable<boolean>;
|
|
52
52
|
readonly datePopoverButtonInjectionConfig$: Observable<Maybe<DbxInjectionComponentConfig<any>>>;
|
|
53
|
-
clickEvent: EventEmitter<DbxCalendarEvent<T>>;
|
|
53
|
+
readonly clickEvent: EventEmitter<DbxCalendarEvent<T>>;
|
|
54
54
|
readonly state$: Observable<CalendarScheduleSelectionState>;
|
|
55
55
|
readonly beforeMonthViewRender$: Observable<DbxScheduleSelectionCalendarBeforeMonthViewRenderFunction>;
|
|
56
56
|
readonly refresh$: Subject<undefined>;
|
|
57
57
|
readonly events$: Observable<CalendarEvent<any>[]>;
|
|
58
58
|
readonly viewDate$: Observable<Date>;
|
|
59
|
-
constructor(calendarStore: DbxCalendarStore<T>, dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore);
|
|
60
59
|
ngOnInit(): void;
|
|
61
60
|
ngOnDestroy(): void;
|
|
62
61
|
get config(): Maybe<DbxScheduleSelectionCalendarComponentConfig>;
|
|
@@ -5,11 +5,10 @@ import { DbxScheduleSelectionCalendarDateDaysFormValue } from './calendar.schedu
|
|
|
5
5
|
import { DbxCalendarScheduleSelectionStore } from './calendar.schedule.selection.store';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export declare class DbxScheduleSelectionCalendarDateDaysComponent {
|
|
8
|
-
readonly dbxCalendarStore: DbxCalendarStore
|
|
8
|
+
readonly dbxCalendarStore: DbxCalendarStore<any>;
|
|
9
9
|
readonly dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore;
|
|
10
10
|
readonly template$: Observable<DbxScheduleSelectionCalendarDateDaysFormValue>;
|
|
11
11
|
readonly isFormModified: IsModifiedFunction<DbxScheduleSelectionCalendarDateDaysFormValue>;
|
|
12
|
-
constructor(dbxCalendarStore: DbxCalendarStore, dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore);
|
|
13
12
|
readonly updateScheduleDays: WorkUsingObservable<DbxScheduleSelectionCalendarDateDaysFormValue>;
|
|
14
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxScheduleSelectionCalendarDateDaysComponent, never>;
|
|
15
14
|
static ɵcmp: i0.ɵɵComponentDeclaration<DbxScheduleSelectionCalendarDateDaysComponent, "dbx-schedule-selection-calendar-date-days", never, {}, {}, never, never, false, never>;
|
|
@@ -4,12 +4,11 @@ import { DbxScheduleSelectionCalendarDatePopupContentConfig } from './calendar.s
|
|
|
4
4
|
import { Maybe } from '@dereekb/util';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class DbxScheduleSelectionCalendarDateDialogButtonComponent {
|
|
7
|
-
readonly matDialog: MatDialog;
|
|
8
7
|
readonly injector: Injector;
|
|
8
|
+
readonly matDialog: MatDialog;
|
|
9
9
|
buttonText: string;
|
|
10
10
|
disabled?: Maybe<boolean>;
|
|
11
11
|
contentConfig?: Maybe<DbxScheduleSelectionCalendarDatePopupContentConfig>;
|
|
12
|
-
constructor(matDialog: MatDialog, injector: Injector);
|
|
13
12
|
clickCustomize(): void;
|
|
14
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxScheduleSelectionCalendarDateDialogButtonComponent, never>;
|
|
15
14
|
static ɵcmp: i0.ɵɵComponentDeclaration<DbxScheduleSelectionCalendarDateDialogButtonComponent, "dbx-schedule-selection-calendar-date-dialog-button", never, { "buttonText": { "alias": "buttonText"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "contentConfig": { "alias": "contentConfig"; "required": false; }; }, {}, never, never, false, never>;
|
|
@@ -3,13 +3,12 @@ import { DbxPopoverService } from '@dereekb/dbx-web';
|
|
|
3
3
|
import { DbxCalendarScheduleSelectionStore } from './calendar.schedule.selection.store';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class DbxScheduleSelectionCalendarDatePopoverButtonComponent {
|
|
6
|
+
readonly injector: Injector;
|
|
6
7
|
readonly popoverService: DbxPopoverService;
|
|
7
8
|
readonly dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore;
|
|
8
|
-
readonly injector: Injector;
|
|
9
9
|
buttonPopoverOrigin: ElementRef;
|
|
10
10
|
readonly disabled$: import("rxjs").Observable<import("dist/packages/util/src").Maybe<boolean>>;
|
|
11
11
|
readonly buttonText$: import("rxjs").Observable<string>;
|
|
12
|
-
constructor(popoverService: DbxPopoverService, dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore, injector: Injector);
|
|
13
12
|
openPopover(): void;
|
|
14
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxScheduleSelectionCalendarDatePopoverButtonComponent, never>;
|
|
15
14
|
static ɵcmp: i0.ɵɵComponentDeclaration<DbxScheduleSelectionCalendarDatePopoverButtonComponent, "dbx-schedule-selection-calendar-date-popover-button", never, {}, {}, never, never, false, never>;
|
|
@@ -9,9 +9,9 @@ import { ErrorStateMatcher } from '@angular/material/core';
|
|
|
9
9
|
import { DateFilterFn, MatDateRangePicker } from '@angular/material/datepicker';
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
11
|
export declare class DbxScheduleSelectionCalendarDateRangeComponent implements OnInit, OnDestroy {
|
|
12
|
-
readonly dbxCalendarStore: DbxCalendarStore
|
|
12
|
+
readonly dbxCalendarStore: DbxCalendarStore<any>;
|
|
13
13
|
readonly dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore;
|
|
14
|
-
readonly matFormFieldDefaultOptions: MatFormFieldDefaultOptions;
|
|
14
|
+
readonly matFormFieldDefaultOptions: MatFormFieldDefaultOptions | null;
|
|
15
15
|
private _required;
|
|
16
16
|
readonly required$: Observable<boolean>;
|
|
17
17
|
readonly timezone$: Observable<string>;
|
|
@@ -38,7 +38,6 @@ export declare class DbxScheduleSelectionCalendarDateRangeComponent implements O
|
|
|
38
38
|
readonly pickerOpened$: Observable<boolean>;
|
|
39
39
|
readonly defaultDatePickerFilter: DateFilterFn<Date>;
|
|
40
40
|
readonly datePickerFilter$: Observable<DateFilterFn<Date>>;
|
|
41
|
-
constructor(dbxCalendarStore: DbxCalendarStore, dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore, matFormFieldDefaultOptions: MatFormFieldDefaultOptions);
|
|
42
41
|
ngOnInit(): void;
|
|
43
42
|
ngOnDestroy(): void;
|
|
44
43
|
get required(): boolean;
|
|
@@ -6,8 +6,7 @@ import * as i0 from "@angular/core";
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class DbxCalendarScheduleSelectionStoreProviderBlock {
|
|
8
8
|
readonly dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore;
|
|
9
|
-
|
|
10
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<DbxCalendarScheduleSelectionStoreProviderBlock, [{ skipSelf: true; }]>;
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxCalendarScheduleSelectionStoreProviderBlock, never>;
|
|
11
10
|
static ɵprov: i0.ɵɵInjectableDeclaration<DbxCalendarScheduleSelectionStoreProviderBlock>;
|
|
12
11
|
}
|
|
13
12
|
export declare class DbxCalendarScheduleSelectionStoreInjectionBlockDirective {
|
|
@@ -14,7 +14,6 @@ export declare class DbxScheduleSelectionCalendarSelectionToggleButtonComponent
|
|
|
14
14
|
private _disabled;
|
|
15
15
|
readonly disableButton$: import("rxjs").Observable<boolean>;
|
|
16
16
|
readonly buttonDisplay$: import("rxjs").Observable<DbxButtonDisplayContent>;
|
|
17
|
-
constructor(popoverService: DbxPopoverService, dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore, injector: Injector);
|
|
18
17
|
ngOnDestroy(): void;
|
|
19
18
|
toggleSelection(): void;
|
|
20
19
|
set disabled(disabled: Maybe<boolean>);
|
|
@@ -63,7 +63,7 @@ export interface DbxFormCalendarDateCellScheduleRangeFieldProps extends Pick<For
|
|
|
63
63
|
customDetailsConfig?: Maybe<DbxInjectionComponentConfig>;
|
|
64
64
|
}
|
|
65
65
|
export declare class DbxFormCalendarDateScheduleRangeFieldComponent<T extends DbxFormCalendarDateCellScheduleRangeFieldProps = DbxFormCalendarDateCellScheduleRangeFieldProps> extends FieldType<FieldTypeConfig<T>> implements OnInit, OnDestroy {
|
|
66
|
-
readonly compact: CompactContextStore;
|
|
66
|
+
readonly compact: CompactContextStore | null;
|
|
67
67
|
readonly dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore;
|
|
68
68
|
readonly ngZone: NgZone;
|
|
69
69
|
private _syncSub;
|
|
@@ -77,7 +77,6 @@ export declare class DbxFormCalendarDateScheduleRangeFieldComponent<T extends Db
|
|
|
77
77
|
readonly formControl$: import("rxjs").Observable<AbstractControl<any, any>>;
|
|
78
78
|
readonly value$: import("rxjs").Observable<any>;
|
|
79
79
|
readonly disableCustomize$: import("rxjs").Observable<boolean>;
|
|
80
|
-
constructor(compact: CompactContextStore, dbxCalendarScheduleSelectionStore: DbxCalendarScheduleSelectionStore, ngZone: NgZone);
|
|
81
80
|
get formGroupName(): string;
|
|
82
81
|
get formGroup(): FormGroup;
|
|
83
82
|
get label(): Maybe<string>;
|
|
@@ -98,6 +97,6 @@ export declare class DbxFormCalendarDateScheduleRangeFieldComponent<T extends Db
|
|
|
98
97
|
get cellContentFactory(): import("@dereekb/dbx-form/calendar").CalendarScheduleSelectionCellContentFactory | undefined;
|
|
99
98
|
ngOnInit(): void;
|
|
100
99
|
ngOnDestroy(): void;
|
|
101
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFormCalendarDateScheduleRangeFieldComponent<any>,
|
|
100
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFormCalendarDateScheduleRangeFieldComponent<any>, never>;
|
|
102
101
|
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFormCalendarDateScheduleRangeFieldComponent<any>, "ng-component", never, {}, {}, never, never, false, never>;
|
|
103
102
|
}
|
|
@@ -41,8 +41,8 @@ const declarations = [
|
|
|
41
41
|
DbxScheduleSelectionCalendarSelectionToggleButtonComponent
|
|
42
42
|
];
|
|
43
43
|
export class DbxFormCalendarModule {
|
|
44
|
-
static
|
|
45
|
-
static
|
|
44
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
45
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarModule, declarations: [
|
|
46
46
|
//
|
|
47
47
|
DbxScheduleSelectionCalendarComponent,
|
|
48
48
|
DbxScheduleSelectionCalendarDateDaysComponent,
|
|
@@ -92,8 +92,8 @@ export class DbxFormCalendarModule {
|
|
|
92
92
|
DbxCalendarScheduleSelectionStoreInjectionBlockDirective,
|
|
93
93
|
DbxScheduleSelectionCalendarDateDialogComponent,
|
|
94
94
|
DbxScheduleSelectionCalendarDateDialogButtonComponent,
|
|
95
|
-
DbxScheduleSelectionCalendarSelectionToggleButtonComponent] });
|
|
96
|
-
static
|
|
95
|
+
DbxScheduleSelectionCalendarSelectionToggleButtonComponent] });
|
|
96
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarModule, imports: [
|
|
97
97
|
//
|
|
98
98
|
DbxInjectionComponentModule,
|
|
99
99
|
DbxContentLayoutModule,
|
|
@@ -117,7 +117,7 @@ export class DbxFormCalendarModule {
|
|
|
117
117
|
CalendarDayModule,
|
|
118
118
|
FlexLayoutModule,
|
|
119
119
|
CalendarWeekModule,
|
|
120
|
-
DbxDatePipeModule] });
|
|
120
|
+
DbxDatePipeModule] });
|
|
121
121
|
}
|
|
122
122
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormCalendarModule, decorators: [{
|
|
123
123
|
type: NgModule,
|
|
@@ -152,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
152
152
|
exports: declarations
|
|
153
153
|
}]
|
|
154
154
|
}] });
|
|
155
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vY2FsZW5kYXIvc3JjL2xpYi9jYWxlbmRhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLHNCQUFzQixFQUFFLDBCQUEwQixFQUFFLDJCQUEyQixFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BLLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEcsT0FBTyxFQUFFLHNEQUFzRCxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDaEksT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDN0csT0FBTyxFQUFFLGdEQUFnRCxFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbkgsT0FBTyxFQUFFLHVEQUF1RCxFQUFFLE1BQU0seURBQXlELENBQUM7QUFDbEksT0FBTyxFQUFFLDhDQUE4QyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDL0csT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxpREFBaUQsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3RILE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkUsT0FBTyxFQUFFLHlDQUF5QyxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDekcsT0FBTyxFQUFFLHdEQUF3RCxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDdkgsT0FBTyxFQUFFLCtDQUErQyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDakgsT0FBTyxFQUFFLHFEQUFxRCxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDOUgsT0FBTyxFQUFFLDBEQUEwRCxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDbkksT0FBTyxFQUFFLGlCQUFpQixFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRW5GLE1BQU0sWUFBWSxHQUFHO0lBQ25CLEVBQUU7SUFDRixxQ0FBcUM7SUFDckMsNkNBQTZDO0lBQzdDLGlEQUFpRDtJQUNqRCw4Q0FBOEM7SUFDOUMsc0RBQXNEO0lBQ3RELHlDQUF5QztJQUN6QyxnREFBZ0Q7SUFDaEQsdURBQXVEO0lBQ3ZELHdEQUF3RDtJQUN4RCwrQ0FBK0M7SUFDL0MscURBQXFEO0lBQ3JELDBEQUEwRDtDQUMzRCxDQUFDO0FBZ0NGLE1BQU0sT0FBTyxxQkFBcUI7d0dBQXJCLHFCQUFxQjt5R0FBckIscUJBQXFCO1lBN0NoQyxFQUFFO1lBQ0YscUNBQXFDO1lBQ3JDLDZDQUE2QztZQUM3QyxpREFBaUQ7WUFDakQsOENBQThDO1lBQzlDLHNEQUFzRDtZQUN0RCx5Q0FBeUM7WUFDekMsZ0RBQWdEO1lBQ2hELHVEQUF1RDtZQUN2RCx3REFBd0Q7WUFDeEQsK0NBQStDO1lBQy9DLHFEQUFxRDtZQUNyRCwwREFBMEQ7WUFLeEQsRUFBRTtZQUNGLDJCQUEyQjtZQUMzQixzQkFBc0I7WUFDdEIsYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsZUFBZTtZQUNmLGlCQUFpQjtZQUNqQixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7WUFDZixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQiwwQkFBMEI7WUFDMUIsMkJBQTJCO1lBQzNCLGNBQWM7WUFDZCxpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLGtCQUFrQjtZQUNsQixpQkFBaUI7WUF4Q25CLEVBQUU7WUFDRixxQ0FBcUM7WUFDckMsNkNBQTZDO1lBQzdDLGlEQUFpRDtZQUNqRCw4Q0FBOEM7WUFDOUMsc0RBQXNEO1lBQ3RELHlDQUF5QztZQUN6QyxnREFBZ0Q7WUFDaEQsdURBQXVEO1lBQ3ZELHdEQUF3RDtZQUN4RCwrQ0FBK0M7WUFDL0MscURBQXFEO1lBQ3JELDBEQUEwRDt5R0FpQy9DLHFCQUFxQjtZQTVCOUIsRUFBRTtZQUNGLDJCQUEyQjtZQUMzQixzQkFBc0I7WUFDdEIsYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsZUFBZTtZQUNmLGlCQUFpQjtZQUNqQixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7WUFDZixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQiwwQkFBMEI7WUFDMUIsMkJBQTJCO1lBQzNCLGNBQWM7WUFDZCxpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLGtCQUFrQjtZQUNsQixpQkFBaUI7OzRGQUtSLHFCQUFxQjtrQkE5QmpDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLEVBQUU7d0JBQ0YsMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixxQkFBcUI7d0JBQ3JCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQiwwQkFBMEI7d0JBQzFCLDJCQUEyQjt3QkFDM0IsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVk7b0JBQ1osT0FBTyxFQUFFLFlBQVk7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbGVuZGFyRGF5TW9kdWxlLCBDYWxlbmRhck1vZHVsZSwgQ2FsZW5kYXJXZWVrTW9kdWxlIH0gZnJvbSAnYW5ndWxhci1jYWxlbmRhcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGJ4QWN0aW9uTW9kdWxlLCBEYnhCdXR0b25Nb2R1bGUsIERieENvbnRlbnRMYXlvdXRNb2R1bGUsIERieERpYWxvZ0ludGVyYWN0aW9uTW9kdWxlLCBEYnhQb3BvdmVySW50ZXJhY3Rpb25Nb2R1bGUsIERieFRleHRNb2R1bGUgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAbmdicmFja2V0L25neC1sYXlvdXQnO1xuaW1wb3J0IHsgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckNvbXBvbmVudCB9IGZyb20gJy4vY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyRGF0ZVBvcG92ZXJCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NhbGVuZGFyLnNjaGVkdWxlLnNlbGVjdGlvbi5wb3BvdmVyLmJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVEYXlzQ29tcG9uZW50IH0gZnJvbSAnLi9jYWxlbmRhci5zY2hlZHVsZS5zZWxlY3Rpb24uZGF5cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jYWxlbmRhci5zY2hlZHVsZS5zZWxlY3Rpb24ucG9wb3Zlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVQb3BvdmVyQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4vY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLnBvcG92ZXIuY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVSYW5nZUNvbXBvbmVudCB9IGZyb20gJy4vY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLnJhbmdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhDYWxlbmRhck1vZHVsZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWIvY2FsZW5kYXInO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJEYXRlRGF5c0Zvcm1Db21wb25lbnQgfSBmcm9tICcuL2NhbGVuZGFyLnNjaGVkdWxlLnNlbGVjdGlvbi5kYXlzLmZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IERieEZvcm1seU1vZHVsZSwgRGJ4Rm9ybU1vZHVsZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1mb3JtJztcbmltcG9ydCB7IERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJDZWxsQ29tcG9uZW50IH0gZnJvbSAnLi9jYWxlbmRhci5zY2hlZHVsZS5zZWxlY3Rpb24uY2VsbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlSW5qZWN0aW9uQmxvY2tEaXJlY3RpdmUgfSBmcm9tICcuL2NhbGVuZGFyLnNjaGVkdWxlLnNlbGVjdGlvbi5zdG9yZS5wcm92aWRlJztcbmltcG9ydCB7IERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJEYXRlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jYWxlbmRhci5zY2hlZHVsZS5zZWxlY3Rpb24uZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyRGF0ZURpYWxvZ0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmRpYWxvZy5idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJTZWxlY3Rpb25Ub2dnbGVCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NhbGVuZGFyLnNjaGVkdWxlLnNlbGVjdGlvbi50b2dnbGUuYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhEYXRlUGlwZU1vZHVsZSwgRGJ4SW5qZWN0aW9uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuXG5jb25zdCBkZWNsYXJhdGlvbnMgPSBbXG4gIC8vXG4gIERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJDb21wb25lbnQsXG4gIERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJEYXRlRGF5c0NvbXBvbmVudCxcbiAgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVEYXlzRm9ybUNvbXBvbmVudCxcbiAgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVSYW5nZUNvbXBvbmVudCxcbiAgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVQb3BvdmVyQnV0dG9uQ29tcG9uZW50LFxuICBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyQ2VsbENvbXBvbmVudCxcbiAgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVQb3BvdmVyQ29tcG9uZW50LFxuICBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyRGF0ZVBvcG92ZXJDb250ZW50Q29tcG9uZW50LFxuICBEYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmVJbmplY3Rpb25CbG9ja0RpcmVjdGl2ZSxcbiAgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVEaWFsb2dDb21wb25lbnQsXG4gIERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJEYXRlRGlhbG9nQnV0dG9uQ29tcG9uZW50LFxuICBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyU2VsZWN0aW9uVG9nZ2xlQnV0dG9uQ29tcG9uZW50XG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgLy9cbiAgICBEYnhJbmplY3Rpb25Db21wb25lbnRNb2R1bGUsXG4gICAgRGJ4Q29udGVudExheW91dE1vZHVsZSxcbiAgICBEYnhUZXh0TW9kdWxlLFxuICAgIERieEFjdGlvbk1vZHVsZSxcbiAgICBEYnhGb3JtTW9kdWxlLFxuICAgIERieEZvcm1seU1vZHVsZSxcbiAgICBEYnhDYWxlbmRhck1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlLFxuICAgIERieEJ1dHRvbk1vZHVsZSxcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxuICAgIERieERpYWxvZ0ludGVyYWN0aW9uTW9kdWxlLFxuICAgIERieFBvcG92ZXJJbnRlcmFjdGlvbk1vZHVsZSxcbiAgICBDYWxlbmRhck1vZHVsZSxcbiAgICBDYWxlbmRhckRheU1vZHVsZSxcbiAgICBGbGV4TGF5b3V0TW9kdWxlLFxuICAgIENhbGVuZGFyV2Vla01vZHVsZSxcbiAgICBEYnhEYXRlUGlwZU1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnMsXG4gIGV4cG9ydHM6IGRlY2xhcmF0aW9uc1xufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtQ2FsZW5kYXJNb2R1bGUge31cbiJdfQ==
|
|
@@ -1,31 +1,28 @@
|
|
|
1
|
-
import { Component, Input, ChangeDetectionStrategy } from '@angular/core';
|
|
1
|
+
import { Component, Input, ChangeDetectionStrategy, inject } from '@angular/core';
|
|
2
2
|
import { first } from 'rxjs';
|
|
3
3
|
import { DbxCalendarScheduleSelectionStore } from './calendar.schedule.selection.store';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "
|
|
6
|
-
import * as i2 from "@angular/
|
|
7
|
-
import * as i3 from "@angular/material/icon";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@angular/material/icon";
|
|
8
7
|
export class DbxScheduleSelectionCalendarCellComponent {
|
|
8
|
+
dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
|
|
9
|
+
content = {};
|
|
9
10
|
get icon() {
|
|
10
11
|
return this.content.icon;
|
|
11
12
|
}
|
|
12
13
|
get text() {
|
|
13
14
|
return this.content.text;
|
|
14
15
|
}
|
|
15
|
-
constructor(dbxCalendarScheduleSelectionStore) {
|
|
16
|
-
this.dbxCalendarScheduleSelectionStore = dbxCalendarScheduleSelectionStore;
|
|
17
|
-
this.content = {};
|
|
18
|
-
}
|
|
19
16
|
set day(day) {
|
|
20
17
|
this.dbxCalendarScheduleSelectionStore.cellContentFactory$.pipe(first()).subscribe((fn) => {
|
|
21
18
|
this.content = fn(day);
|
|
22
19
|
});
|
|
23
20
|
}
|
|
24
|
-
static
|
|
25
|
-
static
|
|
21
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
22
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarCellComponent, selector: "dbx-schedule-selection-calendar-cell", inputs: { day: "day" }, host: { classAttribute: "dbx-schedule-selection-calendar-cell" }, ngImport: i0, template: `
|
|
26
23
|
<mat-icon *ngIf="icon">{{ icon }}</mat-icon>
|
|
27
24
|
<span>{{ text }}</span>
|
|
28
|
-
`, isInline: true, dependencies: [{ kind: "directive", type:
|
|
25
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
29
26
|
}
|
|
30
27
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarCellComponent, decorators: [{
|
|
31
28
|
type: Component,
|
|
@@ -40,7 +37,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
40
37
|
},
|
|
41
38
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
42
39
|
}]
|
|
43
|
-
}],
|
|
40
|
+
}], propDecorators: { day: [{
|
|
44
41
|
type: Input
|
|
45
42
|
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNlbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vY2FsZW5kYXIvc3JjL2xpYi9jYWxlbmRhci5zY2hlZHVsZS5zZWxlY3Rpb24uY2VsbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFjeEYsTUFBTSxPQUFPLHlDQUF5QztJQUMzQyxpQ0FBaUMsR0FBRyxNQUFNLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUV2RixPQUFPLEdBQXlDLEVBQUUsQ0FBQztJQUVuRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUNJLEdBQUcsQ0FBQyxHQUE0RDtRQUNsRSxJQUFJLENBQUMsaUNBQWlDLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUU7WUFDeEYsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQWxCVSx5Q0FBeUM7NEZBQXpDLHlDQUF5QyxzS0FUMUM7OztHQUdUOzs0RkFNVSx5Q0FBeUM7a0JBWHJELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNDQUFzQztvQkFDaEQsUUFBUSxFQUFFOzs7R0FHVDtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLHNDQUFzQztxQkFDOUM7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOzhCQWVLLEdBQUc7c0JBRE4sS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbGVuZGFyTW9udGhWaWV3RGF5IH0gZnJvbSAnYW5ndWxhci1jYWxlbmRhcic7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlIH0gZnJvbSAnLi9jYWxlbmRhci5zY2hlZHVsZS5zZWxlY3Rpb24uc3RvcmUnO1xuaW1wb3J0IHsgQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbkNlbGxDb250ZW50LCBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uTWV0YWRhdGEgfSBmcm9tICcuL2NhbGVuZGFyLnNjaGVkdWxlLnNlbGVjdGlvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXItY2VsbCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiPnt7IGljb24gfX08L21hdC1pY29uPlxuICAgIDxzcGFuPnt7IHRleHQgfX08L3NwYW4+XG4gIGAsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2RieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXItY2VsbCdcbiAgfSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckNlbGxDb21wb25lbnQge1xuICByZWFkb25seSBkYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmUgPSBpbmplY3QoRGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlKTtcblxuICBjb250ZW50OiBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uQ2VsbENvbnRlbnQgPSB7fTtcblxuICBnZXQgaWNvbigpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50Lmljb247XG4gIH1cblxuICBnZXQgdGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50LnRleHQ7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgZGF5KGRheTogQ2FsZW5kYXJNb250aFZpZXdEYXk8Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbk1ldGFkYXRhPikge1xuICAgIHRoaXMuZGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlLmNlbGxDb250ZW50RmFjdG9yeSQucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKGZuKSA9PiB7XG4gICAgICB0aGlzLmNvbnRlbnQgPSBmbihkYXkpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, EventEmitter, Output, Input } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, Output, Input, inject } from '@angular/core';
|
|
2
2
|
import { map, shareReplay, first, throttleTime, BehaviorSubject, distinctUntilChanged, combineLatest, switchMap, of, combineLatestWith } from 'rxjs';
|
|
3
3
|
import { DbxCalendarStore, prepareAndSortCalendarEvents } from '@dereekb/dbx-web/calendar';
|
|
4
4
|
import { reduceBooleansWithAnd } from '@dereekb/util';
|
|
@@ -10,15 +10,14 @@ import { DbxScheduleSelectionCalendarDatePopoverButtonComponent } from './calend
|
|
|
10
10
|
import { DateRangeType, dateRange, isSameDate } from '@dereekb/date';
|
|
11
11
|
import { endOfWeek } from 'date-fns';
|
|
12
12
|
import * as i0 from "@angular/core";
|
|
13
|
-
import * as i1 from "@dereekb/dbx-
|
|
14
|
-
import * as i2 from "
|
|
15
|
-
import * as i3 from "@
|
|
16
|
-
import * as i4 from "@
|
|
17
|
-
import * as i5 from "
|
|
18
|
-
import * as i6 from "
|
|
19
|
-
import * as i7 from "
|
|
20
|
-
import * as i8 from "./calendar.schedule.selection.
|
|
21
|
-
import * as i9 from "./calendar.schedule.selection.toggle.button.component";
|
|
13
|
+
import * as i1 from "@dereekb/dbx-core";
|
|
14
|
+
import * as i2 from "@dereekb/dbx-web/calendar";
|
|
15
|
+
import * as i3 from "@angular/common";
|
|
16
|
+
import * as i4 from "@dereekb/dbx-web";
|
|
17
|
+
import * as i5 from "angular-calendar";
|
|
18
|
+
import * as i6 from "@ngbracket/ngx-layout/extended";
|
|
19
|
+
import * as i7 from "./calendar.schedule.selection.cell.component";
|
|
20
|
+
import * as i8 from "./calendar.schedule.selection.toggle.button.component";
|
|
22
21
|
export function dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory(inputModifyFn) {
|
|
23
22
|
const modifyFn = inputModifyFn || (() => { });
|
|
24
23
|
return (state$) => {
|
|
@@ -60,44 +59,42 @@ export function dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory(inputMo
|
|
|
60
59
|
};
|
|
61
60
|
}
|
|
62
61
|
export class DbxScheduleSelectionCalendarComponent {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
this.viewDate$ = this.calendarStore.date$;
|
|
100
|
-
}
|
|
62
|
+
calendarStore = inject((DbxCalendarStore));
|
|
63
|
+
dbxCalendarScheduleSelectionStore = inject(DbxCalendarScheduleSelectionStore);
|
|
64
|
+
_inputReadonly = new BehaviorSubject(undefined);
|
|
65
|
+
_config = new BehaviorSubject({});
|
|
66
|
+
_centerRangeSub = new SubscriptionObject();
|
|
67
|
+
config$ = this._config.pipe(distinctUntilChanged(), shareReplay(1));
|
|
68
|
+
readonly$ = this.config$.pipe(switchMap((x) => (x.readonly != null ? asObservableFromGetter(x.readonly) : of(undefined))), combineLatestWith(this._inputReadonly), map(([configReadonly, inputReadonly]) => {
|
|
69
|
+
return (configReadonly ?? false) || (inputReadonly ?? false);
|
|
70
|
+
}), shareReplay(1));
|
|
71
|
+
showButtonsOnReadonly$ = this.config$.pipe(map((x) => x.showButtonsOnReadonly ?? false), distinctUntilChanged(), shareReplay(1));
|
|
72
|
+
showButtons$ = this.showButtonsOnReadonly$.pipe(switchMap((x) => {
|
|
73
|
+
if (x) {
|
|
74
|
+
return of(true);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
return this.readonly$.pipe(map((x) => !x));
|
|
78
|
+
}
|
|
79
|
+
}), distinctUntilChanged(), shareReplay(1));
|
|
80
|
+
showClearSelectionButton$ = this.config$.pipe(map((config) => config.showClearSelectionButton ?? true), combineLatestWith(this.showButtons$), map((x) => reduceBooleansWithAnd(x)), distinctUntilChanged(), shareReplay(1));
|
|
81
|
+
datePopoverButtonInjectionConfig$ = this.config$.pipe(map((x) => x.buttonInjectionConfig), switchMapDbxInjectionComponentConfig(DbxScheduleSelectionCalendarDatePopoverButtonComponent), combineLatestWith(this.showButtons$), map(([config, showButton]) => (showButton ? config : undefined)), shareReplay(1));
|
|
82
|
+
clickEvent = new EventEmitter();
|
|
83
|
+
// refresh any time the selected day function updates
|
|
84
|
+
state$ = this.dbxCalendarScheduleSelectionStore.state$;
|
|
85
|
+
beforeMonthViewRender$ = this.config$.pipe(switchMap((x) => {
|
|
86
|
+
let factory;
|
|
87
|
+
if (x.beforeMonthViewRenderFunctionFactory) {
|
|
88
|
+
factory = asObservable(x.beforeMonthViewRenderFunctionFactory);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
factory = asObservable(x.customizeDay).pipe(map((x) => dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory(x)));
|
|
92
|
+
}
|
|
93
|
+
return factory.pipe(map((x) => x(this.state$)));
|
|
94
|
+
}), shareReplay(1));
|
|
95
|
+
refresh$ = combineLatest([this.state$, this.beforeMonthViewRender$]).pipe(throttleTime(20, undefined, { leading: true, trailing: true }), map(() => undefined));
|
|
96
|
+
events$ = this.calendarStore.visibleEvents$.pipe(map(prepareAndSortCalendarEvents), shareReplay(1));
|
|
97
|
+
viewDate$ = this.calendarStore.date$;
|
|
101
98
|
ngOnInit() {
|
|
102
99
|
this.dbxCalendarScheduleSelectionStore.setViewReadonlyState(this.readonly$); // sync the readonly state
|
|
103
100
|
this.calendarStore.setNavigationRangeLimit(this.dbxCalendarScheduleSelectionStore.minMaxDateRange$); // set navigation limit to the min/max allowed dates.
|
|
@@ -160,17 +157,17 @@ export class DbxScheduleSelectionCalendarComponent {
|
|
|
160
157
|
x(renderEvent);
|
|
161
158
|
});
|
|
162
159
|
}
|
|
163
|
-
static
|
|
164
|
-
static
|
|
160
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
161
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxScheduleSelectionCalendarComponent, selector: "dbx-schedule-selection-calendar", inputs: { config: "config", readonly: "readonly" }, outputs: { clickEvent: "clickEvent" }, providers: [DbxCalendarStore], ngImport: i0, template: "<dbx-calendar-base class=\"dbx-schedule-selection-calendar\" [ngClass]=\"(readonly$ | async) ? 'dbx-schedule-selection-calendar-readonly' : ''\">\n <ng-container controls>\n <ng-container *ngIf=\"showClearSelectionButton$ | async\">\n <dbx-schedule-selection-calendar-selection-toggle-button [disabled]=\"readonly$ | async\"></dbx-schedule-selection-calendar-selection-toggle-button>\n <dbx-button-spacer></dbx-button-spacer>\n </ng-container>\n <dbx-injection [config]=\"datePopoverButtonInjectionConfig$ | async\"></dbx-injection>\n </ng-container>\n <div class=\"dbx-calendar-content dbx-calendar-content-month\">\n <mwl-calendar-month-view [refresh]=\"refresh$\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\" (beforeViewRender)=\"beforeMonthViewRender($event)\" [cellTemplate]=\"monthDayCellTemplate\"></mwl-calendar-month-view>\n </div>\n</dbx-calendar-base>\n\n<!-- Cell -->\n<ng-template #monthDayCellTemplate let-day=\"day\" let-locale=\"locale\">\n <div class=\"cal-cell-top\">\n <span class=\"cal-day-badge\" *ngIf=\"day.badgeTotal > 0\">{{ day.badgeTotal }}</span>\n <span class=\"cal-day-number\">{{ day.date | calendarDate: 'monthViewDayNumber':locale }}</span>\n </div>\n <dbx-schedule-selection-calendar-cell [day]=\"day\"></dbx-schedule-selection-calendar-cell>\n</ng-template>\n", dependencies: [{ kind: "component", type: i1.DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }, { kind: "component", type: i2.DbxCalendarBaseComponent, selector: "dbx-calendar-base" }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "component", type: i5.CalendarMonthViewComponent, selector: "mwl-calendar-month-view", inputs: ["viewDate", "events", "excludeDays", "activeDayIsOpen", "activeDay", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "cellTemplate", "openDayEventsTemplate", "eventTitleTemplate", "eventActionsTemplate", "weekendDays"], outputs: ["beforeViewRender", "dayClicked", "eventClicked", "columnHeaderClicked", "eventTimesChanged"] }, { kind: "directive", type: i6.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i7.DbxScheduleSelectionCalendarCellComponent, selector: "dbx-schedule-selection-calendar-cell", inputs: ["day"] }, { kind: "component", type: i8.DbxScheduleSelectionCalendarSelectionToggleButtonComponent, selector: "dbx-schedule-selection-calendar-selection-toggle-button", inputs: ["disabled"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.ɵCalendarDatePipe, name: "calendarDate" }] });
|
|
165
162
|
}
|
|
166
163
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxScheduleSelectionCalendarComponent, decorators: [{
|
|
167
164
|
type: Component,
|
|
168
165
|
args: [{ selector: 'dbx-schedule-selection-calendar', providers: [DbxCalendarStore], template: "<dbx-calendar-base class=\"dbx-schedule-selection-calendar\" [ngClass]=\"(readonly$ | async) ? 'dbx-schedule-selection-calendar-readonly' : ''\">\n <ng-container controls>\n <ng-container *ngIf=\"showClearSelectionButton$ | async\">\n <dbx-schedule-selection-calendar-selection-toggle-button [disabled]=\"readonly$ | async\"></dbx-schedule-selection-calendar-selection-toggle-button>\n <dbx-button-spacer></dbx-button-spacer>\n </ng-container>\n <dbx-injection [config]=\"datePopoverButtonInjectionConfig$ | async\"></dbx-injection>\n </ng-container>\n <div class=\"dbx-calendar-content dbx-calendar-content-month\">\n <mwl-calendar-month-view [refresh]=\"refresh$\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\" (beforeViewRender)=\"beforeMonthViewRender($event)\" [cellTemplate]=\"monthDayCellTemplate\"></mwl-calendar-month-view>\n </div>\n</dbx-calendar-base>\n\n<!-- Cell -->\n<ng-template #monthDayCellTemplate let-day=\"day\" let-locale=\"locale\">\n <div class=\"cal-cell-top\">\n <span class=\"cal-day-badge\" *ngIf=\"day.badgeTotal > 0\">{{ day.badgeTotal }}</span>\n <span class=\"cal-day-number\">{{ day.date | calendarDate: 'monthViewDayNumber':locale }}</span>\n </div>\n <dbx-schedule-selection-calendar-cell [day]=\"day\"></dbx-schedule-selection-calendar-cell>\n</ng-template>\n" }]
|
|
169
|
-
}],
|
|
166
|
+
}], propDecorators: { clickEvent: [{
|
|
170
167
|
type: Output
|
|
171
168
|
}], config: [{
|
|
172
169
|
type: Input
|
|
173
170
|
}], readonly: [{
|
|
174
171
|
type: Input
|
|
175
172
|
}] } });
|
|
176
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL2NhbGVuZGFyL3NyYy9saWIvY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL2NhbGVuZGFyL3NyYy9saWIvY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBYSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFMUYsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQVcsS0FBSyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQWMsYUFBYSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUssT0FBTyxFQUFvQixnQkFBZ0IsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdHLE9BQU8sRUFBb0IscUJBQXFCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFrQyxpQ0FBaUMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hILE9BQU8sRUFBRSxpQ0FBaUMsRUFBcUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNySCxPQUFPLEVBQStCLG9DQUFvQyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEcsT0FBTyxFQUE4QyxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckksT0FBTyxFQUFFLHNEQUFzRCxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDaEksT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUs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QUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxXQUErQztRQUNuRSxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEQsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0FuS1UscUNBQXFDO21HQUFyQyxxQ0FBcUMscUpBRnJDLENBQUMsZ0JBQWdCLENBQUMsMEJDN0YvQiwyNkNBcUJBOzs0RkQwRWEscUNBQXFDO2tCQUxqRCxTQUFTOytCQUNFLGlDQUFpQyxhQUVoQyxDQUFDLGdCQUFnQixDQUFDO3VKQXFEN0IsVUFBVTtzQkFEVCxNQUFNO2dCQW9GSCxNQUFNO3NCQURULEtBQUs7Z0JBVUYsUUFBUTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgT25EZXN0cm95LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYWxlbmRhckV2ZW50LCBDYWxlbmRhck1vbnRoVmlld0JlZm9yZVJlbmRlckV2ZW50LCBDYWxlbmRhck1vbnRoVmlld0RheSB9IGZyb20gJ2FuZ3VsYXItY2FsZW5kYXInO1xuaW1wb3J0IHsgbWFwLCBzaGFyZVJlcGxheSwgU3ViamVjdCwgZmlyc3QsIHRocm90dGxlVGltZSwgQmVoYXZpb3JTdWJqZWN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCwgc3dpdGNoTWFwLCBvZiwgY29tYmluZUxhdGVzdFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieENhbGVuZGFyRXZlbnQsIERieENhbGVuZGFyU3RvcmUsIHByZXBhcmVBbmRTb3J0Q2FsZW5kYXJFdmVudHMgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViL2NhbGVuZGFyJztcbmltcG9ydCB7IERheU9mV2VlaywgTWF5YmUsIHJlZHVjZUJvb2xlYW5zV2l0aEFuZCB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0YXRlLCBEYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmUgfSBmcm9tICcuL2NhbGVuZGFyLnNjaGVkdWxlLnNlbGVjdGlvbi5zdG9yZSc7XG5pbXBvcnQgeyBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uRGF5U3RhdGUsIENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25NZXRhZGF0YSB9IGZyb20gJy4vY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uJztcbmltcG9ydCB7IERieEluamVjdGlvbkNvbXBvbmVudENvbmZpZywgc3dpdGNoTWFwRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZU9yVmFsdWUsIE9ic2VydmFibGVPclZhbHVlR2V0dGVyLCBTdWJzY3JpcHRpb25PYmplY3QsIGFzT2JzZXJ2YWJsZSwgYXNPYnNlcnZhYmxlRnJvbUdldHRlciB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVQb3BvdmVyQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9jYWxlbmRhci5zY2hlZHVsZS5zZWxlY3Rpb24ucG9wb3Zlci5idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVSYW5nZVR5cGUsIGRhdGVSYW5nZSwgaXNTYW1lRGF0ZSB9IGZyb20gJ0BkZXJlZWtiL2RhdGUnO1xuaW1wb3J0IHsgZW5kT2ZXZWVrIH0gZnJvbSAnZGF0ZS1mbnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJDb21wb25lbnRDb25maWcge1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhlIHNlbGVjdGlvbiBjYWxlbmRhciBpcyByZWFkb25seS4gRGVmYXVsdHMgdG8gJ2ZhbHNlJy5cbiAgICovXG4gIHJlYWRvbmx5IHJlYWRvbmx5PzogTWF5YmU8T2JzZXJ2YWJsZU9yVmFsdWVHZXR0ZXI8TWF5YmU8Ym9vbGVhbj4+PjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIHNob3cgdGhlIGNvbmZpZ3VyZWQgYnV0dG9ucyB3aGVuIHJlYWRvbmx5IGlzIHRydWUuIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgKi9cbiAgcmVhZG9ubHkgc2hvd0J1dHRvbnNPblJlYWRvbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIHNob3cgdGhlIGNsZWFyIHNlbGVjdGlvbiBidXR0b24uIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHJlYWRvbmx5IHNob3dDbGVhclNlbGVjdGlvbkJ1dHRvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIGZvciBkaXNwbGF5aW5nIGEgY3VzdG9tIHNlbGVjdGlvbiBidXR0b24uIFdoZW4gbnVsbC91bmRlZmluZWQvdHJ1ZSBpcyBwYXNzZWQsIHdpbGwgc2hvdyB0aGUgZGVmYXVsdCBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyRGF0ZVBvcG92ZXJCdXR0b25Db21wb25lbnQuXG4gICAqL1xuICByZWFkb25seSBidXR0b25JbmplY3Rpb25Db25maWc/OiBNYXliZTxPYnNlcnZhYmxlT3JWYWx1ZUdldHRlcjxNYXliZTxEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWc8YW55PiB8IGJvb2xlYW4+Pj47XG4gIC8qKlxuICAgKiBDdXN0b21pemUgZGF5IGZ1bmN0aW9uLiBXaGVuIGEgbmV3IGZ1bmN0aW9uIGlzIHBpcGVkIHRocm91Z2ggdGhlIGNhbGVuZGFyIGlzIHJlZnJlc2hlZC5cbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbWl6ZURheT86IE1heWJlPE9ic2VydmFibGVPclZhbHVlPE1heWJlPERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJCZWZvcmVNb250aFZpZXdSZW5kZXJNb2RpZnlEYXlGdW5jdGlvbj4+PjtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGZ1bGwgY29udHJvbCBvdmVyIHRoZSBiZWZvcmVNb250aFZpZXdSZW5kZXJcbiAgICovXG4gIHJlYWRvbmx5IGJlZm9yZU1vbnRoVmlld1JlbmRlckZ1bmN0aW9uRmFjdG9yeT86IE1heWJlPE9ic2VydmFibGVPclZhbHVlPERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJCZWZvcmVNb250aFZpZXdSZW5kZXJGdW5jdGlvbkZhY3Rvcnk+Pjtcbn1cblxuZXhwb3J0IHR5cGUgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckJlZm9yZU1vbnRoVmlld1JlbmRlck1vZGlmeURheUZ1bmN0aW9uID0gKHZpZXdEYXk6IENhbGVuZGFyTW9udGhWaWV3RGF5PENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25NZXRhZGF0YT4sIHN0YXRlOiBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RhdGUpID0+IHZvaWQ7XG5cbmV4cG9ydCB0eXBlIERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJCZWZvcmVNb250aFZpZXdSZW5kZXJGdW5jdGlvbiA9IChyZW5kZXJFdmVudDogQ2FsZW5kYXJNb250aFZpZXdCZWZvcmVSZW5kZXJFdmVudCkgPT4gdm9pZDtcblxuZXhwb3J0IHR5cGUgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckJlZm9yZU1vbnRoVmlld1JlbmRlckZ1bmN0aW9uRmFjdG9yeSA9IChzdGF0ZTogT2JzZXJ2YWJsZTxDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RhdGU+KSA9PiBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyQmVmb3JlTW9udGhWaWV3UmVuZGVyRnVuY3Rpb247XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyQmVmb3JlTW9udGhWaWV3UmVuZGVyRmFjdG9yeShpbnB1dE1vZGlmeUZuPzogTWF5YmU8RGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckJlZm9yZU1vbnRoVmlld1JlbmRlck1vZGlmeURheUZ1bmN0aW9uPik6IERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJCZWZvcmVNb250aFZpZXdSZW5kZXJGdW5jdGlvbkZhY3Rvcnkge1xuICBjb25zdCBtb2RpZnlGbiA9IGlucHV0TW9kaWZ5Rm4gfHwgKCgpID0+IHt9KTtcblxuICByZXR1cm4gKHN0YXRlJDogT2JzZXJ2YWJsZTxDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RhdGU+KSA9PiB7XG4gICAgcmV0dXJuIChyZW5kZXJFdmVudDogQ2FsZW5kYXJNb250aFZpZXdCZWZvcmVSZW5kZXJFdmVudCkgPT4ge1xuICAgICAgY29uc3QgeyBib2R5IH06IHsgYm9keTogQ2FsZW5kYXJNb250aFZpZXdEYXk8Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbk1ldGFkYXRhPltdIH0gPSByZW5kZXJFdmVudDtcblxuICAgICAgLy8gdXNlIGxhdGVzdC9jdXJyZW50IHN0YXRlXG4gICAgICBzdGF0ZSQucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKGNhbGVuZGFyU2NoZWR1bGVTdGF0ZTogQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0YXRlKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgaXNFbmFibGVkRGF5LCBpbmRleEZhY3RvcnksIGlzRW5hYmxlZEZpbHRlckRheSwgYWxsb3dlZERheXNPZldlZWsgfSA9IGNhbGVuZGFyU2NoZWR1bGVTdGF0ZTtcbiAgICAgICAgYm9keS5mb3JFYWNoKCh2aWV3RGF5KSA9PiB7XG4gICAgICAgICAgY29uc3QgeyBkYXRlIH0gPSB2aWV3RGF5O1xuICAgICAgICAgIGNvbnN0IGkgPSBpbmRleEZhY3RvcnkoZGF0ZSk7XG4gICAgICAgICAgY29uc3QgZGF5ID0gZGF0ZS5nZXREYXkoKTtcblxuICAgICAgICAgIGxldCBzdGF0ZTogQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbkRheVN0YXRlO1xuXG4gICAgICAgICAgaWYgKCFpc0VuYWJsZWRGaWx0ZXJEYXkoaSkpIHtcbiAgICAgICAgICAgIHZpZXdEYXkuY3NzQ2xhc3MgPSAnY2FsLWRheS1ub3QtYXBwbGljYWJsZSc7XG4gICAgICAgICAgICBzdGF0ZSA9IENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25EYXlTdGF0ZS5OT1RfQVBQTElDQUJMRTtcbiAgICAgICAgICB9IGVsc2UgaWYgKCFhbGxvd2VkRGF5c09mV2Vlay5oYXMoZGF5IGFzIERheU9mV2VlaykpIHtcbiAgICAgICAgICAgIHZpZXdEYXkuY3NzQ2xhc3MgPSAnY2FsLWRheS1kaXNhYmxlZCc7XG4gICAgICAgICAgICBzdGF0ZSA9IENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25EYXlTdGF0ZS5ESVNBQkxFRDtcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzRW5hYmxlZERheShpKSkge1xuICAgICAgICAgICAgdmlld0RheS5jc3NDbGFzcyA9ICdjYWwtZGF5LXNlbGVjdGVkJztcbiAgICAgICAgICAgIHN0YXRlID0gQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbkRheVN0YXRlLlNFTEVDVEVEO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB2aWV3RGF5LmNzc0NsYXNzID0gJ2NhbC1kYXktbm90LXNlbGVjdGVkJztcbiAgICAgICAgICAgIHN0YXRlID0gQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbkRheVN0YXRlLk5PVF9TRUxFQ1RFRDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBtZXRhID0ge1xuICAgICAgICAgICAgc3RhdGUsXG4gICAgICAgICAgICBpXG4gICAgICAgICAgfTtcblxuICAgICAgICAgIHZpZXdEYXkubWV0YSA9IG1ldGE7XG4gICAgICAgICAgbW9kaWZ5Rm4odmlld0RheSwgY2FsZW5kYXJTY2hlZHVsZVN0YXRlKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9O1xuICB9O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYngtc2NoZWR1bGUtc2VsZWN0aW9uLWNhbGVuZGFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLnNjaGVkdWxlLnNlbGVjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW0RieENhbGVuZGFyU3RvcmVdXG59KVxuZXhwb3J0IGNsYXNzIERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2lucHV0UmVhZG9ubHkgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPGJvb2xlYW4+Pih1bmRlZmluZWQpO1xuICBwcml2YXRlIF9jb25maWcgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJDb21wb25lbnRDb25maWc+KHt9KTtcbiAgcHJpdmF0ZSBfY2VudGVyUmFuZ2VTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG5cbiAgcmVhZG9ubHkgY29uZmlnJCA9IHRoaXMuX2NvbmZpZy5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSByZWFkb25seSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmNvbmZpZyQucGlwZShcbiAgICBzd2l0Y2hNYXAoKHgpID0+ICh4LnJlYWRvbmx5ICE9IG51bGwgPyBhc09ic2VydmFibGVGcm9tR2V0dGVyKHgucmVhZG9ubHkpIDogb2YodW5kZWZpbmVkKSkpLFxuICAgIGNvbWJpbmVMYXRlc3RXaXRoKHRoaXMuX2lucHV0UmVhZG9ubHkpLFxuICAgIG1hcCgoW2NvbmZpZ1JlYWRvbmx5LCBpbnB1dFJlYWRvbmx5XSkgPT4ge1xuICAgICAgcmV0dXJuIChjb25maWdSZWFkb25seSA/PyBmYWxzZSkgfHwgKGlucHV0UmVhZG9ubHkgPz8gZmFsc2UpO1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgc2hvd0J1dHRvbnNPblJlYWRvbmx5JDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuY29uZmlnJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5zaG93QnV0dG9uc09uUmVhZG9ubHkgPz8gZmFsc2UpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBzaG93QnV0dG9ucyQgPSB0aGlzLnNob3dCdXR0b25zT25SZWFkb25seSQucGlwZShcbiAgICBzd2l0Y2hNYXAoKHgpID0+IHtcbiAgICAgIGlmICh4KSB7XG4gICAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlYWRvbmx5JC5waXBlKG1hcCgoeCkgPT4gIXgpKTtcbiAgICAgIH1cbiAgICB9KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgc2hvd0NsZWFyU2VsZWN0aW9uQnV0dG9uJCA9IHRoaXMuY29uZmlnJC5waXBlKFxuICAgIG1hcCgoY29uZmlnKSA9PiBjb25maWcuc2hvd0NsZWFyU2VsZWN0aW9uQnV0dG9uID8/IHRydWUpLFxuICAgIGNvbWJpbmVMYXRlc3RXaXRoKHRoaXMuc2hvd0J1dHRvbnMkKSxcbiAgICBtYXAoKHgpID0+IHJlZHVjZUJvb2xlYW5zV2l0aEFuZCh4KSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRhdGVQb3BvdmVyQnV0dG9uSW5qZWN0aW9uQ29uZmlnJDogT2JzZXJ2YWJsZTxNYXliZTxEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWc8YW55Pj4+ID0gdGhpcy5jb25maWckLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4LmJ1dHRvbkluamVjdGlvbkNvbmZpZyksXG4gICAgc3dpdGNoTWFwRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnKERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJEYXRlUG9wb3ZlckJ1dHRvbkNvbXBvbmVudCksXG4gICAgY29tYmluZUxhdGVzdFdpdGgodGhpcy5zaG93QnV0dG9ucyQpLFxuICAgIG1hcCgoW2NvbmZpZywgc2hvd0J1dHRvbl0pID0+IChzaG93QnV0dG9uID8gY29uZmlnIDogdW5kZWZpbmVkKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBAT3V0cHV0KClcbiAgY2xpY2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8RGJ4Q2FsZW5kYXJFdmVudDxUPj4oKTtcblxuICAvLyByZWZyZXNoIGFueSB0aW1lIHRoZSBzZWxlY3RlZCBkYXkgZnVuY3Rpb24gdXBkYXRlc1xuICByZWFkb25seSBzdGF0ZSQgPSB0aGlzLmRieENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25TdG9yZS5zdGF0ZSQ7XG5cbiAgcmVhZG9ubHkgYmVmb3JlTW9udGhWaWV3UmVuZGVyJCA9IHRoaXMuY29uZmlnJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoeCkgPT4ge1xuICAgICAgbGV0IGZhY3Rvcnk6IE9ic2VydmFibGU8RGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckJlZm9yZU1vbnRoVmlld1JlbmRlckZ1bmN0aW9uRmFjdG9yeT47XG5cbiAgICAgIGlmICh4LmJlZm9yZU1vbnRoVmlld1JlbmRlckZ1bmN0aW9uRmFjdG9yeSkge1xuICAgICAgICBmYWN0b3J5ID0gYXNPYnNlcnZhYmxlKHguYmVmb3JlTW9udGhWaWV3UmVuZGVyRnVuY3Rpb25GYWN0b3J5KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZhY3RvcnkgPSBhc09ic2VydmFibGUoeC5jdXN0b21pemVEYXkpLnBpcGUobWFwKCh4KSA9PiBkYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyQmVmb3JlTW9udGhWaWV3UmVuZGVyRmFjdG9yeSh4KSkpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFjdG9yeS5waXBlKG1hcCgoeCkgPT4geCh0aGlzLnN0YXRlJCkpKTtcbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHJlZnJlc2gkID0gY29tYmluZUxhdGVzdChbdGhpcy5zdGF0ZSQsIHRoaXMuYmVmb3JlTW9udGhWaWV3UmVuZGVyJF0pLnBpcGUoXG4gICAgdGhyb3R0bGVUaW1lKDIwLCB1bmRlZmluZWQsIHsgbGVhZGluZzogdHJ1ZSwgdHJhaWxpbmc6IHRydWUgfSksXG4gICAgbWFwKCgpID0+IHVuZGVmaW5lZClcbiAgKSBhcyBTdWJqZWN0PHVuZGVmaW5lZD47XG5cbiAgcmVhZG9ubHkgZXZlbnRzJCA9IHRoaXMuY2FsZW5kYXJTdG9yZS52aXNpYmxlRXZlbnRzJC5waXBlKG1hcChwcmVwYXJlQW5kU29ydENhbGVuZGFyRXZlbnRzKSwgc2hhcmVSZXBsYXkoMSkpO1xuICByZWFkb25seSB2aWV3RGF0ZSQgPSB0aGlzLmNhbGVuZGFyU3RvcmUuZGF0ZSQ7XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgY2FsZW5kYXJTdG9yZTogRGJ4Q2FsZW5kYXJTdG9yZTxUPiwgcmVhZG9ubHkgZGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlOiBEYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmUpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmUuc2V0Vmlld1JlYWRvbmx5U3RhdGUodGhpcy5yZWFkb25seSQpOyAvLyBzeW5jIHRoZSByZWFkb25seSBzdGF0ZVxuXG4gICAgdGhpcy5jYWxlbmRhclN0b3JlLnNldE5hdmlnYXRpb25SYW5nZUxpbWl0KHRoaXMuZGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlLm1pbk1heERhdGVSYW5nZSQpOyAvLyBzZXQgbmF2aWdhdGlvbiBsaW1pdCB0byB0aGUgbWluL21heCBhbGxvd2VkIGRhdGVzLlxuICAgIHRoaXMuY2FsZW5kYXJTdG9yZS5zZXRTaG93UGFnZUJ1dHRvbnModHJ1ZSk7XG5cbiAgICAvLyB3aGVuIGEgbmV3IGZpbHRlciBpcyBzZXQsIGlmIHRoZSBmaXJzdCB0d28gcGFnZXMgb2Ygc2VsZWN0YWJsZSBpbmRleGVzIGZpdCB3aXRoaW4gdGhlIGNhbGVuZGFyIG1vbnRoLCBmb2N1cyBvbiB0aGF0IGNhbGVuZGFyIG1vbnRoLlxuICAgIHRoaXMuX2NlbnRlclJhbmdlU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuZGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlLmN1cnJlbnREYXRlUmFuZ2UkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgc3dpdGNoTWFwKCh4KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0OiBPYnNlcnZhYmxlPFt0eXBlb2YgeCwgYm9vbGVhbl0+ID0geFxuICAgICAgICAgICAgPyBvZihbeCwgdHJ1ZV0pXG4gICAgICAgICAgICA6IHRoaXMuZGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlLm1pbk1heERhdGVSYW5nZSQucGlwZShcbiAgICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAgIG1hcCgoeSkgPT4gW3ksIGZhbHNlXSBhcyBbdHlwZW9mIHgsIGJvb2xlYW5dKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChbeCwgaXNGcm9tU2VsZWN0ZWREYXRlUmFuZ2VdKSA9PiB7XG4gICAgICAgIGlmICh4Py5zdGFydCkge1xuICAgICAgICAgIGxldCB0YXBEYXk6IE1heWJlPERhdGU+O1xuICAgICAgICAgIGNvbnN0IHN0YXJ0TW9udGggPSBkYXRlUmFuZ2UoeyBkYXRlOiB4LnN0YXJ0LCB0eXBlOiBEYXRlUmFuZ2VUeXBlLkNBTEVOREFSX01PTlRIIH0pO1xuICAgICAgICAgIGNvbnN0IG1vbnRoVG9Gb2N1cyA9IGVuZE9mV2VlayhzdGFydE1vbnRoLnN0YXJ0KTtcblxuICAgICAgICAgIGlmICh4LmVuZCAhPSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCBlbmRNb250aCA9IGRhdGVSYW5nZSh7IGRhdGU6IHguZW5kLCB0eXBlOiBEYXRlUmFuZ2VUeXBlLkNBTEVOREFSX01PTlRIIH0pO1xuXG4gICAgICAgICAgICBpZiAoaXNTYW1lRGF0ZShzdGFydE1vbnRoLnN0YXJ0LCBlbmRNb250aC5zdGFydCkpIHtcbiAgICAgICAgICAgICAgdGFwRGF5ID0gbW9udGhUb0ZvY3VzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghdGFwRGF5ICYmIGlzRnJvbVNlbGVjdGVkRGF0ZVJhbmdlKSB7XG4gICAgICAgICAgICB0YXBEYXkgPSBtb250aFRvRm9jdXM7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHRhcERheSkge1xuICAgICAgICAgICAgdGhpcy5jYWxlbmRhclN0b3JlLnRhcERheSh0YXBEYXkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsaWNrRXZlbnQuY29tcGxldGUoKTtcbiAgICB0aGlzLl9pbnB1dFJlYWRvbmx5LmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fY29uZmlnLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fY2VudGVyUmFuZ2VTdWIuZGVzdHJveSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IGNvbmZpZygpIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnLnZhbHVlO1xuICB9XG5cbiAgc2V0IGNvbmZpZyhjb25maWc6IE1heWJlPERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJDb21wb25lbnRDb25maWc+KSB7XG4gICAgdGhpcy5fY29uZmlnLm5leHQoY29uZmlnID8/IHt9KTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCByZWFkb25seShyZWFkb25seTogTWF5YmU8Ym9vbGVhbj4pIHtcbiAgICB0aGlzLl9pbnB1dFJlYWRvbmx5Lm5leHQocmVhZG9ubHkpO1xuICB9XG5cbiAgZGF5Q2xpY2tlZCh7IGRhdGUgfTogeyBkYXRlOiBEYXRlIH0pOiB2b2lkIHtcbiAgICB0aGlzLnJlYWRvbmx5JC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgocmVhZG9ubHkpID0+IHtcbiAgICAgIGlmICghcmVhZG9ubHkpIHtcbiAgICAgICAgdGhpcy5kYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmUudG9nZ2xlU2VsZWN0ZWREYXRlcyhkYXRlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGV2ZW50Q2xpY2tlZChhY3Rpb246IHN0cmluZywgZXZlbnQ6IENhbGVuZGFyRXZlbnQ8VD4pOiB2b2lkIHtcbiAgICB0aGlzLmNsaWNrRXZlbnQuZW1pdCh7IGFjdGlvbiwgZXZlbnQgfSk7XG4gIH1cblxuICBiZWZvcmVNb250aFZpZXdSZW5kZXIocmVuZGVyRXZlbnQ6IENhbGVuZGFyTW9udGhWaWV3QmVmb3JlUmVuZGVyRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmJlZm9yZU1vbnRoVmlld1JlbmRlciQucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgIHgocmVuZGVyRXZlbnQpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGJ4LWNhbGVuZGFyLWJhc2UgY2xhc3M9XCJkYngtc2NoZWR1bGUtc2VsZWN0aW9uLWNhbGVuZGFyXCIgW25nQ2xhc3NdPVwiKHJlYWRvbmx5JCB8IGFzeW5jKSA/ICdkYngtc2NoZWR1bGUtc2VsZWN0aW9uLWNhbGVuZGFyLXJlYWRvbmx5JyA6ICcnXCI+XG4gIDxuZy1jb250YWluZXIgY29udHJvbHM+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dDbGVhclNlbGVjdGlvbkJ1dHRvbiQgfCBhc3luY1wiPlxuICAgICAgPGRieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXItc2VsZWN0aW9uLXRvZ2dsZS1idXR0b24gW2Rpc2FibGVkXT1cInJlYWRvbmx5JCB8IGFzeW5jXCI+PC9kYngtc2NoZWR1bGUtc2VsZWN0aW9uLWNhbGVuZGFyLXNlbGVjdGlvbi10b2dnbGUtYnV0dG9uPlxuICAgICAgPGRieC1idXR0b24tc3BhY2VyPjwvZGJ4LWJ1dHRvbi1zcGFjZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRieC1pbmplY3Rpb24gW2NvbmZpZ109XCJkYXRlUG9wb3ZlckJ1dHRvbkluamVjdGlvbkNvbmZpZyQgfCBhc3luY1wiPjwvZGJ4LWluamVjdGlvbj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXYgY2xhc3M9XCJkYngtY2FsZW5kYXItY29udGVudCBkYngtY2FsZW5kYXItY29udGVudC1tb250aFwiPlxuICAgIDxtd2wtY2FsZW5kYXItbW9udGgtdmlldyBbcmVmcmVzaF09XCJyZWZyZXNoJFwiIFt2aWV3RGF0ZV09XCIodmlld0RhdGUkIHwgYXN5bmMpIVwiIFtldmVudHNdPVwiKGV2ZW50cyQgfCBhc3luYykhXCIgKGRheUNsaWNrZWQpPVwiZGF5Q2xpY2tlZCgkZXZlbnQuZGF5KVwiIChldmVudENsaWNrZWQpPVwiZXZlbnRDbGlja2VkKCdDbGlja2VkJywgJGV2ZW50LmV2ZW50KVwiIChiZWZvcmVWaWV3UmVuZGVyKT1cImJlZm9yZU1vbnRoVmlld1JlbmRlcigkZXZlbnQpXCIgW2NlbGxUZW1wbGF0ZV09XCJtb250aERheUNlbGxUZW1wbGF0ZVwiPjwvbXdsLWNhbGVuZGFyLW1vbnRoLXZpZXc+XG4gIDwvZGl2PlxuPC9kYngtY2FsZW5kYXItYmFzZT5cblxuPCEtLSBDZWxsIC0tPlxuPG5nLXRlbXBsYXRlICNtb250aERheUNlbGxUZW1wbGF0ZSBsZXQtZGF5PVwiZGF5XCIgbGV0LWxvY2FsZT1cImxvY2FsZVwiPlxuICA8ZGl2IGNsYXNzPVwiY2FsLWNlbGwtdG9wXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJjYWwtZGF5LWJhZGdlXCIgKm5nSWY9XCJkYXkuYmFkZ2VUb3RhbCA+IDBcIj57eyBkYXkuYmFkZ2VUb3RhbCB9fTwvc3Bhbj5cbiAgICA8c3BhbiBjbGFzcz1cImNhbC1kYXktbnVtYmVyXCI+e3sgZGF5LmRhdGUgfCBjYWxlbmRhckRhdGU6ICdtb250aFZpZXdEYXlOdW1iZXInOmxvY2FsZSB9fTwvc3Bhbj5cbiAgPC9kaXY+XG4gIDxkYngtc2NoZWR1bGUtc2VsZWN0aW9uLWNhbGVuZGFyLWNlbGwgW2RheV09XCJkYXlcIj48L2RieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXItY2VsbD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
173
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL2NhbGVuZGFyL3NyYy9saWIvY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL2NhbGVuZGFyL3NyYy9saWIvY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBYSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxHLE9BQU8sRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFXLEtBQUssRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFjLGFBQWEsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFLLE9BQU8sRUFBb0IsZ0JBQWdCLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RyxPQUFPLEVBQW9CLHFCQUFxQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBa0MsaUNBQWlDLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4SCxPQUFPLEVBQUUsaUNBQWlDLEVBQXFDLE1BQU0sK0JBQStCLENBQUM7QUFDckgsT0FBTyxFQUErQixvQ0FBb0MsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RHLE9BQU8sRUFBOEMsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JJLE9BQU8sRUFBRSxzREFBc0QsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2hJLE9BQU8sRUFBRSxhQUFhLEVBQUUs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TUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELHFCQUFxQixDQUFDLFdBQStDO1FBQ25FLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN4RCxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQXBLVSxxQ0FBcUM7NEZBQXJDLHFDQUFxQyxxSkFGckMsQ0FBQyxnQkFBZ0IsQ0FBQywwQkM3Ri9CLDI2Q0FxQkE7OzRGRDBFYSxxQ0FBcUM7a0JBTGpELFNBQVM7K0JBQ0UsaUNBQWlDLGFBRWhDLENBQUMsZ0JBQWdCLENBQUM7OEJBd0RwQixVQUFVO3NCQURsQixNQUFNO2dCQWtGSCxNQUFNO3NCQURULEtBQUs7Z0JBVUYsUUFBUTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgT25EZXN0cm95LCBJbnB1dCwgT25Jbml0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbGVuZGFyRXZlbnQsIENhbGVuZGFyTW9udGhWaWV3QmVmb3JlUmVuZGVyRXZlbnQsIENhbGVuZGFyTW9udGhWaWV3RGF5IH0gZnJvbSAnYW5ndWxhci1jYWxlbmRhcic7XG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5LCBTdWJqZWN0LCBmaXJzdCwgdGhyb3R0bGVUaW1lLCBCZWhhdmlvclN1YmplY3QsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBzd2l0Y2hNYXAsIG9mLCBjb21iaW5lTGF0ZXN0V2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4Q2FsZW5kYXJFdmVudCwgRGJ4Q2FsZW5kYXJTdG9yZSwgcHJlcGFyZUFuZFNvcnRDYWxlbmRhckV2ZW50cyB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWIvY2FsZW5kYXInO1xuaW1wb3J0IHsgRGF5T2ZXZWVrLCBNYXliZSwgcmVkdWNlQm9vbGVhbnNXaXRoQW5kIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RhdGUsIERieENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25TdG9yZSB9IGZyb20gJy4vY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLnN0b3JlJztcbmltcG9ydCB7IENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25EYXlTdGF0ZSwgQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi9jYWxlbmRhci5zY2hlZHVsZS5zZWxlY3Rpb24nO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnLCBzd2l0Y2hNYXBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWcgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlT3JWYWx1ZSwgT2JzZXJ2YWJsZU9yVmFsdWVHZXR0ZXIsIFN1YnNjcmlwdGlvbk9iamVjdCwgYXNPYnNlcnZhYmxlLCBhc09ic2VydmFibGVGcm9tR2V0dGVyIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyRGF0ZVBvcG92ZXJCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NhbGVuZGFyLnNjaGVkdWxlLnNlbGVjdGlvbi5wb3BvdmVyLmJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZVJhbmdlVHlwZSwgZGF0ZVJhbmdlLCBpc1NhbWVEYXRlIH0gZnJvbSAnQGRlcmVla2IvZGF0ZSc7XG5pbXBvcnQgeyBlbmRPZldlZWsgfSBmcm9tICdkYXRlLWZucyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckNvbXBvbmVudENvbmZpZyB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgc2VsZWN0aW9uIGNhbGVuZGFyIGlzIHJlYWRvbmx5LiBEZWZhdWx0cyB0byAnZmFsc2UnLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZG9ubHk/OiBNYXliZTxPYnNlcnZhYmxlT3JWYWx1ZUdldHRlcjxNYXliZTxib29sZWFuPj4+O1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gc2hvdyB0aGUgY29uZmlndXJlZCBidXR0b25zIHdoZW4gcmVhZG9ubHkgaXMgdHJ1ZS4gRGVmYXVsdHMgdG8gZmFsc2UuXG4gICAqL1xuICByZWFkb25seSBzaG93QnV0dG9uc09uUmVhZG9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gc2hvdyB0aGUgY2xlYXIgc2VsZWN0aW9uIGJ1dHRvbi4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgcmVhZG9ubHkgc2hvd0NsZWFyU2VsZWN0aW9uQnV0dG9uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gZm9yIGRpc3BsYXlpbmcgYSBjdXN0b20gc2VsZWN0aW9uIGJ1dHRvbi4gV2hlbiBudWxsL3VuZGVmaW5lZC90cnVlIGlzIHBhc3NlZCwgd2lsbCBzaG93IHRoZSBkZWZhdWx0IERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJEYXRlUG9wb3ZlckJ1dHRvbkNvbXBvbmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1dHRvbkluamVjdGlvbkNvbmZpZz86IE1heWJlPE9ic2VydmFibGVPclZhbHVlR2V0dGVyPE1heWJlPERieEluamVjdGlvbkNvbXBvbmVudENvbmZpZzxhbnk+IHwgYm9vbGVhbj4+PjtcbiAgLyoqXG4gICAqIEN1c3RvbWl6ZSBkYXkgZnVuY3Rpb24uIFdoZW4gYSBuZXcgZnVuY3Rpb24gaXMgcGlwZWQgdGhyb3VnaCB0aGUgY2FsZW5kYXIgaXMgcmVmcmVzaGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9taXplRGF5PzogTWF5YmU8T2JzZXJ2YWJsZU9yVmFsdWU8TWF5YmU8RGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckJlZm9yZU1vbnRoVmlld1JlbmRlck1vZGlmeURheUZ1bmN0aW9uPj4+O1xuICAvKipcbiAgICogT3B0aW9uYWwgZnVsbCBjb250cm9sIG92ZXIgdGhlIGJlZm9yZU1vbnRoVmlld1JlbmRlclxuICAgKi9cbiAgcmVhZG9ubHkgYmVmb3JlTW9udGhWaWV3UmVuZGVyRnVuY3Rpb25GYWN0b3J5PzogTWF5YmU8T2JzZXJ2YWJsZU9yVmFsdWU8RGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckJlZm9yZU1vbnRoVmlld1JlbmRlckZ1bmN0aW9uRmFjdG9yeT4+O1xufVxuXG5leHBvcnQgdHlwZSBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyQmVmb3JlTW9udGhWaWV3UmVuZGVyTW9kaWZ5RGF5RnVuY3Rpb24gPSAodmlld0RheTogQ2FsZW5kYXJNb250aFZpZXdEYXk8Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbk1ldGFkYXRhPiwgc3RhdGU6IENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25TdGF0ZSkgPT4gdm9pZDtcblxuZXhwb3J0IHR5cGUgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckJlZm9yZU1vbnRoVmlld1JlbmRlckZ1bmN0aW9uID0gKHJlbmRlckV2ZW50OiBDYWxlbmRhck1vbnRoVmlld0JlZm9yZVJlbmRlckV2ZW50KSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyQmVmb3JlTW9udGhWaWV3UmVuZGVyRnVuY3Rpb25GYWN0b3J5ID0gKHN0YXRlOiBPYnNlcnZhYmxlPENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25TdGF0ZT4pID0+IERieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJCZWZvcmVNb250aFZpZXdSZW5kZXJGdW5jdGlvbjtcblxuZXhwb3J0IGZ1bmN0aW9uIGRieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJCZWZvcmVNb250aFZpZXdSZW5kZXJGYWN0b3J5KGlucHV0TW9kaWZ5Rm4/OiBNYXliZTxEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyQmVmb3JlTW9udGhWaWV3UmVuZGVyTW9kaWZ5RGF5RnVuY3Rpb24+KTogRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckJlZm9yZU1vbnRoVmlld1JlbmRlckZ1bmN0aW9uRmFjdG9yeSB7XG4gIGNvbnN0IG1vZGlmeUZuID0gaW5wdXRNb2RpZnlGbiB8fCAoKCkgPT4ge30pO1xuXG4gIHJldHVybiAoc3RhdGUkOiBPYnNlcnZhYmxlPENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25TdGF0ZT4pID0+IHtcbiAgICByZXR1cm4gKHJlbmRlckV2ZW50OiBDYWxlbmRhck1vbnRoVmlld0JlZm9yZVJlbmRlckV2ZW50KSA9PiB7XG4gICAgICBjb25zdCB7IGJvZHkgfTogeyBib2R5OiBDYWxlbmRhck1vbnRoVmlld0RheTxDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uTWV0YWRhdGE+W10gfSA9IHJlbmRlckV2ZW50O1xuXG4gICAgICAvLyB1c2UgbGF0ZXN0L2N1cnJlbnQgc3RhdGVcbiAgICAgIHN0YXRlJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoY2FsZW5kYXJTY2hlZHVsZVN0YXRlOiBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RhdGUpID0+IHtcbiAgICAgICAgY29uc3QgeyBpc0VuYWJsZWREYXksIGluZGV4RmFjdG9yeSwgaXNFbmFibGVkRmlsdGVyRGF5LCBhbGxvd2VkRGF5c09mV2VlayB9ID0gY2FsZW5kYXJTY2hlZHVsZVN0YXRlO1xuICAgICAgICBib2R5LmZvckVhY2goKHZpZXdEYXkpID0+IHtcbiAgICAgICAgICBjb25zdCB7IGRhdGUgfSA9IHZpZXdEYXk7XG4gICAgICAgICAgY29uc3QgaSA9IGluZGV4RmFjdG9yeShkYXRlKTtcbiAgICAgICAgICBjb25zdCBkYXkgPSBkYXRlLmdldERheSgpO1xuXG4gICAgICAgICAgbGV0IHN0YXRlOiBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uRGF5U3RhdGU7XG5cbiAgICAgICAgICBpZiAoIWlzRW5hYmxlZEZpbHRlckRheShpKSkge1xuICAgICAgICAgICAgdmlld0RheS5jc3NDbGFzcyA9ICdjYWwtZGF5LW5vdC1hcHBsaWNhYmxlJztcbiAgICAgICAgICAgIHN0YXRlID0gQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbkRheVN0YXRlLk5PVF9BUFBMSUNBQkxFO1xuICAgICAgICAgIH0gZWxzZSBpZiAoIWFsbG93ZWREYXlzT2ZXZWVrLmhhcyhkYXkgYXMgRGF5T2ZXZWVrKSkge1xuICAgICAgICAgICAgdmlld0RheS5jc3NDbGFzcyA9ICdjYWwtZGF5LWRpc2FibGVkJztcbiAgICAgICAgICAgIHN0YXRlID0gQ2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvbkRheVN0YXRlLkRJU0FCTEVEO1xuICAgICAgICAgIH0gZWxzZSBpZiAoaXNFbmFibGVkRGF5KGkpKSB7XG4gICAgICAgICAgICB2aWV3RGF5LmNzc0NsYXNzID0gJ2NhbC1kYXktc2VsZWN0ZWQnO1xuICAgICAgICAgICAgc3RhdGUgPSBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uRGF5U3RhdGUuU0VMRUNURUQ7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHZpZXdEYXkuY3NzQ2xhc3MgPSAnY2FsLWRheS1ub3Qtc2VsZWN0ZWQnO1xuICAgICAgICAgICAgc3RhdGUgPSBDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uRGF5U3RhdGUuTk9UX1NFTEVDVEVEO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IG1ldGEgPSB7XG4gICAgICAgICAgICBzdGF0ZSxcbiAgICAgICAgICAgIGlcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgdmlld0RheS5tZXRhID0gbWV0YTtcbiAgICAgICAgICBtb2RpZnlGbih2aWV3RGF5LCBjYWxlbmRhclNjaGVkdWxlU3RhdGUpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH07XG4gIH07XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXIuc2NoZWR1bGUuc2VsZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbRGJ4Q2FsZW5kYXJTdG9yZV1cbn0pXG5leHBvcnQgY2xhc3MgRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckNvbXBvbmVudDxUPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgY2FsZW5kYXJTdG9yZSA9IGluamVjdChEYnhDYWxlbmRhclN0b3JlPFQ+KTtcbiAgcmVhZG9ubHkgZGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlID0gaW5qZWN0KERieENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25TdG9yZSk7XG5cbiAgcHJpdmF0ZSBfaW5wdXRSZWFkb25seSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8Ym9vbGVhbj4+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgX2NvbmZpZyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckNvbXBvbmVudENvbmZpZz4oe30pO1xuICBwcml2YXRlIF9jZW50ZXJSYW5nZVN1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcblxuICByZWFkb25seSBjb25maWckID0gdGhpcy5fY29uZmlnLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IHJlYWRvbmx5JDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuY29uZmlnJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoeCkgPT4gKHgucmVhZG9ubHkgIT0gbnVsbCA/IGFzT2JzZXJ2YWJsZUZyb21HZXR0ZXIoeC5yZWFkb25seSkgOiBvZih1bmRlZmluZWQpKSksXG4gICAgY29tYmluZUxhdGVzdFdpdGgodGhpcy5faW5wdXRSZWFkb25seSksXG4gICAgbWFwKChbY29uZmlnUmVhZG9ubHksIGlucHV0UmVhZG9ubHldKSA9PiB7XG4gICAgICByZXR1cm4gKGNvbmZpZ1JlYWRvbmx5ID8/IGZhbHNlKSB8fCAoaW5wdXRSZWFkb25seSA/PyBmYWxzZSk7XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBzaG93QnV0dG9uc09uUmVhZG9ubHkkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5jb25maWckLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4LnNob3dCdXR0b25zT25SZWFkb25seSA/PyBmYWxzZSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHNob3dCdXR0b25zJCA9IHRoaXMuc2hvd0J1dHRvbnNPblJlYWRvbmx5JC5waXBlKFxuICAgIHN3aXRjaE1hcCgoeCkgPT4ge1xuICAgICAgaWYgKHgpIHtcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVhZG9ubHkkLnBpcGUobWFwKCh4KSA9PiAheCkpO1xuICAgICAgfVxuICAgIH0pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBzaG93Q2xlYXJTZWxlY3Rpb25CdXR0b24kID0gdGhpcy5jb25maWckLnBpcGUoXG4gICAgbWFwKChjb25maWcpID0+IGNvbmZpZy5zaG93Q2xlYXJTZWxlY3Rpb25CdXR0b24gPz8gdHJ1ZSksXG4gICAgY29tYmluZUxhdGVzdFdpdGgodGhpcy5zaG93QnV0dG9ucyQpLFxuICAgIG1hcCgoeCkgPT4gcmVkdWNlQm9vbGVhbnNXaXRoQW5kKHgpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZGF0ZVBvcG92ZXJCdXR0b25JbmplY3Rpb25Db25maWckOiBPYnNlcnZhYmxlPE1heWJlPERieEluamVjdGlvbkNvbXBvbmVudENvbmZpZzxhbnk+Pj4gPSB0aGlzLmNvbmZpZyQucGlwZShcbiAgICBtYXAoKHgpID0+IHguYnV0dG9uSW5qZWN0aW9uQ29uZmlnKSxcbiAgICBzd2l0Y2hNYXBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWcoRGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckRhdGVQb3BvdmVyQnV0dG9uQ29tcG9uZW50KSxcbiAgICBjb21iaW5lTGF0ZXN0V2l0aCh0aGlzLnNob3dCdXR0b25zJCksXG4gICAgbWFwKChbY29uZmlnLCBzaG93QnV0dG9uXSkgPT4gKHNob3dCdXR0b24gPyBjb25maWcgOiB1bmRlZmluZWQpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBjbGlja0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxEYnhDYWxlbmRhckV2ZW50PFQ+PigpO1xuXG4gIC8vIHJlZnJlc2ggYW55IHRpbWUgdGhlIHNlbGVjdGVkIGRheSBmdW5jdGlvbiB1cGRhdGVzXG4gIHJlYWRvbmx5IHN0YXRlJCA9IHRoaXMuZGJ4Q2FsZW5kYXJTY2hlZHVsZVNlbGVjdGlvblN0b3JlLnN0YXRlJDtcblxuICByZWFkb25seSBiZWZvcmVNb250aFZpZXdSZW5kZXIkID0gdGhpcy5jb25maWckLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB7XG4gICAgICBsZXQgZmFjdG9yeTogT2JzZXJ2YWJsZTxEYnhTY2hlZHVsZVNlbGVjdGlvbkNhbGVuZGFyQmVmb3JlTW9udGhWaWV3UmVuZGVyRnVuY3Rpb25GYWN0b3J5PjtcblxuICAgICAgaWYgKHguYmVmb3JlTW9udGhWaWV3UmVuZGVyRnVuY3Rpb25GYWN0b3J5KSB7XG4gICAgICAgIGZhY3RvcnkgPSBhc09ic2VydmFibGUoeC5iZWZvcmVNb250aFZpZXdSZW5kZXJGdW5jdGlvbkZhY3RvcnkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZmFjdG9yeSA9IGFzT2JzZXJ2YWJsZSh4LmN1c3RvbWl6ZURheSkucGlwZShtYXAoKHgpID0+IGRieFNjaGVkdWxlU2VsZWN0aW9uQ2FsZW5kYXJCZWZvcmVNb250aFZpZXdSZW5kZXJGYWN0b3J5KHgpKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmYWN0b3J5LnBpcGUobWFwKCh4KSA9PiB4KHRoaXMuc3RhdGUkKSkpO1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgcmVmcmVzaCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnN0YXRlJCwgdGhpcy5iZWZvcmVNb250aFZpZXdSZW5kZXIkXSkucGlwZShcbiAgICB0aHJvdHRsZVRpbWUoMjAsIHVuZGVmaW5lZCwgeyBsZWFkaW5nOiB0cnVlLCB0cmFpbGluZzogdHJ1ZSB9KSxcbiAgICBtYXAoKCkgPT4gdW5kZWZpbmVkKVxuICApIGFzIFN1YmplY3Q8dW5kZWZpbmVkPjtcblxuICByZWFkb25seSBldmVudHMkID0gdGhpcy5jYWxlbmRhclN0b3JlLnZpc2libGVFdmVudHMkLnBpcGUobWFwKHByZXBhcmVBbmRTb3J0Q2FsZW5kYXJFdmVudHMpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IHZpZXdEYXRlJCA9IHRoaXMuY2FsZW5kYXJTdG9yZS5kYXRlJDtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRieENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25TdG9yZS5zZXRWaWV3UmVhZG9ubHlTdGF0ZSh0aGlzLnJlYWRvbmx5JCk7IC8vIHN5bmMgdGhlIHJlYWRvbmx5IHN0YXRlXG5cbiAgICB0aGlzLmNhbGVuZGFyU3RvcmUuc2V0TmF2aWdhdGlvblJhbmdlTGltaXQodGhpcy5kYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmUubWluTWF4RGF0ZVJhbmdlJCk7IC8vIHNldCBuYXZpZ2F0aW9uIGxpbWl0IHRvIHRoZSBtaW4vbWF4IGFsbG93ZWQgZGF0ZXMuXG4gICAgdGhpcy5jYWxlbmRhclN0b3JlLnNldFNob3dQYWdlQnV0dG9ucyh0cnVlKTtcblxuICAgIC8vIHdoZW4gYSBuZXcgZmlsdGVyIGlzIHNldCwgaWYgdGhlIGZpcnN0IHR3byBwYWdlcyBvZiBzZWxlY3RhYmxlIGluZGV4ZXMgZml0IHdpdGhpbiB0aGUgY2FsZW5kYXIgbW9udGgsIGZvY3VzIG9uIHRoYXQgY2FsZW5kYXIgbW9udGguXG4gICAgdGhpcy5fY2VudGVyUmFuZ2VTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5kYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmUuY3VycmVudERhdGVSYW5nZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICBzd2l0Y2hNYXAoKHgpID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQ6IE9ic2VydmFibGU8W3R5cGVvZiB4LCBib29sZWFuXT4gPSB4XG4gICAgICAgICAgICA/IG9mKFt4LCB0cnVlXSlcbiAgICAgICAgICAgIDogdGhpcy5kYnhDYWxlbmRhclNjaGVkdWxlU2VsZWN0aW9uU3RvcmUubWluTWF4RGF0ZVJhbmdlJC5waXBlKFxuICAgICAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICAgICAgbWFwKCh5KSA9PiBbeSwgZmFsc2VdIGFzIFt0eXBlb2YgeCwgYm9vbGVhbl0pXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKFt4LCBpc0Zyb21TZWxlY3RlZERhdGVSYW5nZV0pID0+IHtcbiAgICAgICAgaWYgKHg/LnN0YXJ0KSB7XG4gICAgICAgICAgbGV0IHRhcERheTogTWF5YmU8RGF0ZT47XG4gICAgICAgICAgY29uc3Qgc3RhcnRNb250aCA9IGRhdGVSYW5nZSh7IGRhdGU6IHguc3RhcnQsIHR5cGU6IERhdGVSYW5nZVR5cGUuQ0FMRU5EQVJfTU9OVEggfSk7XG4gICAgICAgICAgY29uc3QgbW9udGhUb0ZvY3VzID0gZW5kT2ZXZWVrKHN0YXJ0TW9udGguc3RhcnQpO1xuXG4gICAgICAgICAgaWYgKHguZW5kICE9IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnN0IGVuZE1vbnRoID0gZGF0ZVJhbmdlKHsgZGF0ZTogeC5lbmQsIHR5cGU6IERhdGVSYW5nZVR5cGUuQ0FMRU5EQVJfTU9OVEggfSk7XG5cbiAgICAgICAgICAgIGlmIChpc1NhbWVEYXRlKHN0YXJ0TW9udGguc3RhcnQsIGVuZE1vbnRoLnN0YXJ0KSkge1xuICAgICAgICAgICAgICB0YXBEYXkgPSBtb250aFRvRm9jdXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKCF0YXBEYXkgJiYgaXNGcm9tU2VsZWN0ZWREYXRlUmFuZ2UpIHtcbiAgICAgICAgICAgIHRhcERheSA9IG1vbnRoVG9Gb2N1cztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodGFwRGF5KSB7XG4gICAgICAgICAgICB0aGlzLmNhbGVuZGFyU3RvcmUudGFwRGF5KHRhcERheSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY2xpY2tFdmVudC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2lucHV0UmVhZG9ubHkuY29tcGxldGUoKTtcbiAgICB0aGlzLl9jb25maWcuY29tcGxldGUoKTtcbiAgICB0aGlzLl9jZW50ZXJSYW5nZVN1Yi5kZXN0cm95KCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgY29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLl9jb25maWcudmFsdWU7XG4gIH1cblxuICBzZXQgY29uZmlnKGNvbmZpZzogTWF5YmU8RGJ4U2NoZWR1bGVTZWxlY3Rpb25DYWxlbmRhckNvbXBvbmVudENvbmZpZz4pIHtcbiAgICB0aGlzLl9jb25maWcubmV4dChjb25maWcgPz8ge30pO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHJlYWRvbmx5KHJlYWRvbmx5OiBNYXliZTxib29sZWFuPikge1xuICAgIHRoaXMuX2lucHV0UmVhZG9ubHkubmV4dChyZWFkb25seSk7XG4gIH1cblxuICBkYXlDbGlja2VkKHsgZGF0ZSB9OiB7IGRhdGU6IERhdGUgfSk6IHZvaWQge1xuICAgIHRoaXMucmVhZG9ubHkkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKChyZWFkb25seSkgPT4ge1xuICAgICAgaWYgKCFyZWFkb25seSkge1xuICAgICAgICB0aGlzLmRieENhbGVuZGFyU2NoZWR1bGVTZWxlY3Rpb25TdG9yZS50b2dnbGVTZWxlY3RlZERhdGVzKGRhdGUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZXZlbnRDbGlja2VkKGFjdGlvbjogc3RyaW5nLCBldmVudDogQ2FsZW5kYXJFdmVudDxUPik6IHZvaWQge1xuICAgIHRoaXMuY2xpY2tFdmVudC5lbWl0KHsgYWN0aW9uLCBldmVudCB9KTtcbiAgfVxuXG4gIGJlZm9yZU1vbnRoVmlld1JlbmRlcihyZW5kZXJFdmVudDogQ2FsZW5kYXJNb250aFZpZXdCZWZvcmVSZW5kZXJFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuYmVmb3JlTW9udGhWaWV3UmVuZGVyJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoeCkgPT4ge1xuICAgICAgeChyZW5kZXJFdmVudCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkYngtY2FsZW5kYXItYmFzZSBjbGFzcz1cImRieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXJcIiBbbmdDbGFzc109XCIocmVhZG9ubHkkIHwgYXN5bmMpID8gJ2RieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXItcmVhZG9ubHknIDogJydcIj5cbiAgPG5nLWNvbnRhaW5lciBjb250cm9scz5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0NsZWFyU2VsZWN0aW9uQnV0dG9uJCB8IGFzeW5jXCI+XG4gICAgICA8ZGJ4LXNjaGVkdWxlLXNlbGVjdGlvbi1jYWxlbmRhci1zZWxlY3Rpb24tdG9nZ2xlLWJ1dHRvbiBbZGlzYWJsZWRdPVwicmVhZG9ubHkkIHwgYXN5bmNcIj48L2RieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXItc2VsZWN0aW9uLXRvZ2dsZS1idXR0b24+XG4gICAgICA8ZGJ4LWJ1dHRvbi1zcGFjZXI+PC9kYngtYnV0dG9uLXNwYWNlcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8ZGJ4LWluamVjdGlvbiBbY29uZmlnXT1cImRhdGVQb3BvdmVyQnV0dG9uSW5qZWN0aW9uQ29uZmlnJCB8IGFzeW5jXCI+PC9kYngtaW5qZWN0aW9uPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPGRpdiBjbGFzcz1cImRieC1jYWxlbmRhci1jb250ZW50IGRieC1jYWxlbmRhci1jb250ZW50LW1vbnRoXCI+XG4gICAgPG13bC1jYWxlbmRhci1tb250aC12aWV3IFtyZWZyZXNoXT1cInJlZnJlc2gkXCIgW3ZpZXdEYXRlXT1cIih2aWV3RGF0ZSQgfCBhc3luYykhXCIgW2V2ZW50c109XCIoZXZlbnRzJCB8IGFzeW5jKSFcIiAoZGF5Q2xpY2tlZCk9XCJkYXlDbGlja2VkKCRldmVudC5kYXkpXCIgKGV2ZW50Q2xpY2tlZCk9XCJldmVudENsaWNrZWQoJ0NsaWNrZWQnLCAkZXZlbnQuZXZlbnQpXCIgKGJlZm9yZVZpZXdSZW5kZXIpPVwiYmVmb3JlTW9udGhWaWV3UmVuZGVyKCRldmVudClcIiBbY2VsbFRlbXBsYXRlXT1cIm1vbnRoRGF5Q2VsbFRlbXBsYXRlXCI+PC9td2wtY2FsZW5kYXItbW9udGgtdmlldz5cbiAgPC9kaXY+XG48L2RieC1jYWxlbmRhci1iYXNlPlxuXG48IS0tIENlbGwgLS0+XG48bmctdGVtcGxhdGUgI21vbnRoRGF5Q2VsbFRlbXBsYXRlIGxldC1kYXk9XCJkYXlcIiBsZXQtbG9jYWxlPVwibG9jYWxlXCI+XG4gIDxkaXYgY2xhc3M9XCJjYWwtY2VsbC10b3BcIj5cbiAgICA8c3BhbiBjbGFzcz1cImNhbC1kYXktYmFkZ2VcIiAqbmdJZj1cImRheS5iYWRnZVRvdGFsID4gMFwiPnt7IGRheS5iYWRnZVRvdGFsIH19PC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwiY2FsLWRheS1udW1iZXJcIj57eyBkYXkuZGF0ZSB8IGNhbGVuZGFyRGF0ZTogJ21vbnRoVmlld0RheU51bWJlcic6bG9jYWxlIH19PC9zcGFuPlxuICA8L2Rpdj5cbiAgPGRieC1zY2hlZHVsZS1zZWxlY3Rpb24tY2FsZW5kYXItY2VsbCBbZGF5XT1cImRheVwiPjwvZGJ4LXNjaGVkdWxlLXNlbGVjdGlvbi1jYWxlbmRhci1jZWxsPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|