@taiga-ui/kit 4.0.1 → 4.2.0

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.
Files changed (38) hide show
  1. package/components/accordion/accordion.directive.d.ts +1 -0
  2. package/components/calendar-range/calendar-range.component.d.ts +4 -0
  3. package/esm2022/components/accordion/accordion-item.component.mjs +3 -10
  4. package/esm2022/components/accordion/accordion.directive.mjs +8 -17
  5. package/esm2022/components/badge/badge.directive.mjs +2 -2
  6. package/esm2022/components/calendar-range/calendar-range.component.mjs +40 -4
  7. package/esm2022/components/chip/chip.directive.mjs +2 -2
  8. package/esm2022/components/files/pipes/file-rejected.pipe.mjs +3 -2
  9. package/esm2022/components/filter/filter.component.mjs +3 -3
  10. package/esm2022/components/input-phone-international/input-phone-international.component.mjs +3 -3
  11. package/esm2022/components/preview/zoom/preview-zoom.component.mjs +3 -3
  12. package/esm2022/components/radio-list/radio-list.component.mjs +3 -3
  13. package/esm2022/components/range/range.component.mjs +3 -3
  14. package/esm2022/components/rating/rating.component.mjs +5 -12
  15. package/fesm2022/taiga-ui-kit-components-accordion.mjs +8 -24
  16. package/fesm2022/taiga-ui-kit-components-accordion.mjs.map +1 -1
  17. package/fesm2022/taiga-ui-kit-components-badge.mjs +2 -2
  18. package/fesm2022/taiga-ui-kit-components-badge.mjs.map +1 -1
  19. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs +39 -3
  20. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs.map +1 -1
  21. package/fesm2022/taiga-ui-kit-components-chip.mjs +2 -2
  22. package/fesm2022/taiga-ui-kit-components-chip.mjs.map +1 -1
  23. package/fesm2022/taiga-ui-kit-components-files.mjs +2 -2
  24. package/fesm2022/taiga-ui-kit-components-files.mjs.map +1 -1
  25. package/fesm2022/taiga-ui-kit-components-filter.mjs +2 -2
  26. package/fesm2022/taiga-ui-kit-components-filter.mjs.map +1 -1
  27. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +2 -2
  28. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
  29. package/fesm2022/taiga-ui-kit-components-preview.mjs +2 -2
  30. package/fesm2022/taiga-ui-kit-components-preview.mjs.map +1 -1
  31. package/fesm2022/taiga-ui-kit-components-radio-list.mjs +2 -2
  32. package/fesm2022/taiga-ui-kit-components-radio-list.mjs.map +1 -1
  33. package/fesm2022/taiga-ui-kit-components-range.mjs +2 -2
  34. package/fesm2022/taiga-ui-kit-components-range.mjs.map +1 -1
  35. package/fesm2022/taiga-ui-kit-components-rating.mjs +4 -11
  36. package/fesm2022/taiga-ui-kit-components-rating.mjs.map +1 -1
  37. package/package.json +4 -4
  38. package/styles/components/chip.less +1 -1
@@ -6,6 +6,7 @@ export declare class TuiAccordionDirective implements AfterContentInit {
6
6
  private readonly destroyRef;
7
7
  protected readonly accordionItems: QueryList<TuiAccordionItem>;
8
8
  closeOthers: boolean;
9
+ constructor();
9
10
  ngAfterContentInit(): void;
10
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiAccordionDirective, never>;
11
12
  static ɵdir: i0.ɵɵDirectiveDeclaration<TuiAccordionDirective, "tui-accordion", never, { "closeOthers": { "alias": "closeOthers"; "required": false; }; }, {}, ["accordionItems"], never, true, [{ directive: typeof i1.TuiGroup; inputs: { "rounded": "rounded"; }; outputs: {}; }]>;
@@ -14,6 +14,7 @@ export declare class TuiCalendarRange implements OnInit, OnChanges {
14
14
  protected previousValue: TuiDayRange | null;
15
15
  protected hoveredItem: TuiDay | null;
16
16
  protected readonly capsMapper: TuiMapper<[TuiDay | null, TuiDayRange | null, TuiDayLike | null, boolean], TuiDay>;
17
+ protected availableRange: TuiDayRange | null;
17
18
  defaultViewedMonth: TuiMonth;
18
19
  disabledItemHandler: TuiBooleanHandler<TuiDay>;
19
20
  markerHandler: TuiMarkerHandler | null;
@@ -45,6 +46,9 @@ export declare class TuiCalendarRange implements OnInit, OnChanges {
45
46
  protected updateValue(value: TuiDayRange | null): void;
46
47
  private get activePeriod();
47
48
  private calculateDisabledItemHandler;
49
+ private isDisabledItem;
50
+ private availableRangeContainsItem;
51
+ private findAvailableRange;
48
52
  private updateDefaultViewedMonth;
49
53
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiCalendarRange, never>;
50
54
  static ɵcmp: i0.ɵɵComponentDeclaration<TuiCalendarRange, "tui-calendar-range", never, { "defaultViewedMonth": { "alias": "defaultViewedMonth"; "required": false; }; "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "markerHandler": { "alias": "markerHandler"; "required": false; }; "items": { "alias": "items"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "minLength": { "alias": "minLength"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
@@ -3,7 +3,7 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, Ev
3
3
  import { TuiExpand } from '@taiga-ui/core/components/expand';
4
4
  import { TuiIcon } from '@taiga-ui/core/components/icon';
5
5
  import { TuiChevron } from '@taiga-ui/kit/directives';
6
- import { PolymorpheusOutlet, PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
6
+ import { PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
7
7
  import { TuiAccordionItemContent } from './accordion-item-content.directive';
8
8
  import { TuiAccordionItemEagerContent } from './accordion-item-eager-content.directive';
9
9
  import * as i0 from "@angular/core";
@@ -50,14 +50,7 @@ class TuiAccordionItem {
50
50
  export { TuiAccordionItem };
51
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAccordionItem, decorators: [{
52
52
  type: Component,
53
- args: [{ standalone: true, selector: 'tui-accordion-item', imports: [
54
- NgIf,
55
- PolymorpheusOutlet,
56
- PolymorpheusTemplate,
57
- TuiIcon,
58
- TuiChevron,
59
- TuiExpand,
60
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n automation-id=\"tui-accordion__item-wrapper\"\n class=\"t-wrapper\"\n>\n <button\n automation-id=\"tui-accordion__item-header\"\n type=\"button\"\n class=\"t-header\"\n [class.t-header_hoverable]=\"!disableHover\"\n [class.t-header_open]=\"open\"\n [disabled]=\"disabled\"\n (click)=\"onRowToggle()\"\n (keydown.esc)=\"onItemKeyDownEsc($event)\"\n >\n <span\n automation-id=\"tui-accordion__item-title\"\n class=\"t-title\"\n >\n <ng-content />\n </span>\n <ng-container *ngIf=\"showArrow\">\n <tui-icon\n class=\"t-icon\"\n [tuiChevron]=\"open\"\n />\n </ng-container>\n </button>\n <tui-expand\n [async]=\"async\"\n [expanded]=\"open\"\n >\n <ng-template tuiExpandContent>\n <div\n *ngIf=\"lazyContent\"\n automation-id=\"tui-accordion__item-content\"\n class=\"t-content\"\n >\n <ng-container *polymorpheusOutlet=\"lazyContent as text\">\n {{ text }}\n </ng-container>\n </div>\n </ng-template>\n <div\n *ngIf=\"eagerContent\"\n class=\"t-content\"\n >\n <ng-content select=\"[tuiAccordionItemContent]\" />\n </div>\n </tui-expand>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden;border-radius:var(--tui-radius-l)}:host[data-borders=top-bottom]{border-radius:0!important}::ng-deep tui-accordion{width:100%}.t-wrapper{position:relative;border-radius:inherit}.t-wrapper:after{position:absolute;top:0;left:0;width:100%;height:100%;content:\"\";box-sizing:border-box;border-radius:inherit;border:1px solid var(--tui-border-normal);pointer-events:none}:host:not([data-borders]) .t-wrapper:after{border-width:0}:host[data-borders=all] .t-wrapper:after{border-width:1px}:host[data-borders=top-bottom] .t-wrapper:after{border-left-width:0;border-right-width:0}:host[data-borders=top] .t-wrapper:after{border-left-width:0;border-right-width:0;border-bottom-width:0}:host[data-borders=bottom] .t-wrapper:after{border-left-width:0;border-right-width:0;border-top-width:0}.t-header{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:100%;font:var(--tui-font-text-l);align-items:center;box-sizing:border-box;border-bottom:1px solid var(--tui-border-normal);min-height:var(--tui-height-l);padding:.75rem 1.25rem;color:var(--tui-text-primary);cursor:pointer;text-align:left;outline:none}.t-header:focus-visible{box-shadow:inset 0 0 0 2px var(--tui-border-focus)}:host:not([data-borders]) .t-header{border-bottom-width:0}:host._has-arrow .t-header{padding-right:.75rem}:host-context([tuiTheme=\"dark\"]) .t-header_open{background:var(--tui-background-neutral-1)}:host[data-size=s] .t-header{font:var(--tui-font-text-m);min-height:var(--tui-height-m);padding:.625rem .75rem .625rem 1rem}:host._no-padding .t-header{padding-left:0;padding-right:0}:host._disabled .t-header{cursor:default}.t-wrapper:hover>.t-header_hoverable{background:var(--tui-background-base-alt)}.t-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:0;flex-grow:1}:host._has-arrow .t-title{margin-right:.5rem}.t-icon{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-left:auto;border:.25rem solid transparent;color:var(--tui-text-tertiary)}:host:hover .t-icon{color:var(--tui-text-secondary)}.t-content{font:var(--tui-font-text-m);padding:1.25rem;word-wrap:break-word}:host[data-size=s] .t-content{font:var(--tui-font-text-s);padding:1rem}\n"] }]
53
+ args: [{ standalone: true, selector: 'tui-accordion-item', imports: [NgIf, PolymorpheusOutlet, TuiIcon, TuiChevron, TuiExpand], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n automation-id=\"tui-accordion__item-wrapper\"\n class=\"t-wrapper\"\n>\n <button\n automation-id=\"tui-accordion__item-header\"\n type=\"button\"\n class=\"t-header\"\n [class.t-header_hoverable]=\"!disableHover\"\n [class.t-header_open]=\"open\"\n [disabled]=\"disabled\"\n (click)=\"onRowToggle()\"\n (keydown.esc)=\"onItemKeyDownEsc($event)\"\n >\n <span\n automation-id=\"tui-accordion__item-title\"\n class=\"t-title\"\n >\n <ng-content />\n </span>\n <ng-container *ngIf=\"showArrow\">\n <tui-icon\n class=\"t-icon\"\n [tuiChevron]=\"open\"\n />\n </ng-container>\n </button>\n <tui-expand\n [async]=\"async\"\n [expanded]=\"open\"\n >\n <ng-template tuiExpandContent>\n <div\n *ngIf=\"lazyContent\"\n automation-id=\"tui-accordion__item-content\"\n class=\"t-content\"\n >\n <ng-container *polymorpheusOutlet=\"lazyContent as text\">\n {{ text }}\n </ng-container>\n </div>\n </ng-template>\n <div\n *ngIf=\"eagerContent\"\n class=\"t-content\"\n >\n <ng-content select=\"[tuiAccordionItemContent]\" />\n </div>\n </tui-expand>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden;border-radius:var(--tui-radius-l)}:host[data-borders=top-bottom]{border-radius:0!important}::ng-deep tui-accordion{width:100%}.t-wrapper{position:relative;border-radius:inherit}.t-wrapper:after{position:absolute;top:0;left:0;width:100%;height:100%;content:\"\";box-sizing:border-box;border-radius:inherit;border:1px solid var(--tui-border-normal);pointer-events:none}:host:not([data-borders]) .t-wrapper:after{border-width:0}:host[data-borders=all] .t-wrapper:after{border-width:1px}:host[data-borders=top-bottom] .t-wrapper:after{border-left-width:0;border-right-width:0}:host[data-borders=top] .t-wrapper:after{border-left-width:0;border-right-width:0;border-bottom-width:0}:host[data-borders=bottom] .t-wrapper:after{border-left-width:0;border-right-width:0;border-top-width:0}.t-header{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:100%;font:var(--tui-font-text-l);align-items:center;box-sizing:border-box;border-bottom:1px solid var(--tui-border-normal);min-height:var(--tui-height-l);padding:.75rem 1.25rem;color:var(--tui-text-primary);cursor:pointer;text-align:left;outline:none}.t-header:focus-visible{box-shadow:inset 0 0 0 2px var(--tui-border-focus)}:host:not([data-borders]) .t-header{border-bottom-width:0}:host._has-arrow .t-header{padding-right:.75rem}:host-context([tuiTheme=\"dark\"]) .t-header_open{background:var(--tui-background-neutral-1)}:host[data-size=s] .t-header{font:var(--tui-font-text-m);min-height:var(--tui-height-m);padding:.625rem .75rem .625rem 1rem}:host._no-padding .t-header{padding-left:0;padding-right:0}:host._disabled .t-header{cursor:default}.t-wrapper:hover>.t-header_hoverable{background:var(--tui-background-base-alt)}.t-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:0;flex-grow:1}:host._has-arrow .t-title{margin-right:.5rem}.t-icon{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-left:auto;border:.25rem solid transparent;color:var(--tui-text-tertiary)}:host:hover .t-icon{color:var(--tui-text-secondary)}.t-content{font:var(--tui-font-text-m);padding:1.25rem;word-wrap:break-word}:host[data-size=s] .t-content{font:var(--tui-font-text-s);padding:1rem}\n"] }]
61
54
  }], propDecorators: { eagerContent: [{
62
55
  type: ContentChild,
63
56
  args: [TuiAccordionItemEagerContent]
@@ -98,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
98
91
  }], openChange: [{
99
92
  type: Output
100
93
  }] } });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24taXRlbS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV2RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGtCQUFrQixFQUFFLG9CQUFvQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFFaEYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sMENBQTBDLENBQUM7OztBQUV0RixNQWVhLGdCQUFnQjtJQWY3QjtRQWdCcUIsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBVTFDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFJbEIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUlqQixZQUFPLEdBQWdDLEtBQUssQ0FBQztRQUk3QyxTQUFJLEdBQWEsR0FBRyxDQUFDO1FBSXJCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFHckIsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUdiLFVBQUssR0FBRyxLQUFLLENBQUM7UUFHTCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztLQThCNUQ7SUE1QlUsS0FBSztRQUNSLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRVMsV0FBVztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQixJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQy9CO0lBQ0wsQ0FBQztJQUVTLGdCQUFnQixDQUFDLEtBQVk7UUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDWixPQUFPO1NBQ1Y7UUFFRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU8sVUFBVSxDQUFDLElBQWE7UUFDNUIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTtZQUNwQixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDOytHQXBFUSxnQkFBZ0I7bUdBQWhCLGdCQUFnQiw4aEJBR1gsNEJBQTRCLDhFQUc1Qix1QkFBdUIsZ0RDMUN6QyxzN0NBa0RBLHcrRUR6QlEsSUFBSSw2RkFDSixrQkFBa0IsOEhBRWxCLE9BQU8scUZBQ1AsVUFBVTs7U0FPTCxnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFmNUIsU0FBUztpQ0FDTSxJQUFJLFlBQ04sb0JBQW9CLFdBQ3JCO3dCQUNMLElBQUk7d0JBQ0osa0JBQWtCO3dCQUNsQixvQkFBb0I7d0JBQ3BCLE9BQU87d0JBQ1AsVUFBVTt3QkFDVixTQUFTO3FCQUNaLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNOzhCQU01QixZQUFZO3NCQUQ5QixZQUFZO3VCQUFDLDRCQUE0QjtnQkFJdkIsV0FBVztzQkFEN0IsWUFBWTt1QkFBQyx1QkFBdUI7Z0JBSzlCLFNBQVM7c0JBRmYsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxtQkFBbUI7Z0JBS3pCLFNBQVM7c0JBRmYsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBS3hCLE9BQU87c0JBRmIsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxtQkFBbUI7Z0JBS3pCLElBQUk7c0JBRlYsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBS3RCLFFBQVE7c0JBRmQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBSXZCLFlBQVk7c0JBRGxCLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFJVSxVQUFVO3NCQUR6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpRXhwYW5kfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2V4cGFuZCc7XG5pbXBvcnQge1R1aUljb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgdHlwZSB7VHVpU2l6ZVN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7VHVpQ2hldnJvbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzT3V0bGV0LCBQb2x5bW9ycGhldXNUZW1wbGF0ZX0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpQWNjb3JkaW9uSXRlbUNvbnRlbnR9IGZyb20gJy4vYWNjb3JkaW9uLWl0ZW0tY29udGVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlBY2NvcmRpb25JdGVtRWFnZXJDb250ZW50fSBmcm9tICcuL2FjY29yZGlvbi1pdGVtLWVhZ2VyLWNvbnRlbnQuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1hY2NvcmRpb24taXRlbScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ0lmLFxuICAgICAgICBQb2x5bW9ycGhldXNPdXRsZXQsXG4gICAgICAgIFBvbHltb3JwaGV1c1RlbXBsYXRlLFxuICAgICAgICBUdWlJY29uLFxuICAgICAgICBUdWlDaGV2cm9uLFxuICAgICAgICBUdWlFeHBhbmQsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWNjb3JkaW9uLWl0ZW0udGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYWNjb3JkaW9uLWl0ZW0uc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlBY2NvcmRpb25JdGVtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICBAQ29udGVudENoaWxkKFR1aUFjY29yZGlvbkl0ZW1FYWdlckNvbnRlbnQpXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVhZ2VyQ29udGVudD86IFR1aUFjY29yZGlvbkl0ZW1FYWdlckNvbnRlbnQ7XG5cbiAgICBAQ29udGVudENoaWxkKFR1aUFjY29yZGlvbkl0ZW1Db250ZW50KVxuICAgIHByb3RlY3RlZCByZWFkb25seSBsYXp5Q29udGVudD86IFR1aUFjY29yZGlvbkl0ZW1Db250ZW50O1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9uby1wYWRkaW5nJylcbiAgICBwdWJsaWMgbm9QYWRkaW5nID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2hhcy1hcnJvdycpXG4gICAgcHVibGljIHNob3dBcnJvdyA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWJvcmRlcnMnKVxuICAgIHB1YmxpYyBib3JkZXJzOiAnYWxsJyB8ICd0b3AtYm90dG9tJyB8IG51bGwgPSAnYWxsJztcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgcHVibGljIHNpemU6IFR1aVNpemVTID0gJ20nO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9kaXNhYmxlZCcpXG4gICAgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkaXNhYmxlSG92ZXIgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG9wZW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGFzeW5jID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgcmVhZG9ubHkgb3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVPcGVuKGZhbHNlKTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uUm93VG9nZ2xlKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbighdGhpcy5vcGVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkl0ZW1LZXlEb3duRXNjKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMub3Blbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVPcGVuKG9wZW46IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMub3BlbiA9PT0gb3Blbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcGVuID0gb3BlbjtcbiAgICAgICAgdGhpcy5vcGVuQ2hhbmdlLmVtaXQob3Blbik7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYWNjb3JkaW9uX19pdGVtLXdyYXBwZXJcIlxuICAgIGNsYXNzPVwidC13cmFwcGVyXCJcbj5cbiAgICA8YnV0dG9uXG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYWNjb3JkaW9uX19pdGVtLWhlYWRlclwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cInQtaGVhZGVyXCJcbiAgICAgICAgW2NsYXNzLnQtaGVhZGVyX2hvdmVyYWJsZV09XCIhZGlzYWJsZUhvdmVyXCJcbiAgICAgICAgW2NsYXNzLnQtaGVhZGVyX29wZW5dPVwib3BlblwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIChjbGljayk9XCJvblJvd1RvZ2dsZSgpXCJcbiAgICAgICAgKGtleWRvd24uZXNjKT1cIm9uSXRlbUtleURvd25Fc2MoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1hY2NvcmRpb25fX2l0ZW0tdGl0bGVcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LXRpdGxlXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0Fycm93XCI+XG4gICAgICAgICAgICA8dHVpLWljb25cbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaWNvblwiXG4gICAgICAgICAgICAgICAgW3R1aUNoZXZyb25dPVwib3BlblwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2J1dHRvbj5cbiAgICA8dHVpLWV4cGFuZFxuICAgICAgICBbYXN5bmNdPVwiYXN5bmNcIlxuICAgICAgICBbZXhwYW5kZWRdPVwib3BlblwiXG4gICAgPlxuICAgICAgICA8bmctdGVtcGxhdGUgdHVpRXhwYW5kQ29udGVudD5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdJZj1cImxhenlDb250ZW50XCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWFjY29yZGlvbl9faXRlbS1jb250ZW50XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtY29udGVudFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwibGF6eUNvbnRlbnQgYXMgdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyB0ZXh0IH19XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nSWY9XCJlYWdlckNvbnRlbnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWNvbnRlbnRcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbdHVpQWNjb3JkaW9uSXRlbUNvbnRlbnRdXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC90dWktZXhwYW5kPlxuPC9kaXY+XG4iXX0=
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24taXRlbS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV2RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFFMUQsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sMENBQTBDLENBQUM7OztBQUV0RixNQVFhLGdCQUFnQjtJQVI3QjtRQVNxQixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFVMUMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUlsQixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBSWpCLFlBQU8sR0FBZ0MsS0FBSyxDQUFDO1FBSTdDLFNBQUksR0FBYSxHQUFHLENBQUM7UUFJckIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUdyQixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBR2IsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUdMLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0tBOEI1RDtJQTVCVSxLQUFLO1FBQ1IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFUyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDL0I7SUFDTCxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsS0FBWTtRQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNaLE9BQU87U0FDVjtRQUVELEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTyxVQUFVLENBQUMsSUFBYTtRQUM1QixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQ3BCLE9BQU87U0FDVjtRQUVELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7K0dBcEVRLGdCQUFnQjttR0FBaEIsZ0JBQWdCLDhoQkFHWCw0QkFBNEIsOEVBRzVCLHVCQUF1QixnRENuQ3pDLHM3Q0FrREEsdytFRDFCYyxJQUFJLDZGQUFFLGtCQUFrQiw4SEFBRSxPQUFPLHFGQUFFLFVBQVU7O1NBSzlDLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQVI1QixTQUFTO2lDQUNNLElBQUksWUFDTixvQkFBb0IsV0FDckIsQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsbUJBR2xELHVCQUF1QixDQUFDLE1BQU07OEJBTTVCLFlBQVk7c0JBRDlCLFlBQVk7dUJBQUMsNEJBQTRCO2dCQUl2QixXQUFXO3NCQUQ3QixZQUFZO3VCQUFDLHVCQUF1QjtnQkFLOUIsU0FBUztzQkFGZixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLG1CQUFtQjtnQkFLekIsU0FBUztzQkFGZixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGtCQUFrQjtnQkFLeEIsT0FBTztzQkFGYixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLG1CQUFtQjtnQkFLekIsSUFBSTtzQkFGVixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGdCQUFnQjtnQkFLdEIsUUFBUTtzQkFGZCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFJdkIsWUFBWTtzQkFEbEIsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlVLFVBQVU7c0JBRHpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlFeHBhbmR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZXhwYW5kJztcbmltcG9ydCB7VHVpSWNvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB0eXBlIHtUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtUdWlDaGV2cm9ufSBmcm9tICdAdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aUFjY29yZGlvbkl0ZW1Db250ZW50fSBmcm9tICcuL2FjY29yZGlvbi1pdGVtLWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpQWNjb3JkaW9uSXRlbUVhZ2VyQ29udGVudH0gZnJvbSAnLi9hY2NvcmRpb24taXRlbS1lYWdlci1jb250ZW50LmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktYWNjb3JkaW9uLWl0ZW0nLFxuICAgIGltcG9ydHM6IFtOZ0lmLCBQb2x5bW9ycGhldXNPdXRsZXQsIFR1aUljb24sIFR1aUNoZXZyb24sIFR1aUV4cGFuZF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FjY29yZGlvbi1pdGVtLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2FjY29yZGlvbi1pdGVtLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQWNjb3JkaW9uSXRlbSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlBY2NvcmRpb25JdGVtRWFnZXJDb250ZW50KVxuICAgIHByb3RlY3RlZCByZWFkb25seSBlYWdlckNvbnRlbnQ/OiBUdWlBY2NvcmRpb25JdGVtRWFnZXJDb250ZW50O1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlBY2NvcmRpb25JdGVtQ29udGVudClcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGF6eUNvbnRlbnQ/OiBUdWlBY2NvcmRpb25JdGVtQ29udGVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fbm8tcGFkZGluZycpXG4gICAgcHVibGljIG5vUGFkZGluZyA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9oYXMtYXJyb3cnKVxuICAgIHB1YmxpYyBzaG93QXJyb3cgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1ib3JkZXJzJylcbiAgICBwdWJsaWMgYm9yZGVyczogJ2FsbCcgfCAndG9wLWJvdHRvbScgfCBudWxsID0gJ2FsbCc7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXNpemUnKVxuICAgIHB1YmxpYyBzaXplOiBUdWlTaXplUyA9ICdtJztcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fZGlzYWJsZWQnKVxuICAgIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZGlzYWJsZUhvdmVyID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBvcGVuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhc3luYyA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IG9wZW5DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblJvd1RvZ2dsZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU9wZW4oIXRoaXMub3Blbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25JdGVtS2V5RG93bkVzYyhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLm9wZW4pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLnVwZGF0ZU9wZW4oZmFsc2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlT3BlbihvcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm9wZW4gPT09IG9wZW4pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3BlbiA9IG9wZW47XG4gICAgICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KG9wZW4pO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWFjY29yZGlvbl9faXRlbS13cmFwcGVyXCJcbiAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4+XG4gICAgPGJ1dHRvblxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWFjY29yZGlvbl9faXRlbS1oZWFkZXJcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJ0LWhlYWRlclwiXG4gICAgICAgIFtjbGFzcy50LWhlYWRlcl9ob3ZlcmFibGVdPVwiIWRpc2FibGVIb3ZlclwiXG4gICAgICAgIFtjbGFzcy50LWhlYWRlcl9vcGVuXT1cIm9wZW5cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAoY2xpY2spPVwib25Sb3dUb2dnbGUoKVwiXG4gICAgICAgIChrZXlkb3duLmVzYyk9XCJvbkl0ZW1LZXlEb3duRXNjKCRldmVudClcIlxuICAgID5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktYWNjb3JkaW9uX19pdGVtLXRpdGxlXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC10aXRsZVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dBcnJvd1wiPlxuICAgICAgICAgICAgPHR1aS1pY29uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWljb25cIlxuICAgICAgICAgICAgICAgIFt0dWlDaGV2cm9uXT1cIm9wZW5cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9idXR0b24+XG4gICAgPHR1aS1leHBhbmRcbiAgICAgICAgW2FzeW5jXT1cImFzeW5jXCJcbiAgICAgICAgW2V4cGFuZGVkXT1cIm9wZW5cIlxuICAgID5cbiAgICAgICAgPG5nLXRlbXBsYXRlIHR1aUV4cGFuZENvbnRlbnQ+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nSWY9XCJsYXp5Q29udGVudFwiXG4gICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1hY2NvcmRpb25fX2l0ZW0tY29udGVudFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWNvbnRlbnRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImxhenlDb250ZW50IGFzIHRleHRcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiZWFnZXJDb250ZW50XCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1jb250ZW50XCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3R1aUFjY29yZGlvbkl0ZW1Db250ZW50XVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvdHVpLWV4cGFuZD5cbjwvZGl2PlxuIl19
@@ -3,7 +3,7 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
3
  import { EMPTY_QUERY } from '@taiga-ui/cdk/constants';
4
4
  import { tuiQueryListChanges } from '@taiga-ui/cdk/observables';
5
5
  import { tuiIsPresent } from '@taiga-ui/cdk/utils/miscellaneous';
6
- import { TuiGroup, tuiGroupOptionsProvider } from '@taiga-ui/core/directives/group';
6
+ import { TuiGroup } from '@taiga-ui/core/directives/group';
7
7
  import { filter, identity, map, merge, pairwise, switchMap } from 'rxjs';
8
8
  import { TuiAccordionItem } from './accordion-item.component';
9
9
  import * as i0 from "@angular/core";
@@ -13,6 +13,10 @@ class TuiAccordionDirective {
13
13
  this.destroyRef = inject(DestroyRef);
14
14
  this.accordionItems = EMPTY_QUERY;
15
15
  this.closeOthers = true;
16
+ // Not using DI options to avoid changed defaults spilling to content
17
+ const group = inject(TuiGroup);
18
+ group.orientation = 'vertical';
19
+ group.collapsed = true;
16
20
  }
17
21
  ngAfterContentInit() {
18
22
  const { accordionItems } = this;
@@ -28,13 +32,7 @@ class TuiAccordionDirective {
28
32
  });
29
33
  }
30
34
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAccordionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAccordionDirective, isStandalone: true, selector: "tui-accordion", inputs: { closeOthers: "closeOthers" }, providers: [
32
- tuiGroupOptionsProvider({
33
- orientation: 'vertical',
34
- size: 'l',
35
- collapsed: true,
36
- }),
37
- ], queries: [{ propertyName: "accordionItems", predicate: TuiAccordionItem }], hostDirectives: [{ directive: i1.TuiGroup, inputs: ["rounded", "rounded"] }], ngImport: i0 }); }
35
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAccordionDirective, isStandalone: true, selector: "tui-accordion", inputs: { closeOthers: "closeOthers" }, queries: [{ propertyName: "accordionItems", predicate: TuiAccordionItem }], hostDirectives: [{ directive: i1.TuiGroup, inputs: ["rounded", "rounded"] }], ngImport: i0 }); }
38
36
  }
39
37
  export { TuiAccordionDirective };
40
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAccordionDirective, decorators: [{
@@ -42,13 +40,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
42
40
  args: [{
43
41
  standalone: true,
44
42
  selector: 'tui-accordion',
45
- providers: [
46
- tuiGroupOptionsProvider({
47
- orientation: 'vertical',
48
- size: 'l',
49
- collapsed: true,
50
- }),
51
- ],
52
43
  hostDirectives: [
53
44
  {
54
45
  directive: TuiGroup,
@@ -56,10 +47,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
56
47
  },
57
48
  ],
58
49
  }]
59
- }], propDecorators: { accordionItems: [{
50
+ }], ctorParameters: function () { return []; }, propDecorators: { accordionItems: [{
60
51
  type: ContentChildren,
61
52
  args: [TuiAccordionItem]
62
53
  }], closeOthers: [{
63
54
  type: Input
64
55
  }] } });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxlQUFlLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDL0QsT0FBTyxFQUFDLFFBQVEsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xGLE9BQU8sRUFBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUV2RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBRTVELE1BaUJhLHFCQUFxQjtJQWpCbEM7UUFrQnFCLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFHOUIsbUJBQWMsR0FBZ0MsV0FBVyxDQUFDO1FBR3RFLGdCQUFXLEdBQUcsSUFBSSxDQUFDO0tBdUM3QjtJQXJDVSxrQkFBa0I7UUFDckIsTUFBTSxFQUFDLGNBQWMsRUFBQyxHQUFHLElBQUksQ0FBQztRQUM5QixNQUFNLEtBQUssR0FBRyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNsRCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUMxQixRQUFRLEVBQUUsRUFDVixHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsRUFBRSxFQUFFLENBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQ2hFLEVBQ0QsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUN2QixDQUFDO1FBQ0YsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUNuQixLQUFLLENBQUMsSUFBSSxDQUNOLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ2YsS0FBSyxDQUNELEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQ2hCLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUNmLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFDaEIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUNqQixDQUNKLENBQ0osQ0FDSixDQUNKLEVBQ0QsV0FBVyxDQUNkLENBQUMsSUFBSSxDQUNGLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQzlCLGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FDdEMsQ0FBQztRQUVGLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUMvQixjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQzNCLElBQUksVUFBVSxLQUFLLEdBQUcsRUFBRTtvQkFDcEIsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO2lCQUNmO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBN0NRLHFCQUFxQjttR0FBckIscUJBQXFCLG9HQWRuQjtZQUNQLHVCQUF1QixDQUFDO2dCQUNwQixXQUFXLEVBQUUsVUFBVTtnQkFDdkIsSUFBSSxFQUFFLEdBQUc7Z0JBQ1QsU0FBUyxFQUFFLElBQUk7YUFDbEIsQ0FBQztTQUNMLHlEQVdnQixnQkFBZ0I7O1NBSHhCLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQWpCakMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFNBQVMsRUFBRTt3QkFDUCx1QkFBdUIsQ0FBQzs0QkFDcEIsV0FBVyxFQUFFLFVBQVU7NEJBQ3ZCLElBQUksRUFBRSxHQUFHOzRCQUNULFNBQVMsRUFBRSxJQUFJO3lCQUNsQixDQUFDO3FCQUNMO29CQUNELGNBQWMsRUFBRTt3QkFDWjs0QkFDSSxTQUFTLEVBQUUsUUFBUTs0QkFDbkIsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDO3lCQUN0QjtxQkFDSjtpQkFDSjs4QkFLc0IsY0FBYztzQkFEaEMsZUFBZTt1QkFBQyxnQkFBZ0I7Z0JBSTFCLFdBQVc7c0JBRGpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7QWZ0ZXJDb250ZW50SW5pdCwgUXVlcnlMaXN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udGVudENoaWxkcmVuLCBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIGluamVjdCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7RU1QVFlfUVVFUll9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7dHVpUXVlcnlMaXN0Q2hhbmdlc30gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge3R1aUlzUHJlc2VudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7VHVpR3JvdXAsIHR1aUdyb3VwT3B0aW9uc1Byb3ZpZGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2dyb3VwJztcbmltcG9ydCB7ZmlsdGVyLCBpZGVudGl0eSwgbWFwLCBtZXJnZSwgcGFpcndpc2UsIHN3aXRjaE1hcH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpQWNjb3JkaW9uSXRlbX0gZnJvbSAnLi9hY2NvcmRpb24taXRlbS5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWFjY29yZGlvbicsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUdyb3VwT3B0aW9uc1Byb3ZpZGVyKHtcbiAgICAgICAgICAgIG9yaWVudGF0aW9uOiAndmVydGljYWwnLFxuICAgICAgICAgICAgc2l6ZTogJ2wnLFxuICAgICAgICAgICAgY29sbGFwc2VkOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGRpcmVjdGl2ZTogVHVpR3JvdXAsXG4gICAgICAgICAgICBpbnB1dHM6IFsncm91bmRlZCddLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUFjY29yZGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oVHVpQWNjb3JkaW9uSXRlbSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWNjb3JkaW9uSXRlbXM6IFF1ZXJ5TGlzdDxUdWlBY2NvcmRpb25JdGVtPiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2xvc2VPdGhlcnMgPSB0cnVlO1xuXG4gICAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2FjY29yZGlvbkl0ZW1zfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IHJvd3MkID0gdHVpUXVlcnlMaXN0Q2hhbmdlcyhhY2NvcmRpb25JdGVtcyk7XG4gICAgICAgIGNvbnN0IG5ld09wZW5Sb3ckID0gcm93cyQucGlwZShcbiAgICAgICAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAgICAgICBtYXAoKFtwcmV2aW91cywgY3VycmVudF0pID0+XG4gICAgICAgICAgICAgICAgY3VycmVudC5maW5kKChpdGVtKSA9PiAhcHJldmlvdXMuaW5jbHVkZXMoaXRlbSkgJiYgaXRlbS5vcGVuKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBmaWx0ZXIodHVpSXNQcmVzZW50KSxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3Qgcm93c09wZW4kID0gbWVyZ2UoXG4gICAgICAgICAgICByb3dzJC5waXBlKFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgocm93cykgPT5cbiAgICAgICAgICAgICAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5yb3dzLm1hcCgocm93KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdy5vcGVuQ2hhbmdlLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcihpZGVudGl0eSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiByb3cpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbmV3T3BlblJvdyQsXG4gICAgICAgICkucGlwZShcbiAgICAgICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLmNsb3NlT3RoZXJzKSxcbiAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpLFxuICAgICAgICApO1xuXG4gICAgICAgIHJvd3NPcGVuJC5zdWJzY3JpYmUoKGN1cnJlbnRSb3cpID0+IHtcbiAgICAgICAgICAgIGFjY29yZGlvbkl0ZW1zLmZvckVhY2goKHJvdykgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50Um93ICE9PSByb3cpIHtcbiAgICAgICAgICAgICAgICAgICAgcm93LmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxlQUFlLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDL0QsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pELE9BQU8sRUFBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUV2RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBRTVELE1BVWEscUJBQXFCO0lBUzlCO1FBUmlCLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFHOUIsbUJBQWMsR0FBZ0MsV0FBVyxDQUFDO1FBR3RFLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBR3RCLHFFQUFxRTtRQUNyRSxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFL0IsS0FBSyxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFDL0IsS0FBSyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVNLGtCQUFrQjtRQUNyQixNQUFNLEVBQUMsY0FBYyxFQUFDLEdBQUcsSUFBSSxDQUFDO1FBQzlCLE1BQU0sS0FBSyxHQUFHLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQzFCLFFBQVEsRUFBRSxFQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDaEUsRUFDRCxNQUFNLENBQUMsWUFBWSxDQUFDLENBQ3ZCLENBQUM7UUFDRixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQ25CLEtBQUssQ0FBQyxJQUFJLENBQ04sU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDZixLQUFLLENBQ0QsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDaEIsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ2YsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUNoQixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQ2pCLENBQ0osQ0FDSixDQUNKLENBQ0osRUFDRCxXQUFXLENBQ2QsQ0FBQyxJQUFJLENBQ0YsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFDOUIsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUN0QyxDQUFDO1FBRUYsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQy9CLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDM0IsSUFBSSxVQUFVLEtBQUssR0FBRyxFQUFFO29CQUNwQixHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7aUJBQ2Y7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0FyRFEscUJBQXFCO21HQUFyQixxQkFBcUIsZ0pBR2IsZ0JBQWdCOztTQUh4QixxQkFBcUI7NEZBQXJCLHFCQUFxQjtrQkFWakMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLGNBQWMsRUFBRTt3QkFDWjs0QkFDSSxTQUFTLEVBQUUsUUFBUTs0QkFDbkIsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDO3lCQUN0QjtxQkFDSjtpQkFDSjswRUFLc0IsY0FBYztzQkFEaEMsZUFBZTt1QkFBQyxnQkFBZ0I7Z0JBSTFCLFdBQVc7c0JBRGpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7QWZ0ZXJDb250ZW50SW5pdCwgUXVlcnlMaXN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udGVudENoaWxkcmVuLCBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIGluamVjdCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7RU1QVFlfUVVFUll9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7dHVpUXVlcnlMaXN0Q2hhbmdlc30gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge3R1aUlzUHJlc2VudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7VHVpR3JvdXB9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZ3JvdXAnO1xuaW1wb3J0IHtmaWx0ZXIsIGlkZW50aXR5LCBtYXAsIG1lcmdlLCBwYWlyd2lzZSwgc3dpdGNoTWFwfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlBY2NvcmRpb25JdGVtfSBmcm9tICcuL2FjY29yZGlvbi1pdGVtLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktYWNjb3JkaW9uJyxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBkaXJlY3RpdmU6IFR1aUdyb3VwLFxuICAgICAgICAgICAgaW5wdXRzOiBbJ3JvdW5kZWQnXSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlBY2NvcmRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFR1aUFjY29yZGlvbkl0ZW0pXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjY29yZGlvbkl0ZW1zOiBRdWVyeUxpc3Q8VHVpQWNjb3JkaW9uSXRlbT4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGNsb3NlT3RoZXJzID0gdHJ1ZTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICAvLyBOb3QgdXNpbmcgREkgb3B0aW9ucyB0byBhdm9pZCBjaGFuZ2VkIGRlZmF1bHRzIHNwaWxsaW5nIHRvIGNvbnRlbnRcbiAgICAgICAgY29uc3QgZ3JvdXAgPSBpbmplY3QoVHVpR3JvdXApO1xuXG4gICAgICAgIGdyb3VwLm9yaWVudGF0aW9uID0gJ3ZlcnRpY2FsJztcbiAgICAgICAgZ3JvdXAuY29sbGFwc2VkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCB7YWNjb3JkaW9uSXRlbXN9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93cyQgPSB0dWlRdWVyeUxpc3RDaGFuZ2VzKGFjY29yZGlvbkl0ZW1zKTtcbiAgICAgICAgY29uc3QgbmV3T3BlblJvdyQgPSByb3dzJC5waXBlKFxuICAgICAgICAgICAgcGFpcndpc2UoKSxcbiAgICAgICAgICAgIG1hcCgoW3ByZXZpb3VzLCBjdXJyZW50XSkgPT5cbiAgICAgICAgICAgICAgICBjdXJyZW50LmZpbmQoKGl0ZW0pID0+ICFwcmV2aW91cy5pbmNsdWRlcyhpdGVtKSAmJiBpdGVtLm9wZW4pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGZpbHRlcih0dWlJc1ByZXNlbnQpLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCByb3dzT3BlbiQgPSBtZXJnZShcbiAgICAgICAgICAgIHJvd3MkLnBpcGUoXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKChyb3dzKSA9PlxuICAgICAgICAgICAgICAgICAgICBtZXJnZShcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnJvd3MubWFwKChyb3cpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93Lm9wZW5DaGFuZ2UucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKGlkZW50aXR5KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IHJvdyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBuZXdPcGVuUm93JCxcbiAgICAgICAgKS5waXBlKFxuICAgICAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuY2xvc2VPdGhlcnMpLFxuICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZiksXG4gICAgICAgICk7XG5cbiAgICAgICAgcm93c09wZW4kLnN1YnNjcmliZSgoY3VycmVudFJvdykgPT4ge1xuICAgICAgICAgICAgYWNjb3JkaW9uSXRlbXMuZm9yRWFjaCgocm93KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGN1cnJlbnRSb3cgIT09IHJvdykge1xuICAgICAgICAgICAgICAgICAgICByb3cuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
@@ -8,13 +8,13 @@ import * as i1 from "@taiga-ui/core/directives/appearance";
8
8
  import * as i2 from "@taiga-ui/core/directives/icons";
9
9
  class TuiBadgeStyles {
10
10
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiBadgeStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiBadgeStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-badge" }, ngImport: i0, template: '', isInline: true, styles: ["tui-badge,[tuiBadge]{--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));border-radius:6rem;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);height:var(--t-size);min-width:var(--t-size);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;font:var(--tui-font-text-s)}tui-badge>img,[tuiBadge]>img,tui-badge>tui-svg,[tuiBadge]>tui-svg,tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge>tui-avatar,[tuiBadge]>tui-avatar,tui-badge>tui-badge,[tuiBadge]>tui-badge,tui-badge>[tuiBadge],[tuiBadge]>[tuiBadge],tui-badge>[tuiRadio],[tuiBadge]>[tuiRadio],tui-badge>[tuiSwitch],[tuiBadge]>[tuiSwitch],tui-badge>[tuiCheckbox],[tuiBadge]>[tuiCheckbox],tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{margin:var(--t-margin)}tui-badge[tuiStatus]:before,[tuiBadge][tuiStatus]:before{width:.375rem;height:.375rem;margin-inline-end:-.25rem}tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-badge[data-appearance=error],[tuiBadge][data-appearance=error]{--t-status: var(--tui-status-negative)}tui-badge[data-appearance=success],[tuiBadge][data-appearance=success]{--t-status: var(--tui-status-positive)}tui-badge[data-appearance=warning],[tuiBadge][data-appearance=warning]{--t-status: var(--tui-status-warning)}tui-badge[data-appearance=info],[tuiBadge][data-appearance=info]{--t-status: var(--tui-status-info)}tui-badge[data-appearance=neutral],[tuiBadge][data-appearance=neutral]{--t-status: var(--tui-status-neutral)}tui-badge[tuiStatus][data-appearance=error]:before,[tuiBadge][tuiStatus][data-appearance=error]:before,tui-badge[tuiStatus][data-appearance=success]:before,[tuiBadge][tuiStatus][data-appearance=success]:before,tui-badge[tuiStatus][data-appearance=warning]:before,[tuiBadge][tuiStatus][data-appearance=warning]:before,tui-badge[tuiStatus][data-appearance=info]:before,[tuiBadge][tuiStatus][data-appearance=info]:before,tui-badge[tuiStatus][data-appearance=neutral]:before,[tuiBadge][tuiStatus][data-appearance=neutral]:before{content:\"\";display:block;margin:0}tui-badge[data-size=s],[tuiBadge][data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem}tui-badge[data-size=s][tuiStatus]:before,[tuiBadge][data-size=s][tuiStatus]:before{width:.25rem;height:.25rem;margin-inline-end:-.125rem}tui-badge[data-size=m],[tuiBadge][data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}tui-badge[data-size=xl],[tuiBadge][data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-font-text-m)}tui-badge[data-size=xl][tuiStatus]:before,[tuiBadge][data-size=xl][tuiStatus]:before{width:.5rem;height:.5rem;margin-inline-end:-.125rem}tui-badge[tuiAppearance][data-appearance=error],[tuiBadge][tuiAppearance][data-appearance=error],tui-badge[tuiAppearance][data-appearance=success],[tuiBadge][tuiAppearance][data-appearance=success],tui-badge[tuiAppearance][data-appearance=warning],[tuiBadge][tuiAppearance][data-appearance=warning],tui-badge[tuiAppearance][data-appearance=info],[tuiBadge][tuiAppearance][data-appearance=info],tui-badge[tuiAppearance][data-appearance=neutral],[tuiBadge][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]{padding:0;width:var(--t-size)}tui-icon[tuiBadge]{--t-margin: 0 !important;-webkit-mask:none;mask:none;height:var(--t-size);width:var(--t-size)}tui-icon[tuiBadge][data-size=s]:after{-webkit-mask-size:.625rem;mask-size:.625rem}tui-icon[tuiBadge][data-size=m]:after{-webkit-mask-size:.75rem;mask-size:.75rem}tui-icon[tuiBadge][data-size=l]:after,tui-icon[tuiBadge][data-size=xl]:after{-webkit-mask-size:1rem;mask-size:1rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiBadgeStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-badge" }, ngImport: i0, template: '', isInline: true, styles: ["tui-badge,[tuiBadge]{--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%;gap:calc(var(--t-gap, var(--t-0, 0rem)) - 2 * var(--t-margin, 0rem));border-radius:6rem;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);height:var(--t-size);min-width:var(--t-size);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;font:var(--tui-font-text-s)}tui-badge>img,[tuiBadge]>img,tui-badge>tui-svg,[tuiBadge]>tui-svg,tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge>tui-avatar,[tuiBadge]>tui-avatar,tui-badge>tui-badge,[tuiBadge]>tui-badge,tui-badge>[tuiBadge],[tuiBadge]>[tuiBadge],tui-badge>[tuiRadio],[tuiBadge]>[tuiRadio],tui-badge>[tuiSwitch],[tuiBadge]>[tuiSwitch],tui-badge>[tuiCheckbox],[tuiBadge]>[tuiCheckbox],tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{margin:var(--t-margin)}tui-badge[tuiStatus]:before,[tuiBadge][tuiStatus]:before{width:.375rem;height:.375rem;margin-inline-end:-.25rem}tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-badge[data-appearance=error],[tuiBadge][data-appearance=error]{--t-status: var(--tui-status-negative)}tui-badge[data-appearance=success],[tuiBadge][data-appearance=success]{--t-status: var(--tui-status-positive)}tui-badge[data-appearance=warning],[tuiBadge][data-appearance=warning]{--t-status: var(--tui-status-warning)}tui-badge[data-appearance=info],[tuiBadge][data-appearance=info]{--t-status: var(--tui-status-info)}tui-badge[data-appearance=neutral],[tuiBadge][data-appearance=neutral]{--t-status: var(--tui-status-neutral)}tui-badge[tuiStatus][data-appearance=error]:before,[tuiBadge][tuiStatus][data-appearance=error]:before,tui-badge[tuiStatus][data-appearance=success]:before,[tuiBadge][tuiStatus][data-appearance=success]:before,tui-badge[tuiStatus][data-appearance=warning]:before,[tuiBadge][tuiStatus][data-appearance=warning]:before,tui-badge[tuiStatus][data-appearance=info]:before,[tuiBadge][tuiStatus][data-appearance=info]:before,tui-badge[tuiStatus][data-appearance=neutral]:before,[tuiBadge][tuiStatus][data-appearance=neutral]:before{content:\"\";display:block;margin:0}tui-badge[data-size=s],[tuiBadge][data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem}tui-badge[data-size=s][tuiStatus]:before,[tuiBadge][data-size=s][tuiStatus]:before{width:.25rem;height:.25rem;margin-inline-end:-.125rem}tui-badge[data-size=m],[tuiBadge][data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}tui-badge[data-size=xl],[tuiBadge][data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-font-text-m)}tui-badge[data-size=xl][tuiStatus]:before,[tuiBadge][data-size=xl][tuiStatus]:before{width:.5rem;height:.5rem;margin-inline-end:-.125rem}tui-badge[tuiAppearance][data-appearance=error],[tuiBadge][tuiAppearance][data-appearance=error],tui-badge[tuiAppearance][data-appearance=success],[tuiBadge][tuiAppearance][data-appearance=success],tui-badge[tuiAppearance][data-appearance=warning],[tuiBadge][tuiAppearance][data-appearance=warning],tui-badge[tuiAppearance][data-appearance=info],[tuiBadge][tuiAppearance][data-appearance=info],tui-badge[tuiAppearance][data-appearance=neutral],[tuiBadge][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]{padding:0;width:var(--t-size)}tui-icon[tuiBadge]{--t-margin: 0 !important;-webkit-mask:none;mask:none;height:var(--t-size);width:var(--t-size)}tui-icon[tuiBadge][data-size=s]:after{-webkit-mask-size:.625rem;mask-size:.625rem}tui-icon[tuiBadge][data-size=m]:after{-webkit-mask-size:.75rem;mask-size:.75rem}tui-icon[tuiBadge][data-size=l]:after,tui-icon[tuiBadge][data-size=xl]:after{-webkit-mask-size:1rem;mask-size:1rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
12
12
  }
13
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiBadgeStyles, decorators: [{
14
14
  type: Component,
15
15
  args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
16
16
  class: 'tui-badge',
17
- }, styles: ["tui-badge,[tuiBadge]{--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));border-radius:6rem;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);height:var(--t-size);min-width:var(--t-size);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;font:var(--tui-font-text-s)}tui-badge>img,[tuiBadge]>img,tui-badge>tui-svg,[tuiBadge]>tui-svg,tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge>tui-avatar,[tuiBadge]>tui-avatar,tui-badge>tui-badge,[tuiBadge]>tui-badge,tui-badge>[tuiBadge],[tuiBadge]>[tuiBadge],tui-badge>[tuiRadio],[tuiBadge]>[tuiRadio],tui-badge>[tuiSwitch],[tuiBadge]>[tuiSwitch],tui-badge>[tuiCheckbox],[tuiBadge]>[tuiCheckbox],tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{margin:var(--t-margin)}tui-badge[tuiStatus]:before,[tuiBadge][tuiStatus]:before{width:.375rem;height:.375rem;margin-inline-end:-.25rem}tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-badge[data-appearance=error],[tuiBadge][data-appearance=error]{--t-status: var(--tui-status-negative)}tui-badge[data-appearance=success],[tuiBadge][data-appearance=success]{--t-status: var(--tui-status-positive)}tui-badge[data-appearance=warning],[tuiBadge][data-appearance=warning]{--t-status: var(--tui-status-warning)}tui-badge[data-appearance=info],[tuiBadge][data-appearance=info]{--t-status: var(--tui-status-info)}tui-badge[data-appearance=neutral],[tuiBadge][data-appearance=neutral]{--t-status: var(--tui-status-neutral)}tui-badge[tuiStatus][data-appearance=error]:before,[tuiBadge][tuiStatus][data-appearance=error]:before,tui-badge[tuiStatus][data-appearance=success]:before,[tuiBadge][tuiStatus][data-appearance=success]:before,tui-badge[tuiStatus][data-appearance=warning]:before,[tuiBadge][tuiStatus][data-appearance=warning]:before,tui-badge[tuiStatus][data-appearance=info]:before,[tuiBadge][tuiStatus][data-appearance=info]:before,tui-badge[tuiStatus][data-appearance=neutral]:before,[tuiBadge][tuiStatus][data-appearance=neutral]:before{content:\"\";display:block;margin:0}tui-badge[data-size=s],[tuiBadge][data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem}tui-badge[data-size=s][tuiStatus]:before,[tuiBadge][data-size=s][tuiStatus]:before{width:.25rem;height:.25rem;margin-inline-end:-.125rem}tui-badge[data-size=m],[tuiBadge][data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}tui-badge[data-size=xl],[tuiBadge][data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-font-text-m)}tui-badge[data-size=xl][tuiStatus]:before,[tuiBadge][data-size=xl][tuiStatus]:before{width:.5rem;height:.5rem;margin-inline-end:-.125rem}tui-badge[tuiAppearance][data-appearance=error],[tuiBadge][tuiAppearance][data-appearance=error],tui-badge[tuiAppearance][data-appearance=success],[tuiBadge][tuiAppearance][data-appearance=success],tui-badge[tuiAppearance][data-appearance=warning],[tuiBadge][tuiAppearance][data-appearance=warning],tui-badge[tuiAppearance][data-appearance=info],[tuiBadge][tuiAppearance][data-appearance=info],tui-badge[tuiAppearance][data-appearance=neutral],[tuiBadge][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]{padding:0;width:var(--t-size)}tui-icon[tuiBadge]{--t-margin: 0 !important;-webkit-mask:none;mask:none;height:var(--t-size);width:var(--t-size)}tui-icon[tuiBadge][data-size=s]:after{-webkit-mask-size:.625rem;mask-size:.625rem}tui-icon[tuiBadge][data-size=m]:after{-webkit-mask-size:.75rem;mask-size:.75rem}tui-icon[tuiBadge][data-size=l]:after,tui-icon[tuiBadge][data-size=xl]:after{-webkit-mask-size:1rem;mask-size:1rem}\n"] }]
17
+ }, styles: ["tui-badge,[tuiBadge]{--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%;gap:calc(var(--t-gap, var(--t-0, 0rem)) - 2 * var(--t-margin, 0rem));border-radius:6rem;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);height:var(--t-size);min-width:var(--t-size);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;font:var(--tui-font-text-s)}tui-badge>img,[tuiBadge]>img,tui-badge>tui-svg,[tuiBadge]>tui-svg,tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge>tui-avatar,[tuiBadge]>tui-avatar,tui-badge>tui-badge,[tuiBadge]>tui-badge,tui-badge>[tuiBadge],[tuiBadge]>[tuiBadge],tui-badge>[tuiRadio],[tuiBadge]>[tuiRadio],tui-badge>[tuiSwitch],[tuiBadge]>[tuiSwitch],tui-badge>[tuiCheckbox],[tuiBadge]>[tuiCheckbox],tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{margin:var(--t-margin)}tui-badge[tuiStatus]:before,[tuiBadge][tuiStatus]:before{width:.375rem;height:.375rem;margin-inline-end:-.25rem}tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-badge[data-appearance=error],[tuiBadge][data-appearance=error]{--t-status: var(--tui-status-negative)}tui-badge[data-appearance=success],[tuiBadge][data-appearance=success]{--t-status: var(--tui-status-positive)}tui-badge[data-appearance=warning],[tuiBadge][data-appearance=warning]{--t-status: var(--tui-status-warning)}tui-badge[data-appearance=info],[tuiBadge][data-appearance=info]{--t-status: var(--tui-status-info)}tui-badge[data-appearance=neutral],[tuiBadge][data-appearance=neutral]{--t-status: var(--tui-status-neutral)}tui-badge[tuiStatus][data-appearance=error]:before,[tuiBadge][tuiStatus][data-appearance=error]:before,tui-badge[tuiStatus][data-appearance=success]:before,[tuiBadge][tuiStatus][data-appearance=success]:before,tui-badge[tuiStatus][data-appearance=warning]:before,[tuiBadge][tuiStatus][data-appearance=warning]:before,tui-badge[tuiStatus][data-appearance=info]:before,[tuiBadge][tuiStatus][data-appearance=info]:before,tui-badge[tuiStatus][data-appearance=neutral]:before,[tuiBadge][tuiStatus][data-appearance=neutral]:before{content:\"\";display:block;margin:0}tui-badge[data-size=s],[tuiBadge][data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem}tui-badge[data-size=s][tuiStatus]:before,[tuiBadge][data-size=s][tuiStatus]:before{width:.25rem;height:.25rem;margin-inline-end:-.125rem}tui-badge[data-size=m],[tuiBadge][data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}tui-badge[data-size=xl],[tuiBadge][data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-font-text-m)}tui-badge[data-size=xl][tuiStatus]:before,[tuiBadge][data-size=xl][tuiStatus]:before{width:.5rem;height:.5rem;margin-inline-end:-.125rem}tui-badge[tuiAppearance][data-appearance=error],[tuiBadge][tuiAppearance][data-appearance=error],tui-badge[tuiAppearance][data-appearance=success],[tuiBadge][tuiAppearance][data-appearance=success],tui-badge[tuiAppearance][data-appearance=warning],[tuiBadge][tuiAppearance][data-appearance=warning],tui-badge[tuiAppearance][data-appearance=info],[tuiBadge][tuiAppearance][data-appearance=info],tui-badge[tuiAppearance][data-appearance=neutral],[tuiBadge][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]{padding:0;width:var(--t-size)}tui-icon[tuiBadge]{--t-margin: 0 !important;-webkit-mask:none;mask:none;height:var(--t-size);width:var(--t-size)}tui-icon[tuiBadge][data-size=s]:after{-webkit-mask-size:.625rem;mask-size:.625rem}tui-icon[tuiBadge][data-size=m]:after{-webkit-mask-size:.75rem;mask-size:.75rem}tui-icon[tuiBadge][data-size=l]:after,tui-icon[tuiBadge][data-size=xl]:after{-webkit-mask-size:1rem;mask-size:1rem}\n"] }]
18
18
  }] });
19
19
  class TuiBadge {
20
20
  constructor() {
@@ -23,6 +23,7 @@ class TuiCalendarRange {
23
23
  this.previousValue = null;
24
24
  this.hoveredItem = null;
25
25
  this.capsMapper = TUI_DAY_CAPS_MAPPER;
26
+ this.availableRange = null;
26
27
  this.defaultViewedMonth = TuiMonth.currentLocal();
27
28
  this.disabledItemHandler = TUI_FALSE_HANDLER;
28
29
  this.markerHandler = null;
@@ -68,7 +69,9 @@ class TuiCalendarRange {
68
69
  }
69
70
  isItemActive(item) {
70
71
  const { activePeriod } = this;
71
- return (tuiIsString(item) && activePeriod === null) || activePeriod === item;
72
+ return ((tuiIsString(item) && activePeriod === null) ||
73
+ activePeriod === item ||
74
+ activePeriod?.toString() === item.toString());
72
75
  }
73
76
  onItemSelect(item) {
74
77
  if (!tuiIsString(item)) {
@@ -92,6 +95,7 @@ class TuiCalendarRange {
92
95
  else {
93
96
  this.updateValue(TuiDayRange.sort(this.value.from, day));
94
97
  }
98
+ this.availableRange = this.findAvailableRange();
95
99
  }
96
100
  updateValue(value) {
97
101
  this.value = value;
@@ -106,15 +110,47 @@ class TuiCalendarRange {
106
110
  calculateDisabledItemHandler(disabledItemHandler, value, minLength) {
107
111
  return (item) => {
108
112
  if (!value?.isSingleDay || !minLength) {
109
- return disabledItemHandler(item);
113
+ return this.isDisabledItem(disabledItemHandler, value, item);
110
114
  }
111
115
  const negativeMinLength = Object.fromEntries(Object.entries(minLength).map(([key, value]) => [key, -value]));
112
116
  const disabledBefore = value.from.append(negativeMinLength).append({ day: 1 });
113
117
  const disabledAfter = value.from.append(minLength).append({ day: -1 });
114
118
  const inDisabledRange = disabledBefore.dayBefore(item) && disabledAfter.dayAfter(item);
115
- return inDisabledRange || disabledItemHandler(item);
119
+ return (inDisabledRange || this.isDisabledItem(disabledItemHandler, value, item));
116
120
  };
117
121
  }
122
+ isDisabledItem(disabledItemHandler, value, item) {
123
+ return (disabledItemHandler(item) ||
124
+ (!!value?.isSingleDay && !this.availableRangeContainsItem(item)));
125
+ }
126
+ availableRangeContainsItem(item) {
127
+ if (this.availableRange === null) {
128
+ return true;
129
+ }
130
+ const { from, to } = this.availableRange;
131
+ return from.daySameOrBefore(item) && to.daySameOrAfter(item);
132
+ }
133
+ findAvailableRange() {
134
+ const { disabledItemHandler, value } = this;
135
+ if (!value?.isSingleDay || disabledItemHandler === TUI_FALSE_HANDLER) {
136
+ return null;
137
+ }
138
+ let from = value.from;
139
+ let to = value.from;
140
+ let leftShift = true;
141
+ let rightShift = true;
142
+ while (leftShift || rightShift) {
143
+ leftShift = !disabledItemHandler(from.append({ day: -1 }));
144
+ if (leftShift) {
145
+ from = from.append({ day: -1 });
146
+ }
147
+ rightShift = !disabledItemHandler(to.append({ day: 1 }));
148
+ if (rightShift) {
149
+ to = to.append({ day: 1 });
150
+ }
151
+ }
152
+ return new TuiDayRange(from, to);
153
+ }
118
154
  updateDefaultViewedMonth() {
119
155
  if (this.max && this.defaultViewedMonth.monthSameOrAfter(this.max)) {
120
156
  this.defaultViewedMonth = this.max.append({ month: -1 });
@@ -157,4 +193,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
157
193
  type: HostListener,
158
194
  args: ['document:keydown.capture', ['$event']]
159
195
  }], calculateDisabledItemHandler: [] } });
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItcmFuZ2UvY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItcmFuZ2UvY2FsZW5kYXItcmFuZ2UudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFekQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFMUQsT0FBTyxFQUNILGFBQWEsRUFDYixZQUFZLEVBQ1osV0FBVyxFQUNYLFFBQVEsR0FDWCxNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFekQsT0FBTyxFQUFDLFdBQVcsRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFFeEYsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNoRSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkQsT0FB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QUFJLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNqRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUN0QztJQUNMLENBQUM7K0dBeExRLGdCQUFnQjttR0FBaEIsZ0JBQWdCLDRiQzVDN0IsOHNFQXdEQSxzSkRqQmMsU0FBUyw4Q0FBRSxJQUFJLDZGQUFFLE9BQU8sOEdBQUUsYUFBYSxrREFBRSxXQUFXLG9oQkFBZSxPQUFPOztBQStKNUU7SUFEUCxPQUFPO29FQXFCUDtTQTlLUSxnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFSNUIsU0FBUztpQ0FDTSxJQUFJLFlBQ04sb0JBQW9CLFdBQ3JCLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsT0FBTyxDQUFDLG1CQUdwRSx1QkFBdUIsQ0FBQyxNQUFNOzBFQVd4QyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBSUMsbUJBQW1CO3NCQUR6QixLQUFLO2dCQUlDLGFBQWE7c0JBRG5CLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLEdBQUc7c0JBRFQsS0FBSztnQkFJQyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsU0FBUztzQkFEZixLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSVUsV0FBVztzQkFEMUIsTUFBTTtnQkFnQ0csS0FBSztzQkFEZCxZQUFZO3VCQUFDLDBCQUEwQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXdGNUMsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIE5nRm9yT2YsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgdHlwZSB7T25DaGFuZ2VzLCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1RVSV9GQUxTRV9IQU5ETEVSfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQgdHlwZSB7VHVpRGF5LCBUdWlEYXlMaWtlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RhdGUtdGltZSc7XG5pbXBvcnQge1xuICAgIFRVSV9GSVJTVF9EQVksXG4gICAgVFVJX0xBU1RfREFZLFxuICAgIFR1aURheVJhbmdlLFxuICAgIFR1aU1vbnRoLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RhdGUtdGltZSc7XG5pbXBvcnQge3R1aVdhdGNofSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7VHVpTWFwcGVyUGlwZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9waXBlcy9tYXBwZXInO1xuaW1wb3J0IHR5cGUge1R1aUJvb2xlYW5IYW5kbGVyLCBUdWlNYXBwZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlJc1N0cmluZywgdHVpTnVsbGFibGVTYW1lLCB0dWlQdXJlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHR5cGUge1R1aU1hcmtlckhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvY2FsZW5kYXInO1xuaW1wb3J0IHtUdWlDYWxlbmRhcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9jYWxlbmRhcic7XG5pbXBvcnQge1R1aURhdGFMaXN0fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RhdGEtbGlzdCc7XG5pbXBvcnQge1R1aUljb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQge1RVSV9DT01NT05fSUNPTlN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1RVSV9DQUxFTkRBUl9EQVRFX1NUUkVBTSwgVFVJX09USEVSX0RBVEVfVEVYVH0gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHR5cGUge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1RVSV9EQVlfQ0FQU19NQVBQRVJ9IGZyb20gJy4vZGF5LWNhcHMtbWFwcGVyJztcbmltcG9ydCB0eXBlIHtUdWlEYXlSYW5nZVBlcmlvZH0gZnJvbSAnLi9kYXktcmFuZ2UtcGVyaW9kJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1jYWxlbmRhci1yYW5nZScsXG4gICAgaW1wb3J0czogW0FzeW5jUGlwZSwgTmdJZiwgTmdGb3JPZiwgVHVpTWFwcGVyUGlwZSwgVHVpQ2FsZW5kYXIsIFR1aURhdGFMaXN0LCBUdWlJY29uXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXItcmFuZ2UudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2FsZW5kYXItcmFuZ2Uuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlDYWxlbmRhclJhbmdlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBvdGhlckRhdGVUZXh0JCA9IGluamVjdChUVUlfT1RIRVJfREFURV9URVhUKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaWNvbnMgPSBpbmplY3QoVFVJX0NPTU1PTl9JQ09OUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJvdGVjdGVkIHByZXZpb3VzVmFsdWU6IFR1aURheVJhbmdlIHwgbnVsbCA9IG51bGw7XG4gICAgcHJvdGVjdGVkIGhvdmVyZWRJdGVtOiBUdWlEYXkgfCBudWxsID0gbnVsbDtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2Fwc01hcHBlciA9IFRVSV9EQVlfQ0FQU19NQVBQRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkZWZhdWx0Vmlld2VkTW9udGg6IFR1aU1vbnRoID0gVHVpTW9udGguY3VycmVudExvY2FsKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkaXNhYmxlZEl0ZW1IYW5kbGVyOiBUdWlCb29sZWFuSGFuZGxlcjxUdWlEYXk+ID0gVFVJX0ZBTFNFX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtYXJrZXJIYW5kbGVyOiBUdWlNYXJrZXJIYW5kbGVyIHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpdGVtczogcmVhZG9ubHkgVHVpRGF5UmFuZ2VQZXJpb2RbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWluOiBUdWlEYXkgfCBudWxsID0gVFVJX0ZJUlNUX0RBWTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1heDogVHVpRGF5IHwgbnVsbCA9IFRVSV9MQVNUX0RBWTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWF4TGVuZ3RoOiBUdWlEYXlMaWtlIHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB2YWx1ZTogVHVpRGF5UmFuZ2UgfCBudWxsID0gbnVsbDtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VHVpRGF5UmFuZ2UgfCBudWxsPigpO1xuXG4gICAgcHVibGljIHNlbGVjdGVkQWN0aXZlUGVyaW9kOiBUdWlEYXlSYW5nZVBlcmlvZCB8IG51bGwgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGluamVjdDxPYnNlcnZhYmxlPFR1aURheVJhbmdlIHwgbnVsbD4+KFRVSV9DQUxFTkRBUl9EQVRFX1NUUkVBTSwge29wdGlvbmFsOiB0cnVlfSlcbiAgICAgICAgICAgID8ucGlwZSh0dWlXYXRjaCh0aGlzLmNkciksIHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVmYXVsdFZpZXdlZE1vbnRoID0gdGhpcy52YWx1ZT8uZnJvbSB8fCB0aGlzLmRlZmF1bHRWaWV3ZWRNb250aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy52YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVEZWZhdWx0Vmlld2VkTW9udGgoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgY2FsY3VsYXRlZERpc2FibGVkSXRlbUhhbmRsZXIoKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpRGF5PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhbGN1bGF0ZURpc2FibGVkSXRlbUhhbmRsZXIoXG4gICAgICAgICAgICB0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXIsXG4gICAgICAgICAgICB0aGlzLnZhbHVlLFxuICAgICAgICAgICAgdGhpcy5taW5MZW5ndGgsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5jYXB0dXJlJywgWyckZXZlbnQnXSlcbiAgICBwcm90ZWN0ZWQgb25Fc2MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGV2ZW50LmtleSAhPT0gJ0VzY2FwZScgfHwgIXRoaXMudmFsdWU/LmlzU2luZ2xlRGF5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMucHJldmlvdXNWYWx1ZTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbW9udGhPZmZzZXQ6IFR1aU1hcHBlcjxbVHVpTW9udGgsIG51bWJlcl0sIFR1aU1vbnRoPiA9IChcbiAgICAgICAgdmFsdWUsXG4gICAgICAgIG1vbnRoLFxuICAgICkgPT4gdmFsdWUuYXBwZW5kKHttb250aH0pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1hcHBlcjogVHVpTWFwcGVyPFxuICAgICAgICBbXG4gICAgICAgICAgICByZWFkb25seSBUdWlEYXlSYW5nZVBlcmlvZFtdLFxuICAgICAgICAgICAgVHVpRGF5IHwgbnVsbCxcbiAgICAgICAgICAgIFR1aURheSB8IG51bGwsXG4gICAgICAgICAgICBUdWlEYXlMaWtlIHwgbnVsbCxcbiAgICAgICAgICAgIHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsXG4gICAgICAgIF0sXG4gICAgICAgIFJlYWRvbmx5QXJyYXk8VHVpRGF5UmFuZ2VQZXJpb2QgfCBzdHJpbmc+XG4gICAgPiA9IChpdGVtcywgbWluLCBtYXgsIG1pbkxlbmd0aCwgb3RoZXJEYXRlVGV4dCkgPT4gW1xuICAgICAgICAuLi5pdGVtcy5maWx0ZXIoXG4gICAgICAgICAgICAoaXRlbSkgPT5cbiAgICAgICAgICAgICAgICAobWluTGVuZ3RoID09PSBudWxsIHx8XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ucmFuZ2UuZnJvbS5hcHBlbmQobWluTGVuZ3RoKS5kYXlTYW1lT3JCZWZvcmUoaXRlbS5yYW5nZS50bykpICYmXG4gICAgICAgICAgICAgICAgKG1pbiA9PT0gbnVsbCB8fCBpdGVtLnJhbmdlLnRvLmRheVNhbWVPckFmdGVyKG1pbikpICYmXG4gICAgICAgICAgICAgICAgKG1heCA9PT0gbnVsbCB8fCBpdGVtLnJhbmdlLmZyb20uZGF5U2FtZU9yQmVmb3JlKG1heCkpLFxuICAgICAgICApLFxuICAgICAgICBvdGhlckRhdGVUZXh0IHx8ICcnLFxuICAgIF07XG5cbiAgICBwcm90ZWN0ZWQgaXNJdGVtQWN0aXZlKGl0ZW06IFR1aURheVJhbmdlUGVyaW9kIHwgc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHthY3RpdmVQZXJpb2R9ID0gdGhpcztcblxuICAgICAgICByZXR1cm4gKHR1aUlzU3RyaW5nKGl0ZW0pICYmIGFjdGl2ZVBlcmlvZCA9PT0gbnVsbCkgfHwgYWN0aXZlUGVyaW9kID09PSBpdGVtO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkl0ZW1TZWxlY3QoaXRlbTogVHVpRGF5UmFuZ2VQZXJpb2QgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0dWlJc1N0cmluZyhpdGVtKSkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEFjdGl2ZVBlcmlvZCA9IGl0ZW07XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGl0ZW0ucmFuZ2UuZGF5TGltaXQodGhpcy5taW4sIHRoaXMubWF4KSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5hY3RpdmVQZXJpb2QgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRBY3RpdmVQZXJpb2QgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShudWxsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbk1vbnRoQ2hhbmdlKG1vbnRoOiBUdWlNb250aCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlZmF1bHRWaWV3ZWRNb250aCA9IG1vbnRoO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkRheUNsaWNrKGRheTogVHVpRGF5KTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IHRoaXMudmFsdWU7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRBY3RpdmVQZXJpb2QgPSBudWxsO1xuXG4gICAgICAgIGlmICghdGhpcy52YWx1ZT8uaXNTaW5nbGVEYXkpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBuZXcgVHVpRGF5UmFuZ2UoZGF5LCBkYXkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShUdWlEYXlSYW5nZS5zb3J0KHRoaXMudmFsdWUuZnJvbSwgZGF5KSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlVmFsdWUodmFsdWU6IFR1aURheVJhbmdlIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgYWN0aXZlUGVyaW9kKCk6IFR1aURheVJhbmdlUGVyaW9kIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkQWN0aXZlUGVyaW9kID8/XG4gICAgICAgICAgICAodGhpcy5pdGVtcy5maW5kKChpdGVtKSA9PlxuICAgICAgICAgICAgICAgIHR1aU51bGxhYmxlU2FtZTxUdWlEYXlSYW5nZT4oXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ucmFuZ2UsXG4gICAgICAgICAgICAgICAgICAgIChhLCBiKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgYS5mcm9tLmRheVNhbWUoYi5mcm9tLmRheUxpbWl0KHRoaXMubWluLCB0aGlzLm1heCkpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBhLnRvLmRheVNhbWUoYi50by5kYXlMaW1pdCh0aGlzLm1pbiwgdGhpcy5tYXgpKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSB8fFxuICAgICAgICAgICAgICAgIG51bGwpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGNhbGN1bGF0ZURpc2FibGVkSXRlbUhhbmRsZXIoXG4gICAgICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4sXG4gICAgICAgIHZhbHVlOiBUdWlEYXlSYW5nZSB8IG51bGwsXG4gICAgICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwsXG4gICAgKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpRGF5PiB7XG4gICAgICAgIHJldHVybiAoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKCF2YWx1ZT8uaXNTaW5nbGVEYXkgfHwgIW1pbkxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBkaXNhYmxlZEl0ZW1IYW5kbGVyKGl0ZW0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBuZWdhdGl2ZU1pbkxlbmd0aCA9IE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgICAgICAgICAgICBPYmplY3QuZW50cmllcyhtaW5MZW5ndGgpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBba2V5LCAtdmFsdWVdKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBkaXNhYmxlZEJlZm9yZSA9IHZhbHVlLmZyb20uYXBwZW5kKG5lZ2F0aXZlTWluTGVuZ3RoKS5hcHBlbmQoe2RheTogMX0pO1xuICAgICAgICAgICAgY29uc3QgZGlzYWJsZWRBZnRlciA9IHZhbHVlLmZyb20uYXBwZW5kKG1pbkxlbmd0aCkuYXBwZW5kKHtkYXk6IC0xfSk7XG4gICAgICAgICAgICBjb25zdCBpbkRpc2FibGVkUmFuZ2UgPVxuICAgICAgICAgICAgICAgIGRpc2FibGVkQmVmb3JlLmRheUJlZm9yZShpdGVtKSAmJiBkaXNhYmxlZEFmdGVyLmRheUFmdGVyKGl0ZW0pO1xuXG4gICAgICAgICAgICByZXR1cm4gaW5EaXNhYmxlZFJhbmdlIHx8IGRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVEZWZhdWx0Vmlld2VkTW9udGgoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1heCAmJiB0aGlzLmRlZmF1bHRWaWV3ZWRNb250aC5tb250aFNhbWVPckFmdGVyKHRoaXMubWF4KSkge1xuICAgICAgICAgICAgdGhpcy5kZWZhdWx0Vmlld2VkTW9udGggPSB0aGlzLm1heC5hcHBlbmQoe21vbnRoOiAtMX0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubWluICYmIHRoaXMuZGVmYXVsdFZpZXdlZE1vbnRoLm1vbnRoU2FtZU9yQmVmb3JlKHRoaXMubWluKSkge1xuICAgICAgICAgICAgdGhpcy5kZWZhdWx0Vmlld2VkTW9udGggPSB0aGlzLm1pbjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjx0dWktY2FsZW5kYXJcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNhbGVuZGFyLXJhbmdlX19jYWxlbmRhclwiXG4gICAgY2xhc3M9XCJ0LWNhbGVuZGFyXCJcbiAgICBbZGlzYWJsZWRJdGVtSGFuZGxlcl09XCJjYWxjdWxhdGVkRGlzYWJsZWRJdGVtSGFuZGxlclwiXG4gICAgW21hcmtlckhhbmRsZXJdPVwibWFya2VySGFuZGxlclwiXG4gICAgW21heF09XCJtYXggfCB0dWlNYXBwZXI6IGNhcHNNYXBwZXIgOiB2YWx1ZSA6IG1heExlbmd0aCA6IGZhbHNlXCJcbiAgICBbbWF4Vmlld2VkTW9udGhdPVwiaXRlbXMubGVuZ3RoID8gbnVsbCA6IChkZWZhdWx0Vmlld2VkTW9udGggfCB0dWlNYXBwZXI6IG1vbnRoT2Zmc2V0IDogLTEpXCJcbiAgICBbbWluXT1cIm1pbiB8IHR1aU1hcHBlcjogY2Fwc01hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogdHJ1ZVwiXG4gICAgW21vbnRoXT1cImRlZmF1bHRWaWV3ZWRNb250aFwiXG4gICAgW3Nob3dBZGphY2VudF09XCIhIWl0ZW1zLmxlbmd0aFwiXG4gICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICBbKGhvdmVyZWRJdGVtKV09XCJob3ZlcmVkSXRlbVwiXG4gICAgKGRheUNsaWNrKT1cIm9uRGF5Q2xpY2soJGV2ZW50KVwiXG4gICAgKG1vbnRoQ2hhbmdlKT1cIm9uTW9udGhDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKG1vdXNlZG93bi5wcmV2ZW50LnNpbGVudCk9XCIoMClcIlxuLz5cbjx0dWktY2FsZW5kYXJcbiAgICAqbmdJZj1cIiFpdGVtcy5sZW5ndGg7IGVsc2UgcHJlc2V0c1wiXG4gICAgW2Rpc2FibGVkSXRlbUhhbmRsZXJdPVwiY2FsY3VsYXRlZERpc2FibGVkSXRlbUhhbmRsZXJcIlxuICAgIFttYXJrZXJIYW5kbGVyXT1cIm1hcmtlckhhbmRsZXJcIlxuICAgIFttYXhdPVwibWF4IHwgdHVpTWFwcGVyOiBjYXBzTWFwcGVyIDogdmFsdWUgOiBtYXhMZW5ndGggOiBmYWxzZVwiXG4gICAgW21pbl09XCJtaW4gfCB0dWlNYXBwZXI6IGNhcHNNYXBwZXIgOiB2YWx1ZSA6IG1heExlbmd0aCA6IHRydWVcIlxuICAgIFttaW5WaWV3ZWRNb250aF09XCJkZWZhdWx0Vmlld2VkTW9udGggfCB0dWlNYXBwZXI6IG1vbnRoT2Zmc2V0IDogMVwiXG4gICAgW21vbnRoXT1cImRlZmF1bHRWaWV3ZWRNb250aCB8IHR1aU1hcHBlcjogbW9udGhPZmZzZXQgOiAxXCJcbiAgICBbc2hvd0FkamFjZW50XT1cImZhbHNlXCJcbiAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgIFsoaG92ZXJlZEl0ZW0pXT1cImhvdmVyZWRJdGVtXCJcbiAgICAoZGF5Q2xpY2spPVwib25EYXlDbGljaygkZXZlbnQpXCJcbiAgICAobW9udGhDaGFuZ2UpPVwib25Nb250aENoYW5nZSgkZXZlbnQuYXBwZW5kKHttb250aDogLTF9KSlcIlxuICAgIChtb3VzZWRvd24ucHJldmVudC5zaWxlbnQpPVwiKDApXCJcbi8+XG48bmctdGVtcGxhdGUgI3ByZXNldHM+XG4gICAgPHR1aS1kYXRhLWxpc3RcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1jYWxlbmRhci1yYW5nZV9fbWVudVwiXG4gICAgICAgIHJvbGU9XCJtZW51XCJcbiAgICAgICAgW3N0eWxlLmZsZXhdPVwiMVwiXG4gICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtcyB8IHR1aU1hcHBlcjogbWFwcGVyIDogbWluIDogbWF4IDogbWluTGVuZ3RoIDogKG90aGVyRGF0ZVRleHQkIHwgYXN5bmMpXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktY2FsZW5kYXItcmFuZ2VfX21lbnVfX2l0ZW1cIlxuICAgICAgICAgICAgcm9sZT1cIm1lbnVpdGVtcmFkaW9cIlxuICAgICAgICAgICAgdHVpT3B0aW9uXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWNoZWNrZWRdPVwiaXNJdGVtQWN0aXZlKGl0ZW0pXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1TZWxlY3QoaXRlbSlcIlxuICAgICAgICAgICAgKG1vdXNlZG93bi5wcmV2ZW50LnNpbGVudCk9XCIoMClcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyBpdGVtIH19XG4gICAgICAgICAgICA8dHVpLWljb25cbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzSXRlbUFjdGl2ZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1jYWxlbmRhci1yYW5nZV9fY2hlY2ttYXJrXCJcbiAgICAgICAgICAgICAgICBbaWNvbl09XCJpY29ucy5jaGVja1wiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmZvbnQtc2l6ZS5yZW1dPVwiMVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L3R1aS1kYXRhLWxpc3Q+XG48L25nLXRlbXBsYXRlPlxuIl19
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItcmFuZ2UvY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItcmFuZ2UvY2FsZW5kYXItcmFuZ2UudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFekQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFMUQsT0FBTyxFQUNILGFBQWEsRUFDYixZQUFZLEVBQ1osV0FBVyxFQUNYLFFBQVEsR0FDWCxNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFekQsT0FBTyxFQUFDLFdBQVcsRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFFeEYsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNoRSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkQsT0FB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T0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxtQkFHcEUsdUJBQXVCLENBQUMsTUFBTTswRUFZeEMsa0JBQWtCO3NCQUR4QixLQUFLO2dCQUlDLG1CQUFtQjtzQkFEekIsS0FBSztnQkFJQyxhQUFhO3NCQURuQixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFJQyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsR0FBRztzQkFEVCxLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlVLFdBQVc7c0JBRDFCLE1BQU07Z0JBZ0NHLEtBQUs7c0JBRGQsWUFBWTt1QkFBQywwQkFBMEIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkE4RjVDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXN5bmNQaXBlLCBOZ0Zvck9mLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge09uQ2hhbmdlcywgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtUVUlfRkFMU0VfSEFORExFUn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHR5cGUge1R1aURheSwgVHVpRGF5TGlrZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kYXRlLXRpbWUnO1xuaW1wb3J0IHtcbiAgICBUVUlfRklSU1RfREFZLFxuICAgIFRVSV9MQVNUX0RBWSxcbiAgICBUdWlEYXlSYW5nZSxcbiAgICBUdWlNb250aCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kYXRlLXRpbWUnO1xuaW1wb3J0IHt0dWlXYXRjaH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge1R1aU1hcHBlclBpcGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvcGlwZXMvbWFwcGVyJztcbmltcG9ydCB0eXBlIHtUdWlCb29sZWFuSGFuZGxlciwgVHVpTWFwcGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpSXNTdHJpbmcsIHR1aU51bGxhYmxlU2FtZSwgdHVpUHVyZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB0eXBlIHtUdWlNYXJrZXJIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2NhbGVuZGFyJztcbmltcG9ydCB7VHVpQ2FsZW5kYXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvY2FsZW5kYXInO1xuaW1wb3J0IHtUdWlEYXRhTGlzdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUdWlJY29ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHtUVUlfQ09NTU9OX0lDT05TfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtUVUlfQ0FMRU5EQVJfREFURV9TVFJFQU0sIFRVSV9PVEhFUl9EQVRFX1RFWFR9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfREFZX0NBUFNfTUFQUEVSfSBmcm9tICcuL2RheS1jYXBzLW1hcHBlcic7XG5pbXBvcnQgdHlwZSB7VHVpRGF5UmFuZ2VQZXJpb2R9IGZyb20gJy4vZGF5LXJhbmdlLXBlcmlvZCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktY2FsZW5kYXItcmFuZ2UnLFxuICAgIGltcG9ydHM6IFtBc3luY1BpcGUsIE5nSWYsIE5nRm9yT2YsIFR1aU1hcHBlclBpcGUsIFR1aUNhbGVuZGFyLCBUdWlEYXRhTGlzdCwgVHVpSWNvbl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLXJhbmdlLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLXJhbmdlLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQ2FsZW5kYXJSYW5nZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3RoZXJEYXRlVGV4dCQgPSBpbmplY3QoVFVJX09USEVSX0RBVEVfVEVYVCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9DT01NT05fSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIHByb3RlY3RlZCBwcmV2aW91c1ZhbHVlOiBUdWlEYXlSYW5nZSB8IG51bGwgPSBudWxsO1xuICAgIHByb3RlY3RlZCBob3ZlcmVkSXRlbTogVHVpRGF5IHwgbnVsbCA9IG51bGw7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNhcHNNYXBwZXIgPSBUVUlfREFZX0NBUFNfTUFQUEVSO1xuICAgIHByb3RlY3RlZCBhdmFpbGFibGVSYW5nZTogVHVpRGF5UmFuZ2UgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRlZmF1bHRWaWV3ZWRNb250aDogVHVpTW9udGggPSBUdWlNb250aC5jdXJyZW50TG9jYWwoKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4gPSBUVUlfRkFMU0VfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1hcmtlckhhbmRsZXI6IFR1aU1hcmtlckhhbmRsZXIgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGl0ZW1zOiByZWFkb25seSBUdWlEYXlSYW5nZVBlcmlvZFtdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtaW46IFR1aURheSB8IG51bGwgPSBUVUlfRklSU1RfREFZO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWF4OiBUdWlEYXkgfCBudWxsID0gVFVJX0xBU1RfREFZO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWluTGVuZ3RoOiBUdWlEYXlMaWtlIHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtYXhMZW5ndGg6IFR1aURheUxpa2UgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHZhbHVlOiBUdWlEYXlSYW5nZSB8IG51bGwgPSBudWxsO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlEYXlSYW5nZSB8IG51bGw+KCk7XG5cbiAgICBwdWJsaWMgc2VsZWN0ZWRBY3RpdmVQZXJpb2Q6IFR1aURheVJhbmdlUGVyaW9kIHwgbnVsbCA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgaW5qZWN0PE9ic2VydmFibGU8VHVpRGF5UmFuZ2UgfCBudWxsPj4oVFVJX0NBTEVOREFSX0RBVEVfU1RSRUFNLCB7b3B0aW9uYWw6IHRydWV9KVxuICAgICAgICAgICAgPy5waXBlKHR1aVdhdGNoKHRoaXMuY2RyKSwgdGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0Vmlld2VkTW9udGggPSB0aGlzLnZhbHVlPy5mcm9tIHx8IHRoaXMuZGVmYXVsdFZpZXdlZE1vbnRoO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZURlZmF1bHRWaWV3ZWRNb250aCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBjYWxjdWxhdGVkRGlzYWJsZWRJdGVtSGFuZGxlcigpOiBUdWlCb29sZWFuSGFuZGxlcjxUdWlEYXk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlRGlzYWJsZWRJdGVtSGFuZGxlcihcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZWRJdGVtSGFuZGxlcixcbiAgICAgICAgICAgIHRoaXMudmFsdWUsXG4gICAgICAgICAgICB0aGlzLm1pbkxlbmd0aCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmNhcHR1cmUnLCBbJyRldmVudCddKVxuICAgIHByb3RlY3RlZCBvbkVzYyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoZXZlbnQua2V5ICE9PSAnRXNjYXBlJyB8fCAhdGhpcy52YWx1ZT8uaXNTaW5nbGVEYXkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5wcmV2aW91c1ZhbHVlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCByZWFkb25seSBtb250aE9mZnNldDogVHVpTWFwcGVyPFtUdWlNb250aCwgbnVtYmVyXSwgVHVpTW9udGg+ID0gKFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgbW9udGgsXG4gICAgKSA9PiB2YWx1ZS5hcHBlbmQoe21vbnRofSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWFwcGVyOiBUdWlNYXBwZXI8XG4gICAgICAgIFtcbiAgICAgICAgICAgIHJlYWRvbmx5IFR1aURheVJhbmdlUGVyaW9kW10sXG4gICAgICAgICAgICBUdWlEYXkgfCBudWxsLFxuICAgICAgICAgICAgVHVpRGF5IHwgbnVsbCxcbiAgICAgICAgICAgIFR1aURheUxpa2UgfCBudWxsLFxuICAgICAgICAgICAgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgICAgICAgXSxcbiAgICAgICAgUmVhZG9ubHlBcnJheTxUdWlEYXlSYW5nZVBlcmlvZCB8IHN0cmluZz5cbiAgICA+ID0gKGl0ZW1zLCBtaW4sIG1heCwgbWluTGVuZ3RoLCBvdGhlckRhdGVUZXh0KSA9PiBbXG4gICAgICAgIC4uLml0ZW1zLmZpbHRlcihcbiAgICAgICAgICAgIChpdGVtKSA9PlxuICAgICAgICAgICAgICAgIChtaW5MZW5ndGggPT09IG51bGwgfHxcbiAgICAgICAgICAgICAgICAgICAgaXRlbS5yYW5nZS5mcm9tLmFwcGVuZChtaW5MZW5ndGgpLmRheVNhbWVPckJlZm9yZShpdGVtLnJhbmdlLnRvKSkgJiZcbiAgICAgICAgICAgICAgICAobWluID09PSBudWxsIHx8IGl0ZW0ucmFuZ2UudG8uZGF5U2FtZU9yQWZ0ZXIobWluKSkgJiZcbiAgICAgICAgICAgICAgICAobWF4ID09PSBudWxsIHx8IGl0ZW0ucmFuZ2UuZnJvbS5kYXlTYW1lT3JCZWZvcmUobWF4KSksXG4gICAgICAgICksXG4gICAgICAgIG90aGVyRGF0ZVRleHQgfHwgJycsXG4gICAgXTtcblxuICAgIHByb3RlY3RlZCBpc0l0ZW1BY3RpdmUoaXRlbTogVHVpRGF5UmFuZ2VQZXJpb2QgfCBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge2FjdGl2ZVBlcmlvZH0gPSB0aGlzO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAodHVpSXNTdHJpbmcoaXRlbSkgJiYgYWN0aXZlUGVyaW9kID09PSBudWxsKSB8fFxuICAgICAgICAgICAgYWN0aXZlUGVyaW9kID09PSBpdGVtIHx8XG4gICAgICAgICAgICBhY3RpdmVQZXJpb2Q/LnRvU3RyaW5nKCkgPT09IGl0ZW0udG9TdHJpbmcoKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkl0ZW1TZWxlY3QoaXRlbTogVHVpRGF5UmFuZ2VQZXJpb2QgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0dWlJc1N0cmluZyhpdGVtKSkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEFjdGl2ZVBlcmlvZCA9IGl0ZW07XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGl0ZW0ucmFuZ2UuZGF5TGltaXQodGhpcy5taW4sIHRoaXMubWF4KSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5hY3RpdmVQZXJpb2QgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRBY3RpdmVQZXJpb2QgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShudWxsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbk1vbnRoQ2hhbmdlKG1vbnRoOiBUdWlNb250aCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlZmF1bHRWaWV3ZWRNb250aCA9IG1vbnRoO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkRheUNsaWNrKGRheTogVHVpRGF5KTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IHRoaXMudmFsdWU7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRBY3RpdmVQZXJpb2QgPSBudWxsO1xuXG4gICAgICAgIGlmICghdGhpcy52YWx1ZT8uaXNTaW5nbGVEYXkpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBuZXcgVHVpRGF5UmFuZ2UoZGF5LCBkYXkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShUdWlEYXlSYW5nZS5zb3J0KHRoaXMudmFsdWUuZnJvbSwgZGF5KSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmF2YWlsYWJsZVJhbmdlID0gdGhpcy5maW5kQXZhaWxhYmxlUmFuZ2UoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlVmFsdWUodmFsdWU6IFR1aURheVJhbmdlIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgYWN0aXZlUGVyaW9kKCk6IFR1aURheVJhbmdlUGVyaW9kIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkQWN0aXZlUGVyaW9kID8/XG4gICAgICAgICAgICAodGhpcy5pdGVtcy5maW5kKChpdGVtKSA9PlxuICAgICAgICAgICAgICAgIHR1aU51bGxhYmxlU2FtZTxUdWlEYXlSYW5nZT4oXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ucmFuZ2UsXG4gICAgICAgICAgICAgICAgICAgIChhLCBiKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgYS5mcm9tLmRheVNhbWUoYi5mcm9tLmRheUxpbWl0KHRoaXMubWluLCB0aGlzLm1heCkpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBhLnRvLmRheVNhbWUoYi50by5kYXlMaW1pdCh0aGlzLm1pbiwgdGhpcy5tYXgpKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSB8fFxuICAgICAgICAgICAgICAgIG51bGwpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGNhbGN1bGF0ZURpc2FibGVkSXRlbUhhbmRsZXIoXG4gICAgICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4sXG4gICAgICAgIHZhbHVlOiBUdWlEYXlSYW5nZSB8IG51bGwsXG4gICAgICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwsXG4gICAgKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpRGF5PiB7XG4gICAgICAgIHJldHVybiAoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKCF2YWx1ZT8uaXNTaW5nbGVEYXkgfHwgIW1pbkxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmlzRGlzYWJsZWRJdGVtKGRpc2FibGVkSXRlbUhhbmRsZXIsIHZhbHVlLCBpdGVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgbmVnYXRpdmVNaW5MZW5ndGggPSBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMobWluTGVuZ3RoKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4gW2tleSwgLXZhbHVlXSksXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgZGlzYWJsZWRCZWZvcmUgPSB2YWx1ZS5mcm9tLmFwcGVuZChuZWdhdGl2ZU1pbkxlbmd0aCkuYXBwZW5kKHtkYXk6IDF9KTtcbiAgICAgICAgICAgIGNvbnN0IGRpc2FibGVkQWZ0ZXIgPSB2YWx1ZS5mcm9tLmFwcGVuZChtaW5MZW5ndGgpLmFwcGVuZCh7ZGF5OiAtMX0pO1xuICAgICAgICAgICAgY29uc3QgaW5EaXNhYmxlZFJhbmdlID1cbiAgICAgICAgICAgICAgICBkaXNhYmxlZEJlZm9yZS5kYXlCZWZvcmUoaXRlbSkgJiYgZGlzYWJsZWRBZnRlci5kYXlBZnRlcihpdGVtKTtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICBpbkRpc2FibGVkUmFuZ2UgfHwgdGhpcy5pc0Rpc2FibGVkSXRlbShkaXNhYmxlZEl0ZW1IYW5kbGVyLCB2YWx1ZSwgaXRlbSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0Rpc2FibGVkSXRlbShcbiAgICAgICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8VHVpRGF5PixcbiAgICAgICAgdmFsdWU6IFR1aURheVJhbmdlIHwgbnVsbCxcbiAgICAgICAgaXRlbTogVHVpRGF5LFxuICAgICk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKSB8fFxuICAgICAgICAgICAgKCEhdmFsdWU/LmlzU2luZ2xlRGF5ICYmICF0aGlzLmF2YWlsYWJsZVJhbmdlQ29udGFpbnNJdGVtKGl0ZW0pKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXZhaWxhYmxlUmFuZ2VDb250YWluc0l0ZW0oaXRlbTogVHVpRGF5KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICh0aGlzLmF2YWlsYWJsZVJhbmdlID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtmcm9tLCB0b30gPSB0aGlzLmF2YWlsYWJsZVJhbmdlO1xuXG4gICAgICAgIHJldHVybiBmcm9tLmRheVNhbWVPckJlZm9yZShpdGVtKSAmJiB0by5kYXlTYW1lT3JBZnRlcihpdGVtKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbmRBdmFpbGFibGVSYW5nZSgpOiBUdWlEYXlSYW5nZSB8IG51bGwge1xuICAgICAgICBjb25zdCB7ZGlzYWJsZWRJdGVtSGFuZGxlciwgdmFsdWV9ID0gdGhpcztcblxuICAgICAgICBpZiAoIXZhbHVlPy5pc1NpbmdsZURheSB8fCBkaXNhYmxlZEl0ZW1IYW5kbGVyID09PSBUVUlfRkFMU0VfSEFORExFUikge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgZnJvbSA9IHZhbHVlLmZyb207XG4gICAgICAgIGxldCB0byA9IHZhbHVlLmZyb207XG5cbiAgICAgICAgbGV0IGxlZnRTaGlmdCA9IHRydWU7XG4gICAgICAgIGxldCByaWdodFNoaWZ0ID0gdHJ1ZTtcblxuICAgICAgICB3aGlsZSAobGVmdFNoaWZ0IHx8IHJpZ2h0U2hpZnQpIHtcbiAgICAgICAgICAgIGxlZnRTaGlmdCA9ICFkaXNhYmxlZEl0ZW1IYW5kbGVyKGZyb20uYXBwZW5kKHtkYXk6IC0xfSkpO1xuXG4gICAgICAgICAgICBpZiAobGVmdFNoaWZ0KSB7XG4gICAgICAgICAgICAgICAgZnJvbSA9IGZyb20uYXBwZW5kKHtkYXk6IC0xfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJpZ2h0U2hpZnQgPSAhZGlzYWJsZWRJdGVtSGFuZGxlcih0by5hcHBlbmQoe2RheTogMX0pKTtcblxuICAgICAgICAgICAgaWYgKHJpZ2h0U2hpZnQpIHtcbiAgICAgICAgICAgICAgICB0byA9IHRvLmFwcGVuZCh7ZGF5OiAxfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbmV3IFR1aURheVJhbmdlKGZyb20sIHRvKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZURlZmF1bHRWaWV3ZWRNb250aCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubWF4ICYmIHRoaXMuZGVmYXVsdFZpZXdlZE1vbnRoLm1vbnRoU2FtZU9yQWZ0ZXIodGhpcy5tYXgpKSB7XG4gICAgICAgICAgICB0aGlzLmRlZmF1bHRWaWV3ZWRNb250aCA9IHRoaXMubWF4LmFwcGVuZCh7bW9udGg6IC0xfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5taW4gJiYgdGhpcy5kZWZhdWx0Vmlld2VkTW9udGgubW9udGhTYW1lT3JCZWZvcmUodGhpcy5taW4pKSB7XG4gICAgICAgICAgICB0aGlzLmRlZmF1bHRWaWV3ZWRNb250aCA9IHRoaXMubWluO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPHR1aS1jYWxlbmRhclxuICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktY2FsZW5kYXItcmFuZ2VfX2NhbGVuZGFyXCJcbiAgICBjbGFzcz1cInQtY2FsZW5kYXJcIlxuICAgIFtkaXNhYmxlZEl0ZW1IYW5kbGVyXT1cImNhbGN1bGF0ZWREaXNhYmxlZEl0ZW1IYW5kbGVyXCJcbiAgICBbbWFya2VySGFuZGxlcl09XCJtYXJrZXJIYW5kbGVyXCJcbiAgICBbbWF4XT1cIm1heCB8IHR1aU1hcHBlcjogY2Fwc01hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogZmFsc2VcIlxuICAgIFttYXhWaWV3ZWRNb250aF09XCJpdGVtcy5sZW5ndGggPyBudWxsIDogKGRlZmF1bHRWaWV3ZWRNb250aCB8IHR1aU1hcHBlcjogbW9udGhPZmZzZXQgOiAtMSlcIlxuICAgIFttaW5dPVwibWluIHwgdHVpTWFwcGVyOiBjYXBzTWFwcGVyIDogdmFsdWUgOiBtYXhMZW5ndGggOiB0cnVlXCJcbiAgICBbbW9udGhdPVwiZGVmYXVsdFZpZXdlZE1vbnRoXCJcbiAgICBbc2hvd0FkamFjZW50XT1cIiEhaXRlbXMubGVuZ3RoXCJcbiAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgIFsoaG92ZXJlZEl0ZW0pXT1cImhvdmVyZWRJdGVtXCJcbiAgICAoZGF5Q2xpY2spPVwib25EYXlDbGljaygkZXZlbnQpXCJcbiAgICAobW9udGhDaGFuZ2UpPVwib25Nb250aENoYW5nZSgkZXZlbnQpXCJcbiAgICAobW91c2Vkb3duLnByZXZlbnQuc2lsZW50KT1cIigwKVwiXG4vPlxuPHR1aS1jYWxlbmRhclxuICAgICpuZ0lmPVwiIWl0ZW1zLmxlbmd0aDsgZWxzZSBwcmVzZXRzXCJcbiAgICBbZGlzYWJsZWRJdGVtSGFuZGxlcl09XCJjYWxjdWxhdGVkRGlzYWJsZWRJdGVtSGFuZGxlclwiXG4gICAgW21hcmtlckhhbmRsZXJdPVwibWFya2VySGFuZGxlclwiXG4gICAgW21heF09XCJtYXggfCB0dWlNYXBwZXI6IGNhcHNNYXBwZXIgOiB2YWx1ZSA6IG1heExlbmd0aCA6IGZhbHNlXCJcbiAgICBbbWluXT1cIm1pbiB8IHR1aU1hcHBlcjogY2Fwc01hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogdHJ1ZVwiXG4gICAgW21pblZpZXdlZE1vbnRoXT1cImRlZmF1bHRWaWV3ZWRNb250aCB8IHR1aU1hcHBlcjogbW9udGhPZmZzZXQgOiAxXCJcbiAgICBbbW9udGhdPVwiZGVmYXVsdFZpZXdlZE1vbnRoIHwgdHVpTWFwcGVyOiBtb250aE9mZnNldCA6IDFcIlxuICAgIFtzaG93QWRqYWNlbnRdPVwiZmFsc2VcIlxuICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgWyhob3ZlcmVkSXRlbSldPVwiaG92ZXJlZEl0ZW1cIlxuICAgIChkYXlDbGljayk9XCJvbkRheUNsaWNrKCRldmVudClcIlxuICAgIChtb250aENoYW5nZSk9XCJvbk1vbnRoQ2hhbmdlKCRldmVudC5hcHBlbmQoe21vbnRoOiAtMX0pKVwiXG4gICAgKG1vdXNlZG93bi5wcmV2ZW50LnNpbGVudCk9XCIoMClcIlxuLz5cbjxuZy10ZW1wbGF0ZSAjcHJlc2V0cz5cbiAgICA8dHVpLWRhdGEtbGlzdFxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNhbGVuZGFyLXJhbmdlX19tZW51XCJcbiAgICAgICAgcm9sZT1cIm1lbnVcIlxuICAgICAgICBbc3R5bGUuZmxleF09XCIxXCJcbiAgICA+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zIHwgdHVpTWFwcGVyOiBtYXBwZXIgOiBtaW4gOiBtYXggOiBtaW5MZW5ndGggOiAob3RoZXJEYXRlVGV4dCQgfCBhc3luYylcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1jYWxlbmRhci1yYW5nZV9fbWVudV9faXRlbVwiXG4gICAgICAgICAgICByb2xlPVwibWVudWl0ZW1yYWRpb1wiXG4gICAgICAgICAgICB0dWlPcHRpb25cbiAgICAgICAgICAgIFthdHRyLmFyaWEtY2hlY2tlZF09XCJpc0l0ZW1BY3RpdmUoaXRlbSlcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbVNlbGVjdChpdGVtKVwiXG4gICAgICAgICAgICAobW91c2Vkb3duLnByZXZlbnQuc2lsZW50KT1cIigwKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IGl0ZW0gfX1cbiAgICAgICAgICAgIDx0dWktaWNvblxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNJdGVtQWN0aXZlKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNhbGVuZGFyLXJhbmdlX19jaGVja21hcmtcIlxuICAgICAgICAgICAgICAgIFtpY29uXT1cImljb25zLmNoZWNrXCJcbiAgICAgICAgICAgICAgICBbc3R5bGUuZm9udC1zaXplLnJlbV09XCIxXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvdHVpLWRhdGEtbGlzdD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -12,13 +12,13 @@ import * as i1 from "@taiga-ui/core/directives/appearance";
12
12
  import * as i2 from "@taiga-ui/core/directives/icons";
13
13
  class TuiChipStyles {
14
14
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiChipStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiChipStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-chip" }, ngImport: i0, template: '', isInline: true, styles: ["tui-chip,[tuiChip]{--t-gap: .125rem;--t-margin: -.125rem;--t-icon-size: 1rem;--t-padding: 0 .625rem;--t-size: var(--tui-height-s);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));font:var(--tui-font-text-s);border-radius:var(--tui-radius-m);padding:var(--t-padding);height:var(--t-size);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}tui-chip>img,[tuiChip]>img,tui-chip>tui-svg,[tuiChip]>tui-svg,tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip>tui-avatar,[tuiChip]>tui-avatar,tui-chip>tui-badge,[tuiChip]>tui-badge,tui-chip>[tuiBadge],[tuiChip]>[tuiBadge],tui-chip>[tuiRadio],[tuiChip]>[tuiRadio],tui-chip>[tuiSwitch],[tuiChip]>[tuiSwitch],tui-chip>[tuiCheckbox],[tuiChip]>[tuiCheckbox],tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{margin:var(--t-margin)}tui-chip:-webkit-any(a,button,select,textarea,input,label),[tuiChip]:-webkit-any(a,button,select,textarea,input,label){cursor:pointer}tui-chip:-moz-any(a,button,select,textarea,input,label),[tuiChip]:-moz-any(a,button,select,textarea,input,label){cursor:pointer}tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-chip>[tuiIconButton],[tuiChip]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=xxs],[tuiChip][data-size=xxs]{--t-gap: 0rem;--t-padding: 0 .25rem;--t-size: 1rem;--t-icon-size: .75rem;font:var(--tui-font-text-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xxs]>[tuiIconButton],[tuiChip][data-size=xxs]>[tuiIconButton]{margin:-.5rem;transform:scale(.75)}tui-chip[data-size=xs],[tuiChip][data-size=xs]{--t-padding: 0 .375rem;--t-size: 1.25rem;border-radius:var(--tui-radius-xs)}tui-chip[data-size=xs]>[tuiIconButton],[tuiChip][data-size=xs]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=m],[tuiChip][data-size=m]{--t-margin: -.375rem;--t-icon-size: 1.5rem;--t-padding: 0 1rem;--t-size: var(--tui-height-m);font:var(--tui-font-text-m)}tui-chip[data-size=m]>[tuiIconButton],[tuiChip][data-size=m]>[tuiIconButton]{margin:-.75rem}tui-chip>img,[tuiChip]>img,tui-chip tui-avatar,[tuiChip] tui-avatar{width:1.5rem;margin-inline-start:-.375rem}tui-chip>input[tuiChip],[tuiChip]>input[tuiChip]{position:absolute;top:0;left:0;width:100%;height:100%;margin:0}tui-chip[tuiAppearance][data-appearance=error],[tuiChip][tuiAppearance][data-appearance=error],tui-chip[tuiAppearance][data-appearance=success],[tuiChip][tuiAppearance][data-appearance=success],tui-chip[tuiAppearance][data-appearance=warning],[tuiChip][tuiAppearance][data-appearance=warning],tui-chip[tuiAppearance][data-appearance=info],[tuiChip][tuiAppearance][data-appearance=info],tui-chip[tuiAppearance][data-appearance=neutral],[tuiChip][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
15
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiChipStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-chip" }, ngImport: i0, template: '', isInline: true, styles: ["tui-chip,[tuiChip]{--t-gap: .125rem;--t-margin: -.125rem;--t-icon-size: 1rem;--t-padding: 0 .625rem;--t-size: var(--tui-height-s);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%;gap:calc(var(--t-gap, var(--t-0, 0rem)) - 2 * var(--t-margin, 0rem));font:var(--tui-font-text-s);border-radius:var(--tui-radius-m);padding:var(--t-padding);height:var(--t-size);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}tui-chip>img,[tuiChip]>img,tui-chip>tui-svg,[tuiChip]>tui-svg,tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip>tui-avatar,[tuiChip]>tui-avatar,tui-chip>tui-badge,[tuiChip]>tui-badge,tui-chip>[tuiBadge],[tuiChip]>[tuiBadge],tui-chip>[tuiRadio],[tuiChip]>[tuiRadio],tui-chip>[tuiSwitch],[tuiChip]>[tuiSwitch],tui-chip>[tuiCheckbox],[tuiChip]>[tuiCheckbox],tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{margin:var(--t-margin)}tui-chip:-webkit-any(a,button,select,textarea,input,label),[tuiChip]:-webkit-any(a,button,select,textarea,input,label){cursor:pointer}tui-chip:-moz-any(a,button,select,textarea,input,label),[tuiChip]:-moz-any(a,button,select,textarea,input,label){cursor:pointer}tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-chip>[tuiIconButton],[tuiChip]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=xxs],[tuiChip][data-size=xxs]{--t-gap: var(--t-0, 0rem);--t-padding: 0 .25rem;--t-size: 1rem;--t-icon-size: .75rem;font:var(--tui-font-text-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xxs]>[tuiIconButton],[tuiChip][data-size=xxs]>[tuiIconButton]{margin:-.5rem;transform:scale(.75)}tui-chip[data-size=xs],[tuiChip][data-size=xs]{--t-padding: 0 .375rem;--t-size: 1.25rem;border-radius:var(--tui-radius-xs)}tui-chip[data-size=xs]>[tuiIconButton],[tuiChip][data-size=xs]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=m],[tuiChip][data-size=m]{--t-margin: -.375rem;--t-icon-size: 1.5rem;--t-padding: 0 1rem;--t-size: var(--tui-height-m);font:var(--tui-font-text-m)}tui-chip[data-size=m]>[tuiIconButton],[tuiChip][data-size=m]>[tuiIconButton]{margin:-.75rem}tui-chip>img,[tuiChip]>img,tui-chip tui-avatar,[tuiChip] tui-avatar{width:1.5rem;margin-inline-start:-.375rem}tui-chip>input[tuiChip],[tuiChip]>input[tuiChip]{position:absolute;top:0;left:0;width:100%;height:100%;margin:0}tui-chip[tuiAppearance][data-appearance=error],[tuiChip][tuiAppearance][data-appearance=error],tui-chip[tuiAppearance][data-appearance=success],[tuiChip][tuiAppearance][data-appearance=success],tui-chip[tuiAppearance][data-appearance=warning],[tuiChip][tuiAppearance][data-appearance=warning],tui-chip[tuiAppearance][data-appearance=info],[tuiChip][tuiAppearance][data-appearance=info],tui-chip[tuiAppearance][data-appearance=neutral],[tuiChip][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
16
16
  }
17
17
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiChipStyles, decorators: [{
18
18
  type: Component,
19
19
  args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
20
20
  class: 'tui-chip',
21
- }, styles: ["tui-chip,[tuiChip]{--t-gap: .125rem;--t-margin: -.125rem;--t-icon-size: 1rem;--t-padding: 0 .625rem;--t-size: var(--tui-height-s);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));font:var(--tui-font-text-s);border-radius:var(--tui-radius-m);padding:var(--t-padding);height:var(--t-size);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}tui-chip>img,[tuiChip]>img,tui-chip>tui-svg,[tuiChip]>tui-svg,tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip>tui-avatar,[tuiChip]>tui-avatar,tui-chip>tui-badge,[tuiChip]>tui-badge,tui-chip>[tuiBadge],[tuiChip]>[tuiBadge],tui-chip>[tuiRadio],[tuiChip]>[tuiRadio],tui-chip>[tuiSwitch],[tuiChip]>[tuiSwitch],tui-chip>[tuiCheckbox],[tuiChip]>[tuiCheckbox],tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{margin:var(--t-margin)}tui-chip:-webkit-any(a,button,select,textarea,input,label),[tuiChip]:-webkit-any(a,button,select,textarea,input,label){cursor:pointer}tui-chip:-moz-any(a,button,select,textarea,input,label),[tuiChip]:-moz-any(a,button,select,textarea,input,label){cursor:pointer}tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-chip>[tuiIconButton],[tuiChip]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=xxs],[tuiChip][data-size=xxs]{--t-gap: 0rem;--t-padding: 0 .25rem;--t-size: 1rem;--t-icon-size: .75rem;font:var(--tui-font-text-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xxs]>[tuiIconButton],[tuiChip][data-size=xxs]>[tuiIconButton]{margin:-.5rem;transform:scale(.75)}tui-chip[data-size=xs],[tuiChip][data-size=xs]{--t-padding: 0 .375rem;--t-size: 1.25rem;border-radius:var(--tui-radius-xs)}tui-chip[data-size=xs]>[tuiIconButton],[tuiChip][data-size=xs]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=m],[tuiChip][data-size=m]{--t-margin: -.375rem;--t-icon-size: 1.5rem;--t-padding: 0 1rem;--t-size: var(--tui-height-m);font:var(--tui-font-text-m)}tui-chip[data-size=m]>[tuiIconButton],[tuiChip][data-size=m]>[tuiIconButton]{margin:-.75rem}tui-chip>img,[tuiChip]>img,tui-chip tui-avatar,[tuiChip] tui-avatar{width:1.5rem;margin-inline-start:-.375rem}tui-chip>input[tuiChip],[tuiChip]>input[tuiChip]{position:absolute;top:0;left:0;width:100%;height:100%;margin:0}tui-chip[tuiAppearance][data-appearance=error],[tuiChip][tuiAppearance][data-appearance=error],tui-chip[tuiAppearance][data-appearance=success],[tuiChip][tuiAppearance][data-appearance=success],tui-chip[tuiAppearance][data-appearance=warning],[tuiChip][tuiAppearance][data-appearance=warning],tui-chip[tuiAppearance][data-appearance=info],[tuiChip][tuiAppearance][data-appearance=info],tui-chip[tuiAppearance][data-appearance=neutral],[tuiChip][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}\n"] }]
21
+ }, styles: ["tui-chip,[tuiChip]{--t-gap: .125rem;--t-margin: -.125rem;--t-icon-size: 1rem;--t-padding: 0 .625rem;--t-size: var(--tui-height-s);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-width:100%;gap:calc(var(--t-gap, var(--t-0, 0rem)) - 2 * var(--t-margin, 0rem));font:var(--tui-font-text-s);border-radius:var(--tui-radius-m);padding:var(--t-padding);height:var(--t-size);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}tui-chip>img,[tuiChip]>img,tui-chip>tui-svg,[tuiChip]>tui-svg,tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip>tui-avatar,[tuiChip]>tui-avatar,tui-chip>tui-badge,[tuiChip]>tui-badge,tui-chip>[tuiBadge],[tuiChip]>[tuiBadge],tui-chip>[tuiRadio],[tuiChip]>[tuiRadio],tui-chip>[tuiSwitch],[tuiChip]>[tuiSwitch],tui-chip>[tuiCheckbox],[tuiChip]>[tuiCheckbox],tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{margin:var(--t-margin)}tui-chip:-webkit-any(a,button,select,textarea,input,label),[tuiChip]:-webkit-any(a,button,select,textarea,input,label){cursor:pointer}tui-chip:-moz-any(a,button,select,textarea,input,label),[tuiChip]:-moz-any(a,button,select,textarea,input,label){cursor:pointer}tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-chip>[tuiIconButton],[tuiChip]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=xxs],[tuiChip][data-size=xxs]{--t-gap: var(--t-0, 0rem);--t-padding: 0 .25rem;--t-size: 1rem;--t-icon-size: .75rem;font:var(--tui-font-text-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xxs]>[tuiIconButton],[tuiChip][data-size=xxs]>[tuiIconButton]{margin:-.5rem;transform:scale(.75)}tui-chip[data-size=xs],[tuiChip][data-size=xs]{--t-padding: 0 .375rem;--t-size: 1.25rem;border-radius:var(--tui-radius-xs)}tui-chip[data-size=xs]>[tuiIconButton],[tuiChip][data-size=xs]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=m],[tuiChip][data-size=m]{--t-margin: -.375rem;--t-icon-size: 1.5rem;--t-padding: 0 1rem;--t-size: var(--tui-height-m);font:var(--tui-font-text-m)}tui-chip[data-size=m]>[tuiIconButton],[tuiChip][data-size=m]>[tuiIconButton]{margin:-.75rem}tui-chip>img,[tuiChip]>img,tui-chip tui-avatar,[tuiChip] tui-avatar{width:1.5rem;margin-inline-start:-.375rem}tui-chip>input[tuiChip],[tuiChip]>input[tuiChip]{position:absolute;top:0;left:0;width:100%;height:100%;margin:0}tui-chip[tuiAppearance][data-appearance=error],[tuiChip][tuiAppearance][data-appearance=error],tui-chip[tuiAppearance][data-appearance=success],[tuiChip][tuiAppearance][data-appearance=success],tui-chip[tuiAppearance][data-appearance=warning],[tuiChip][tuiAppearance][data-appearance=warning],tui-chip[tuiAppearance][data-appearance=info],[tuiChip][tuiAppearance][data-appearance=info],tui-chip[tuiAppearance][data-appearance=neutral],[tuiChip][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}\n"] }]
22
22
  }] });
23
23
  class TuiChip {
24
24
  constructor() {
@@ -1,5 +1,6 @@
1
1
  import { inject, Pipe } from '@angular/core';
2
2
  import { FormControl } from '@angular/forms';
3
+ import { CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk/constants';
3
4
  import { TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS } from '@taiga-ui/kit/tokens';
4
5
  import { combineLatest, map } from 'rxjs';
5
6
  import { TUI_FILE_OPTIONS } from '../file/file.options';
@@ -29,7 +30,7 @@ class TuiFileRejectedPipe {
29
30
  return {
30
31
  name: file.name,
31
32
  size: file.size,
32
- content: maxSizeRejectionReason + this.formatSize(units, maxFileSize),
33
+ content: `${maxSizeRejectionReason}${CHAR_NO_BREAK_SPACE}${this.formatSize(units, maxFileSize)}`,
33
34
  };
34
35
  }
35
36
  return null;
@@ -46,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
46
47
  name: 'tuiFileRejected',
47
48
  }]
48
49
  }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1yZWplY3RlZC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZmlsZXMvcGlwZXMvZmlsZS1yZWplY3RlZC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsNkJBQTZCLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUV6RixPQUFPLEVBQUMsYUFBYSxFQUFFLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUV4QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUV0RCxPQUFPLEVBQ0gsNEJBQTRCLEVBQzVCLDBCQUEwQixHQUM3QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDOztBQUUzRSxNQUlhLG1CQUFtQjtJQUpoQztRQUtxQixZQUFPLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDMUMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUNqRCxVQUFLLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDckMsVUFBSyxHQUFHLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0tBb0NsRTtJQWxDVSxTQUFTLENBQ1osSUFBd0IsRUFDeEIsRUFDSSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQzVCLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsTUFDRyxJQUFJLENBQUMsT0FBTztRQUV6RCxNQUFNLGFBQWEsR0FBRywwQkFBMEIsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RCxNQUFNLGVBQWUsR0FBRyw0QkFBNEIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RCxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0QyxPQUFPLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUMvQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUMsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQzdELElBQUksSUFBSSxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDbEMsT0FBTztvQkFDSCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7b0JBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLE9BQU8sRUFBRSxxQkFBcUI7aUJBQ2pDLENBQUM7YUFDTDtZQUVELElBQUksSUFBSSxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDaEMsT0FBTztvQkFDSCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7b0JBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLE9BQU8sRUFDSCxzQkFBc0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUM7aUJBQ25FLENBQUM7YUFDTDtZQUVELE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDOytHQXZDUSxtQkFBbUI7NkdBQW5CLG1CQUFtQjs7U0FBbkIsbUJBQW1COzRGQUFuQixtQkFBbUI7a0JBSi9CLElBQUk7bUJBQUM7b0JBQ0YsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRSxpQkFBaUI7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1BpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtpbmplY3QsIFBpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtUVUlfRElHSVRBTF9JTkZPUk1BVElPTl9VTklUUywgVFVJX0lOUFVUX0ZJTEVfVEVYVFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgbWFwfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfRklMRV9PUFRJT05TfSBmcm9tICcuLi9maWxlL2ZpbGUub3B0aW9ucyc7XG5pbXBvcnQgdHlwZSB7VHVpRmlsZUxpa2V9IGZyb20gJy4uL2ZpbGVzLnR5cGVzJztcbmltcG9ydCB7XG4gICAgdHVpQ3JlYXRlRmlsZUZvcm1hdFZhbGlkYXRvcixcbiAgICB0dWlDcmVhdGVGaWxlU2l6ZVZhbGlkYXRvcixcbn0gZnJvbSAnLi4vZmlsZXMudmFsaWRhdG9ycyc7XG5pbXBvcnQge1RVSV9JTlBVVF9GSUxFU19PUFRJT05TfSBmcm9tICcuLi9pbnB1dC1maWxlcy9pbnB1dC1maWxlcy5vcHRpb25zJztcblxuQFBpcGUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgbmFtZTogJ3R1aUZpbGVSZWplY3RlZCcsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUZpbGVSZWplY3RlZFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0lOUFVUX0ZJTEVTX09QVElPTlMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybWF0U2l6ZSA9IGluamVjdChUVUlfRklMRV9PUFRJT05TKS5mb3JtYXRTaXplO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGV4dCQgPSBpbmplY3QoVFVJX0lOUFVUX0ZJTEVfVEVYVFMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdW5pdCQgPSBpbmplY3QoVFVJX0RJR0lUQUxfSU5GT1JNQVRJT05fVU5JVFMpO1xuXG4gICAgcHVibGljIHRyYW5zZm9ybShcbiAgICAgICAgZmlsZTogVHVpRmlsZUxpa2UgfCBudWxsLFxuICAgICAgICB7XG4gICAgICAgICAgICBhY2NlcHQgPSB0aGlzLm9wdGlvbnMuYWNjZXB0LFxuICAgICAgICAgICAgbWF4RmlsZVNpemUgPSB0aGlzLm9wdGlvbnMubWF4RmlsZVNpemUsXG4gICAgICAgIH06IHthY2NlcHQ/OiBzdHJpbmc7IG1heEZpbGVTaXplPzogbnVtYmVyfSA9IHRoaXMub3B0aW9ucyxcbiAgICApOiBPYnNlcnZhYmxlPFR1aUZpbGVMaWtlIHwgbnVsbD4ge1xuICAgICAgICBjb25zdCBzaXplVmFsaWRhdG9yID0gdHVpQ3JlYXRlRmlsZVNpemVWYWxpZGF0b3IobWF4RmlsZVNpemUpO1xuICAgICAgICBjb25zdCBmb3JtYXRWYWxpZGF0b3IgPSB0dWlDcmVhdGVGaWxlRm9ybWF0VmFsaWRhdG9yKGFjY2VwdCk7XG4gICAgICAgIGNvbnN0IGNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woZmlsZSk7XG5cbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW3RoaXMudGV4dCQsIHRoaXMudW5pdCRdKS5waXBlKFxuICAgICAgICAgICAgbWFwKChbe21heFNpemVSZWplY3Rpb25SZWFzb24sIGZvcm1hdFJlamVjdGlvblJlYXNvbn0sIHVuaXRzXSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChmaWxlICYmIGZvcm1hdFZhbGlkYXRvcihjb250cm9sKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogZmlsZS5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZTogZmlsZS5zaXplLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogZm9ybWF0UmVqZWN0aW9uUmVhc29uLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChmaWxlICYmIHNpemVWYWxpZGF0b3IoY29udHJvbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGZpbGUubmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IGZpbGUuc2l6ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4U2l6ZVJlamVjdGlvblJlYXNvbiArIHRoaXMuZm9ybWF0U2l6ZSh1bml0cywgbWF4RmlsZVNpemUpLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1yZWplY3RlZC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZmlsZXMvcGlwZXMvZmlsZS1yZWplY3RlZC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsNkJBQTZCLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUV6RixPQUFPLEVBQUMsYUFBYSxFQUFFLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUV4QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUV0RCxPQUFPLEVBQ0gsNEJBQTRCLEVBQzVCLDBCQUEwQixHQUM3QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDOztBQUUzRSxNQUlhLG1CQUFtQjtJQUpoQztRQUtxQixZQUFPLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDMUMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUNqRCxVQUFLLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDckMsVUFBSyxHQUFHLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0tBbUNsRTtJQWpDVSxTQUFTLENBQ1osSUFBd0IsRUFDeEIsRUFDSSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQzVCLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsTUFDRyxJQUFJLENBQUMsT0FBTztRQUV6RCxNQUFNLGFBQWEsR0FBRywwQkFBMEIsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RCxNQUFNLGVBQWUsR0FBRyw0QkFBNEIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RCxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0QyxPQUFPLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUMvQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUMsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQzdELElBQUksSUFBSSxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDbEMsT0FBTztvQkFDSCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7b0JBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLE9BQU8sRUFBRSxxQkFBcUI7aUJBQ2pDLENBQUM7YUFDTDtZQUVELElBQUksSUFBSSxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDaEMsT0FBTztvQkFDSCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7b0JBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLE9BQU8sRUFBRSxHQUFHLHNCQUFzQixHQUFHLG1CQUFtQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxFQUFFO2lCQUNuRyxDQUFDO2FBQ0w7WUFFRCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQzsrR0F0Q1EsbUJBQW1COzZHQUFuQixtQkFBbUI7O1NBQW5CLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQUovQixJQUFJO21CQUFDO29CQUNGLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUUsaUJBQWlCO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7aW5qZWN0LCBQaXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUNvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7Q0hBUl9OT19CUkVBS19TUEFDRX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUVUlfRElHSVRBTF9JTkZPUk1BVElPTl9VTklUUywgVFVJX0lOUFVUX0ZJTEVfVEVYVFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgbWFwfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfRklMRV9PUFRJT05TfSBmcm9tICcuLi9maWxlL2ZpbGUub3B0aW9ucyc7XG5pbXBvcnQgdHlwZSB7VHVpRmlsZUxpa2V9IGZyb20gJy4uL2ZpbGVzLnR5cGVzJztcbmltcG9ydCB7XG4gICAgdHVpQ3JlYXRlRmlsZUZvcm1hdFZhbGlkYXRvcixcbiAgICB0dWlDcmVhdGVGaWxlU2l6ZVZhbGlkYXRvcixcbn0gZnJvbSAnLi4vZmlsZXMudmFsaWRhdG9ycyc7XG5pbXBvcnQge1RVSV9JTlBVVF9GSUxFU19PUFRJT05TfSBmcm9tICcuLi9pbnB1dC1maWxlcy9pbnB1dC1maWxlcy5vcHRpb25zJztcblxuQFBpcGUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgbmFtZTogJ3R1aUZpbGVSZWplY3RlZCcsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUZpbGVSZWplY3RlZFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0lOUFVUX0ZJTEVTX09QVElPTlMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybWF0U2l6ZSA9IGluamVjdChUVUlfRklMRV9PUFRJT05TKS5mb3JtYXRTaXplO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGV4dCQgPSBpbmplY3QoVFVJX0lOUFVUX0ZJTEVfVEVYVFMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdW5pdCQgPSBpbmplY3QoVFVJX0RJR0lUQUxfSU5GT1JNQVRJT05fVU5JVFMpO1xuXG4gICAgcHVibGljIHRyYW5zZm9ybShcbiAgICAgICAgZmlsZTogVHVpRmlsZUxpa2UgfCBudWxsLFxuICAgICAgICB7XG4gICAgICAgICAgICBhY2NlcHQgPSB0aGlzLm9wdGlvbnMuYWNjZXB0LFxuICAgICAgICAgICAgbWF4RmlsZVNpemUgPSB0aGlzLm9wdGlvbnMubWF4RmlsZVNpemUsXG4gICAgICAgIH06IHthY2NlcHQ/OiBzdHJpbmc7IG1heEZpbGVTaXplPzogbnVtYmVyfSA9IHRoaXMub3B0aW9ucyxcbiAgICApOiBPYnNlcnZhYmxlPFR1aUZpbGVMaWtlIHwgbnVsbD4ge1xuICAgICAgICBjb25zdCBzaXplVmFsaWRhdG9yID0gdHVpQ3JlYXRlRmlsZVNpemVWYWxpZGF0b3IobWF4RmlsZVNpemUpO1xuICAgICAgICBjb25zdCBmb3JtYXRWYWxpZGF0b3IgPSB0dWlDcmVhdGVGaWxlRm9ybWF0VmFsaWRhdG9yKGFjY2VwdCk7XG4gICAgICAgIGNvbnN0IGNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woZmlsZSk7XG5cbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW3RoaXMudGV4dCQsIHRoaXMudW5pdCRdKS5waXBlKFxuICAgICAgICAgICAgbWFwKChbe21heFNpemVSZWplY3Rpb25SZWFzb24sIGZvcm1hdFJlamVjdGlvblJlYXNvbn0sIHVuaXRzXSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChmaWxlICYmIGZvcm1hdFZhbGlkYXRvcihjb250cm9sKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogZmlsZS5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZTogZmlsZS5zaXplLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogZm9ybWF0UmVqZWN0aW9uUmVhc29uLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChmaWxlICYmIHNpemVWYWxpZGF0b3IoY29udHJvbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGZpbGUubmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IGZpbGUuc2l6ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGAke21heFNpemVSZWplY3Rpb25SZWFzb259JHtDSEFSX05PX0JSRUFLX1NQQUNFfSR7dGhpcy5mb3JtYXRTaXplKHVuaXRzLCBtYXhGaWxlU2l6ZSl9YCxcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==