cmat 0.0.8 → 0.0.10

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.
@@ -4,8 +4,12 @@ export * from './wrappers/card/card.component';
4
4
  export * from './wrappers/expansion/expansion.component';
5
5
  export * from './wrappers/panel/panel.component';
6
6
  export * from './types/button/button.component';
7
+ export * from './types/cascade/cascade.component';
7
8
  export * from './types/checklist/checklist.component';
8
9
  export * from './types/chips/chips.component';
10
+ export * from './types/color-picker/color-picker.component';
11
+ export * from './types/date-range/date-range.component';
12
+ export * from './types/datepicker/datepicker.component';
9
13
  export * from './types/multicheckbox/multicheckbox.component';
10
14
  export * from './types/number/number.component';
11
15
  export * from './types/rating/rating.component';
@@ -19,3 +23,4 @@ export * from './types/table/table.component';
19
23
  export * from './types/tabs/tab.component';
20
24
  export * from './types/tags/tags.component';
21
25
  export * from './types/textarea/textarea.component';
26
+ export * from './types/upload/upload.component';
@@ -0,0 +1,38 @@
1
+ import { HttpClient } from '@angular/common/http';
2
+ import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core';
3
+ import { FieldTypeConfig } from '@ngx-formly/core';
4
+ import { FieldType, FormlyFieldProps } from '@ngx-formly/material/form-field';
5
+ import { CmatMediaWatcherService } from 'cmat/services/media-watcher';
6
+ import * as i0 from "@angular/core";
7
+ interface ChipsCascadeProps extends FormlyFieldProps {
8
+ clearable: boolean;
9
+ fullLevels: boolean;
10
+ changeOnSelect: boolean;
11
+ domain?: {
12
+ url?: string;
13
+ code?: string;
14
+ key?: string;
15
+ value?: string;
16
+ };
17
+ }
18
+ export declare class CmatCascadeTypeComponent extends FieldType<FieldTypeConfig<ChipsCascadeProps>> implements OnInit, OnDestroy {
19
+ private _http;
20
+ private _changeDetectorRef;
21
+ private _cmatMediaWatcherService;
22
+ defaultOptions: {
23
+ props: {
24
+ clearable: boolean;
25
+ fullLevels: boolean;
26
+ changeOnSelect: boolean;
27
+ };
28
+ };
29
+ urlData: [];
30
+ isHandSet: boolean;
31
+ private _unsubscribeAll;
32
+ constructor(_http: HttpClient, _changeDetectorRef: ChangeDetectorRef, _cmatMediaWatcherService: CmatMediaWatcherService);
33
+ ngOnInit(): void;
34
+ ngOnDestroy(): void;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatCascadeTypeComponent, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatCascadeTypeComponent, "cmat-cascade-type", never, {}, {}, never, never, true, never>;
37
+ }
38
+ export {};
@@ -0,0 +1,7 @@
1
+ import { FieldTypeConfig } from '@ngx-formly/core';
2
+ import { FieldType } from '@ngx-formly/material';
3
+ import * as i0 from "@angular/core";
4
+ export declare class CmatColorPickerTypeComponent extends FieldType<FieldTypeConfig> {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatColorPickerTypeComponent, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatColorPickerTypeComponent, "cmat-color-picker-type", never, {}, {}, never, never, true, never>;
7
+ }
@@ -0,0 +1,20 @@
1
+ import { FieldTypeConfig } from '@ngx-formly/core';
2
+ import { FieldType, FormlyFieldProps } from '@ngx-formly/material/form-field';
3
+ import * as i0 from "@angular/core";
4
+ interface DateRangeProps extends FormlyFieldProps {
5
+ dateFormat: string;
6
+ timeFormat: string;
7
+ timeRange: boolean;
8
+ }
9
+ export declare class CmatDateRangeTypeComponent extends FieldType<FieldTypeConfig<DateRangeProps>> {
10
+ defaultOptions: {
11
+ props: {
12
+ dateFormat: string;
13
+ timeFormat: string;
14
+ timeRange: boolean;
15
+ };
16
+ };
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatDateRangeTypeComponent, never>;
18
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatDateRangeTypeComponent, "cmat-date-range-type", never, {}, {}, never, never, true, never>;
19
+ }
20
+ export {};
@@ -0,0 +1,41 @@
1
+ import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core';
2
+ import { FieldTypeConfig } from '@ngx-formly/core';
3
+ import { FieldType, FormlyFieldProps } from '@ngx-formly/material/form-field';
4
+ import { CmatCalendarView, CmatDatetimepickerMode, CmatDatetimepickerType } from 'cmat/components/material-datetimepicker';
5
+ import { CmatMediaWatcherService } from 'cmat/services/media-watcher';
6
+ import * as i0 from "@angular/core";
7
+ interface DatepickerProps extends FormlyFieldProps {
8
+ startView: CmatCalendarView;
9
+ mode: CmatDatetimepickerMode;
10
+ togglePosition: 'left' | 'right';
11
+ timeInterval: number;
12
+ type: CmatDatetimepickerType;
13
+ multiYearSelector: boolean;
14
+ twelvehour: boolean;
15
+ timeInput: boolean;
16
+ }
17
+ export declare class CmatDatepickerTypeComponent extends FieldType<FieldTypeConfig<DatepickerProps>> implements OnInit, OnDestroy {
18
+ private _changeDetectorRef;
19
+ private _cmatMediaWatcherService;
20
+ defaultOptions: {
21
+ props: {
22
+ startView: "month";
23
+ mode: "auto";
24
+ togglePosition: "left";
25
+ timeInterval: number;
26
+ type: "datetime";
27
+ multiYearSelector: boolean;
28
+ disabled: boolean;
29
+ timeInput: boolean;
30
+ twelvehour: boolean;
31
+ };
32
+ };
33
+ isHandSet: boolean;
34
+ private _unsubscribeAll;
35
+ constructor(_changeDetectorRef: ChangeDetectorRef, _cmatMediaWatcherService: CmatMediaWatcherService);
36
+ ngOnInit(): void;
37
+ ngOnDestroy(): void;
38
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatDatepickerTypeComponent, never>;
39
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatDatepickerTypeComponent, "cmat-datepicker-type", never, {}, {}, never, never, true, never>;
40
+ }
41
+ export {};
@@ -0,0 +1,31 @@
1
+ import { FieldTypeConfig } from '@ngx-formly/core';
2
+ import { FieldType, FormlyFieldProps } from '@ngx-formly/material/form-field';
3
+ import * as i0 from "@angular/core";
4
+ interface UploadProps extends FormlyFieldProps {
5
+ fileAlias: string;
6
+ filePath: string;
7
+ fileCategory: string;
8
+ multiple: boolean;
9
+ accept: string;
10
+ editMode: boolean;
11
+ autoUpload: boolean;
12
+ }
13
+ export declare class CmatUploadTypeComponent extends FieldType<FieldTypeConfig<UploadProps>> {
14
+ defaultOptions: {
15
+ props: {
16
+ fileAlias: string;
17
+ filePath: string;
18
+ fileCategory: string;
19
+ multiple: boolean;
20
+ accept: string;
21
+ editMode: boolean;
22
+ autoUpload: boolean;
23
+ };
24
+ };
25
+ upload(id: string): void;
26
+ remove(id: string): void;
27
+ updateData(i: any): void;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatUploadTypeComponent, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatUploadTypeComponent, "cmat-upload-type", never, {}, {}, never, never, true, never>;
30
+ }
31
+ export {};
@@ -4,8 +4,12 @@ export * from './wrappers/card/card.component';
4
4
  export * from './wrappers/expansion/expansion.component';
5
5
  export * from './wrappers/panel/panel.component';
6
6
  export * from './types/button/button.component';
7
+ export * from './types/cascade/cascade.component';
7
8
  export * from './types/checklist/checklist.component';
8
9
  export * from './types/chips/chips.component';
10
+ export * from './types/color-picker/color-picker.component';
11
+ export * from './types/date-range/date-range.component';
12
+ export * from './types/datepicker/datepicker.component';
9
13
  export * from './types/multicheckbox/multicheckbox.component';
10
14
  export * from './types/number/number.component';
11
15
  export * from './types/rating/rating.component';
@@ -19,4 +23,5 @@ export * from './types/table/table.component';
19
23
  export * from './types/tabs/tab.component';
20
24
  export * from './types/tags/tags.component';
21
25
  export * from './types/textarea/textarea.component';
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9jdXN0b20tZm9ybWx5L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGtDQUFrQyxDQUFDO0FBRWpELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMscUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2V4dGVuc2lvbi9hZGRvbnMuZXh0ZW5zaW9uJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vd3JhcHBlcnMvYWRkb25zL2FkZG9ucy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3dyYXBwZXJzL2NhcmQvY2FyZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3dyYXBwZXJzL2V4cGFuc2lvbi9leHBhbnNpb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi93cmFwcGVycy9wYW5lbC9wYW5lbC5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvY2hlY2tsaXN0L2NoZWNrbGlzdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvbXVsdGljaGVja2JveC9tdWx0aWNoZWNrYm94LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvbnVtYmVyL251bWJlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3JhdGluZy9yYXRpbmcuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9yYWRpby9yYWRpby5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3JlcGVhdC9yZXBlYXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvc2VsZWN0LXRyZWUvc2VsZWN0LXRyZWUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9zdGVwcGVyL2hvcml6b250YWwvc3RlcHBlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3N0ZXBwZXIvdmVydGljYWwvc3RlcHBlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvdGFicy90YWIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy90YWdzL3RhZ3MuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xyXG5cclxuXHJcbiJdfQ==
26
+ export * from './types/upload/upload.component';
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9jdXN0b20tZm9ybWx5L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGtDQUFrQyxDQUFDO0FBRWpELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9leHRlbnNpb24vYWRkb25zLmV4dGVuc2lvbic7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3dyYXBwZXJzL2FkZG9ucy9hZGRvbnMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi93cmFwcGVycy9jYXJkL2NhcmQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi93cmFwcGVycy9leHBhbnNpb24vZXhwYW5zaW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vd3JhcHBlcnMvcGFuZWwvcGFuZWwuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL2Nhc2NhZGUvY2FzY2FkZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL2NoZWNrbGlzdC9jaGVja2xpc3QuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9jaGlwcy9jaGlwcy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9kYXRlLXJhbmdlL2RhdGUtcmFuZ2UuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9tdWx0aWNoZWNrYm94L211bHRpY2hlY2tib3guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9udW1iZXIvbnVtYmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvcmF0aW5nL3JhdGluZy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvcmVwZWF0L3JlcGVhdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9zZWxlY3QtdHJlZS9zZWxlY3QtdHJlZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3N0ZXBwZXIvaG9yaXpvbnRhbC9zdGVwcGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvc3RlcHBlci92ZXJ0aWNhbC9zdGVwcGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvdGFibGUvdGFibGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcy90YWJzL3RhYi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3RhZ3MvdGFncy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3RleHRhcmVhL3RleHRhcmVhLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvdXBsb2FkL3VwbG9hZC5jb21wb25lbnQnO1xyXG5cclxuXHJcbiJdfQ==
@@ -0,0 +1,71 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { ReactiveFormsModule } from '@angular/forms';
3
+ import { FieldType } from '@ngx-formly/material/form-field';
4
+ import { Subject, takeUntil } from 'rxjs';
5
+ import { CmatCascadeListComponent } from 'cmat/components/cascade';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common/http";
8
+ import * as i2 from "cmat/services/media-watcher";
9
+ import * as i3 from "@angular/forms";
10
+ export class CmatCascadeTypeComponent extends FieldType {
11
+ constructor(_http, _changeDetectorRef, _cmatMediaWatcherService) {
12
+ super();
13
+ this._http = _http;
14
+ this._changeDetectorRef = _changeDetectorRef;
15
+ this._cmatMediaWatcherService = _cmatMediaWatcherService;
16
+ this.defaultOptions = {
17
+ props: {
18
+ clearable: false,
19
+ fullLevels: true,
20
+ changeOnSelect: false
21
+ },
22
+ };
23
+ this.urlData = [];
24
+ this._unsubscribeAll = new Subject();
25
+ }
26
+ ngOnInit() {
27
+ const url = this.props?.domain?.url;
28
+ if (url && this.props?.domain?.code && this.props?.domain?.key && this.props?.domain?.value) {
29
+ this._http.get(url).pipe(takeUntil(this._unsubscribeAll)).subscribe((data) => {
30
+ if (data) {
31
+ const datas = data.filter((i) => {
32
+ if (this.field.props?.domain?.key)
33
+ return i[this.field.props?.domain?.key] === this.field.props?.domain?.code;
34
+ return false;
35
+ });
36
+ if (datas && this.field.props?.domain?.value) {
37
+ this.urlData = datas[0][this.field.props?.domain?.value];
38
+ }
39
+ else {
40
+ this.urlData = [];
41
+ }
42
+ }
43
+ else {
44
+ this.urlData = [];
45
+ }
46
+ this._changeDetectorRef.markForCheck();
47
+ });
48
+ }
49
+ else {
50
+ this.urlData = [];
51
+ this._changeDetectorRef.markForCheck();
52
+ }
53
+ this._cmatMediaWatcherService.onMediaChange$
54
+ .pipe(takeUntil(this._unsubscribeAll))
55
+ .subscribe(({ matchingAliases }) => {
56
+ this.isHandSet = !matchingAliases.includes('lg');
57
+ this._changeDetectorRef.markForCheck();
58
+ });
59
+ }
60
+ ngOnDestroy() {
61
+ this._unsubscribeAll.next(void 0);
62
+ this._unsubscribeAll.complete();
63
+ }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatCascadeTypeComponent, deps: [{ token: i1.HttpClient }, { token: i0.ChangeDetectorRef }, { token: i2.CmatMediaWatcherService }], target: i0.ɵɵFactoryTarget.Component }); }
65
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: CmatCascadeTypeComponent, isStandalone: true, selector: "cmat-cascade-type", usesInheritance: true, ngImport: i0, template: "<cmat-cascade-list [formControl]=\"formControl\" [clearable]=\"props.clearable\" [fullLevels]=\"props.fullLevels\"\r\n [changeOnSelect]=\"props.changeOnSelect\" [placeholder]=\"placeholder\" [options]=\"urlData\" [tabIndex]=\"props.tabindex\"\r\n [required]=\"required\" [touchUi]=\"isHandSet\"></cmat-cascade-list>", styles: [":host{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: CmatCascadeListComponent, selector: "cmat-cascade-list", inputs: ["id", "options", "clearable", "fullLevels", "changeOnSelect", "touchUi", "placeholder", "value", "required", "disabled"], exportAs: ["cmatCascadeList"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatCascadeTypeComponent, decorators: [{
68
+ type: Component,
69
+ args: [{ selector: 'cmat-cascade-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [ReactiveFormsModule, CmatCascadeListComponent], template: "<cmat-cascade-list [formControl]=\"formControl\" [clearable]=\"props.clearable\" [fullLevels]=\"props.fullLevels\"\r\n [changeOnSelect]=\"props.changeOnSelect\" [placeholder]=\"placeholder\" [options]=\"urlData\" [tabIndex]=\"props.tabindex\"\r\n [required]=\"required\" [touchUi]=\"isHandSet\"></cmat-cascade-list>", styles: [":host{width:100%}\n"] }]
70
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i0.ChangeDetectorRef }, { type: i2.CmatMediaWatcherService }] });
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzY2FkZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvY3VzdG9tLWZvcm1seS90eXBlcy9jYXNjYWRlL2Nhc2NhZGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2N1c3RvbS1mb3JtbHkvdHlwZXMvY2FzY2FkZS9jYXNjYWRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsU0FBUyxFQUFvQixNQUFNLGlDQUFpQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7OztBQXVCbkUsTUFBTSxPQUFPLHdCQUF5QixTQUFRLFNBQTZDO0lBYXZGLFlBQW9CLEtBQWlCLEVBQVUsa0JBQXFDLEVBQVUsd0JBQWlEO1FBQzNJLEtBQUssRUFBRSxDQUFDO1FBRFEsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUFVLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFBVSw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBWnRJLG1CQUFjLEdBQUc7WUFDdEIsS0FBSyxFQUFFO2dCQUNILFNBQVMsRUFBRSxLQUFLO2dCQUNoQixVQUFVLEVBQUUsSUFBSTtnQkFDaEIsY0FBYyxFQUFFLEtBQUs7YUFDeEI7U0FDSixDQUFDO1FBQ0YsWUFBTyxHQUFPLEVBQUUsQ0FBQztRQUdULG9CQUFlLEdBQWlCLElBQUksT0FBTyxFQUFPLENBQUM7SUFJM0QsQ0FBQztJQUVELFFBQVE7UUFDSixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUM7UUFDcEMsSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7WUFDekYsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQy9ELENBQUMsSUFBUyxFQUFFLEVBQUU7Z0JBQ1YsSUFBSSxJQUFJLEVBQUU7b0JBQ04sTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFO3dCQUNqQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxHQUFHOzRCQUM3QixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQzt3QkFFL0UsT0FBTyxLQUFLLENBQUM7b0JBQ2pCLENBQUMsQ0FDQSxDQUFDO29CQUNGLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7d0JBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztxQkFDNUQ7eUJBQU07d0JBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7cUJBQ3JCO2lCQUNKO3FCQUFNO29CQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO2lCQUNyQjtnQkFDRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDM0MsQ0FBQyxDQUNKLENBQUM7U0FDTDthQUFNO1lBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFFbEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1NBQzFDO1FBRUQsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGNBQWM7YUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDckMsU0FBUyxDQUFDLENBQUMsRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFO1lBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRWpELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFUSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDOzhHQTNEUSx3QkFBd0I7a0dBQXhCLHdCQUF3QixvR0M3QnJDLG1VQUVvRSw0RUR5QnRELG1CQUFtQix1aEJBQUUsd0JBQXdCOzsyRkFFOUMsd0JBQXdCO2tCQVJwQyxTQUFTOytCQUNJLG1CQUFtQixtQkFHWix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZpZWxkVHlwZUNvbmZpZyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUsIEZvcm1seUZpZWxkUHJvcHMgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENtYXRDYXNjYWRlTGlzdENvbXBvbmVudCB9IGZyb20gJ2NtYXQvY29tcG9uZW50cy9jYXNjYWRlJztcclxuaW1wb3J0IHsgQ21hdE1lZGlhV2F0Y2hlclNlcnZpY2UgfSBmcm9tICdjbWF0L3NlcnZpY2VzL21lZGlhLXdhdGNoZXInO1xyXG5cclxuaW50ZXJmYWNlIENoaXBzQ2FzY2FkZVByb3BzIGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XHJcbiAgICBjbGVhcmFibGU6IGJvb2xlYW47XHJcbiAgICBmdWxsTGV2ZWxzOiBib29sZWFuO1xyXG4gICAgY2hhbmdlT25TZWxlY3Q6IGJvb2xlYW47XHJcbiAgICBkb21haW4/OiB7XHJcbiAgICAgICAgdXJsPzogc3RyaW5nO1xyXG4gICAgICAgIGNvZGU/OiBzdHJpbmc7XHJcbiAgICAgICAga2V5Pzogc3RyaW5nO1xyXG4gICAgICAgIHZhbHVlPzogc3RyaW5nO1xyXG4gICAgfVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC1jYXNjYWRlLXR5cGUnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Nhc2NhZGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vY2FzY2FkZS5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW1JlYWN0aXZlRm9ybXNNb2R1bGUsIENtYXRDYXNjYWRlTGlzdENvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRDYXNjYWRlVHlwZUNvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZTxGaWVsZFR5cGVDb25maWc8Q2hpcHNDYXNjYWRlUHJvcHM+PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIG92ZXJyaWRlIGRlZmF1bHRPcHRpb25zID0ge1xyXG4gICAgICAgIHByb3BzOiB7XHJcbiAgICAgICAgICAgIGNsZWFyYWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgIGZ1bGxMZXZlbHM6IHRydWUsXHJcbiAgICAgICAgICAgIGNoYW5nZU9uU2VsZWN0OiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICB9O1xyXG4gICAgdXJsRGF0YTogW10gPSBbXTtcclxuICAgIGlzSGFuZFNldDogYm9vbGVhbjtcclxuXHJcbiAgICBwcml2YXRlIF91bnN1YnNjcmliZUFsbDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2h0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBfY21hdE1lZGlhV2F0Y2hlclNlcnZpY2U6IENtYXRNZWRpYVdhdGNoZXJTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB1cmwgPSB0aGlzLnByb3BzPy5kb21haW4/LnVybDtcclxuICAgICAgICBpZiAodXJsICYmIHRoaXMucHJvcHM/LmRvbWFpbj8uY29kZSAmJiB0aGlzLnByb3BzPy5kb21haW4/LmtleSAmJiB0aGlzLnByb3BzPy5kb21haW4/LnZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2h0dHAuZ2V0KHVybCkucGlwZSh0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YXMgPSBkYXRhLmZpbHRlcigoaTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy5rZXkpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGlbdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy5rZXldID09PSB0aGlzLmZpZWxkLnByb3BzPy5kb21haW4/LmNvZGU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkYXRhcyAmJiB0aGlzLmZpZWxkLnByb3BzPy5kb21haW4/LnZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnVybERhdGEgPSBkYXRhc1swXVt0aGlzLmZpZWxkLnByb3BzPy5kb21haW4/LnZhbHVlXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXJsRGF0YSA9IFtdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy51cmxEYXRhID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMudXJsRGF0YSA9IFtdO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLl9jbWF0TWVkaWFXYXRjaGVyU2VydmljZS5vbk1lZGlhQ2hhbmdlJFxyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh7IG1hdGNoaW5nQWxpYXNlcyB9KSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmlzSGFuZFNldCA9ICFtYXRjaGluZ0FsaWFzZXMuaW5jbHVkZXMoJ2xnJyk7XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3Vuc3Vic2NyaWJlQWxsLm5leHQodm9pZCAwKTtcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5jb21wbGV0ZSgpO1xyXG4gICAgfVxyXG59IiwiPGNtYXQtY2FzY2FkZS1saXN0IFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiIFtjbGVhcmFibGVdPVwicHJvcHMuY2xlYXJhYmxlXCIgW2Z1bGxMZXZlbHNdPVwicHJvcHMuZnVsbExldmVsc1wiXHJcbiAgICBbY2hhbmdlT25TZWxlY3RdPVwicHJvcHMuY2hhbmdlT25TZWxlY3RcIiBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbb3B0aW9uc109XCJ1cmxEYXRhXCIgW3RhYkluZGV4XT1cInByb3BzLnRhYmluZGV4XCJcclxuICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiIFt0b3VjaFVpXT1cImlzSGFuZFNldFwiPjwvY21hdC1jYXNjYWRlLWxpc3Q+Il19
@@ -0,0 +1,15 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { ReactiveFormsModule } from '@angular/forms';
3
+ import { FieldType } from '@ngx-formly/material';
4
+ import { CmatMaterialColorPickerComponent } from 'cmat/components/material-color-picker';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/forms";
7
+ export class CmatColorPickerTypeComponent extends FieldType {
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatColorPickerTypeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: CmatColorPickerTypeComponent, isStandalone: true, selector: "cmat-color-picker-type", usesInheritance: true, ngImport: i0, template: "<cmat-material-color-picker [title]=\"props.label??''\" [formControl]=\"formControl\" [readonly]=\"disabled\"\r\n [tabindex]=\"props.tabindex\"></cmat-material-color-picker>", styles: [":host{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: CmatMaterialColorPickerComponent, selector: "cmat-material-color-picker", inputs: ["color", "title", "readonly"], outputs: ["colorChanged"], exportAs: ["cmatMaterialColorPicker"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatColorPickerTypeComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: 'cmat-color-picker-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [ReactiveFormsModule, CmatMaterialColorPickerComponent], template: "<cmat-material-color-picker [title]=\"props.label??''\" [formControl]=\"formControl\" [readonly]=\"disabled\"\r\n [tabindex]=\"props.tabindex\"></cmat-material-color-picker>", styles: [":host{width:100%}\n"] }]
14
+ }] });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9jdXN0b20tZm9ybWx5L3R5cGVzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2N1c3RvbS1mb3JtbHkvdHlwZXMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBVXpGLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxTQUEwQjs4R0FBL0QsNEJBQTRCO2tHQUE1Qiw0QkFBNEIseUdDZHpDLGtMQUM2RCw0RURXL0MsbUJBQW1CLDBUQUFDLGdDQUFnQzs7MkZBRXJELDRCQUE0QjtrQkFSeEMsU0FBUzsrQkFDSSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZpZWxkVHlwZUNvbmZpZyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbCc7XHJcbmltcG9ydCB7IENtYXRNYXRlcmlhbENvbG9yUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnY21hdC9jb21wb25lbnRzL21hdGVyaWFsLWNvbG9yLXBpY2tlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC1jb2xvci1waWNrZXItdHlwZScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczpbJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbUmVhY3RpdmVGb3Jtc01vZHVsZSxDbWF0TWF0ZXJpYWxDb2xvclBpY2tlckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRDb2xvclBpY2tlclR5cGVDb21wb25lbnQgZXh0ZW5kcyBGaWVsZFR5cGU8RmllbGRUeXBlQ29uZmlnPiB7XHJcbn0iLCI8Y21hdC1tYXRlcmlhbC1jb2xvci1waWNrZXIgW3RpdGxlXT1cInByb3BzLmxhYmVsPz8nJ1wiIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiIFtyZWFkb25seV09XCJkaXNhYmxlZFwiXHJcbiAgICBbdGFiaW5kZXhdPVwicHJvcHMudGFiaW5kZXhcIj48L2NtYXQtbWF0ZXJpYWwtY29sb3ItcGlja2VyPiJdfQ==
@@ -0,0 +1,25 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { ReactiveFormsModule } from '@angular/forms';
3
+ import { FieldType } from '@ngx-formly/material/form-field';
4
+ import { CmatDateRangeComponent } from 'cmat/components/date-range';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/forms";
7
+ export class CmatDateRangeTypeComponent extends FieldType {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.defaultOptions = {
11
+ props: {
12
+ dateFormat: 'YYYY/MM/DD',
13
+ timeFormat: '24',
14
+ timeRange: true
15
+ },
16
+ };
17
+ }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatDateRangeTypeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: CmatDateRangeTypeComponent, isStandalone: true, selector: "cmat-date-range-type", usesInheritance: true, ngImport: i0, template: "<cmat-date-range [dateFormat]=\"props.dateFormat\" [timeFormat]=\"props.timeFormat\" [timeRange]=\"props.timeRange\" \r\n[formControl]=\"formControl\" [tabindex]=\"props.tabindex\" [readonly]=\"disabled\">\r\n</cmat-date-range>", styles: [":host{width:100%}\n"], dependencies: [{ kind: "component", type: CmatDateRangeComponent, selector: "cmat-date-range", inputs: ["readonly", "dateFormat", "timeFormat", "timeRange", "range"], outputs: ["rangeChanged"], exportAs: ["cmatDateRange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatDateRangeTypeComponent, decorators: [{
22
+ type: Component,
23
+ args: [{ selector: 'cmat-date-range-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CmatDateRangeComponent, ReactiveFormsModule], template: "<cmat-date-range [dateFormat]=\"props.dateFormat\" [timeFormat]=\"props.timeFormat\" [timeRange]=\"props.timeRange\" \r\n[formControl]=\"formControl\" [tabindex]=\"props.tabindex\" [readonly]=\"disabled\">\r\n</cmat-date-range>", styles: [":host{width:100%}\n"] }]
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvY3VzdG9tLWZvcm1seS90eXBlcy9kYXRlLXJhbmdlL2RhdGUtcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2N1c3RvbS1mb3JtbHkvdHlwZXMvZGF0ZS1yYW5nZS9kYXRlLXJhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckQsT0FBTyxFQUFFLFNBQVMsRUFBb0IsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBZ0JwRSxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsU0FBMEM7SUFSMUY7O1FBU2EsbUJBQWMsR0FBRztZQUN0QixLQUFLLEVBQUU7Z0JBQ0gsVUFBVSxFQUFFLFlBQVk7Z0JBQ3hCLFVBQVUsRUFBRSxJQUFJO2dCQUNoQixTQUFTLEVBQUUsSUFBSTthQUNsQjtTQUNKLENBQUM7S0FDTDs4R0FSWSwwQkFBMEI7a0dBQTFCLDBCQUEwQix1R0NwQnZDLHFPQUVrQiw2RURnQkosc0JBQXNCLDJMQUFDLG1CQUFtQjs7MkZBRTNDLDBCQUEwQjtrQkFSdEMsU0FBUzsrQkFDSSxzQkFBc0IsbUJBR2YsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxzQkFBc0IsRUFBQyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRmllbGRUeXBlQ29uZmlnIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XHJcbmltcG9ydCB7IEZpZWxkVHlwZSwgRm9ybWx5RmllbGRQcm9wcyB9IGZyb20gJ0BuZ3gtZm9ybWx5L21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBDbWF0RGF0ZVJhbmdlQ29tcG9uZW50IH0gZnJvbSAnY21hdC9jb21wb25lbnRzL2RhdGUtcmFuZ2UnO1xyXG5cclxuaW50ZXJmYWNlIERhdGVSYW5nZVByb3BzIGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XHJcbiAgICBkYXRlRm9ybWF0OiBzdHJpbmc7XHJcbiAgICB0aW1lRm9ybWF0OiBzdHJpbmc7XHJcbiAgICB0aW1lUmFuZ2U6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjbWF0LWRhdGUtcmFuZ2UtdHlwZScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1yYW5nZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9kYXRlLXJhbmdlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbQ21hdERhdGVSYW5nZUNvbXBvbmVudCxSZWFjdGl2ZUZvcm1zTW9kdWxlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdERhdGVSYW5nZVR5cGVDb21wb25lbnQgZXh0ZW5kcyBGaWVsZFR5cGU8RmllbGRUeXBlQ29uZmlnPERhdGVSYW5nZVByb3BzPj57XHJcbiAgICBvdmVycmlkZSBkZWZhdWx0T3B0aW9ucyA9IHtcclxuICAgICAgICBwcm9wczoge1xyXG4gICAgICAgICAgICBkYXRlRm9ybWF0OiAnWVlZWS9NTS9ERCcsXHJcbiAgICAgICAgICAgIHRpbWVGb3JtYXQ6ICcyNCcsXHJcbiAgICAgICAgICAgIHRpbWVSYW5nZTogdHJ1ZVxyXG4gICAgICAgIH0sXHJcbiAgICB9O1xyXG59IiwiPGNtYXQtZGF0ZS1yYW5nZSBbZGF0ZUZvcm1hdF09XCJwcm9wcy5kYXRlRm9ybWF0XCIgW3RpbWVGb3JtYXRdPVwicHJvcHMudGltZUZvcm1hdFwiIFt0aW1lUmFuZ2VdPVwicHJvcHMudGltZVJhbmdlXCIgXHJcbltmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiIFt0YWJpbmRleF09XCJwcm9wcy50YWJpbmRleFwiIFtyZWFkb25seV09XCJkaXNhYmxlZFwiPlxyXG48L2NtYXQtZGF0ZS1yYW5nZT4iXX0=
@@ -0,0 +1,51 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
3
+ import { MatInputModule } from '@angular/material/input';
4
+ import { FieldType } from '@ngx-formly/material/form-field';
5
+ import { Subject, takeUntil } from 'rxjs';
6
+ import { CmatDatetimepickerComponent, CmatDatetimepickerInputDirective, CmatDatetimepickerToggleComponent } from 'cmat/components/material-datetimepicker';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "cmat/services/media-watcher";
9
+ import * as i2 from "@angular/material/input";
10
+ import * as i3 from "@angular/material/form-field";
11
+ import * as i4 from "@angular/forms";
12
+ export class CmatDatepickerTypeComponent extends FieldType {
13
+ constructor(_changeDetectorRef, _cmatMediaWatcherService) {
14
+ super();
15
+ this._changeDetectorRef = _changeDetectorRef;
16
+ this._cmatMediaWatcherService = _cmatMediaWatcherService;
17
+ this.defaultOptions = {
18
+ props: {
19
+ startView: 'month',
20
+ mode: 'auto',
21
+ togglePosition: 'left',
22
+ timeInterval: 5,
23
+ type: 'datetime',
24
+ multiYearSelector: false,
25
+ disabled: false,
26
+ timeInput: true,
27
+ twelvehour: false
28
+ }
29
+ };
30
+ this._unsubscribeAll = new Subject();
31
+ }
32
+ ngOnInit() {
33
+ this._cmatMediaWatcherService.onMediaChange$
34
+ .pipe(takeUntil(this._unsubscribeAll))
35
+ .subscribe(({ matchingAliases }) => {
36
+ this.isHandSet = !matchingAliases.includes('lg');
37
+ this._changeDetectorRef.markForCheck();
38
+ });
39
+ }
40
+ ngOnDestroy() {
41
+ this._unsubscribeAll.next(void 0);
42
+ this._unsubscribeAll.complete();
43
+ }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatDatepickerTypeComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.CmatMediaWatcherService }], target: i0.ɵɵFactoryTarget.Component }); }
45
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.7", type: CmatDatepickerTypeComponent, isStandalone: true, selector: "cmat-datepicker-type", usesInheritance: true, ngImport: i0, template: "@if(props.togglePosition==='left'){\r\n<cmat-datetimepicker-toggle [for]=\"datetimePicker\" [disabled]=\"disabled\" matPrefix></cmat-datetimepicker-toggle>\r\n}\r\n\r\n<cmat-datetimepicker #datetimePicker openOnFocus=\"true\" [startView]=\"props.startView\" [mode]=\"props.mode\"\r\n [timeInterval]=\"props.timeInterval\" [twelvehour]=\"props.twelvehour\" [type]=\"props.type\"\r\n [multiYearSelector]=\"props.multiYearSelector\" [timeInput]=\"props.timeInput\" [touchUi]=\"isHandSet\"\r\n [disabled]=\"disabled\"></cmat-datetimepicker>\r\n\r\n<input [cmatDatetimepicker]=\"datetimePicker\" [required]=\"required\" [formControl]=\"formControl\" autocomplete=\"false\"\r\n [placeholder]=\"placeholder\" matInput />\r\n\r\n@if(props.togglePosition==='right'){\r\n<cmat-datetimepicker-toggle [for]=\"datetimePicker\" [disabled]=\"disabled\" matSuffix></cmat-datetimepicker-toggle>\r\n}", dependencies: [{ kind: "component", type: CmatDatetimepickerToggleComponent, selector: "cmat-datetimepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disableRipple", "disabled"], exportAs: ["cmatDatetimepickerToggle"] }, { kind: "directive", type: CmatDatetimepickerInputDirective, selector: "input[cmatDatetimepicker]", inputs: ["cmatDatetimepicker", "cmatDatepickerFilter", "value", "min", "max", "disabled"], outputs: ["dateChange", "dateInput"], exportAs: ["cmatDatepickerInput"] }, { kind: "component", type: CmatDatetimepickerComponent, selector: "cmat-datetimepicker", inputs: ["startView", "mode", "timeInterval", "preventSameDateTimeSelection", "xPosition", "yPosition", "multiYearSelector", "twelvehour", "panelClass", "opened", "color", "startAt", "type", "timeInput", "touchUi", "disabled", "restoreFocus"], outputs: ["selectedChanged", "openedStream", "closedStream", "viewChanged"], exportAs: ["cmatDatetimepicker"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatDatepickerTypeComponent, decorators: [{
48
+ type: Component,
49
+ args: [{ selector: 'cmat-datepicker-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CmatDatetimepickerToggleComponent, CmatDatetimepickerInputDirective, CmatDatetimepickerComponent, MatInputModule, FormsModule, ReactiveFormsModule], template: "@if(props.togglePosition==='left'){\r\n<cmat-datetimepicker-toggle [for]=\"datetimePicker\" [disabled]=\"disabled\" matPrefix></cmat-datetimepicker-toggle>\r\n}\r\n\r\n<cmat-datetimepicker #datetimePicker openOnFocus=\"true\" [startView]=\"props.startView\" [mode]=\"props.mode\"\r\n [timeInterval]=\"props.timeInterval\" [twelvehour]=\"props.twelvehour\" [type]=\"props.type\"\r\n [multiYearSelector]=\"props.multiYearSelector\" [timeInput]=\"props.timeInput\" [touchUi]=\"isHandSet\"\r\n [disabled]=\"disabled\"></cmat-datetimepicker>\r\n\r\n<input [cmatDatetimepicker]=\"datetimePicker\" [required]=\"required\" [formControl]=\"formControl\" autocomplete=\"false\"\r\n [placeholder]=\"placeholder\" matInput />\r\n\r\n@if(props.togglePosition==='right'){\r\n<cmat-datetimepicker-toggle [for]=\"datetimePicker\" [disabled]=\"disabled\" matSuffix></cmat-datetimepicker-toggle>\r\n}" }]
50
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.CmatMediaWatcherService }] });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvY3VzdG9tLWZvcm1seS90eXBlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2N1c3RvbS1mb3JtbHkvdHlwZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpELE9BQU8sRUFBRSxTQUFTLEVBQW9CLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFvQiwyQkFBMkIsRUFBRSxnQ0FBZ0MsRUFBMEIsaUNBQWlDLEVBQTBCLE1BQU0seUNBQXlDLENBQUM7Ozs7OztBQXFCN04sTUFBTSxPQUFPLDJCQUE0QixTQUFRLFNBQTJDO0lBbUJ4RixZQUNZLGtCQUFxQyxFQUNyQyx3QkFBaUQ7UUFFekQsS0FBSyxFQUFFLENBQUM7UUFIQSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQ3JDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFwQnBELG1CQUFjLEdBQUc7WUFDdEIsS0FBSyxFQUFFO2dCQUNILFNBQVMsRUFBRSxPQUFnQjtnQkFDM0IsSUFBSSxFQUFFLE1BQWU7Z0JBQ3JCLGNBQWMsRUFBRSxNQUFlO2dCQUMvQixZQUFZLEVBQUUsQ0FBQztnQkFDZixJQUFJLEVBQUUsVUFBbUI7Z0JBQ3pCLGlCQUFpQixFQUFFLEtBQUs7Z0JBQ3hCLFFBQVEsRUFBRSxLQUFLO2dCQUNmLFNBQVMsRUFBRSxJQUFJO2dCQUNmLFVBQVUsRUFBRSxLQUFLO2FBQ3BCO1NBQ0osQ0FBQztRQUlNLG9CQUFlLEdBQWtCLElBQUksT0FBTyxFQUFRLENBQUM7SUFPN0QsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsd0JBQXdCLENBQUMsY0FBYzthQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUNyQyxTQUFTLENBQUMsQ0FBQyxFQUFFLGVBQWUsRUFBRSxFQUFFLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFakQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVRLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BDLENBQUM7OEdBdkNRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLHVHQzNCeEMsZzRCQWNDLDRDRFdhLGlDQUFpQyx1TEFBRSxnQ0FBZ0MsME9BQUUsMkJBQTJCLGthQUFFLGNBQWMsNG1CQUFFLFdBQVcsbW5CQUFFLG1CQUFtQjs7MkZBRW5KLDJCQUEyQjtrQkFQdkMsU0FBUzsrQkFDSSxzQkFBc0IsbUJBRWYsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxpQ0FBaUMsRUFBRSxnQ0FBZ0MsRUFBRSwyQkFBMkIsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgRmllbGRUeXBlQ29uZmlnIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XHJcbmltcG9ydCB7IEZpZWxkVHlwZSwgRm9ybWx5RmllbGRQcm9wcyB9IGZyb20gJ0BuZ3gtZm9ybWx5L21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ21hdENhbGVuZGFyVmlldywgQ21hdERhdGV0aW1lcGlja2VyQ29tcG9uZW50LCBDbWF0RGF0ZXRpbWVwaWNrZXJJbnB1dERpcmVjdGl2ZSwgQ21hdERhdGV0aW1lcGlja2VyTW9kZSwgQ21hdERhdGV0aW1lcGlja2VyVG9nZ2xlQ29tcG9uZW50LCBDbWF0RGF0ZXRpbWVwaWNrZXJUeXBlIH0gZnJvbSAnY21hdC9jb21wb25lbnRzL21hdGVyaWFsLWRhdGV0aW1lcGlja2VyJztcclxuaW1wb3J0IHsgQ21hdE1lZGlhV2F0Y2hlclNlcnZpY2UgfSBmcm9tICdjbWF0L3NlcnZpY2VzL21lZGlhLXdhdGNoZXInO1xyXG5cclxuaW50ZXJmYWNlIERhdGVwaWNrZXJQcm9wcyBleHRlbmRzIEZvcm1seUZpZWxkUHJvcHMge1xyXG4gICAgc3RhcnRWaWV3OiBDbWF0Q2FsZW5kYXJWaWV3O1xyXG4gICAgbW9kZTogQ21hdERhdGV0aW1lcGlja2VyTW9kZTtcclxuICAgIHRvZ2dsZVBvc2l0aW9uOiAnbGVmdCcgfCAncmlnaHQnO1xyXG4gICAgdGltZUludGVydmFsOiBudW1iZXI7XHJcbiAgICB0eXBlOiBDbWF0RGF0ZXRpbWVwaWNrZXJUeXBlO1xyXG4gICAgbXVsdGlZZWFyU2VsZWN0b3I6IGJvb2xlYW47XHJcbiAgICB0d2VsdmVob3VyOiBib29sZWFuO1xyXG4gICAgdGltZUlucHV0OiBib29sZWFuO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC1kYXRlcGlja2VyLXR5cGUnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW0NtYXREYXRldGltZXBpY2tlclRvZ2dsZUNvbXBvbmVudCwgQ21hdERhdGV0aW1lcGlja2VySW5wdXREaXJlY3RpdmUsIENtYXREYXRldGltZXBpY2tlckNvbXBvbmVudCwgTWF0SW5wdXRNb2R1bGUsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdERhdGVwaWNrZXJUeXBlQ29tcG9uZW50IGV4dGVuZHMgRmllbGRUeXBlPEZpZWxkVHlwZUNvbmZpZzxEYXRlcGlja2VyUHJvcHM+PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIG92ZXJyaWRlIGRlZmF1bHRPcHRpb25zID0ge1xyXG4gICAgICAgIHByb3BzOiB7XHJcbiAgICAgICAgICAgIHN0YXJ0VmlldzogJ21vbnRoJyBhcyBjb25zdCxcclxuICAgICAgICAgICAgbW9kZTogJ2F1dG8nIGFzIGNvbnN0LFxyXG4gICAgICAgICAgICB0b2dnbGVQb3NpdGlvbjogJ2xlZnQnIGFzIGNvbnN0LFxyXG4gICAgICAgICAgICB0aW1lSW50ZXJ2YWw6IDUsXHJcbiAgICAgICAgICAgIHR5cGU6ICdkYXRldGltZScgYXMgY29uc3QsXHJcbiAgICAgICAgICAgIG11bHRpWWVhclNlbGVjdG9yOiBmYWxzZSxcclxuICAgICAgICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICAgICAgICB0aW1lSW5wdXQ6IHRydWUsXHJcbiAgICAgICAgICAgIHR3ZWx2ZWhvdXI6IGZhbHNlXHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuXHJcbiAgICBpc0hhbmRTZXQ6IGJvb2xlYW47XHJcblxyXG4gICAgcHJpdmF0ZSBfdW5zdWJzY3JpYmVBbGw6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgICAgICBwcml2YXRlIF9jbWF0TWVkaWFXYXRjaGVyU2VydmljZTogQ21hdE1lZGlhV2F0Y2hlclNlcnZpY2VcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY21hdE1lZGlhV2F0Y2hlclNlcnZpY2Uub25NZWRpYUNoYW5nZSRcclxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoeyBtYXRjaGluZ0FsaWFzZXMgfSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pc0hhbmRTZXQgPSAhbWF0Y2hpbmdBbGlhc2VzLmluY2x1ZGVzKCdsZycpO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxufSIsIkBpZihwcm9wcy50b2dnbGVQb3NpdGlvbj09PSdsZWZ0Jyl7XHJcbjxjbWF0LWRhdGV0aW1lcGlja2VyLXRvZ2dsZSBbZm9yXT1cImRhdGV0aW1lUGlja2VyXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgbWF0UHJlZml4PjwvY21hdC1kYXRldGltZXBpY2tlci10b2dnbGU+XHJcbn1cclxuXHJcbjxjbWF0LWRhdGV0aW1lcGlja2VyICNkYXRldGltZVBpY2tlciBvcGVuT25Gb2N1cz1cInRydWVcIiBbc3RhcnRWaWV3XT1cInByb3BzLnN0YXJ0Vmlld1wiIFttb2RlXT1cInByb3BzLm1vZGVcIlxyXG4gICAgW3RpbWVJbnRlcnZhbF09XCJwcm9wcy50aW1lSW50ZXJ2YWxcIiBbdHdlbHZlaG91cl09XCJwcm9wcy50d2VsdmVob3VyXCIgW3R5cGVdPVwicHJvcHMudHlwZVwiXHJcbiAgICBbbXVsdGlZZWFyU2VsZWN0b3JdPVwicHJvcHMubXVsdGlZZWFyU2VsZWN0b3JcIiBbdGltZUlucHV0XT1cInByb3BzLnRpbWVJbnB1dFwiIFt0b3VjaFVpXT1cImlzSGFuZFNldFwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj48L2NtYXQtZGF0ZXRpbWVwaWNrZXI+XHJcblxyXG48aW5wdXQgW2NtYXREYXRldGltZXBpY2tlcl09XCJkYXRldGltZVBpY2tlclwiIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiIGF1dG9jb21wbGV0ZT1cImZhbHNlXCJcclxuICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIG1hdElucHV0IC8+XHJcblxyXG5AaWYocHJvcHMudG9nZ2xlUG9zaXRpb249PT0ncmlnaHQnKXtcclxuPGNtYXQtZGF0ZXRpbWVwaWNrZXItdG9nZ2xlIFtmb3JdPVwiZGF0ZXRpbWVQaWNrZXJcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBtYXRTdWZmaXg+PC9jbWF0LWRhdGV0aW1lcGlja2VyLXRvZ2dsZT5cclxufSJdfQ==
@@ -4,7 +4,7 @@ import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';
4
4
  import { MatCheckboxModule } from '@angular/material/checkbox';
5
5
  import { MatIconModule } from '@angular/material/icon';
6
6
  import { FieldType } from '@ngx-formly/material/form-field';
7
- import { isArray } from 'lodash';
7
+ import { isArray } from 'lodash-es';
8
8
  import { Subject, takeUntil, BehaviorSubject } from 'rxjs';
9
9
  import * as i0 from "@angular/core";
10
10
  import * as i1 from "@angular/common/http";
@@ -146,4 +146,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
146
146
  type: ViewChild,
147
147
  args: ['tagsPanel']
148
148
  }] } });
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvY3VzdG9tLWZvcm1seS90eXBlcy90YWdzL3RhZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2N1c3RvbS1mb3JtbHkvdHlwZXMvdGFncy90YWdzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQThDLFNBQVMsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDL0osT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxTQUFTLEVBQW9CLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNqQyxPQUFPLEVBQWMsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7OztBQW1CdkUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFNBQXFDO0lBWTVFLFlBQW9CLEtBQWlCLEVBQVUsUUFBaUIsRUFBVSxpQkFBbUMsRUFBVSxrQkFBcUM7UUFDeEosS0FBSyxFQUFFLENBQUM7UUFEUSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUFVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFBVSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBTHBKLG1CQUFjLEdB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QUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLENBQUM7b0tBR2hCLGdCQUFnQjtzQkFBckQsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBQ0ksVUFBVTtzQkFBekMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgT25Jbml0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IEZpZWxkVHlwZUNvbmZpZyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUsIEZvcm1seUZpZWxkUHJvcHMgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIHRha2VVbnRpbCwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbnRlcmZhY2UgVGFnc1Byb3BzIGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XHJcbiAgICBkb21haW4/OiB7XHJcbiAgICAgICAgdXJsPzogc3RyaW5nO1xyXG4gICAgICAgIGNvZGU/OiBzdHJpbmc7XHJcbiAgICAgICAga2V5Pzogc3RyaW5nO1xyXG4gICAgICAgIHZhbHVlPzogc3RyaW5nO1xyXG4gICAgfVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC10YWdzLXR5cGUnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhZ3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFncy5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW01hdEljb25Nb2R1bGUsIE1hdENoZWNrYm94TW9kdWxlLCBBc3luY1BpcGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VGFnc1R5cGVDb21wb25lbnQgZXh0ZW5kcyBGaWVsZFR5cGU8RmllbGRUeXBlQ29uZmlnPFRhZ3NQcm9wcz4+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQFZpZXdDaGlsZCgndGFnc1BhbmVsT3JpZ2luJykgcHJpdmF0ZSBfdGFnc1BhbmVsT3JpZ2luOiBFbGVtZW50UmVmO1xyXG4gICAgQFZpZXdDaGlsZCgndGFnc1BhbmVsJykgcHJpdmF0ZSBfdGFnc1BhbmVsOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAgIHVybERhdGE6IFtdO1xyXG4gICAgb3B0aW9uc0RhdGE6IGFueVtdO1xyXG5cclxuICAgIHByaXZhdGUgX2ZpbHRlcmVkSXRlbXM6IEJlaGF2aW9yU3ViamVjdDxhbnlbXSB8IG51bGw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnlbXSB8IG51bGw+KG51bGwpO1xyXG4gICAgcHJpdmF0ZSBfdGFnc1BhbmVsT3ZlcmxheVJlZjogT3ZlcmxheVJlZjtcclxuICAgIHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2h0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksIHByaXZhdGUgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGZpbHRlcmVkSXRlbXMkKCk6IE9ic2VydmFibGU8YW55W10gfCBudWxsPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlcmVkSXRlbXMuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHRhZ3MoKTogYW55W10ge1xyXG4gICAgICAgIGlmIChpc0FycmF5KHRoaXMuZmllbGQucHJvcHM/Lm9wdGlvbnMpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnVybERhdGE/Lmxlbmd0aCA+IDAgPyB0aGlzLnVybERhdGEgOiB0aGlzLmZpZWxkLnByb3BzPy5vcHRpb25zIHx8IFtdO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnVybERhdGE/Lmxlbmd0aCA+IDAgPyB0aGlzLnVybERhdGEgOiB0aGlzLm9wdGlvbnNEYXRhIHx8IFtdO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5maWVsZC5wcm9wcz8ub3B0aW9ucyAmJiAhaXNBcnJheSh0aGlzLmZpZWxkLnByb3BzPy5vcHRpb25zKSkge1xyXG4gICAgICAgICAgICB0aGlzLmZpZWxkLnByb3BzPy5vcHRpb25zLnBpcGUodGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKSkuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKGRhdGEpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm9wdGlvbnNEYXRhID0gZGF0YTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy51cmw7XHJcbiAgICAgICAgaWYgKHVybCAmJiB0aGlzLmZpZWxkLnByb3BzPy5kb21haW4/LmNvZGUgJiYgdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy5rZXkgJiYgdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy52YWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLl9odHRwLmdldCh1cmwpLnBpcGUodGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKSkuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGFzID0gZGF0YS5maWx0ZXIoKGk6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQucHJvcHM/LmRvbWFpbj8ua2V5KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpW3RoaXMuZmllbGQucHJvcHM/LmRvbWFpbj8ua2V5XSA9PT0gdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy5jb2RlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YXMgJiYgdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy52YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy51cmxEYXRhID0gZGF0YXNbMF1bdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy52YWx1ZV07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnVybERhdGEgPSBbXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXJsRGF0YSA9IFtdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZmlsdGVyZWRJdGVtcy5uZXh0KHRoaXMudGFncyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy51cmxEYXRhID0gW107XHJcbiAgICAgICAgICAgIHRoaXMuX2ZpbHRlcmVkSXRlbXMubmV4dCh0aGlzLnRhZ3MpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuVGFnc1BhbmVsKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wQ2xhc3M6ICcnLFxyXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcclxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpLFxyXG4gICAgICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLl9vdmVybGF5LnBvc2l0aW9uKClcclxuICAgICAgICAgICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuX3RhZ3NQYW5lbE9yaWdpbi5uYXRpdmVFbGVtZW50KVxyXG4gICAgICAgICAgICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnModHJ1ZSlcclxuICAgICAgICAgICAgICAgIC53aXRoVmlld3BvcnRNYXJnaW4oNjQpXHJcbiAgICAgICAgICAgICAgICAud2l0aExvY2tlZFBvc2l0aW9uKHRydWUpXHJcbiAgICAgICAgICAgICAgICAud2l0aFBvc2l0aW9ucyhbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIF0pXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYuYXR0YWNobWVudHMoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl90YWdzUGFuZWxPdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk/LmZvY3VzKCk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGNvbnN0IHRlbXBsYXRlUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuX3RhZ3NQYW5lbCwgdGhpcy5fdmlld0NvbnRhaW5lclJlZik7XHJcblxyXG4gICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYuYXR0YWNoKHRlbXBsYXRlUG9ydGFsKTtcclxuXHJcbiAgICAgICAgLy8gU3Vic2NyaWJlIHRvIHRoZSBiYWNrZHJvcCBjbGlja1xyXG4gICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAvLyBJZiBvdmVybGF5IGV4aXN0cyBhbmQgYXR0YWNoZWQuLi5cclxuICAgICAgICAgICAgaWYgKHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYgJiYgdGhpcy5fdGFnc1BhbmVsT3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBEZXRhY2ggaXRcclxuICAgICAgICAgICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYuZGV0YWNoKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gUmVzZXQgdGhlIHRhZyBmaWx0ZXJcclxuICAgICAgICAgICAgICAgIHRoaXMuX2ZpbHRlcmVkSXRlbXMubmV4dCh0aGlzLnRhZ3MpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBJZiB0ZW1wbGF0ZSBwb3J0YWwgZXhpc3RzIGFuZCBhdHRhY2hlZC4uLlxyXG4gICAgICAgICAgICBpZiAodGVtcGxhdGVQb3J0YWwgJiYgdGVtcGxhdGVQb3J0YWwuaXNBdHRhY2hlZCkge1xyXG4gICAgICAgICAgICAgICAgLy8gRGV0YWNoIGl0XHJcbiAgICAgICAgICAgICAgICB0ZW1wbGF0ZVBvcnRhbC5kZXRhY2goKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGZpbHRlclRhZ3MoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlLnRvTG93ZXJDYXNlKCk7XHJcblxyXG4gICAgICAgIHRoaXMuX2ZpbHRlcmVkSXRlbXMubmV4dCh0aGlzLnRhZ3MuZmlsdGVyKHRhZyA9PiB0YWcubGFiZWwudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHZhbHVlKSB8fCB0YWcudmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHZhbHVlKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHRvZ2dsZVRhZyh0YWc6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0YWcuZGlzYWJsZWQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgfHwgW107XHJcbiAgICAgICAgY29uc3QgZXhpc3RzVGFnID0gZGF0YS5maW5kSW5kZXgoKGk6IHsgdmFsdWU6IGFueTsgfSkgPT4gaS52YWx1ZSA9PT0gdGFnLnZhbHVlKTtcclxuICAgICAgICBpZiAoZXhpc3RzVGFnPi0xKSB7XHJcbiAgICAgICAgICAgIGRhdGEuc3BsaWNlKGV4aXN0c1RhZywgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBkYXRhLnVuc2hpZnQodGFnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShkYXRhKTtcclxuXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHRyYWNrQnlGbihpbmRleDogbnVtYmVyKTogYW55IHtcclxuICAgICAgICByZXR1cm4gaW5kZXg7XHJcbiAgICB9XHJcblxyXG4gICAgaXNDaGVjayh0YWc6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1Db250cm9sLnZhbHVlPy5maWx0ZXIoKGk6IHsgdmFsdWU6IGFueTsgfSkgPT4gaS52YWx1ZSA9PT0gdGFnLnZhbHVlKS5sZW5ndGggPiAwO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0ZXh0LWxnIG1iLTJcIj5cclxuICAgIHt7IHByb3BzLmxhYmVsIH19XHJcbiAgICBAaWYocHJvcHMucmVxdWlyZWQpe1xyXG4gICAgPHNwYW4+Kjwvc3Bhbj5cclxuICAgIH1cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgLW0tMlwiIFt0YWJJbmRleF09XCJwcm9wcy50YWJpbmRleFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICBAZm9yIChzZWxlY3RlZEl0ZW0gb2YgZm9ybUNvbnRyb2wudmFsdWU7IHRyYWNrIHRyYWNrQnlGbigkaW5kZXgpKSB7XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHB4LTQgbS0xLjUgcm91bmRlZC1mdWxsIGxlYWRpbmctOSB0ZXh0LWdyYXktNTAwIGJnLXNsYXRlLTEwMCBkYXJrOnRleHQtZ3JheS0zMDAgZGFyazpiZy1zbGF0ZS03MDBcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW1kIGZvbnQtbWVkaXVtIHdoaXRlc3BhY2Utbm93cmFwXCI+e3tzZWxlY3RlZEl0ZW0ubGFiZWx9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweC00IG0tMS41IHJvdW5kZWQtZnVsbCBsZWFkaW5nLTkgY3Vyc29yLXBvaW50ZXIgdGV4dC1ncmF5LTUwMCBiZy1zbGF0ZS0xMDAgZGFyazp0ZXh0LWdyYXktMzAwIGRhcms6Ymctc2xhdGUtNzAwIHByaW50OmhpZGRlblwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvcGVuVGFnc1BhbmVsKClcIiByb2xlPVwicHJlc2VudGF0aW9uXCIgI3RhZ3NQYW5lbE9yaWdpbj5cclxuXHJcbiAgICAgICAgICAgIEBpZihmb3JtQ29udHJvbC52YWx1ZT8ubGVuZ3RoJiYhZGlzYWJsZWQpe1xyXG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJpY29uLXNpemUtNVwiIFtzdmdJY29uXT1cIidoZXJvaWNvbnNfc29saWQ6cGVuY2lsLXNxdWFyZSdcIj48L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTEuNSB0ZXh0LW1kIGZvbnQtbWVkaXVtIHdoaXRlc3BhY2Utbm93cmFwXCI+57yW6L6RPC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaWYoIWZvcm1Db250cm9sLnZhbHVlPy5sZW5ndGgmJiFkaXNhYmxlZCl7XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImljb24tc2l6ZS01XCIgW3N2Z0ljb25dPVwiJ2hlcm9pY29uc19zb2xpZDpwbHVzLWNpcmNsZSdcIj48L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTEuNSB0ZXh0LW1kIGZvbnQtbWVkaXVtIHdoaXRlc3BhY2Utbm93cmFwXCI+5paw5aKePC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI3RhZ3NQYW5lbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTYwIHJvdW5kZWQgYm9yZGVyIHNoYWRvdy1tZCBiZy1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIG0tMyBtci0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbi1zaXplLTVcIiBbc3ZnSWNvbl09XCInaGVyb2ljb25zX3NvbGlkOm1hZ25pZnlpbmctZ2xhc3MnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJ3LWZ1bGwgbWluLXctMCBweS0xIGJvcmRlci0wXCIgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIui+k+WFpeagh+etvuWQjVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbnB1dCk9XCJmaWx0ZXJUYWdzKCRldmVudClcIiBbbWF4TGVuZ3RoXT1cIjMwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgbWF4LWgtNjQgcHktMiBib3JkZXItdCBvdmVyZmxvdy15LWF1dG9cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmICgoZmlsdGVyZWRJdGVtcyQgfCBhc3luYyk7IGFzIGZpbHRlcmVkSXRlbXMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmKGZpbHRlcmVkSXRlbXMubGVuZ3RoPjApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yICh0YWcgb2YgZmlsdGVyZWRJdGVtczsgdHJhY2sgdHJhY2tCeUZuKCRpbmRleCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiByb2xlPVwicHJlc2VudGF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgaC0xMCBtaW4taC0xMCBwbC0xIHByLTQgY3Vyc29yLXBvaW50ZXIgaG92ZXI6YmctaG92ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVRhZyh0YWcpXCIgbWF0UmlwcGxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jaGVja2JveCBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGgtMTAgbWluLWgtMTBcIiBbY29sb3JdPVwiJ3ByaW1hcnknXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidGFnLmRpc2FibGVkXCIgW2NoZWNrZWRdPVwiaXNDaGVjayh0YWcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0YWcubGFiZWx9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1AZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtYXV0byBmbGV4LWNvbCBqdXN0aWZ5LWNlbnRlciBweC00IGgtMTAgbWluLWgtMTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIOaXoOe7k+aenFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG48L2Rpdj4iXX0=
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvY3VzdG9tLWZvcm1seS90eXBlcy90YWdzL3RhZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2N1c3RvbS1mb3JtbHkvdHlwZXMvdGFncy90YWdzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQThDLFNBQVMsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDL0osT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxTQUFTLEVBQW9CLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQWMsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7OztBQW1CdkUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFNBQXFDO0lBWTVFLFlBQW9CLEtBQWlCLEVBQVUsUUFBaUIsRUFBVSxpQkFBbUMsRUFBVSxrQkFBcUM7UUFDeEosS0FBSyxFQUFFLENBQUM7UUFEUSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUFVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFBVSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBTHBKLG1CQUFjLEdB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QUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLENBQUM7b0tBR2hCLGdCQUFnQjtzQkFBckQsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBQ0ksVUFBVTtzQkFBekMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgT25Jbml0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IEZpZWxkVHlwZUNvbmZpZyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUsIEZvcm1seUZpZWxkUHJvcHMgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gJ2xvZGFzaC1lcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIHRha2VVbnRpbCwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbnRlcmZhY2UgVGFnc1Byb3BzIGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XHJcbiAgICBkb21haW4/OiB7XHJcbiAgICAgICAgdXJsPzogc3RyaW5nO1xyXG4gICAgICAgIGNvZGU/OiBzdHJpbmc7XHJcbiAgICAgICAga2V5Pzogc3RyaW5nO1xyXG4gICAgICAgIHZhbHVlPzogc3RyaW5nO1xyXG4gICAgfVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC10YWdzLXR5cGUnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhZ3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFncy5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW01hdEljb25Nb2R1bGUsIE1hdENoZWNrYm94TW9kdWxlLCBBc3luY1BpcGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VGFnc1R5cGVDb21wb25lbnQgZXh0ZW5kcyBGaWVsZFR5cGU8RmllbGRUeXBlQ29uZmlnPFRhZ3NQcm9wcz4+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQFZpZXdDaGlsZCgndGFnc1BhbmVsT3JpZ2luJykgcHJpdmF0ZSBfdGFnc1BhbmVsT3JpZ2luOiBFbGVtZW50UmVmO1xyXG4gICAgQFZpZXdDaGlsZCgndGFnc1BhbmVsJykgcHJpdmF0ZSBfdGFnc1BhbmVsOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAgIHVybERhdGE6IFtdO1xyXG4gICAgb3B0aW9uc0RhdGE6IGFueVtdO1xyXG5cclxuICAgIHByaXZhdGUgX2ZpbHRlcmVkSXRlbXM6IEJlaGF2aW9yU3ViamVjdDxhbnlbXSB8IG51bGw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnlbXSB8IG51bGw+KG51bGwpO1xyXG4gICAgcHJpdmF0ZSBfdGFnc1BhbmVsT3ZlcmxheVJlZjogT3ZlcmxheVJlZjtcclxuICAgIHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2h0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksIHByaXZhdGUgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGZpbHRlcmVkSXRlbXMkKCk6IE9ic2VydmFibGU8YW55W10gfCBudWxsPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlcmVkSXRlbXMuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHRhZ3MoKTogYW55W10ge1xyXG4gICAgICAgIGlmIChpc0FycmF5KHRoaXMuZmllbGQucHJvcHM/Lm9wdGlvbnMpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnVybERhdGE/Lmxlbmd0aCA+IDAgPyB0aGlzLnVybERhdGEgOiB0aGlzLmZpZWxkLnByb3BzPy5vcHRpb25zIHx8IFtdO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnVybERhdGE/Lmxlbmd0aCA+IDAgPyB0aGlzLnVybERhdGEgOiB0aGlzLm9wdGlvbnNEYXRhIHx8IFtdO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5maWVsZC5wcm9wcz8ub3B0aW9ucyAmJiAhaXNBcnJheSh0aGlzLmZpZWxkLnByb3BzPy5vcHRpb25zKSkge1xyXG4gICAgICAgICAgICB0aGlzLmZpZWxkLnByb3BzPy5vcHRpb25zLnBpcGUodGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKSkuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKGRhdGEpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm9wdGlvbnNEYXRhID0gZGF0YTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy51cmw7XHJcbiAgICAgICAgaWYgKHVybCAmJiB0aGlzLmZpZWxkLnByb3BzPy5kb21haW4/LmNvZGUgJiYgdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy5rZXkgJiYgdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy52YWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLl9odHRwLmdldCh1cmwpLnBpcGUodGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKSkuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGFzID0gZGF0YS5maWx0ZXIoKGk6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQucHJvcHM/LmRvbWFpbj8ua2V5KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpW3RoaXMuZmllbGQucHJvcHM/LmRvbWFpbj8ua2V5XSA9PT0gdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy5jb2RlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YXMgJiYgdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy52YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy51cmxEYXRhID0gZGF0YXNbMF1bdGhpcy5maWVsZC5wcm9wcz8uZG9tYWluPy52YWx1ZV07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnVybERhdGEgPSBbXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXJsRGF0YSA9IFtdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZmlsdGVyZWRJdGVtcy5uZXh0KHRoaXMudGFncyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy51cmxEYXRhID0gW107XHJcbiAgICAgICAgICAgIHRoaXMuX2ZpbHRlcmVkSXRlbXMubmV4dCh0aGlzLnRhZ3MpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuVGFnc1BhbmVsKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wQ2xhc3M6ICcnLFxyXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcclxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpLFxyXG4gICAgICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLl9vdmVybGF5LnBvc2l0aW9uKClcclxuICAgICAgICAgICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuX3RhZ3NQYW5lbE9yaWdpbi5uYXRpdmVFbGVtZW50KVxyXG4gICAgICAgICAgICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnModHJ1ZSlcclxuICAgICAgICAgICAgICAgIC53aXRoVmlld3BvcnRNYXJnaW4oNjQpXHJcbiAgICAgICAgICAgICAgICAud2l0aExvY2tlZFBvc2l0aW9uKHRydWUpXHJcbiAgICAgICAgICAgICAgICAud2l0aFBvc2l0aW9ucyhbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIF0pXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYuYXR0YWNobWVudHMoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl90YWdzUGFuZWxPdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk/LmZvY3VzKCk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGNvbnN0IHRlbXBsYXRlUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuX3RhZ3NQYW5lbCwgdGhpcy5fdmlld0NvbnRhaW5lclJlZik7XHJcblxyXG4gICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYuYXR0YWNoKHRlbXBsYXRlUG9ydGFsKTtcclxuXHJcbiAgICAgICAgLy8gU3Vic2NyaWJlIHRvIHRoZSBiYWNrZHJvcCBjbGlja1xyXG4gICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAvLyBJZiBvdmVybGF5IGV4aXN0cyBhbmQgYXR0YWNoZWQuLi5cclxuICAgICAgICAgICAgaWYgKHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYgJiYgdGhpcy5fdGFnc1BhbmVsT3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBEZXRhY2ggaXRcclxuICAgICAgICAgICAgICAgIHRoaXMuX3RhZ3NQYW5lbE92ZXJsYXlSZWYuZGV0YWNoKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gUmVzZXQgdGhlIHRhZyBmaWx0ZXJcclxuICAgICAgICAgICAgICAgIHRoaXMuX2ZpbHRlcmVkSXRlbXMubmV4dCh0aGlzLnRhZ3MpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBJZiB0ZW1wbGF0ZSBwb3J0YWwgZXhpc3RzIGFuZCBhdHRhY2hlZC4uLlxyXG4gICAgICAgICAgICBpZiAodGVtcGxhdGVQb3J0YWwgJiYgdGVtcGxhdGVQb3J0YWwuaXNBdHRhY2hlZCkge1xyXG4gICAgICAgICAgICAgICAgLy8gRGV0YWNoIGl0XHJcbiAgICAgICAgICAgICAgICB0ZW1wbGF0ZVBvcnRhbC5kZXRhY2goKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGZpbHRlclRhZ3MoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlLnRvTG93ZXJDYXNlKCk7XHJcblxyXG4gICAgICAgIHRoaXMuX2ZpbHRlcmVkSXRlbXMubmV4dCh0aGlzLnRhZ3MuZmlsdGVyKHRhZyA9PiB0YWcubGFiZWwudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHZhbHVlKSB8fCB0YWcudmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHZhbHVlKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHRvZ2dsZVRhZyh0YWc6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0YWcuZGlzYWJsZWQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgfHwgW107XHJcbiAgICAgICAgY29uc3QgZXhpc3RzVGFnID0gZGF0YS5maW5kSW5kZXgoKGk6IHsgdmFsdWU6IGFueTsgfSkgPT4gaS52YWx1ZSA9PT0gdGFnLnZhbHVlKTtcclxuICAgICAgICBpZiAoZXhpc3RzVGFnPi0xKSB7XHJcbiAgICAgICAgICAgIGRhdGEuc3BsaWNlKGV4aXN0c1RhZywgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBkYXRhLnVuc2hpZnQodGFnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShkYXRhKTtcclxuXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHRyYWNrQnlGbihpbmRleDogbnVtYmVyKTogYW55IHtcclxuICAgICAgICByZXR1cm4gaW5kZXg7XHJcbiAgICB9XHJcblxyXG4gICAgaXNDaGVjayh0YWc6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1Db250cm9sLnZhbHVlPy5maWx0ZXIoKGk6IHsgdmFsdWU6IGFueTsgfSkgPT4gaS52YWx1ZSA9PT0gdGFnLnZhbHVlKS5sZW5ndGggPiAwO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0ZXh0LWxnIG1iLTJcIj5cclxuICAgIHt7IHByb3BzLmxhYmVsIH19XHJcbiAgICBAaWYocHJvcHMucmVxdWlyZWQpe1xyXG4gICAgPHNwYW4+Kjwvc3Bhbj5cclxuICAgIH1cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgLW0tMlwiIFt0YWJJbmRleF09XCJwcm9wcy50YWJpbmRleFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICBAZm9yIChzZWxlY3RlZEl0ZW0gb2YgZm9ybUNvbnRyb2wudmFsdWU7IHRyYWNrIHRyYWNrQnlGbigkaW5kZXgpKSB7XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHB4LTQgbS0xLjUgcm91bmRlZC1mdWxsIGxlYWRpbmctOSB0ZXh0LWdyYXktNTAwIGJnLXNsYXRlLTEwMCBkYXJrOnRleHQtZ3JheS0zMDAgZGFyazpiZy1zbGF0ZS03MDBcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW1kIGZvbnQtbWVkaXVtIHdoaXRlc3BhY2Utbm93cmFwXCI+e3tzZWxlY3RlZEl0ZW0ubGFiZWx9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweC00IG0tMS41IHJvdW5kZWQtZnVsbCBsZWFkaW5nLTkgY3Vyc29yLXBvaW50ZXIgdGV4dC1ncmF5LTUwMCBiZy1zbGF0ZS0xMDAgZGFyazp0ZXh0LWdyYXktMzAwIGRhcms6Ymctc2xhdGUtNzAwIHByaW50OmhpZGRlblwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvcGVuVGFnc1BhbmVsKClcIiByb2xlPVwicHJlc2VudGF0aW9uXCIgI3RhZ3NQYW5lbE9yaWdpbj5cclxuXHJcbiAgICAgICAgICAgIEBpZihmb3JtQ29udHJvbC52YWx1ZT8ubGVuZ3RoJiYhZGlzYWJsZWQpe1xyXG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJpY29uLXNpemUtNVwiIFtzdmdJY29uXT1cIidoZXJvaWNvbnNfc29saWQ6cGVuY2lsLXNxdWFyZSdcIj48L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTEuNSB0ZXh0LW1kIGZvbnQtbWVkaXVtIHdoaXRlc3BhY2Utbm93cmFwXCI+57yW6L6RPC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaWYoIWZvcm1Db250cm9sLnZhbHVlPy5sZW5ndGgmJiFkaXNhYmxlZCl7XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImljb24tc2l6ZS01XCIgW3N2Z0ljb25dPVwiJ2hlcm9pY29uc19zb2xpZDpwbHVzLWNpcmNsZSdcIj48L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTEuNSB0ZXh0LW1kIGZvbnQtbWVkaXVtIHdoaXRlc3BhY2Utbm93cmFwXCI+5paw5aKePC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI3RhZ3NQYW5lbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTYwIHJvdW5kZWQgYm9yZGVyIHNoYWRvdy1tZCBiZy1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIG0tMyBtci0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbi1zaXplLTVcIiBbc3ZnSWNvbl09XCInaGVyb2ljb25zX3NvbGlkOm1hZ25pZnlpbmctZ2xhc3MnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJ3LWZ1bGwgbWluLXctMCBweS0xIGJvcmRlci0wXCIgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIui+k+WFpeagh+etvuWQjVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbnB1dCk9XCJmaWx0ZXJUYWdzKCRldmVudClcIiBbbWF4TGVuZ3RoXT1cIjMwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgbWF4LWgtNjQgcHktMiBib3JkZXItdCBvdmVyZmxvdy15LWF1dG9cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmICgoZmlsdGVyZWRJdGVtcyQgfCBhc3luYyk7IGFzIGZpbHRlcmVkSXRlbXMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmKGZpbHRlcmVkSXRlbXMubGVuZ3RoPjApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yICh0YWcgb2YgZmlsdGVyZWRJdGVtczsgdHJhY2sgdHJhY2tCeUZuKCRpbmRleCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiByb2xlPVwicHJlc2VudGF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgaC0xMCBtaW4taC0xMCBwbC0xIHByLTQgY3Vyc29yLXBvaW50ZXIgaG92ZXI6YmctaG92ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVRhZyh0YWcpXCIgbWF0UmlwcGxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jaGVja2JveCBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGgtMTAgbWluLWgtMTBcIiBbY29sb3JdPVwiJ3ByaW1hcnknXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidGFnLmRpc2FibGVkXCIgW2NoZWNrZWRdPVwiaXNDaGVjayh0YWcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0YWcubGFiZWx9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1AZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtYXV0byBmbGV4LWNvbCBqdXN0aWZ5LWNlbnRlciBweC00IGgtMTAgbWluLWgtMTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIOaXoOe7k+aenFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG48L2Rpdj4iXX0=
@@ -0,0 +1,58 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { ReactiveFormsModule } from '@angular/forms';
3
+ import { FieldType } from '@ngx-formly/material/form-field';
4
+ import { CmatUploadQueueComponent } from 'cmat/components/upload';
5
+ import * as i0 from "@angular/core";
6
+ export class CmatUploadTypeComponent extends FieldType {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.defaultOptions = {
10
+ props: {
11
+ fileAlias: 'fileData',
12
+ filePath: 'path',
13
+ fileCategory: '分类',
14
+ multiple: true,
15
+ accept: '',
16
+ editMode: true,
17
+ autoUpload: true
18
+ }
19
+ };
20
+ }
21
+ upload(id) {
22
+ if (this.model['uploadId']) {
23
+ this.model['uploadId'].push(id);
24
+ }
25
+ else {
26
+ this.model['uploadId'] = [id];
27
+ }
28
+ }
29
+ remove(id) {
30
+ if (this.model['removeId']) {
31
+ this.model['removeId'].push(id);
32
+ }
33
+ else {
34
+ this.model['removeId'] = [id];
35
+ }
36
+ }
37
+ updateData(i) {
38
+ const data = Array.isArray(i) ? i : [];
39
+ this.formControl.setValue(data.map((j) => {
40
+ if (j.id)
41
+ return {
42
+ id: j.id,
43
+ name: j.name,
44
+ type: j.type,
45
+ size: j.size
46
+ };
47
+ else
48
+ return j;
49
+ }));
50
+ }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatUploadTypeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
52
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: CmatUploadTypeComponent, isStandalone: true, selector: "cmat-upload-type", usesInheritance: true, ngImport: i0, template: "<cmat-upload-queue [tabindex]=\"props.tabindex\" [fileAlias]=\"props.fileAlias\"\r\n [filePath]=\"props.filePath\" [required]=\"required\" [fileCategory]=\"props.fileCategory\" [multiple]=\"props.multiple\"\r\n [accept]=\"props.accept\" [title]=\"props.label??'\u9644\u4EF6'\" [editMode]=\"props.editMode&&!disabled\" [filesData]=\"formControl.value\"\r\n [autoUpload]=\"props.autoUpload\" (outputUploadIdEvent)=\"upload($event)\" (outputRemoveIdEvent)=\"remove($event)\" (outputFilesDataEvent)=\"updateData($event)\">\r\n</cmat-upload-queue>", styles: [":host{width:100%}\n"], dependencies: [{ kind: "component", type: CmatUploadQueueComponent, selector: "cmat-upload-queue", inputs: ["fileAlias", "filePath", "fileCategory", "required", "autoUpload", "multiple", "accept", "title", "editMode", "filesData"], outputs: ["outputRemoveIdEvent", "outputUploadIdEvent", "outputFilesDataEvent"], exportAs: ["cmatUploadQueue"] }, { kind: "ngmodule", type: ReactiveFormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
53
+ }
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CmatUploadTypeComponent, decorators: [{
55
+ type: Component,
56
+ args: [{ selector: 'cmat-upload-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CmatUploadQueueComponent, ReactiveFormsModule], template: "<cmat-upload-queue [tabindex]=\"props.tabindex\" [fileAlias]=\"props.fileAlias\"\r\n [filePath]=\"props.filePath\" [required]=\"required\" [fileCategory]=\"props.fileCategory\" [multiple]=\"props.multiple\"\r\n [accept]=\"props.accept\" [title]=\"props.label??'\u9644\u4EF6'\" [editMode]=\"props.editMode&&!disabled\" [filesData]=\"formControl.value\"\r\n [autoUpload]=\"props.autoUpload\" (outputUploadIdEvent)=\"upload($event)\" (outputRemoveIdEvent)=\"remove($event)\" (outputFilesDataEvent)=\"updateData($event)\">\r\n</cmat-upload-queue>", styles: [":host{width:100%}\n"] }]
57
+ }] });
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9jdXN0b20tZm9ybWx5L3R5cGVzL3VwbG9hZC91cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2N1c3RvbS1mb3JtbHkvdHlwZXMvdXBsb2FkL3VwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxTQUFTLEVBQW9CLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBb0JsRSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsU0FBdUM7SUFScEY7O1FBU1csbUJBQWMsR0FBRztZQUN4QixLQUFLLEVBQUU7Z0JBQ0wsU0FBUyxFQUFFLFVBQVU7Z0JBQ3JCLFFBQVEsRUFBRSxNQUFNO2dCQUNoQixZQUFZLEVBQUUsSUFBSTtnQkFDbEIsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsTUFBTSxFQUFFLEVBQUU7Z0JBQ1YsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsVUFBVSxFQUFFLElBQUk7YUFDakI7U0FDRixDQUFDO0tBZ0NIO0lBOUJDLE1BQU0sQ0FBQyxFQUFVO1FBQ2YsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2pDO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQVU7UUFDZixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDakM7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUMvQjtJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsQ0FBTTtRQUNmLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsQ0FBQyxFQUFFO2dCQUNOLE9BQU87b0JBQ0wsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFO29CQUNSLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTtvQkFDWixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUk7b0JBQ1osSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJO2lCQUNiLENBQUM7O2dCQUVGLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7OEdBMUNVLHVCQUF1QjtrR0FBdkIsdUJBQXVCLG1HQ3hCcEMseWlCQUlvQiw2RURrQlIsd0JBQXdCLGtUQUFFLG1CQUFtQjs7MkZBRTVDLHVCQUF1QjtrQkFSbkMsU0FBUzsrQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyx3QkFBd0IsRUFBRSxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRmllbGRUeXBlQ29uZmlnIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XHJcbmltcG9ydCB7IEZpZWxkVHlwZSwgRm9ybWx5RmllbGRQcm9wcyB9IGZyb20gJ0BuZ3gtZm9ybWx5L21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBDbWF0VXBsb2FkUXVldWVDb21wb25lbnQgfSBmcm9tICdjbWF0L2NvbXBvbmVudHMvdXBsb2FkJztcclxuXHJcbmludGVyZmFjZSBVcGxvYWRQcm9wcyBleHRlbmRzIEZvcm1seUZpZWxkUHJvcHMge1xyXG4gIGZpbGVBbGlhczogc3RyaW5nO1xyXG4gIGZpbGVQYXRoOiBzdHJpbmc7XHJcbiAgZmlsZUNhdGVnb3J5OiBzdHJpbmc7XHJcbiAgbXVsdGlwbGU6IGJvb2xlYW47XHJcbiAgYWNjZXB0OiBzdHJpbmc7XHJcbiAgZWRpdE1vZGU6IGJvb2xlYW47XHJcbiAgYXV0b1VwbG9hZDogYm9vbGVhbjtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjbWF0LXVwbG9hZC10eXBlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi91cGxvYWQuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDbWF0VXBsb2FkUXVldWVDb21wb25lbnQsIFJlYWN0aXZlRm9ybXNNb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VXBsb2FkVHlwZUNvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZTxGaWVsZFR5cGVDb25maWc8VXBsb2FkUHJvcHM+PiB7XHJcbiAgb3ZlcnJpZGUgZGVmYXVsdE9wdGlvbnMgPSB7XHJcbiAgICBwcm9wczoge1xyXG4gICAgICBmaWxlQWxpYXM6ICdmaWxlRGF0YScsXHJcbiAgICAgIGZpbGVQYXRoOiAncGF0aCcsXHJcbiAgICAgIGZpbGVDYXRlZ29yeTogJ+WIhuexuycsXHJcbiAgICAgIG11bHRpcGxlOiB0cnVlLFxyXG4gICAgICBhY2NlcHQ6ICcnLFxyXG4gICAgICBlZGl0TW9kZTogdHJ1ZSxcclxuICAgICAgYXV0b1VwbG9hZDogdHJ1ZVxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHVwbG9hZChpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5tb2RlbFsndXBsb2FkSWQnXSkge1xyXG4gICAgICB0aGlzLm1vZGVsWyd1cGxvYWRJZCddLnB1c2goaWQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5tb2RlbFsndXBsb2FkSWQnXSA9IFtpZF07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW1vdmUoaWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMubW9kZWxbJ3JlbW92ZUlkJ10pIHtcclxuICAgICAgdGhpcy5tb2RlbFsncmVtb3ZlSWQnXS5wdXNoKGlkKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubW9kZWxbJ3JlbW92ZUlkJ10gPSBbaWRdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlRGF0YShpOiBhbnkpOiB2b2lkIHtcclxuICAgIGNvbnN0IGRhdGEgPSBBcnJheS5pc0FycmF5KGkpID8gaSA6IFtdO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShkYXRhLm1hcCgoaikgPT4ge1xyXG4gICAgICBpZiAoai5pZClcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgaWQ6IGouaWQsXHJcbiAgICAgICAgICBuYW1lOiBqLm5hbWUsXHJcbiAgICAgICAgICB0eXBlOiBqLnR5cGUsXHJcbiAgICAgICAgICBzaXplOiBqLnNpemVcclxuICAgICAgICB9O1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgcmV0dXJuIGo7XHJcbiAgICB9KSk7XHJcbiAgfVxyXG59IiwiPGNtYXQtdXBsb2FkLXF1ZXVlIFt0YWJpbmRleF09XCJwcm9wcy50YWJpbmRleFwiIFtmaWxlQWxpYXNdPVwicHJvcHMuZmlsZUFsaWFzXCJcclxuICAgIFtmaWxlUGF0aF09XCJwcm9wcy5maWxlUGF0aFwiIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiIFtmaWxlQ2F0ZWdvcnldPVwicHJvcHMuZmlsZUNhdGVnb3J5XCIgW211bHRpcGxlXT1cInByb3BzLm11bHRpcGxlXCJcclxuICAgIFthY2NlcHRdPVwicHJvcHMuYWNjZXB0XCIgW3RpdGxlXT1cInByb3BzLmxhYmVsPz8n6ZmE5Lu2J1wiIFtlZGl0TW9kZV09XCJwcm9wcy5lZGl0TW9kZSYmIWRpc2FibGVkXCIgW2ZpbGVzRGF0YV09XCJmb3JtQ29udHJvbC52YWx1ZVwiXHJcbiAgICBbYXV0b1VwbG9hZF09XCJwcm9wcy5hdXRvVXBsb2FkXCIgKG91dHB1dFVwbG9hZElkRXZlbnQpPVwidXBsb2FkKCRldmVudClcIiAob3V0cHV0UmVtb3ZlSWRFdmVudCk9XCJyZW1vdmUoJGV2ZW50KVwiIChvdXRwdXRGaWxlc0RhdGFFdmVudCk9XCJ1cGRhdGVEYXRhKCRldmVudClcIj5cclxuPC9jbWF0LXVwbG9hZC1xdWV1ZT4iXX0=