@taiga-ui/legacy 4.4.1 → 4.5.0-canary.49229f4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/classes/abstract-native-select.d.ts +1 -1
- package/components/color-selector/color-edit/color-edit.component.d.ts +1 -1
- package/components/input-date-range/input-date-range.component.d.ts +1 -4
- package/components/input-password/input-password.component.d.ts +4 -1
- package/components/input-password/input-password.directive.d.ts +3 -0
- package/components/input-password/input-password.module.d.ts +3 -0
- package/components/input-password/input-password.options.d.ts +12 -0
- package/components/input-tag/input-tag.component.d.ts +2 -1
- package/components/input-tag/input-tag.options.d.ts +1 -0
- package/components/input-time/native-time/native-time.component.d.ts +1 -1
- package/components/multi-select/multi-select.component.d.ts +2 -1
- package/components/primitive-textfield/primitive-textfield.component.d.ts +1 -0
- package/components/primitive-textfield/textfield/textfield.component.d.ts +1 -1
- package/components/sheet/components/sheet-heading/sheet-heading.component.d.ts +1 -1
- package/directives/textfield-controller/textfield-appearance.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-cleaner.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-controller.module.d.ts +0 -3
- package/directives/textfield-controller/textfield-controller.provider.d.ts +0 -6
- package/directives/textfield-controller/textfield-custom-content.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-filler.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-icon-left.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-icon.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-label-outside.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-postfix.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-prefix.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield-size.directive.d.ts +0 -6
- package/directives/textfield-controller/textfield.options.d.ts +0 -6
- package/directives/unfinished-validator/unfinished-validator.directive.d.ts +0 -3
- package/directives/unfinished-validator/unfinished.validator.d.ts +0 -3
- package/directives/value-accessor/value-accessor.directive.d.ts +0 -3
- package/directives/value-accessor/value-accessor.module.d.ts +0 -3
- package/directives/value-accessor/value-accessor.provider.d.ts +0 -3
- package/esm2022/classes/abstract-native-select.mjs +5 -4
- package/esm2022/classes/control.mjs +2 -1
- package/esm2022/classes/interactive.mjs +2 -1
- package/esm2022/components/arrow/arrow.component.mjs +3 -3
- package/esm2022/components/color-selector/color-edit/color-edit.component.mjs +3 -3
- package/esm2022/components/color-selector/color-picker/color-picker.component.mjs +3 -3
- package/esm2022/components/color-selector/color-selector.component.mjs +6 -6
- package/esm2022/components/color-selector/flat-picker/flat-picker.component.mjs +3 -3
- package/esm2022/components/color-selector/linear-multi-picker/linear-multi-picker.component.mjs +4 -4
- package/esm2022/components/color-selector/linear-picker/linear-picker.component.mjs +3 -3
- package/esm2022/components/color-selector/palette/palette.component.mjs +3 -3
- package/esm2022/components/combo-box/combo-box-strict.directive.mjs +2 -1
- package/esm2022/components/combo-box/combo-box.component.mjs +5 -5
- package/esm2022/components/combo-box/combo-box.directive.mjs +2 -1
- package/esm2022/components/input/input.component.mjs +4 -4
- package/esm2022/components/input/input.directive.mjs +2 -1
- package/esm2022/components/input-color/input-color.component.mjs +4 -4
- package/esm2022/components/input-copy/input-copy.component.mjs +4 -4
- package/esm2022/components/input-copy/input-copy.directive.mjs +2 -1
- package/esm2022/components/input-date/input-date.component.mjs +4 -4
- package/esm2022/components/input-date/input-date.directive.mjs +2 -1
- package/esm2022/components/input-date/native-date/native-date.component.mjs +2 -1
- package/esm2022/components/input-date-multi/input-date-multi.component.mjs +4 -4
- package/esm2022/components/input-date-range/input-date-range.component.mjs +6 -20
- package/esm2022/components/input-date-range/input-date-range.directive.mjs +2 -1
- package/esm2022/components/input-date-time/input-date-time.component.mjs +5 -5
- package/esm2022/components/input-date-time/input-date-time.directive.mjs +2 -1
- package/esm2022/components/input-date-time/native-date-time/native-date-time.directive.mjs +2 -1
- package/esm2022/components/input-month/input-month.component.mjs +5 -5
- package/esm2022/components/input-month/input-month.directive.mjs +2 -1
- package/esm2022/components/input-month-range/input-month-range.component.mjs +4 -4
- package/esm2022/components/input-month-range/input-month-range.directive.mjs +2 -1
- package/esm2022/components/input-number/input-number.component.mjs +4 -4
- package/esm2022/components/input-number/input-number.directive.mjs +2 -1
- package/esm2022/components/input-password/input-password.component.mjs +7 -4
- package/esm2022/components/input-password/input-password.directive.mjs +5 -1
- package/esm2022/components/input-password/input-password.module.mjs +4 -1
- package/esm2022/components/input-password/input-password.options.mjs +10 -1
- package/esm2022/components/input-phone/input-phone.component.mjs +4 -4
- package/esm2022/components/input-phone/input-phone.directive.mjs +2 -1
- package/esm2022/components/input-phone-international/input-phone-international.component.mjs +18 -18
- package/esm2022/components/input-range/input-range.component.mjs +4 -4
- package/esm2022/components/input-slider/input-slider.component.mjs +4 -4
- package/esm2022/components/input-tag/input-tag.component.mjs +10 -7
- package/esm2022/components/input-tag/input-tag.options.mjs +3 -2
- package/esm2022/components/input-time/input-time.component.mjs +4 -4
- package/esm2022/components/input-time/input-time.directive.mjs +2 -1
- package/esm2022/components/input-time/native-time/native-time.component.mjs +10 -10
- package/esm2022/components/input-year/input-year.component.mjs +4 -4
- package/esm2022/components/input-year/input-year.directive.mjs +2 -1
- package/esm2022/components/multi-select/hide-selected.pipe.mjs +2 -1
- package/esm2022/components/multi-select/multi-select-group/multi-select-group.component.mjs +2 -2
- package/esm2022/components/multi-select/multi-select-group/multi-select-group.directive.mjs +2 -1
- package/esm2022/components/multi-select/multi-select.component.mjs +9 -6
- package/esm2022/components/multi-select/multi-select.directive.mjs +2 -1
- package/esm2022/components/multi-select/native-multi-select/native-multi-select-group.component.mjs +4 -4
- package/esm2022/components/multi-select/native-multi-select/native-multi-select.component.mjs +4 -4
- package/esm2022/components/multi-select-option/multi-select-option.component.mjs +2 -2
- package/esm2022/components/primitive-textfield/primitive-textfield.component.mjs +12 -5
- package/esm2022/components/primitive-textfield/primitive-textfield.directive.mjs +2 -1
- package/esm2022/components/primitive-textfield/textfield/textfield.component.mjs +7 -7
- package/esm2022/components/primitive-textfield/value-decoration/value-decoration.component.mjs +4 -4
- package/esm2022/components/select/native-select/native-select-group.component.mjs +4 -4
- package/esm2022/components/select/native-select/native-select.component.mjs +4 -4
- package/esm2022/components/select/select.component.mjs +4 -4
- package/esm2022/components/select/select.directive.mjs +2 -1
- package/esm2022/components/select-option/select-option.component.mjs +5 -5
- package/esm2022/components/sheet/components/sheet/sheet.component.mjs +6 -5
- package/esm2022/components/sheet/components/sheet/sheet.providers.mjs +3 -3
- package/esm2022/components/sheet/components/sheet-bar/sheet-bar.component.mjs +3 -3
- package/esm2022/components/sheet/components/sheet-heading/sheet-heading.component.mjs +6 -6
- package/esm2022/components/sheet/components/sheets-host/sheets-host.component.mjs +3 -3
- package/esm2022/components/sheet/directives/sheet-close/sheet-close.directive.mjs +2 -1
- package/esm2022/components/sheet/directives/sheet-stop/sheet-stop.directive.mjs +2 -1
- package/esm2022/components/sheet/directives/sheet-top/sheet-top.directive.mjs +2 -1
- package/esm2022/components/sheet/directives/sheet-wrapper/sheet-wrapper.directive.mjs +2 -1
- package/esm2022/components/sheet/sheet.directive.mjs +2 -1
- package/esm2022/components/svg/svg.component.mjs +3 -3
- package/esm2022/components/svg/svg.service.mjs +2 -2
- package/esm2022/components/table-bar/table-bar.component.mjs +6 -6
- package/esm2022/components/table-bar/table-bars-host.component.mjs +3 -3
- package/esm2022/components/tag/tag.component.mjs +4 -4
- package/esm2022/components/textarea/textarea.component.mjs +4 -4
- package/esm2022/components/textarea/textarea.directive.mjs +2 -1
- package/esm2022/components/tooltip/tooltip.component.mjs +4 -4
- package/esm2022/directives/textfield-controller/textfield-appearance.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-cleaner.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-controller.module.mjs +1 -4
- package/esm2022/directives/textfield-controller/textfield-controller.provider.mjs +1 -7
- package/esm2022/directives/textfield-controller/textfield-custom-content.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-filler.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-icon-left.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-icon.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-label-outside.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-postfix.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-prefix.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield-size.directive.mjs +2 -7
- package/esm2022/directives/textfield-controller/textfield.options.mjs +1 -4
- package/esm2022/directives/unfinished-validator/unfinished-validator.directive.mjs +1 -4
- package/esm2022/directives/unfinished-validator/unfinished.validator.mjs +1 -4
- package/esm2022/directives/value-accessor/value-accessor.directive.mjs +2 -4
- package/esm2022/directives/value-accessor/value-accessor.module.mjs +1 -4
- package/esm2022/directives/value-accessor/value-accessor.provider.mjs +1 -4
- package/esm2022/directives/wrapper/wrapper.directive.mjs +2 -1
- package/esm2022/pipes/to-country-code/to-country-code.pipe.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-classes.mjs +6 -3
- package/fesm2022/taiga-ui-legacy-classes.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-arrow.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-arrow.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-color-selector.mjs +18 -18
- package/fesm2022/taiga-ui-legacy-components-color-selector.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-combo-box.mjs +6 -4
- package/fesm2022/taiga-ui-legacy-components-combo-box.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-color.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-input-color.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-copy.mjs +4 -3
- package/fesm2022/taiga-ui-legacy-components-input-copy.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs +5 -18
- package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs +6 -4
- package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date.mjs +5 -3
- package/fesm2022/taiga-ui-legacy-components-input-date.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs +4 -3
- package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-month.mjs +5 -4
- package/fesm2022/taiga-ui-legacy-components-input-month.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-number.mjs +4 -3
- package/fesm2022/taiga-ui-legacy-components-input-number.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-password.mjs +22 -3
- package/fesm2022/taiga-ui-legacy-components-input-password.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs +18 -18
- package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-phone.mjs +4 -3
- package/fesm2022/taiga-ui-legacy-components-input-phone.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-range.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-input-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-slider.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-input-slider.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-tag.mjs +11 -7
- package/fesm2022/taiga-ui-legacy-components-input-tag.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-time.mjs +13 -12
- package/fesm2022/taiga-ui-legacy-components-input-time.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-year.mjs +4 -3
- package/fesm2022/taiga-ui-legacy-components-input-year.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input.mjs +4 -3
- package/fesm2022/taiga-ui-legacy-components-input.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs +1 -1
- package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-multi-select.mjs +18 -12
- package/fesm2022/taiga-ui-legacy-components-multi-select.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs +21 -13
- package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-select-option.mjs +4 -4
- package/fesm2022/taiga-ui-legacy-components-select-option.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-select.mjs +10 -9
- package/fesm2022/taiga-ui-legacy-components-select.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-sheet.mjs +21 -15
- package/fesm2022/taiga-ui-legacy-components-sheet.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-svg.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-svg.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-table-bar.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-table-bar.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-tag.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-tag.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-textarea.mjs +4 -3
- package/fesm2022/taiga-ui-legacy-components-textarea.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-tooltip.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-tooltip.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs +10 -72
- package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs +0 -6
- package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs +1 -9
- package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs +1 -0
- package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs +2 -2
- package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs.map +1 -1
- package/package.json +318 -318
- package/styles/mixins/mixins.less +14 -14
- package/styles/mixins/textfield.less +10 -10
- package/styles/mixins/textfield.scss +1 -1
- package/utils/icons-path-factory.d.ts +1 -1
|
@@ -7,8 +7,8 @@ import * as i0 from "@angular/core";
|
|
|
7
7
|
* @deprecated: drop in v5.0
|
|
8
8
|
*/
|
|
9
9
|
export declare abstract class AbstractTuiNativeSelect<H = TuiTextfieldHost, T = string> {
|
|
10
|
-
private readonly idService;
|
|
11
10
|
protected readonly datalist: TemplateRef<any> | null;
|
|
11
|
+
protected readonly autoId: string;
|
|
12
12
|
protected readonly el: HTMLSelectElement;
|
|
13
13
|
protected readonly host: H;
|
|
14
14
|
protected readonly control: AbstractTuiControl<any>;
|
|
@@ -6,7 +6,7 @@ export declare class TuiColorEditComponent {
|
|
|
6
6
|
readonly colorChange: EventEmitter<[number, number, number, number]>;
|
|
7
7
|
readonly hexMask: MaskitoOptions;
|
|
8
8
|
readonly modes: string[];
|
|
9
|
-
mode: string;
|
|
9
|
+
mode: string | undefined;
|
|
10
10
|
get isHex(): boolean;
|
|
11
11
|
get hex(): string;
|
|
12
12
|
get opacity(): number;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { AfterViewChecked } from '@angular/core';
|
|
2
1
|
import type { MaskitoOptions } from '@maskito/core';
|
|
3
2
|
import type { TuiDateMode, TuiDay, TuiDayLike } from '@taiga-ui/cdk/date-time';
|
|
4
3
|
import { TuiDayRange, TuiMonth } from '@taiga-ui/cdk/date-time';
|
|
@@ -11,9 +10,8 @@ import { AbstractTuiNullableControl } from '@taiga-ui/legacy/classes';
|
|
|
11
10
|
import type { TuiFocusableElementAccessor } from '@taiga-ui/legacy/tokens';
|
|
12
11
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
13
12
|
import * as i0 from "@angular/core";
|
|
14
|
-
export declare class TuiInputDateRangeComponent extends AbstractTuiNullableControl<TuiDayRange> implements TuiFocusableElementAccessor
|
|
13
|
+
export declare class TuiInputDateRangeComponent extends AbstractTuiNullableControl<TuiDayRange> implements TuiFocusableElementAccessor {
|
|
15
14
|
private readonly textfield?;
|
|
16
|
-
private readonly calendarRange?;
|
|
17
15
|
private readonly isMobile;
|
|
18
16
|
private readonly mobileCalendar;
|
|
19
17
|
private readonly options;
|
|
@@ -38,7 +36,6 @@ export declare class TuiInputDateRangeComponent extends AbstractTuiNullableContr
|
|
|
38
36
|
get computedExampleText(): string;
|
|
39
37
|
get computedValue(): string;
|
|
40
38
|
onClick(): void;
|
|
41
|
-
ngAfterViewChecked(): void;
|
|
42
39
|
onValueChange(value: string): void;
|
|
43
40
|
onRangeChange(range: TuiDayRange | null): void;
|
|
44
41
|
writeValue(value: TuiDayRange | null): void;
|
|
@@ -6,6 +6,9 @@ import type { TuiFocusableElementAccessor, TuiNativeFocusableElement } from '@ta
|
|
|
6
6
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
7
7
|
import type { Observable } from 'rxjs';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
|
+
/**
|
|
10
|
+
* @deprecated use {@link TuiInputPassword} instead
|
|
11
|
+
*/
|
|
9
12
|
export declare class TuiInputPasswordComponent extends AbstractTuiControl<string> implements TuiFocusableElementAccessor {
|
|
10
13
|
private readonly textfield?;
|
|
11
14
|
private readonly textfieldSize;
|
|
@@ -13,7 +16,7 @@ export declare class TuiInputPasswordComponent extends AbstractTuiControl<string
|
|
|
13
16
|
protected readonly directive$: Observable<any>;
|
|
14
17
|
protected isPasswordHidden: boolean;
|
|
15
18
|
protected readonly computedAppearance$: Observable<string>;
|
|
16
|
-
protected readonly passwordTexts$: Observable<[show_password: string, hide_password: string]>;
|
|
19
|
+
protected readonly passwordTexts$: Observable<readonly [show_password: string, hide_password: string]>;
|
|
17
20
|
protected readonly options: import("./input-password.options").TuiInputPasswordOptions;
|
|
18
21
|
protected readonly type: TuiContext<TuiSizeL | TuiSizeS>;
|
|
19
22
|
get nativeFocusableElement(): TuiNativeFocusableElement | null;
|
|
@@ -2,6 +2,9 @@ import type { DoCheck } from '@angular/core';
|
|
|
2
2
|
import { AbstractTuiTextfieldHost } from '@taiga-ui/legacy/classes';
|
|
3
3
|
import type { TuiInputPasswordComponent } from './input-password.component';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* @deprecated use {@link TuiInputPassword} instead
|
|
7
|
+
*/
|
|
5
8
|
export declare class TuiInputPasswordDirective extends AbstractTuiTextfieldHost<TuiInputPasswordComponent> implements DoCheck {
|
|
6
9
|
protected input?: HTMLInputElement;
|
|
7
10
|
onValueChange(value: string): void;
|
|
@@ -9,6 +9,9 @@ import * as i7 from "@taiga-ui/legacy/components/primitive-textfield";
|
|
|
9
9
|
import * as i8 from "@taiga-ui/legacy/directives";
|
|
10
10
|
import * as i9 from "@taiga-ui/core/directives/appearance";
|
|
11
11
|
import * as i10 from "@taiga-ui/core/components/icon";
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated use {@link TuiInputPassword} instead
|
|
14
|
+
*/
|
|
12
15
|
export declare class TuiInputPasswordModule {
|
|
13
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiInputPasswordModule, never>;
|
|
14
17
|
static ɵmod: i0.ɵɵNgModuleDeclaration<TuiInputPasswordModule, [typeof i1.TuiInputPasswordComponent, typeof i2.TuiInputPasswordDirective], [typeof i3.TuiHintComponent, typeof i3.TuiHintDirective, typeof i3.TuiHintOptionsDirective, typeof i3.TuiHintUnstyled, typeof i3.TuiHintDriver, typeof i3.TuiHintPosition, typeof i3.TuiHintHover, typeof i3.TuiHintOverflow, typeof i3.TuiHintDescribe, typeof i3.TuiHintHost, typeof i3.TuiHintManual, typeof i3.TuiHintPointer, typeof i4.CommonModule, typeof i5.FormsModule, typeof i6.PolymorpheusOutlet, typeof i6.PolymorpheusTemplate, typeof i7.TuiPrimitiveTextfieldModule, typeof i8.TuiTextfieldControllerModule, typeof i9.TuiAppearance, typeof i10.TuiIcon], [typeof i1.TuiInputPasswordComponent, typeof i2.TuiInputPasswordDirective, typeof i7.TuiTextfieldComponent, typeof i3.TuiHintComponent, typeof i3.TuiHintDirective, typeof i3.TuiHintOptionsDirective, typeof i3.TuiHintUnstyled, typeof i3.TuiHintDriver, typeof i3.TuiHintPosition, typeof i3.TuiHintHover, typeof i3.TuiHintOverflow, typeof i3.TuiHintDescribe, typeof i3.TuiHintHost, typeof i3.TuiHintManual, typeof i3.TuiHintPointer]>;
|
|
@@ -2,12 +2,24 @@ import type { Provider } from '@angular/core';
|
|
|
2
2
|
import type { TuiContext } from '@taiga-ui/cdk/types';
|
|
3
3
|
import type { TuiSizeL, TuiSizeS } from '@taiga-ui/core/types';
|
|
4
4
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
5
|
+
/**
|
|
6
|
+
* @deprecated use {@link TuiInputPassword} instead
|
|
7
|
+
*/
|
|
5
8
|
export interface TuiInputPasswordOptions {
|
|
6
9
|
readonly icons: Readonly<{
|
|
7
10
|
hide: PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>>;
|
|
8
11
|
show: PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>>;
|
|
9
12
|
}>;
|
|
10
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* @deprecated use {@link TuiInputPassword} instead
|
|
16
|
+
*/
|
|
11
17
|
export declare const TUI_INPUT_PASSWORD_DEFAULT_OPTIONS: TuiInputPasswordOptions;
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated use {@link TuiInputPassword} instead
|
|
20
|
+
*/
|
|
12
21
|
export declare const TUI_INPUT_PASSWORD_OPTIONS: import("@angular/core").InjectionToken<TuiInputPasswordOptions>;
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated use {@link TuiInputPassword} instead
|
|
24
|
+
*/
|
|
13
25
|
export declare function tuiInputPasswordOptionsProvider(options: Partial<TuiInputPasswordOptions>): Provider;
|
|
@@ -33,6 +33,7 @@ export declare class TuiInputTagComponent extends AbstractTuiMultipleControl<str
|
|
|
33
33
|
rows: number;
|
|
34
34
|
inputHidden: boolean;
|
|
35
35
|
uniqueTags: boolean;
|
|
36
|
+
autoColor: boolean;
|
|
36
37
|
maxLength: number | null;
|
|
37
38
|
placeholder: string;
|
|
38
39
|
removable: boolean;
|
|
@@ -90,5 +91,5 @@ export declare class TuiInputTagComponent extends AbstractTuiMultipleControl<str
|
|
|
90
91
|
private focusInput;
|
|
91
92
|
private clippedValue;
|
|
92
93
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiInputTagComponent, never>;
|
|
93
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiInputTagComponent, "tui-input-tag", never, { "separator": { "alias": "separator"; "required": false; }; "search": { "alias": "search"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "tagValidator": { "alias": "tagValidator"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "inputHidden": { "alias": "inputHidden"; "required": false; }; "uniqueTags": { "alias": "uniqueTags"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "removable": { "alias": "removable"; "required": false; }; "pseudoOpen": { "alias": "pseudoOpen"; "required": false; }; "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "pseudoFocusedSetter": { "alias": "pseudoFocused"; "required": false; }; }, { "searchChange": "searchChange"; }, ["datalist"], ["*", "tuiContent", "select"], false, never>;
|
|
94
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiInputTagComponent, "tui-input-tag", never, { "separator": { "alias": "separator"; "required": false; }; "search": { "alias": "search"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "tagValidator": { "alias": "tagValidator"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "inputHidden": { "alias": "inputHidden"; "required": false; }; "uniqueTags": { "alias": "uniqueTags"; "required": false; }; "autoColor": { "alias": "autoColor"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "removable": { "alias": "removable"; "required": false; }; "pseudoOpen": { "alias": "pseudoOpen"; "required": false; }; "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "pseudoFocusedSetter": { "alias": "pseudoFocused"; "required": false; }; }, { "searchChange": "searchChange"; }, ["datalist"], ["*", "tuiContent", "select"], false, never>;
|
|
94
95
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Provider } from '@angular/core';
|
|
2
2
|
import type { TuiStatus } from '@taiga-ui/legacy/utils';
|
|
3
3
|
export interface TuiInputTagOptions {
|
|
4
|
+
readonly autoColor: boolean;
|
|
4
5
|
readonly separator: RegExp | string;
|
|
5
6
|
readonly tagStatus: TuiStatus;
|
|
6
7
|
readonly uniqueTags: boolean;
|
|
@@ -2,7 +2,7 @@ import type { TuiInputTimeDirective } from '../input-time.directive';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class TuiNativeTimeComponent {
|
|
4
4
|
protected readonly host: TuiInputTimeDirective;
|
|
5
|
-
protected readonly
|
|
5
|
+
protected readonly autoId: string;
|
|
6
6
|
protected get items(): string[];
|
|
7
7
|
protected get value(): string;
|
|
8
8
|
protected get step(): number;
|
|
@@ -31,6 +31,7 @@ export declare class TuiMultiSelectComponent<T> extends AbstractTuiMultipleContr
|
|
|
31
31
|
valueContent: TuiMultiSelectOptions<T>['valueContent'];
|
|
32
32
|
tagValidator: TuiBooleanHandler<T>;
|
|
33
33
|
rows: TuiMultiSelectOptions<T>['rows'];
|
|
34
|
+
autoColor: boolean;
|
|
34
35
|
readonly searchChange: EventEmitter<string | null>;
|
|
35
36
|
get size(): TuiSizeL | TuiSizeS;
|
|
36
37
|
get nativeFocusableElement(): HTMLInputElement | null;
|
|
@@ -61,5 +62,5 @@ export declare class TuiMultiSelectComponent<T> extends AbstractTuiMultipleContr
|
|
|
61
62
|
protected onActiveZone(active: boolean): void;
|
|
62
63
|
private updateSearch;
|
|
63
64
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiMultiSelectComponent<any>, never>;
|
|
64
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiMultiSelectComponent<any>, "tui-multi-select", never, { "stringify": { "alias": "stringify"; "required": false; }; "identityMatcher": { "alias": "identityMatcher"; "required": false; }; "search": { "alias": "search"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "valueContent": { "alias": "valueContent"; "required": false; }; "tagValidator": { "alias": "tagValidator"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; }, { "searchChange": "searchChange"; }, ["accessor", "nativeSelect", "datalist"], ["*", "select"], false, never>;
|
|
65
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiMultiSelectComponent<any>, "tui-multi-select", never, { "stringify": { "alias": "stringify"; "required": false; }; "identityMatcher": { "alias": "identityMatcher"; "required": false; }; "search": { "alias": "search"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "valueContent": { "alias": "valueContent"; "required": false; }; "tagValidator": { "alias": "tagValidator"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "autoColor": { "alias": "autoColor"; "required": false; }; }, { "searchChange": "searchChange"; }, ["accessor", "nativeSelect", "datalist"], ["*", "select"], false, never>;
|
|
65
66
|
}
|
|
@@ -61,6 +61,7 @@ export declare class TuiPrimitiveTextfieldComponent extends AbstractTuiInteracti
|
|
|
61
61
|
protected onFocused(focused: boolean): void;
|
|
62
62
|
protected clear(): void;
|
|
63
63
|
protected onMouseDown(event: MouseEvent): void;
|
|
64
|
+
protected transitionStartHandler({ propertyName, target }: TransitionEvent): void;
|
|
64
65
|
protected onAutofilled(autofilled: boolean): void;
|
|
65
66
|
protected detectRetargetFromLabel(event: Event): void;
|
|
66
67
|
private get iconPaddingLeft();
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { TuiTextfieldHost } from '@taiga-ui/legacy/tokens';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class TuiTextfieldComponent {
|
|
4
|
+
private readonly autoId;
|
|
4
5
|
private readonly el;
|
|
5
|
-
private readonly idService;
|
|
6
6
|
protected readonly controller: import("@taiga-ui/legacy/directives").TuiTextfieldController;
|
|
7
7
|
protected readonly host: TuiTextfieldHost;
|
|
8
8
|
constructor();
|
|
@@ -6,7 +6,7 @@ export declare class TuiSheetHeadingComponent implements AfterViewInit {
|
|
|
6
6
|
private readonly el;
|
|
7
7
|
protected readonly closeWord$: import("rxjs").Observable<string>;
|
|
8
8
|
protected readonly icons: import("@taiga-ui/core/tokens").TuiCommonIcons;
|
|
9
|
-
protected readonly
|
|
9
|
+
protected readonly autoId: string;
|
|
10
10
|
ngAfterViewInit(): void;
|
|
11
11
|
protected onClick(): void;
|
|
12
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiSheetHeadingComponent, never>;
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated: drop in v5.0
|
|
5
|
-
*/
|
|
6
3
|
export declare const TUI_TEXTFIELD_APPEARANCE_DIRECTIVE: import("@angular/core").InjectionToken<TuiTextfieldAppearanceDirective>;
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated: drop in v5.0
|
|
9
|
-
*/
|
|
10
4
|
export declare class TuiTextfieldAppearanceDirective extends AbstractTuiController {
|
|
11
5
|
appearance: string;
|
|
12
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldAppearanceDirective, never>;
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated: drop in v5.0
|
|
5
|
-
*/
|
|
6
3
|
export declare const TUI_TEXTFIELD_CLEANER: import("@angular/core").InjectionToken<TuiTextfieldCleanerDirective>;
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated: drop in v5.0
|
|
9
|
-
*/
|
|
10
4
|
export declare class TuiTextfieldCleanerDirective extends AbstractTuiController {
|
|
11
5
|
cleaner: boolean;
|
|
12
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldCleanerDirective, never>;
|
|
@@ -10,9 +10,6 @@ import * as i8 from "./textfield-prefix.directive";
|
|
|
10
10
|
import * as i9 from "./textfield-postfix.directive";
|
|
11
11
|
import * as i10 from "./textfield-filler.directive";
|
|
12
12
|
import * as i11 from "@taiga-ui/polymorpheus";
|
|
13
|
-
/**
|
|
14
|
-
* @deprecated: drop in v5.0
|
|
15
|
-
*/
|
|
16
13
|
export declare class TuiTextfieldControllerModule {
|
|
17
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldControllerModule, never>;
|
|
18
15
|
static ɵmod: i0.ɵɵNgModuleDeclaration<TuiTextfieldControllerModule, [typeof i1.TuiTextfieldAppearanceDirective, typeof i2.TuiTextfieldCleanerDirective, typeof i3.TuiTextfieldCustomContentDirective, typeof i4.TuiTextfieldLabelOutsideDirective, typeof i5.TuiTextfieldSizeDirective, typeof i6.TuiTextfieldIconDirective, typeof i7.TuiTextfieldIconLeftDirective, typeof i8.TuiTextfieldPrefixDirective, typeof i9.TuiTextfieldPostfixDirective, typeof i10.TuiTextfieldFillerDirective], [typeof i11.PolymorpheusOutlet, typeof i11.PolymorpheusTemplate], [typeof i1.TuiTextfieldAppearanceDirective, typeof i2.TuiTextfieldCleanerDirective, typeof i3.TuiTextfieldCustomContentDirective, typeof i4.TuiTextfieldLabelOutsideDirective, typeof i5.TuiTextfieldSizeDirective, typeof i6.TuiTextfieldIconDirective, typeof i7.TuiTextfieldIconLeftDirective, typeof i8.TuiTextfieldPrefixDirective, typeof i9.TuiTextfieldPostfixDirective, typeof i10.TuiTextfieldFillerDirective, typeof i11.PolymorpheusOutlet, typeof i11.PolymorpheusTemplate]>;
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
import type { Provider } from '@angular/core';
|
|
2
2
|
import { InjectionToken } from '@angular/core';
|
|
3
3
|
import { TuiTextfieldController } from './textfield.controller';
|
|
4
|
-
/**
|
|
5
|
-
* @deprecated: drop in v5.0
|
|
6
|
-
*/
|
|
7
4
|
export declare const TUI_TEXTFIELD_WATCHED_CONTROLLER: InjectionToken<TuiTextfieldController>;
|
|
8
|
-
/**
|
|
9
|
-
* @deprecated: drop in v5.0
|
|
10
|
-
*/
|
|
11
5
|
export declare const TEXTFIELD_CONTROLLER_PROVIDER: Provider;
|
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
2
2
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* @deprecated: drop in v5.0
|
|
6
|
-
*/
|
|
7
4
|
export declare const TUI_TEXTFIELD_CUSTOM_CONTENT: import("@angular/core").InjectionToken<TuiTextfieldCustomContentDirective>;
|
|
8
|
-
/**
|
|
9
|
-
* @deprecated: drop in v5.0
|
|
10
|
-
*/
|
|
11
5
|
export declare class TuiTextfieldCustomContentDirective extends AbstractTuiController {
|
|
12
6
|
customContent: PolymorpheusContent;
|
|
13
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldCustomContentDirective, never>;
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated: drop in v5.0
|
|
5
|
-
*/
|
|
6
3
|
export declare const TUI_TEXTFIELD_FILLER: import("@angular/core").InjectionToken<TuiTextfieldFillerDirective>;
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated: drop in v5.0
|
|
9
|
-
*/
|
|
10
4
|
export declare class TuiTextfieldFillerDirective extends AbstractTuiController {
|
|
11
5
|
filler: string;
|
|
12
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldFillerDirective, never>;
|
|
@@ -3,13 +3,7 @@ import type { TuiSizeL, TuiSizeS } from '@taiga-ui/core/types';
|
|
|
3
3
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
4
4
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
/**
|
|
7
|
-
* @deprecated: drop in v5.0
|
|
8
|
-
*/
|
|
9
6
|
export declare const TUI_TEXTFIELD_ICON_LEFT: import("@angular/core").InjectionToken<TuiTextfieldIconLeftDirective>;
|
|
10
|
-
/**
|
|
11
|
-
* @deprecated: drop in v5.0
|
|
12
|
-
*/
|
|
13
7
|
export declare class TuiTextfieldIconLeftDirective extends AbstractTuiController {
|
|
14
8
|
iconStart: PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>>;
|
|
15
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldIconLeftDirective, never>;
|
|
@@ -3,13 +3,7 @@ import type { TuiSizeL, TuiSizeS } from '@taiga-ui/core/types';
|
|
|
3
3
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
4
4
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
/**
|
|
7
|
-
* @deprecated: drop in v5.0
|
|
8
|
-
*/
|
|
9
6
|
export declare const TUI_TEXTFIELD_ICON: import("@angular/core").InjectionToken<TuiTextfieldIconDirective>;
|
|
10
|
-
/**
|
|
11
|
-
* @deprecated: drop in v5.0
|
|
12
|
-
*/
|
|
13
7
|
export declare class TuiTextfieldIconDirective extends AbstractTuiController {
|
|
14
8
|
icon: PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>>;
|
|
15
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldIconDirective, never>;
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated: drop in v5.0
|
|
5
|
-
*/
|
|
6
3
|
export declare const TUI_TEXTFIELD_LABEL_OUTSIDE: import("@angular/core").InjectionToken<TuiTextfieldLabelOutsideDirective>;
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated: drop in v5.0
|
|
9
|
-
*/
|
|
10
4
|
export declare class TuiTextfieldLabelOutsideDirective extends AbstractTuiController {
|
|
11
5
|
labelOutside: boolean;
|
|
12
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldLabelOutsideDirective, never>;
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated: drop in v5.0
|
|
5
|
-
*/
|
|
6
3
|
export declare const TUI_TEXTFIELD_POSTFIX: import("@angular/core").InjectionToken<TuiTextfieldPostfixDirective>;
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated: drop in v5.0
|
|
9
|
-
*/
|
|
10
4
|
export declare class TuiTextfieldPostfixDirective extends AbstractTuiController {
|
|
11
5
|
postfix: string;
|
|
12
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldPostfixDirective, never>;
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated: drop in v5.0
|
|
5
|
-
*/
|
|
6
3
|
export declare const TUI_TEXTFIELD_PREFIX: import("@angular/core").InjectionToken<TuiTextfieldPrefixDirective>;
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated: drop in v5.0
|
|
9
|
-
*/
|
|
10
4
|
export declare class TuiTextfieldPrefixDirective extends AbstractTuiController {
|
|
11
5
|
prefix: string;
|
|
12
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldPrefixDirective, never>;
|
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
import type { TuiSizeL, TuiSizeS } from '@taiga-ui/core/types';
|
|
2
2
|
import { AbstractTuiController } from '@taiga-ui/legacy/classes';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* @deprecated: drop in v5.0
|
|
6
|
-
*/
|
|
7
4
|
export declare const TUI_TEXTFIELD_SIZE: import("@angular/core").InjectionToken<TuiTextfieldSizeDirective>;
|
|
8
|
-
/**
|
|
9
|
-
* @deprecated: drop in v5.0
|
|
10
|
-
*/
|
|
11
5
|
export declare class TuiTextfieldSizeDirective extends AbstractTuiController {
|
|
12
6
|
size: TuiSizeL | TuiSizeS;
|
|
13
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldSizeDirective, never>;
|
|
@@ -2,9 +2,6 @@ import type { Provider } from '@angular/core';
|
|
|
2
2
|
import type { TuiContext } from '@taiga-ui/cdk/types';
|
|
3
3
|
import type { TuiSizeL, TuiSizeS } from '@taiga-ui/core/types';
|
|
4
4
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
5
|
-
/**
|
|
6
|
-
* @deprecated: drop in v5.0
|
|
7
|
-
*/
|
|
8
5
|
export interface TuiTextfieldOptions {
|
|
9
6
|
readonly hintOnDisabled: boolean;
|
|
10
7
|
readonly iconCleaner: PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>>;
|
|
@@ -19,7 +16,4 @@ export declare const TUI_TEXTFIELD_DEFAULT_OPTIONS: TuiTextfieldOptions;
|
|
|
19
16
|
* Default parameters for textfield
|
|
20
17
|
*/
|
|
21
18
|
export declare const TUI_TEXTFIELD_OPTIONS: import("@angular/core").InjectionToken<TuiTextfieldOptions>;
|
|
22
|
-
/**
|
|
23
|
-
* @deprecated: drop in v5.0
|
|
24
|
-
*/
|
|
25
19
|
export declare function tuiTextfieldOptionsProvider(options: Partial<TuiTextfieldOptions>): Provider;
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import type { Validator } from '@angular/forms';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated: drop in v5.0
|
|
5
|
-
*/
|
|
6
3
|
export declare class TuiUnfinishedValidator implements Validator {
|
|
7
4
|
private readonly injector;
|
|
8
5
|
readonly validate: import("@angular/forms").ValidatorFn;
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
import type { ValidatorFn } from '@angular/forms';
|
|
2
2
|
import type { TuiFocusableElementAccessor } from '@taiga-ui/legacy/tokens';
|
|
3
3
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
4
|
-
/**
|
|
5
|
-
* @deprecated: drop in v5.0
|
|
6
|
-
*/
|
|
7
4
|
export declare function tuiCreateUnfinishedValidator(nativeInputGetter: () => TuiFocusableElementAccessor, message: PolymorpheusContent): ValidatorFn;
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
|
-
/**
|
|
3
|
-
* @deprecated: drop in v5.0
|
|
4
|
-
*/
|
|
5
2
|
export declare class TuiValueAccessorDirective {
|
|
6
3
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiValueAccessorDirective, never>;
|
|
7
4
|
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiValueAccessorDirective, "[tuiValueAccessor]", never, {}, {}, never, never, false, never>;
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
import * as i1 from "./value-accessor.directive";
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated: drop in v5.0
|
|
5
|
-
*/
|
|
6
3
|
export declare class TuiValueAccessorModule {
|
|
7
4
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiValueAccessorModule, never>;
|
|
8
5
|
static ɵmod: i0.ɵɵNgModuleDeclaration<TuiValueAccessorModule, [typeof i1.TuiValueAccessorDirective], never, [typeof i1.TuiValueAccessorDirective]>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Directive, inject, Input, TemplateRef, ViewChild } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { tuiInjectId } from '@taiga-ui/cdk/services';
|
|
3
3
|
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
|
4
4
|
import { TuiDataListDirective } from '@taiga-ui/core/components/data-list';
|
|
5
5
|
import { TUI_ITEMS_HANDLERS } from '@taiga-ui/kit/tokens';
|
|
@@ -11,8 +11,8 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
*/
|
|
12
12
|
class AbstractTuiNativeSelect {
|
|
13
13
|
constructor() {
|
|
14
|
-
this.idService = inject(TuiIdService);
|
|
15
14
|
this.datalist = null;
|
|
15
|
+
this.autoId = tuiInjectId();
|
|
16
16
|
this.el = tuiInjectElement();
|
|
17
17
|
this.host = inject(TUI_TEXTFIELD_HOST);
|
|
18
18
|
this.control = inject(AbstractTuiControl);
|
|
@@ -21,7 +21,7 @@ class AbstractTuiNativeSelect {
|
|
|
21
21
|
this.placeholder = '';
|
|
22
22
|
}
|
|
23
23
|
get id() {
|
|
24
|
-
return this.el.id || this.
|
|
24
|
+
return this.el.id || this.autoId;
|
|
25
25
|
}
|
|
26
26
|
get emptyOption() {
|
|
27
27
|
return !!this.placeholder && !this.control.value;
|
|
@@ -33,6 +33,7 @@ export { AbstractTuiNativeSelect };
|
|
|
33
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AbstractTuiNativeSelect, decorators: [{
|
|
34
34
|
type: Directive,
|
|
35
35
|
args: [{
|
|
36
|
+
standalone: false,
|
|
36
37
|
host: {
|
|
37
38
|
'[id]': 'id',
|
|
38
39
|
},
|
|
@@ -45,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
45
46
|
}], placeholder: [{
|
|
46
47
|
type: Input
|
|
47
48
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtbmF0aXZlLXNlbGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xlZ2FjeS9jbGFzc2VzL2Fic3RyYWN0LW5hdGl2ZS1zZWxlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRW5ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRTNELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLFdBQVcsQ0FBQzs7QUFFN0M7O0dBRUc7QUFDSCxNQU1zQix1QkFBdUI7SUFON0M7UUFRdUIsYUFBUSxHQUE0QixJQUFJLENBQUM7UUFFekMsV0FBTSxHQUFHLFdBQVcsRUFBRSxDQUFDO1FBQ3ZCLE9BQUUsR0FBRyxnQkFBZ0IsRUFBcUIsQ0FBQztRQUMzQyxTQUFJLEdBQUcsTUFBTSxDQUFJLGtCQUFrQixDQUFDLENBQUM7UUFDckMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3JDLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFHdkQsd0JBQW1CLEdBQWdDLElBQUksQ0FBQztRQUd4RCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztLQVMzQjtJQVBHLElBQWMsRUFBRTtRQUNaLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBYyxXQUFXO1FBQ3JCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUNyRCxDQUFDOytHQXRCaUIsdUJBQXVCO21HQUF2Qix1QkFBdUIsOExBQzlCLG9CQUFvQiwyQkFBUyxXQUFXOztTQURqQyx1QkFBdUI7NEZBQXZCLHVCQUF1QjtrQkFONUMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsS0FBSztvQkFDakIsSUFBSSxFQUFFO3dCQUNGLE1BQU0sRUFBRSxJQUFJO3FCQUNmO2lCQUNKOzhCQUdzQixRQUFRO3NCQUQxQixTQUFTO3VCQUFDLG9CQUFvQixFQUFFLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQVUzRCxtQkFBbUI7c0JBRHpCLEtBQUs7Z0JBSUMsV0FBVztzQkFEakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpSW5qZWN0SWR9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuaW1wb3J0IHR5cGUge1R1aUJvb2xlYW5IYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHtUdWlEYXRhTGlzdERpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUVUlfSVRFTVNfSEFORExFUlN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtUdWlUZXh0ZmllbGRIb3N0fSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L3Rva2Vucyc7XG5pbXBvcnQge1RVSV9URVhURklFTERfSE9TVH0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeS90b2tlbnMnO1xuXG5pbXBvcnQge0Fic3RyYWN0VHVpQ29udHJvbH0gZnJvbSAnLi9jb250cm9sJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZDogZHJvcCBpbiB2NS4wXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IGZhbHNlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tpZF0nOiAnaWQnLFxuICAgIH0sXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0VHVpTmF0aXZlU2VsZWN0PEggPSBUdWlUZXh0ZmllbGRIb3N0LCBUID0gc3RyaW5nPiB7XG4gICAgQFZpZXdDaGlsZChUdWlEYXRhTGlzdERpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWV9KVxuICAgIHByb3RlY3RlZCByZWFkb25seSBkYXRhbGlzdDogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGF1dG9JZCA9IHR1aUluamVjdElkKCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudDxIVE1MU2VsZWN0RWxlbWVudD4oKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaG9zdCA9IGluamVjdDxIPihUVUlfVEVYVEZJRUxEX0hPU1QpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb250cm9sID0gaW5qZWN0KEFic3RyYWN0VHVpQ29udHJvbCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGl0ZW1zSGFuZGxlcnMgPSBpbmplY3QoVFVJX0lURU1TX0hBTkRMRVJTKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBwbGFjZWhvbGRlciA9ICcnO1xuXG4gICAgcHJvdGVjdGVkIGdldCBpZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5lbC5pZCB8fCB0aGlzLmF1dG9JZDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGVtcHR5T3B0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnBsYWNlaG9sZGVyICYmICF0aGlzLmNvbnRyb2wudmFsdWU7XG4gICAgfVxufVxuIl19
|
|
@@ -160,6 +160,7 @@ export { AbstractTuiControl };
|
|
|
160
160
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AbstractTuiControl, decorators: [{
|
|
161
161
|
type: Directive,
|
|
162
162
|
args: [{
|
|
163
|
+
standalone: false,
|
|
163
164
|
host: {
|
|
164
165
|
'[class._readonly]': 'readOnly',
|
|
165
166
|
'[class._invalid]': 'computedInvalid',
|
|
@@ -173,4 +174,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
173
174
|
export function tuiAsControl(control) {
|
|
174
175
|
return tuiProvide(AbstractTuiControl, control);
|
|
175
176
|
}
|
|
176
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xlZ2FjeS9jbGFzc2VzL2NvbnRyb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBRXhELE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsT0FBTyxFQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzRSxPQUFPLEVBQ0gsS0FBSyxFQUNMLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sR0FBRyxFQUNILEtBQUssRUFDTCxTQUFTLEVBQ1QsT0FBTyxFQUNQLFNBQVMsR0FDWixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFFckQ7OztHQUdHO0FBQ0gsTUFNc0Isa0JBQ2xCLFNBQVEsc0JBQXNCO0lBdUI5QjtRQUNJLEtBQUssRUFBRSxDQUFDO1FBckJLLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFFaEQsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFdEMsY0FBUyxHQUFHLGNBQWMsQ0FBQztRQUMzQixhQUFRLEdBQUcsY0FBYyxDQUFDO1FBQ2pCLGtCQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFD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QUFJLE9BQW9DO0lBQ2hFLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSB0eXBlcz1cIkB0YWlnYS11aS90c2NvbmZpZy9uZy1kZXYtbW9kZVwiIC8+XG5pbXBvcnQgdHlwZSB7T25Jbml0LCBQcm92aWRlciwgVHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIGluamVjdCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB0eXBlIHtBYnN0cmFjdENvbnRyb2wsIENvbnRyb2xWYWx1ZUFjY2Vzc29yfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge05nQ29udHJvbCwgTmdNb2RlbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtUdWlWYWx1ZVRyYW5zZm9ybWVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NsYXNzZXMnO1xuaW1wb3J0IHtFTVBUWV9GVU5DVElPTn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHt0dWlJc1ByZXNlbnQsIHR1aVByb3ZpZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1xuICAgIGRlbGF5LFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICAgIGZpbHRlcixcbiAgICBtYXAsXG4gICAgbWVyZ2UsXG4gICAgc3RhcnRXaXRoLFxuICAgIFN1YmplY3QsXG4gICAgc3dpdGNoTWFwLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtBYnN0cmFjdFR1aUludGVyYWN0aXZlfSBmcm9tICcuL2ludGVyYWN0aXZlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZDogZHJvcCBpbiB2NS4wXG4gKiBCYXNpYyBDb250cm9sVmFsdWVBY2Nlc3NvciBjbGFzcyB0byBidWlsZCBmb3JtIGNvbXBvbmVudHMgdXBvblxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBob3N0OiB7XG4gICAgICAgICdbY2xhc3MuX3JlYWRvbmx5XSc6ICdyZWFkT25seScsXG4gICAgICAgICdbY2xhc3MuX2ludmFsaWRdJzogJ2NvbXB1dGVkSW52YWxpZCcsXG4gICAgfSxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RUdWlDb250cm9sPFQ+XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aUludGVyYWN0aXZlXG4gICAgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG57XG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ0NvbnRyb2wgPSBpbmplY3QoTmdDb250cm9sLCB7b3B0aW9uYWw6IHRydWV9KTtcbiAgICBwcml2YXRlIHByZXZpb3VzSW50ZXJuYWxWYWx1ZT86IFQgfCBudWxsO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVmcmVzaCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJvdGVjdGVkIG9uVG91Y2hlZCA9IEVNUFRZX0ZVTkNUSU9OO1xuICAgIHByb3RlY3RlZCBvbkNoYW5nZSA9IEVNUFRZX0ZVTkNUSU9OO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBmYWxsYmFja1ZhbHVlID0gdGhpcy5nZXRGYWxsYmFja1ZhbHVlKCk7XG4gICAgcHJvdGVjdGVkIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHZhbHVlVHJhbnNmb3JtZXIgPSBpbmplY3Q8VHVpVmFsdWVUcmFuc2Zvcm1lcjxUPj4oXG4gICAgICAgIFR1aVZhbHVlVHJhbnNmb3JtZXIsXG4gICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHJlYWRPbmx5ID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBwc2V1ZG9JbnZhbGlkOiBib29sZWFuIHwgbnVsbCA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICBpZiAobmdEZXZNb2RlICYmIHRoaXMubmdDb250cm9sID09PSBudWxsKSB7XG4gICAgICAgICAgICBjb25zb2xlLmFzc2VydChcbiAgICAgICAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAgICAgICBgTmdDb250cm9sIG5vdCBpbmplY3RlZCBpbiAke3RoaXMuY29uc3RydWN0b3IubmFtZX0hXFxuYCxcbiAgICAgICAgICAgICAgICAnVXNlIFsobmdNb2RlbCldIG9yIFtmb3JtQ29udHJvbF0gb3IgZm9ybUNvbnRyb2xOYW1lIGZvciBjb3JyZWN0IHdvcmsuJyxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5uZ0NvbnRyb2wpIHtcbiAgICAgICAgICAgIHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGdldEZhbGxiYWNrVmFsdWUoKTogVDtcblxuICAgIHB1YmxpYyBnZXQgY29tcHV0ZWRJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5pbnRlcmFjdGl2ZSAmJlxuICAgICAgICAgICAgKHRoaXMucHNldWRvSW52YWxpZCAhPT0gbnVsbFxuICAgICAgICAgICAgICAgID8gdGhpcy5wc2V1ZG9JbnZhbGlkXG4gICAgICAgICAgICAgICAgOiB0aGlzLnRvdWNoZWQgJiYgdGhpcy5pbnZhbGlkKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdmFsdWUoKTogVCB7XG4gICAgICAgIHJldHVybiB0aGlzLnByZXZpb3VzSW50ZXJuYWxWYWx1ZSA/PyB0aGlzLmZhbGxiYWNrVmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogVCkge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNhZmVDdXJyZW50VmFsdWUoKTogVCB7XG4gICAgICAgIHJldHVybiB0aGlzLnJhd1ZhbHVlID8/IHRoaXMuZmFsbGJhY2tWYWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhZmVOZ0NvbnRyb2xEYXRhPGJvb2xlYW4+KCh7aW52YWxpZH0pID0+IGludmFsaWQsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zYWZlTmdDb250cm9sRGF0YTxib29sZWFuPigoe3ZhbGlkfSkgPT4gdmFsaWQsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHRvdWNoZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhZmVOZ0NvbnRyb2xEYXRhPGJvb2xlYW4+KCh7dG91Y2hlZH0pID0+IHRvdWNoZWQsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zYWZlTmdDb250cm9sRGF0YTxib29sZWFuPigoe2Rpc2FibGVkfSkgPT4gZGlzYWJsZWQsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGludGVyYWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMucmVhZE9ubHkgJiYgIXRoaXMuY29tcHV0ZWREaXNhYmxlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhZmVOZ0NvbnRyb2xEYXRhPEFic3RyYWN0Q29udHJvbCB8IG51bGw+KFxuICAgICAgICAgICAgKHtjb250cm9sfSkgPT4gY29udHJvbCxcbiAgICAgICAgICAgIG51bGwsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjb21wdXRlZE5hbWUoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xOYW1lPy50b1N0cmluZygpID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjb250cm9sTmFtZSgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmdDb250cm9sPy5uYW1lPy50b1N0cmluZygpID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlZnJlc2gkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBkZWxheSgwKSxcbiAgICAgICAgICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgICAgICAgICAgbWFwKCgpID0+IHRoaXMubmdDb250cm9sPy5jb250cm9sKSxcbiAgICAgICAgICAgICAgICBmaWx0ZXIodHVpSXNQcmVzZW50KSxcbiAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgoY29udHJvbCkgPT5cbiAgICAgICAgICAgICAgICAgICAgbWVyZ2UoY29udHJvbC52YWx1ZUNoYW5nZXMsIGNvbnRyb2wuc3RhdHVzQ2hhbmdlcyksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucmVmcmVzaExvY2FsVmFsdWUodGhpcy5zYWZlQ3VycmVudFZhbHVlKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBjaGVja0NvbnRyb2xVcGRhdGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKG9uQ2hhbmdlOiAodmFsdWU6IFQgfCB1bmtub3duKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSAoY29tcG9uZW50VmFsdWU6IFQpID0+IHtcbiAgICAgICAgICAgIG9uQ2hhbmdlKHRoaXMudG9Db250cm9sVmFsdWUoY29tcG9uZW50VmFsdWUpKTtcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLnJlZnJlc2gkLm5leHQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQob25Ub3VjaGVkOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gb25Ub3VjaGVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrQ29udHJvbFVwZGF0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBUIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb250cm9sVmFsdWUgPVxuICAgICAgICAgICAgdGhpcy5uZ0NvbnRyb2wgaW5zdGFuY2VvZiBOZ01vZGVsICYmIHRoaXMucHJldmlvdXNJbnRlcm5hbFZhbHVlID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICA/IHRoaXMubmdDb250cm9sLm1vZGVsXG4gICAgICAgICAgICAgICAgOiB2YWx1ZTtcblxuICAgICAgICB0aGlzLnJlZnJlc2hMb2NhbFZhbHVlKHRoaXMuZnJvbUNvbnRyb2xWYWx1ZShjb250cm9sVmFsdWUpKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICghZm9jdXNlZCkge1xuICAgICAgICAgICAgdGhpcy5jb250cm9sTWFya0FzVG91Y2hlZCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3VwZXIudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCB1c2UgYHZhbHVlYCBzZXR0ZXJcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgdXBkYXRlVmFsdWUodmFsdWU6IFQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy52YWx1ZUlkZW50aWNhbENvbXBhcmF0b3IodGhpcy52YWx1ZSwgdmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnByZXZpb3VzSW50ZXJuYWxWYWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmNvbnRyb2xTZXRWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHZhbHVlSWRlbnRpY2FsQ29tcGFyYXRvcihvbGRWYWx1ZTogVCwgbmV3VmFsdWU6IFQpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIG9sZFZhbHVlID09PSBuZXdWYWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCByYXdWYWx1ZSgpOiBUIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3Qge25nQ29udHJvbH0gPSB0aGlzO1xuXG4gICAgICAgIGlmIChuZ0NvbnRyb2wgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjb250cm9sVmFsdWUgPVxuICAgICAgICAgICAgbmdDb250cm9sIGluc3RhbmNlb2YgTmdNb2RlbCAmJiB0aGlzLnByZXZpb3VzSW50ZXJuYWxWYWx1ZSA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgPyBuZ0NvbnRyb2wudmlld01vZGVsXG4gICAgICAgICAgICAgICAgOiBuZ0NvbnRyb2wudmFsdWU7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZnJvbUNvbnRyb2xWYWx1ZShjb250cm9sVmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2FmZU5nQ29udHJvbERhdGE8VD4oXG4gICAgICAgIGV4dHJhY3RvcjogKG5nQ29udHJvbDogTmdDb250cm9sKSA9PiBUIHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgICAgICAgZGVmYXVsdEZpZWxkVmFsdWU6IFQsXG4gICAgKTogVCB7XG4gICAgICAgIHJldHVybiAodGhpcy5uZ0NvbnRyb2wgJiYgZXh0cmFjdG9yKHRoaXMubmdDb250cm9sKSkgPz8gZGVmYXVsdEZpZWxkVmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb250cm9sTWFya0FzVG91Y2hlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy5jaGVja0NvbnRyb2xVcGRhdGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbnRyb2xTZXRWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5jaGVja0NvbnRyb2xVcGRhdGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZnJlc2hMb2NhbFZhbHVlKHZhbHVlOiBUIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnByZXZpb3VzSW50ZXJuYWxWYWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmNoZWNrQ29udHJvbFVwZGF0ZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZnJvbUNvbnRyb2xWYWx1ZShjb250cm9sVmFsdWU6IHVua25vd24pOiBUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVUcmFuc2Zvcm1lclxuICAgICAgICAgICAgPyB0aGlzLnZhbHVlVHJhbnNmb3JtZXIuZnJvbUNvbnRyb2xWYWx1ZShjb250cm9sVmFsdWUpXG4gICAgICAgICAgICA6IChjb250cm9sVmFsdWUgYXMgVCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0b0NvbnRyb2xWYWx1ZShjb21wb25lbnRWYWx1ZTogVCk6IHVua25vd24ge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZVRyYW5zZm9ybWVyXG4gICAgICAgICAgICA/IHRoaXMudmFsdWVUcmFuc2Zvcm1lci50b0NvbnRyb2xWYWx1ZShjb21wb25lbnRWYWx1ZSlcbiAgICAgICAgICAgIDogY29tcG9uZW50VmFsdWU7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHVpQXNDb250cm9sPFQ+KGNvbnRyb2w6IFR5cGU8QWJzdHJhY3RUdWlDb250cm9sPFQ+Pik6IFByb3ZpZGVyIHtcbiAgICByZXR1cm4gdHVpUHJvdmlkZShBYnN0cmFjdFR1aUNvbnRyb2wsIGNvbnRyb2wpO1xufVxuIl19
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xlZ2FjeS9jbGFzc2VzL2NvbnRyb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBRXhELE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsT0FBTyxFQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzRSxPQUFPLEVBQ0gsS0FBSyxFQUNMLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sR0FBRyxFQUNILEtBQUssRUFDTCxTQUFTLEVBQ1QsT0FBTyxFQUNQLFNBQVMsR0FDWixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFFckQ7OztHQUdHO0FBQ0gsTUFPc0Isa0JBQ2xCLFNBQVEsc0JBQXNCO0lBdUI5QjtRQUNJLEtBQUssRUFBRSxDQUFDO1FBckJLLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFFaEQsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFdEMsY0FBUyxHQUFHLGNBQWMsQ0FBQztRQUMzQixhQUFRLEdBQUcsY0FBYyxDQUFDO1FBQ2pCLGtCQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFD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QUFzTVYsTUFBTSxVQUFVLFlBQVksQ0FBSSxPQUFvQztJQUNoRSxPQUFPLFVBQVUsQ0FBQyxrQkFBa0IsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUNuRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgdHlwZXM9XCJAdGFpZ2EtdWkvdHNjb25maWcvbmctZGV2LW1vZGVcIiAvPlxuaW1wb3J0IHR5cGUge09uSW5pdCwgUHJvdmlkZXIsIFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgRGVzdHJveVJlZiwgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgdHlwZSB7QWJzdHJhY3RDb250cm9sLCBDb250cm9sVmFsdWVBY2Nlc3Nvcn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtOZ0NvbnRyb2wsIE5nTW9kZWx9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7VHVpVmFsdWVUcmFuc2Zvcm1lcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB7RU1QVFlfRlVOQ1RJT059IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7dHVpSXNQcmVzZW50LCB0dWlQcm92aWRlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtcbiAgICBkZWxheSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgICBmaWx0ZXIsXG4gICAgbWFwLFxuICAgIG1lcmdlLFxuICAgIHN0YXJ0V2l0aCxcbiAgICBTdWJqZWN0LFxuICAgIHN3aXRjaE1hcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7QWJzdHJhY3RUdWlJbnRlcmFjdGl2ZX0gZnJvbSAnLi9pbnRlcmFjdGl2ZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQ6IGRyb3AgaW4gdjUuMFxuICogQmFzaWMgQ29udHJvbFZhbHVlQWNjZXNzb3IgY2xhc3MgdG8gYnVpbGQgZm9ybSBjb21wb25lbnRzIHVwb25cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogZmFsc2UsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLl9yZWFkb25seV0nOiAncmVhZE9ubHknLFxuICAgICAgICAnW2NsYXNzLl9pbnZhbGlkXSc6ICdjb21wdXRlZEludmFsaWQnLFxuICAgIH0sXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0VHVpQ29udHJvbDxUPlxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlJbnRlcmFjdGl2ZVxuICAgIGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3Nvclxue1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbmdDb250cm9sID0gaW5qZWN0KE5nQ29udHJvbCwge29wdGlvbmFsOiB0cnVlfSk7XG4gICAgcHJpdmF0ZSBwcmV2aW91c0ludGVybmFsVmFsdWU/OiBUIHwgbnVsbDtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlZnJlc2gkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHByb3RlY3RlZCBvblRvdWNoZWQgPSBFTVBUWV9GVU5DVElPTjtcbiAgICBwcm90ZWN0ZWQgb25DaGFuZ2UgPSBFTVBUWV9GVU5DVElPTjtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZmFsbGJhY2tWYWx1ZSA9IHRoaXMuZ2V0RmFsbGJhY2tWYWx1ZSgpO1xuICAgIHByb3RlY3RlZCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSB2YWx1ZVRyYW5zZm9ybWVyID0gaW5qZWN0PFR1aVZhbHVlVHJhbnNmb3JtZXI8VD4+KFxuICAgICAgICBUdWlWYWx1ZVRyYW5zZm9ybWVyLFxuICAgICAgICB7b3B0aW9uYWw6IHRydWV9LFxuICAgICk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyByZWFkT25seSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcHNldWRvSW52YWxpZDogYm9vbGVhbiB8IG51bGwgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG5cbiAgICAgICAgaWYgKG5nRGV2TW9kZSAmJiB0aGlzLm5nQ29udHJvbCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc29sZS5hc3NlcnQoXG4gICAgICAgICAgICAgICAgZmFsc2UsXG4gICAgICAgICAgICAgICAgYE5nQ29udHJvbCBub3QgaW5qZWN0ZWQgaW4gJHt0aGlzLmNvbnN0cnVjdG9yLm5hbWV9IVxcbmAsXG4gICAgICAgICAgICAgICAgJ1VzZSBbKG5nTW9kZWwpXSBvciBbZm9ybUNvbnRyb2xdIG9yIGZvcm1Db250cm9sTmFtZSBmb3IgY29ycmVjdCB3b3JrLicsXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICAgICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRGYWxsYmFja1ZhbHVlKCk6IFQ7XG5cbiAgICBwdWJsaWMgZ2V0IGNvbXB1dGVkSW52YWxpZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuaW50ZXJhY3RpdmUgJiZcbiAgICAgICAgICAgICh0aGlzLnBzZXVkb0ludmFsaWQgIT09IG51bGxcbiAgICAgICAgICAgICAgICA/IHRoaXMucHNldWRvSW52YWxpZFxuICAgICAgICAgICAgICAgIDogdGhpcy50b3VjaGVkICYmIHRoaXMuaW52YWxpZClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHZhbHVlKCk6IFQge1xuICAgICAgICByZXR1cm4gdGhpcy5wcmV2aW91c0ludGVybmFsVmFsdWUgPz8gdGhpcy5mYWxsYmFja1ZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IFQpIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzYWZlQ3VycmVudFZhbHVlKCk6IFQge1xuICAgICAgICByZXR1cm4gdGhpcy5yYXdWYWx1ZSA/PyB0aGlzLmZhbGxiYWNrVmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zYWZlTmdDb250cm9sRGF0YTxib29sZWFuPigoe2ludmFsaWR9KSA9PiBpbnZhbGlkLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2FmZU5nQ29udHJvbERhdGE8Ym9vbGVhbj4oKHt2YWxpZH0pID0+IHZhbGlkLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB0b3VjaGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zYWZlTmdDb250cm9sRGF0YTxib29sZWFuPigoe3RvdWNoZWR9KSA9PiB0b3VjaGVkLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2FmZU5nQ29udHJvbERhdGE8Ym9vbGVhbj4oKHtkaXNhYmxlZH0pID0+IGRpc2FibGVkLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpbnRlcmFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLnJlYWRPbmx5ICYmICF0aGlzLmNvbXB1dGVkRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjb250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5zYWZlTmdDb250cm9sRGF0YTxBYnN0cmFjdENvbnRyb2wgfCBudWxsPihcbiAgICAgICAgICAgICh7Y29udHJvbH0pID0+IGNvbnRyb2wsXG4gICAgICAgICAgICBudWxsLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29tcHV0ZWROYW1lKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sTmFtZT8udG9TdHJpbmcoKSA/PyBudWxsO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29udHJvbE5hbWUoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLm5nQ29udHJvbD8ubmFtZT8udG9TdHJpbmcoKSA/PyBudWxsO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGVsYXkoMCksXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKG51bGwpLFxuICAgICAgICAgICAgICAgIG1hcCgoKSA9PiB0aGlzLm5nQ29udHJvbD8uY29udHJvbCksXG4gICAgICAgICAgICAgICAgZmlsdGVyKHR1aUlzUHJlc2VudCksXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKGNvbnRyb2wpID0+XG4gICAgICAgICAgICAgICAgICAgIG1lcmdlKGNvbnRyb2wudmFsdWVDaGFuZ2VzLCBjb250cm9sLnN0YXR1c0NoYW5nZXMpLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZiksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hMb2NhbFZhbHVlKHRoaXMuc2FmZUN1cnJlbnRWYWx1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2hlY2tDb250cm9sVXBkYXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShvbkNoYW5nZTogKHZhbHVlOiBUIHwgdW5rbm93bikgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gKGNvbXBvbmVudFZhbHVlOiBUKSA9PiB7XG4gICAgICAgICAgICBvbkNoYW5nZSh0aGlzLnRvQ29udHJvbFZhbHVlKGNvbXBvbmVudFZhbHVlKSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5yZWZyZXNoJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKG9uVG91Y2hlZDogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IG9uVG91Y2hlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja0NvbnRyb2xVcGRhdGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogVCB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29udHJvbFZhbHVlID1cbiAgICAgICAgICAgIHRoaXMubmdDb250cm9sIGluc3RhbmNlb2YgTmdNb2RlbCAmJiB0aGlzLnByZXZpb3VzSW50ZXJuYWxWYWx1ZSA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgPyB0aGlzLm5nQ29udHJvbC5tb2RlbFxuICAgICAgICAgICAgICAgIDogdmFsdWU7XG5cbiAgICAgICAgdGhpcy5yZWZyZXNoTG9jYWxWYWx1ZSh0aGlzLmZyb21Db250cm9sVmFsdWUoY29udHJvbFZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZUZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAoIWZvY3VzZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbE1hcmtBc1RvdWNoZWQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN1cGVyLnVwZGF0ZUZvY3VzZWQoZm9jdXNlZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgdXNlIGB2YWx1ZWAgc2V0dGVyXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHVwZGF0ZVZhbHVlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMudmFsdWVJZGVudGljYWxDb21wYXJhdG9yKHRoaXMudmFsdWUsIHZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wcmV2aW91c0ludGVybmFsVmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5jb250cm9sU2V0VmFsdWUodmFsdWUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCB2YWx1ZUlkZW50aWNhbENvbXBhcmF0b3Iob2xkVmFsdWU6IFQsIG5ld1ZhbHVlOiBUKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBvbGRWYWx1ZSA9PT0gbmV3VmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgcmF3VmFsdWUoKTogVCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGNvbnN0IHtuZ0NvbnRyb2x9ID0gdGhpcztcblxuICAgICAgICBpZiAobmdDb250cm9sID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY29udHJvbFZhbHVlID1cbiAgICAgICAgICAgIG5nQ29udHJvbCBpbnN0YW5jZW9mIE5nTW9kZWwgJiYgdGhpcy5wcmV2aW91c0ludGVybmFsVmFsdWUgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgID8gbmdDb250cm9sLnZpZXdNb2RlbFxuICAgICAgICAgICAgICAgIDogbmdDb250cm9sLnZhbHVlO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmZyb21Db250cm9sVmFsdWUoY29udHJvbFZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNhZmVOZ0NvbnRyb2xEYXRhPFQ+KFxuICAgICAgICBleHRyYWN0b3I6IChuZ0NvbnRyb2w6IE5nQ29udHJvbCkgPT4gVCB8IG51bGwgfCB1bmRlZmluZWQsXG4gICAgICAgIGRlZmF1bHRGaWVsZFZhbHVlOiBULFxuICAgICk6IFQge1xuICAgICAgICByZXR1cm4gKHRoaXMubmdDb250cm9sICYmIGV4dHJhY3Rvcih0aGlzLm5nQ29udHJvbCkpID8/IGRlZmF1bHRGaWVsZFZhbHVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgY29udHJvbE1hcmtBc1RvdWNoZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICAgIHRoaXMuY2hlY2tDb250cm9sVXBkYXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb250cm9sU2V0VmFsdWUodmFsdWU6IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuY2hlY2tDb250cm9sVXBkYXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWZyZXNoTG9jYWxWYWx1ZSh2YWx1ZTogVCB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcmV2aW91c0ludGVybmFsVmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5jaGVja0NvbnRyb2xVcGRhdGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZyb21Db250cm9sVmFsdWUoY29udHJvbFZhbHVlOiB1bmtub3duKTogVCB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlVHJhbnNmb3JtZXJcbiAgICAgICAgICAgID8gdGhpcy52YWx1ZVRyYW5zZm9ybWVyLmZyb21Db250cm9sVmFsdWUoY29udHJvbFZhbHVlKVxuICAgICAgICAgICAgOiAoY29udHJvbFZhbHVlIGFzIFQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdG9Db250cm9sVmFsdWUoY29tcG9uZW50VmFsdWU6IFQpOiB1bmtub3duIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVUcmFuc2Zvcm1lclxuICAgICAgICAgICAgPyB0aGlzLnZhbHVlVHJhbnNmb3JtZXIudG9Db250cm9sVmFsdWUoY29tcG9uZW50VmFsdWUpXG4gICAgICAgICAgICA6IGNvbXBvbmVudFZhbHVlO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUFzQ29udHJvbDxUPihjb250cm9sOiBUeXBlPEFic3RyYWN0VHVpQ29udHJvbDxUPj4pOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHR1aVByb3ZpZGUoQWJzdHJhY3RUdWlDb250cm9sLCBjb250cm9sKTtcbn1cbiJdfQ==
|