@taiga-ui/core 3.14.0-dev.main-3f74fe5 → 3.14.0-dev.main-6fca3d4
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/bundles/taiga-ui-core-components-data-list.umd.js +1 -4
- package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-dropdown.umd.js +34 -30
- package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
- package/directives/dropdown/dropdown-context.directive.d.ts +4 -4
- package/directives/dropdown/dropdown-options.directive.d.ts +3 -5
- package/esm2015/components/data-list/option/option.component.js +2 -5
- package/esm2015/directives/dropdown/dropdown-context.directive.js +11 -11
- package/esm2015/directives/dropdown/dropdown-options.directive.js +11 -7
- package/esm2015/directives/dropdown/dropdown-position-sided.directive.js +8 -8
- package/esm2015/directives/dropdown/dropdown-position.directive.js +8 -8
- package/esm2015/directives/dropdown/dropdown.component.js +6 -6
- package/fesm2015/taiga-ui-core-components-data-list.js +1 -4
- package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-dropdown.js +36 -31
- package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { Directive, HostListener, Inject } from '@angular/core';
|
|
2
|
-
import { EMPTY_CLIENT_RECT, tuiPointToClientRect } from '@taiga-ui/cdk';
|
|
2
|
+
import { EMPTY_CLIENT_RECT, TuiActiveZoneDirective, tuiPointToClientRect, } from '@taiga-ui/cdk';
|
|
3
3
|
import { tuiAsDriver, tuiAsRectAccessor, TuiDriver, } from '@taiga-ui/core/abstract';
|
|
4
4
|
import { Subject } from 'rxjs';
|
|
5
|
-
import { TuiDropdownDirective } from './dropdown.directive';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "
|
|
6
|
+
import * as i1 from "@taiga-ui/cdk";
|
|
8
7
|
export class TuiDropdownContextDirective extends TuiDriver {
|
|
9
|
-
constructor(
|
|
8
|
+
constructor(activeZone) {
|
|
10
9
|
super(subscriber => this.stream$.subscribe(subscriber));
|
|
11
|
-
this.
|
|
10
|
+
this.activeZone = activeZone;
|
|
12
11
|
this.stream$ = new Subject();
|
|
13
12
|
this.currentRect = EMPTY_CLIENT_RECT;
|
|
14
13
|
}
|
|
@@ -17,8 +16,7 @@ export class TuiDropdownContextDirective extends TuiDriver {
|
|
|
17
16
|
this.stream$.next(true);
|
|
18
17
|
}
|
|
19
18
|
closeDropdown(target) {
|
|
20
|
-
|
|
21
|
-
if (!((_a = this.dropdown.dropdownBoxRef) === null || _a === void 0 ? void 0 : _a.location.nativeElement.contains(target))) {
|
|
19
|
+
if (!this.activeZone.contains(target)) {
|
|
22
20
|
this.stream$.next(false);
|
|
23
21
|
}
|
|
24
22
|
}
|
|
@@ -26,8 +24,9 @@ export class TuiDropdownContextDirective extends TuiDriver {
|
|
|
26
24
|
return this.currentRect;
|
|
27
25
|
}
|
|
28
26
|
}
|
|
29
|
-
TuiDropdownContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownContextDirective, deps: [{ token:
|
|
27
|
+
TuiDropdownContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownContextDirective, deps: [{ token: TuiActiveZoneDirective }], target: i0.ɵɵFactoryTarget.Directive });
|
|
30
28
|
TuiDropdownContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiDropdownContextDirective, selector: "[tuiDropdown][tuiDropdownContext]", host: { listeners: { "contextmenu.prevent.stop": "onContextMenu($event.clientX,$event.clientY)", "document:click.silent": "closeDropdown($event.target)", "document:contextmenu.capture.silent": "closeDropdown($event.target)", "document:keydown.esc": "closeDropdown($event.currentTarget)" } }, providers: [
|
|
29
|
+
TuiActiveZoneDirective,
|
|
31
30
|
tuiAsDriver(TuiDropdownContextDirective),
|
|
32
31
|
tuiAsRectAccessor(TuiDropdownContextDirective),
|
|
33
32
|
], usesInheritance: true, ngImport: i0 });
|
|
@@ -36,13 +35,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
36
35
|
args: [{
|
|
37
36
|
selector: `[tuiDropdown][tuiDropdownContext]`,
|
|
38
37
|
providers: [
|
|
38
|
+
TuiActiveZoneDirective,
|
|
39
39
|
tuiAsDriver(TuiDropdownContextDirective),
|
|
40
40
|
tuiAsRectAccessor(TuiDropdownContextDirective),
|
|
41
41
|
],
|
|
42
42
|
}]
|
|
43
|
-
}], ctorParameters: function () { return [{ type: i1.
|
|
43
|
+
}], ctorParameters: function () { return [{ type: i1.TuiActiveZoneDirective, decorators: [{
|
|
44
44
|
type: Inject,
|
|
45
|
-
args: [
|
|
45
|
+
args: [TuiActiveZoneDirective]
|
|
46
46
|
}] }]; }, propDecorators: { onContextMenu: [{
|
|
47
47
|
type: HostListener,
|
|
48
48
|
args: [`contextmenu.prevent.stop`, [`$event.clientX`, `$event.clientY`]]
|
|
@@ -56,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
56
56
|
type: HostListener,
|
|
57
57
|
args: [`document:keydown.esc`, [`$event.currentTarget`]]
|
|
58
58
|
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24vZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFDSCxpQkFBaUIsRUFDakIsc0JBQXNCLEVBQ3RCLG9CQUFvQixHQUN2QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixTQUFTLEdBRVosTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7QUFVN0IsTUFBTSxPQUFPLDJCQUE0QixTQUFRLFNBQVM7SUFLdEQsWUFFcUIsVUFBa0M7UUFFbkQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUZ2QyxlQUFVLEdBQVYsVUFBVSxDQUF3QjtRQU50QyxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUUxQyxnQkFBVyxHQUFHLGlCQUFpQixDQUFDO0lBT3hDLENBQUM7SUFHRCxhQUFhLENBQUMsQ0FBUyxFQUFFLENBQVM7UUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUtELGFBQWEsQ0FBQyxNQUFlO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM1QjtJQUNMLENBQUM7SUFFRCxhQUFhO1FBQ1QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7O3lIQTdCUSwyQkFBMkIsa0JBTXhCLHNCQUFzQjs2R0FOekIsMkJBQTJCLGdXQU56QjtRQUNQLHNCQUFzQjtRQUN0QixXQUFXLENBQUMsMkJBQTJCLENBQUM7UUFDeEMsaUJBQWlCLENBQUMsMkJBQTJCLENBQUM7S0FDakQ7NEZBRVEsMkJBQTJCO2tCQVJ2QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxtQ0FBbUM7b0JBQzdDLFNBQVMsRUFBRTt3QkFDUCxzQkFBc0I7d0JBQ3RCLFdBQVcsNkJBQTZCO3dCQUN4QyxpQkFBaUIsNkJBQTZCO3FCQUNqRDtpQkFDSjs7MEJBT1EsTUFBTTsyQkFBQyxzQkFBc0I7NENBT2xDLGFBQWE7c0JBRFosWUFBWTt1QkFBQywwQkFBMEIsRUFBRSxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDO2dCQVM5RSxhQUFhO3NCQUhaLFlBQVk7dUJBQUMsdUJBQXVCLEVBQUUsQ0FBQyxlQUFlLENBQUM7O3NCQUN2RCxZQUFZO3VCQUFDLHFDQUFxQyxFQUFFLENBQUMsZUFBZSxDQUFDOztzQkFDckUsWUFBWTt1QkFBQyxzQkFBc0IsRUFBRSxDQUFDLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRU1QVFlfQ0xJRU5UX1JFQ1QsXG4gICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICB0dWlQb2ludFRvQ2xpZW50UmVjdCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIHR1aUFzRHJpdmVyLFxuICAgIHR1aUFzUmVjdEFjY2Vzc29yLFxuICAgIFR1aURyaXZlcixcbiAgICBUdWlSZWN0QWNjZXNzb3IsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7U3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgW3R1aURyb3Bkb3duXVt0dWlEcm9wZG93bkNvbnRleHRdYCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICAgICAgdHVpQXNEcml2ZXIoVHVpRHJvcGRvd25Db250ZXh0RGlyZWN0aXZlKSxcbiAgICAgICAgdHVpQXNSZWN0QWNjZXNzb3IoVHVpRHJvcGRvd25Db250ZXh0RGlyZWN0aXZlKSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93bkNvbnRleHREaXJlY3RpdmUgZXh0ZW5kcyBUdWlEcml2ZXIgaW1wbGVtZW50cyBUdWlSZWN0QWNjZXNzb3Ige1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RyZWFtJCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgICBwcml2YXRlIGN1cnJlbnRSZWN0ID0gRU1QVFlfQ0xJRU5UX1JFQ1Q7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlBY3RpdmVab25lRGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2ZVpvbmU6IFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKHN1YnNjcmliZXIgPT4gdGhpcy5zdHJlYW0kLnN1YnNjcmliZShzdWJzY3JpYmVyKSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgY29udGV4dG1lbnUucHJldmVudC5zdG9wYCwgW2AkZXZlbnQuY2xpZW50WGAsIGAkZXZlbnQuY2xpZW50WWBdKVxuICAgIG9uQ29udGV4dE1lbnUoeDogbnVtYmVyLCB5OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdXJyZW50UmVjdCA9IHR1aVBvaW50VG9DbGllbnRSZWN0KHgsIHkpO1xuICAgICAgICB0aGlzLnN0cmVhbSQubmV4dCh0cnVlKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGBkb2N1bWVudDpjbGljay5zaWxlbnRgLCBbYCRldmVudC50YXJnZXRgXSlcbiAgICBASG9zdExpc3RlbmVyKGBkb2N1bWVudDpjb250ZXh0bWVudS5jYXB0dXJlLnNpbGVudGAsIFtgJGV2ZW50LnRhcmdldGBdKVxuICAgIEBIb3N0TGlzdGVuZXIoYGRvY3VtZW50OmtleWRvd24uZXNjYCwgW2AkZXZlbnQuY3VycmVudFRhcmdldGBdKVxuICAgIGNsb3NlRHJvcGRvd24odGFyZ2V0OiBFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5hY3RpdmVab25lLmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgICAgIHRoaXMuc3RyZWFtJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldENsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRSZWN0O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -3,10 +3,6 @@ import { Directive, forwardRef, Inject, InjectionToken, Input, Optional, SkipSel
|
|
|
3
3
|
import { tuiDefaultProp } from '@taiga-ui/cdk';
|
|
4
4
|
import { tuiOverrideOptions } from '@taiga-ui/core/utils';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
/**
|
|
7
|
-
* Safe space around host and screen edges
|
|
8
|
-
*/
|
|
9
|
-
export const TUI_DROPDOWN_OFFSET = 4;
|
|
10
6
|
/** Default values for dropdown options */
|
|
11
7
|
export const TUI_DROPDOWN_DEFAULT_OPTIONS = {
|
|
12
8
|
align: `left`,
|
|
@@ -14,6 +10,7 @@ export const TUI_DROPDOWN_DEFAULT_OPTIONS = {
|
|
|
14
10
|
limitWidth: `auto`,
|
|
15
11
|
maxHeight: 400,
|
|
16
12
|
minHeight: 80,
|
|
13
|
+
offset: 4,
|
|
17
14
|
};
|
|
18
15
|
export const TUI_DROPDOWN_OPTIONS = new InjectionToken(`[TUI_DROPDOWN_OPTIONS] Default parameters for dropdown directive`, {
|
|
19
16
|
factory: () => TUI_DROPDOWN_DEFAULT_OPTIONS,
|
|
@@ -34,10 +31,11 @@ export class TuiDropdownOptionsDirective {
|
|
|
34
31
|
this.limitWidth = this.options.limitWidth;
|
|
35
32
|
this.minHeight = this.options.minHeight;
|
|
36
33
|
this.maxHeight = this.options.maxHeight;
|
|
34
|
+
this.offset = this.options.offset;
|
|
37
35
|
}
|
|
38
36
|
}
|
|
39
37
|
TuiDropdownOptionsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownOptionsDirective, deps: [{ token: TUI_DROPDOWN_OPTIONS, skipSelf: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
40
|
-
TuiDropdownOptionsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight]", inputs: { align: ["tuiDropdownAlign", "align"], direction: ["tuiDropdownDirection", "direction"], limitWidth: ["tuiDropdownLimitWidth", "limitWidth"], minHeight: ["tuiDropdownMinHeight", "minHeight"], maxHeight: ["tuiDropdownMaxHeight", "maxHeight"] }, providers: [
|
|
38
|
+
TuiDropdownOptionsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: { align: ["tuiDropdownAlign", "align"], direction: ["tuiDropdownDirection", "direction"], limitWidth: ["tuiDropdownLimitWidth", "limitWidth"], minHeight: ["tuiDropdownMinHeight", "minHeight"], maxHeight: ["tuiDropdownMaxHeight", "maxHeight"], offset: ["tuiDropdownOffset", "offset"] }, providers: [
|
|
41
39
|
{
|
|
42
40
|
provide: TUI_DROPDOWN_OPTIONS,
|
|
43
41
|
useExisting: forwardRef(() => TuiDropdownOptionsDirective),
|
|
@@ -58,10 +56,13 @@ __decorate([
|
|
|
58
56
|
__decorate([
|
|
59
57
|
tuiDefaultProp()
|
|
60
58
|
], TuiDropdownOptionsDirective.prototype, "maxHeight", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
tuiDefaultProp()
|
|
61
|
+
], TuiDropdownOptionsDirective.prototype, "offset", void 0);
|
|
61
62
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownOptionsDirective, decorators: [{
|
|
62
63
|
type: Directive,
|
|
63
64
|
args: [{
|
|
64
|
-
selector: `[tuiDropdownAlign], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight]`,
|
|
65
|
+
selector: `[tuiDropdownAlign], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]`,
|
|
65
66
|
providers: [
|
|
66
67
|
{
|
|
67
68
|
provide: TUI_DROPDOWN_OPTIONS,
|
|
@@ -89,5 +90,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
89
90
|
}], maxHeight: [{
|
|
90
91
|
type: Input,
|
|
91
92
|
args: [`tuiDropdownMaxHeight`]
|
|
93
|
+
}], offset: [{
|
|
94
|
+
type: Input,
|
|
95
|
+
args: [`tuiDropdownOffset`]
|
|
92
96
|
}] } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tb3B0aW9ucy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24vZHJvcGRvd24tb3B0aW9ucy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsVUFBVSxFQUNWLE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQU03QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7QUFXeEQsMENBQTBDO0FBQzFDLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUF1QjtJQUM1RCxLQUFLLEVBQUUsTUFBTTtJQUNiLFNBQVMsRUFBRSxJQUFJO0lBQ2YsVUFBVSxFQUFFLE1BQU07SUFDbEIsU0FBUyxFQUFFLEdBQUc7SUFDZCxTQUFTLEVBQUUsRUFBRTtJQUNiLE1BQU0sRUFBRSxDQUFDO0NBQ1osQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUNsRCxrRUFBa0UsRUFDbEU7SUFDSSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsNEJBQTRCO0NBQzlDLENBQ0osQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUVoQixDQUFDLFFBQXFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDL0QsT0FBTyxFQUFFLG9CQUFvQjtJQUM3QixJQUFJLEVBQUU7UUFDRixDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsMkJBQTJCLENBQUM7UUFDN0MsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLG9CQUFvQixDQUFDO0tBQ3pDO0lBQ0QsVUFBVSxFQUFFLGtCQUFrQixDQUFDLFFBQVEsQ0FBQztDQUMzQyxDQUFDLENBQUM7QUFXSCxNQUFNLE9BQU8sMkJBQTJCO0lBeUJwQyxZQUdxQixPQUEyQjtRQUEzQixZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQXpCaEQsVUFBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBSTNCLGNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUluQyxlQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFJckMsY0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBSW5DLGNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUluQyxXQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7SUFNMUIsQ0FBQzs7eUhBN0JLLDJCQUEyQixrQkEyQnhCLG9CQUFvQjs2R0EzQnZCLDJCQUEyQix5Y0FQekI7UUFDUDtZQUNJLE9BQU8sRUFBRSxvQkFBb0I7WUFDN0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztTQUM3RDtLQUNKO0FBS0Q7SUFEQyxjQUFjLEVBQUU7MERBQ1U7QUFJM0I7SUFEQyxjQUFjLEVBQUU7OERBQ2tCO0FBSW5DO0lBREMsY0FBYyxFQUFFOytEQUNvQjtBQUlyQztJQURDLGNBQWMsRUFBRTs4REFDa0I7QUFJbkM7SUFEQyxjQUFjLEVBQUU7OERBQ2tCO0FBSW5DO0lBREMsY0FBYyxFQUFFOzJEQUNZOzRGQXZCcEIsMkJBQTJCO2tCQVR2QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwwSUFBMEk7b0JBQ3BKLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsb0JBQW9COzRCQUM3QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSw0QkFBNEIsQ0FBQzt5QkFDN0Q7cUJBQ0o7aUJBQ0o7OzBCQTJCUSxRQUFROzswQkFDUixNQUFNOzJCQUFDLG9CQUFvQjs0Q0F4QmhDLEtBQUs7c0JBRkosS0FBSzt1QkFBQyxrQkFBa0I7Z0JBTXpCLFNBQVM7c0JBRlIsS0FBSzt1QkFBQyxzQkFBc0I7Z0JBTTdCLFVBQVU7c0JBRlQsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBTTlCLFNBQVM7c0JBRlIsS0FBSzt1QkFBQyxzQkFBc0I7Z0JBTTdCLFNBQVM7c0JBRlIsS0FBSzt1QkFBQyxzQkFBc0I7Z0JBTTdCLE1BQU07c0JBRkwsS0FBSzt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBGYWN0b3J5UHJvdmlkZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbmplY3QsXG4gICAgSW5qZWN0aW9uVG9rZW4sXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2tpcFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0dWlEZWZhdWx0UHJvcH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFR1aURyb3Bkb3duV2lkdGgsXG4gICAgVHVpSG9yaXpvbnRhbERpcmVjdGlvbixcbiAgICBUdWlWZXJ0aWNhbERpcmVjdGlvbixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHt0dWlPdmVycmlkZU9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlEcm9wZG93bk9wdGlvbnMge1xuICAgIHJlYWRvbmx5IGFsaWduOiBUdWlIb3Jpem9udGFsRGlyZWN0aW9uO1xuICAgIHJlYWRvbmx5IGRpcmVjdGlvbjogVHVpVmVydGljYWxEaXJlY3Rpb24gfCBudWxsO1xuICAgIHJlYWRvbmx5IGxpbWl0V2lkdGg6IFR1aURyb3Bkb3duV2lkdGg7XG4gICAgcmVhZG9ubHkgbWluSGVpZ2h0OiBudW1iZXI7XG4gICAgcmVhZG9ubHkgbWF4SGVpZ2h0OiBudW1iZXI7XG4gICAgcmVhZG9ubHkgb2Zmc2V0OiBudW1iZXI7XG59XG5cbi8qKiBEZWZhdWx0IHZhbHVlcyBmb3IgZHJvcGRvd24gb3B0aW9ucyAqL1xuZXhwb3J0IGNvbnN0IFRVSV9EUk9QRE9XTl9ERUZBVUxUX09QVElPTlM6IFR1aURyb3Bkb3duT3B0aW9ucyA9IHtcbiAgICBhbGlnbjogYGxlZnRgLFxuICAgIGRpcmVjdGlvbjogbnVsbCxcbiAgICBsaW1pdFdpZHRoOiBgYXV0b2AsXG4gICAgbWF4SGVpZ2h0OiA0MDAsXG4gICAgbWluSGVpZ2h0OiA4MCxcbiAgICBvZmZzZXQ6IDQsXG59O1xuXG5leHBvcnQgY29uc3QgVFVJX0RST1BET1dOX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48VHVpRHJvcGRvd25PcHRpb25zPihcbiAgICBgW1RVSV9EUk9QRE9XTl9PUFRJT05TXSBEZWZhdWx0IHBhcmFtZXRlcnMgZm9yIGRyb3Bkb3duIGRpcmVjdGl2ZWAsXG4gICAge1xuICAgICAgICBmYWN0b3J5OiAoKSA9PiBUVUlfRFJPUERPV05fREVGQVVMVF9PUFRJT05TLFxuICAgIH0sXG4pO1xuXG5leHBvcnQgY29uc3QgdHVpRHJvcGRvd25PcHRpb25zUHJvdmlkZXI6IChcbiAgICBvcHRpb25zOiBQYXJ0aWFsPFR1aURyb3Bkb3duT3B0aW9ucz4sXG4pID0+IEZhY3RvcnlQcm92aWRlciA9IChvdmVycmlkZTogUGFydGlhbDxUdWlEcm9wZG93bk9wdGlvbnM+KSA9PiAoe1xuICAgIHByb3ZpZGU6IFRVSV9EUk9QRE9XTl9PUFRJT05TLFxuICAgIGRlcHM6IFtcbiAgICAgICAgW25ldyBPcHRpb25hbCgpLCBUdWlEcm9wZG93bk9wdGlvbnNEaXJlY3RpdmVdLFxuICAgICAgICBbbmV3IFNraXBTZWxmKCksIFRVSV9EUk9QRE9XTl9PUFRJT05TXSxcbiAgICBdLFxuICAgIHVzZUZhY3Rvcnk6IHR1aU92ZXJyaWRlT3B0aW9ucyhvdmVycmlkZSksXG59KTtcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6IGBbdHVpRHJvcGRvd25BbGlnbl0sIFt0dWlEcm9wZG93bkRpcmVjdGlvbl0sIFt0dWlEcm9wZG93bkxpbWl0V2lkdGhdLCBbdHVpRHJvcGRvd25NaW5IZWlnaHRdLCBbdHVpRHJvcGRvd25NYXhIZWlnaHRdLCBbdHVpRHJvcGRvd25PZmZzZXRdYCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0RST1BET1dOX09QVElPTlMsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlEcm9wZG93bk9wdGlvbnNEaXJlY3RpdmUpLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyb3Bkb3duT3B0aW9uc0RpcmVjdGl2ZSBpbXBsZW1lbnRzIFR1aURyb3Bkb3duT3B0aW9ucyB7XG4gICAgQElucHV0KGB0dWlEcm9wZG93bkFsaWduYClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFsaWduID0gdGhpcy5vcHRpb25zLmFsaWduO1xuXG4gICAgQElucHV0KGB0dWlEcm9wZG93bkRpcmVjdGlvbmApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkaXJlY3Rpb24gPSB0aGlzLm9wdGlvbnMuZGlyZWN0aW9uO1xuXG4gICAgQElucHV0KGB0dWlEcm9wZG93bkxpbWl0V2lkdGhgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbGltaXRXaWR0aCA9IHRoaXMub3B0aW9ucy5saW1pdFdpZHRoO1xuXG4gICAgQElucHV0KGB0dWlEcm9wZG93bk1pbkhlaWdodGApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBtaW5IZWlnaHQgPSB0aGlzLm9wdGlvbnMubWluSGVpZ2h0O1xuXG4gICAgQElucHV0KGB0dWlEcm9wZG93bk1heEhlaWdodGApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBtYXhIZWlnaHQgPSB0aGlzLm9wdGlvbnMubWF4SGVpZ2h0O1xuXG4gICAgQElucHV0KGB0dWlEcm9wZG93bk9mZnNldGApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBvZmZzZXQgPSB0aGlzLm9wdGlvbnMub2Zmc2V0O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBTa2lwU2VsZigpXG4gICAgICAgIEBJbmplY3QoVFVJX0RST1BET1dOX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpRHJvcGRvd25PcHRpb25zLFxuICAgICkge31cbn1cbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Directive, Inject, Input } from '@angular/core';
|
|
2
2
|
import { WINDOW } from '@ng-web-apis/common';
|
|
3
3
|
import { tuiAsPositionAccessor, TuiRectAccessor, } from '@taiga-ui/core/abstract';
|
|
4
|
-
import {
|
|
4
|
+
import { TUI_DROPDOWN_OPTIONS } from './dropdown-options.directive';
|
|
5
5
|
import { TuiDropdownPositionDirective } from './dropdown-position.directive';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@taiga-ui/core/abstract";
|
|
@@ -24,15 +24,15 @@ export class TuiDropdownPositionSidedDirective {
|
|
|
24
24
|
const { align, direction, minHeight } = this.options;
|
|
25
25
|
const available = {
|
|
26
26
|
top: hostRect.bottom,
|
|
27
|
-
left: hostRect.left -
|
|
28
|
-
right: innerWidth - hostRect.right -
|
|
27
|
+
left: hostRect.left - this.options.offset,
|
|
28
|
+
right: innerWidth - hostRect.right - this.options.offset,
|
|
29
29
|
bottom: innerHeight - hostRect.top,
|
|
30
30
|
};
|
|
31
31
|
const position = {
|
|
32
|
-
top: hostRect.bottom - height +
|
|
33
|
-
left: hostRect.left - width -
|
|
34
|
-
right: hostRect.right +
|
|
35
|
-
bottom: hostRect.top -
|
|
32
|
+
top: hostRect.bottom - height + 1,
|
|
33
|
+
left: hostRect.left - width - this.options.offset,
|
|
34
|
+
right: hostRect.right + this.options.offset,
|
|
35
|
+
bottom: hostRect.top - 1, // 1 for border
|
|
36
36
|
};
|
|
37
37
|
const better = available.top > available.bottom ? `top` : `bottom`;
|
|
38
38
|
const maxLeft = available.left > available.right ? position.left : position.right;
|
|
@@ -74,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
74
74
|
}] }]; }, propDecorators: { tuiDropdownSided: [{
|
|
75
75
|
type: Input
|
|
76
76
|
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tcG9zaXRpb24tc2lkZWQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLXBvc2l0aW9uLXNpZGVkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCxxQkFBcUIsRUFFckIsZUFBZSxHQUNsQixNQUFNLHlCQUF5QixDQUFDO0FBR2pDLE9BQU8sRUFBQyxvQkFBb0IsRUFBcUIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RixPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBUzNFLE1BQU0sT0FBTyxpQ0FBaUM7SUFNMUMsWUFDbUQsT0FBMkIsRUFDekMsU0FBaUIsRUFDUixRQUF5QixFQUVsRCxRQUE2QjtRQUpDLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBQ3pDLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDUixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUVsRCxhQUFRLEdBQVIsUUFBUSxDQUFxQjtRQVYxQyxhQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksUUFBUSxDQUFDO1FBR3RELHFCQUFnQixHQUFxQixFQUFFLENBQUM7SUFRckMsQ0FBQztJQUVKLFdBQVcsQ0FBQyxJQUFnQjtRQUN4QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxLQUFLLEVBQUU7WUFDakMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMxQztRQUVELE1BQU0sRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDLEdBQUcsSUFBSSxDQUFDO1FBQzdCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDL0MsTUFBTSxFQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2pELE1BQU0sRUFBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDbkQsTUFBTSxTQUFTLEdBQUc7WUFDZCxHQUFHLEVBQUUsUUFBUSxDQUFDLE1BQU07WUFDcEIsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO1lBQ3pDLEtBQUssRUFBRSxVQUFVLEdBQUcsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU07WUFDeEQsTUFBTSxFQUFFLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRztTQUM1QixDQUFDO1FBQ1gsTUFBTSxRQUFRLEdBQUc7WUFDYixHQUFHLEVBQUUsUUFBUSxDQUFDLE1BQU0sR0FBRyxNQUFNLEdBQUcsQ0FBQztZQUNqQyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO1lBQ2pELEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUMzQyxNQUFNLEVBQUUsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsZUFBZTtTQUNuQyxDQUFDO1FBQ1gsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUNuRSxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7UUFDbEYsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFFbEUsSUFDSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsU0FBUyxJQUFJLFNBQVMsQ0FBQztZQUNuRCxJQUFJLENBQUMsUUFBUSxLQUFLLE1BQU0sRUFDMUI7WUFDRSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUMxQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1FBRXZCLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQzs7K0hBakRRLGlDQUFpQyxrQkFPOUIsb0JBQW9CLGFBQ3BCLE1BQU0sYUFDTixlQUFlLGFBQ2YsNEJBQTRCO21IQVYvQixpQ0FBaUMsK0ZBTC9CO1FBQ1AsNEJBQTRCO1FBQzVCLHFCQUFxQixDQUFDLGlDQUFpQyxDQUFDO0tBQzNEOzRGQUVRLGlDQUFpQztrQkFQN0MsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixTQUFTLEVBQUU7d0JBQ1AsNEJBQTRCO3dCQUM1QixxQkFBcUIsbUNBQW1DO3FCQUMzRDtpQkFDSjs7MEJBUVEsTUFBTTsyQkFBQyxvQkFBb0I7OEJBQ2dCLE1BQU07MEJBQWpELE1BQU07MkJBQUMsTUFBTTs7MEJBQ2IsTUFBTTsyQkFBQyxlQUFlOzswQkFDdEIsTUFBTTsyQkFBQyw0QkFBNEI7NENBTnhDLGdCQUFnQjtzQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICB0dWlBc1Bvc2l0aW9uQWNjZXNzb3IsXG4gICAgVHVpUG9zaXRpb25BY2Nlc3NvcixcbiAgICBUdWlSZWN0QWNjZXNzb3IsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7VHVpUG9pbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcblxuaW1wb3J0IHtUVUlfRFJPUERPV05fT1BUSU9OUywgVHVpRHJvcGRvd25PcHRpb25zfSBmcm9tICcuL2Ryb3Bkb3duLW9wdGlvbnMuZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpRHJvcGRvd25Qb3NpdGlvbkRpcmVjdGl2ZX0gZnJvbSAnLi9kcm9wZG93bi1wb3NpdGlvbi5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYFt0dWlEcm9wZG93blNpZGVkXWAsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIFR1aURyb3Bkb3duUG9zaXRpb25EaXJlY3RpdmUsXG4gICAgICAgIHR1aUFzUG9zaXRpb25BY2Nlc3NvcihUdWlEcm9wZG93blBvc2l0aW9uU2lkZWREaXJlY3RpdmUpLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyb3Bkb3duUG9zaXRpb25TaWRlZERpcmVjdGl2ZSBpbXBsZW1lbnRzIFR1aVBvc2l0aW9uQWNjZXNzb3Ige1xuICAgIHByaXZhdGUgcHJldmlvdXMgPSB0aGlzLm9wdGlvbnMuZGlyZWN0aW9uIHx8IGBib3R0b21gO1xuXG4gICAgQElucHV0KClcbiAgICB0dWlEcm9wZG93blNpZGVkOiBib29sZWFuIHwgc3RyaW5nID0gYGA7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfRFJPUERPV05fT1BUSU9OUykgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlEcm9wZG93bk9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbmRvd1JlZjogV2luZG93LFxuICAgICAgICBASW5qZWN0KFR1aVJlY3RBY2Nlc3NvcikgcHJpdmF0ZSByZWFkb25seSBhY2Nlc3NvcjogVHVpUmVjdEFjY2Vzc29yLFxuICAgICAgICBASW5qZWN0KFR1aURyb3Bkb3duUG9zaXRpb25EaXJlY3RpdmUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdmVydGljYWw6IFR1aVBvc2l0aW9uQWNjZXNzb3IsXG4gICAgKSB7fVxuXG4gICAgZ2V0UG9zaXRpb24ocmVjdDogQ2xpZW50UmVjdCk6IFR1aVBvaW50IHtcbiAgICAgICAgaWYgKHRoaXMudHVpRHJvcGRvd25TaWRlZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZlcnRpY2FsLmdldFBvc2l0aW9uKHJlY3QpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge2hlaWdodCwgd2lkdGh9ID0gcmVjdDtcbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmFjY2Vzc29yLmdldENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge2lubmVySGVpZ2h0LCBpbm5lcldpZHRofSA9IHRoaXMud2luZG93UmVmO1xuICAgICAgICBjb25zdCB7YWxpZ24sIGRpcmVjdGlvbiwgbWluSGVpZ2h0fSA9IHRoaXMub3B0aW9ucztcbiAgICAgICAgY29uc3QgYXZhaWxhYmxlID0ge1xuICAgICAgICAgICAgdG9wOiBob3N0UmVjdC5ib3R0b20sXG4gICAgICAgICAgICBsZWZ0OiBob3N0UmVjdC5sZWZ0IC0gdGhpcy5vcHRpb25zLm9mZnNldCxcbiAgICAgICAgICAgIHJpZ2h0OiBpbm5lcldpZHRoIC0gaG9zdFJlY3QucmlnaHQgLSB0aGlzLm9wdGlvbnMub2Zmc2V0LFxuICAgICAgICAgICAgYm90dG9tOiBpbm5lckhlaWdodCAtIGhvc3RSZWN0LnRvcCxcbiAgICAgICAgfSBhcyBjb25zdDtcbiAgICAgICAgY29uc3QgcG9zaXRpb24gPSB7XG4gICAgICAgICAgICB0b3A6IGhvc3RSZWN0LmJvdHRvbSAtIGhlaWdodCArIDEsIC8vIDEgZm9yIGJvcmRlclxuICAgICAgICAgICAgbGVmdDogaG9zdFJlY3QubGVmdCAtIHdpZHRoIC0gdGhpcy5vcHRpb25zLm9mZnNldCxcbiAgICAgICAgICAgIHJpZ2h0OiBob3N0UmVjdC5yaWdodCArIHRoaXMub3B0aW9ucy5vZmZzZXQsXG4gICAgICAgICAgICBib3R0b206IGhvc3RSZWN0LnRvcCAtIDEsIC8vIDEgZm9yIGJvcmRlclxuICAgICAgICB9IGFzIGNvbnN0O1xuICAgICAgICBjb25zdCBiZXR0ZXIgPSBhdmFpbGFibGUudG9wID4gYXZhaWxhYmxlLmJvdHRvbSA/IGB0b3BgIDogYGJvdHRvbWA7XG4gICAgICAgIGNvbnN0IG1heExlZnQgPSBhdmFpbGFibGUubGVmdCA+IGF2YWlsYWJsZS5yaWdodCA/IHBvc2l0aW9uLmxlZnQgOiBwb3NpdGlvbi5yaWdodDtcbiAgICAgICAgY29uc3QgbGVmdCA9IGF2YWlsYWJsZVthbGlnbl0gPiB3aWR0aCA/IHBvc2l0aW9uW2FsaWduXSA6IG1heExlZnQ7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgKGF2YWlsYWJsZVt0aGlzLnByZXZpb3VzXSA+IG1pbkhlaWdodCAmJiBkaXJlY3Rpb24pIHx8XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzID09PSBiZXR0ZXJcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gW3Bvc2l0aW9uW3RoaXMucHJldmlvdXNdLCBsZWZ0XTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHJldmlvdXMgPSBiZXR0ZXI7XG5cbiAgICAgICAgcmV0dXJuIFtwb3NpdGlvbltiZXR0ZXJdLCBsZWZ0XTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Directive, Inject } from '@angular/core';
|
|
2
2
|
import { WINDOW } from '@ng-web-apis/common';
|
|
3
3
|
import { tuiAsPositionAccessor, TuiRectAccessor, } from '@taiga-ui/core/abstract';
|
|
4
|
-
import {
|
|
4
|
+
import { TUI_DROPDOWN_OPTIONS } from './dropdown-options.directive';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@taiga-ui/core/abstract";
|
|
7
7
|
export class TuiDropdownPositionDirective {
|
|
@@ -15,16 +15,16 @@ export class TuiDropdownPositionDirective {
|
|
|
15
15
|
const { innerHeight, innerWidth } = this.windowRef;
|
|
16
16
|
const { minHeight, align, direction } = this.options;
|
|
17
17
|
const previous = this.previous || direction || `bottom`;
|
|
18
|
-
const right = Math.max(hostRect.right - width,
|
|
18
|
+
const right = Math.max(hostRect.right - width, this.options.offset);
|
|
19
19
|
const available = {
|
|
20
|
-
top: hostRect.top - 2 *
|
|
21
|
-
bottom: innerHeight - hostRect.bottom - 2 *
|
|
20
|
+
top: hostRect.top - 2 * this.options.offset,
|
|
21
|
+
bottom: innerHeight - hostRect.bottom - 2 * this.options.offset,
|
|
22
22
|
};
|
|
23
23
|
const position = {
|
|
24
|
-
top: hostRect.top -
|
|
25
|
-
bottom: hostRect.bottom +
|
|
24
|
+
top: hostRect.top - this.options.offset - height,
|
|
25
|
+
bottom: hostRect.bottom + this.options.offset,
|
|
26
26
|
right,
|
|
27
|
-
left: hostRect.left + width < innerWidth -
|
|
27
|
+
left: hostRect.left + width < innerWidth - this.options.offset
|
|
28
28
|
? hostRect.left
|
|
29
29
|
: right,
|
|
30
30
|
};
|
|
@@ -55,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
55
55
|
type: Inject,
|
|
56
56
|
args: [TuiRectAccessor]
|
|
57
57
|
}] }]; } });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tcG9zaXRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLXBvc2l0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0MsT0FBTyxFQUNILHFCQUFxQixFQUVyQixlQUFlLEdBQ2xCLE1BQU0seUJBQXlCLENBQUM7QUFHakMsT0FBTyxFQUFDLG9CQUFvQixFQUFxQixNQUFNLDhCQUE4QixDQUFDOzs7QUFNdEYsTUFBTSxPQUFPLDRCQUE0QjtJQUdyQyxZQUNtRCxPQUEyQixFQUN6QyxTQUFpQixFQUNSLFFBQXlCO1FBRnBCLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBQ3pDLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDUixhQUFRLEdBQVIsUUFBUSxDQUFpQjtJQUNwRSxDQUFDO0lBRUosV0FBVyxDQUFDLEVBQUMsS0FBSyxFQUFFLE1BQU0sRUFBYTtRQUNuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQy9DLE1BQU0sRUFBQyxXQUFXLEVBQUUsVUFBVSxFQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNqRCxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ25ELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksU0FBUyxJQUFJLFFBQVEsQ0FBQztRQUN4RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEUsTUFBTSxTQUFTLEdBQUc7WUFDZCxHQUFHLEVBQUUsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO1lBQzNDLE1BQU0sRUFBRSxXQUFXLEdBQUcsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO1NBQ3pELENBQUM7UUFDWCxNQUFNLFFBQVEsR0FBRztZQUNiLEdBQUcsRUFBRSxRQUFRLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLE1BQU07WUFDaEQsTUFBTSxFQUFFLFFBQVEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO1lBQzdDLEtBQUs7WUFDTCxJQUFJLEVBQ0EsUUFBUSxDQUFDLElBQUksR0FBRyxLQUFLLEdBQUcsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFDcEQsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJO2dCQUNmLENBQUMsQ0FBQyxLQUFLO1NBQ1QsQ0FBQztRQUNYLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxHQUFHLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFFbkUsSUFDSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxTQUFTLElBQUksU0FBUyxDQUFDO1lBQzlDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxNQUFNLEVBQzlCO1lBQ0UsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNoRDtRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1FBRXZCLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQzs7MEhBeENRLDRCQUE0QixrQkFJekIsb0JBQW9CLGFBQ3BCLE1BQU0sYUFDTixlQUFlOzhHQU5sQiw0QkFBNEIsaUdBRjFCLENBQUMscUJBQXFCLENBQUMsNEJBQTRCLENBQUMsQ0FBQzs0RkFFdkQsNEJBQTRCO2tCQUp4QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3RUFBd0U7b0JBQ2xGLFNBQVMsRUFBRSxDQUFDLHFCQUFxQiw4QkFBOEIsQ0FBQztpQkFDbkU7OzBCQUtRLE1BQU07MkJBQUMsb0JBQW9COzhCQUNnQixNQUFNOzBCQUFqRCxNQUFNOzJCQUFDLE1BQU07OzBCQUNiLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICB0dWlBc1Bvc2l0aW9uQWNjZXNzb3IsXG4gICAgVHVpUG9zaXRpb25BY2Nlc3NvcixcbiAgICBUdWlSZWN0QWNjZXNzb3IsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7VHVpUG9pbnQsIFR1aVZlcnRpY2FsRGlyZWN0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5cbmltcG9ydCB7VFVJX0RST1BET1dOX09QVElPTlMsIFR1aURyb3Bkb3duT3B0aW9uc30gZnJvbSAnLi9kcm9wZG93bi1vcHRpb25zLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgW3R1aURyb3Bkb3duXTpub3QoW3R1aURyb3Bkb3duQ3VzdG9tUG9zaXRpb25dKTpub3QoW3R1aURyb3Bkb3duU2lkZWRdKWAsXG4gICAgcHJvdmlkZXJzOiBbdHVpQXNQb3NpdGlvbkFjY2Vzc29yKFR1aURyb3Bkb3duUG9zaXRpb25EaXJlY3RpdmUpXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRHJvcGRvd25Qb3NpdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIFR1aVBvc2l0aW9uQWNjZXNzb3Ige1xuICAgIHByaXZhdGUgcHJldmlvdXM/OiBUdWlWZXJ0aWNhbERpcmVjdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFRVSV9EUk9QRE9XTl9PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aURyb3Bkb3duT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoVHVpUmVjdEFjY2Vzc29yKSBwcml2YXRlIHJlYWRvbmx5IGFjY2Vzc29yOiBUdWlSZWN0QWNjZXNzb3IsXG4gICAgKSB7fVxuXG4gICAgZ2V0UG9zaXRpb24oe3dpZHRoLCBoZWlnaHR9OiBDbGllbnRSZWN0KTogVHVpUG9pbnQge1xuICAgICAgICBjb25zdCBob3N0UmVjdCA9IHRoaXMuYWNjZXNzb3IuZ2V0Q2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB7aW5uZXJIZWlnaHQsIGlubmVyV2lkdGh9ID0gdGhpcy53aW5kb3dSZWY7XG4gICAgICAgIGNvbnN0IHttaW5IZWlnaHQsIGFsaWduLCBkaXJlY3Rpb259ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICBjb25zdCBwcmV2aW91cyA9IHRoaXMucHJldmlvdXMgfHwgZGlyZWN0aW9uIHx8IGBib3R0b21gO1xuICAgICAgICBjb25zdCByaWdodCA9IE1hdGgubWF4KGhvc3RSZWN0LnJpZ2h0IC0gd2lkdGgsIHRoaXMub3B0aW9ucy5vZmZzZXQpO1xuICAgICAgICBjb25zdCBhdmFpbGFibGUgPSB7XG4gICAgICAgICAgICB0b3A6IGhvc3RSZWN0LnRvcCAtIDIgKiB0aGlzLm9wdGlvbnMub2Zmc2V0LFxuICAgICAgICAgICAgYm90dG9tOiBpbm5lckhlaWdodCAtIGhvc3RSZWN0LmJvdHRvbSAtIDIgKiB0aGlzLm9wdGlvbnMub2Zmc2V0LFxuICAgICAgICB9IGFzIGNvbnN0O1xuICAgICAgICBjb25zdCBwb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIHRvcDogaG9zdFJlY3QudG9wIC0gdGhpcy5vcHRpb25zLm9mZnNldCAtIGhlaWdodCxcbiAgICAgICAgICAgIGJvdHRvbTogaG9zdFJlY3QuYm90dG9tICsgdGhpcy5vcHRpb25zLm9mZnNldCxcbiAgICAgICAgICAgIHJpZ2h0LFxuICAgICAgICAgICAgbGVmdDpcbiAgICAgICAgICAgICAgICBob3N0UmVjdC5sZWZ0ICsgd2lkdGggPCBpbm5lcldpZHRoIC0gdGhpcy5vcHRpb25zLm9mZnNldFxuICAgICAgICAgICAgICAgICAgICA/IGhvc3RSZWN0LmxlZnRcbiAgICAgICAgICAgICAgICAgICAgOiByaWdodCxcbiAgICAgICAgfSBhcyBjb25zdDtcbiAgICAgICAgY29uc3QgYmV0dGVyID0gYXZhaWxhYmxlLnRvcCA+IGF2YWlsYWJsZS5ib3R0b20gPyBgdG9wYCA6IGBib3R0b21gO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIChhdmFpbGFibGVbcHJldmlvdXNdID4gbWluSGVpZ2h0ICYmIGRpcmVjdGlvbikgfHxcbiAgICAgICAgICAgIGF2YWlsYWJsZVtwcmV2aW91c10gPiBoZWlnaHRcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gW3Bvc2l0aW9uW3ByZXZpb3VzXSwgcG9zaXRpb25bYWxpZ25dXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHJldmlvdXMgPSBiZXR0ZXI7XG5cbiAgICAgICAgcmV0dXJuIFtwb3NpdGlvbltiZXR0ZXJdLCBwb3NpdGlvblthbGlnbl1dO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -10,7 +10,7 @@ import { takeUntil } from 'rxjs/operators';
|
|
|
10
10
|
// eslint-disable-next-line import/no-cycle
|
|
11
11
|
import { TuiDropdownDirective } from './dropdown.directive';
|
|
12
12
|
import { TuiDropdownHoverDirective } from './dropdown-hover.directive';
|
|
13
|
-
import {
|
|
13
|
+
import { TUI_DROPDOWN_OPTIONS } from './dropdown-options.directive';
|
|
14
14
|
import * as i0 from "@angular/core";
|
|
15
15
|
import * as i1 from "@taiga-ui/core/components/scrollbar";
|
|
16
16
|
import * as i2 from "@taiga-ui/cdk";
|
|
@@ -64,12 +64,12 @@ export class TuiDropdownComponent {
|
|
|
64
64
|
left += offsetX;
|
|
65
65
|
const isIntersecting = left < rect.right &&
|
|
66
66
|
right > rect.left &&
|
|
67
|
-
top < offsetY + 2 *
|
|
67
|
+
top < offsetY + 2 * this.options.offset;
|
|
68
68
|
const available = isIntersecting
|
|
69
|
-
? rect.top - 2 *
|
|
70
|
-
: offsetY + innerHeight - top -
|
|
69
|
+
? rect.top - 2 * this.options.offset
|
|
70
|
+
: offsetY + innerHeight - top - this.options.offset;
|
|
71
71
|
style.position = position;
|
|
72
|
-
style.top = tuiPx(Math.max(top, offsetY +
|
|
72
|
+
style.top = tuiPx(Math.max(top, offsetY + this.options.offset));
|
|
73
73
|
style.left = tuiPx(left);
|
|
74
74
|
style.maxHeight = tuiPx(Math.min(maxHeight, available));
|
|
75
75
|
style.width = ``;
|
|
@@ -143,4 +143,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
143
143
|
type: HostBinding,
|
|
144
144
|
args: [`@tuiDropdownAnimation`]
|
|
145
145
|
}] } });
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi9kcm9wZG93bi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLFFBQVEsRUFDUixJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCw4QkFBOEIsRUFDOUIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixLQUFLLEdBQ1IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRS9ELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRzVELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6Qyw0Q0FBNEM7QUFDNUMsMkNBQTJDO0FBQzNDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsb0JBQW9CLEdBRXZCLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7Ozs7QUFFdEM7O0dBRUc7QUFDSCxvQkFBb0I7QUFT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bEI1QixpQkFBaUI7c0JBRHpCLFdBQVc7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBbmltYXRpb25PcHRpb25zfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIE9wdGlvbmFsLFxuICAgIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aVBvcnRhbEhvc3RDb21wb25lbnQsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSxcbiAgICB0dWlQeCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVJlY3RBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYWJzdHJhY3QnO1xuaW1wb3J0IHt0dWlEcm9wZG93bkFuaW1hdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1R1aURyb3Bkb3duQW5pbWF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9lbnVtcyc7XG5pbXBvcnQge1R1aVBvc2l0aW9uU2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OX09QVElPTlN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aVBvaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gVE9ETzogZmluZCB0aGUgYmVzdCB3YXkgZm9yIHByZXZlbnQgY3ljbGVcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tY3ljbGVcbmltcG9ydCB7VHVpRHJvcGRvd25EaXJlY3RpdmV9IGZyb20gJy4vZHJvcGRvd24uZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZX0gZnJvbSAnLi9kcm9wZG93bi1ob3Zlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgICBUVUlfRFJPUERPV05fT0ZGU0VULFxuICAgIFRVSV9EUk9QRE9XTl9PUFRJT05TLFxuICAgIFR1aURyb3Bkb3duT3B0aW9ucyxcbn0gZnJvbSAnLi9kcm9wZG93bi1vcHRpb25zLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gc2hvdyB0ZW1wbGF0ZSBpbiBhIHBvcnRhbCB1c2luZyBkZWZhdWx0IHN0eWxlIG9mIHdoaXRlIHJvdW5kZWQgYm94IHdpdGggYSBzaGFkb3dcbiAqL1xuLy8gQGJhZCBUT0RPOiBPblB1c2hcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWRyb3Bkb3duYCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vZHJvcGRvd24udGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vZHJvcGRvd24uc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZSwgVHVpUG9zaXRpb25TZXJ2aWNlXSxcbiAgICBhbmltYXRpb25zOiBbdHVpRHJvcGRvd25BbmltYXRpb25dLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93bkNvbXBvbmVudCB7XG4gICAgQEhvc3RCaW5kaW5nKGBAdHVpRHJvcGRvd25BbmltYXRpb25gKVxuICAgIHJlYWRvbmx5IGRyb3Bkb3duQW5pbWF0aW9uID0ge1xuICAgICAgICB2YWx1ZTogVHVpRHJvcGRvd25BbmltYXRpb24uRmFkZUluVG9wLFxuICAgICAgICAuLi50aGlzLmFuaW1hdGlvbk9wdGlvbnMsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aVBvc2l0aW9uU2VydmljZSkgcG9zaXRpb24kOiBPYnNlcnZhYmxlPFR1aVBvaW50PixcbiAgICAgICAgQFNlbGYoKSBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogT2JzZXJ2YWJsZTx2b2lkPixcbiAgICAgICAgQEluamVjdChUdWlEcm9wZG93bkRpcmVjdGl2ZSkgcmVhZG9ubHkgZGlyZWN0aXZlOiBUdWlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KEFic3RyYWN0VHVpUG9ydGFsSG9zdENvbXBvbmVudClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBob3N0OiBBYnN0cmFjdFR1aVBvcnRhbEhvc3RDb21wb25lbnQsXG4gICAgICAgIEBJbmplY3QoVHVpUmVjdEFjY2Vzc29yKSBwcml2YXRlIHJlYWRvbmx5IGFjY2Vzc29yOiBUdWlSZWN0QWNjZXNzb3IsXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbmRvd1JlZjogV2luZG93LFxuICAgICAgICBASW5qZWN0KFRVSV9BTklNQVRJT05fT1BUSU9OUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBhbmltYXRpb25PcHRpb25zOiBBbmltYXRpb25PcHRpb25zLFxuICAgICAgICBASW5qZWN0KFRVSV9EUk9QRE9XTl9PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aURyb3Bkb3duT3B0aW9ucyxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGhvdmVyRGlyZWN0aXZlOiBUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgcG9zaXRpb24kLnBpcGUodGFrZVVudGlsKGRlc3Ryb3kkKSkuc3Vic2NyaWJlKChbdG9wLCBsZWZ0XSkgPT4ge1xuICAgICAgICAgICAgdGhpcy51cGRhdGUodG9wLCBsZWZ0KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkQ2hhbmdlKGhvdmVyZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaG92ZXJEaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMuaG92ZXJEaXJlY3RpdmUudG9nZ2xlKGhvdmVyZWQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Ub3BGb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb3ZlRm9jdXNPdXRzaWRlKHRydWUpO1xuICAgIH1cblxuICAgIG9uQm90dG9tRm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW92ZUZvY3VzT3V0c2lkZShmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGUodG9wOiBudW1iZXIsIGxlZnQ6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB7c3R5bGV9ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtyaWdodH0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge2xpbWl0V2lkdGgsIG1heEhlaWdodH0gPSB0aGlzLm9wdGlvbnM7XG4gICAgICAgIGNvbnN0IHtpbm5lckhlaWdodH0gPSB0aGlzLndpbmRvd1JlZjtcbiAgICAgICAgY29uc3Qge2NsaWVudFJlY3R9ID0gdGhpcy5ob3N0O1xuICAgICAgICBjb25zdCB7cG9zaXRpb259ID0gdGhpcy5kaXJlY3RpdmU7XG4gICAgICAgIGNvbnN0IHJlY3QgPSB0aGlzLmFjY2Vzc29yLmdldENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qgb2Zmc2V0WCA9IHBvc2l0aW9uID09PSBgZml4ZWRgID8gMCA6IC1jbGllbnRSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IG9mZnNldFkgPSBwb3NpdGlvbiA9PT0gYGZpeGVkYCA/IDAgOiAtY2xpZW50UmVjdC50b3A7XG5cbiAgICAgICAgdG9wICs9IG9mZnNldFk7XG4gICAgICAgIGxlZnQgKz0gb2Zmc2V0WDtcblxuICAgICAgICBjb25zdCBpc0ludGVyc2VjdGluZyA9XG4gICAgICAgICAgICBsZWZ0IDwgcmVjdC5yaWdodCAmJlxuICAgICAgICAgICAgcmlnaHQgPiByZWN0LmxlZnQgJiZcbiAgICAgICAgICAgIHRvcCA8IG9mZnNldFkgKyAyICogVFVJX0RST1BET1dOX09GRlNFVDtcbiAgICAgICAgY29uc3QgYXZhaWxhYmxlID0gaXNJbnRlcnNlY3RpbmdcbiAgICAgICAgICAgID8gcmVjdC50b3AgLSAyICogVFVJX0RST1BET1dOX09GRlNFVFxuICAgICAgICAgICAgOiBvZmZzZXRZICsgaW5uZXJIZWlnaHQgLSB0b3AgLSBUVUlfRFJPUERPV05fT0ZGU0VUO1xuXG4gICAgICAgIHN0eWxlLnBvc2l0aW9uID0gcG9zaXRpb247XG4gICAgICAgIHN0eWxlLnRvcCA9IHR1aVB4KE1hdGgubWF4KHRvcCwgb2Zmc2V0WSArIFRVSV9EUk9QRE9XTl9PRkZTRVQpKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHR1aVB4KGxlZnQpO1xuICAgICAgICBzdHlsZS5tYXhIZWlnaHQgPSB0dWlQeChNYXRoLm1pbihtYXhIZWlnaHQsIGF2YWlsYWJsZSkpO1xuICAgICAgICBzdHlsZS53aWR0aCA9IGBgO1xuICAgICAgICBzdHlsZS5taW5XaWR0aCA9IGBgO1xuXG4gICAgICAgIHN3aXRjaCAobGltaXRXaWR0aCkge1xuICAgICAgICAgICAgY2FzZSBgbWluYDpcbiAgICAgICAgICAgICAgICBzdHlsZS5taW5XaWR0aCA9IHR1aVB4KHJlY3Qud2lkdGgpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBgZml4ZWRgOlxuICAgICAgICAgICAgICAgIHN0eWxlLndpZHRoID0gdHVpUHgocmVjdC53aWR0aCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG1vdmVGb2N1c091dHNpZGUocHJldmlvdXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYGRpdmApO1xuICAgICAgICBjb25zdCB7b3duZXJEb2N1bWVudH0gPSBob3N0O1xuICAgICAgICBjb25zdCByb290ID0gb3duZXJEb2N1bWVudCA/IG93bmVyRG9jdW1lbnQuYm9keSA6IGhvc3Q7XG4gICAgICAgIGxldCBmb2N1c2FibGUgPSB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtpbml0aWFsOiBob3N0LCByb290LCBwcmV2aW91c30pO1xuXG4gICAgICAgIHdoaWxlIChmb2N1c2FibGUgIT09IG51bGwgJiYgaG9zdC5jb250YWlucyhmb2N1c2FibGUpKSB7XG4gICAgICAgICAgICBmb2N1c2FibGUgPSB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtpbml0aWFsOiBmb2N1c2FibGUsIHJvb3QsIHByZXZpb3VzfSk7XG4gICAgICAgIH1cblxuICAgICAgICBmb2N1c2FibGU/LmZvY3VzKCk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICNhY3RpdmVab25lPVwidHVpQWN0aXZlWm9uZVwiXG4gICAgdHVpQWN0aXZlWm9uZVxuICAgIHR1aU92ZXJzY3JvbGw9XCJhbGxcIlxuICAgIGNsYXNzPVwidC13cmFwcGVyXCJcbiAgICBbdHVpTW9kZV09XCJudWxsXCJcbiAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkhvdmVyZWRDaGFuZ2UoJGV2ZW50KVwiXG4+XG4gICAgPHR1aS1zY3JvbGxiYXIgY2xhc3M9XCJ0LXNjcm9sbFwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgKGZvY3VzKT1cIm9uVG9wRm9jdXMoKVwiXG4gICAgICAgID48L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImRpcmVjdGl2ZS5jb250ZW50IGFzIHRleHQ7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGFjdGl2ZVpvbmV9XCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1wcmltaXRpdmVcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyB0ZXh0IH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgKGZvY3VzKT1cIm9uQm90dG9tRm9jdXMoKVwiXG4gICAgICAgID48L2Rpdj5cbiAgICA8L3R1aS1zY3JvbGxiYXI+XG48L2Rpdj5cbiJdfQ==
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi9kcm9wZG93bi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLFFBQVEsRUFDUixJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCw4QkFBOEIsRUFDOUIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixLQUFLLEdBQ1IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRS9ELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRzVELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6Qyw0Q0FBNEM7QUFDNUMsMkNBQTJDO0FBQzNDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxvQkFBb0IsRUFBcUIsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7Ozs7OztBQUV0Rjs7R0FFRztBQUNILG9CQUFvQjtBQVNwQixNQUFNLE9BQU8s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TUFBTTsyQkFBQyxvQkFBb0I7OzBCQUMzQixRQUFROzswQkFDUixNQUFNOzJCQUFDLHlCQUF5Qjs0Q0FsQjVCLGlCQUFpQjtzQkFEekIsV0FBVzt1QkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpUG9ydGFsSG9zdENvbXBvbmVudCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlLFxuICAgIHR1aVB4LFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpUmVjdEFjY2Vzc29yfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hYnN0cmFjdCc7XG5pbXBvcnQge3R1aURyb3Bkb3duQW5pbWF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7VHVpRHJvcGRvd25BbmltYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2VudW1zJztcbmltcG9ydCB7VHVpUG9zaXRpb25TZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9zZXJ2aWNlcyc7XG5pbXBvcnQge1RVSV9BTklNQVRJT05fT1BUSU9OU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VHVpUG9pbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vLyBUT0RPOiBmaW5kIHRoZSBiZXN0IHdheSBmb3IgcHJldmVudCBjeWNsZVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1jeWNsZVxuaW1wb3J0IHtUdWlEcm9wZG93bkRpcmVjdGl2ZX0gZnJvbSAnLi9kcm9wZG93bi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlfSBmcm9tICcuL2Ryb3Bkb3duLWhvdmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1RVSV9EUk9QRE9XTl9PUFRJT05TLCBUdWlEcm9wZG93bk9wdGlvbnN9IGZyb20gJy4vZHJvcGRvd24tb3B0aW9ucy5kaXJlY3RpdmUnO1xuXG4vKipcbiAqICBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIHRvIHNob3cgdGVtcGxhdGUgaW4gYSBwb3J0YWwgdXNpbmcgZGVmYXVsdCBzdHlsZSBvZiB3aGl0ZSByb3VuZGVkIGJveCB3aXRoIGEgc2hhZG93XG4gKi9cbi8vIEBiYWQgVE9ETzogT25QdXNoXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1kcm9wZG93bmAsXG4gICAgdGVtcGxhdGVVcmw6IGAuL2Ryb3Bkb3duLnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL2Ryb3Bkb3duLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2UsIFR1aVBvc2l0aW9uU2VydmljZV0sXG4gICAgYW5pbWF0aW9uczogW3R1aURyb3Bkb3duQW5pbWF0aW9uXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRHJvcGRvd25Db21wb25lbnQge1xuICAgIEBIb3N0QmluZGluZyhgQHR1aURyb3Bkb3duQW5pbWF0aW9uYClcbiAgICByZWFkb25seSBkcm9wZG93bkFuaW1hdGlvbiA9IHtcbiAgICAgICAgdmFsdWU6IFR1aURyb3Bkb3duQW5pbWF0aW9uLkZhZGVJblRvcCxcbiAgICAgICAgLi4udGhpcy5hbmltYXRpb25PcHRpb25zLFxuICAgIH07XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlQb3NpdGlvblNlcnZpY2UpIHBvc2l0aW9uJDogT2JzZXJ2YWJsZTxUdWlQb2ludD4sXG4gICAgICAgIEBTZWxmKCkgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoVHVpRHJvcGRvd25EaXJlY3RpdmUpIHJlYWRvbmx5IGRpcmVjdGl2ZTogVHVpRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChBYnN0cmFjdFR1aVBvcnRhbEhvc3RDb21wb25lbnQpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaG9zdDogQWJzdHJhY3RUdWlQb3J0YWxIb3N0Q29tcG9uZW50LFxuICAgICAgICBASW5qZWN0KFR1aVJlY3RBY2Nlc3NvcikgcHJpdmF0ZSByZWFkb25seSBhY2Nlc3NvcjogVHVpUmVjdEFjY2Vzc29yLFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWY6IFdpbmRvdyxcbiAgICAgICAgQEluamVjdChUVUlfQU5JTUFUSU9OX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgYW5pbWF0aW9uT3B0aW9uczogQW5pbWF0aW9uT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChUVUlfRFJPUERPV05fT1BUSU9OUykgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlEcm9wZG93bk9wdGlvbnMsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBob3ZlckRpcmVjdGl2ZTogVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHBvc2l0aW9uJC5waXBlKHRha2VVbnRpbChkZXN0cm95JCkpLnN1YnNjcmliZSgoW3RvcCwgbGVmdF0pID0+IHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlKHRvcCwgbGVmdCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZENoYW5nZShob3ZlcmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhvdmVyRGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmhvdmVyRGlyZWN0aXZlLnRvZ2dsZShob3ZlcmVkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uVG9wRm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW92ZUZvY3VzT3V0c2lkZSh0cnVlKTtcbiAgICB9XG5cbiAgICBvbkJvdHRvbUZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVGb2N1c091dHNpZGUoZmFsc2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlKHRvcDogbnVtYmVyLCBsZWZ0OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCB7cmlnaHR9ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHtsaW1pdFdpZHRoLCBtYXhIZWlnaHR9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICBjb25zdCB7aW5uZXJIZWlnaHR9ID0gdGhpcy53aW5kb3dSZWY7XG4gICAgICAgIGNvbnN0IHtjbGllbnRSZWN0fSA9IHRoaXMuaG9zdDtcbiAgICAgICAgY29uc3Qge3Bvc2l0aW9ufSA9IHRoaXMuZGlyZWN0aXZlO1xuICAgICAgICBjb25zdCByZWN0ID0gdGhpcy5hY2Nlc3Nvci5nZXRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IG9mZnNldFggPSBwb3NpdGlvbiA9PT0gYGZpeGVkYCA/IDAgOiAtY2xpZW50UmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCBvZmZzZXRZID0gcG9zaXRpb24gPT09IGBmaXhlZGAgPyAwIDogLWNsaWVudFJlY3QudG9wO1xuXG4gICAgICAgIHRvcCArPSBvZmZzZXRZO1xuICAgICAgICBsZWZ0ICs9IG9mZnNldFg7XG5cbiAgICAgICAgY29uc3QgaXNJbnRlcnNlY3RpbmcgPVxuICAgICAgICAgICAgbGVmdCA8IHJlY3QucmlnaHQgJiZcbiAgICAgICAgICAgIHJpZ2h0ID4gcmVjdC5sZWZ0ICYmXG4gICAgICAgICAgICB0b3AgPCBvZmZzZXRZICsgMiAqIHRoaXMub3B0aW9ucy5vZmZzZXQ7XG4gICAgICAgIGNvbnN0IGF2YWlsYWJsZSA9IGlzSW50ZXJzZWN0aW5nXG4gICAgICAgICAgICA/IHJlY3QudG9wIC0gMiAqIHRoaXMub3B0aW9ucy5vZmZzZXRcbiAgICAgICAgICAgIDogb2Zmc2V0WSArIGlubmVySGVpZ2h0IC0gdG9wIC0gdGhpcy5vcHRpb25zLm9mZnNldDtcblxuICAgICAgICBzdHlsZS5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgICAgICBzdHlsZS50b3AgPSB0dWlQeChNYXRoLm1heCh0b3AsIG9mZnNldFkgKyB0aGlzLm9wdGlvbnMub2Zmc2V0KSk7XG4gICAgICAgIHN0eWxlLmxlZnQgPSB0dWlQeChsZWZ0KTtcbiAgICAgICAgc3R5bGUubWF4SGVpZ2h0ID0gdHVpUHgoTWF0aC5taW4obWF4SGVpZ2h0LCBhdmFpbGFibGUpKTtcbiAgICAgICAgc3R5bGUud2lkdGggPSBgYDtcbiAgICAgICAgc3R5bGUubWluV2lkdGggPSBgYDtcblxuICAgICAgICBzd2l0Y2ggKGxpbWl0V2lkdGgpIHtcbiAgICAgICAgICAgIGNhc2UgYG1pbmA6XG4gICAgICAgICAgICAgICAgc3R5bGUubWluV2lkdGggPSB0dWlQeChyZWN0LndpZHRoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgYGZpeGVkYDpcbiAgICAgICAgICAgICAgICBzdHlsZS53aWR0aCA9IHR1aVB4KHJlY3Qud2lkdGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtb3ZlRm9jdXNPdXRzaWRlKHByZXZpb3VzOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KGBkaXZgKTtcbiAgICAgICAgY29uc3Qge293bmVyRG9jdW1lbnR9ID0gaG9zdDtcbiAgICAgICAgY29uc3Qgcm9vdCA9IG93bmVyRG9jdW1lbnQgPyBvd25lckRvY3VtZW50LmJvZHkgOiBob3N0O1xuICAgICAgICBsZXQgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogaG9zdCwgcm9vdCwgcHJldmlvdXN9KTtcblxuICAgICAgICB3aGlsZSAoZm9jdXNhYmxlICE9PSBudWxsICYmIGhvc3QuY29udGFpbnMoZm9jdXNhYmxlKSkge1xuICAgICAgICAgICAgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogZm9jdXNhYmxlLCByb290LCBwcmV2aW91c30pO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9jdXNhYmxlPy5mb2N1cygpO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICAjYWN0aXZlWm9uZT1cInR1aUFjdGl2ZVpvbmVcIlxuICAgIHR1aUFjdGl2ZVpvbmVcbiAgICB0dWlPdmVyc2Nyb2xsPVwiYWxsXCJcbiAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4gICAgW3R1aU1vZGVdPVwibnVsbFwiXG4gICAgKHR1aUhvdmVyZWRDaGFuZ2UpPVwib25Ib3ZlcmVkQ2hhbmdlKCRldmVudClcIlxuPlxuICAgIDx0dWktc2Nyb2xsYmFyIGNsYXNzPVwidC1zY3JvbGxcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJvblRvcEZvY3VzKClcIlxuICAgICAgICA+PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJkaXJlY3RpdmUuY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiBhY3RpdmVab25lfVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtcHJpbWl0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJvbkJvdHRvbUZvY3VzKClcIlxuICAgICAgICA+PC9kaXY+XG4gICAgPC90dWktc2Nyb2xsYmFyPlxuPC9kaXY+XG4iXX0=
|
|
@@ -51,7 +51,7 @@ class TuiOptionComponent {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
TuiOptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiOptionComponent, deps: [{ token: TUI_OPTION_CONTENT, optional: true }, { token: forwardRef(() => TuiDataListComponent) }, { token: ElementRef }, { token: TUI_DATA_LIST_HOST, optional: true }, { token: TuiDropdownDirective, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
-
TuiOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: { size: "size", role: "role", disabled: "disabled", value: "value" }, host: { attributes: { "tabIndex": "-1", "type": "button" }, listeners: { "click": "onClick()", "mousemove.
|
|
54
|
+
TuiOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: { size: "size", role: "role", disabled: "disabled", value: "value" }, host: { attributes: { "tabIndex": "-1", "type": "button" }, listeners: { "click": "onClick()", "mousemove.silent": "onMouseMove($event)" }, properties: { "attr.disabled": "disabled || null", "attr.data-size": "this.size", "attr.role": "this.role", "class._with-dropdown": "this.active" } }, ngImport: i0, template: "<ng-container *polymorpheusOutlet=\"content || base as text; context: {$implicit: base}\">\n {{ text }}\n</ng-container>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n", styles: [":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;font-size:inherit;line-height:inherit;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;justify-content:space-between;text-align:left;box-sizing:border-box;color:var(--tui-text-01);border-radius:var(--tui-radius-s);outline:none;text-decoration:none;cursor:pointer;background-clip:padding-box;font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem;margin:.125rem 0}:host:disabled{opacity:var(--tui-disabled-opacity);cursor:default}:host:focus,:host._with-dropdown{background-color:var(--tui-clear)}:host :host-context([data-list-size=\"s\"]),:host :host-context([data-list-size=\"xs\"]),:host[data-size=s][data-size=s],:host[data-size=xs][data-size=xs]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem;margin:var(--tui-data-list-margin) 0}:host :host-context([data-list-size=\"m\"]),:host[data-size=m][data-size=m]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem;margin:var(--tui-data-list-margin) 0}:host :host-context([data-list-size=\"l\"]),:host[data-size=l][data-size=l]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem;margin:var(--tui-data-list-margin) 0}.t-arrow{margin:0 -.5rem 0 .75rem}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
55
55
|
__decorate([
|
|
56
56
|
tuiDefaultProp()
|
|
57
57
|
], TuiOptionComponent.prototype, "size", void 0);
|
|
@@ -121,9 +121,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
121
121
|
type: HostListener,
|
|
122
122
|
args: [`click`]
|
|
123
123
|
}], onMouseMove: [{
|
|
124
|
-
type: HostListener,
|
|
125
|
-
args: [`mousemove.init`, [`$event`]]
|
|
126
|
-
}, {
|
|
127
124
|
type: HostListener,
|
|
128
125
|
args: [`mousemove.silent`, [`$event`]]
|
|
129
126
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-components-data-list.js","sources":["../../../projects/core/components/data-list/option/option.component.ts","../../../projects/core/components/data-list/option/option.template.html","../../../projects/core/components/data-list/data-list.component.ts","../../../projects/core/components/data-list/data-list.template.html","../../../projects/core/components/data-list/data-list.directive.ts","../../../projects/core/components/data-list/opt-group.directive.ts","../../../projects/core/components/data-list/data-list.module.ts","../../../projects/core/components/data-list/taiga-ui-core-components-data-list.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n tuiIsNativeFocused,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiDataListComponent} from '../data-list.component';\n\nfunction shouldFocus({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !tuiIsNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: `./option.template.html`,\n styleUrls: [`./option.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: `-1`,\n type: `button`,\n '[attr.disabled]': `disabled || null`,\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n /** @deprecated use size on {@link TuiDataListComponent} instead */\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS | null = null;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiOptionRole = `option`;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: TuiDataListComponent<T>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding(`class._with-dropdown`)\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener(`click`)\n onClick(): void {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener(`mousemove.init`, [`$event`])\n @HostListener(`mousemove.silent`, [`$event`])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): void {\n currentTarget.focus({preventScroll: true});\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy(): void {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","<ng-container *polymorpheusOutlet=\"content || base as text; context: {$implicit: base}\">\n {{ text }}\n</ng-container>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Optional,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsElement,\n tuiIsNativeFocusedIn,\n tuiIsPresent,\n tuiItemsQueryListObservable,\n tuiMoveFocus,\n tuiPure,\n tuiSetNativeMouseFocused,\n} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiTextfieldController,\n} from '@taiga-ui/core/directives';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_NOTHING_FOUND_MESSAGE, tuiAsDataListAccessor} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n@Component({\n selector: `tui-data-list`,\n templateUrl: `./data-list.template.html`,\n styleUrls: [`./data-list.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n tuiAsDataListAccessor(TuiDataListComponent),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiDataListRole = `listbox`;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = ``;\n\n @Input()\n @HostBinding(`attr.data-list-size`)\n @tuiDefaultProp()\n size = this.controller?.size || `m`;\n\n constructor(\n @Optional()\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n private readonly controller: TuiTextfieldController | null,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return tuiItemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener(`focusin`, [`$event.relatedTarget`, `$event.currentTarget`])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement): void {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener(`mousedown.prevent`)\n noop(): void {}\n\n @HostListener(`keydown.arrowDown.prevent`, [`$event.target`, `1`])\n @HostListener(`keydown.arrowUp.prevent`, [`$event.target`, `-1`])\n onKeyDownArrow(current: HTMLElement, step: number): void {\n const {elements} = this;\n\n tuiMoveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener(`wheel.silent.passive`)\n @HostListener(`mouseleave`, [`$event.target`])\n handleFocusLossIfNecessary(element: Element = this.elementRef.nativeElement): void {\n if (this.origin && tuiIsNativeFocusedIn(element)) {\n tuiSetNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n\n onFocus({target}: Event, top: boolean): void {\n if (!tuiIsElement(target)) {\n return;\n }\n\n const {elements} = this;\n\n tuiMoveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(target);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll(`[tuiOption]`));\n }\n}\n","<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, true)\"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, false)\"\n></div>\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiDataList]`,\n})\nexport class TuiDataListDirective {}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: `tui-opt-group`,\n host: {\n role: `group`,\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding(`attr.data-label`)\n @tuiDefaultProp()\n label = ``;\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-components-data-list.js","sources":["../../../projects/core/components/data-list/option/option.component.ts","../../../projects/core/components/data-list/option/option.template.html","../../../projects/core/components/data-list/data-list.component.ts","../../../projects/core/components/data-list/data-list.template.html","../../../projects/core/components/data-list/data-list.directive.ts","../../../projects/core/components/data-list/opt-group.directive.ts","../../../projects/core/components/data-list/data-list.module.ts","../../../projects/core/components/data-list/taiga-ui-core-components-data-list.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n tuiIsNativeFocused,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiDataListComponent} from '../data-list.component';\n\nfunction shouldFocus({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !tuiIsNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: `./option.template.html`,\n styleUrls: [`./option.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: `-1`,\n type: `button`,\n '[attr.disabled]': `disabled || null`,\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n /** @deprecated use size on {@link TuiDataListComponent} instead */\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS | null = null;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiOptionRole = `option`;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: TuiDataListComponent<T>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding(`class._with-dropdown`)\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener(`click`)\n onClick(): void {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener(`mousemove.silent`, [`$event`])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): void {\n currentTarget.focus({preventScroll: true});\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy(): void {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","<ng-container *polymorpheusOutlet=\"content || base as text; context: {$implicit: base}\">\n {{ text }}\n</ng-container>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Optional,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsElement,\n tuiIsNativeFocusedIn,\n tuiIsPresent,\n tuiItemsQueryListObservable,\n tuiMoveFocus,\n tuiPure,\n tuiSetNativeMouseFocused,\n} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiTextfieldController,\n} from '@taiga-ui/core/directives';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_NOTHING_FOUND_MESSAGE, tuiAsDataListAccessor} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n@Component({\n selector: `tui-data-list`,\n templateUrl: `./data-list.template.html`,\n styleUrls: [`./data-list.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n tuiAsDataListAccessor(TuiDataListComponent),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiDataListRole = `listbox`;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = ``;\n\n @Input()\n @HostBinding(`attr.data-list-size`)\n @tuiDefaultProp()\n size = this.controller?.size || `m`;\n\n constructor(\n @Optional()\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n private readonly controller: TuiTextfieldController | null,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return tuiItemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener(`focusin`, [`$event.relatedTarget`, `$event.currentTarget`])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement): void {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener(`mousedown.prevent`)\n noop(): void {}\n\n @HostListener(`keydown.arrowDown.prevent`, [`$event.target`, `1`])\n @HostListener(`keydown.arrowUp.prevent`, [`$event.target`, `-1`])\n onKeyDownArrow(current: HTMLElement, step: number): void {\n const {elements} = this;\n\n tuiMoveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener(`wheel.silent.passive`)\n @HostListener(`mouseleave`, [`$event.target`])\n handleFocusLossIfNecessary(element: Element = this.elementRef.nativeElement): void {\n if (this.origin && tuiIsNativeFocusedIn(element)) {\n tuiSetNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n\n onFocus({target}: Event, top: boolean): void {\n if (!tuiIsElement(target)) {\n return;\n }\n\n const {elements} = this;\n\n tuiMoveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(target);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll(`[tuiOption]`));\n }\n}\n","<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, true)\"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, false)\"\n></div>\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiDataList]`,\n})\nexport class TuiDataListDirective {}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: `tui-opt-group`,\n host: {\n role: `group`,\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding(`attr.data-label`)\n @tuiDefaultProp()\n label = ``;\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i1"],"mappings":"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"}
|