@alauda/ui 7.4.1-beta.3 → 7.4.1-beta.4

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.
@@ -0,0 +1,64 @@
1
+ import { ElementRef, EventEmitter } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { CommonFormControl } from '../form';
4
+ import { InputComponent } from '../input';
5
+ import { ComponentSize } from '../internal/types';
6
+ import { CascaderOption, SearchedCascaderOption } from './cascader.types';
7
+ import { trackByOption, trackByOptions } from './utils';
8
+ import * as i0 from "@angular/core";
9
+ export declare class CascaderComponent<T = unknown> extends CommonFormControl<T[]> {
10
+ get size(): ComponentSize;
11
+ set size(val: ComponentSize);
12
+ filterable: boolean;
13
+ clearable: boolean;
14
+ onlyShowLastLabel: boolean;
15
+ changeOnSelect: boolean;
16
+ loading: boolean;
17
+ placeholder: string;
18
+ loadData: (selectedOption: CascaderOption<T>) => PromiseLike<Array<CascaderOption<T>>> | Observable<Array<CascaderOption<T>>>;
19
+ get options(): CascaderOption<T>[];
20
+ set options(val: CascaderOption<T>[]);
21
+ inputRef: InputComponent;
22
+ private readonly tooltipRef;
23
+ protected selectRef: ElementRef<HTMLElement>;
24
+ filterChange: EventEmitter<string>;
25
+ get rootClass(): string;
26
+ get containerClass(): string;
27
+ get opened(): boolean;
28
+ get inaction(): boolean;
29
+ get filterString(): string;
30
+ set filterString(val: string);
31
+ trackByOptions: typeof trackByOptions;
32
+ trackByOption: typeof trackByOption;
33
+ $$size: import("@angular/core").WritableSignal<ComponentSize>;
34
+ $$filterString: import("@angular/core").WritableSignal<string>;
35
+ $$options: import("@angular/core").WritableSignal<CascaderOption<T>[]>;
36
+ $$columns: import("@angular/core").WritableSignal<CascaderOption<T>[][]>;
37
+ $model: import("@angular/core").Signal<T[]>;
38
+ $selectedOptions: import("@angular/core").Signal<CascaderOption<T>[]>;
39
+ $searchedOptions: import("@angular/core").Signal<SearchedCascaderOption<T, T[]>[]>;
40
+ $optionsVisible: import("@angular/core").Signal<boolean>;
41
+ $hasSelected: import("@angular/core").Signal<boolean>;
42
+ $inSearching: import("@angular/core").Signal<boolean>;
43
+ $containerWidth: import("@angular/core").Signal<string>;
44
+ $OptionsContentClass: import("@angular/core").Signal<"aui-cascader-option-container__search-content" | "aui-cascader-option-container__content">;
45
+ $visibleColumns: import("@angular/core").Signal<CascaderOption<T>[][] | SearchedCascaderOption<T, T[]>[][]>;
46
+ activatedOptions: Array<CascaderOption<T>>;
47
+ clearValue(event: Event): void;
48
+ closeOption(): void;
49
+ onOptionsVisibleChange(visible: boolean): void;
50
+ onOptionClick(option: CascaderOption<T> | SearchedCascaderOption<T, T[]>, columnIndex: number): void;
51
+ isOptionActivated(option: CascaderOption<T> | SearchedCascaderOption<T, T[]>, columnIndex: number): boolean;
52
+ onInput(event: Event): void;
53
+ private checkOptionActivated;
54
+ private checkSearchedOptionActivated;
55
+ private onClickOption;
56
+ private onClickSearchedOption;
57
+ private setColumnsData;
58
+ static ɵfac: i0.ɵɵFactoryDeclaration<CascaderComponent<any>, never>;
59
+ static ɵcmp: i0.ɵɵComponentDeclaration<CascaderComponent<any>, "aui-cascader", never, { "size": { "alias": "size"; "required": false; }; "filterable": { "alias": "filterable"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "onlyShowLastLabel": { "alias": "onlyShowLastLabel"; "required": false; }; "changeOnSelect": { "alias": "changeOnSelect"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "loadData": { "alias": "loadData"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "filterChange": "filterChange"; }, never, ["aui-option-placeholder"], true, never>;
60
+ static ngAcceptInputType_filterable: unknown;
61
+ static ngAcceptInputType_clearable: unknown;
62
+ static ngAcceptInputType_onlyShowLastLabel: unknown;
63
+ static ngAcceptInputType_changeOnSelect: unknown;
64
+ }
@@ -0,0 +1,10 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "@angular/common";
3
+ import * as i2 from "../icon/icon.module";
4
+ import * as i3 from "./cascader.component";
5
+ import * as i4 from "./option/option.component";
6
+ export declare class CascaderModule {
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<CascaderModule, never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CascaderModule, never, [typeof i1.CommonModule, typeof i2.IconModule, typeof i3.CascaderComponent, typeof i4.CascaderOptionComponent], [typeof i3.CascaderComponent, typeof i4.CascaderOptionComponent]>;
9
+ static ɵinj: i0.ɵɵInjectorDeclaration<CascaderModule>;
10
+ }
@@ -0,0 +1,11 @@
1
+ export interface CascaderOption<T> {
2
+ label: string;
3
+ value: T;
4
+ disabled?: boolean;
5
+ loading?: boolean;
6
+ isLeaf?: boolean;
7
+ children?: Array<CascaderOption<T>>;
8
+ }
9
+ export interface SearchedCascaderOption<R, T extends R[]> extends CascaderOption<T> {
10
+ path: Array<CascaderOption<R>>;
11
+ }
@@ -0,0 +1,4 @@
1
+ export * from './cascader.component';
2
+ export * from './cascader.module';
3
+ export * from './cascader.types';
4
+ export * from './option/option.component';
@@ -0,0 +1,16 @@
1
+ import { Bem } from '../../internal/utils';
2
+ import { CascaderOption } from '../cascader.types';
3
+ import * as i0 from "@angular/core";
4
+ export declare class CascaderOptionComponent<T> {
5
+ bem: Bem;
6
+ get option(): CascaderOption<T>;
7
+ set option(val: CascaderOption<T>);
8
+ activated: boolean;
9
+ className: string;
10
+ get isDisabled(): boolean;
11
+ get isActivated(): boolean;
12
+ $$option: import("@angular/core").WritableSignal<CascaderOption<T>>;
13
+ $isParent: import("@angular/core").Signal<boolean>;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<CascaderOptionComponent<any>, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<CascaderOptionComponent<any>, "aui-cascader-option", never, { "option": { "alias": "option"; "required": false; }; "activated": { "alias": "activated"; "required": false; }; }, {}, never, never, true, never>;
16
+ }
@@ -0,0 +1,6 @@
1
+ import { CascaderOption, SearchedCascaderOption } from './cascader.types';
2
+ export declare function isParentOption<T>(option: CascaderOption<T>): boolean;
3
+ export declare function dropRestItems<T>(arr: T[], index: number): T[];
4
+ export declare function searchCascadeOptions<T>(root: Array<CascaderOption<T>>, filterString: string): SearchedCascaderOption<T, T[]>[];
5
+ export declare function trackByOptions<T>(columnIndex: number, options: Array<CascaderOption<T> | SearchedCascaderOption<T, T[]>>): string;
6
+ export declare function trackByOption<T>(_: number, option: CascaderOption<T>): string;
@@ -39,11 +39,11 @@ export class AutocompleteComponent {
39
39
  });
40
40
  }
41
41
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AutocompleteComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
42
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: AutocompleteComponent, isStandalone: true, selector: "aui-autocomplete", queries: [{ propertyName: "suggestions", predicate: SuggestionComponent, descendants: true }, { propertyName: "placeholder", predicate: AutocompletePlaceholderComponent }], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }, { propertyName: "suggestionListRef", first: true, predicate: ["suggestionListRef"], descendants: true, static: true }], ngImport: i0, template: "<ng-template let-width=\"width\">\n <div\n [hidden]=\"!(hasContent$ | async)\"\n class=\"aui-autocomplete\"\n [style.minWidth]=\"width\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #suggestionListRef\n class=\"aui-autocomplete__content\"\n >\n <ng-content></ng-content>\n </div>\n <div\n [hidden]=\"hasVisibleSuggestion$ | async\"\n class=\"aui-autocomplete__placeholder\"\n >\n <ng-content select=\"aui-autocomplete-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-autocomplete{padding:8px 0;max-width:90vw;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-autocomplete__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-autocomplete__content::-webkit-scrollbar{width:8px;height:4px}.aui-autocomplete__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgb(var(--aui-color-n-7))}.aui-autocomplete__content::-webkit-scrollbar-thumb:hover{background-color:rgb(var(--aui-color-n-5))}.aui-autocomplete__content::-webkit-scrollbar-corner{background-color:transparent}.aui-autocomplete__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-autocomplete--small .aui-autocomplete__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-autocomplete--small .aui-autocomplete__placeholder{font-size:var(--aui-font-size-s)}aui-autocomplete{display:none}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
42
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: AutocompleteComponent, isStandalone: true, selector: "aui-autocomplete", queries: [{ propertyName: "suggestions", predicate: SuggestionComponent, descendants: true }, { propertyName: "placeholder", predicate: AutocompletePlaceholderComponent }], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }, { propertyName: "suggestionListRef", first: true, predicate: ["suggestionListRef"], descendants: true, static: true }], ngImport: i0, template: "<ng-template let-width=\"width\">\n <div\n [hidden]=\"!(hasContent$ | async)\"\n class=\"aui-autocomplete\"\n [style.minWidth]=\"width\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #suggestionListRef\n class=\"aui-autocomplete__content\"\n >\n <ng-content></ng-content>\n </div>\n <div\n [hidden]=\"hasVisibleSuggestion$ | async\"\n class=\"aui-autocomplete__placeholder\"\n >\n <ng-content select=\"aui-autocomplete-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-autocomplete{padding:8px 0;max-width:90vw;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-autocomplete__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-autocomplete__content::-webkit-scrollbar{width:4px;height:4px}.aui-autocomplete__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-autocomplete__content::-webkit-scrollbar-corner{background-color:transparent}.aui-autocomplete__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-autocomplete--small .aui-autocomplete__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-autocomplete--small .aui-autocomplete__placeholder{font-size:var(--aui-font-size-s)}aui-autocomplete{display:none}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
43
43
  }
44
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AutocompleteComponent, decorators: [{
45
45
  type: Component,
46
- args: [{ selector: 'aui-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, standalone: true, imports: [AsyncPipe], template: "<ng-template let-width=\"width\">\n <div\n [hidden]=\"!(hasContent$ | async)\"\n class=\"aui-autocomplete\"\n [style.minWidth]=\"width\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #suggestionListRef\n class=\"aui-autocomplete__content\"\n >\n <ng-content></ng-content>\n </div>\n <div\n [hidden]=\"hasVisibleSuggestion$ | async\"\n class=\"aui-autocomplete__placeholder\"\n >\n <ng-content select=\"aui-autocomplete-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-autocomplete{padding:8px 0;max-width:90vw;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-autocomplete__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-autocomplete__content::-webkit-scrollbar{width:8px;height:4px}.aui-autocomplete__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgb(var(--aui-color-n-7))}.aui-autocomplete__content::-webkit-scrollbar-thumb:hover{background-color:rgb(var(--aui-color-n-5))}.aui-autocomplete__content::-webkit-scrollbar-corner{background-color:transparent}.aui-autocomplete__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-autocomplete--small .aui-autocomplete__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-autocomplete--small .aui-autocomplete__placeholder{font-size:var(--aui-font-size-s)}aui-autocomplete{display:none}\n"] }]
46
+ args: [{ selector: 'aui-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, standalone: true, imports: [AsyncPipe], template: "<ng-template let-width=\"width\">\n <div\n [hidden]=\"!(hasContent$ | async)\"\n class=\"aui-autocomplete\"\n [style.minWidth]=\"width\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #suggestionListRef\n class=\"aui-autocomplete__content\"\n >\n <ng-content></ng-content>\n </div>\n <div\n [hidden]=\"hasVisibleSuggestion$ | async\"\n class=\"aui-autocomplete__placeholder\"\n >\n <ng-content select=\"aui-autocomplete-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-autocomplete{padding:8px 0;max-width:90vw;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-autocomplete{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-autocomplete__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-autocomplete__content::-webkit-scrollbar{width:4px;height:4px}.aui-autocomplete__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-autocomplete__content::-webkit-scrollbar-corner{background-color:transparent}.aui-autocomplete__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-autocomplete--small .aui-autocomplete__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-autocomplete--small .aui-autocomplete__placeholder{font-size:var(--aui-font-size-s)}aui-autocomplete{display:none}\n"] }]
47
47
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { suggestions: [{
48
48
  type: ContentChildren,
49
49
  args: [SuggestionComponent, { descendants: true }]
@@ -57,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
57
57
  type: ViewChild,
58
58
  args: ['suggestionListRef', { static: true }]
59
59
  }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxlQUFlLEVBR2YsV0FBVyxFQUNYLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLGFBQWEsRUFDYixhQUFhLEVBQ2IsRUFBRSxFQUNGLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsR0FBRyxFQUNILFNBQVMsRUFDVCxTQUFTLEVBQ1QsR0FBRyxFQUNILGNBQWMsR0FDZixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUV4RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFZeEUsTUFBTSxPQUFPLHFCQUFxQjtJQW1CSDtJQWpCN0IsV0FBVyxDQUFpQztJQUc1QyxXQUFXLENBQThDO0lBR3pELFFBQVEsQ0FBbUI7SUFHM0IsaUJBQWlCLENBQWE7SUFFOUIscUJBQXFCLENBQXNCO0lBQzNDLFdBQVcsQ0FBc0I7SUFDakMsU0FBUyxDQUF3QjtJQUVqQyxXQUFXLEdBQUcsSUFBSSxhQUFhLENBQXdCLENBQUMsQ0FBQyxDQUFDO0lBRTFELFlBQTZCLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBQUcsQ0FBQztJQUV2RCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFNB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QyxpQkFBaUI7c0JBRGhCLFNBQVM7dUJBQUMsbUJBQW1CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgT2JzZXJ2YWJsZSxcbiAgUmVwbGF5U3ViamVjdCxcbiAgY29tYmluZUxhdGVzdCxcbiAgb2YsXG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIG1hcCxcbiAgc3RhcnRXaXRoLFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbiAgd2l0aExhdGVzdEZyb20sXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBwdWJsaXNoUmVmIH0gZnJvbSAnLi4vaW50ZXJuYWwvdXRpbHMnO1xuXG5pbXBvcnQgeyBBdXRvY29tcGxldGVQbGFjZWhvbGRlckNvbXBvbmVudCB9IGZyb20gJy4vYXV0b2NvbXBsZXRlLXBsYWNlaG9sZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdXRvQ29tcGxldGVEaXJlY3RpdmUgfSBmcm9tICcuL2F1dG9jb21wbGV0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3VnZ2VzdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vc3VnZ2VzdGlvbi9zdWdnZXN0aW9uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1hdXRvY29tcGxldGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0FzeW5jUGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICBAQ29udGVudENoaWxkcmVuKFN1Z2dlc3Rpb25Db21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgc3VnZ2VzdGlvbnM6IFF1ZXJ5TGlzdDxTdWdnZXN0aW9uQ29tcG9uZW50PjtcblxuICBAQ29udGVudENoaWxkcmVuKEF1dG9jb21wbGV0ZVBsYWNlaG9sZGVyQ29tcG9uZW50KVxuICBwbGFjZWhvbGRlcjogUXVlcnlMaXN0PEF1dG9jb21wbGV0ZVBsYWNlaG9sZGVyQ29tcG9uZW50PjtcblxuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkKCdzdWdnZXN0aW9uTGlzdFJlZicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHN1Z2dlc3Rpb25MaXN0UmVmOiBFbGVtZW50UmVmO1xuXG4gIGhhc1Zpc2libGVTdWdnZXN0aW9uJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgaGFzQ29udGVudCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHZpc2libGVzJDogT2JzZXJ2YWJsZTxib29sZWFuW10+O1xuXG4gIGRpcmVjdGl2ZSQkID0gbmV3IFJlcGxheVN1YmplY3Q8QXV0b0NvbXBsZXRlRGlyZWN0aXZlPigxKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMudmlzaWJsZXMkID0gdGhpcy5zdWdnZXN0aW9ucy5jaGFuZ2VzLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHN1Z2dlc3Rpb25zOiBRdWVyeUxpc3Q8U3VnZ2VzdGlvbkNvbXBvbmVudD4pID0+XG4gICAgICAgIHN1Z2dlc3Rpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICA/IGNvbWJpbmVMYXRlc3Qoc3VnZ2VzdGlvbnMubWFwKHN1Z2dlc3Rpb24gPT4gc3VnZ2VzdGlvbi52aXNpYmxlJCkpXG4gICAgICAgICAgOiBvZihbXSBhcyBib29sZWFuW10pLFxuICAgICAgKSxcbiAgICAgIGRlYm91bmNlVGltZSgwKSxcbiAgICAgIHN0YXJ0V2l0aCh0aGlzLnN1Z2dlc3Rpb25zLm1hcChzdWdnZXN0aW9uID0+IHN1Z2dlc3Rpb24udmlzaWJsZSkpLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG4gICAgdGhpcy5oYXNWaXNpYmxlU3VnZ2VzdGlvbiQgPSB0aGlzLnZpc2libGVzJC5waXBlKFxuICAgICAgbWFwKHZpc2libGUgPT4gdmlzaWJsZS5zb21lKEJvb2xlYW4pKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuZGlyZWN0aXZlJCQpLFxuICAgICAgbWFwKChbaGFzVmlzaWJsZVN1Z2dlc3Rpb24sIGRpcmVjdGl2ZV0pID0+IHtcbiAgICAgICAgaWYgKGhhc1Zpc2libGVTdWdnZXN0aW9uICYmIGRpcmVjdGl2ZS5kZWZhdWx0Rmlyc3RTdWdnZXN0aW9uKSB7XG4gICAgICAgICAgZGlyZWN0aXZlLmF1dG9Gb2N1c0ZpcnN0U3VnZ2VzdGlvbigpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBoYXNWaXNpYmxlU3VnZ2VzdGlvbjtcbiAgICAgIH0pLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHRhcCgoKSA9PiB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKSksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcblxuICAgIHRoaXMuaGFzQ29udGVudCQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuaGFzVmlzaWJsZVN1Z2dlc3Rpb24kLFxuICAgICAgdGhpcy5wbGFjZWhvbGRlci5jaGFuZ2VzLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aCh0aGlzLnBsYWNlaG9sZGVyKSxcbiAgICAgICAgbWFwKFxuICAgICAgICAgIChsaXN0OiBRdWVyeUxpc3Q8QXV0b2NvbXBsZXRlUGxhY2Vob2xkZXJDb21wb25lbnQ+KSA9PiAhIWxpc3QubGVuZ3RoLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2hhc1Zpc2libGVTdWdnZXN0aW9uLCBoYXNQbGFjZWhvbGRlcl0pID0+XG4gICAgICAgICAgaGFzVmlzaWJsZVN1Z2dlc3Rpb24gfHwgaGFzUGxhY2Vob2xkZXIsXG4gICAgICApLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICApO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5kaXJlY3RpdmUkJCwgdGhpcy52aXNpYmxlcyRdKVxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDUwKSlcbiAgICAgIC5zdWJzY3JpYmUoKFtkaXJlY3RpdmVdKSA9PiB7XG4gICAgICAgIGRpcmVjdGl2ZS5vdmVybGF5UmVmPy51cGRhdGVQb3NpdGlvbigpO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBsZXQtd2lkdGg9XCJ3aWR0aFwiPlxuICA8ZGl2XG4gICAgW2hpZGRlbl09XCIhKGhhc0NvbnRlbnQkIHwgYXN5bmMpXCJcbiAgICBjbGFzcz1cImF1aS1hdXRvY29tcGxldGVcIlxuICAgIFtzdHlsZS5taW5XaWR0aF09XCJ3aWR0aFwiXG4gICAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID5cbiAgICA8ZGl2XG4gICAgICAjc3VnZ2VzdGlvbkxpc3RSZWZcbiAgICAgIGNsYXNzPVwiYXVpLWF1dG9jb21wbGV0ZV9fY29udGVudFwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIFtoaWRkZW5dPVwiaGFzVmlzaWJsZVN1Z2dlc3Rpb24kIHwgYXN5bmNcIlxuICAgICAgY2xhc3M9XCJhdWktYXV0b2NvbXBsZXRlX19wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXVpLWF1dG9jb21wbGV0ZS1wbGFjZWhvbGRlclwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxlQUFlLEVBR2YsV0FBVyxFQUNYLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLGFBQWEsRUFDYixhQUFhLEVBQ2IsRUFBRSxFQUNGLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsR0FBRyxFQUNILFNBQVMsRUFDVCxTQUFTLEVBQ1QsR0FBRyxFQUNILGNBQWMsR0FDZixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUV4RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFZeEUsTUFBTSxPQUFPLHFCQUFxQjtJQW1CSDtJQWpCN0IsV0FBVyxDQUFpQztJQUc1QyxXQUFXLENBQThDO0lBR3pELFFBQVEsQ0FBbUI7SUFHM0IsaUJBQWlCLENBQWE7SUFFOUIscUJBQXFCLENBQXNCO0lBQzNDLFdBQVcsQ0FBc0I7SUFDakMsU0FBUyxDQUF3QjtJQUVqQyxXQUFXLEdBQUcsSUFBSSxhQUFhLENBQXdCLENBQUMsQ0FBQyxDQUFDO0lBRTFELFlBQTZCLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBQUcsQ0FBQztJQUV2RCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFNB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QyxpQkFBaUI7c0JBRGhCLFNBQVM7dUJBQUMsbUJBQW1CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgT2JzZXJ2YWJsZSxcbiAgUmVwbGF5U3ViamVjdCxcbiAgY29tYmluZUxhdGVzdCxcbiAgb2YsXG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIG1hcCxcbiAgc3RhcnRXaXRoLFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbiAgd2l0aExhdGVzdEZyb20sXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBwdWJsaXNoUmVmIH0gZnJvbSAnLi4vaW50ZXJuYWwvdXRpbHMnO1xuXG5pbXBvcnQgeyBBdXRvY29tcGxldGVQbGFjZWhvbGRlckNvbXBvbmVudCB9IGZyb20gJy4vYXV0b2NvbXBsZXRlLXBsYWNlaG9sZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdXRvQ29tcGxldGVEaXJlY3RpdmUgfSBmcm9tICcuL2F1dG9jb21wbGV0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3VnZ2VzdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vc3VnZ2VzdGlvbi9zdWdnZXN0aW9uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1hdXRvY29tcGxldGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0FzeW5jUGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICBAQ29udGVudENoaWxkcmVuKFN1Z2dlc3Rpb25Db21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgc3VnZ2VzdGlvbnM6IFF1ZXJ5TGlzdDxTdWdnZXN0aW9uQ29tcG9uZW50PjtcblxuICBAQ29udGVudENoaWxkcmVuKEF1dG9jb21wbGV0ZVBsYWNlaG9sZGVyQ29tcG9uZW50KVxuICBwbGFjZWhvbGRlcjogUXVlcnlMaXN0PEF1dG9jb21wbGV0ZVBsYWNlaG9sZGVyQ29tcG9uZW50PjtcblxuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkKCdzdWdnZXN0aW9uTGlzdFJlZicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHN1Z2dlc3Rpb25MaXN0UmVmOiBFbGVtZW50UmVmO1xuXG4gIGhhc1Zpc2libGVTdWdnZXN0aW9uJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgaGFzQ29udGVudCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHZpc2libGVzJDogT2JzZXJ2YWJsZTxib29sZWFuW10+O1xuXG4gIGRpcmVjdGl2ZSQkID0gbmV3IFJlcGxheVN1YmplY3Q8QXV0b0NvbXBsZXRlRGlyZWN0aXZlPigxKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMudmlzaWJsZXMkID0gdGhpcy5zdWdnZXN0aW9ucy5jaGFuZ2VzLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHN1Z2dlc3Rpb25zOiBRdWVyeUxpc3Q8U3VnZ2VzdGlvbkNvbXBvbmVudD4pID0+XG4gICAgICAgIHN1Z2dlc3Rpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICA/IGNvbWJpbmVMYXRlc3Qoc3VnZ2VzdGlvbnMubWFwKHN1Z2dlc3Rpb24gPT4gc3VnZ2VzdGlvbi52aXNpYmxlJCkpXG4gICAgICAgICAgOiBvZihbXSBhcyBib29sZWFuW10pLFxuICAgICAgKSxcbiAgICAgIGRlYm91bmNlVGltZSgwKSxcbiAgICAgIHN0YXJ0V2l0aCh0aGlzLnN1Z2dlc3Rpb25zLm1hcChzdWdnZXN0aW9uID0+IHN1Z2dlc3Rpb24udmlzaWJsZSkpLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG4gICAgdGhpcy5oYXNWaXNpYmxlU3VnZ2VzdGlvbiQgPSB0aGlzLnZpc2libGVzJC5waXBlKFxuICAgICAgbWFwKHZpc2libGUgPT4gdmlzaWJsZS5zb21lKEJvb2xlYW4pKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuZGlyZWN0aXZlJCQpLFxuICAgICAgbWFwKChbaGFzVmlzaWJsZVN1Z2dlc3Rpb24sIGRpcmVjdGl2ZV0pID0+IHtcbiAgICAgICAgaWYgKGhhc1Zpc2libGVTdWdnZXN0aW9uICYmIGRpcmVjdGl2ZS5kZWZhdWx0Rmlyc3RTdWdnZXN0aW9uKSB7XG4gICAgICAgICAgZGlyZWN0aXZlLmF1dG9Gb2N1c0ZpcnN0U3VnZ2VzdGlvbigpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBoYXNWaXNpYmxlU3VnZ2VzdGlvbjtcbiAgICAgIH0pLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHRhcCgoKSA9PiB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKSksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcblxuICAgIHRoaXMuaGFzQ29udGVudCQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuaGFzVmlzaWJsZVN1Z2dlc3Rpb24kLFxuICAgICAgdGhpcy5wbGFjZWhvbGRlci5jaGFuZ2VzLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aCh0aGlzLnBsYWNlaG9sZGVyKSxcbiAgICAgICAgbWFwKFxuICAgICAgICAgIChsaXN0OiBRdWVyeUxpc3Q8QXV0b2NvbXBsZXRlUGxhY2Vob2xkZXJDb21wb25lbnQ+KSA9PiAhIWxpc3QubGVuZ3RoLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2hhc1Zpc2libGVTdWdnZXN0aW9uLCBoYXNQbGFjZWhvbGRlcl0pID0+XG4gICAgICAgICAgaGFzVmlzaWJsZVN1Z2dlc3Rpb24gfHwgaGFzUGxhY2Vob2xkZXIsXG4gICAgICApLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICApO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5kaXJlY3RpdmUkJCwgdGhpcy52aXNpYmxlcyRdKVxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDUwKSlcbiAgICAgIC5zdWJzY3JpYmUoKFtkaXJlY3RpdmVdKSA9PiB7XG4gICAgICAgIGRpcmVjdGl2ZS5vdmVybGF5UmVmPy51cGRhdGVQb3NpdGlvbigpO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBsZXQtd2lkdGg9XCJ3aWR0aFwiPlxuICA8ZGl2XG4gICAgW2hpZGRlbl09XCIhKGhhc0NvbnRlbnQkIHwgYXN5bmMpXCJcbiAgICBjbGFzcz1cImF1aS1hdXRvY29tcGxldGVcIlxuICAgIFtzdHlsZS5taW5XaWR0aF09XCJ3aWR0aFwiXG4gICAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID5cbiAgICA8ZGl2XG4gICAgICAjc3VnZ2VzdGlvbkxpc3RSZWZcbiAgICAgIGNsYXNzPVwiYXVpLWF1dG9jb21wbGV0ZV9fY29udGVudFwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIFtoaWRkZW5dPVwiaGFzVmlzaWJsZVN1Z2dlc3Rpb24kIHwgYXN5bmNcIlxuICAgICAgY2xhc3M9XCJhdWktYXV0b2NvbXBsZXRlX19wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXVpLWF1dG9jb21wbGV0ZS1wbGFjZWhvbGRlclwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,242 @@
1
+ import { NgIf, NgTemplateOutlet, NgFor } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, computed, forwardRef, signal, } from '@angular/core';
3
+ import { toSignal } from '@angular/core/rxjs-interop';
4
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
5
+ import { from } from 'rxjs';
6
+ import { CommonFormControl } from '../form';
7
+ import { IconComponent } from '../icon';
8
+ import { InputComponent, InputSuffixDirective, InputGroupComponent, } from '../input';
9
+ import { ComponentSize } from '../internal/types';
10
+ import { coerceAttrBoolean } from '../internal/utils';
11
+ import { TooltipDirective } from '../tooltip';
12
+ import { CascaderOptionComponent } from './option/option.component';
13
+ import { dropRestItems, isParentOption, searchCascadeOptions, trackByOption, trackByOptions, } from './utils';
14
+ import * as i0 from "@angular/core";
15
+ export class CascaderComponent extends CommonFormControl {
16
+ get size() {
17
+ return this.$$size();
18
+ }
19
+ set size(val) {
20
+ if (!val || this.$$size() === val) {
21
+ return;
22
+ }
23
+ this.$$size.set(val);
24
+ }
25
+ filterable = true;
26
+ clearable;
27
+ onlyShowLastLabel = false;
28
+ changeOnSelect = false;
29
+ loading = false;
30
+ placeholder = '';
31
+ loadData;
32
+ get options() {
33
+ return this.$$options();
34
+ }
35
+ set options(val) {
36
+ this.$$options.set(val);
37
+ this.$$columns.set([val]);
38
+ }
39
+ inputRef;
40
+ tooltipRef;
41
+ selectRef;
42
+ filterChange = new EventEmitter();
43
+ get rootClass() {
44
+ return `aui-cascader aui-cascader--${this.$$size()}`;
45
+ }
46
+ get containerClass() {
47
+ return `aui-cascader-option-container aui-cascader-option-container--${this.$$size()}`;
48
+ }
49
+ get opened() {
50
+ return this.tooltipRef.isCreated;
51
+ }
52
+ get inaction() {
53
+ return !(this.filterable && this.opened);
54
+ }
55
+ get filterString() {
56
+ return this.$$filterString();
57
+ }
58
+ set filterString(val) {
59
+ if (val !== this.$$filterString()) {
60
+ this.$$filterString.set(val);
61
+ this.filterChange.emit(val);
62
+ }
63
+ }
64
+ trackByOptions = trackByOptions;
65
+ trackByOption = trackByOption;
66
+ $$size = signal(ComponentSize.Medium);
67
+ $$filterString = signal('');
68
+ $$options = signal([]);
69
+ $$columns = signal([]);
70
+ $model = toSignal(this.model$);
71
+ $selectedOptions = computed(() => {
72
+ const selectedOptions = [];
73
+ let currentColumnOptions = this.$$options();
74
+ this.$model()?.forEach(value => {
75
+ const currentColumnOption = currentColumnOptions?.find(option => option.value === value);
76
+ selectedOptions.push(currentColumnOption);
77
+ currentColumnOptions = currentColumnOption.children;
78
+ });
79
+ return selectedOptions;
80
+ });
81
+ $searchedOptions = computed(() => this.$inSearching()
82
+ ? searchCascadeOptions(this.$$options(), this.$$filterString())
83
+ : []);
84
+ $optionsVisible = computed(() => this.$$options().length > 0 &&
85
+ (!this.$$filterString() || this.$searchedOptions().length > 0));
86
+ $hasSelected = computed(() => this.$selectedOptions().length > 0);
87
+ $inSearching = computed(() => !!this.$$filterString());
88
+ $containerWidth = computed(() => this.$$options().length === 0 || !!this.$$filterString()
89
+ ? this.selectRef.nativeElement.offsetWidth + 'px'
90
+ : null);
91
+ $OptionsContentClass = computed(() => this.$inSearching()
92
+ ? 'aui-cascader-option-container__search-content'
93
+ : 'aui-cascader-option-container__content');
94
+ $visibleColumns = computed(() => this.$searchedOptions().length > 0
95
+ ? [this.$searchedOptions()]
96
+ : this.$$columns());
97
+ activatedOptions = [];
98
+ clearValue(event) {
99
+ this.emitValue(null);
100
+ event.stopPropagation();
101
+ event.preventDefault();
102
+ }
103
+ closeOption() {
104
+ this.tooltipRef.hide();
105
+ }
106
+ onOptionsVisibleChange(visible) {
107
+ if (!visible) {
108
+ this.filterString = '';
109
+ this.inputRef.elementRef.nativeElement.value = '';
110
+ this.activatedOptions = [];
111
+ this.$$columns.set([]);
112
+ return;
113
+ }
114
+ this.activatedOptions = [...this.$selectedOptions()];
115
+ this.$$columns.set([this.options].concat(this.activatedOptions.map(option => option.children).filter(Boolean)));
116
+ }
117
+ onOptionClick(option, columnIndex) {
118
+ if (option.disabled) {
119
+ return;
120
+ }
121
+ this.$inSearching()
122
+ ? this.onClickSearchedOption(option)
123
+ : this.onClickOption(option, columnIndex);
124
+ }
125
+ isOptionActivated(option, columnIndex) {
126
+ return this.$inSearching()
127
+ ? this.checkSearchedOptionActivated(option)
128
+ : this.checkOptionActivated(option, columnIndex);
129
+ }
130
+ onInput(event) {
131
+ this.filterString = event.target.value;
132
+ }
133
+ checkOptionActivated(option, columnIndex) {
134
+ return this.activatedOptions[columnIndex] === option;
135
+ }
136
+ checkSearchedOptionActivated(searchedOption) {
137
+ return (searchedOption.path.length === this.activatedOptions.length &&
138
+ searchedOption.path.every((option, index) => option === this.activatedOptions[index]));
139
+ }
140
+ onClickOption(option, columnIndex) {
141
+ if (this.checkOptionActivated(option, columnIndex)) {
142
+ return;
143
+ }
144
+ this.activatedOptions[columnIndex] = option;
145
+ const isParent = isParentOption(option);
146
+ const performChange = !isParent || this.changeOnSelect;
147
+ if (isParent && option.children?.length > 0) {
148
+ this.setColumnsData(option, columnIndex);
149
+ }
150
+ else if (isParent && !!this.loadData) {
151
+ option.loading = true;
152
+ from(this.loadData(option)).subscribe(childrenOptions => {
153
+ option.loading = false;
154
+ option.children = childrenOptions;
155
+ this.setColumnsData(option, columnIndex);
156
+ });
157
+ }
158
+ else {
159
+ this.activatedOptions = dropRestItems(this.activatedOptions, columnIndex);
160
+ this.closeOption();
161
+ }
162
+ if (performChange) {
163
+ this.emitValue(this.activatedOptions.map(activatedOption => activatedOption.value));
164
+ }
165
+ }
166
+ onClickSearchedOption(searchedOption) {
167
+ if (this.checkSearchedOptionActivated(searchedOption)) {
168
+ return;
169
+ }
170
+ this.activatedOptions = [...searchedOption.path];
171
+ this.closeOption();
172
+ this.emitValue(this.activatedOptions.map(activatedOption => activatedOption.value));
173
+ }
174
+ setColumnsData(option, columnIndex) {
175
+ this.$$columns.update(columns => {
176
+ columns[columnIndex + 1] = option.children;
177
+ return dropRestItems(columns, columnIndex + 1);
178
+ });
179
+ }
180
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CascaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
181
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.3", type: CascaderComponent, isStandalone: true, selector: "aui-cascader", inputs: { size: "size", filterable: ["filterable", "filterable", coerceAttrBoolean], clearable: ["clearable", "clearable", coerceAttrBoolean], onlyShowLastLabel: ["onlyShowLastLabel", "onlyShowLastLabel", coerceAttrBoolean], changeOnSelect: ["changeOnSelect", "changeOnSelect", coerceAttrBoolean], loading: "loading", placeholder: "placeholder", loadData: "loadData", options: "options" }, outputs: { filterChange: "filterChange" }, providers: [
182
+ {
183
+ provide: NG_VALUE_ACCESSOR,
184
+ useExisting: forwardRef(() => CascaderComponent),
185
+ multi: true,
186
+ },
187
+ ], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true, static: true }, { propertyName: "tooltipRef", first: true, predicate: ["tooltipRef"], descendants: true, static: true }, { propertyName: "selectRef", first: true, predicate: ["selectRef"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n [class]=\"rootClass\"\n [class.isDisabled]=\"disabled\"\n [class.isClearable]=\"$hasSelected() && this.clearable && !this.disabled\"\n [class.isFilterable]=\"filterable\"\n [class.isOpened]=\"opened\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n auiTooltipAnimType=\"scaleY\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipVisibleChange)=\"onOptionsVisibleChange($event)\"\n>\n <aui-input-group>\n <input\n #inputRef\n class=\"aui-cascader__input\"\n [class.aui-cascader__input-inaction]=\"inaction\"\n autocomplete=\"off\"\n aui-input\n [disabled]=\"disabled\"\n [size]=\"size\"\n [readonly]=\"readonly || inaction\"\n [placeholder]=\"placeholder\"\n (input)=\"onInput($event)\"\n (blur)=\"closeOption()\"\n />\n <span\n auiInputSuffix\n class=\"aui-cascader__icon-container\"\n >\n <aui-icon\n class=\"aui-cascader__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-cascader__clear\"\n icon=\"xmark_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n <div\n *ngIf=\"$hasSelected() && !filterString\"\n class=\"aui-cascader__label-container aui-input aui-input--{{ size }}\"\n [attr.disabled]=\"disabled ? true : null\"\n [attr.readonly]=\"readonly ? true : null\"\n >\n <div class=\"aui-cascader__label\">\n <ng-container *ngIf=\"onlyShowLastLabel; else label\">\n {{ $selectedOptions()?.at(-1)?.label }}\n </ng-container>\n <ng-template #label>\n <ng-container\n *ngFor=\"let option of $selectedOptions(); let i = index\"\n >\n <span *ngIf=\"i !== 0\">/</span>\n {{ option.label }}\n </ng-container>\n </ng-template>\n </div>\n </div>\n </aui-input-group>\n</div>\n\n<ng-template #templateRef>\n <div\n [class]=\"containerClass\"\n [style.minWidth]=\"$containerWidth()\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n *ngIf=\"$optionsVisible() && !loading\"\n [class]=\"$OptionsContentClass()\"\n >\n <div\n class=\"aui-cascader-option-container__column\"\n *ngFor=\"\n let columnOptions of $any($visibleColumns());\n let columnIndex = index;\n trackBy: trackByOptions\n \"\n >\n <aui-cascader-option\n *ngFor=\"let option of columnOptions; trackBy: trackByOption\"\n [option]=\"option\"\n (click)=\"onOptionClick(option, columnIndex); $event.stopPropagation()\"\n [activated]=\"isOptionActivated(option, columnIndex)\"\n ></aui-cascader-option>\n </div>\n </div>\n\n <div\n *ngIf=\"!$optionsVisible() || loading\"\n class=\"aui-cascader-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-cascader{display:inline-block;position:relative;width:100%}.aui-cascader__icon-container{display:block;position:relative;pointer-events:none!important}.aui-cascader__icon-container .aui-icon{margin:0!important}.aui-cascader.isDisabled .aui-cascader__icon-container{color:rgb(var(--aui-color-n-4))}.aui-cascader__indicator{display:flex}.aui-cascader__clear{display:none}.aui-cascader__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-cascader__clear .aui-icon:hover{color:rgb(var(--aui-color-main-bg));background-color:rgb(var(--aui-color-help-text))}.aui-cascader.isClearable:not(.isDisabled):hover .aui-cascader__indicator{display:none}.aui-cascader.isClearable:not(.isDisabled):hover .aui-cascader__clear{display:flex;pointer-events:auto}.aui-cascader__label-container.aui-input{position:absolute;top:0;left:0;display:inline-flex;align-items:center;pointer-events:none;background-color:transparent;border-color:transparent}.aui-cascader__label-container.aui-input[readonly]{pointer-events:auto}.aui-cascader.isFilterable.isOpened .aui-cascader__label-container.aui-input{color:rgb(var(--aui-color-n-4))}.aui-cascader__label{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-cascader__input-inaction{background-color:rgb(var(--aui-color-main-bg));border-color:rgb(var(--aui-color-n-7))!important;cursor:text}.aui-cascader__input-inaction:focus{border-color:rgb(var(--aui-color-primary))}.aui-cascader__input[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))}aui-cascader.ng-invalid.ng-dirty .aui-input,.ng-submitted aui-cascader.ng-invalid .aui-input{border-color:rgb(var(--aui-color-red))!important}:root aui-cascader.ng-invalid.ng-dirty .aui-input:focus,:root aui-cascader.ng-invalid.ng-dirty .aui-input.isFocused,:root .ng-submitted aui-cascader.ng-invalid .aui-input:focus,:root .ng-submitted aui-cascader.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-cascader.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-cascader.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-cascader.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-cascader.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-cascader.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-cascader.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-cascader.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-cascader.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-cascader.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-cascader.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-cascader.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-cascader.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}.aui-cascader-option-container{padding:8px 0;max-width:90vw;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-cascader-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-cascader-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-cascader-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-cascader-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-cascader-option-container__content{display:flex;flex-direction:row;max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-cascader-option-container__content::-webkit-scrollbar{width:4px;height:4px}.aui-cascader-option-container__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-cascader-option-container__content::-webkit-scrollbar-corner{background-color:transparent}.aui-cascader-option-container__search-content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-cascader-option-container__search-content::-webkit-scrollbar{width:4px;height:4px}.aui-cascader-option-container__search-content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-cascader-option-container__search-content::-webkit-scrollbar-corner{background-color:transparent}.aui-cascader-option-container__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center;display:inline-block;position:relative;width:100%}.aui-cascader-option-container__content .aui-cascader-option-container__column{min-width:92px;max-width:246px}.aui-cascader-option-container__search-content .aui-cascader-option-container__column{min-width:0;max-width:90vw}.aui-cascader-option-container__column+.aui-cascader-option-container__column{border-left:1px solid rgb(var(--aui-color-border))}\n"], dependencies: [{ kind: "component", type: CascaderOptionComponent, selector: "aui-cascader-option", inputs: ["option", "activated"] }, { kind: "directive", type: TooltipDirective, selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick", "auiTooltipAnimType"], outputs: ["auiTooltipVisibleChange"], exportAs: ["auiTooltip"] }, { kind: "component", type: InputGroupComponent, selector: "aui-input-group" }, { kind: "component", type: InputComponent, selector: "input[aui-input],textarea[aui-input]", inputs: ["size", "disabled"] }, { kind: "directive", type: InputSuffixDirective, selector: "[auiInputSuffix]" }, { kind: "component", type: IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
188
+ }
189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CascaderComponent, decorators: [{
190
+ type: Component,
191
+ args: [{ selector: 'aui-cascader', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, providers: [
192
+ {
193
+ provide: NG_VALUE_ACCESSOR,
194
+ useExisting: forwardRef(() => CascaderComponent),
195
+ multi: true,
196
+ },
197
+ ], standalone: true, imports: [
198
+ CascaderOptionComponent,
199
+ TooltipDirective,
200
+ InputGroupComponent,
201
+ InputComponent,
202
+ InputSuffixDirective,
203
+ IconComponent,
204
+ NgIf,
205
+ NgTemplateOutlet,
206
+ NgFor,
207
+ ], template: "<div\n [class]=\"rootClass\"\n [class.isDisabled]=\"disabled\"\n [class.isClearable]=\"$hasSelected() && this.clearable && !this.disabled\"\n [class.isFilterable]=\"filterable\"\n [class.isOpened]=\"opened\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n auiTooltipAnimType=\"scaleY\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipVisibleChange)=\"onOptionsVisibleChange($event)\"\n>\n <aui-input-group>\n <input\n #inputRef\n class=\"aui-cascader__input\"\n [class.aui-cascader__input-inaction]=\"inaction\"\n autocomplete=\"off\"\n aui-input\n [disabled]=\"disabled\"\n [size]=\"size\"\n [readonly]=\"readonly || inaction\"\n [placeholder]=\"placeholder\"\n (input)=\"onInput($event)\"\n (blur)=\"closeOption()\"\n />\n <span\n auiInputSuffix\n class=\"aui-cascader__icon-container\"\n >\n <aui-icon\n class=\"aui-cascader__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-cascader__clear\"\n icon=\"xmark_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n <div\n *ngIf=\"$hasSelected() && !filterString\"\n class=\"aui-cascader__label-container aui-input aui-input--{{ size }}\"\n [attr.disabled]=\"disabled ? true : null\"\n [attr.readonly]=\"readonly ? true : null\"\n >\n <div class=\"aui-cascader__label\">\n <ng-container *ngIf=\"onlyShowLastLabel; else label\">\n {{ $selectedOptions()?.at(-1)?.label }}\n </ng-container>\n <ng-template #label>\n <ng-container\n *ngFor=\"let option of $selectedOptions(); let i = index\"\n >\n <span *ngIf=\"i !== 0\">/</span>\n {{ option.label }}\n </ng-container>\n </ng-template>\n </div>\n </div>\n </aui-input-group>\n</div>\n\n<ng-template #templateRef>\n <div\n [class]=\"containerClass\"\n [style.minWidth]=\"$containerWidth()\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n *ngIf=\"$optionsVisible() && !loading\"\n [class]=\"$OptionsContentClass()\"\n >\n <div\n class=\"aui-cascader-option-container__column\"\n *ngFor=\"\n let columnOptions of $any($visibleColumns());\n let columnIndex = index;\n trackBy: trackByOptions\n \"\n >\n <aui-cascader-option\n *ngFor=\"let option of columnOptions; trackBy: trackByOption\"\n [option]=\"option\"\n (click)=\"onOptionClick(option, columnIndex); $event.stopPropagation()\"\n [activated]=\"isOptionActivated(option, columnIndex)\"\n ></aui-cascader-option>\n </div>\n </div>\n\n <div\n *ngIf=\"!$optionsVisible() || loading\"\n class=\"aui-cascader-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-cascader{display:inline-block;position:relative;width:100%}.aui-cascader__icon-container{display:block;position:relative;pointer-events:none!important}.aui-cascader__icon-container .aui-icon{margin:0!important}.aui-cascader.isDisabled .aui-cascader__icon-container{color:rgb(var(--aui-color-n-4))}.aui-cascader__indicator{display:flex}.aui-cascader__clear{display:none}.aui-cascader__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-cascader__clear .aui-icon:hover{color:rgb(var(--aui-color-main-bg));background-color:rgb(var(--aui-color-help-text))}.aui-cascader.isClearable:not(.isDisabled):hover .aui-cascader__indicator{display:none}.aui-cascader.isClearable:not(.isDisabled):hover .aui-cascader__clear{display:flex;pointer-events:auto}.aui-cascader__label-container.aui-input{position:absolute;top:0;left:0;display:inline-flex;align-items:center;pointer-events:none;background-color:transparent;border-color:transparent}.aui-cascader__label-container.aui-input[readonly]{pointer-events:auto}.aui-cascader.isFilterable.isOpened .aui-cascader__label-container.aui-input{color:rgb(var(--aui-color-n-4))}.aui-cascader__label{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-cascader__input-inaction{background-color:rgb(var(--aui-color-main-bg));border-color:rgb(var(--aui-color-n-7))!important;cursor:text}.aui-cascader__input-inaction:focus{border-color:rgb(var(--aui-color-primary))}.aui-cascader__input[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))}aui-cascader.ng-invalid.ng-dirty .aui-input,.ng-submitted aui-cascader.ng-invalid .aui-input{border-color:rgb(var(--aui-color-red))!important}:root aui-cascader.ng-invalid.ng-dirty .aui-input:focus,:root aui-cascader.ng-invalid.ng-dirty .aui-input.isFocused,:root .ng-submitted aui-cascader.ng-invalid .aui-input:focus,:root .ng-submitted aui-cascader.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-cascader.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-cascader.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-cascader.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-cascader.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-cascader.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-cascader.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-cascader.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-cascader.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-cascader.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-cascader.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-cascader.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-cascader.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}.aui-cascader-option-container{padding:8px 0;max-width:90vw;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-cascader-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-cascader-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-cascader-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-cascader-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-cascader-option-container__content{display:flex;flex-direction:row;max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-cascader-option-container__content::-webkit-scrollbar{width:4px;height:4px}.aui-cascader-option-container__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-cascader-option-container__content::-webkit-scrollbar-corner{background-color:transparent}.aui-cascader-option-container__search-content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-cascader-option-container__search-content::-webkit-scrollbar{width:4px;height:4px}.aui-cascader-option-container__search-content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-cascader-option-container__search-content::-webkit-scrollbar-corner{background-color:transparent}.aui-cascader-option-container__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center;display:inline-block;position:relative;width:100%}.aui-cascader-option-container__content .aui-cascader-option-container__column{min-width:92px;max-width:246px}.aui-cascader-option-container__search-content .aui-cascader-option-container__column{min-width:0;max-width:90vw}.aui-cascader-option-container__column+.aui-cascader-option-container__column{border-left:1px solid rgb(var(--aui-color-border))}\n"] }]
208
+ }], propDecorators: { size: [{
209
+ type: Input
210
+ }], filterable: [{
211
+ type: Input,
212
+ args: [{ transform: coerceAttrBoolean }]
213
+ }], clearable: [{
214
+ type: Input,
215
+ args: [{ transform: coerceAttrBoolean }]
216
+ }], onlyShowLastLabel: [{
217
+ type: Input,
218
+ args: [{ transform: coerceAttrBoolean }]
219
+ }], changeOnSelect: [{
220
+ type: Input,
221
+ args: [{ transform: coerceAttrBoolean }]
222
+ }], loading: [{
223
+ type: Input
224
+ }], placeholder: [{
225
+ type: Input
226
+ }], loadData: [{
227
+ type: Input
228
+ }], options: [{
229
+ type: Input
230
+ }], inputRef: [{
231
+ type: ViewChild,
232
+ args: ['inputRef', { static: true }]
233
+ }], tooltipRef: [{
234
+ type: ViewChild,
235
+ args: ['tooltipRef', { static: true }]
236
+ }], selectRef: [{
237
+ type: ViewChild,
238
+ args: ['selectRef', { static: true }]
239
+ }], filterChange: [{
240
+ type: Output
241
+ }] } });
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzY2FkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Nhc2NhZGVyL2Nhc2NhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9jYXNjYWRlci9jYXNjYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hFLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsUUFBUSxFQUNSLFVBQVUsRUFDVixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFeEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDeEMsT0FBTyxFQUNMLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsbUJBQW1CLEdBQ3BCLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFHOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEUsT0FBTyxFQUNMLGFBQWEsRUFDYixjQUFjLEVBQ2Qsb0JBQW9CLEVBQ3BCLGFBQWEs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O3NCQUQxQixTQUFTO3VCQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSS9CLFNBQVM7c0JBRGxCLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJeEMsWUFBWTtzQkFEWCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCwgTmdGb3IgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBjb21wdXRlZCxcbiAgZm9yd2FyZFJlZixcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmcm9tIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IENvbW1vbkZvcm1Db250cm9sIH0gZnJvbSAnLi4vZm9ybSc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vaWNvbic7XG5pbXBvcnQge1xuICBJbnB1dENvbXBvbmVudCxcbiAgSW5wdXRTdWZmaXhEaXJlY3RpdmUsXG4gIElucHV0R3JvdXBDb21wb25lbnQsXG59IGZyb20gJy4uL2lucHV0JztcbmltcG9ydCB7IENvbXBvbmVudFNpemUgfSBmcm9tICcuLi9pbnRlcm5hbC90eXBlcyc7XG5pbXBvcnQgeyBjb2VyY2VBdHRyQm9vbGVhbiB9IGZyb20gJy4uL2ludGVybmFsL3V0aWxzJztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLi90b29sdGlwJztcblxuaW1wb3J0IHsgQ2FzY2FkZXJPcHRpb24sIFNlYXJjaGVkQ2FzY2FkZXJPcHRpb24gfSBmcm9tICcuL2Nhc2NhZGVyLnR5cGVzJztcbmltcG9ydCB7IENhc2NhZGVyT3B0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9vcHRpb24vb3B0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBkcm9wUmVzdEl0ZW1zLFxuICBpc1BhcmVudE9wdGlvbixcbiAgc2VhcmNoQ2FzY2FkZU9wdGlvbnMsXG4gIHRyYWNrQnlPcHRpb24sXG4gIHRyYWNrQnlPcHRpb25zLFxufSBmcm9tICcuL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLWNhc2NhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICdjYXNjYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydjYXNjYWRlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ2FzY2FkZXJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENhc2NhZGVyT3B0aW9uQ29tcG9uZW50LFxuICAgIFRvb2x0aXBEaXJlY3RpdmUsXG4gICAgSW5wdXRHcm91cENvbXBvbmVudCxcbiAgICBJbnB1dENvbXBvbmVudCxcbiAgICBJbnB1dFN1ZmZpeERpcmVjdGl2ZSxcbiAgICBJY29uQ29tcG9uZW50LFxuICAgIE5nSWYsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBOZ0ZvcixcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FzY2FkZXJDb21wb25lbnQ8VCA9IHVua25vd24+IGV4dGVuZHMgQ29tbW9uRm9ybUNvbnRyb2w8VFtdPiB7XG4gIEBJbnB1dCgpXG4gIGdldCBzaXplKCkge1xuICAgIHJldHVybiB0aGlzLiQkc2l6ZSgpO1xuICB9XG5cbiAgc2V0IHNpemUodmFsKSB7XG4gICAgaWYgKCF2YWwgfHwgdGhpcy4kJHNpemUoKSA9PT0gdmFsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuJCRzaXplLnNldCh2YWwpO1xuICB9XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VBdHRyQm9vbGVhbiB9KVxuICBmaWx0ZXJhYmxlID0gdHJ1ZTtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUF0dHJCb29sZWFuIH0pXG4gIGNsZWFyYWJsZTogYm9vbGVhbjtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUF0dHJCb29sZWFuIH0pXG4gIG9ubHlTaG93TGFzdExhYmVsID0gZmFsc2U7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VBdHRyQm9vbGVhbiB9KVxuICBjaGFuZ2VPblNlbGVjdCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGxvYWRpbmcgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlciA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGxvYWREYXRhOiAoXG4gICAgc2VsZWN0ZWRPcHRpb246IENhc2NhZGVyT3B0aW9uPFQ+LFxuICApID0+XG4gICAgfCBQcm9taXNlTGlrZTxBcnJheTxDYXNjYWRlck9wdGlvbjxUPj4+XG4gICAgfCBPYnNlcnZhYmxlPEFycmF5PENhc2NhZGVyT3B0aW9uPFQ+Pj47XG5cbiAgQElucHV0KClcbiAgZ2V0IG9wdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuJCRvcHRpb25zKCk7XG4gIH1cblxuICBzZXQgb3B0aW9ucyh2YWwpIHtcbiAgICB0aGlzLiQkb3B0aW9ucy5zZXQodmFsKTtcbiAgICB0aGlzLiQkY29sdW1ucy5zZXQoW3ZhbF0pO1xuICB9XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXRSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBpbnB1dFJlZjogSW5wdXRDb21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZCgndG9vbHRpcFJlZicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgcmVhZG9ubHkgdG9vbHRpcFJlZjogVG9vbHRpcERpcmVjdGl2ZTtcblxuICBAVmlld0NoaWxkKCdzZWxlY3RSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwcm90ZWN0ZWQgc2VsZWN0UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAT3V0cHV0KClcbiAgZmlsdGVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgZ2V0IHJvb3RDbGFzcygpIHtcbiAgICByZXR1cm4gYGF1aS1jYXNjYWRlciBhdWktY2FzY2FkZXItLSR7dGhpcy4kJHNpemUoKX1gO1xuICB9XG5cbiAgZ2V0IGNvbnRhaW5lckNsYXNzKCkge1xuICAgIHJldHVybiBgYXVpLWNhc2NhZGVyLW9wdGlvbi1jb250YWluZXIgYXVpLWNhc2NhZGVyLW9wdGlvbi1jb250YWluZXItLSR7dGhpcy4kJHNpemUoKX1gO1xuICB9XG5cbiAgZ2V0IG9wZW5lZCgpIHtcbiAgICByZXR1cm4gdGhpcy50b29sdGlwUmVmLmlzQ3JlYXRlZDtcbiAgfVxuXG4gIGdldCBpbmFjdGlvbigpIHtcbiAgICByZXR1cm4gISh0aGlzLmZpbHRlcmFibGUgJiYgdGhpcy5vcGVuZWQpO1xuICB9XG5cbiAgZ2V0IGZpbHRlclN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy4kJGZpbHRlclN0cmluZygpO1xuICB9XG5cbiAgc2V0IGZpbHRlclN0cmluZyh2YWwpIHtcbiAgICBpZiAodmFsICE9PSB0aGlzLiQkZmlsdGVyU3RyaW5nKCkpIHtcbiAgICAgIHRoaXMuJCRmaWx0ZXJTdHJpbmcuc2V0KHZhbCk7XG4gICAgICB0aGlzLmZpbHRlckNoYW5nZS5lbWl0KHZhbCk7XG4gICAgfVxuICB9XG5cbiAgdHJhY2tCeU9wdGlvbnMgPSB0cmFja0J5T3B0aW9ucztcbiAgdHJhY2tCeU9wdGlvbiA9IHRyYWNrQnlPcHRpb247XG5cbiAgJCRzaXplID0gc2lnbmFsPENvbXBvbmVudFNpemU+KENvbXBvbmVudFNpemUuTWVkaXVtKTtcbiAgJCRmaWx0ZXJTdHJpbmcgPSBzaWduYWwoJycpO1xuICAkJG9wdGlvbnMgPSBzaWduYWw8QXJyYXk8Q2FzY2FkZXJPcHRpb248VD4+PihbXSk7XG4gICQkY29sdW1ucyA9IHNpZ25hbDxBcnJheTxBcnJheTxDYXNjYWRlck9wdGlvbjxUPj4+PihbXSk7XG5cbiAgJG1vZGVsID0gdG9TaWduYWwodGhpcy5tb2RlbCQpO1xuXG4gICRzZWxlY3RlZE9wdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb25zOiBBcnJheTxDYXNjYWRlck9wdGlvbjxUPj4gPSBbXTtcbiAgICBsZXQgY3VycmVudENvbHVtbk9wdGlvbnMgPSB0aGlzLiQkb3B0aW9ucygpO1xuICAgIHRoaXMuJG1vZGVsKCk/LmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgY29uc3QgY3VycmVudENvbHVtbk9wdGlvbiA9IGN1cnJlbnRDb2x1bW5PcHRpb25zPy5maW5kKFxuICAgICAgICBvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZSxcbiAgICAgICk7XG4gICAgICBzZWxlY3RlZE9wdGlvbnMucHVzaChjdXJyZW50Q29sdW1uT3B0aW9uKTtcbiAgICAgIGN1cnJlbnRDb2x1bW5PcHRpb25zID0gY3VycmVudENvbHVtbk9wdGlvbi5jaGlsZHJlbjtcbiAgICB9KTtcbiAgICByZXR1cm4gc2VsZWN0ZWRPcHRpb25zO1xuICB9KTtcblxuICAkc2VhcmNoZWRPcHRpb25zID0gY29tcHV0ZWQoKCkgPT5cbiAgICB0aGlzLiRpblNlYXJjaGluZygpXG4gICAgICA/IHNlYXJjaENhc2NhZGVPcHRpb25zKHRoaXMuJCRvcHRpb25zKCksIHRoaXMuJCRmaWx0ZXJTdHJpbmcoKSlcbiAgICAgIDogW10sXG4gICk7XG5cbiAgJG9wdGlvbnNWaXNpYmxlID0gY29tcHV0ZWQoXG4gICAgKCkgPT5cbiAgICAgIHRoaXMuJCRvcHRpb25zKCkubGVuZ3RoID4gMCAmJlxuICAgICAgKCF0aGlzLiQkZmlsdGVyU3RyaW5nKCkgfHwgdGhpcy4kc2VhcmNoZWRPcHRpb25zKCkubGVuZ3RoID4gMCksXG4gICk7XG5cbiAgJGhhc1NlbGVjdGVkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy4kc2VsZWN0ZWRPcHRpb25zKCkubGVuZ3RoID4gMCk7XG4gICRpblNlYXJjaGluZyA9IGNvbXB1dGVkKCgpID0+ICEhdGhpcy4kJGZpbHRlclN0cmluZygpKTtcblxuICAkY29udGFpbmVyV2lkdGggPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuJCRvcHRpb25zKCkubGVuZ3RoID09PSAwIHx8ICEhdGhpcy4kJGZpbHRlclN0cmluZygpXG4gICAgICA/IHRoaXMuc2VsZWN0UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggKyAncHgnXG4gICAgICA6IG51bGwsXG4gICk7XG5cbiAgJE9wdGlvbnNDb250ZW50Q2xhc3MgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuJGluU2VhcmNoaW5nKClcbiAgICAgID8gJ2F1aS1jYXNjYWRlci1vcHRpb24tY29udGFpbmVyX19zZWFyY2gtY29udGVudCdcbiAgICAgIDogJ2F1aS1jYXNjYWRlci1vcHRpb24tY29udGFpbmVyX19jb250ZW50JyxcbiAgKTtcblxuICAkdmlzaWJsZUNvbHVtbnMgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuJHNlYXJjaGVkT3B0aW9ucygpLmxlbmd0aCA+IDBcbiAgICAgID8gW3RoaXMuJHNlYXJjaGVkT3B0aW9ucygpXVxuICAgICAgOiB0aGlzLiQkY29sdW1ucygpLFxuICApO1xuXG4gIGFjdGl2YXRlZE9wdGlvbnM6IEFycmF5PENhc2NhZGVyT3B0aW9uPFQ+PiA9IFtdO1xuXG4gIGNsZWFyVmFsdWUoZXZlbnQ6IEV2ZW50KSB7XG4gICAgdGhpcy5lbWl0VmFsdWUobnVsbCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIGNsb3NlT3B0aW9uKCkge1xuICAgIHRoaXMudG9vbHRpcFJlZi5oaWRlKCk7XG4gIH1cblxuICBvbk9wdGlvbnNWaXNpYmxlQ2hhbmdlKHZpc2libGU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXZpc2libGUpIHtcbiAgICAgIHRoaXMuZmlsdGVyU3RyaW5nID0gJyc7XG4gICAgICB0aGlzLmlucHV0UmVmLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgdGhpcy5hY3RpdmF0ZWRPcHRpb25zID0gW107XG4gICAgICB0aGlzLiQkY29sdW1ucy5zZXQoW10pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuYWN0aXZhdGVkT3B0aW9ucyA9IFsuLi50aGlzLiRzZWxlY3RlZE9wdGlvbnMoKV07XG4gICAgdGhpcy4kJGNvbHVtbnMuc2V0KFxuICAgICAgW3RoaXMub3B0aW9uc10uY29uY2F0KFxuICAgICAgICB0aGlzLmFjdGl2YXRlZE9wdGlvbnMubWFwKG9wdGlvbiA9PiBvcHRpb24uY2hpbGRyZW4pLmZpbHRlcihCb29sZWFuKSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIG9uT3B0aW9uQ2xpY2soXG4gICAgb3B0aW9uOiBDYXNjYWRlck9wdGlvbjxUPiB8IFNlYXJjaGVkQ2FzY2FkZXJPcHRpb248VCwgVFtdPixcbiAgICBjb2x1bW5JbmRleDogbnVtYmVyLFxuICApIHtcbiAgICBpZiAob3B0aW9uLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuJGluU2VhcmNoaW5nKClcbiAgICAgID8gdGhpcy5vbkNsaWNrU2VhcmNoZWRPcHRpb24ob3B0aW9uIGFzIFNlYXJjaGVkQ2FzY2FkZXJPcHRpb248VCwgVFtdPilcbiAgICAgIDogdGhpcy5vbkNsaWNrT3B0aW9uKG9wdGlvbiBhcyBDYXNjYWRlck9wdGlvbjxUPiwgY29sdW1uSW5kZXgpO1xuICB9XG5cbiAgaXNPcHRpb25BY3RpdmF0ZWQoXG4gICAgb3B0aW9uOiBDYXNjYWRlck9wdGlvbjxUPiB8IFNlYXJjaGVkQ2FzY2FkZXJPcHRpb248VCwgVFtdPixcbiAgICBjb2x1bW5JbmRleDogbnVtYmVyLFxuICApIHtcbiAgICByZXR1cm4gdGhpcy4kaW5TZWFyY2hpbmcoKVxuICAgICAgPyB0aGlzLmNoZWNrU2VhcmNoZWRPcHRpb25BY3RpdmF0ZWQoXG4gICAgICAgICAgb3B0aW9uIGFzIFNlYXJjaGVkQ2FzY2FkZXJPcHRpb248VCwgVFtdPixcbiAgICAgICAgKVxuICAgICAgOiB0aGlzLmNoZWNrT3B0aW9uQWN0aXZhdGVkKG9wdGlvbiBhcyBDYXNjYWRlck9wdGlvbjxUPiwgY29sdW1uSW5kZXgpO1xuICB9XG5cbiAgb25JbnB1dChldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLmZpbHRlclN0cmluZyA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrT3B0aW9uQWN0aXZhdGVkKG9wdGlvbjogQ2FzY2FkZXJPcHRpb248VD4sIGNvbHVtbkluZGV4OiBudW1iZXIpIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmF0ZWRPcHRpb25zW2NvbHVtbkluZGV4XSA9PT0gb3B0aW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja1NlYXJjaGVkT3B0aW9uQWN0aXZhdGVkKFxuICAgIHNlYXJjaGVkT3B0aW9uOiBTZWFyY2hlZENhc2NhZGVyT3B0aW9uPFQsIFRbXT4sXG4gICkge1xuICAgIHJldHVybiAoXG4gICAgICBzZWFyY2hlZE9wdGlvbi5wYXRoLmxlbmd0aCA9PT0gdGhpcy5hY3RpdmF0ZWRPcHRpb25zLmxlbmd0aCAmJlxuICAgICAgc2VhcmNoZWRPcHRpb24ucGF0aC5ldmVyeShcbiAgICAgICAgKG9wdGlvbiwgaW5kZXgpID0+IG9wdGlvbiA9PT0gdGhpcy5hY3RpdmF0ZWRPcHRpb25zW2luZGV4XSxcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBvbkNsaWNrT3B0aW9uKG9wdGlvbjogQ2FzY2FkZXJPcHRpb248VD4sIGNvbHVtbkluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5jaGVja09wdGlvbkFjdGl2YXRlZChvcHRpb24sIGNvbHVtbkluZGV4KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2YXRlZE9wdGlvbnNbY29sdW1uSW5kZXhdID0gb3B0aW9uO1xuXG4gICAgY29uc3QgaXNQYXJlbnQgPSBpc1BhcmVudE9wdGlvbihvcHRpb24pO1xuICAgIGNvbnN0IHBlcmZvcm1DaGFuZ2UgPSAhaXNQYXJlbnQgfHwgdGhpcy5jaGFuZ2VPblNlbGVjdDtcblxuICAgIGlmIChpc1BhcmVudCAmJiBvcHRpb24uY2hpbGRyZW4/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuc2V0Q29sdW1uc0RhdGEob3B0aW9uLCBjb2x1bW5JbmRleCk7XG4gICAgfSBlbHNlIGlmIChpc1BhcmVudCAmJiAhIXRoaXMubG9hZERhdGEpIHtcbiAgICAgIC8vIOmcgOimgeaHkuWKoOi9vSBjaGlsZHJlbiDnmoToioLngrnpnIDopoHmmL7lvI/nmoTlo7DmmI4gaXNMZWFmOiBmYWxzZVxuICAgICAgb3B0aW9uLmxvYWRpbmcgPSB0cnVlO1xuICAgICAgZnJvbSh0aGlzLmxvYWREYXRhKG9wdGlvbikpLnN1YnNjcmliZShjaGlsZHJlbk9wdGlvbnMgPT4ge1xuICAgICAgICBvcHRpb24ubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICBvcHRpb24uY2hpbGRyZW4gPSBjaGlsZHJlbk9wdGlvbnM7XG4gICAgICAgIHRoaXMuc2V0Q29sdW1uc0RhdGEob3B0aW9uLCBjb2x1bW5JbmRleCk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hY3RpdmF0ZWRPcHRpb25zID0gZHJvcFJlc3RJdGVtcyh0aGlzLmFjdGl2YXRlZE9wdGlvbnMsIGNvbHVtbkluZGV4KTtcbiAgICAgIHRoaXMuY2xvc2VPcHRpb24oKTtcbiAgICB9XG5cbiAgICBpZiAocGVyZm9ybUNoYW5nZSkge1xuICAgICAgdGhpcy5lbWl0VmFsdWUoXG4gICAgICAgIHRoaXMuYWN0aXZhdGVkT3B0aW9ucy5tYXAoYWN0aXZhdGVkT3B0aW9uID0+IGFjdGl2YXRlZE9wdGlvbi52YWx1ZSksXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25DbGlja1NlYXJjaGVkT3B0aW9uKFxuICAgIHNlYXJjaGVkT3B0aW9uOiBTZWFyY2hlZENhc2NhZGVyT3B0aW9uPFQsIFRbXT4sXG4gICkge1xuICAgIGlmICh0aGlzLmNoZWNrU2VhcmNoZWRPcHRpb25BY3RpdmF0ZWQoc2VhcmNoZWRPcHRpb24pKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuYWN0aXZhdGVkT3B0aW9ucyA9IFsuLi5zZWFyY2hlZE9wdGlvbi5wYXRoXTtcbiAgICB0aGlzLmNsb3NlT3B0aW9uKCk7XG4gICAgdGhpcy5lbWl0VmFsdWUoXG4gICAgICB0aGlzLmFjdGl2YXRlZE9wdGlvbnMubWFwKGFjdGl2YXRlZE9wdGlvbiA9PiBhY3RpdmF0ZWRPcHRpb24udmFsdWUpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHNldENvbHVtbnNEYXRhKG9wdGlvbjogQ2FzY2FkZXJPcHRpb248VD4sIGNvbHVtbkluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLiQkY29sdW1ucy51cGRhdGUoY29sdW1ucyA9PiB7XG4gICAgICBjb2x1bW5zW2NvbHVtbkluZGV4ICsgMV0gPSBvcHRpb24uY2hpbGRyZW47XG4gICAgICByZXR1cm4gZHJvcFJlc3RJdGVtcyhjb2x1bW5zLCBjb2x1bW5JbmRleCArIDEpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtjbGFzc109XCJyb290Q2xhc3NcIlxuICBbY2xhc3MuaXNEaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtjbGFzcy5pc0NsZWFyYWJsZV09XCIkaGFzU2VsZWN0ZWQoKSAmJiB0aGlzLmNsZWFyYWJsZSAmJiAhdGhpcy5kaXNhYmxlZFwiXG4gIFtjbGFzcy5pc0ZpbHRlcmFibGVdPVwiZmlsdGVyYWJsZVwiXG4gIFtjbGFzcy5pc09wZW5lZF09XCJvcGVuZWRcIlxuICAjc2VsZWN0UmVmXG4gICN0b29sdGlwUmVmPVwiYXVpVG9vbHRpcFwiXG4gIFthdWlUb29sdGlwXT1cInRlbXBsYXRlUmVmXCJcbiAgYXVpVG9vbHRpcEFuaW1UeXBlPVwic2NhbGVZXCJcbiAgW2F1aVRvb2x0aXBEaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIGF1aVRvb2x0aXBUcmlnZ2VyPVwiY2xpY2tcIlxuICBhdWlUb29sdGlwUG9zaXRpb249XCJib3R0b20gc3RhcnRcIlxuICBhdWlUb29sdGlwVHlwZT1cInBsYWluXCJcbiAgKGF1aVRvb2x0aXBWaXNpYmxlQ2hhbmdlKT1cIm9uT3B0aW9uc1Zpc2libGVDaGFuZ2UoJGV2ZW50KVwiXG4+XG4gIDxhdWktaW5wdXQtZ3JvdXA+XG4gICAgPGlucHV0XG4gICAgICAjaW5wdXRSZWZcbiAgICAgIGNsYXNzPVwiYXVpLWNhc2NhZGVyX19pbnB1dFwiXG4gICAgICBbY2xhc3MuYXVpLWNhc2NhZGVyX19pbnB1dC1pbmFjdGlvbl09XCJpbmFjdGlvblwiXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgYXVpLWlucHV0XG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3NpemVdPVwic2l6ZVwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkgfHwgaW5hY3Rpb25cIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxuICAgICAgKGJsdXIpPVwiY2xvc2VPcHRpb24oKVwiXG4gICAgLz5cbiAgICA8c3BhblxuICAgICAgYXVpSW5wdXRTdWZmaXhcbiAgICAgIGNsYXNzPVwiYXVpLWNhc2NhZGVyX19pY29uLWNvbnRhaW5lclwiXG4gICAgPlxuICAgICAgPGF1aS1pY29uXG4gICAgICAgIGNsYXNzPVwiYXVpLWNhc2NhZGVyX19pbmRpY2F0b3JcIlxuICAgICAgICBbaWNvbl09XCJsb2FkaW5nID8gJ3NwaW5uZXInIDogJ2NhcmV0X2Rvd25fcydcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgY2xhc3M9XCJhdWktY2FzY2FkZXJfX2NsZWFyXCJcbiAgICAgICAgaWNvbj1cInhtYXJrX3NtYWxsXCJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyVmFsdWUoJGV2ZW50KVwiXG4gICAgICA+PC9hdWktaWNvbj5cbiAgICA8L3NwYW4+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCIkaGFzU2VsZWN0ZWQoKSAmJiAhZmlsdGVyU3RyaW5nXCJcbiAgICAgIGNsYXNzPVwiYXVpLWNhc2NhZGVyX19sYWJlbC1jb250YWluZXIgYXVpLWlucHV0IGF1aS1pbnB1dC0te3sgc2l6ZSB9fVwiXG4gICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/IHRydWUgOiBudWxsXCJcbiAgICAgIFthdHRyLnJlYWRvbmx5XT1cInJlYWRvbmx5ID8gdHJ1ZSA6IG51bGxcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJhdWktY2FzY2FkZXJfX2xhYmVsXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvbmx5U2hvd0xhc3RMYWJlbDsgZWxzZSBsYWJlbFwiPlxuICAgICAgICAgIHt7ICRzZWxlY3RlZE9wdGlvbnMoKT8uYXQoLTEpPy5sYWJlbCB9fVxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNsYWJlbD5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mICRzZWxlY3RlZE9wdGlvbnMoKTsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpICE9PSAwXCI+Lzwvc3Bhbj5cbiAgICAgICAgICAgIHt7IG9wdGlvbi5sYWJlbCB9fVxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvYXVpLWlucHV0LWdyb3VwPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGVSZWY+XG4gIDxkaXZcbiAgICBbY2xhc3NdPVwiY29udGFpbmVyQ2xhc3NcIlxuICAgIFtzdHlsZS5taW5XaWR0aF09XCIkY29udGFpbmVyV2lkdGgoKVwiXG4gICAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIiRvcHRpb25zVmlzaWJsZSgpICYmICFsb2FkaW5nXCJcbiAgICAgIFtjbGFzc109XCIkT3B0aW9uc0NvbnRlbnRDbGFzcygpXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYXVpLWNhc2NhZGVyLW9wdGlvbi1jb250YWluZXJfX2NvbHVtblwiXG4gICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgIGxldCBjb2x1bW5PcHRpb25zIG9mICRhbnkoJHZpc2libGVDb2x1bW5zKCkpO1xuICAgICAgICAgIGxldCBjb2x1bW5JbmRleCA9IGluZGV4O1xuICAgICAgICAgIHRyYWNrQnk6IHRyYWNrQnlPcHRpb25zXG4gICAgICAgIFwiXG4gICAgICA+XG4gICAgICAgIDxhdWktY2FzY2FkZXItb3B0aW9uXG4gICAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBjb2x1bW5PcHRpb25zOyB0cmFja0J5OiB0cmFja0J5T3B0aW9uXCJcbiAgICAgICAgICBbb3B0aW9uXT1cIm9wdGlvblwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uT3B0aW9uQ2xpY2sob3B0aW9uLCBjb2x1bW5JbmRleCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgW2FjdGl2YXRlZF09XCJpc09wdGlvbkFjdGl2YXRlZChvcHRpb24sIGNvbHVtbkluZGV4KVwiXG4gICAgICAgID48L2F1aS1jYXNjYWRlci1vcHRpb24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiISRvcHRpb25zVmlzaWJsZSgpIHx8IGxvYWRpbmdcIlxuICAgICAgY2xhc3M9XCJhdWktY2FzY2FkZXItb3B0aW9uLWNvbnRhaW5lcl9fcGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImF1aS1vcHRpb24tcGxhY2Vob2xkZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -0,0 +1,28 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { IconModule } from '../icon';
4
+ import { CascaderComponent } from './cascader.component';
5
+ import { CascaderOptionComponent } from './option/option.component';
6
+ import * as i0 from "@angular/core";
7
+ export class CascaderModule {
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CascaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.3", ngImport: i0, type: CascaderModule, imports: [CommonModule,
10
+ IconModule,
11
+ CascaderComponent,
12
+ CascaderOptionComponent], exports: [CascaderComponent, CascaderOptionComponent] });
13
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CascaderModule, imports: [CommonModule,
14
+ IconModule] });
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CascaderModule, decorators: [{
17
+ type: NgModule,
18
+ args: [{
19
+ imports: [
20
+ CommonModule,
21
+ IconModule,
22
+ CascaderComponent,
23
+ CascaderOptionComponent,
24
+ ],
25
+ exports: [CascaderComponent, CascaderOptionComponent],
26
+ }]
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzY2FkZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Nhc2NhZGVyL2Nhc2NhZGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQVdwRSxNQUFNLE9BQU8sY0FBYzt1R0FBZCxjQUFjO3dHQUFkLGNBQWMsWUFQdkIsWUFBWTtZQUNaLFVBQVU7WUFDVixpQkFBaUI7WUFDakIsdUJBQXVCLGFBRWYsaUJBQWlCLEVBQUUsdUJBQXVCO3dHQUV6QyxjQUFjLFlBUHZCLFlBQVk7WUFDWixVQUFVOzsyRkFNRCxjQUFjO2tCQVQxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsaUJBQWlCO3dCQUNqQix1QkFBdUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDO2lCQUN0RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbic7XG5cbmltcG9ydCB7IENhc2NhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jYXNjYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FzY2FkZXJPcHRpb25Db21wb25lbnQgfSBmcm9tICcuL29wdGlvbi9vcHRpb24uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBJY29uTW9kdWxlLFxuICAgIENhc2NhZGVyQ29tcG9uZW50LFxuICAgIENhc2NhZGVyT3B0aW9uQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbQ2FzY2FkZXJDb21wb25lbnQsIENhc2NhZGVyT3B0aW9uQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FzY2FkZXJNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzY2FkZXIudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2FzY2FkZXIvY2FzY2FkZXIudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ2FzY2FkZXJPcHRpb248VD4ge1xuICBsYWJlbDogc3RyaW5nO1xuICB2YWx1ZTogVDtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBsb2FkaW5nPzogYm9vbGVhbjtcbiAgaXNMZWFmPzogYm9vbGVhbjtcbiAgY2hpbGRyZW4/OiBBcnJheTxDYXNjYWRlck9wdGlvbjxUPj47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoZWRDYXNjYWRlck9wdGlvbjxSLCBUIGV4dGVuZHMgUltdPlxuICBleHRlbmRzIENhc2NhZGVyT3B0aW9uPFQ+IHtcbiAgcGF0aDogQXJyYXk8Q2FzY2FkZXJPcHRpb248Uj4+O1xufVxuIl19
@@ -0,0 +1,5 @@
1
+ export * from './cascader.component';
2
+ export * from './cascader.module';
3
+ export * from './cascader.types';
4
+ export * from './option/option.component';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2FzY2FkZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2FzY2FkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2FzY2FkZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY2FzY2FkZXIudHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9vcHRpb24vb3B0aW9uLmNvbXBvbmVudCc7XG4iXX0=