@taiga-ui/kit 4.5.0 → 4.6.0-canary.0a513eb

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 (152) hide show
  1. package/components/badged-content/badged-content.component.d.ts +2 -0
  2. package/components/calendar-range/calendar-range.component.d.ts +1 -2
  3. package/components/confirm/confirm.component.d.ts +1 -1
  4. package/components/files/input-files/input-files.directive.d.ts +4 -3
  5. package/components/input-password/input-password.component.d.ts +3 -0
  6. package/components/input-password/input-password.options.d.ts +12 -0
  7. package/components/line-clamp/line-clamp.component.d.ts +1 -1
  8. package/components/preview/preview.component.d.ts +2 -0
  9. package/components/segmented/segmented.component.d.ts +0 -2
  10. package/components/stepper/step.component.d.ts +1 -2
  11. package/components/stepper/stepper.component.d.ts +1 -1
  12. package/components/tiles/tile.service.d.ts +1 -1
  13. package/directives/copy/copy.directive.d.ts +17 -0
  14. package/directives/copy/copy.options.d.ts +6 -0
  15. package/directives/copy/index.d.ts +2 -0
  16. package/directives/index.d.ts +2 -0
  17. package/directives/password/index.d.ts +1 -0
  18. package/directives/password/password.directive.d.ts +16 -0
  19. package/directives/password/password.options.d.ts +9 -0
  20. package/esm2022/components/accordion/accordion-item.component.mjs +3 -3
  21. package/esm2022/components/badged-content/badged-content.component.mjs +10 -4
  22. package/esm2022/components/block/block.directive.mjs +2 -2
  23. package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +3 -3
  24. package/esm2022/components/calendar-month/calendar-month.component.mjs +7 -7
  25. package/esm2022/components/calendar-range/calendar-range.component.mjs +14 -16
  26. package/esm2022/components/carousel/carousel-scroll.directive.mjs +3 -3
  27. package/esm2022/components/carousel/carousel.component.mjs +12 -7
  28. package/esm2022/components/confirm/confirm.component.mjs +6 -5
  29. package/esm2022/components/data-list-wrapper/data-list-group-wrapper.component.mjs +3 -3
  30. package/esm2022/components/data-list-wrapper/data-list-wrapper.component.mjs +3 -3
  31. package/esm2022/components/files/file/file.component.mjs +3 -3
  32. package/esm2022/components/files/files/files.component.mjs +3 -3
  33. package/esm2022/components/files/input-files/input-files.component.mjs +5 -5
  34. package/esm2022/components/files/input-files/input-files.content.mjs +4 -3
  35. package/esm2022/components/files/input-files/input-files.directive.mjs +7 -4
  36. package/esm2022/components/filter/filter.component.mjs +4 -4
  37. package/esm2022/components/input-inline/input-inline.component.mjs +4 -4
  38. package/esm2022/components/input-password/input-password.component.mjs +8 -5
  39. package/esm2022/components/input-password/input-password.options.mjs +10 -1
  40. package/esm2022/components/input-phone-international/input-phone-international.component.mjs +3 -3
  41. package/esm2022/components/items-with-more/items-with-more.component.mjs +3 -3
  42. package/esm2022/components/line-clamp/line-clamp.component.mjs +11 -13
  43. package/esm2022/components/pagination/pagination.component.mjs +3 -3
  44. package/esm2022/components/pdf-viewer/pdf-viewer.component.mjs +5 -5
  45. package/esm2022/components/preview/pagination/preview-pagination.component.mjs +3 -3
  46. package/esm2022/components/preview/preview-dialog/preview-dialog.component.mjs +3 -3
  47. package/esm2022/components/preview/preview.component.mjs +10 -8
  48. package/esm2022/components/preview/zoom/preview-zoom.component.mjs +8 -8
  49. package/esm2022/components/push/push-alert.component.mjs +6 -6
  50. package/esm2022/components/push/push.component.mjs +3 -3
  51. package/esm2022/components/radio-list/radio-list.component.mjs +6 -6
  52. package/esm2022/components/range/range.component.mjs +5 -5
  53. package/esm2022/components/rating/rating.component.mjs +3 -3
  54. package/esm2022/components/segmented/segmented.component.mjs +13 -13
  55. package/esm2022/components/slider/helpers/slider-readonly.directive.mjs +4 -4
  56. package/esm2022/components/stepper/step.component.mjs +6 -6
  57. package/esm2022/components/stepper/stepper.component.mjs +5 -5
  58. package/esm2022/components/tabs/tabs-with-more.component.mjs +6 -4
  59. package/esm2022/components/tiles/tile.service.mjs +3 -2
  60. package/esm2022/components/tree/components/tree/tree.component.mjs +7 -7
  61. package/esm2022/components/tree/components/tree-item/tree-item.component.mjs +3 -3
  62. package/esm2022/components/tree/components/tree-item-content/tree-item-content.component.mjs +5 -5
  63. package/esm2022/directives/copy/copy.directive.mjs +71 -0
  64. package/esm2022/directives/copy/copy.options.mjs +5 -0
  65. package/esm2022/directives/copy/index.mjs +3 -0
  66. package/esm2022/directives/copy/taiga-ui-kit-directives-copy.mjs +5 -0
  67. package/esm2022/directives/icon-badge/icon-badge.directive.mjs +2 -2
  68. package/esm2022/directives/index.mjs +3 -1
  69. package/esm2022/directives/password/index.mjs +2 -0
  70. package/esm2022/directives/password/password.directive.mjs +71 -0
  71. package/esm2022/directives/password/password.options.mjs +8 -0
  72. package/esm2022/directives/password/taiga-ui-kit-directives-password.mjs +5 -0
  73. package/esm2022/directives/skeleton/skeleton.directive.mjs +2 -2
  74. package/esm2022/pipes/filter-by-input/filter-by-input.pipe.mjs +1 -1
  75. package/esm2022/utils/toggle-day.mjs +2 -2
  76. package/fesm2022/taiga-ui-kit-components-accordion.mjs +2 -2
  77. package/fesm2022/taiga-ui-kit-components-accordion.mjs.map +1 -1
  78. package/fesm2022/taiga-ui-kit-components-badged-content.mjs +9 -3
  79. package/fesm2022/taiga-ui-kit-components-badged-content.mjs.map +1 -1
  80. package/fesm2022/taiga-ui-kit-components-block.mjs +2 -2
  81. package/fesm2022/taiga-ui-kit-components-block.mjs.map +1 -1
  82. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs +3 -3
  83. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs.map +1 -1
  84. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs +7 -7
  85. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs.map +1 -1
  86. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs +14 -16
  87. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs.map +1 -1
  88. package/fesm2022/taiga-ui-kit-components-carousel.mjs +14 -9
  89. package/fesm2022/taiga-ui-kit-components-carousel.mjs.map +1 -1
  90. package/fesm2022/taiga-ui-kit-components-confirm.mjs +4 -4
  91. package/fesm2022/taiga-ui-kit-components-confirm.mjs.map +1 -1
  92. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs +5 -5
  93. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs.map +1 -1
  94. package/fesm2022/taiga-ui-kit-components-files.mjs +15 -11
  95. package/fesm2022/taiga-ui-kit-components-files.mjs.map +1 -1
  96. package/fesm2022/taiga-ui-kit-components-filter.mjs +3 -3
  97. package/fesm2022/taiga-ui-kit-components-filter.mjs.map +1 -1
  98. package/fesm2022/taiga-ui-kit-components-input-inline.mjs +4 -4
  99. package/fesm2022/taiga-ui-kit-components-input-inline.mjs.map +1 -1
  100. package/fesm2022/taiga-ui-kit-components-input-password.mjs +16 -4
  101. package/fesm2022/taiga-ui-kit-components-input-password.mjs.map +1 -1
  102. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +2 -2
  103. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
  104. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs +3 -3
  105. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs.map +1 -1
  106. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs +10 -12
  107. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs.map +1 -1
  108. package/fesm2022/taiga-ui-kit-components-pagination.mjs +3 -3
  109. package/fesm2022/taiga-ui-kit-components-pagination.mjs.map +1 -1
  110. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs +4 -4
  111. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs.map +1 -1
  112. package/fesm2022/taiga-ui-kit-components-preview-preview-dialog.mjs +2 -2
  113. package/fesm2022/taiga-ui-kit-components-preview-preview-dialog.mjs.map +1 -1
  114. package/fesm2022/taiga-ui-kit-components-preview.mjs +21 -19
  115. package/fesm2022/taiga-ui-kit-components-preview.mjs.map +1 -1
  116. package/fesm2022/taiga-ui-kit-components-push.mjs +8 -8
  117. package/fesm2022/taiga-ui-kit-components-push.mjs.map +1 -1
  118. package/fesm2022/taiga-ui-kit-components-radio-list.mjs +5 -5
  119. package/fesm2022/taiga-ui-kit-components-radio-list.mjs.map +1 -1
  120. package/fesm2022/taiga-ui-kit-components-range.mjs +4 -4
  121. package/fesm2022/taiga-ui-kit-components-range.mjs.map +1 -1
  122. package/fesm2022/taiga-ui-kit-components-rating.mjs +2 -2
  123. package/fesm2022/taiga-ui-kit-components-rating.mjs.map +1 -1
  124. package/fesm2022/taiga-ui-kit-components-segmented.mjs +12 -12
  125. package/fesm2022/taiga-ui-kit-components-segmented.mjs.map +1 -1
  126. package/fesm2022/taiga-ui-kit-components-slider.mjs +3 -3
  127. package/fesm2022/taiga-ui-kit-components-slider.mjs.map +1 -1
  128. package/fesm2022/taiga-ui-kit-components-stepper.mjs +9 -10
  129. package/fesm2022/taiga-ui-kit-components-stepper.mjs.map +1 -1
  130. package/fesm2022/taiga-ui-kit-components-tabs.mjs +5 -3
  131. package/fesm2022/taiga-ui-kit-components-tabs.mjs.map +1 -1
  132. package/fesm2022/taiga-ui-kit-components-tiles.mjs +2 -1
  133. package/fesm2022/taiga-ui-kit-components-tiles.mjs.map +1 -1
  134. package/fesm2022/taiga-ui-kit-components-tree.mjs +13 -13
  135. package/fesm2022/taiga-ui-kit-components-tree.mjs.map +1 -1
  136. package/fesm2022/taiga-ui-kit-directives-copy.mjs +81 -0
  137. package/fesm2022/taiga-ui-kit-directives-copy.mjs.map +1 -0
  138. package/fesm2022/taiga-ui-kit-directives-icon-badge.mjs +2 -2
  139. package/fesm2022/taiga-ui-kit-directives-icon-badge.mjs.map +1 -1
  140. package/fesm2022/taiga-ui-kit-directives-password.mjs +84 -0
  141. package/fesm2022/taiga-ui-kit-directives-password.mjs.map +1 -0
  142. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs +2 -2
  143. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs.map +1 -1
  144. package/fesm2022/taiga-ui-kit-directives.mjs +2 -0
  145. package/fesm2022/taiga-ui-kit-directives.mjs.map +1 -1
  146. package/fesm2022/taiga-ui-kit-pipes-filter-by-input.mjs.map +1 -1
  147. package/fesm2022/taiga-ui-kit-utils.mjs +1 -1
  148. package/fesm2022/taiga-ui-kit-utils.mjs.map +1 -1
  149. package/package.json +517 -505
  150. package/pipes/filter-by-input/filter-by-input.pipe.d.ts +1 -3
  151. package/styles/components/block.less +1 -4
  152. package/utils/toggle-day.d.ts +1 -1
@@ -6,6 +6,7 @@ import { tuiInjectElement, tuiIsElement } from '@taiga-ui/cdk/utils/dom';
6
6
  import { tuiGetClosestFocusable, tuiIsNativeFocused } from '@taiga-ui/cdk/utils/focus';
7
7
  import { tuiClamp, tuiToInt } from '@taiga-ui/cdk/utils/math';
8
8
  import { tuiPx } from '@taiga-ui/cdk/utils/miscellaneous';
9
+ import { TuiOption } from '@taiga-ui/core/components/data-list';
9
10
  import { TuiDropdown } from '@taiga-ui/core/directives/dropdown';
10
11
  import { TuiChevron } from '@taiga-ui/kit/directives';
11
12
  import { TUI_MORE_WORD } from '@taiga-ui/kit/tokens';
@@ -168,7 +169,7 @@ class TuiTabsWithMore {
168
169
  this.dir?.nativeElement.style.setProperty('--t-width', tuiPx(offsetWidth));
169
170
  }
170
171
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTabsWithMore, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
171
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTabsWithMore, isStandalone: true, selector: "tui-tabs-with-more, nav[tuiTabsWithMore]", inputs: { size: "size", moreContent: "moreContent", dropdownContent: "dropdownContent", underline: "underline", itemsLimit: "itemsLimit", itemIndex: ["activeItemIndex", "itemIndex"] }, outputs: { activeItemIndexChange: "activeItemIndexChange" }, providers: TUI_TABS_PROVIDERS, queries: [{ propertyName: "items", predicate: TuiItem, read: TemplateRef }], viewQueries: [{ propertyName: "moreButton", first: true, predicate: TuiTab, descendants: true, read: ElementRef }, { propertyName: "dir", first: true, predicate: TuiTabsHorizontal, descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-container *ngIf=\"items.changes | async\" />\n<tui-tabs\n class=\"t-tabs\"\n [activeItemIndex]=\"activeItemIndex\"\n [size]=\"size\"\n [underline]=\"underline\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n (keydown.arrowRight)=\"onArrowRight($event)\"\n>\n <ng-container *ngFor=\"let item of items; let index = index\">\n <ng-container\n *ngIf=\"index <= lastVisibleIndex; else hidden\"\n [ngTemplateOutlet]=\"item\"\n />\n <ng-template #hidden>\n <div\n class=\"t-flex\"\n [class.t-overflown]=\"isOverflown(index)\"\n >\n <ng-container [ngTemplateOutlet]=\"item\" />\n </div>\n </ng-template>\n </ng-container>\n</tui-tabs>\n\n<button\n *ngIf=\"moreContent; else chevron\"\n tuiTab\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n>\n <ng-container *polymorpheusOutlet=\"moreContent as text\">\n {{ text }}\n </ng-container>\n</button>\n<ng-template #chevron>\n <button\n tuiChevron\n tuiTab\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n >\n {{ moreWord$ | async }}\n </button>\n</ng-template>\n<ng-template #dropdown>\n <div\n #element\n class=\"t-dropdown\"\n [attr.data-size]=\"size\"\n (keydown.arrowDown.prevent)=\"onWrapperArrow($event, element, false)\"\n (keydown.arrowUp.prevent)=\"onWrapperArrow($event, element, true)\"\n >\n <div\n *ngFor=\"let item of items; let index = index\"\n class=\"t-dropdown-item\"\n (tui-tab-activate)=\"onClick(index)\"\n >\n <ng-container\n *ngIf=\"shouldShow(index)\"\n [ngTemplateOutlet]=\"item\"\n />\n </div>\n </div>\n</ng-template>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);box-sizing:border-box;color:var(--tui-text-secondary);box-shadow:inset 0 -1px var(--tui-border-normal);overflow:hidden}.t-tabs{block-size:inherit;font:inherit;overflow:visible;box-shadow:none;color:inherit}.t-flex{display:flex}.t-overflown{margin:0;inline-size:0;max-inline-size:0;overflow:hidden;visibility:hidden}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-right:-.25rem;vertical-align:bottom}.t-icon_rotated{transform:rotate(180deg)}.t-dropdown{padding:.25rem 0}.t-dropdown ::ng-deep *[tuiTab]{inline-size:calc(100% - .75rem);block-size:2.75rem;justify-content:flex-start;margin:.125rem .375rem;padding:0 .625rem;line-height:1.5rem;border-radius:var(--tui-radius-s);font:var(--tui-font-text-m);color:var(--tui-text-primary)}.t-dropdown ::ng-deep *[tuiTab]:before{display:none}.t-dropdown ::ng-deep *[tuiTab]:hover,.t-dropdown ::ng-deep *[tuiTab]:focus,.t-dropdown ::ng-deep *[tuiTab]._active{box-shadow:none;outline:none;background:var(--tui-background-neutral-1)}.t-dropdown[data-size=m] ::ng-deep *[tuiTab]{block-size:2.25rem;font:var(--tui-font-text-s)}.t-dropdown-item{display:flex;flex-direction:column}.t-no-margin{margin-left:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: i2.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i2.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: TuiTab, selector: "a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]" }, { kind: "directive", type: TuiTabsHorizontal, selector: "tui-tabs:not([vertical]), nav[tuiTabs]:not([vertical])", inputs: ["underline"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
172
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTabsWithMore, isStandalone: true, selector: "tui-tabs-with-more, nav[tuiTabsWithMore]", inputs: { size: "size", moreContent: "moreContent", dropdownContent: "dropdownContent", underline: "underline", itemsLimit: "itemsLimit", itemIndex: ["activeItemIndex", "itemIndex"] }, outputs: { activeItemIndexChange: "activeItemIndexChange" }, providers: TUI_TABS_PROVIDERS, queries: [{ propertyName: "items", predicate: TuiItem, read: TemplateRef }], viewQueries: [{ propertyName: "moreButton", first: true, predicate: TuiTab, descendants: true, read: ElementRef }, { propertyName: "dir", first: true, predicate: TuiTabsHorizontal, descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-container *ngIf=\"items.changes | async\" />\n<tui-tabs\n class=\"t-tabs\"\n [activeItemIndex]=\"activeItemIndex\"\n [size]=\"size\"\n [underline]=\"underline\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n (keydown.arrowRight)=\"onArrowRight($event)\"\n>\n <ng-container *ngFor=\"let item of items; let index = index\">\n <ng-container\n *ngIf=\"index <= lastVisibleIndex; else hidden\"\n [ngTemplateOutlet]=\"item\"\n />\n <ng-template #hidden>\n <div\n class=\"t-flex\"\n [class.t-overflown]=\"isOverflown(index)\"\n >\n <ng-container [ngTemplateOutlet]=\"item\" />\n </div>\n </ng-template>\n </ng-container>\n</tui-tabs>\n\n<button\n *ngIf=\"moreContent; else chevron\"\n tuiTab\n type=\"button\"\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n>\n <ng-container *polymorpheusOutlet=\"moreContent as text\">\n {{ text }}\n </ng-container>\n</button>\n<ng-template #chevron>\n <button\n tuiChevron\n tuiTab\n type=\"button\"\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n >\n {{ moreWord$ | async }}\n </button>\n</ng-template>\n<ng-template #dropdown>\n <div\n #element\n class=\"t-dropdown\"\n [attr.data-size]=\"size\"\n (keydown.arrowDown.prevent)=\"onWrapperArrow($event, element, false)\"\n (keydown.arrowUp.prevent)=\"onWrapperArrow($event, element, true)\"\n >\n <div\n *ngFor=\"let item of items; let index = index\"\n class=\"t-dropdown-item\"\n (tui-tab-activate)=\"onClick(index)\"\n >\n <ng-container\n *ngIf=\"shouldShow(index)\"\n [ngTemplateOutlet]=\"item\"\n />\n </div>\n </div>\n</ng-template>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);box-sizing:border-box;color:var(--tui-text-secondary);box-shadow:inset 0 -1px var(--tui-border-normal);overflow:hidden}.t-tabs{block-size:inherit;font:inherit;overflow:visible;box-shadow:none;color:inherit}.t-flex{display:flex}.t-overflown{margin:0;inline-size:0;max-inline-size:0;overflow:hidden;visibility:hidden}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-right:-.25rem;vertical-align:bottom}.t-icon_rotated{transform:rotate(180deg)}.t-dropdown{padding:.25rem 0}.t-dropdown ::ng-deep *[tuiTab]{inline-size:calc(100% - .75rem);block-size:2.75rem;justify-content:flex-start;margin:.125rem .375rem;padding:0 .625rem;line-height:1.5rem;border-radius:var(--tui-radius-s);font:var(--tui-font-text-m);color:var(--tui-text-primary)}.t-dropdown ::ng-deep *[tuiTab]:before{display:none}.t-dropdown ::ng-deep *[tuiTab]:hover,.t-dropdown ::ng-deep *[tuiTab]:focus,.t-dropdown ::ng-deep *[tuiTab]._active{box-shadow:none;outline:none;background:var(--tui-background-neutral-1)}.t-dropdown[data-size=m] ::ng-deep *[tuiTab]{block-size:2.25rem;font:var(--tui-font-text-s)}.t-dropdown-item{display:flex;flex-direction:column}.t-no-margin{margin-left:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }, { kind: "directive", type: i2.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i2.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: TuiTab, selector: "a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]" }, { kind: "directive", type: TuiTabsHorizontal, selector: "tui-tabs:not([vertical]), nav[tuiTabs]:not([vertical])", inputs: ["underline"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
172
173
  }
173
174
  export { TuiTabsWithMore };
174
175
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTabsWithMore, decorators: [{
@@ -177,11 +178,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
177
178
  CommonModule,
178
179
  PolymorpheusOutlet,
179
180
  PolymorpheusTemplate,
181
+ TuiChevron,
180
182
  TuiDropdown,
183
+ TuiOption,
181
184
  TuiTab,
182
185
  TuiTabsHorizontal,
183
- TuiChevron,
184
- ], changeDetection: ChangeDetectionStrategy.OnPush, providers: TUI_TABS_PROVIDERS, template: "<ng-container *ngIf=\"items.changes | async\" />\n<tui-tabs\n class=\"t-tabs\"\n [activeItemIndex]=\"activeItemIndex\"\n [size]=\"size\"\n [underline]=\"underline\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n (keydown.arrowRight)=\"onArrowRight($event)\"\n>\n <ng-container *ngFor=\"let item of items; let index = index\">\n <ng-container\n *ngIf=\"index <= lastVisibleIndex; else hidden\"\n [ngTemplateOutlet]=\"item\"\n />\n <ng-template #hidden>\n <div\n class=\"t-flex\"\n [class.t-overflown]=\"isOverflown(index)\"\n >\n <ng-container [ngTemplateOutlet]=\"item\" />\n </div>\n </ng-template>\n </ng-container>\n</tui-tabs>\n\n<button\n *ngIf=\"moreContent; else chevron\"\n tuiTab\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n>\n <ng-container *polymorpheusOutlet=\"moreContent as text\">\n {{ text }}\n </ng-container>\n</button>\n<ng-template #chevron>\n <button\n tuiChevron\n tuiTab\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n >\n {{ moreWord$ | async }}\n </button>\n</ng-template>\n<ng-template #dropdown>\n <div\n #element\n class=\"t-dropdown\"\n [attr.data-size]=\"size\"\n (keydown.arrowDown.prevent)=\"onWrapperArrow($event, element, false)\"\n (keydown.arrowUp.prevent)=\"onWrapperArrow($event, element, true)\"\n >\n <div\n *ngFor=\"let item of items; let index = index\"\n class=\"t-dropdown-item\"\n (tui-tab-activate)=\"onClick(index)\"\n >\n <ng-container\n *ngIf=\"shouldShow(index)\"\n [ngTemplateOutlet]=\"item\"\n />\n </div>\n </div>\n</ng-template>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);box-sizing:border-box;color:var(--tui-text-secondary);box-shadow:inset 0 -1px var(--tui-border-normal);overflow:hidden}.t-tabs{block-size:inherit;font:inherit;overflow:visible;box-shadow:none;color:inherit}.t-flex{display:flex}.t-overflown{margin:0;inline-size:0;max-inline-size:0;overflow:hidden;visibility:hidden}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-right:-.25rem;vertical-align:bottom}.t-icon_rotated{transform:rotate(180deg)}.t-dropdown{padding:.25rem 0}.t-dropdown ::ng-deep *[tuiTab]{inline-size:calc(100% - .75rem);block-size:2.75rem;justify-content:flex-start;margin:.125rem .375rem;padding:0 .625rem;line-height:1.5rem;border-radius:var(--tui-radius-s);font:var(--tui-font-text-m);color:var(--tui-text-primary)}.t-dropdown ::ng-deep *[tuiTab]:before{display:none}.t-dropdown ::ng-deep *[tuiTab]:hover,.t-dropdown ::ng-deep *[tuiTab]:focus,.t-dropdown ::ng-deep *[tuiTab]._active{box-shadow:none;outline:none;background:var(--tui-background-neutral-1)}.t-dropdown[data-size=m] ::ng-deep *[tuiTab]{block-size:2.25rem;font:var(--tui-font-text-s)}.t-dropdown-item{display:flex;flex-direction:column}.t-no-margin{margin-left:0}\n"] }]
186
+ ], changeDetection: ChangeDetectionStrategy.OnPush, providers: TUI_TABS_PROVIDERS, template: "<ng-container *ngIf=\"items.changes | async\" />\n<tui-tabs\n class=\"t-tabs\"\n [activeItemIndex]=\"activeItemIndex\"\n [size]=\"size\"\n [underline]=\"underline\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n (keydown.arrowRight)=\"onArrowRight($event)\"\n>\n <ng-container *ngFor=\"let item of items; let index = index\">\n <ng-container\n *ngIf=\"index <= lastVisibleIndex; else hidden\"\n [ngTemplateOutlet]=\"item\"\n />\n <ng-template #hidden>\n <div\n class=\"t-flex\"\n [class.t-overflown]=\"isOverflown(index)\"\n >\n <ng-container [ngTemplateOutlet]=\"item\" />\n </div>\n </ng-template>\n </ng-container>\n</tui-tabs>\n\n<button\n *ngIf=\"moreContent; else chevron\"\n tuiTab\n type=\"button\"\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n>\n <ng-container *polymorpheusOutlet=\"moreContent as text\">\n {{ text }}\n </ng-container>\n</button>\n<ng-template #chevron>\n <button\n tuiChevron\n tuiTab\n type=\"button\"\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n >\n {{ moreWord$ | async }}\n </button>\n</ng-template>\n<ng-template #dropdown>\n <div\n #element\n class=\"t-dropdown\"\n [attr.data-size]=\"size\"\n (keydown.arrowDown.prevent)=\"onWrapperArrow($event, element, false)\"\n (keydown.arrowUp.prevent)=\"onWrapperArrow($event, element, true)\"\n >\n <div\n *ngFor=\"let item of items; let index = index\"\n class=\"t-dropdown-item\"\n (tui-tab-activate)=\"onClick(index)\"\n >\n <ng-container\n *ngIf=\"shouldShow(index)\"\n [ngTemplateOutlet]=\"item\"\n />\n </div>\n </div>\n</ng-template>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);box-sizing:border-box;color:var(--tui-text-secondary);box-shadow:inset 0 -1px var(--tui-border-normal);overflow:hidden}.t-tabs{block-size:inherit;font:inherit;overflow:visible;box-shadow:none;color:inherit}.t-flex{display:flex}.t-overflown{margin:0;inline-size:0;max-inline-size:0;overflow:hidden;visibility:hidden}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-right:-.25rem;vertical-align:bottom}.t-icon_rotated{transform:rotate(180deg)}.t-dropdown{padding:.25rem 0}.t-dropdown ::ng-deep *[tuiTab]{inline-size:calc(100% - .75rem);block-size:2.75rem;justify-content:flex-start;margin:.125rem .375rem;padding:0 .625rem;line-height:1.5rem;border-radius:var(--tui-radius-s);font:var(--tui-font-text-m);color:var(--tui-text-primary)}.t-dropdown ::ng-deep *[tuiTab]:before{display:none}.t-dropdown ::ng-deep *[tuiTab]:hover,.t-dropdown ::ng-deep *[tuiTab]:focus,.t-dropdown ::ng-deep *[tuiTab]._active{box-shadow:none;outline:none;background:var(--tui-background-neutral-1)}.t-dropdown[data-size=m] ::ng-deep *[tuiTab]{block-size:2.25rem;font:var(--tui-font-text-s)}.t-dropdown-item{display:flex;flex-direction:column}.t-no-margin{margin-left:0}\n"] }]
185
187
  }], propDecorators: { moreButton: [{
186
188
  type: ViewChild,
187
189
  args: [TuiTab, { read: ElementRef }]
@@ -207,4 +209,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
207
209
  type: Input,
208
210
  args: ['activeItemIndex']
209
211
  }] } });
210
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy13aXRoLW1vcmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdGFicy90YWJzLXdpdGgtbW9yZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy90YWJzL3RhYnMtd2l0aC1tb3JlLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVwRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFFdEQsT0FBTyxFQUFDLGdCQUFnQixFQUFFLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxzQkFBc0IsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JGLE9BQU8sRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUUvRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxvQkFBb0IsRUFB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LFdBQVcsRUFBQztnQkFRdEMsSUFBSTtzQkFEVixLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJVSxxQkFBcUI7c0JBRHBDLE1BQU07Z0JBTUksU0FBUztzQkFEbkIsS0FBSzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHtBZnRlclZpZXdDaGVja2VkLCBBZnRlclZpZXdJbml0LCBRdWVyeUxpc3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RU1QVFlfUVVFUll9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB0eXBlIHtUdWlBY3RpdmVab25lfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvYWN0aXZlLXpvbmUnO1xuaW1wb3J0IHtUdWlJdGVtfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvaXRlbSc7XG5pbXBvcnQgdHlwZSB7VHVpQ29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnQsIHR1aUlzRWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHt0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlLCB0dWlJc05hdGl2ZUZvY3VzZWR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZm9jdXMnO1xuaW1wb3J0IHt0dWlDbGFtcCwgdHVpVG9JbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWF0aCc7XG5pbXBvcnQge3R1aVB4fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlEcm9wZG93bn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQgdHlwZSB7VHVpU2l6ZUx9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7VHVpQ2hldnJvbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzJztcbmltcG9ydCB7VFVJX01PUkVfV09SRH0gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHR5cGUge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXQsIFBvbHltb3JwaGV1c1RlbXBsYXRlfSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHRhcH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpVGFifSBmcm9tICcuL3RhYi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUVUlfVEFCU19PUFRJT05TfSBmcm9tICcuL3RhYnMub3B0aW9ucyc7XG5pbXBvcnQge1RVSV9UQUJTX1BST1ZJREVSUywgVFVJX1RBQlNfUkVGUkVTSH0gZnJvbSAnLi90YWJzLnByb3ZpZGVycyc7XG5pbXBvcnQge1R1aVRhYnNIb3Jpem9udGFsfSBmcm9tICcuL3RhYnMtaG9yaXpvbnRhbC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLXRhYnMtd2l0aC1tb3JlLCBuYXZbdHVpVGFic1dpdGhNb3JlXScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c091dGxldCxcbiAgICAgICAgUG9seW1vcnBoZXVzVGVtcGxhdGUsXG4gICAgICAgIFR1aURyb3Bkb3duLFxuICAgICAgICBUdWlUYWIsXG4gICAgICAgIFR1aVRhYnNIb3Jpem9udGFsLFxuICAgICAgICBUdWlDaGV2cm9uLFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhYnMtd2l0aC1tb3JlLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3RhYnMtd2l0aC1tb3JlLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFRVSV9UQUJTX1BST1ZJREVSUyxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGFic1dpdGhNb3JlIGltcGxlbWVudHMgQWZ0ZXJWaWV3Q2hlY2tlZCwgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQFZpZXdDaGlsZChUdWlUYWIsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1vcmVCdXR0b24/OiBFbGVtZW50UmVmPEhUTUxCdXR0b25FbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpVGFic0hvcml6b250YWwsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpcj86IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KFRVSV9UQUJTX09QVElPTlMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVmcmVzaCQgPSBpbmplY3QoVFVJX1RBQlNfUkVGUkVTSCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJpdmF0ZSBtYXhJbmRleCA9IEluZmluaXR5O1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihUdWlJdGVtLCB7cmVhZDogVGVtcGxhdGVSZWZ9KVxuICAgIHByb3RlY3RlZCByZWFkb25seSBpdGVtczogUXVlcnlMaXN0PFRlbXBsYXRlUmVmPFJlY29yZDxzdHJpbmcsIHVua25vd24+Pj4gPVxuICAgICAgICBFTVBUWV9RVUVSWTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBtb3JlV29yZCQgPSBpbmplY3QoVFVJX01PUkVfV09SRCk7XG4gICAgcHJvdGVjdGVkIG9wZW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNpemU6IFR1aVNpemVMID0gdGhpcy5vcHRpb25zLnNpemU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtb3JlQ29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRyb3Bkb3duQ29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0PFR1aUFjdGl2ZVpvbmU+PjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHVuZGVybGluZSA9IHRoaXMub3B0aW9ucy51bmRlcmxpbmU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpdGVtc0xpbWl0ID0gdGhpcy5vcHRpb25zLml0ZW1zTGltaXQ7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlSXRlbUluZGV4Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICBwdWJsaWMgYWN0aXZlSXRlbUluZGV4ID0gMDtcblxuICAgIEBJbnB1dCgnYWN0aXZlSXRlbUluZGV4JylcbiAgICBwdWJsaWMgc2V0IGl0ZW1JbmRleChhY3RpdmVJdGVtSW5kZXg6IG51bWJlcikge1xuICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA9IGFjdGl2ZUl0ZW1JbmRleDtcbiAgICAgICAgdGhpcy5tYXhJbmRleCA9IHRoaXMuZ2V0TWF4SW5kZXgoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxhc3RWaXNpYmxlSW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKHRoaXMuaXRlbXNMaW1pdCArIDEgPj0gdGhpcy5pdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm1heEluZGV4O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb2Zmc2V0ID1cbiAgICAgICAgICAgIHRoaXMuaXRlbXNMaW1pdCAtIDEgPiB0aGlzLmFjdGl2ZUl0ZW1JbmRleCB8fCAhdGhpcy5vcHRpb25zLmV4cG9zZUFjdGl2ZVxuICAgICAgICAgICAgICAgID8gMVxuICAgICAgICAgICAgICAgIDogMjtcblxuICAgICAgICByZXR1cm4gTWF0aC5taW4odGhpcy5pdGVtc0xpbWl0IC0gb2Zmc2V0LCB0aGlzLm1heEluZGV4KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlZnJlc2gkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKCkgPT4gdGhpcy5nZXRNYXhJbmRleCgpKSxcbiAgICAgICAgICAgICAgICB0YXAoKCkgPT4gdGhpcy5yZWZyZXNoKCkpLFxuICAgICAgICAgICAgICAgIGZpbHRlcigobWF4SW5kZXgpID0+IHRoaXMubWF4SW5kZXggIT09IG1heEluZGV4KSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG1heEluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5tYXhJbmRleCA9IG1heEluZGV4O1xuICAgICAgICAgICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVmcmVzaCgpO1xuICAgIH1cblxuICAgIC8vIFRPRE86IEltcHJvdmUgcGVyZm9ybWFuY2VcbiAgICBwcm90ZWN0ZWQgZ2V0IHRhYnMoKTogcmVhZG9ubHkgSFRNTEVsZW1lbnRbXSB7XG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tPEhUTUxFbGVtZW50Pih0aGlzLmVsLnF1ZXJ5U2VsZWN0b3JBbGwoJ1t0dWlUYWJdJykpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgYWN0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgICAgICBjb25zdCB7dGFic30gPSB0aGlzO1xuICAgICAgICBjb25zdCBzYWZlQWN0aXZlSW5kZXggPSB0dWlDbGFtcCh0aGlzLmFjdGl2ZUl0ZW1JbmRleCB8fCAwLCAwLCB0YWJzLmxlbmd0aCAtIDIpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZXhwb3NlQWN0aXZlIHx8IHRoaXMubGFzdFZpc2libGVJbmRleCA+PSBzYWZlQWN0aXZlSW5kZXhcbiAgICAgICAgICAgID8gdGFic1tzYWZlQWN0aXZlSW5kZXhdIHx8IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5tb3JlQnV0dG9uPy5uYXRpdmVFbGVtZW50IHx8IG51bGw7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBpc01vcmVBbG9uZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubGFzdFZpc2libGVJbmRleCA8IDAgJiYgIXRoaXMub3B0aW9ucy5leHBvc2VBY3RpdmU7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBpc01vcmVWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXN0VmlzaWJsZUluZGV4IDwgdGhpcy5pdGVtcy5sZW5ndGggLSAxO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaXNNb3JlRm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLm1vcmVCdXR0b24gJiYgdHVpSXNOYXRpdmVGb2N1c2VkKHRoaXMubW9yZUJ1dHRvbi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGlzTW9yZUFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMub3BlbiB8fFxuICAgICAgICAgICAgKCF0aGlzLm9wdGlvbnMuZXhwb3NlQWN0aXZlICYmIHRoaXMubGFzdFZpc2libGVJbmRleCA8IHRoaXMuYWN0aXZlSXRlbUluZGV4KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkFjdGl2ZUl0ZW1JbmRleENoYW5nZShhY3RpdmVJdGVtSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZUl0ZW1JbmRleChhY3RpdmVJdGVtSW5kZXgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkNsaWNrKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZm9jdXNNb3JlKCk7XG4gICAgICAgIHRoaXMudXBkYXRlQWN0aXZlSXRlbUluZGV4KGluZGV4KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25BcnJvd1JpZ2h0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodHVpSXNFbGVtZW50KGV2ZW50LnRhcmdldCkgJiYgdHVpSXNOYXRpdmVGb2N1c2VkKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNNb3JlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25BcnJvd0xlZnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHt0YWJzfSA9IHRoaXM7XG4gICAgICAgIGxldCBpbmRleCA9IHRhYnMubGVuZ3RoIC0gMjtcblxuICAgICAgICB3aGlsZSAoaW5kZXggPj0gMCkge1xuICAgICAgICAgICAgdGFic1tpbmRleF0/LmZvY3VzKCk7XG5cbiAgICAgICAgICAgIGlmICh0dWlJc05hdGl2ZUZvY3VzZWQodGFic1tpbmRleF0pKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbmRleC0tO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uV3JhcHBlckFycm93KFxuICAgICAgICBldmVudDogRXZlbnQsXG4gICAgICAgIHdyYXBwZXI6IEhUTUxFbGVtZW50LFxuICAgICAgICBwcmV2aW91czogYm9vbGVhbixcbiAgICApOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYnV0dG9uOiBIVE1MQnV0dG9uRWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MQnV0dG9uRWxlbWVudDtcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogYnV0dG9uLCByb290OiB3cmFwcGVyLCBwcmV2aW91c30pO1xuXG4gICAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgICAgIHRhcmdldC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGlzT3ZlcmZsb3duKGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGluZGV4ICE9PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCB8fCAhdGhpcy5vcHRpb25zLmV4cG9zZUFjdGl2ZTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2hvdWxkU2hvdyhpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBpbmRleCA+IHRoaXMubGFzdFZpc2libGVJbmRleCAmJiB0aGlzLmlzT3ZlcmZsb3duKGluZGV4KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBtYXJnaW4oKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gJ2wnID8gMjQgOiAxNjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzTW9yZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubW9yZUJ1dHRvbikge1xuICAgICAgICAgICAgdGhpcy5tb3JlQnV0dG9uLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TWF4SW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qge3RhYnMsIGFjdGl2ZUl0ZW1JbmRleCwgbWFyZ2lufSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKHRhYnMubGVuZ3RoIDwgMikge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7ZXhwb3NlQWN0aXZlLCBtaW5Nb3JlV2lkdGh9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICBjb25zdCB7Y2xpZW50V2lkdGh9ID0gdGhpcy5lbDtcbiAgICAgICAgY29uc3QgYWN0aXZlID0gdGFic1thY3RpdmVJdGVtSW5kZXhdO1xuICAgICAgICBjb25zdCBhY3RpdmVXaWR0aCA9IGFjdGl2ZT8uc2Nyb2xsV2lkdGggPz8gMDtcbiAgICAgICAgY29uc3QgbW9yZVdpZHRoID0gTWF0aC5tYXgodGFic1t0YWJzLmxlbmd0aCAtIDFdPy5zY3JvbGxXaWR0aCA/PyAwLCBtaW5Nb3JlV2lkdGgpO1xuICAgICAgICBsZXQgbWF4SW5kZXggPSB0YWJzLmxlbmd0aCAtIDI7XG4gICAgICAgIGxldCB0b3RhbCA9XG4gICAgICAgICAgICB0YWJzLnJlZHVjZSgoYWNjLCB7c2Nyb2xsV2lkdGh9KSA9PiBhY2MgKyBzY3JvbGxXaWR0aCwgMCkgK1xuICAgICAgICAgICAgbWF4SW5kZXggKiBtYXJnaW4gLVxuICAgICAgICAgICAgKHRhYnNbdGFicy5sZW5ndGggLSAxXT8uc2Nyb2xsV2lkdGggPz8gMCk7XG5cbiAgICAgICAgaWYgKE51bWJlci5pc05hTih0b3RhbCkgfHwgdG90YWwgPD0gY2xpZW50V2lkdGgpIHtcbiAgICAgICAgICAgIHJldHVybiBJbmZpbml0eTtcbiAgICAgICAgfVxuXG4gICAgICAgIHdoaWxlIChtYXhJbmRleCkge1xuICAgICAgICAgICAgdG90YWwgLT0gKHRhYnNbbWF4SW5kZXhdPy5zY3JvbGxXaWR0aCA/PyAwKSArIG1hcmdpbjtcbiAgICAgICAgICAgIG1heEluZGV4LS07XG5cbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZURpc3BsYWNlZCA9IGV4cG9zZUFjdGl2ZSAmJiBhY3RpdmVJdGVtSW5kZXggPiBtYXhJbmRleDtcbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZU9mZnNldCA9IGFjdGl2ZURpc3BsYWNlZCA/IGFjdGl2ZVdpZHRoICsgbWFyZ2luIDogMDtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRXaWR0aCA9IHRvdGFsICsgYWN0aXZlT2Zmc2V0ICsgbW9yZVdpZHRoICsgbWFyZ2luO1xuICAgICAgICAgICAgLy8gTmVlZGVkIGZvciBkaWZmZXJlbnQgcm91bmRpbmcgb2YgdmlzaWJsZSBhbmQgaGlkZGVuIGVsZW1lbnRzIHNjcm9sbFdpZHRoXG4gICAgICAgICAgICBjb25zdCBzYWZldHlPZmZzZXQgPSB0dWlUb0ludCh0aGlzLm1heEluZGV4ID09PSBtYXhJbmRleCAtIDEpO1xuXG4gICAgICAgICAgICBpZiAoY3VycmVudFdpZHRoICsgc2FmZXR5T2Zmc2V0IDwgY2xpZW50V2lkdGgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbWF4SW5kZXg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gLTE7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVBY3RpdmVJdGVtSW5kZXgoYWN0aXZlSXRlbUluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pdGVtSW5kZXggPSBhY3RpdmVJdGVtSW5kZXg7XG4gICAgICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4Q2hhbmdlLmVtaXQoYWN0aXZlSXRlbUluZGV4KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZnJlc2goKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtvZmZzZXRMZWZ0ID0gMCwgb2Zmc2V0V2lkdGggPSAwfSA9IHRoaXMuYWN0aXZlRWxlbWVudCB8fCB7fTtcblxuICAgICAgICB0aGlzLmRpcj8ubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS10LWxlZnQnLCB0dWlQeChvZmZzZXRMZWZ0KSk7XG4gICAgICAgIHRoaXMuZGlyPy5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLXQtd2lkdGgnLCB0dWlQeChvZmZzZXRXaWR0aCkpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtcy5jaGFuZ2VzIHwgYXN5bmNcIiAvPlxuPHR1aS10YWJzXG4gICAgY2xhc3M9XCJ0LXRhYnNcIlxuICAgIFthY3RpdmVJdGVtSW5kZXhdPVwiYWN0aXZlSXRlbUluZGV4XCJcbiAgICBbc2l6ZV09XCJzaXplXCJcbiAgICBbdW5kZXJsaW5lXT1cInVuZGVybGluZVwiXG4gICAgKGFjdGl2ZUl0ZW1JbmRleENoYW5nZSk9XCJvbkFjdGl2ZUl0ZW1JbmRleENoYW5nZSgkZXZlbnQpXCJcbiAgICAoa2V5ZG93bi5hcnJvd1JpZ2h0KT1cIm9uQXJyb3dSaWdodCgkZXZlbnQpXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zOyBsZXQgaW5kZXggPSBpbmRleFwiPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdJZj1cImluZGV4IDw9IGxhc3RWaXNpYmxlSW5kZXg7IGVsc2UgaGlkZGVuXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1cIlxuICAgICAgICAvPlxuICAgICAgICA8bmctdGVtcGxhdGUgI2hpZGRlbj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtZmxleFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnQtb3ZlcmZsb3duXT1cImlzT3ZlcmZsb3duKGluZGV4KVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC90dWktdGFicz5cblxuPGJ1dHRvblxuICAgICpuZ0lmPVwibW9yZUNvbnRlbnQ7IGVsc2UgY2hldnJvblwiXG4gICAgdHVpVGFiXG4gICAgY2xhc3M9XCJ0LW1vcmVcIlxuICAgIFtjbGFzcy5fYWN0aXZlXT1cImlzTW9yZUFjdGl2ZVwiXG4gICAgW2NsYXNzLnQtbm8tbWFyZ2luXT1cImlzTW9yZUFsb25lXCJcbiAgICBbY2xhc3MudC1vdmVyZmxvd25dPVwiIWlzTW9yZVZpc2libGVcIlxuICAgIFt0YWJJbmRleF09XCJpc01vcmVGb2N1c2FibGUgPyAwIDogLTFcIlxuICAgIFt0dWlEcm9wZG93bl09XCJkcm9wZG93bkNvbnRlbnQgfHwgZHJvcGRvd25cIlxuICAgIFsodHVpRHJvcGRvd25PcGVuKV09XCJvcGVuXCJcbiAgICAoa2V5ZG93bi5hcnJvd0xlZnQucHJldmVudCk9XCJvbkFycm93TGVmdCgpXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJtb3JlQ29udGVudCBhcyB0ZXh0XCI+XG4gICAgICAgIHt7IHRleHQgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvYnV0dG9uPlxuPG5nLXRlbXBsYXRlICNjaGV2cm9uPlxuICAgIDxidXR0b25cbiAgICAgICAgdHVpQ2hldnJvblxuICAgICAgICB0dWlUYWJcbiAgICAgICAgY2xhc3M9XCJ0LW1vcmVcIlxuICAgICAgICBbY2xhc3MuX2FjdGl2ZV09XCJpc01vcmVBY3RpdmVcIlxuICAgICAgICBbY2xhc3MudC1uby1tYXJnaW5dPVwiaXNNb3JlQWxvbmVcIlxuICAgICAgICBbY2xhc3MudC1vdmVyZmxvd25dPVwiIWlzTW9yZVZpc2libGVcIlxuICAgICAgICBbdGFiSW5kZXhdPVwiaXNNb3JlRm9jdXNhYmxlID8gMCA6IC0xXCJcbiAgICAgICAgW3R1aURyb3Bkb3duXT1cImRyb3Bkb3duQ29udGVudCB8fCBkcm9wZG93blwiXG4gICAgICAgIFsodHVpRHJvcGRvd25PcGVuKV09XCJvcGVuXCJcbiAgICAgICAgKGtleWRvd24uYXJyb3dMZWZ0LnByZXZlbnQpPVwib25BcnJvd0xlZnQoKVwiXG4gICAgPlxuICAgICAgICB7eyBtb3JlV29yZCQgfCBhc3luYyB9fVxuICAgIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjZHJvcGRvd24+XG4gICAgPGRpdlxuICAgICAgICAjZWxlbWVudFxuICAgICAgICBjbGFzcz1cInQtZHJvcGRvd25cIlxuICAgICAgICBbYXR0ci5kYXRhLXNpemVdPVwic2l6ZVwiXG4gICAgICAgIChrZXlkb3duLmFycm93RG93bi5wcmV2ZW50KT1cIm9uV3JhcHBlckFycm93KCRldmVudCwgZWxlbWVudCwgZmFsc2UpXCJcbiAgICAgICAgKGtleWRvd24uYXJyb3dVcC5wcmV2ZW50KT1cIm9uV3JhcHBlckFycm93KCRldmVudCwgZWxlbWVudCwgdHJ1ZSlcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpbmRleCA9IGluZGV4XCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1kcm9wZG93bi1pdGVtXCJcbiAgICAgICAgICAgICh0dWktdGFiLWFjdGl2YXRlKT1cIm9uQ2xpY2soaW5kZXgpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpuZ0lmPVwic2hvdWxkU2hvdyhpbmRleClcIlxuICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy13aXRoLW1vcmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdGFicy90YWJzLXdpdGgtbW9yZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy90YWJzL3RhYnMtd2l0aC1tb3JlLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVwRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFFdEQsT0FBTyxFQUFDLGdCQUFnQixFQUFFLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxzQkFBc0IsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JGLE9BQU8sRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFL0QsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0Is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QkFVN0IsS0FBSztzQkFEdkIsZUFBZTt1QkFBQyxPQUFPLEVBQUUsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFDO2dCQVF0QyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsV0FBVztzQkFEakIsS0FBSztnQkFJQyxlQUFlO3NCQURyQixLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQUlVLHFCQUFxQjtzQkFEcEMsTUFBTTtnQkFNSSxTQUFTO3NCQURuQixLQUFLO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge0FmdGVyVmlld0NoZWNrZWQsIEFmdGVyVmlld0luaXQsIFF1ZXJ5TGlzdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFTVBUWV9RVUVSWX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHR5cGUge1R1aUFjdGl2ZVpvbmV9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9hY3RpdmUtem9uZSc7XG5pbXBvcnQge1R1aUl0ZW19IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9pdGVtJztcbmltcG9ydCB0eXBlIHtUdWlDb250ZXh0fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudCwgdHVpSXNFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUdldENsb3Nlc3RGb2N1c2FibGUsIHR1aUlzTmF0aXZlRm9jdXNlZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cyc7XG5pbXBvcnQge3R1aUNsYW1wLCB0dWlUb0ludH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcbmltcG9ydCB7dHVpUHh9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aU9wdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUdWlEcm9wZG93bn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQgdHlwZSB7VHVpU2l6ZUx9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7VHVpQ2hldnJvbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzJztcbmltcG9ydCB7VFVJX01PUkVfV09SRH0gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHR5cGUge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXQsIFBvbHltb3JwaGV1c1RlbXBsYXRlfSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHRhcH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpVGFifSBmcm9tICcuL3RhYi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUVUlfVEFCU19PUFRJT05TfSBmcm9tICcuL3RhYnMub3B0aW9ucyc7XG5pbXBvcnQge1RVSV9UQUJTX1BST1ZJREVSUywgVFVJX1RBQlNfUkVGUkVTSH0gZnJvbSAnLi90YWJzLnByb3ZpZGVycyc7XG5pbXBvcnQge1R1aVRhYnNIb3Jpem9udGFsfSBmcm9tICcuL3RhYnMtaG9yaXpvbnRhbC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLXRhYnMtd2l0aC1tb3JlLCBuYXZbdHVpVGFic1dpdGhNb3JlXScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c091dGxldCxcbiAgICAgICAgUG9seW1vcnBoZXVzVGVtcGxhdGUsXG4gICAgICAgIFR1aUNoZXZyb24sXG4gICAgICAgIFR1aURyb3Bkb3duLFxuICAgICAgICBUdWlPcHRpb24sXG4gICAgICAgIFR1aVRhYixcbiAgICAgICAgVHVpVGFic0hvcml6b250YWwsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFicy13aXRoLW1vcmUudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFicy13aXRoLW1vcmUuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogVFVJX1RBQlNfUFJPVklERVJTLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUYWJzV2l0aE1vcmUgaW1wbGVtZW50cyBBZnRlclZpZXdDaGVja2VkLCBBZnRlclZpZXdJbml0IHtcbiAgICBAVmlld0NoaWxkKFR1aVRhYiwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgbW9yZUJ1dHRvbj86IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZChUdWlUYWJzSG9yaXpvbnRhbCwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlyPzogRWxlbWVudFJlZjxIVE1MQnV0dG9uRWxlbWVudD47XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX1RBQlNfT1BUSU9OUyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSByZWZyZXNoJCA9IGluamVjdChUVUlfVEFCU19SRUZSRVNIKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIG1heEluZGV4ID0gSW5maW5pdHk7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFR1aUl0ZW0sIHtyZWFkOiBUZW1wbGF0ZVJlZn0pXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGl0ZW1zOiBRdWVyeUxpc3Q8VGVtcGxhdGVSZWY8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+PiA9XG4gICAgICAgIEVNUFRZX1FVRVJZO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1vcmVXb3JkJCA9IGluamVjdChUVUlfTU9SRV9XT1JEKTtcbiAgICBwcm90ZWN0ZWQgb3BlbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2l6ZTogVHVpU2l6ZUwgPSB0aGlzLm9wdGlvbnMuc2l6ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1vcmVDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZHJvcGRvd25Db250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHQ8VHVpQWN0aXZlWm9uZT4+O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdW5kZXJsaW5lID0gdGhpcy5vcHRpb25zLnVuZGVybGluZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGl0ZW1zTGltaXQgPSB0aGlzLm9wdGlvbnMuaXRlbXNMaW1pdDtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBhY3RpdmVJdGVtSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIHB1YmxpYyBhY3RpdmVJdGVtSW5kZXggPSAwO1xuXG4gICAgQElucHV0KCdhY3RpdmVJdGVtSW5kZXgnKVxuICAgIHB1YmxpYyBzZXQgaXRlbUluZGV4KGFjdGl2ZUl0ZW1JbmRleDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4ID0gYWN0aXZlSXRlbUluZGV4O1xuICAgICAgICB0aGlzLm1heEluZGV4ID0gdGhpcy5nZXRNYXhJbmRleCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbGFzdFZpc2libGVJbmRleCgpOiBudW1iZXIge1xuICAgICAgICBpZiAodGhpcy5pdGVtc0xpbWl0ICsgMSA+PSB0aGlzLml0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubWF4SW5kZXg7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBvZmZzZXQgPVxuICAgICAgICAgICAgdGhpcy5pdGVtc0xpbWl0IC0gMSA+IHRoaXMuYWN0aXZlSXRlbUluZGV4IHx8ICF0aGlzLm9wdGlvbnMuZXhwb3NlQWN0aXZlXG4gICAgICAgICAgICAgICAgPyAxXG4gICAgICAgICAgICAgICAgOiAyO1xuXG4gICAgICAgIHJldHVybiBNYXRoLm1pbih0aGlzLml0ZW1zTGltaXQgLSBvZmZzZXQsIHRoaXMubWF4SW5kZXgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVmcmVzaCRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgoKSA9PiB0aGlzLmdldE1heEluZGV4KCkpLFxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PiB0aGlzLnJlZnJlc2goKSksXG4gICAgICAgICAgICAgICAgZmlsdGVyKChtYXhJbmRleCkgPT4gdGhpcy5tYXhJbmRleCAhPT0gbWF4SW5kZXgpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobWF4SW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1heEluZGV4ID0gbWF4SW5kZXg7XG4gICAgICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoKCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETzogSW1wcm92ZSBwZXJmb3JtYW5jZVxuICAgIHByb3RlY3RlZCBnZXQgdGFicygpOiByZWFkb25seSBIVE1MRWxlbWVudFtdIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb208SFRNTEVsZW1lbnQ+KHRoaXMuZWwucXVlcnlTZWxlY3RvckFsbCgnW3R1aVRhYl0nKSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBhY3RpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHt0YWJzfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IHNhZmVBY3RpdmVJbmRleCA9IHR1aUNsYW1wKHRoaXMuYWN0aXZlSXRlbUluZGV4IHx8IDAsIDAsIHRhYnMubGVuZ3RoIC0gMik7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5leHBvc2VBY3RpdmUgfHwgdGhpcy5sYXN0VmlzaWJsZUluZGV4ID49IHNhZmVBY3RpdmVJbmRleFxuICAgICAgICAgICAgPyB0YWJzW3NhZmVBY3RpdmVJbmRleF0gfHwgbnVsbFxuICAgICAgICAgICAgOiB0aGlzLm1vcmVCdXR0b24/Lm5hdGl2ZUVsZW1lbnQgfHwgbnVsbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGlzTW9yZUFsb25lKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXN0VmlzaWJsZUluZGV4IDwgMCAmJiAhdGhpcy5vcHRpb25zLmV4cG9zZUFjdGl2ZTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGlzTW9yZVZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmxhc3RWaXNpYmxlSW5kZXggPCB0aGlzLml0ZW1zLmxlbmd0aCAtIDE7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBpc01vcmVGb2N1c2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMubW9yZUJ1dHRvbiAmJiB0dWlJc05hdGl2ZUZvY3VzZWQodGhpcy5tb3JlQnV0dG9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaXNNb3JlQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5vcGVuIHx8XG4gICAgICAgICAgICAoIXRoaXMub3B0aW9ucy5leHBvc2VBY3RpdmUgJiYgdGhpcy5sYXN0VmlzaWJsZUluZGV4IDwgdGhpcy5hY3RpdmVJdGVtSW5kZXgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQWN0aXZlSXRlbUluZGV4Q2hhbmdlKGFjdGl2ZUl0ZW1JbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlQWN0aXZlSXRlbUluZGV4KGFjdGl2ZUl0ZW1JbmRleCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ2xpY2soaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5mb2N1c01vcmUoKTtcbiAgICAgICAgdGhpcy51cGRhdGVBY3RpdmVJdGVtSW5kZXgoaW5kZXgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkFycm93UmlnaHQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0dWlJc0VsZW1lbnQoZXZlbnQudGFyZ2V0KSAmJiB0dWlJc05hdGl2ZUZvY3VzZWQoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c01vcmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkFycm93TGVmdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge3RhYnN9ID0gdGhpcztcbiAgICAgICAgbGV0IGluZGV4ID0gdGFicy5sZW5ndGggLSAyO1xuXG4gICAgICAgIHdoaWxlIChpbmRleCA+PSAwKSB7XG4gICAgICAgICAgICB0YWJzW2luZGV4XT8uZm9jdXMoKTtcblxuICAgICAgICAgICAgaWYgKHR1aUlzTmF0aXZlRm9jdXNlZCh0YWJzW2luZGV4XSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGluZGV4LS07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25XcmFwcGVyQXJyb3coXG4gICAgICAgIGV2ZW50OiBFdmVudCxcbiAgICAgICAgd3JhcHBlcjogSFRNTEVsZW1lbnQsXG4gICAgICAgIHByZXZpb3VzOiBib29sZWFuLFxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCBidXR0b246IEhUTUxCdXR0b25FbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxCdXR0b25FbGVtZW50O1xuICAgICAgICBjb25zdCB0YXJnZXQgPSB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtpbml0aWFsOiBidXR0b24sIHJvb3Q6IHdyYXBwZXIsIHByZXZpb3VzfSk7XG5cbiAgICAgICAgaWYgKHRhcmdldCkge1xuICAgICAgICAgICAgdGFyZ2V0LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaXNPdmVyZmxvd24oaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gaW5kZXggIT09IHRoaXMuYWN0aXZlSXRlbUluZGV4IHx8ICF0aGlzLm9wdGlvbnMuZXhwb3NlQWN0aXZlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzaG91bGRTaG93KGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGluZGV4ID4gdGhpcy5sYXN0VmlzaWJsZUluZGV4ICYmIHRoaXMuaXNPdmVyZmxvd24oaW5kZXgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IG1hcmdpbigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5zaXplID09PSAnbCcgPyAyNCA6IDE2O1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNNb3JlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5tb3JlQnV0dG9uKSB7XG4gICAgICAgICAgICB0aGlzLm1vcmVCdXR0b24ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRNYXhJbmRleCgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7dGFicywgYWN0aXZlSXRlbUluZGV4LCBtYXJnaW59ID0gdGhpcztcblxuICAgICAgICBpZiAodGFicy5sZW5ndGggPCAyKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtleHBvc2VBY3RpdmUsIG1pbk1vcmVXaWR0aH0gPSB0aGlzLm9wdGlvbnM7XG4gICAgICAgIGNvbnN0IHtjbGllbnRXaWR0aH0gPSB0aGlzLmVsO1xuICAgICAgICBjb25zdCBhY3RpdmUgPSB0YWJzW2FjdGl2ZUl0ZW1JbmRleF07XG4gICAgICAgIGNvbnN0IGFjdGl2ZVdpZHRoID0gYWN0aXZlPy5zY3JvbGxXaWR0aCA/PyAwO1xuICAgICAgICBjb25zdCBtb3JlV2lkdGggPSBNYXRoLm1heCh0YWJzW3RhYnMubGVuZ3RoIC0gMV0/LnNjcm9sbFdpZHRoID8/IDAsIG1pbk1vcmVXaWR0aCk7XG4gICAgICAgIGxldCBtYXhJbmRleCA9IHRhYnMubGVuZ3RoIC0gMjtcbiAgICAgICAgbGV0IHRvdGFsID1cbiAgICAgICAgICAgIHRhYnMucmVkdWNlKChhY2MsIHtzY3JvbGxXaWR0aH0pID0+IGFjYyArIHNjcm9sbFdpZHRoLCAwKSArXG4gICAgICAgICAgICBtYXhJbmRleCAqIG1hcmdpbiAtXG4gICAgICAgICAgICAodGFic1t0YWJzLmxlbmd0aCAtIDFdPy5zY3JvbGxXaWR0aCA/PyAwKTtcblxuICAgICAgICBpZiAoTnVtYmVyLmlzTmFOKHRvdGFsKSB8fCB0b3RhbCA8PSBjbGllbnRXaWR0aCkge1xuICAgICAgICAgICAgcmV0dXJuIEluZmluaXR5O1xuICAgICAgICB9XG5cbiAgICAgICAgd2hpbGUgKG1heEluZGV4KSB7XG4gICAgICAgICAgICB0b3RhbCAtPSAodGFic1ttYXhJbmRleF0/LnNjcm9sbFdpZHRoID8/IDApICsgbWFyZ2luO1xuICAgICAgICAgICAgbWF4SW5kZXgtLTtcblxuICAgICAgICAgICAgY29uc3QgYWN0aXZlRGlzcGxhY2VkID0gZXhwb3NlQWN0aXZlICYmIGFjdGl2ZUl0ZW1JbmRleCA+IG1heEluZGV4O1xuICAgICAgICAgICAgY29uc3QgYWN0aXZlT2Zmc2V0ID0gYWN0aXZlRGlzcGxhY2VkID8gYWN0aXZlV2lkdGggKyBtYXJnaW4gOiAwO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFdpZHRoID0gdG90YWwgKyBhY3RpdmVPZmZzZXQgKyBtb3JlV2lkdGggKyBtYXJnaW47XG4gICAgICAgICAgICAvLyBOZWVkZWQgZm9yIGRpZmZlcmVudCByb3VuZGluZyBvZiB2aXNpYmxlIGFuZCBoaWRkZW4gZWxlbWVudHMgc2Nyb2xsV2lkdGhcbiAgICAgICAgICAgIGNvbnN0IHNhZmV0eU9mZnNldCA9IHR1aVRvSW50KHRoaXMubWF4SW5kZXggPT09IG1heEluZGV4IC0gMSk7XG5cbiAgICAgICAgICAgIGlmIChjdXJyZW50V2lkdGggKyBzYWZldHlPZmZzZXQgPCBjbGllbnRXaWR0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBtYXhJbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAtMTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUFjdGl2ZUl0ZW1JbmRleChhY3RpdmVJdGVtSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLml0ZW1JbmRleCA9IGFjdGl2ZUl0ZW1JbmRleDtcbiAgICAgICAgdGhpcy5hY3RpdmVJdGVtSW5kZXhDaGFuZ2UuZW1pdChhY3RpdmVJdGVtSW5kZXgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVmcmVzaCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge29mZnNldExlZnQgPSAwLCBvZmZzZXRXaWR0aCA9IDB9ID0gdGhpcy5hY3RpdmVFbGVtZW50IHx8IHt9O1xuXG4gICAgICAgIHRoaXMuZGlyPy5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLXQtbGVmdCcsIHR1aVB4KG9mZnNldExlZnQpKTtcbiAgICAgICAgdGhpcy5kaXI/Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tdC13aWR0aCcsIHR1aVB4KG9mZnNldFdpZHRoKSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW1zLmNoYW5nZXMgfCBhc3luY1wiIC8+XG48dHVpLXRhYnNcbiAgICBjbGFzcz1cInQtdGFic1wiXG4gICAgW2FjdGl2ZUl0ZW1JbmRleF09XCJhY3RpdmVJdGVtSW5kZXhcIlxuICAgIFtzaXplXT1cInNpemVcIlxuICAgIFt1bmRlcmxpbmVdPVwidW5kZXJsaW5lXCJcbiAgICAoYWN0aXZlSXRlbUluZGV4Q2hhbmdlKT1cIm9uQWN0aXZlSXRlbUluZGV4Q2hhbmdlKCRldmVudClcIlxuICAgIChrZXlkb3duLmFycm93UmlnaHQpPVwib25BcnJvd1JpZ2h0KCRldmVudClcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpbmRleCA9IGluZGV4XCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ0lmPVwiaW5kZXggPD0gbGFzdFZpc2libGVJbmRleDsgZWxzZSBoaWRkZW5cIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjaGlkZGVuPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1mbGV4XCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1vdmVyZmxvd25dPVwiaXNPdmVyZmxvd24oaW5kZXgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1cIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG48L3R1aS10YWJzPlxuXG48YnV0dG9uXG4gICAgKm5nSWY9XCJtb3JlQ29udGVudDsgZWxzZSBjaGV2cm9uXCJcbiAgICB0dWlUYWJcbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cInQtbW9yZVwiXG4gICAgW2NsYXNzLl9hY3RpdmVdPVwiaXNNb3JlQWN0aXZlXCJcbiAgICBbY2xhc3MudC1uby1tYXJnaW5dPVwiaXNNb3JlQWxvbmVcIlxuICAgIFtjbGFzcy50LW92ZXJmbG93bl09XCIhaXNNb3JlVmlzaWJsZVwiXG4gICAgW3RhYkluZGV4XT1cImlzTW9yZUZvY3VzYWJsZSA/IDAgOiAtMVwiXG4gICAgW3R1aURyb3Bkb3duXT1cImRyb3Bkb3duQ29udGVudCB8fCBkcm9wZG93blwiXG4gICAgWyh0dWlEcm9wZG93bk9wZW4pXT1cIm9wZW5cIlxuICAgIChrZXlkb3duLmFycm93TGVmdC5wcmV2ZW50KT1cIm9uQXJyb3dMZWZ0KClcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cIm1vcmVDb250ZW50IGFzIHRleHRcIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9idXR0b24+XG48bmctdGVtcGxhdGUgI2NoZXZyb24+XG4gICAgPGJ1dHRvblxuICAgICAgICB0dWlDaGV2cm9uXG4gICAgICAgIHR1aVRhYlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJ0LW1vcmVcIlxuICAgICAgICBbY2xhc3MuX2FjdGl2ZV09XCJpc01vcmVBY3RpdmVcIlxuICAgICAgICBbY2xhc3MudC1uby1tYXJnaW5dPVwiaXNNb3JlQWxvbmVcIlxuICAgICAgICBbY2xhc3MudC1vdmVyZmxvd25dPVwiIWlzTW9yZVZpc2libGVcIlxuICAgICAgICBbdGFiSW5kZXhdPVwiaXNNb3JlRm9jdXNhYmxlID8gMCA6IC0xXCJcbiAgICAgICAgW3R1aURyb3Bkb3duXT1cImRyb3Bkb3duQ29udGVudCB8fCBkcm9wZG93blwiXG4gICAgICAgIFsodHVpRHJvcGRvd25PcGVuKV09XCJvcGVuXCJcbiAgICAgICAgKGtleWRvd24uYXJyb3dMZWZ0LnByZXZlbnQpPVwib25BcnJvd0xlZnQoKVwiXG4gICAgPlxuICAgICAgICB7eyBtb3JlV29yZCQgfCBhc3luYyB9fVxuICAgIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjZHJvcGRvd24+XG4gICAgPGRpdlxuICAgICAgICAjZWxlbWVudFxuICAgICAgICBjbGFzcz1cInQtZHJvcGRvd25cIlxuICAgICAgICBbYXR0ci5kYXRhLXNpemVdPVwic2l6ZVwiXG4gICAgICAgIChrZXlkb3duLmFycm93RG93bi5wcmV2ZW50KT1cIm9uV3JhcHBlckFycm93KCRldmVudCwgZWxlbWVudCwgZmFsc2UpXCJcbiAgICAgICAgKGtleWRvd24uYXJyb3dVcC5wcmV2ZW50KT1cIm9uV3JhcHBlckFycm93KCRldmVudCwgZWxlbWVudCwgdHJ1ZSlcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpbmRleCA9IGluZGV4XCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1kcm9wZG93bi1pdGVtXCJcbiAgICAgICAgICAgICh0dWktdGFiLWFjdGl2YXRlKT1cIm9uQ2xpY2soaW5kZXgpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpuZ0lmPVwic2hvdWxkU2hvdyhpbmRleClcIlxuICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -2,6 +2,7 @@ import { isPlatformBrowser } from '@angular/common';
2
2
  import { inject, Injectable, PLATFORM_ID } from '@angular/core';
3
3
  import { MutationObserverService } from '@ng-web-apis/mutation-observer';
4
4
  import { ResizeObserverService } from '@ng-web-apis/resize-observer';
5
+ import { tuiZonefreeScheduler } from '@taiga-ui/cdk/observables';
5
6
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
6
7
  import { tuiArrayShallowEquals, tuiPx } from '@taiga-ui/cdk/utils/miscellaneous';
7
8
  import { BehaviorSubject, combineLatest, debounceTime, distinctUntilChanged, map, startWith, Subscription, } from 'rxjs';
@@ -18,7 +19,7 @@ class TuiTileService {
18
19
  this.offset$.pipe(distinctUntilChanged(tuiArrayShallowEquals)),
19
20
  inject(ResizeObserverService).pipe(startWith(null)),
20
21
  inject(MutationObserverService).pipe(startWith(null)),
21
- this.tiles.order$.pipe(debounceTime(0)),
22
+ this.tiles.order$.pipe(debounceTime(0, tuiZonefreeScheduler())),
22
23
  ]).pipe(map(([offset]) => offset));
23
24
  }
24
25
  init(element) {
@@ -82,4 +83,4 @@ export { TuiTileService };
82
83
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTileService, decorators: [{
83
84
  type: Injectable
84
85
  }] });
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdGlsZXMvdGlsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRWxELE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMscUJBQXFCLEVBQUUsS0FBSyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFFL0UsT0FBTyxFQUNILGVBQWUsRUFDZixhQUFhLEVBQ2IsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixHQUFHLEVBQ0gsU0FBUyxFQUNULFlBQVksR0FDZixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1CQUFtQixDQUFDOztBQUVwRCxNQUNhLGNBQWM7SUFEM0I7UUFFcUIsY0FBUyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ25ELE9BQUUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLFVBQUssR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNsQyxRQUFHLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6QixZQUFPLEdBQUcsSUFBSSxlQUFlLENBQTRCLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDckUsY0FBUyxHQUEwQyxhQUFhLENBQUM7WUFDOUUsSUFBSSxDQUFDLE9B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QUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU8sV0FBVyxDQUFDLE9BQW9CLEVBQUUsQ0FBQyxJQUFJLENBQTRCO1FBQ3ZFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUUvQyxPQUFPO1NBQ1Y7UUFFRCxNQUFNLEVBQUMsS0FBSyxFQUFDLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUU3QyxLQUFLLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzNELEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7K0dBOUVRLGNBQWM7bUhBQWQsY0FBYzs7U0FBZCxjQUFjOzRGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2lzUGxhdGZvcm1Ccm93c2VyfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge09uRGVzdHJveX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2luamVjdCwgSW5qZWN0YWJsZSwgUExBVEZPUk1fSUR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNdXRhdGlvbk9ic2VydmVyU2VydmljZX0gZnJvbSAnQG5nLXdlYi1hcGlzL211dGF0aW9uLW9ic2VydmVyJztcbmltcG9ydCB7UmVzaXplT2JzZXJ2ZXJTZXJ2aWNlfSBmcm9tICdAbmctd2ViLWFwaXMvcmVzaXplLW9ic2VydmVyJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHt0dWlBcnJheVNoYWxsb3dFcXVhbHMsIHR1aVB4fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHR5cGUge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgICBCZWhhdmlvclN1YmplY3QsXG4gICAgY29tYmluZUxhdGVzdCxcbiAgICBkZWJvdW5jZVRpbWUsXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgbWFwLFxuICAgIHN0YXJ0V2l0aCxcbiAgICBTdWJzY3JpcHRpb24sXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1R1aVRpbGVzQ29tcG9uZW50fSBmcm9tICcuL3RpbGVzLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUdWlUaWxlU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0Jyb3dzZXIgPSBpc1BsYXRmb3JtQnJvd3NlcihpbmplY3QoUExBVEZPUk1fSUQpKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGlsZXMgPSBpbmplY3QoVHVpVGlsZXNDb21wb25lbnQpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgb2Zmc2V0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8cmVhZG9ubHkgW251bWJlciwgbnVtYmVyXT4oW05hTiwgTmFOXSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBwb3NpdGlvbiQ6IE9ic2VydmFibGU8cmVhZG9ubHkgW251bWJlciwgbnVtYmVyXT4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgdGhpcy5vZmZzZXQkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQodHVpQXJyYXlTaGFsbG93RXF1YWxzKSksXG4gICAgICAgIGluamVjdChSZXNpemVPYnNlcnZlclNlcnZpY2UpLnBpcGUoc3RhcnRXaXRoKG51bGwpKSxcbiAgICAgICAgaW5qZWN0KE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlKS5waXBlKHN0YXJ0V2l0aChudWxsKSksXG4gICAgICAgIHRoaXMudGlsZXMub3JkZXIkLnBpcGUoZGVib3VuY2VUaW1lKDApKSxcbiAgICBdKS5waXBlKG1hcCgoW29mZnNldF0pID0+IG9mZnNldCkpO1xuXG4gICAgcHVibGljIGluaXQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNCcm93c2VyKSB7XG4gICAgICAgICAgICB0aGlzLnN1Yi5hZGQoXG4gICAgICAgICAgICAgICAgdGhpcy5wb3NpdGlvbiQuc3Vic2NyaWJlKChvZmZzZXQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRQb3NpdGlvbihlbGVtZW50LCBvZmZzZXQpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFJlY3QoZWxlbWVudCwgb2Zmc2V0KTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVsLnN0eWxlLnNldFByb3BlcnR5KCdwb3NpdGlvbicsICdyZWxhdGl2ZScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldE9mZnNldChvZmZzZXQ6IHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vZmZzZXQkLm5leHQob2Zmc2V0KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSZWN0KFtsZWZ0LCB0b3BdOiByZWFkb25seSBbbnVtYmVyLCBudW1iZXJdKTogRE9NUmVjdCB7XG4gICAgICAgIGNvbnN0IGVsVG9wID0gTnVtYmVyLmlzTmFOKHRvcCkgPyB0aGlzLmVsLm9mZnNldFRvcCA6IHRvcDtcbiAgICAgICAgY29uc3QgZWxMZWZ0ID0gTnVtYmVyLmlzTmFOKGxlZnQpID8gdGhpcy5lbC5vZmZzZXRMZWZ0IDogbGVmdDtcblxuICAgICAgICBjb25zdCByZWN0ID0ge1xuICAgICAgICAgICAgdG9wOiBlbFRvcCxcbiAgICAgICAgICAgIGxlZnQ6IGVsTGVmdCxcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLmVsLmNsaWVudFdpZHRoLFxuICAgICAgICAgICAgaGVpZ2h0OiB0aGlzLmVsLmNsaWVudEhlaWdodCxcbiAgICAgICAgICAgIHJpZ2h0OiBOYU4sXG4gICAgICAgICAgICBib3R0b206IE5hTixcbiAgICAgICAgICAgIHk6IGVsVG9wLFxuICAgICAgICAgICAgeDogZWxMZWZ0LFxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5yZWN0LFxuICAgICAgICAgICAgdG9KU09OOiAoKSA9PiBKU09OLnN0cmluZ2lmeShyZWN0KSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFJlY3Qoe3N0eWxlfTogSFRNTEVsZW1lbnQsIG9mZnNldDogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7dG9wLCBsZWZ0LCB3aWR0aCwgaGVpZ2h0fSA9IHRoaXMuZ2V0UmVjdChvZmZzZXQpO1xuXG4gICAgICAgIHN0eWxlLnRvcCA9IHR1aVB4KHRvcCk7XG4gICAgICAgIHN0eWxlLmxlZnQgPSB0dWlQeChsZWZ0KTtcbiAgICAgICAgc3R5bGUud2lkdGggPSB0dWlQeCh3aWR0aCk7XG4gICAgICAgIHN0eWxlLmhlaWdodCA9IHR1aVB4KGhlaWdodCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRQb3NpdGlvbihlbGVtZW50OiBIVE1MRWxlbWVudCwgW2xlZnRdOiByZWFkb25seSBbbnVtYmVyLCBudW1iZXJdKTogdm9pZCB7XG4gICAgICAgIGlmICghTnVtYmVyLmlzTmFOKGxlZnQpKSB7XG4gICAgICAgICAgICBlbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdwb3NpdGlvbicsICdmaXhlZCcpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7c3R5bGV9ID0gZWxlbWVudDtcbiAgICAgICAgY29uc3QgcmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLmVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIHN0eWxlLnJlbW92ZVByb3BlcnR5KCdwb3NpdGlvbicpO1xuICAgICAgICBzdHlsZS50b3AgPSB0dWlQeChyZWN0LnRvcCAtIGhvc3QudG9wICsgdGhpcy5lbC5vZmZzZXRUb3ApO1xuICAgICAgICBzdHlsZS5sZWZ0ID0gdHVpUHgocmVjdC5sZWZ0IC0gaG9zdC5sZWZ0ICsgdGhpcy5lbC5vZmZzZXRMZWZ0KTtcbiAgICB9XG59XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdGlsZXMvdGlsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFrQixXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDOUUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFDLHFCQUFxQixFQUFFLEtBQUssRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRS9FLE9BQU8sRUFDSCxlQUFlLEVBQ2YsYUFBYSxFQUNiLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsR0FBRyxFQUNILFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFcEQsTUFDYSxjQUFjO0lBRDNCO1FBRXFCLGNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNuRCxPQUFFLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixVQUFLLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbEMsUUFBRyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDekIsWUFBTyxHQUFHLElBQUksZUFBZSxDQUE0QixDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFD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LEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU8sV0FBVyxDQUFDLE9BQW9CLEVBQUUsQ0FBQyxJQUFJLENBQTRCO1FBQ3ZFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUUvQyxPQUFPO1NBQ1Y7UUFFRCxNQUFNLEVBQUMsS0FBSyxFQUFDLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUU3QyxLQUFLLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzNELEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7K0dBOUVRLGNBQWM7bUhBQWQsY0FBYzs7U0FBZCxjQUFjOzRGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2lzUGxhdGZvcm1Ccm93c2VyfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtpbmplY3QsIEluamVjdGFibGUsIHR5cGUgT25EZXN0cm95LCBQTEFURk9STV9JRH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge011dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlfSBmcm9tICdAbmctd2ViLWFwaXMvbXV0YXRpb24tb2JzZXJ2ZXInO1xuaW1wb3J0IHtSZXNpemVPYnNlcnZlclNlcnZpY2V9IGZyb20gJ0BuZy13ZWItYXBpcy9yZXNpemUtb2JzZXJ2ZXInO1xuaW1wb3J0IHt0dWlab25lZnJlZVNjaGVkdWxlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7dHVpQXJyYXlTaGFsbG93RXF1YWxzLCB0dWlQeH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgQmVoYXZpb3JTdWJqZWN0LFxuICAgIGNvbWJpbmVMYXRlc3QsXG4gICAgZGVib3VuY2VUaW1lLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICAgIG1hcCxcbiAgICBzdGFydFdpdGgsXG4gICAgU3Vic2NyaXB0aW9uLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlUaWxlc0NvbXBvbmVudH0gZnJvbSAnLi90aWxlcy5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHVpVGlsZVNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNCcm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIoaW5qZWN0KFBMQVRGT1JNX0lEKSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRpbGVzID0gaW5qZWN0KFR1aVRpbGVzQ29tcG9uZW50KTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN1YiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9mZnNldCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0+KFtOYU4sIE5hTl0pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcG9zaXRpb24kOiBPYnNlcnZhYmxlPHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0+ID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMub2Zmc2V0JC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKHR1aUFycmF5U2hhbGxvd0VxdWFscykpLFxuICAgICAgICBpbmplY3QoUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlKS5waXBlKHN0YXJ0V2l0aChudWxsKSksXG4gICAgICAgIGluamVjdChNdXRhdGlvbk9ic2VydmVyU2VydmljZSkucGlwZShzdGFydFdpdGgobnVsbCkpLFxuICAgICAgICB0aGlzLnRpbGVzLm9yZGVyJC5waXBlKGRlYm91bmNlVGltZSgwLCB0dWlab25lZnJlZVNjaGVkdWxlcigpKSksXG4gICAgXSkucGlwZShtYXAoKFtvZmZzZXRdKSA9PiBvZmZzZXQpKTtcblxuICAgIHB1YmxpYyBpbml0KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzQnJvd3Nlcikge1xuICAgICAgICAgICAgdGhpcy5zdWIuYWRkKFxuICAgICAgICAgICAgICAgIHRoaXMucG9zaXRpb24kLnN1YnNjcmliZSgob2Zmc2V0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0UG9zaXRpb24oZWxlbWVudCwgb2Zmc2V0KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRSZWN0KGVsZW1lbnQsIG9mZnNldCk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5lbC5zdHlsZS5zZXRQcm9wZXJ0eSgncG9zaXRpb24nLCAncmVsYXRpdmUnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzZXRPZmZzZXQob2Zmc2V0OiByZWFkb25seSBbbnVtYmVyLCBudW1iZXJdKTogdm9pZCB7XG4gICAgICAgIHRoaXMub2Zmc2V0JC5uZXh0KG9mZnNldCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UmVjdChbbGVmdCwgdG9wXTogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSk6IERPTVJlY3Qge1xuICAgICAgICBjb25zdCBlbFRvcCA9IE51bWJlci5pc05hTih0b3ApID8gdGhpcy5lbC5vZmZzZXRUb3AgOiB0b3A7XG4gICAgICAgIGNvbnN0IGVsTGVmdCA9IE51bWJlci5pc05hTihsZWZ0KSA/IHRoaXMuZWwub2Zmc2V0TGVmdCA6IGxlZnQ7XG5cbiAgICAgICAgY29uc3QgcmVjdCA9IHtcbiAgICAgICAgICAgIHRvcDogZWxUb3AsXG4gICAgICAgICAgICBsZWZ0OiBlbExlZnQsXG4gICAgICAgICAgICB3aWR0aDogdGhpcy5lbC5jbGllbnRXaWR0aCxcbiAgICAgICAgICAgIGhlaWdodDogdGhpcy5lbC5jbGllbnRIZWlnaHQsXG4gICAgICAgICAgICByaWdodDogTmFOLFxuICAgICAgICAgICAgYm90dG9tOiBOYU4sXG4gICAgICAgICAgICB5OiBlbFRvcCxcbiAgICAgICAgICAgIHg6IGVsTGVmdCxcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4ucmVjdCxcbiAgICAgICAgICAgIHRvSlNPTjogKCkgPT4gSlNPTi5zdHJpbmdpZnkocmVjdCksXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRSZWN0KHtzdHlsZX06IEhUTUxFbGVtZW50LCBvZmZzZXQ6IHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge3RvcCwgbGVmdCwgd2lkdGgsIGhlaWdodH0gPSB0aGlzLmdldFJlY3Qob2Zmc2V0KTtcblxuICAgICAgICBzdHlsZS50b3AgPSB0dWlQeCh0b3ApO1xuICAgICAgICBzdHlsZS5sZWZ0ID0gdHVpUHgobGVmdCk7XG4gICAgICAgIHN0eWxlLndpZHRoID0gdHVpUHgod2lkdGgpO1xuICAgICAgICBzdHlsZS5oZWlnaHQgPSB0dWlQeChoZWlnaHQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0UG9zaXRpb24oZWxlbWVudDogSFRNTEVsZW1lbnQsIFtsZWZ0XTogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSk6IHZvaWQge1xuICAgICAgICBpZiAoIU51bWJlci5pc05hTihsZWZ0KSkge1xuICAgICAgICAgICAgZWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgncG9zaXRpb24nLCAnZml4ZWQnKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IGVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBob3N0ID0gdGhpcy5lbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICBzdHlsZS5yZW1vdmVQcm9wZXJ0eSgncG9zaXRpb24nKTtcbiAgICAgICAgc3R5bGUudG9wID0gdHVpUHgocmVjdC50b3AgLSBob3N0LnRvcCArIHRoaXMuZWwub2Zmc2V0VG9wKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHR1aVB4KHJlY3QubGVmdCAtIGhvc3QubGVmdCArIHRoaXMuZWwub2Zmc2V0TGVmdCk7XG4gICAgfVxufVxuIl19
@@ -31,19 +31,19 @@ class TuiTreeComponent {
31
31
  return this.directive?.childrenHandler || TuiTreeChildren.defaultHandler;
32
32
  }
33
33
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTreeComponent, isStandalone: true, selector: "tui-tree", inputs: { value: "value", trackBy: "trackBy", content: "content" }, host: { attributes: { "role": "tree" } }, providers: [tuiProvide(TUI_TREE_NODE, TuiTreeComponent)], viewQueries: [{ propertyName: "item", first: true, predicate: i0.forwardRef(function () { return TuiTreeItem; }), descendants: true }, { propertyName: "child", first: true, predicate: i0.forwardRef(function () { return TuiTreeComponent; }), descendants: true }], ngImport: i0, template: "<tui-tree-item\n *tuiLet=\"children$ | async as children\"\n #view\n [tuiTreeNode]=\"value\"\n>\n <ng-container *ngIf=\"value !== children\">\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: value, node: view}\">\n {{ text }}\n </ng-container>\n </ng-container>\n <tui-tree\n *ngFor=\"let child of children; trackBy: trackBy\"\n [content]=\"content\"\n [trackBy]=\"trackBy\"\n [value]=\"child\"\n />\n</tui-tree-item>\n", styles: [":host{position:relative;display:block}\n"], dependencies: [{ kind: "component", type: TuiTreeComponent, selector: "tui-tree", inputs: ["value", "trackBy", "content"] }, { kind: "component", type: TuiTreeItem, selector: "tui-tree-item" }, { kind: "directive", type: TuiLet, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: TuiTreeNode, selector: "tui-tree-item[tuiTreeNode]", inputs: ["tuiTreeNode"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTreeComponent, isStandalone: true, selector: "tui-tree", inputs: { value: "value", trackBy: "trackBy", content: "content" }, host: { attributes: { "role": "tree" } }, providers: [tuiProvide(TUI_TREE_NODE, TuiTreeComponent)], viewQueries: [{ propertyName: "item", first: true, predicate: i0.forwardRef(function () { return TuiTreeItem; }), descendants: true }, { propertyName: "child", first: true, predicate: i0.forwardRef(function () { return TuiTreeComponent; }), descendants: true }], ngImport: i0, template: "<tui-tree-item\n *tuiLet=\"children$ | async as children\"\n #view\n [tuiTreeNode]=\"value\"\n>\n <ng-container *ngIf=\"value !== children\">\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: value, node: view}\">\n {{ text }}\n </ng-container>\n </ng-container>\n <tui-tree\n *ngFor=\"let child of children; trackBy: trackBy\"\n [content]=\"content\"\n [trackBy]=\"trackBy\"\n [value]=\"child\"\n />\n</tui-tree-item>\n", styles: [":host{position:relative;display:block}\n"], dependencies: [{ kind: "component", type: TuiTreeComponent, selector: "tui-tree", inputs: ["value", "trackBy", "content"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiLet, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: TuiTreeItem, selector: "tui-tree-item" }, { kind: "directive", type: TuiTreeNode, selector: "tui-tree-item[tuiTreeNode]", inputs: ["tuiTreeNode"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
35
35
  }
36
36
  export { TuiTreeComponent };
37
37
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTreeComponent, decorators: [{
38
38
  type: Component,
39
39
  args: [{ standalone: true, selector: 'tui-tree', imports: [
40
- TuiTreeItem,
41
- TuiLet,
42
- PolymorpheusOutlet,
43
- NgIf,
40
+ AsyncPipe,
44
41
  NgForOf,
42
+ NgIf,
43
+ PolymorpheusOutlet,
44
+ TuiLet,
45
+ TuiTreeItem,
45
46
  TuiTreeNode,
46
- AsyncPipe,
47
47
  ], changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiProvide(TUI_TREE_NODE, TuiTreeComponent)], host: { role: 'tree' }, template: "<tui-tree-item\n *tuiLet=\"children$ | async as children\"\n #view\n [tuiTreeNode]=\"value\"\n>\n <ng-container *ngIf=\"value !== children\">\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: value, node: view}\">\n {{ text }}\n </ng-container>\n </ng-container>\n <tui-tree\n *ngFor=\"let child of children; trackBy: trackBy\"\n [content]=\"content\"\n [trackBy]=\"trackBy\"\n [value]=\"child\"\n />\n</tui-tree-item>\n", styles: [":host{position:relative;display:block}\n"] }]
48
48
  }], propDecorators: { item: [{
49
49
  type: ViewChild,
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
61
61
  }], content: [{
62
62
  type: Input
63
63
  }] } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy90cmVlL2NvbXBvbmVudHMvdHJlZS90cmVlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RyZWUvY29tcG9uZW50cy90cmVlL3RyZWUudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6RCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRXBELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUU3RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFbkUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUVqRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGtDQUFrQyxDQUFDOztBQUU3RCxNQWtCYSxnQkFBZ0I7SUFsQjdCO1FBbUJxQixXQUFNLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVEzQixjQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzNDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFDbkMsb0JBQW9CLEVBQUUsQ0FDekIsQ0FBQztRQUVpQixjQUFTLEdBQUcsTUFBTSxDQUFxQixlQUFlLEVBQUU7WUFDdkUsUUFBUSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO1FBUUksWUFBTyxHQUF1QixDQUFDLENBQVMsRUFBRSxJQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQztRQUczRCxZQUFPLEdBQTJDLENBQUMsRUFBQyxTQUFTLEVBQUMsRUFBRSxFQUFFLENBQ3JFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztLQWV6QjtJQWJVLFNBQVM7UUFDWixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVTLFlBQVk7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQVksT0FBTztRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxlQUFlLElBQUksZUFBZSxDQUFDLGNBQWMsQ0FBQztJQUM3RSxDQUFDOytHQTNDUSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixxS0FIZCxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxtR0FNNUIsV0FBVywrR0FHWCxnQkFBZ0Isb0RDL0NoRCwwZ0JBaUJBLGtHRHdCYSxnQkFBZ0IsOEZBZHJCLFdBQVcsMERBQ1gsTUFBTSx5RUFDTixrQkFBa0IsOEhBQ2xCLElBQUksNkZBQ0osT0FBTyxtSEFDUCxXQUFXLDJGQUNYLFNBQVM7O1NBUUosZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBbEI1QixTQUFTO2lDQUNNLElBQUksWUFDTixVQUFVLFdBQ1g7d0JBQ0wsV0FBVzt3QkFDWCxNQUFNO3dCQUNOLGtCQUFrQjt3QkFDbEIsSUFBSTt3QkFDSixPQUFPO3dCQUNQLFdBQVc7d0JBQ1gsU0FBUztxQkFDWixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLFVBQVUsQ0FBQyxhQUFhLG1CQUFtQixDQUFDLFFBQ2xELEVBQUMsSUFBSSxFQUFFLE1BQU0sRUFBQzs4QkFNRCxJQUFJO3NCQUR0QixTQUFTO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7Z0JBSXJCLEtBQUs7c0JBRHZCLFNBQVM7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2dCQWdCdEMsS0FBSztzQkFIWCxLQUFLO3VCQUFDO3dCQUNILFFBQVEsRUFBRSxJQUFJO3FCQUNqQjtnQkFJTSxPQUFPO3NCQURiLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIE5nRm9yT2YsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgdHlwZSB7RG9DaGVjaywgVHJhY2tCeUZ1bmN0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGZvcndhcmRSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUxldH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2xldCc7XG5pbXBvcnQgdHlwZSB7VHVpSGFuZGxlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aVByb3ZpZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQgdHlwZSB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c091dGxldH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN0YXJ0V2l0aCwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpVHJlZUNoaWxkcmVufSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3RyZWUtY2hpbGRyZW4uZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpVHJlZU5vZGV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvdHJlZS1ub2RlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgdHlwZSB7VHVpVHJlZUNvbnRleHR9IGZyb20gJy4uLy4uL21pc2MvdHJlZS5pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX1RSRUVfTk9ERX0gZnJvbSAnLi4vLi4vbWlzYy90cmVlLnRva2Vucyc7XG5pbXBvcnQge1R1aVRyZWVJdGVtfSBmcm9tICcuLi90cmVlLWl0ZW0vdHJlZS1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktdHJlZScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBUdWlUcmVlSXRlbSxcbiAgICAgICAgVHVpTGV0LFxuICAgICAgICBQb2x5bW9ycGhldXNPdXRsZXQsXG4gICAgICAgIE5nSWYsXG4gICAgICAgIE5nRm9yT2YsXG4gICAgICAgIFR1aVRyZWVOb2RlLFxuICAgICAgICBBc3luY1BpcGUsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdHJlZS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90cmVlLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt0dWlQcm92aWRlKFRVSV9UUkVFX05PREUsIFR1aVRyZWVDb21wb25lbnQpXSxcbiAgICBob3N0OiB7cm9sZTogJ3RyZWUnfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVHJlZUNvbXBvbmVudDxUPiBpbXBsZW1lbnRzIERvQ2hlY2sge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hlY2skID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIEBWaWV3Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBUdWlUcmVlSXRlbSkpXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGl0ZW0/OiBUdWlUcmVlSXRlbTtcblxuICAgIEBWaWV3Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBUdWlUcmVlQ29tcG9uZW50KSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2hpbGQ/OiBUdWlUcmVlQ29tcG9uZW50PFQ+O1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNoaWxkcmVuJCA9IHRoaXMuY2hlY2skLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgbWFwKCgpID0+IHRoaXMuaGFuZGxlcih0aGlzLnZhbHVlKSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBkaXJlY3RpdmUgPSBpbmplY3Q8VHVpVHJlZUNoaWxkcmVuPFQ+PihUdWlUcmVlQ2hpbGRyZW4sIHtcbiAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgfSk7XG5cbiAgICBASW5wdXQoe1xuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KVxuICAgIHB1YmxpYyB2YWx1ZSE6IFQ7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0cmFja0J5OiBUcmFja0J5RnVuY3Rpb248VD4gPSAoXzogbnVtYmVyLCBpdGVtOiBUKSA9PiBpdGVtO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlUcmVlQ29udGV4dDxUPj4gPSAoeyRpbXBsaWNpdH0pID0+XG4gICAgICAgIFN0cmluZygkaW1wbGljaXQpO1xuXG4gICAgcHVibGljIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja0NoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY2hlY2tDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrJC5uZXh0KCk7XG4gICAgICAgIHRoaXMuaXRlbT8uY2hlY2tDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMuY2hpbGQ/LmNoZWNrQ2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGhhbmRsZXIoKTogVHVpSGFuZGxlcjxULCByZWFkb25seSBUW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlyZWN0aXZlPy5jaGlsZHJlbkhhbmRsZXIgfHwgVHVpVHJlZUNoaWxkcmVuLmRlZmF1bHRIYW5kbGVyO1xuICAgIH1cbn1cbiIsIjx0dWktdHJlZS1pdGVtXG4gICAgKnR1aUxldD1cImNoaWxkcmVuJCB8IGFzeW5jIGFzIGNoaWxkcmVuXCJcbiAgICAjdmlld1xuICAgIFt0dWlUcmVlTm9kZV09XCJ2YWx1ZVwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZhbHVlICE9PSBjaGlsZHJlblwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjb250ZW50IGFzIHRleHQ7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHZhbHVlLCBub2RlOiB2aWV3fVwiPlxuICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8dHVpLXRyZWVcbiAgICAgICAgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGNoaWxkcmVuOyB0cmFja0J5OiB0cmFja0J5XCJcbiAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiXG4gICAgICAgIFt0cmFja0J5XT1cInRyYWNrQnlcIlxuICAgICAgICBbdmFsdWVdPVwiY2hpbGRcIlxuICAgIC8+XG48L3R1aS10cmVlLWl0ZW0+XG4iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy90cmVlL2NvbXBvbmVudHMvdHJlZS90cmVlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RyZWUvY29tcG9uZW50cy90cmVlL3RyZWUudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6RCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRXBELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUU3RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFbkUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUVqRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGtDQUFrQyxDQUFDOztBQUU3RCxNQWtCYSxnQkFBZ0I7SUFsQjdCO1FBbUJxQixXQUFNLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVEzQixjQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzNDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFDbkMsb0JBQW9CLEVBQUUsQ0FDekIsQ0FBQztRQUVpQixjQUFTLEdBQUcsTUFBTSxDQUFxQixlQUFlLEVBQUU7WUFDdkUsUUFBUSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO1FBUUksWUFBTyxHQUF1QixDQUFDLENBQVMsRUFBRSxJQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQztRQUczRCxZQUFPLEdBQTJDLENBQUMsRUFBQyxTQUFTLEVBQUMsRUFBRSxFQUFFLENBQ3JFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztLQWV6QjtJQWJVLFNBQVM7UUFDWixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVTLFlBQVk7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQVksT0FBTztRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxlQUFlLElBQUksZUFBZSxDQUFDLGNBQWMsQ0FBQztJQUM3RSxDQUFDOytHQTNDUSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixxS0FIZCxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxtR0FNNUIsV0FBVywrR0FHWCxnQkFBZ0Isb0RDL0NoRCwwZ0JBaUJBLGtHRHdCYSxnQkFBZ0IseUZBZHJCLFNBQVMsOENBQ1QsT0FBTyxtSEFDUCxJQUFJLDZGQUNKLGtCQUFrQiw4SEFDbEIsTUFBTSx5RUFDTixXQUFXLDBEQUNYLFdBQVc7O1NBUU4sZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBbEI1QixTQUFTO2lDQUNNLElBQUksWUFDTixVQUFVLFdBQ1g7d0JBQ0wsU0FBUzt3QkFDVCxPQUFPO3dCQUNQLElBQUk7d0JBQ0osa0JBQWtCO3dCQUNsQixNQUFNO3dCQUNOLFdBQVc7d0JBQ1gsV0FBVztxQkFDZCxtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLFVBQVUsQ0FBQyxhQUFhLG1CQUFtQixDQUFDLFFBQ2xELEVBQUMsSUFBSSxFQUFFLE1BQU0sRUFBQzs4QkFNRCxJQUFJO3NCQUR0QixTQUFTO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7Z0JBSXJCLEtBQUs7c0JBRHZCLFNBQVM7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2dCQWdCdEMsS0FBSztzQkFIWCxLQUFLO3VCQUFDO3dCQUNILFFBQVEsRUFBRSxJQUFJO3FCQUNqQjtnQkFJTSxPQUFPO3NCQURiLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIE5nRm9yT2YsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgdHlwZSB7RG9DaGVjaywgVHJhY2tCeUZ1bmN0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGZvcndhcmRSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUxldH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2xldCc7XG5pbXBvcnQgdHlwZSB7VHVpSGFuZGxlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aVByb3ZpZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQgdHlwZSB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c091dGxldH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN0YXJ0V2l0aCwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpVHJlZUNoaWxkcmVufSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3RyZWUtY2hpbGRyZW4uZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpVHJlZU5vZGV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvdHJlZS1ub2RlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgdHlwZSB7VHVpVHJlZUNvbnRleHR9IGZyb20gJy4uLy4uL21pc2MvdHJlZS5pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX1RSRUVfTk9ERX0gZnJvbSAnLi4vLi4vbWlzYy90cmVlLnRva2Vucyc7XG5pbXBvcnQge1R1aVRyZWVJdGVtfSBmcm9tICcuLi90cmVlLWl0ZW0vdHJlZS1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktdHJlZScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBBc3luY1BpcGUsXG4gICAgICAgIE5nRm9yT2YsXG4gICAgICAgIE5nSWYsXG4gICAgICAgIFBvbHltb3JwaGV1c091dGxldCxcbiAgICAgICAgVHVpTGV0LFxuICAgICAgICBUdWlUcmVlSXRlbSxcbiAgICAgICAgVHVpVHJlZU5vZGUsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdHJlZS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90cmVlLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt0dWlQcm92aWRlKFRVSV9UUkVFX05PREUsIFR1aVRyZWVDb21wb25lbnQpXSxcbiAgICBob3N0OiB7cm9sZTogJ3RyZWUnfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVHJlZUNvbXBvbmVudDxUPiBpbXBsZW1lbnRzIERvQ2hlY2sge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hlY2skID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIEBWaWV3Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBUdWlUcmVlSXRlbSkpXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGl0ZW0/OiBUdWlUcmVlSXRlbTtcblxuICAgIEBWaWV3Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBUdWlUcmVlQ29tcG9uZW50KSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2hpbGQ/OiBUdWlUcmVlQ29tcG9uZW50PFQ+O1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNoaWxkcmVuJCA9IHRoaXMuY2hlY2skLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgbWFwKCgpID0+IHRoaXMuaGFuZGxlcih0aGlzLnZhbHVlKSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBkaXJlY3RpdmUgPSBpbmplY3Q8VHVpVHJlZUNoaWxkcmVuPFQ+PihUdWlUcmVlQ2hpbGRyZW4sIHtcbiAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgfSk7XG5cbiAgICBASW5wdXQoe1xuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KVxuICAgIHB1YmxpYyB2YWx1ZSE6IFQ7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0cmFja0J5OiBUcmFja0J5RnVuY3Rpb248VD4gPSAoXzogbnVtYmVyLCBpdGVtOiBUKSA9PiBpdGVtO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlUcmVlQ29udGV4dDxUPj4gPSAoeyRpbXBsaWNpdH0pID0+XG4gICAgICAgIFN0cmluZygkaW1wbGljaXQpO1xuXG4gICAgcHVibGljIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja0NoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY2hlY2tDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrJC5uZXh0KCk7XG4gICAgICAgIHRoaXMuaXRlbT8uY2hlY2tDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMuY2hpbGQ/LmNoZWNrQ2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGhhbmRsZXIoKTogVHVpSGFuZGxlcjxULCByZWFkb25seSBUW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlyZWN0aXZlPy5jaGlsZHJlbkhhbmRsZXIgfHwgVHVpVHJlZUNoaWxkcmVuLmRlZmF1bHRIYW5kbGVyO1xuICAgIH1cbn1cbiIsIjx0dWktdHJlZS1pdGVtXG4gICAgKnR1aUxldD1cImNoaWxkcmVuJCB8IGFzeW5jIGFzIGNoaWxkcmVuXCJcbiAgICAjdmlld1xuICAgIFt0dWlUcmVlTm9kZV09XCJ2YWx1ZVwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZhbHVlICE9PSBjaGlsZHJlblwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjb250ZW50IGFzIHRleHQ7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHZhbHVlLCBub2RlOiB2aWV3fVwiPlxuICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8dHVpLXRyZWVcbiAgICAgICAgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGNoaWxkcmVuOyB0cmFja0J5OiB0cmFja0J5XCJcbiAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiXG4gICAgICAgIFt0cmFja0J5XT1cInRyYWNrQnlcIlxuICAgICAgICBbdmFsdWVdPVwiY2hpbGRcIlxuICAgIC8+XG48L3R1aS10cmVlLWl0ZW0+XG4iXX0=
@@ -39,12 +39,12 @@ class TuiTreeItem {
39
39
  deps: [[new SkipSelf(), TUI_TREE_LEVEL]],
40
40
  useFactory: (level) => ++level,
41
41
  },
42
- ], queries: [{ propertyName: "nested", predicate: TUI_TREE_NODE }], ngImport: i0, template: "<ng-template #template>\n <ng-content />\n</ng-template>\n<ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: this, template: template}\">\n {{ text }}\n</ng-container>\n<tui-expand\n *ngIf=\"isExpandable\"\n role=\"group\"\n class=\"t-children\"\n [expanded]=\"expanded$ | async\"\n>\n <div>\n <ng-content select=\"tui-tree-item\" />\n <ng-content select=\"tui-tree\" />\n </div>\n</tui-expand>\n<ng-container *ngIf=\"attached$ | async\" />\n", styles: [":host{display:block}.t-children{position:relative;margin-left:var(--tui-tree-item-indent, 1.5rem)}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: TuiExpandComponent, selector: "tui-expand", inputs: ["async", "expanded"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
42
+ ], queries: [{ propertyName: "nested", predicate: TUI_TREE_NODE }], ngImport: i0, template: "<ng-template #template>\n <ng-content />\n</ng-template>\n<ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: this, template: template}\">\n {{ text }}\n</ng-container>\n<tui-expand\n *ngIf=\"isExpandable\"\n role=\"group\"\n class=\"t-children\"\n [expanded]=\"expanded$ | async\"\n>\n <div>\n <ng-content select=\"tui-tree-item\" />\n <ng-content select=\"tui-tree\" />\n </div>\n</tui-expand>\n<ng-container *ngIf=\"attached$ | async\" />\n", styles: [":host{display:block}.t-children{position:relative;margin-left:var(--tui-tree-item-indent, 1.5rem)}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: TuiExpandComponent, selector: "tui-expand", inputs: ["async", "expanded"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43
43
  }
44
44
  export { TuiTreeItem };
45
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTreeItem, decorators: [{
46
46
  type: Component,
47
- args: [{ standalone: true, selector: 'tui-tree-item', imports: [PolymorpheusOutlet, TuiExpandComponent, NgIf, AsyncPipe], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
47
+ args: [{ standalone: true, selector: 'tui-tree-item', imports: [AsyncPipe, NgIf, PolymorpheusOutlet, TuiExpandComponent], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
48
48
  tuiProvide(TUI_TREE_NODE, TuiTreeItem),
49
49
  {
50
50
  provide: TUI_TREE_LEVEL,
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
59
59
  type: ContentChildren,
60
60
  args: [TUI_TREE_NODE]
61
61
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RyZWUvY29tcG9uZW50cy90cmVlLWl0ZW0vdHJlZS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RyZWUvY29tcG9uZW50cy90cmVlLWl0ZW0vdHJlZS1pdGVtLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUVwRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFHbkUsT0FBTyxFQUNILGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsY0FBYyxFQUNkLGFBQWEsR0FDaEIsTUFBTSx3QkFBd0IsQ0FBQzs7QUFFaEMsTUFvQmEsV0FBVztJQXBCeEI7UUFzQnFCLFdBQU0sR0FBdUIsV0FBVyxDQUFDO1FBRXpDLE9BQUUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXhCLGVBQVUsR0FBRyxNQUFNLENBQ2hDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUN4QyxDQUFDO1FBRWUsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFNUIsVUFBSyxHQUFHLE1BQU0sQ0FBUyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUV6RCxZQUFPLEdBQUcsTUFBTSxDQUMvQixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FDckMsQ0FBQztRQUVpQixjQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQzVDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUM3QixDQUFDO1FBRWlCLGNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDNUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEVBQzlCLG9CQUFvQixFQUFFLENBQ3pCLENBQUM7S0FpQkw7SUFmRyxJQUFXLFlBQVk7UUFDbkIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxTQUFTO1FBQ1osSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxZQUFZO1FBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDOytHQTFDUSxXQUFXO21HQUFYLFdBQVcsK0pBYlQ7WUFDUCxVQUFVLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQztZQUN0QztnQkFDSSxPQUFPLEVBQUUsY0FBYztnQkFDdkIsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLGNBQWMsQ0FBQyxDQUFDO2dCQUN4QyxVQUFVLEVBQUUsQ0FBQyxLQUFhLEVBQVUsRUFBRSxDQUFDLEVBQUUsS0FBSzthQUNqRDtTQUNKLGlEQU9nQixhQUFvQiw2QkMvQ3pDLHlmQWtCQSw4SkRXYyxrQkFBa0IsOEhBQUUsa0JBQWtCLHNGQUFFLElBQUksd0ZBQUUsU0FBUzs7U0FpQnhELFdBQVc7NEZBQVgsV0FBVztrQkFwQnZCLFNBQVM7aUNBQ00sSUFBSSxZQUNOLGVBQWUsV0FDaEIsQ0FBQyxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLG1CQUdqRCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQLFVBQVUsQ0FBQyxhQUFhLGNBQWM7d0JBQ3RDOzRCQUNJLE9BQU8sRUFBRSxjQUFjOzRCQUN2QixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUM7NEJBQ3hDLFVBQVUsRUFBRSxDQUFDLEtBQWEsRUFBVSxFQUFFLENBQUMsRUFBRSxLQUFLO3lCQUNqRDtxQkFDSixRQUNLO3dCQUNGLElBQUksRUFBRSxVQUFVO3dCQUNoQixxQkFBcUIsRUFBRSxjQUFjO3FCQUN4Qzs4QkFJZ0IsTUFBTTtzQkFEdEIsZUFBZTt1QkFBQyxhQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXN5bmNQaXBlLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge0RvQ2hlY2ssIFF1ZXJ5TGlzdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgZm9yd2FyZFJlZixcbiAgICBpbmplY3QsXG4gICAgU2tpcFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFTVBUWV9RVUVSWX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aVByb3ZpZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aUV4cGFuZENvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9leHBhbmQnO1xuaW1wb3J0IHR5cGUge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzdGFydFdpdGgsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgdHlwZSB7VHVpVHJlZUNvbnRyb2xsZXIsIFR1aVRyZWVJdGVtQ29udGV4dH0gZnJvbSAnLi4vLi4vbWlzYy90cmVlLmludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgICBUVUlfVFJFRV9DT05URU5ULFxuICAgIFRVSV9UUkVFX0NPTlRST0xMRVIsXG4gICAgVFVJX1RSRUVfTEVWRUwsXG4gICAgVFVJX1RSRUVfTk9ERSxcbn0gZnJvbSAnLi4vLi4vbWlzYy90cmVlLnRva2Vucyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktdHJlZS1pdGVtJyxcbiAgICBpbXBvcnRzOiBbUG9seW1vcnBoZXVzT3V0bGV0LCBUdWlFeHBhbmRDb21wb25lbnQsIE5nSWYsIEFzeW5jUGlwZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtaXRlbS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90cmVlLWl0ZW0uc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlQcm92aWRlKFRVSV9UUkVFX05PREUsIFR1aVRyZWVJdGVtKSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1RSRUVfTEVWRUwsXG4gICAgICAgICAgICBkZXBzOiBbW25ldyBTa2lwU2VsZigpLCBUVUlfVFJFRV9MRVZFTF1dLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogKGxldmVsOiBudW1iZXIpOiBudW1iZXIgPT4gKytsZXZlbCxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgcm9sZTogJ3RyZWVpdGVtJyxcbiAgICAgICAgJ1tjbGFzcy5fZXhwYW5kYWJsZV0nOiAnaXNFeHBhbmRhYmxlJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUcmVlSXRlbSBpbXBsZW1lbnRzIERvQ2hlY2sge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oVFVJX1RSRUVfTk9ERSBhcyBhbnkpXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZXN0ZWQ6IFF1ZXJ5TGlzdDx1bmtub3duPiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29udHJvbGxlciA9IGluamVjdDxUdWlUcmVlQ29udHJvbGxlcj4oXG4gICAgICAgIGZvcndhcmRSZWYoKCkgPT4gVFVJX1RSRUVfQ09OVFJPTExFUiksXG4gICAgKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGV2ZWwgPSBpbmplY3Q8bnVtYmVyPihmb3J3YXJkUmVmKCgpID0+IFRVSV9UUkVFX0xFVkVMKSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGVudCA9IGluamVjdDxQb2x5bW9ycGhldXNDb250ZW50PFR1aVRyZWVJdGVtQ29udGV4dD4+KFxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IFRVSV9UUkVFX0NPTlRFTlQpLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXhwYW5kZWQkID0gdGhpcy5jaGFuZ2UkLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgbWFwKCgpID0+IHRoaXMuaXNFeHBhbmRlZCksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBhdHRhY2hlZCQgPSB0aGlzLmNoYW5nZSQucGlwZShcbiAgICAgICAgbWFwKCgpID0+IHRoaXMuZWwuaXNDb25uZWN0ZWQpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG5cbiAgICBwdWJsaWMgZ2V0IGlzRXhwYW5kYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5uZXN0ZWQubGVuZ3RoO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNFeHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5pc0V4cGFuZGVkKHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hlY2tDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNoZWNrQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2UkLm5leHQoKTtcbiAgICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICAgIDxuZy1jb250ZW50IC8+XG48L25nLXRlbXBsYXRlPlxuPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiB0aGlzLCB0ZW1wbGF0ZTogdGVtcGxhdGV9XCI+XG4gICAge3sgdGV4dCB9fVxuPC9uZy1jb250YWluZXI+XG48dHVpLWV4cGFuZFxuICAgICpuZ0lmPVwiaXNFeHBhbmRhYmxlXCJcbiAgICByb2xlPVwiZ3JvdXBcIlxuICAgIGNsYXNzPVwidC1jaGlsZHJlblwiXG4gICAgW2V4cGFuZGVkXT1cImV4cGFuZGVkJCB8IGFzeW5jXCJcbj5cbiAgICA8ZGl2PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0dWktdHJlZS1pdGVtXCIgLz5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpLXRyZWVcIiAvPlxuICAgIDwvZGl2PlxuPC90dWktZXhwYW5kPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dGFjaGVkJCB8IGFzeW5jXCIgLz5cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RyZWUvY29tcG9uZW50cy90cmVlLWl0ZW0vdHJlZS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RyZWUvY29tcG9uZW50cy90cmVlLWl0ZW0vdHJlZS1pdGVtLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUVwRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFHbkUsT0FBTyxFQUNILGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsY0FBYyxFQUNkLGFBQWEsR0FDaEIsTUFBTSx3QkFBd0IsQ0FBQzs7QUFFaEMsTUFvQmEsV0FBVztJQXBCeEI7UUFzQnFCLFdBQU0sR0FBdUIsV0FBVyxDQUFDO1FBRXpDLE9BQUUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXhCLGVBQVUsR0FBRyxNQUFNLENBQ2hDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUN4QyxDQUFDO1FBRWUsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFNUIsVUFBSyxHQUFHLE1BQU0sQ0FBUyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUV6RCxZQUFPLEdBQUcsTUFBTSxDQUMvQixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FDckMsQ0FBQztRQUVpQixjQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQzVDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUM3QixDQUFDO1FBRWlCLGNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDNUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEVBQzlCLG9CQUFvQixFQUFFLENBQ3pCLENBQUM7S0FpQkw7SUFmRyxJQUFXLFlBQVk7UUFDbkIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxTQUFTO1FBQ1osSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxZQUFZO1FBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDOytHQTFDUSxXQUFXO21HQUFYLFdBQVcsK0pBYlQ7WUFDUCxVQUFVLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQztZQUN0QztnQkFDSSxPQUFPLEVBQUUsY0FBYztnQkFDdkIsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLGNBQWMsQ0FBQyxDQUFDO2dCQUN4QyxVQUFVLEVBQUUsQ0FBQyxLQUFhLEVBQVUsRUFBRSxDQUFDLEVBQUUsS0FBSzthQUNqRDtTQUNKLGlEQU9nQixhQUFvQiw2QkMvQ3pDLHlmQWtCQSx5SkRXYyxTQUFTLDhDQUFFLElBQUksNkZBQUUsa0JBQWtCLDhIQUFFLGtCQUFrQjs7U0FpQnhELFdBQVc7NEZBQVgsV0FBVztrQkFwQnZCLFNBQVM7aUNBQ00sSUFBSSxZQUNOLGVBQWUsV0FDaEIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLG1CQUdqRCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQLFVBQVUsQ0FBQyxhQUFhLGNBQWM7d0JBQ3RDOzRCQUNJLE9BQU8sRUFBRSxjQUFjOzRCQUN2QixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUM7NEJBQ3hDLFVBQVUsRUFBRSxDQUFDLEtBQWEsRUFBVSxFQUFFLENBQUMsRUFBRSxLQUFLO3lCQUNqRDtxQkFDSixRQUNLO3dCQUNGLElBQUksRUFBRSxVQUFVO3dCQUNoQixxQkFBcUIsRUFBRSxjQUFjO3FCQUN4Qzs4QkFJZ0IsTUFBTTtzQkFEdEIsZUFBZTt1QkFBQyxhQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXN5bmNQaXBlLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge0RvQ2hlY2ssIFF1ZXJ5TGlzdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgZm9yd2FyZFJlZixcbiAgICBpbmplY3QsXG4gICAgU2tpcFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFTVBUWV9RVUVSWX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aVByb3ZpZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aUV4cGFuZENvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9leHBhbmQnO1xuaW1wb3J0IHR5cGUge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzdGFydFdpdGgsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgdHlwZSB7VHVpVHJlZUNvbnRyb2xsZXIsIFR1aVRyZWVJdGVtQ29udGV4dH0gZnJvbSAnLi4vLi4vbWlzYy90cmVlLmludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgICBUVUlfVFJFRV9DT05URU5ULFxuICAgIFRVSV9UUkVFX0NPTlRST0xMRVIsXG4gICAgVFVJX1RSRUVfTEVWRUwsXG4gICAgVFVJX1RSRUVfTk9ERSxcbn0gZnJvbSAnLi4vLi4vbWlzYy90cmVlLnRva2Vucyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktdHJlZS1pdGVtJyxcbiAgICBpbXBvcnRzOiBbQXN5bmNQaXBlLCBOZ0lmLCBQb2x5bW9ycGhldXNPdXRsZXQsIFR1aUV4cGFuZENvbXBvbmVudF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtaXRlbS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90cmVlLWl0ZW0uc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlQcm92aWRlKFRVSV9UUkVFX05PREUsIFR1aVRyZWVJdGVtKSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1RSRUVfTEVWRUwsXG4gICAgICAgICAgICBkZXBzOiBbW25ldyBTa2lwU2VsZigpLCBUVUlfVFJFRV9MRVZFTF1dLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogKGxldmVsOiBudW1iZXIpOiBudW1iZXIgPT4gKytsZXZlbCxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgcm9sZTogJ3RyZWVpdGVtJyxcbiAgICAgICAgJ1tjbGFzcy5fZXhwYW5kYWJsZV0nOiAnaXNFeHBhbmRhYmxlJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUcmVlSXRlbSBpbXBsZW1lbnRzIERvQ2hlY2sge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oVFVJX1RSRUVfTk9ERSBhcyBhbnkpXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZXN0ZWQ6IFF1ZXJ5TGlzdDx1bmtub3duPiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29udHJvbGxlciA9IGluamVjdDxUdWlUcmVlQ29udHJvbGxlcj4oXG4gICAgICAgIGZvcndhcmRSZWYoKCkgPT4gVFVJX1RSRUVfQ09OVFJPTExFUiksXG4gICAgKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGV2ZWwgPSBpbmplY3Q8bnVtYmVyPihmb3J3YXJkUmVmKCgpID0+IFRVSV9UUkVFX0xFVkVMKSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGVudCA9IGluamVjdDxQb2x5bW9ycGhldXNDb250ZW50PFR1aVRyZWVJdGVtQ29udGV4dD4+KFxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IFRVSV9UUkVFX0NPTlRFTlQpLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXhwYW5kZWQkID0gdGhpcy5jaGFuZ2UkLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgbWFwKCgpID0+IHRoaXMuaXNFeHBhbmRlZCksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBhdHRhY2hlZCQgPSB0aGlzLmNoYW5nZSQucGlwZShcbiAgICAgICAgbWFwKCgpID0+IHRoaXMuZWwuaXNDb25uZWN0ZWQpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG5cbiAgICBwdWJsaWMgZ2V0IGlzRXhwYW5kYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5uZXN0ZWQubGVuZ3RoO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNFeHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5pc0V4cGFuZGVkKHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hlY2tDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNoZWNrQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2UkLm5leHQoKTtcbiAgICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICAgIDxuZy1jb250ZW50IC8+XG48L25nLXRlbXBsYXRlPlxuPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiB0aGlzLCB0ZW1wbGF0ZTogdGVtcGxhdGV9XCI+XG4gICAge3sgdGV4dCB9fVxuPC9uZy1jb250YWluZXI+XG48dHVpLWV4cGFuZFxuICAgICpuZ0lmPVwiaXNFeHBhbmRhYmxlXCJcbiAgICByb2xlPVwiZ3JvdXBcIlxuICAgIGNsYXNzPVwidC1jaGlsZHJlblwiXG4gICAgW2V4cGFuZGVkXT1cImV4cGFuZGVkJCB8IGFzeW5jXCJcbj5cbiAgICA8ZGl2PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0dWktdHJlZS1pdGVtXCIgLz5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpLXRyZWVcIiAvPlxuICAgIDwvZGl2PlxuPC90dWktZXhwYW5kPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dGFjaGVkJCB8IGFzeW5jXCIgLz5cbiJdfQ==
@@ -2,7 +2,7 @@ import { AsyncPipe, NgIf, NgTemplateOutlet } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, forwardRef, inject } from '@angular/core';
3
3
  import { TuiButton } from '@taiga-ui/core/components/button';
4
4
  import { TUI_COMMON_ICONS } from '@taiga-ui/core/tokens';
5
- import { POLYMORPHEUS_CONTEXT } from '@taiga-ui/polymorpheus';
5
+ import { injectContext } from '@taiga-ui/polymorpheus';
6
6
  import { distinctUntilChanged, map, startWith, Subject } from 'rxjs';
7
7
  import { TUI_DEFAULT_TREE_CONTROLLER } from '../../misc/tree.constants';
8
8
  import { TUI_TREE_CONTROLLER } from '../../misc/tree.tokens';
@@ -12,7 +12,7 @@ class TuiTreeItemContent {
12
12
  this.controller = inject(forwardRef(() => TUI_TREE_CONTROLLER));
13
13
  this.change$ = new Subject();
14
14
  this.icons = inject(TUI_COMMON_ICONS);
15
- this.context = inject(POLYMORPHEUS_CONTEXT);
15
+ this.context = injectContext();
16
16
  this.expanded$ = this.change$.pipe(startWith(null), map(() => this.isExpanded), distinctUntilChanged());
17
17
  }
18
18
  ngDoCheck() {
@@ -29,13 +29,13 @@ class TuiTreeItemContent {
29
29
  this.controller.toggle(this.context.$implicit);
30
30
  }
31
31
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTreeItemContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTreeItemContent, isStandalone: true, selector: "ng-component", host: { properties: { "class._expandable": "isExpandable" } }, ngImport: i0, template: "<button\n *ngIf=\"isExpandable\"\n appearance=\"flat\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [class.t-button_expanded]=\"expanded$ | async\"\n [iconStart]=\"icons.more\"\n [style.border-radius.%]=\"100\"\n (click)=\"onClick()\"\n></button>\n<ng-container [ngTemplateOutlet]=\"context.template\" />\n", styles: [":host{display:flex;align-items:center}:host :host-context(tui-tree-item._expandable):not(._expandable){padding-left:2rem}.t-button{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-right:.5rem}.t-button_expanded{transform:rotate(90deg)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTreeItemContent, isStandalone: true, selector: "ng-component", host: { properties: { "class._expandable": "isExpandable" } }, ngImport: i0, template: "<button\n *ngIf=\"isExpandable\"\n appearance=\"flat\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [class.t-button_expanded]=\"expanded$ | async\"\n [iconStart]=\"icons.more\"\n [style.border-radius.%]=\"100\"\n (click)=\"onClick()\"\n></button>\n<ng-container [ngTemplateOutlet]=\"context.template\" />\n", styles: [":host{display:flex;align-items:center}:host :host-context(tui-tree-item._expandable):not(._expandable){padding-left:2rem}.t-button{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-right:.5rem}.t-button_expanded{transform:rotate(90deg)}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
33
  }
34
34
  export { TuiTreeItemContent };
35
35
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTreeItemContent, decorators: [{
36
36
  type: Component,
37
- args: [{ standalone: true, imports: [NgIf, TuiButton, NgTemplateOutlet, AsyncPipe], changeDetection: ChangeDetectionStrategy.OnPush, host: {
37
+ args: [{ standalone: true, imports: [AsyncPipe, NgIf, NgTemplateOutlet, TuiButton], changeDetection: ChangeDetectionStrategy.OnPush, host: {
38
38
  '[class._expandable]': 'isExpandable',
39
39
  }, template: "<button\n *ngIf=\"isExpandable\"\n appearance=\"flat\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-button\"\n [class.t-button_expanded]=\"expanded$ | async\"\n [iconStart]=\"icons.more\"\n [style.border-radius.%]=\"100\"\n (click)=\"onClick()\"\n></button>\n<ng-container [ngTemplateOutlet]=\"context.template\" />\n", styles: [":host{display:flex;align-items:center}:host :host-context(tui-tree-item._expandable):not(._expandable){padding-left:2rem}.t-button{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-right:.5rem}.t-button_expanded{transform:rotate(90deg)}\n"] }]
40
40
  }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1pdGVtLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdHJlZS9jb21wb25lbnRzL3RyZWUtaXRlbS1jb250ZW50L3RyZWUtaXRlbS1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RyZWUvY29tcG9uZW50cy90cmVlLWl0ZW0tY29udGVudC90cmVlLWl0ZW0tY29udGVudC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFbEUsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFbkUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFdEUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7O0FBRTNELE1BVWEsa0JBQWtCO0lBVi9CO1FBV3FCLGVBQVUsR0FBRyxNQUFNLENBQ2hDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUN4QyxDQUFDO1FBRWUsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFNUIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2pDLFlBQU8sR0FBRyxNQUFNLENBQXFCLG9CQUFvQixDQUFDLENBQUM7UUFFM0QsY0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUM1QyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQ2YsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFDMUIsb0JBQW9CLEVBQUUsQ0FDekIsQ0FBQztLQW9CTDtJQWxCVSxTQUFTO1FBQ1osSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBYyxZQUFZO1FBQ3RCLE9BQU8sQ0FDSCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZO1lBQ25DLElBQUksQ0FBQyxVQUFVLEtBQUssMkJBQTJCLENBQ2xELENBQUM7SUFDTixDQUFDO0lBRUQsSUFBYyxVQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDO0lBQzdDLENBQUM7SUFFUyxPQUFPO1FBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNuRCxDQUFDOytHQWpDUSxrQkFBa0I7bUdBQWxCLGtCQUFrQix1SUN0Qi9CLDRXQWFBLCtXRENjLElBQUksNkZBQUUsU0FBUyxvSUFBRSxnQkFBZ0IsK0lBQUUsU0FBUzs7U0FRN0Msa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBVjlCLFNBQVM7aUNBQ00sSUFBSSxXQUNQLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsbUJBR3RDLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0YscUJBQXFCLEVBQUUsY0FBYztxQkFDeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZSwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHtEb0NoZWNrfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpQnV0dG9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQge1RVSV9DT01NT05fSUNPTlN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1BPTFlNT1JQSEVVU19DT05URVhUfSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3RhcnRXaXRoLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfREVGQVVMVF9UUkVFX0NPTlRST0xMRVJ9IGZyb20gJy4uLy4uL21pc2MvdHJlZS5jb25zdGFudHMnO1xuaW1wb3J0IHR5cGUge1R1aVRyZWVDb250cm9sbGVyLCBUdWlUcmVlSXRlbUNvbnRleHR9IGZyb20gJy4uLy4uL21pc2MvdHJlZS5pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX1RSRUVfQ09OVFJPTExFUn0gZnJvbSAnLi4vLi4vbWlzYy90cmVlLnRva2Vucyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nSWYsIFR1aUJ1dHRvbiwgTmdUZW1wbGF0ZU91dGxldCwgQXN5bmNQaXBlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1pdGVtLWNvbnRlbnQudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdHJlZS1pdGVtLWNvbnRlbnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5fZXhwYW5kYWJsZV0nOiAnaXNFeHBhbmRhYmxlJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUcmVlSXRlbUNvbnRlbnQgaW1wbGVtZW50cyBEb0NoZWNrIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2xsZXIgPSBpbmplY3Q8VHVpVHJlZUNvbnRyb2xsZXI+KFxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IFRVSV9UUkVFX0NPTlRST0xMRVIpLFxuICAgICk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9DT01NT05fSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb250ZXh0ID0gaW5qZWN0PFR1aVRyZWVJdGVtQ29udGV4dD4oUE9MWU1PUlBIRVVTX0NPTlRFWFQpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGV4cGFuZGVkJCA9IHRoaXMuY2hhbmdlJC5waXBlKFxuICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgIG1hcCgoKSA9PiB0aGlzLmlzRXhwYW5kZWQpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG5cbiAgICBwdWJsaWMgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZSQubmV4dCgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaXNFeHBhbmRhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5jb250ZXh0LiRpbXBsaWNpdC5pc0V4cGFuZGFibGUgJiZcbiAgICAgICAgICAgIHRoaXMuY29udHJvbGxlciAhPT0gVFVJX0RFRkFVTFRfVFJFRV9DT05UUk9MTEVSXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBpc0V4cGFuZGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0LiRpbXBsaWNpdC5pc0V4cGFuZGVkO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2xsZXIudG9nZ2xlKHRoaXMuY29udGV4dC4kaW1wbGljaXQpO1xuICAgIH1cbn1cbiIsIjxidXR0b25cbiAgICAqbmdJZj1cImlzRXhwYW5kYWJsZVwiXG4gICAgYXBwZWFyYW5jZT1cImZsYXRcIlxuICAgIHNpemU9XCJ4c1wiXG4gICAgdHVpSWNvbkJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwidC1idXR0b25cIlxuICAgIFtjbGFzcy50LWJ1dHRvbl9leHBhbmRlZF09XCJleHBhbmRlZCQgfCBhc3luY1wiXG4gICAgW2ljb25TdGFydF09XCJpY29ucy5tb3JlXCJcbiAgICBbc3R5bGUuYm9yZGVyLXJhZGl1cy4lXT1cIjEwMFwiXG4gICAgKGNsaWNrKT1cIm9uQ2xpY2soKVwiXG4+PC9idXR0b24+XG48bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbnRleHQudGVtcGxhdGVcIiAvPlxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1pdGVtLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdHJlZS9jb21wb25lbnRzL3RyZWUtaXRlbS1jb250ZW50L3RyZWUtaXRlbS1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RyZWUvY29tcG9uZW50cy90cmVlLWl0ZW0tY29udGVudC90cmVlLWl0ZW0tY29udGVudC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFbEUsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRW5FLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXRFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDOztBQUUzRCxNQVVhLGtCQUFrQjtJQVYvQjtRQVdxQixlQUFVLEdBQUcsTUFBTSxDQUNoQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FDeEMsQ0FBQztRQUVlLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRTVCLFVBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNqQyxZQUFPLEdBQUcsYUFBYSxFQUFzQixDQUFDO1FBRTlDLGNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDNUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQzFCLG9CQUFvQixFQUFFLENBQ3pCLENBQUM7S0FvQkw7SUFsQlUsU0FBUztRQUNaLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQWMsWUFBWTtRQUN0QixPQUFPLENBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsWUFBWTtZQUNuQyxJQUFJLENBQUMsVUFBVSxLQUFLLDJCQUEyQixDQUNsRCxDQUFDO0lBQ04sQ0FBQztJQUVELElBQWMsVUFBVTtRQUNwQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztJQUM3QyxDQUFDO0lBRVMsT0FBTztRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbkQsQ0FBQzsrR0FqQ1Esa0JBQWtCO21HQUFsQixrQkFBa0IsdUlDdEIvQiw0V0FhQSwwV0RDYyxTQUFTLDhDQUFFLElBQUksNkZBQUUsZ0JBQWdCLG9KQUFFLFNBQVM7O1NBUTdDLGtCQUFrQjs0RkFBbEIsa0JBQWtCO2tCQVY5QixTQUFTO2lDQUNNLElBQUksV0FDUCxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxDQUFDLG1CQUd0Qyx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLHFCQUFxQixFQUFFLGNBQWM7cUJBQ3hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgdHlwZSB7RG9DaGVja30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUJ1dHRvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtUVUlfQ09NTU9OX0lDT05TfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtpbmplY3RDb250ZXh0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3RhcnRXaXRoLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfREVGQVVMVF9UUkVFX0NPTlRST0xMRVJ9IGZyb20gJy4uLy4uL21pc2MvdHJlZS5jb25zdGFudHMnO1xuaW1wb3J0IHR5cGUge1R1aVRyZWVDb250cm9sbGVyLCBUdWlUcmVlSXRlbUNvbnRleHR9IGZyb20gJy4uLy4uL21pc2MvdHJlZS5pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX1RSRUVfQ09OVFJPTExFUn0gZnJvbSAnLi4vLi4vbWlzYy90cmVlLnRva2Vucyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0FzeW5jUGlwZSwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCwgVHVpQnV0dG9uXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1pdGVtLWNvbnRlbnQudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdHJlZS1pdGVtLWNvbnRlbnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5fZXhwYW5kYWJsZV0nOiAnaXNFeHBhbmRhYmxlJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUcmVlSXRlbUNvbnRlbnQgaW1wbGVtZW50cyBEb0NoZWNrIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2xsZXIgPSBpbmplY3Q8VHVpVHJlZUNvbnRyb2xsZXI+KFxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IFRVSV9UUkVFX0NPTlRST0xMRVIpLFxuICAgICk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9DT01NT05fSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb250ZXh0ID0gaW5qZWN0Q29udGV4dDxUdWlUcmVlSXRlbUNvbnRleHQ+KCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXhwYW5kZWQkID0gdGhpcy5jaGFuZ2UkLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgbWFwKCgpID0+IHRoaXMuaXNFeHBhbmRlZCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcblxuICAgIHB1YmxpYyBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hhbmdlJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBpc0V4cGFuZGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0LmlzRXhwYW5kYWJsZSAmJlxuICAgICAgICAgICAgdGhpcy5jb250cm9sbGVyICE9PSBUVUlfREVGQVVMVF9UUkVFX0NPTlRST0xMRVJcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGlzRXhwYW5kZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRleHQuJGltcGxpY2l0LmlzRXhwYW5kZWQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udHJvbGxlci50b2dnbGUodGhpcy5jb250ZXh0LiRpbXBsaWNpdCk7XG4gICAgfVxufVxuIiwiPGJ1dHRvblxuICAgICpuZ0lmPVwiaXNFeHBhbmRhYmxlXCJcbiAgICBhcHBlYXJhbmNlPVwiZmxhdFwiXG4gICAgc2l6ZT1cInhzXCJcbiAgICB0dWlJY29uQnV0dG9uXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJ0LWJ1dHRvblwiXG4gICAgW2NsYXNzLnQtYnV0dG9uX2V4cGFuZGVkXT1cImV4cGFuZGVkJCB8IGFzeW5jXCJcbiAgICBbaWNvblN0YXJ0XT1cImljb25zLm1vcmVcIlxuICAgIFtzdHlsZS5ib3JkZXItcmFkaXVzLiVdPVwiMTAwXCJcbiAgICAoY2xpY2spPVwib25DbGljaygpXCJcbj48L2J1dHRvbj5cbjxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGV4dC50ZW1wbGF0ZVwiIC8+XG4iXX0=
@@ -0,0 +1,71 @@
1
+ import { DOCUMENT } from '@angular/common';
2
+ import { computed, Directive, inject, Input } from '@angular/core';
3
+ import { toSignal } from '@angular/core/rxjs-interop';
4
+ import { tuiDirectiveBinding, tuiIsString } from '@taiga-ui/cdk/utils/miscellaneous';
5
+ import { TuiIcon } from '@taiga-ui/core/components/icon';
6
+ import { TuiTextfieldComponent } from '@taiga-ui/core/components/textfield';
7
+ import { TUI_APPEARANCE_OPTIONS, TuiWithAppearance, } from '@taiga-ui/core/directives/appearance';
8
+ import { TuiHintDirective } from '@taiga-ui/core/directives/hint';
9
+ import { TUI_COPY_TEXTS } from '@taiga-ui/kit/tokens';
10
+ import { map, startWith, Subject, switchMap, timer } from 'rxjs';
11
+ import { TUI_COPY_OPTIONS } from './copy.options';
12
+ import * as i0 from "@angular/core";
13
+ import * as i1 from "@taiga-ui/core/directives/appearance";
14
+ import * as i2 from "@taiga-ui/core/directives/hint";
15
+ class TuiCopy {
16
+ constructor() {
17
+ this.options = inject(TUI_COPY_OPTIONS);
18
+ this.copied$ = new Subject();
19
+ this.doc = inject(DOCUMENT);
20
+ this.textfield = inject(TuiTextfieldComponent);
21
+ this.hint = tuiDirectiveBinding(TuiHintDirective, 'tuiHint', toSignal(inject(TUI_COPY_TEXTS).pipe(switchMap(([copy, copied]) => this.copied$.pipe(switchMap(() => timer(3000).pipe(map(() => copy), startWith(copied))), startWith(copy)))), { initialValue: '' }));
22
+ this.icons = tuiDirectiveBinding(TuiIcon, 'icon', computed((size = this.textfield.options.size()) => tuiIsString(this.options.icon) ? this.options.icon : this.options.icon(size)));
23
+ this.tuiCopy = '';
24
+ }
25
+ get disabled() {
26
+ return !this.textfield.el?.nativeElement.value;
27
+ }
28
+ copy() {
29
+ this.textfield.el?.nativeElement.select();
30
+ this.doc.execCommand('copy');
31
+ this.copied$.next();
32
+ }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCopy, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
34
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiCopy, isStandalone: true, selector: "tui-icon[tuiCopy]", inputs: { tuiCopy: "tuiCopy" }, host: { listeners: { "click": "copy()" }, properties: { "style.pointer-events": "disabled ? \"none\" : null", "style.opacity": "disabled ? \"var(--tui-disabled-opacity)\" : null", "style.border": "textfield.options.size() === \"s\" ? \"0.25rem solid transparent\" : null" }, styleAttribute: "cursor: pointer" }, providers: [
35
+ {
36
+ provide: TUI_APPEARANCE_OPTIONS,
37
+ useValue: { appearance: 'icon' },
38
+ },
39
+ ], hostDirectives: [{ directive: i1.TuiWithAppearance }, { directive: i2.TuiHintDirective, inputs: ["tuiHintAppearance", "tuiHintAppearance", "tuiHintContext", "tuiHintContext"] }], ngImport: i0 }); }
40
+ }
41
+ export { TuiCopy };
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCopy, decorators: [{
43
+ type: Directive,
44
+ args: [{
45
+ standalone: true,
46
+ selector: 'tui-icon[tuiCopy]',
47
+ providers: [
48
+ {
49
+ provide: TUI_APPEARANCE_OPTIONS,
50
+ useValue: { appearance: 'icon' },
51
+ },
52
+ ],
53
+ hostDirectives: [
54
+ TuiWithAppearance,
55
+ {
56
+ directive: TuiHintDirective,
57
+ inputs: ['tuiHintAppearance', 'tuiHintContext'],
58
+ },
59
+ ],
60
+ host: {
61
+ style: 'cursor: pointer',
62
+ '(click)': 'copy()',
63
+ '[style.pointer-events]': 'disabled ? "none" : null',
64
+ '[style.opacity]': 'disabled ? "var(--tui-disabled-opacity)" : null',
65
+ '[style.border]': 'textfield.options.size() === "s" ? "0.25rem solid transparent" : null',
66
+ },
67
+ }]
68
+ }], propDecorators: { tuiCopy: [{
69
+ type: Input
70
+ }] } });
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvZGlyZWN0aXZlcy9jb3B5L2NvcHkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUUsV0FBVyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDbkYsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsaUJBQWlCLEdBQ3BCLE1BQU0sc0NBQXNDLENBQUM7QUFDOUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRS9ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7O0FBRWhELE1BeUJhLE9BQU87SUF6QnBCO1FBMEJxQixZQUFPLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDbkMsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDOUIsUUFBRyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVyQixjQUFTLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDMUMsU0FBSSxHQUFHLG1CQUFtQixDQUN6QyxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULFFBQVEsQ0FDSixNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUN2QixTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNiLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDWCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUNaLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFDZixTQUFTLENBQUMsTUFBTSxDQUFDLENBQ3BCLENBQ0osRUFDRCxTQUFTLENBQUMsSUFBSSxDQUFDLENBQ2xCLENBQ0osQ0FDSixFQUNELEVBQUMsWUFBWSxFQUFFLEVBQUUsRUFBQyxDQUNyQixDQUNKLENBQUM7UUFFaUIsVUFBSyxHQUFHLG1CQUFtQixDQUMxQyxPQUFPLEVBQ1AsTUFBTSxFQUNOLFFBQVEsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQzlDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQy9FLENBQ0osQ0FBQztRQUdLLFlBQU8sR0FBZ0IsRUFBRSxDQUFDO0tBV3BDO0lBVEcsSUFBYyxRQUFRO1FBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQ25ELENBQUM7SUFFUyxJQUFJO1FBQ1YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQzsrR0E5Q1EsT0FBTzttR0FBUCxPQUFPLHdaQXRCTDtZQUNQO2dCQUNJLE9BQU8sRUFBRSxzQkFBc0I7Z0JBQy9CLFFBQVEsRUFBRSxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7YUFDakM7U0FDSjs7U0FpQlEsT0FBTzs0RkFBUCxPQUFPO2tCQXpCbkIsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxzQkFBc0I7NEJBQy9CLFFBQVEsRUFBRSxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7eUJBQ2pDO3FCQUNKO29CQUNELGNBQWMsRUFBRTt3QkFDWixpQkFBaUI7d0JBQ2pCOzRCQUNJLFNBQVMsRUFBRSxnQkFBZ0I7NEJBQzNCLE1BQU0sRUFBRSxDQUFDLG1CQUFtQixFQUFFLGdCQUFnQixDQUFDO3lCQUNsRDtxQkFDSjtvQkFDRCxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLGlCQUFpQjt3QkFDeEIsU0FBUyxFQUFFLFFBQVE7d0JBQ25CLHdCQUF3QixFQUFFLDBCQUEwQjt3QkFDcEQsaUJBQWlCLEVBQUUsaURBQWlEO3dCQUNwRSxnQkFBZ0IsRUFDWix1RUFBdUU7cUJBQzlFO2lCQUNKOzhCQXFDVSxPQUFPO3NCQURiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtjb21wdXRlZCwgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7dHVpRGlyZWN0aXZlQmluZGluZywgdHVpSXNTdHJpbmd9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aUljb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQge1R1aVRleHRmaWVsZENvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQnO1xuaW1wb3J0IHtcbiAgICBUVUlfQVBQRUFSQU5DRV9PUFRJT05TLFxuICAgIFR1aVdpdGhBcHBlYXJhbmNlLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2FwcGVhcmFuY2UnO1xuaW1wb3J0IHtUdWlIaW50RGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2hpbnQnO1xuaW1wb3J0IHtUVUlfQ09QWV9URVhUU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHttYXAsIHN0YXJ0V2l0aCwgU3ViamVjdCwgc3dpdGNoTWFwLCB0aW1lcn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VFVJX0NPUFlfT1BUSU9OU30gZnJvbSAnLi9jb3B5Lm9wdGlvbnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWljb25bdHVpQ29weV0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfQVBQRUFSQU5DRV9PUFRJT05TLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHthcHBlYXJhbmNlOiAnaWNvbid9LFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICAgICAgVHVpV2l0aEFwcGVhcmFuY2UsXG4gICAgICAgIHtcbiAgICAgICAgICAgIGRpcmVjdGl2ZTogVHVpSGludERpcmVjdGl2ZSxcbiAgICAgICAgICAgIGlucHV0czogWyd0dWlIaW50QXBwZWFyYW5jZScsICd0dWlIaW50Q29udGV4dCddLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBzdHlsZTogJ2N1cnNvcjogcG9pbnRlcicsXG4gICAgICAgICcoY2xpY2spJzogJ2NvcHkoKScsXG4gICAgICAgICdbc3R5bGUucG9pbnRlci1ldmVudHNdJzogJ2Rpc2FibGVkID8gXCJub25lXCIgOiBudWxsJyxcbiAgICAgICAgJ1tzdHlsZS5vcGFjaXR5XSc6ICdkaXNhYmxlZCA/IFwidmFyKC0tdHVpLWRpc2FibGVkLW9wYWNpdHkpXCIgOiBudWxsJyxcbiAgICAgICAgJ1tzdHlsZS5ib3JkZXJdJzpcbiAgICAgICAgICAgICd0ZXh0ZmllbGQub3B0aW9ucy5zaXplKCkgPT09IFwic1wiID8gXCIwLjI1cmVtIHNvbGlkIHRyYW5zcGFyZW50XCIgOiBudWxsJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlDb3B5IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0NPUFlfT1BUSU9OUyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3BpZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRvYyA9IGluamVjdChET0NVTUVOVCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGV4dGZpZWxkID0gaW5qZWN0KFR1aVRleHRmaWVsZENvbXBvbmVudCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGhpbnQgPSB0dWlEaXJlY3RpdmVCaW5kaW5nKFxuICAgICAgICBUdWlIaW50RGlyZWN0aXZlLFxuICAgICAgICAndHVpSGludCcsXG4gICAgICAgIHRvU2lnbmFsKFxuICAgICAgICAgICAgaW5qZWN0KFRVSV9DT1BZX1RFWFRTKS5waXBlKFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgoW2NvcHksIGNvcGllZF0pID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29waWVkJC5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXIoMzAwMCkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IGNvcHkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydFdpdGgoY29waWVkKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0V2l0aChjb3B5KSxcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHtpbml0aWFsVmFsdWU6ICcnfSxcbiAgICAgICAgKSxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gdHVpRGlyZWN0aXZlQmluZGluZyhcbiAgICAgICAgVHVpSWNvbixcbiAgICAgICAgJ2ljb24nLFxuICAgICAgICBjb21wdXRlZCgoc2l6ZSA9IHRoaXMudGV4dGZpZWxkLm9wdGlvbnMuc2l6ZSgpKSA9PlxuICAgICAgICAgICAgdHVpSXNTdHJpbmcodGhpcy5vcHRpb25zLmljb24pID8gdGhpcy5vcHRpb25zLmljb24gOiB0aGlzLm9wdGlvbnMuaWNvbihzaXplKSxcbiAgICAgICAgKSxcbiAgICApO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdHVpQ29weTogc3RyaW5nIHwgJycgPSAnJztcblxuICAgIHByb3RlY3RlZCBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy50ZXh0ZmllbGQuZWw/Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNvcHkoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGV4dGZpZWxkLmVsPy5uYXRpdmVFbGVtZW50LnNlbGVjdCgpO1xuICAgICAgICB0aGlzLmRvYy5leGVjQ29tbWFuZCgnY29weScpO1xuICAgICAgICB0aGlzLmNvcGllZCQubmV4dCgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ import { tuiCreateOptions } from '@taiga-ui/cdk/utils/di';
2
+ export const [TUI_COPY_OPTIONS, tuiCopyOptionsProvider] = tuiCreateOptions({
3
+ icon: '@tui.copy',
4
+ });
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS5vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2RpcmVjdGl2ZXMvY29weS9jb3B5Lm9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFPeEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxzQkFBc0IsQ0FBQyxHQUNuRCxnQkFBZ0IsQ0FBaUI7SUFDN0IsSUFBSSxFQUFFLFdBQVc7Q0FDcEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1R1aVN0cmluZ0hhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlDcmVhdGVPcHRpb25zfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RpJztcbmltcG9ydCB0eXBlIHtUdWlTaXplTCwgVHVpU2l6ZVN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlDb3B5T3B0aW9ucyB7XG4gICAgcmVhZG9ubHkgaWNvbjogVHVpU3RyaW5nSGFuZGxlcjxUdWlTaXplTCB8IFR1aVNpemVTPiB8IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IFtUVUlfQ09QWV9PUFRJT05TLCB0dWlDb3B5T3B0aW9uc1Byb3ZpZGVyXSA9XG4gICAgdHVpQ3JlYXRlT3B0aW9uczxUdWlDb3B5T3B0aW9ucz4oe1xuICAgICAgICBpY29uOiAnQHR1aS5jb3B5JyxcbiAgICB9KTtcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './copy.directive';
2
+ export * from './copy.options';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvZGlyZWN0aXZlcy9jb3B5L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29weS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3B5Lm9wdGlvbnMnO1xuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWkta2l0LWRpcmVjdGl2ZXMtY29weS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9kaXJlY3RpdmVzL2NvcHkvdGFpZ2EtdWkta2l0LWRpcmVjdGl2ZXMtY29weS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==