@skyux/lists 7.0.0-beta.0 → 7.0.0-beta.10

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 (50) hide show
  1. package/documentation.json +727 -448
  2. package/esm2020/index.mjs +2 -1
  3. package/esm2020/lib/modules/filter/filter-button.component.mjs +17 -5
  4. package/esm2020/lib/modules/filter/filter-summary-item.component.mjs +15 -6
  5. package/esm2020/lib/modules/infinite-scroll/infinite-scroll-dom-adapter.service.mjs +52 -60
  6. package/esm2020/lib/modules/infinite-scroll/infinite-scroll.component.mjs +51 -44
  7. package/esm2020/lib/modules/paging/paging.component.mjs +41 -40
  8. package/esm2020/lib/modules/repeater/repeater-adapter.service.mjs +32 -27
  9. package/esm2020/lib/modules/repeater/repeater-expand-mode-type.mjs +2 -0
  10. package/esm2020/lib/modules/repeater/repeater-item.component.mjs +168 -147
  11. package/esm2020/lib/modules/repeater/repeater.component.mjs +167 -173
  12. package/esm2020/lib/modules/repeater/repeater.service.mjs +15 -4
  13. package/esm2020/lib/modules/sort/sort-item.component.mjs +26 -16
  14. package/esm2020/lib/modules/sort/sort.component.mjs +1 -1
  15. package/esm2020/lib/modules/sort/sort.service.mjs +1 -1
  16. package/esm2020/testing/filter/filter-fixture-button.mjs +21 -15
  17. package/esm2020/testing/filter/filter-fixture-summary.mjs +11 -6
  18. package/esm2020/testing/filter/lists-filter-fixture-button.mjs +1 -1
  19. package/esm2020/testing/paging/paging-fixture.mjs +2 -2
  20. package/esm2020/testing/repeater/repeater-item-harness.mjs +17 -8
  21. package/esm2020/testing/sort/sort-fixture-menu-item.mjs +1 -1
  22. package/esm2020/testing/sort/sort-fixture.mjs +53 -47
  23. package/fesm2015/skyux-lists-testing.mjs +85 -58
  24. package/fesm2015/skyux-lists-testing.mjs.map +1 -1
  25. package/fesm2015/skyux-lists.mjs +581 -520
  26. package/fesm2015/skyux-lists.mjs.map +1 -1
  27. package/fesm2020/skyux-lists-testing.mjs +96 -73
  28. package/fesm2020/skyux-lists-testing.mjs.map +1 -1
  29. package/fesm2020/skyux-lists.mjs +573 -520
  30. package/fesm2020/skyux-lists.mjs.map +1 -1
  31. package/index.d.ts +1 -0
  32. package/lib/modules/filter/filter-button.component.d.ts +9 -8
  33. package/lib/modules/filter/filter-summary-item.component.d.ts +3 -1
  34. package/lib/modules/infinite-scroll/infinite-scroll-dom-adapter.service.d.ts +3 -9
  35. package/lib/modules/infinite-scroll/infinite-scroll.component.d.ts +3 -10
  36. package/lib/modules/paging/paging.component.d.ts +2 -4
  37. package/lib/modules/repeater/repeater-adapter.service.d.ts +4 -11
  38. package/lib/modules/repeater/repeater-expand-mode-type.d.ts +1 -0
  39. package/lib/modules/repeater/repeater-item.component.d.ts +24 -46
  40. package/lib/modules/repeater/repeater.component.d.ts +8 -21
  41. package/lib/modules/repeater/repeater.service.d.ts +7 -5
  42. package/lib/modules/sort/sort-item.component.d.ts +2 -5
  43. package/lib/modules/sort/sort.component.d.ts +1 -1
  44. package/package.json +10 -10
  45. package/testing/filter/filter-fixture-button.d.ts +1 -2
  46. package/testing/filter/filter-fixture-summary.d.ts +1 -2
  47. package/testing/filter/lists-filter-fixture-button.d.ts +2 -2
  48. package/testing/repeater/repeater-item-harness.d.ts +5 -1
  49. package/testing/sort/sort-fixture-menu-item.d.ts +1 -1
  50. package/testing/sort/sort-fixture.d.ts +4 -14
@@ -1,13 +1,14 @@
1
1
  import * as i1 from '@angular/common';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
- import { NgModule, EventEmitter, Component, ChangeDetectionStrategy, Input, Output, Injectable, ElementRef, ViewEncapsulation, HostBinding, ContentChild, ViewChild, ContentChildren, HostListener } from '@angular/core';
4
+ import { NgModule, EventEmitter, Component, ChangeDetectionStrategy, Input, Output, Injectable, ElementRef, ViewEncapsulation, ContentChild, HostBinding, ViewChild, ContentChildren, HostListener } from '@angular/core';
5
5
  import * as i2 from '@skyux/indicators';
6
6
  import { SkyIconModule, SkyTokensModule, SkyWaitModule, SkyChevronModule } from '@skyux/indicators';
7
7
  import * as i3 from '@skyux/theme';
8
8
  import { SkyThemeModule } from '@skyux/theme';
9
9
  import * as i4 from '@skyux/i18n';
10
10
  import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
11
+ import { __classPrivateFieldSet, __classPrivateFieldGet } from 'tslib';
11
12
  import { Subject, fromEvent, BehaviorSubject, forkJoin } from 'rxjs';
12
13
  import { takeUntil, filter, map } from 'rxjs/operators';
13
14
  import * as i1$1 from '@skyux/core';
@@ -102,9 +103,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
102
103
  }]
103
104
  }] });
104
105
 
106
+ var _SkyFilterButtonComponent_defaultButtonId, _SkyFilterButtonComponent_filterButtonIdOrDefault;
105
107
  let nextId = 0;
106
108
  class SkyFilterButtonComponent {
107
109
  constructor() {
110
+ /**
111
+ * Indicates whether the filtering options are exposed.
112
+ * To support [accessibility rules for disclosures](https://www.w3.org/TR/wai-aria-practices-1.1/#disclosure),
113
+ * this property is necessary when using inline filters.
114
+ */
115
+ this.ariaExpanded = false;
108
116
  /**
109
117
  * Indicates whether to highlight the filter button to indicate that filters were applied.
110
118
  * We recommend setting this property to `true` when no indication of filtering is visible
@@ -123,26 +131,30 @@ class SkyFilterButtonComponent {
123
131
  * Fires when the filter button is selected.
124
132
  */
125
133
  this.filterButtonClick = new EventEmitter();
134
+ _SkyFilterButtonComponent_defaultButtonId.set(this, void 0);
135
+ _SkyFilterButtonComponent_filterButtonIdOrDefault.set(this, void 0);
136
+ __classPrivateFieldSet(this, _SkyFilterButtonComponent_filterButtonIdOrDefault, __classPrivateFieldSet(this, _SkyFilterButtonComponent_defaultButtonId, `sky-filter-button-${++nextId}`, "f"), "f");
126
137
  }
127
138
  /**
128
139
  * Specifies an ID for the filter button.
129
140
  */
130
141
  get filterButtonId() {
131
- return this._filterButtonId || `sky-filter-button-${++nextId}`;
142
+ return __classPrivateFieldGet(this, _SkyFilterButtonComponent_filterButtonIdOrDefault, "f");
132
143
  }
133
144
  set filterButtonId(value) {
134
- this._filterButtonId = value;
145
+ __classPrivateFieldSet(this, _SkyFilterButtonComponent_filterButtonIdOrDefault, value || __classPrivateFieldGet(this, _SkyFilterButtonComponent_defaultButtonId, "f"), "f");
135
146
  }
136
147
  filterButtonOnClick() {
137
- this.filterButtonClick.emit(undefined);
148
+ this.filterButtonClick.emit();
138
149
  }
139
150
  }
151
+ _SkyFilterButtonComponent_defaultButtonId = new WeakMap(), _SkyFilterButtonComponent_filterButtonIdOrDefault = new WeakMap();
140
152
  SkyFilterButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFilterButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
141
153
  SkyFilterButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFilterButtonComponent, selector: "sky-filter-button", inputs: { filterButtonId: "filterButtonId", ariaControls: "ariaControls", ariaExpanded: "ariaExpanded", active: "active", disabled: "disabled", showButtonText: "showButtonText" }, outputs: { filterButtonClick: "filterButtonClick" }, ngImport: i0, template: "<button\n class=\"sky-btn sky-btn-default sky-filter-btn\"\n type=\"button\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-label]=\"'skyux_filter_button_title' | skyLibResources\"\n [attr.title]=\"'skyux_filter_button_title' | skyLibResources\"\n [disabled]=\"disabled\"\n [id]=\"filterButtonId\"\n [ngClass]=\"{\n 'sky-filter-btn-active': active\n }\"\n [skyThemeClass]=\"{\n 'sky-rounded-corners': 'default',\n 'sky-theme-modern': 'modern'\n }\"\n (click)=\"filterButtonOnClick()\"\n>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"filter\" size=\"lg\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"filter\" iconType=\"skyux\"></sky-icon>\n <span *ngIf=\"showButtonText\" class=\"sky-filter-btn-text\">\n {{ 'skyux_filter_button_title' | skyLibResources }}\n </span>\n</button>\n", styles: [".sky-filter-btn-active,.sky-filter-btn-active:hover,.sky-filter-btn-active:focus{color:#72bf44;border:2px solid #72bf44;padding:5px 11px}.sky-filter-btn-active:hover,.sky-filter-btn-active:focus{color:#212327}.sky-theme-modern.sky-filter-btn-active,.sky-theme-modern.sky-filter-btn-active:hover,.sky-theme-modern.sky-filter-btn-active:focus{color:initial;border:none;box-shadow:inset 0 0 0 1px #0974a1;background-color:#c1e8fb;color:#212327;padding:9px 21px}.sky-theme-modern.sky-filter-btn-active:hover,.sky-theme-modern.sky-filter-btn-active:hover:hover,.sky-theme-modern.sky-filter-btn-active:focus:hover{border:none;box-shadow:inset 0 0 0 1px #0974a1;text-decoration:none}.sky-theme-modern.sky-filter-btn-active:hover,.sky-theme-modern.sky-filter-btn-active:active,.sky-theme-modern.sky-filter-btn-active.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:hover:hover,.sky-theme-modern.sky-filter-btn-active:hover:active,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:focus:hover,.sky-theme-modern.sky-filter-btn-active:focus:active,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-active{color:#212327}.sky-theme-modern.sky-filter-btn-active:active,.sky-theme-modern.sky-filter-btn-active.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:hover:active,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:focus:active,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-active{border:none;box-shadow:inset 0 0 0 2px #0974a1;background-image:none}.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled:hover,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled:focus,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled.sky-btn-focus,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled:active,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled.sky-btn-active,.sky-theme-modern.sky-filter-btn-active[disabled],.sky-theme-modern.sky-filter-btn-active[disabled]:hover,.sky-theme-modern.sky-filter-btn-active[disabled]:focus,.sky-theme-modern.sky-filter-btn-active[disabled].sky-btn-focus,.sky-theme-modern.sky-filter-btn-active[disabled]:active,.sky-theme-modern.sky-filter-btn-active[disabled].sky-btn-active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active.sky-btn-focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled:hover,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled:focus,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled.sky-btn-focus,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled:active,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:hover[disabled],.sky-theme-modern.sky-filter-btn-active:hover[disabled]:hover,.sky-theme-modern.sky-filter-btn-active:hover[disabled]:focus,.sky-theme-modern.sky-filter-btn-active:hover[disabled].sky-btn-focus,.sky-theme-modern.sky-filter-btn-active:hover[disabled]:active,.sky-theme-modern.sky-filter-btn-active:hover[disabled].sky-btn-active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover:hover,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover:focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover.sky-btn-focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover:active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled:hover,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled:focus,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled.sky-btn-focus,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled:active,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:focus[disabled],.sky-theme-modern.sky-filter-btn-active:focus[disabled]:hover,.sky-theme-modern.sky-filter-btn-active:focus[disabled]:focus,.sky-theme-modern.sky-filter-btn-active:focus[disabled].sky-btn-focus,.sky-theme-modern.sky-filter-btn-active:focus[disabled]:active,.sky-theme-modern.sky-filter-btn-active:focus[disabled].sky-btn-active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus:hover,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus:focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus.sky-btn-focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus:active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus.sky-btn-active{border:none;box-shadow:inset 0 0 0 1px #d2d2d2;background-color:#ededee;color:#686c73;opacity:1}.sky-theme-modern.sky-filter-btn-active:focus,.sky-theme-modern.sky-filter-btn-active:hover:focus,.sky-theme-modern.sky-filter-btn-active:focus:focus{outline:none}.sky-theme-modern.sky-filter-btn-active:focus:not(:active),.sky-theme-modern.sky-filter-btn-active:hover:focus:not(:active),.sky-theme-modern.sky-filter-btn-active:focus:focus:not(:active){border:none;box-shadow:inset 0 0 0 2px #0974a1,0 1px 8px #0000004d}:host .sky-filter-btn-text{display:none}:host .sky-filter-btn ::ng-deep .sky-dropdown-caret{display:none}:host-context(.sky-responsive-container-xs) .sky-filter-btn-text,:host-context(.sky-responsive-container-sm) .sky-filter-btn-text,:host-context(.sky-responsive-container-md) .sky-filter-btn-text,:host-context(.sky-responsive-container-lg) .sky-filter-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-sm) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-md) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-lg) .sky-filter-btn ::ng-deep .sky-dropdown-caret{display:none}@media (min-width: 768px){:host .sky-filter-btn-text{display:inline}:host .sky-filter-btn ::ng-deep .sky-dropdown-caret{display:inline-block}}:host-context(.sky-responsive-container-sm) .sky-filter-btn-text,:host-context(.sky-responsive-container-md) .sky-filter-btn-text,:host-context(.sky-responsive-container-lg) .sky-filter-btn-text{display:inline}:host-context(.sky-responsive-container-sm) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-md) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-lg) .sky-filter-btn ::ng-deep .sky-dropdown-caret{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "directive", type: i3.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { kind: "directive", type: i3.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
142
154
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFilterButtonComponent, decorators: [{
143
155
  type: Component,
144
156
  args: [{ selector: 'sky-filter-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n class=\"sky-btn sky-btn-default sky-filter-btn\"\n type=\"button\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-label]=\"'skyux_filter_button_title' | skyLibResources\"\n [attr.title]=\"'skyux_filter_button_title' | skyLibResources\"\n [disabled]=\"disabled\"\n [id]=\"filterButtonId\"\n [ngClass]=\"{\n 'sky-filter-btn-active': active\n }\"\n [skyThemeClass]=\"{\n 'sky-rounded-corners': 'default',\n 'sky-theme-modern': 'modern'\n }\"\n (click)=\"filterButtonOnClick()\"\n>\n <sky-icon *skyThemeIf=\"'default'\" icon=\"filter\" size=\"lg\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"filter\" iconType=\"skyux\"></sky-icon>\n <span *ngIf=\"showButtonText\" class=\"sky-filter-btn-text\">\n {{ 'skyux_filter_button_title' | skyLibResources }}\n </span>\n</button>\n", styles: [".sky-filter-btn-active,.sky-filter-btn-active:hover,.sky-filter-btn-active:focus{color:#72bf44;border:2px solid #72bf44;padding:5px 11px}.sky-filter-btn-active:hover,.sky-filter-btn-active:focus{color:#212327}.sky-theme-modern.sky-filter-btn-active,.sky-theme-modern.sky-filter-btn-active:hover,.sky-theme-modern.sky-filter-btn-active:focus{color:initial;border:none;box-shadow:inset 0 0 0 1px #0974a1;background-color:#c1e8fb;color:#212327;padding:9px 21px}.sky-theme-modern.sky-filter-btn-active:hover,.sky-theme-modern.sky-filter-btn-active:hover:hover,.sky-theme-modern.sky-filter-btn-active:focus:hover{border:none;box-shadow:inset 0 0 0 1px #0974a1;text-decoration:none}.sky-theme-modern.sky-filter-btn-active:hover,.sky-theme-modern.sky-filter-btn-active:active,.sky-theme-modern.sky-filter-btn-active.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:hover:hover,.sky-theme-modern.sky-filter-btn-active:hover:active,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:focus:hover,.sky-theme-modern.sky-filter-btn-active:focus:active,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-active{color:#212327}.sky-theme-modern.sky-filter-btn-active:active,.sky-theme-modern.sky-filter-btn-active.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:hover:active,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:focus:active,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-active{border:none;box-shadow:inset 0 0 0 2px #0974a1;background-image:none}.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled:hover,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled:focus,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled.sky-btn-focus,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled:active,.sky-theme-modern.sky-filter-btn-active.sky-btn-disabled.sky-btn-active,.sky-theme-modern.sky-filter-btn-active[disabled],.sky-theme-modern.sky-filter-btn-active[disabled]:hover,.sky-theme-modern.sky-filter-btn-active[disabled]:focus,.sky-theme-modern.sky-filter-btn-active[disabled].sky-btn-focus,.sky-theme-modern.sky-filter-btn-active[disabled]:active,.sky-theme-modern.sky-filter-btn-active[disabled].sky-btn-active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active.sky-btn-focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled:hover,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled:focus,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled.sky-btn-focus,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled:active,.sky-theme-modern.sky-filter-btn-active:hover.sky-btn-disabled.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:hover[disabled],.sky-theme-modern.sky-filter-btn-active:hover[disabled]:hover,.sky-theme-modern.sky-filter-btn-active:hover[disabled]:focus,.sky-theme-modern.sky-filter-btn-active:hover[disabled].sky-btn-focus,.sky-theme-modern.sky-filter-btn-active:hover[disabled]:active,.sky-theme-modern.sky-filter-btn-active:hover[disabled].sky-btn-active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover:hover,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover:focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover.sky-btn-focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover:active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:hover.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled:hover,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled:focus,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled.sky-btn-focus,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled:active,.sky-theme-modern.sky-filter-btn-active:focus.sky-btn-disabled.sky-btn-active,.sky-theme-modern.sky-filter-btn-active:focus[disabled],.sky-theme-modern.sky-filter-btn-active:focus[disabled]:hover,.sky-theme-modern.sky-filter-btn-active:focus[disabled]:focus,.sky-theme-modern.sky-filter-btn-active:focus[disabled].sky-btn-focus,.sky-theme-modern.sky-filter-btn-active:focus[disabled]:active,.sky-theme-modern.sky-filter-btn-active:focus[disabled].sky-btn-active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus:hover,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus:focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus.sky-btn-focus,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus:active,fieldset[disabled] .sky-theme-modern.sky-filter-btn-active:focus.sky-btn-active{border:none;box-shadow:inset 0 0 0 1px #d2d2d2;background-color:#ededee;color:#686c73;opacity:1}.sky-theme-modern.sky-filter-btn-active:focus,.sky-theme-modern.sky-filter-btn-active:hover:focus,.sky-theme-modern.sky-filter-btn-active:focus:focus{outline:none}.sky-theme-modern.sky-filter-btn-active:focus:not(:active),.sky-theme-modern.sky-filter-btn-active:hover:focus:not(:active),.sky-theme-modern.sky-filter-btn-active:focus:focus:not(:active){border:none;box-shadow:inset 0 0 0 2px #0974a1,0 1px 8px #0000004d}:host .sky-filter-btn-text{display:none}:host .sky-filter-btn ::ng-deep .sky-dropdown-caret{display:none}:host-context(.sky-responsive-container-xs) .sky-filter-btn-text,:host-context(.sky-responsive-container-sm) .sky-filter-btn-text,:host-context(.sky-responsive-container-md) .sky-filter-btn-text,:host-context(.sky-responsive-container-lg) .sky-filter-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-sm) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-md) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-lg) .sky-filter-btn ::ng-deep .sky-dropdown-caret{display:none}@media (min-width: 768px){:host .sky-filter-btn-text{display:inline}:host .sky-filter-btn ::ng-deep .sky-dropdown-caret{display:inline-block}}:host-context(.sky-responsive-container-sm) .sky-filter-btn-text,:host-context(.sky-responsive-container-md) .sky-filter-btn-text,:host-context(.sky-responsive-container-lg) .sky-filter-btn-text{display:inline}:host-context(.sky-responsive-container-sm) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-md) .sky-filter-btn ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-lg) .sky-filter-btn ::ng-deep .sky-dropdown-caret{display:inline-block}\n"] }]
145
- }], propDecorators: { filterButtonId: [{
157
+ }], ctorParameters: function () { return []; }, propDecorators: { filterButtonId: [{
146
158
  type: Input
147
159
  }], ariaControls: [{
148
160
  type: Input
@@ -182,15 +194,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
182
194
  args: [{ selector: 'sky-filter-inline', template: "<div class=\"sky-filter-inline sky-padding-even-default\">\n <ng-content></ng-content>\n</div>\n", styles: [".sky-filter-inline{background-color:#eeeeef;display:flex;align-items:center}\n"] }]
183
195
  }] });
184
196
 
197
+ var _SkyFilterSummaryItemComponent__dismissible;
185
198
  /**
186
199
  * Specifies a filter that was applied.
187
200
  */
188
201
  class SkyFilterSummaryItemComponent {
189
202
  constructor() {
190
- /**
191
- * Indicates whether the filter summary item has a close button.
192
- */
193
- this.dismissible = true;
194
203
  /**
195
204
  * Fires when the summary item close button is selected.
196
205
  */
@@ -199,6 +208,16 @@ class SkyFilterSummaryItemComponent {
199
208
  * Fires when the summary item is selected.
200
209
  */
201
210
  this.itemClick = new EventEmitter();
211
+ _SkyFilterSummaryItemComponent__dismissible.set(this, true);
212
+ }
213
+ /**
214
+ * Indicates whether the filter summary item has a close button.
215
+ */
216
+ get dismissible() {
217
+ return __classPrivateFieldGet(this, _SkyFilterSummaryItemComponent__dismissible, "f");
218
+ }
219
+ set dismissible(value) {
220
+ __classPrivateFieldSet(this, _SkyFilterSummaryItemComponent__dismissible, value !== false, "f");
202
221
  }
203
222
  onItemDismiss() {
204
223
  this.dismiss.emit();
@@ -210,8 +229,9 @@ class SkyFilterSummaryItemComponent {
210
229
  this.itemClick.emit();
211
230
  }
212
231
  }
232
+ _SkyFilterSummaryItemComponent__dismissible = new WeakMap();
213
233
  SkyFilterSummaryItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFilterSummaryItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
214
- SkyFilterSummaryItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFilterSummaryItemComponent, selector: "sky-filter-summary-item", inputs: { dismissible: "dismissible" }, outputs: { dismiss: "dismiss", itemClick: "itemClick" }, ngImport: i0, template: "<div\n class=\"sky-filter-summary-item\"\n (click)=\"onItemClick()\"\n (keypress.enter)=\"onItemKeypress()\"\n>\n <sky-token\n [ariaLabel]=\"'skyux_filter_summary_close' | skyLibResources\"\n [dismissible]=\"dismissible\"\n (dismiss)=\"onItemDismiss()\"\n >\n <ng-content> </ng-content>\n </sky-token>\n</div>\n", styles: [".sky-filter-summary-item{display:inline-block}:host:not(:last-child){margin-right:5px}:host-context(.sky-theme-modern) .sky-filter-summary-item{padding:0 0 5px}.sky-theme-modern .sky-filter-summary-item{padding:0 0 5px}\n"], dependencies: [{ kind: "component", type: i2.λ12, selector: "sky-token", inputs: ["disabled", "ariaLabel", "dismissible", "focusable"], outputs: ["dismiss", "tokenFocus"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
234
+ SkyFilterSummaryItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFilterSummaryItemComponent, selector: "sky-filter-summary-item", inputs: { dismissible: "dismissible" }, outputs: { dismiss: "dismiss", itemClick: "itemClick" }, ngImport: i0, template: "<div\n class=\"sky-filter-summary-item\"\n (click)=\"onItemClick()\"\n (keypress.enter)=\"onItemKeypress()\"\n>\n <sky-token\n [ariaLabel]=\"'skyux_filter_summary_close' | skyLibResources\"\n [dismissible]=\"dismissible\"\n (dismiss)=\"onItemDismiss()\"\n >\n <ng-content> </ng-content>\n </sky-token>\n</div>\n", styles: [".sky-filter-summary-item{display:inline-block}:host:not(:last-child){margin-right:5px}:host-context(.sky-theme-modern) .sky-filter-summary-item{padding:0 0 5px}.sky-theme-modern .sky-filter-summary-item{padding:0 0 5px}\n"], dependencies: [{ kind: "component", type: i2.λ12, selector: "sky-token", inputs: ["disabled", "ariaLabel", "dismissible", "focusable", "role"], outputs: ["dismiss", "tokenFocus"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
215
235
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFilterSummaryItemComponent, decorators: [{
216
236
  type: Component,
217
237
  args: [{ selector: 'sky-filter-summary-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"sky-filter-summary-item\"\n (click)=\"onItemClick()\"\n (keypress.enter)=\"onItemKeypress()\"\n>\n <sky-token\n [ariaLabel]=\"'skyux_filter_summary_close' | skyLibResources\"\n [dismissible]=\"dismissible\"\n (dismiss)=\"onItemDismiss()\"\n >\n <ng-content> </ng-content>\n </sky-token>\n</div>\n", styles: [".sky-filter-summary-item{display:inline-block}:host:not(:last-child){margin-right:5px}:host-context(.sky-theme-modern) .sky-filter-summary-item{padding:0 0 5px}.sky-theme-modern .sky-filter-summary-item{padding:0 0 5px}\n"] }]
@@ -283,19 +303,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
283
303
  }]
284
304
  }] });
285
305
 
306
+ var _SkyInfiniteScrollDomAdapterService_instances, _SkyInfiniteScrollDomAdapterService_ngUnsubscribe, _SkyInfiniteScrollDomAdapterService_observer, _SkyInfiniteScrollDomAdapterService_parentChanges, _SkyInfiniteScrollDomAdapterService_parentChangesObs, _SkyInfiniteScrollDomAdapterService_scrollableHostSvc, _SkyInfiniteScrollDomAdapterService_windowRef, _SkyInfiniteScrollDomAdapterService_createObserver, _SkyInfiniteScrollDomAdapterService_isElementScrolledInView;
286
307
  /**
287
308
  * @internal
288
309
  */
289
310
  class SkyInfiniteScrollDomAdapterService {
290
- constructor(windowRef) {
291
- this.windowRef = windowRef;
292
- this.ngUnsubscribe = new Subject();
293
- this._parentChanges = new EventEmitter();
311
+ constructor(scrollableHostSvc, windowRef) {
312
+ _SkyInfiniteScrollDomAdapterService_instances.add(this);
313
+ _SkyInfiniteScrollDomAdapterService_ngUnsubscribe.set(this, new Subject());
314
+ _SkyInfiniteScrollDomAdapterService_observer.set(this, void 0);
315
+ _SkyInfiniteScrollDomAdapterService_parentChanges.set(this, void 0);
316
+ _SkyInfiniteScrollDomAdapterService_parentChangesObs.set(this, void 0);
317
+ _SkyInfiniteScrollDomAdapterService_scrollableHostSvc.set(this, void 0);
318
+ _SkyInfiniteScrollDomAdapterService_windowRef.set(this, void 0);
319
+ __classPrivateFieldSet(this, _SkyInfiniteScrollDomAdapterService_scrollableHostSvc, scrollableHostSvc, "f");
320
+ __classPrivateFieldSet(this, _SkyInfiniteScrollDomAdapterService_windowRef, windowRef, "f");
321
+ __classPrivateFieldSet(this, _SkyInfiniteScrollDomAdapterService_parentChanges, new Subject(), "f");
322
+ __classPrivateFieldSet(this, _SkyInfiniteScrollDomAdapterService_parentChangesObs, __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_parentChanges, "f").asObservable(), "f");
294
323
  }
295
324
  ngOnDestroy() {
296
- this._parentChanges.complete();
297
- this.ngUnsubscribe.next();
298
- this.ngUnsubscribe.complete();
325
+ __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_parentChanges, "f").complete();
326
+ __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_ngUnsubscribe, "f").next();
327
+ __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_ngUnsubscribe, "f").complete();
299
328
  }
300
329
  /**
301
330
  * This event is triggered when child nodes are added to the infinite
@@ -303,8 +332,8 @@ class SkyInfiniteScrollDomAdapterService {
303
332
  * @param elementRef The infinite scroll element reference.
304
333
  */
305
334
  parentChanges(elementRef) {
306
- this.createObserver(elementRef.nativeElement);
307
- return this._parentChanges;
335
+ __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_instances, "m", _SkyInfiniteScrollDomAdapterService_createObserver).call(this, elementRef);
336
+ return __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_parentChangesObs, "f");
308
337
  }
309
338
  /**
310
339
  * This event is triggered when the provided element reference
@@ -312,69 +341,50 @@ class SkyInfiniteScrollDomAdapterService {
312
341
  * @param elementRef The infinite scroll element reference.
313
342
  */
314
343
  scrollTo(elementRef) {
315
- const parent = this.findScrollableParent(elementRef.nativeElement);
316
- return fromEvent(parent, 'scroll').pipe(takeUntil(this.ngUnsubscribe), filter(() => {
317
- return this.isElementScrolledInView(elementRef.nativeElement, parent);
344
+ const parent = __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_scrollableHostSvc, "f").getScrollableHost(elementRef);
345
+ return fromEvent(parent, 'scroll').pipe(takeUntil(__classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_ngUnsubscribe, "f")), filter(() => {
346
+ return __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_instances, "m", _SkyInfiniteScrollDomAdapterService_isElementScrolledInView).call(this, elementRef.nativeElement, parent);
318
347
  }), map(() => undefined) // Change to void return type
319
348
  );
320
349
  }
321
- createObserver(element) {
322
- this.observer = new MutationObserver((mutations) => {
323
- const hasUpdates = !!mutations.find((mutation) => {
324
- return (!element.contains(mutation.target) && mutation.addedNodes.length > 0);
325
- });
326
- if (hasUpdates) {
327
- this._parentChanges.emit();
328
- }
329
- });
330
- const windowObj = this.windowRef.nativeWindow;
331
- const parent = this.findScrollableParent(element);
332
- const observedParent = parent === windowObj ? windowObj.document.body : parent;
333
- this.observer.observe(observedParent, {
334
- childList: true,
335
- subtree: true,
350
+ }
351
+ _SkyInfiniteScrollDomAdapterService_ngUnsubscribe = new WeakMap(), _SkyInfiniteScrollDomAdapterService_observer = new WeakMap(), _SkyInfiniteScrollDomAdapterService_parentChanges = new WeakMap(), _SkyInfiniteScrollDomAdapterService_parentChangesObs = new WeakMap(), _SkyInfiniteScrollDomAdapterService_scrollableHostSvc = new WeakMap(), _SkyInfiniteScrollDomAdapterService_windowRef = new WeakMap(), _SkyInfiniteScrollDomAdapterService_instances = new WeakSet(), _SkyInfiniteScrollDomAdapterService_createObserver = function _SkyInfiniteScrollDomAdapterService_createObserver(elementRef) {
352
+ __classPrivateFieldSet(this, _SkyInfiniteScrollDomAdapterService_observer, new MutationObserver((mutations) => {
353
+ const hasUpdates = !!mutations.find((mutation) => {
354
+ return (!elementRef.nativeElement.contains(mutation.target) &&
355
+ mutation.addedNodes.length > 0);
336
356
  });
337
- }
338
- findScrollableParent(element) {
339
- const regex = /(auto|scroll)/;
340
- const windowObj = this.windowRef.nativeWindow;
341
- const bodyObj = windowObj.document.body;
342
- let style = windowObj.getComputedStyle(element);
343
- let parent = element;
344
- do {
345
- parent = parent.parentNode;
346
- style = windowObj.getComputedStyle(parent);
347
- } while (!regex.test(style.overflow) &&
348
- !regex.test(style.overflowY) &&
349
- parent.parentNode &&
350
- parent !== bodyObj);
351
- if (parent === bodyObj) {
352
- return windowObj;
353
- }
354
- return parent;
355
- }
356
- isElementScrolledInView(element, parentElement) {
357
- const windowObj = this.windowRef.nativeWindow;
358
- if (parentElement === windowObj) {
359
- return (parentElement.pageYOffset + parentElement.innerHeight >
360
- element.offsetTop);
357
+ if (hasUpdates) {
358
+ __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_parentChanges, "f").next();
361
359
  }
362
- const elementRect = element.getBoundingClientRect();
363
- const parentRect = parentElement.getBoundingClientRect();
364
- return elementRect.top < parentRect.top + parentRect.height;
365
- }
366
- }
367
- SkyInfiniteScrollDomAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInfiniteScrollDomAdapterService, deps: [{ token: i1$1.SkyAppWindowRef }], target: i0.ɵɵFactoryTarget.Injectable });
360
+ }), "f");
361
+ const windowObj = __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_windowRef, "f").nativeWindow;
362
+ const parent = __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_scrollableHostSvc, "f").getScrollableHost(elementRef);
363
+ const observedParent = parent === windowObj ? windowObj.document.body : parent;
364
+ __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_observer, "f").observe(observedParent, {
365
+ childList: true,
366
+ subtree: true,
367
+ });
368
+ }, _SkyInfiniteScrollDomAdapterService_isElementScrolledInView = function _SkyInfiniteScrollDomAdapterService_isElementScrolledInView(element, parentElement) {
369
+ const windowObj = __classPrivateFieldGet(this, _SkyInfiniteScrollDomAdapterService_windowRef, "f").nativeWindow;
370
+ if (parentElement === windowObj) {
371
+ return (parentElement.pageYOffset + parentElement.innerHeight >
372
+ element.offsetTop);
373
+ }
374
+ const elementRect = element.getBoundingClientRect();
375
+ const parentRect = parentElement.getBoundingClientRect();
376
+ return elementRect.top < parentRect.top + parentRect.height;
377
+ };
378
+ SkyInfiniteScrollDomAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInfiniteScrollDomAdapterService, deps: [{ token: i1$1.SkyScrollableHostService }, { token: i1$1.SkyAppWindowRef }], target: i0.ɵɵFactoryTarget.Injectable });
368
379
  SkyInfiniteScrollDomAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInfiniteScrollDomAdapterService });
369
380
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInfiniteScrollDomAdapterService, decorators: [{
370
381
  type: Injectable
371
- }], ctorParameters: function () { return [{ type: i1$1.SkyAppWindowRef }]; } });
382
+ }], ctorParameters: function () { return [{ type: i1$1.SkyScrollableHostService }, { type: i1$1.SkyAppWindowRef }]; } });
372
383
 
384
+ var _SkyInfiniteScrollComponent_instances, _SkyInfiniteScrollComponent_changeDetector, _SkyInfiniteScrollComponent_domAdapter, _SkyInfiniteScrollComponent_elementRef, _SkyInfiniteScrollComponent_ngUnsubscribe, _SkyInfiniteScrollComponent__enabled, _SkyInfiniteScrollComponent__loading, _SkyInfiniteScrollComponent_notifyScrollEnd, _SkyInfiniteScrollComponent_setListeners;
373
385
  class SkyInfiniteScrollComponent {
374
386
  constructor(changeDetector, elementRef, domAdapter) {
375
- this.changeDetector = changeDetector;
376
- this.elementRef = elementRef;
377
- this.domAdapter = domAdapter;
387
+ _SkyInfiniteScrollComponent_instances.add(this);
378
388
  /**
379
389
  * Fires when scrolling triggers the need to load more data or when users select the button
380
390
  * to load more data. This event only fires when the `enabled` property is set to `true`
@@ -382,7 +392,15 @@ class SkyInfiniteScrollComponent {
382
392
  */
383
393
  this.scrollEnd = new EventEmitter();
384
394
  this.isWaiting = false;
385
- this.ngUnsubscribe = new Subject();
395
+ _SkyInfiniteScrollComponent_changeDetector.set(this, void 0);
396
+ _SkyInfiniteScrollComponent_domAdapter.set(this, void 0);
397
+ _SkyInfiniteScrollComponent_elementRef.set(this, void 0);
398
+ _SkyInfiniteScrollComponent_ngUnsubscribe.set(this, new Subject());
399
+ _SkyInfiniteScrollComponent__enabled.set(this, false);
400
+ _SkyInfiniteScrollComponent__loading.set(this, void 0);
401
+ __classPrivateFieldSet(this, _SkyInfiniteScrollComponent_changeDetector, changeDetector, "f");
402
+ __classPrivateFieldSet(this, _SkyInfiniteScrollComponent_elementRef, elementRef, "f");
403
+ __classPrivateFieldSet(this, _SkyInfiniteScrollComponent_domAdapter, domAdapter, "f");
386
404
  }
387
405
  /**
388
406
  * Indicates whether to make the infinite scroll component active when more data is available
@@ -390,12 +408,12 @@ class SkyInfiniteScrollComponent {
390
408
  * @default false
391
409
  */
392
410
  get enabled() {
393
- return this._enabled || false;
411
+ return __classPrivateFieldGet(this, _SkyInfiniteScrollComponent__enabled, "f");
394
412
  }
395
413
  set enabled(value) {
396
- if (this._enabled !== value) {
397
- this._enabled = value;
398
- this.setListeners();
414
+ if (__classPrivateFieldGet(this, _SkyInfiniteScrollComponent__enabled, "f") !== value) {
415
+ __classPrivateFieldSet(this, _SkyInfiniteScrollComponent__enabled, value, "f");
416
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_instances, "m", _SkyInfiniteScrollComponent_setListeners).call(this);
399
417
  }
400
418
  }
401
419
  /**
@@ -409,54 +427,53 @@ class SkyInfiniteScrollComponent {
409
427
  * @required
410
428
  */
411
429
  get loading() {
412
- return this._loading;
430
+ return __classPrivateFieldGet(this, _SkyInfiniteScrollComponent__loading, "f");
413
431
  }
414
432
  set loading(value) {
415
- this._loading = value;
433
+ __classPrivateFieldSet(this, _SkyInfiniteScrollComponent__loading, value, "f");
416
434
  if (value !== undefined) {
417
435
  this.isWaiting = value;
418
436
  }
419
437
  }
420
438
  ngOnDestroy() {
421
439
  this.enabled = false;
422
- this.ngUnsubscribe.next();
423
- this.ngUnsubscribe.complete();
440
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_ngUnsubscribe, "f").next();
441
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_ngUnsubscribe, "f").complete();
424
442
  }
425
443
  startInfiniteScrollLoad() {
426
- this.notifyScrollEnd();
427
- }
428
- notifyScrollEnd() {
429
- this.isWaiting = true;
430
- this.scrollEnd.emit();
431
- this.changeDetector.markForCheck();
432
- }
433
- setListeners() {
434
- if (this.enabled) {
435
- // The user has scrolled to the infinite scroll element.
436
- this.domAdapter
437
- .scrollTo(this.elementRef)
438
- .pipe(takeUntil(this.ngUnsubscribe))
439
- .subscribe(() => {
440
- if (!this.isWaiting && this.enabled) {
441
- this.notifyScrollEnd();
442
- }
443
- });
444
- // New items have been loaded into the parent element.
445
- this.domAdapter
446
- .parentChanges(this.elementRef)
447
- .pipe(takeUntil(this.ngUnsubscribe))
448
- .subscribe(() => {
449
- if (!this.loading) {
450
- this.isWaiting = false;
451
- this.changeDetector.markForCheck();
452
- }
453
- });
454
- }
455
- else {
456
- this.ngUnsubscribe.next();
457
- }
444
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_instances, "m", _SkyInfiniteScrollComponent_notifyScrollEnd).call(this);
458
445
  }
459
446
  }
447
+ _SkyInfiniteScrollComponent_changeDetector = new WeakMap(), _SkyInfiniteScrollComponent_domAdapter = new WeakMap(), _SkyInfiniteScrollComponent_elementRef = new WeakMap(), _SkyInfiniteScrollComponent_ngUnsubscribe = new WeakMap(), _SkyInfiniteScrollComponent__enabled = new WeakMap(), _SkyInfiniteScrollComponent__loading = new WeakMap(), _SkyInfiniteScrollComponent_instances = new WeakSet(), _SkyInfiniteScrollComponent_notifyScrollEnd = function _SkyInfiniteScrollComponent_notifyScrollEnd() {
448
+ this.isWaiting = true;
449
+ this.scrollEnd.emit();
450
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_changeDetector, "f").markForCheck();
451
+ }, _SkyInfiniteScrollComponent_setListeners = function _SkyInfiniteScrollComponent_setListeners() {
452
+ if (this.enabled) {
453
+ // The user has scrolled to the infinite scroll element.
454
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_domAdapter, "f")
455
+ .scrollTo(__classPrivateFieldGet(this, _SkyInfiniteScrollComponent_elementRef, "f"))
456
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyInfiniteScrollComponent_ngUnsubscribe, "f")))
457
+ .subscribe(() => {
458
+ if (!this.isWaiting && this.enabled) {
459
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_instances, "m", _SkyInfiniteScrollComponent_notifyScrollEnd).call(this);
460
+ }
461
+ });
462
+ // New items have been loaded into the parent element.
463
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_domAdapter, "f")
464
+ .parentChanges(__classPrivateFieldGet(this, _SkyInfiniteScrollComponent_elementRef, "f"))
465
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyInfiniteScrollComponent_ngUnsubscribe, "f")))
466
+ .subscribe(() => {
467
+ if (!this.loading) {
468
+ this.isWaiting = false;
469
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_changeDetector, "f").markForCheck();
470
+ }
471
+ });
472
+ }
473
+ else {
474
+ __classPrivateFieldGet(this, _SkyInfiniteScrollComponent_ngUnsubscribe, "f").next();
475
+ }
476
+ };
460
477
  SkyInfiniteScrollComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInfiniteScrollComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: SkyInfiniteScrollDomAdapterService }], target: i0.ɵɵFactoryTarget.Component });
461
478
  SkyInfiniteScrollComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyInfiniteScrollComponent, selector: "sky-infinite-scroll", inputs: { enabled: "enabled", loading: "loading" }, outputs: { scrollEnd: "scrollEnd" }, providers: [SkyInfiniteScrollDomAdapterService], ngImport: i0, template: "<div *ngIf=\"enabled\" class=\"sky-infinite-scroll\">\n <button\n *ngIf=\"!isWaiting && enabled\"\n class=\"sky-btn sky-btn-default sky-infinite-scroll-load-more-button\"\n type=\"button\"\n (click)=\"startInfiniteScrollLoad()\"\n >\n {{ 'skyux_infinite_scroll_load_more_button' | skyLibResources }}\n </button>\n <sky-wait [isWaiting]=\"isWaiting\"> </sky-wait>\n</div>\n", styles: [".sky-infinite-scroll{margin-top:20px;text-align:center;min-height:75px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.λ14, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
462
479
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInfiniteScrollComponent, decorators: [{
@@ -484,8 +501,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
484
501
  }]
485
502
  }] });
486
503
 
504
+ var _SkyPagingComponent_instances, _SkyPagingComponent_getDisplayedPageNumbers, _SkyPagingComponent_setPageCount, _SkyPagingComponent_setDisplayedPages;
487
505
  class SkyPagingComponent {
488
506
  constructor() {
507
+ _SkyPagingComponent_instances.add(this);
489
508
  /**
490
509
  * Specifies the page number of the current page. Page numbers start at 1 and increment.
491
510
  */
@@ -514,7 +533,7 @@ class SkyPagingComponent {
514
533
  }
515
534
  setPage(pageNumber) {
516
535
  const previousPage = this.currentPage;
517
- this.setPageCount();
536
+ __classPrivateFieldGet(this, _SkyPagingComponent_instances, "m", _SkyPagingComponent_setPageCount).call(this);
518
537
  if (pageNumber < 1 || this.pageCount < 1) {
519
538
  this.currentPage = 1;
520
539
  }
@@ -524,7 +543,7 @@ class SkyPagingComponent {
524
543
  else {
525
544
  this.currentPage = pageNumber;
526
545
  }
527
- this.setDisplayedPages();
546
+ __classPrivateFieldGet(this, _SkyPagingComponent_instances, "m", _SkyPagingComponent_setDisplayedPages).call(this);
528
547
  if (previousPage !== this.currentPage) {
529
548
  this.currentPageChange.emit(this.currentPage);
530
549
  }
@@ -541,46 +560,44 @@ class SkyPagingComponent {
541
560
  get isNextButtonDisabled() {
542
561
  return this.currentPage === this.pageCount;
543
562
  }
544
- getDisplayedPageNumbers(pageCount, maxDisplayedPages, pageNumber) {
545
- const pageIndex = pageNumber - 1;
546
- const pageBounds = Math.floor(maxDisplayedPages / 2);
547
- let upperBound = pageIndex + pageBounds;
548
- let lowerBound = pageIndex - pageBounds;
549
- if (maxDisplayedPages % 2 !== 0) {
550
- upperBound += 1;
551
- }
552
- // Wrap negative values to increase the upperbound
553
- if (lowerBound < 0) {
554
- upperBound -= lowerBound;
555
- lowerBound = 0;
556
- }
557
- // Wrap overflow to decrease the lowerbound
558
- if (upperBound > pageCount) {
559
- lowerBound -= upperBound - pageCount;
560
- upperBound = pageCount;
561
- }
562
- // If both are the same ignore everything else and just display it all
563
- if (pageCount < maxDisplayedPages) {
564
- lowerBound = 0;
565
- upperBound = pageCount;
566
- }
567
- const displayedPageNumbers = [];
568
- for (let i = lowerBound; i < upperBound; i++) {
569
- displayedPageNumbers.push(i + 1);
570
- }
571
- return displayedPageNumbers;
572
- }
573
- setPageCount() {
574
- if (this.itemCount === 0 || this.pageSize === 0) {
575
- this.pageCount = 0;
576
- return;
577
- }
578
- this.pageCount = Math.ceil(this.itemCount / this.pageSize);
579
- }
580
- setDisplayedPages() {
581
- this.displayedPages = this.getDisplayedPageNumbers(this.pageCount, this.maxPages, this.currentPage);
582
- }
583
563
  }
564
+ _SkyPagingComponent_instances = new WeakSet(), _SkyPagingComponent_getDisplayedPageNumbers = function _SkyPagingComponent_getDisplayedPageNumbers(pageCount, maxDisplayedPages, pageNumber) {
565
+ const pageIndex = pageNumber - 1;
566
+ const pageBounds = Math.floor(maxDisplayedPages / 2);
567
+ let upperBound = pageIndex + pageBounds;
568
+ let lowerBound = pageIndex - pageBounds;
569
+ if (maxDisplayedPages % 2 !== 0) {
570
+ upperBound += 1;
571
+ }
572
+ // Wrap negative values to increase the upperbound
573
+ if (lowerBound < 0) {
574
+ upperBound -= lowerBound;
575
+ lowerBound = 0;
576
+ }
577
+ // Wrap overflow to decrease the lowerbound
578
+ if (upperBound > pageCount) {
579
+ lowerBound -= upperBound - pageCount;
580
+ upperBound = pageCount;
581
+ }
582
+ // If both are the same ignore everything else and just display it all
583
+ if (pageCount < maxDisplayedPages) {
584
+ lowerBound = 0;
585
+ upperBound = pageCount;
586
+ }
587
+ const displayedPageNumbers = [];
588
+ for (let i = lowerBound; i < upperBound; i++) {
589
+ displayedPageNumbers.push(i + 1);
590
+ }
591
+ return displayedPageNumbers;
592
+ }, _SkyPagingComponent_setPageCount = function _SkyPagingComponent_setPageCount() {
593
+ if (this.itemCount === 0 || this.pageSize === 0) {
594
+ this.pageCount = 0;
595
+ return;
596
+ }
597
+ this.pageCount = Math.ceil(this.itemCount / this.pageSize);
598
+ }, _SkyPagingComponent_setDisplayedPages = function _SkyPagingComponent_setDisplayedPages() {
599
+ this.displayedPages = __classPrivateFieldGet(this, _SkyPagingComponent_instances, "m", _SkyPagingComponent_getDisplayedPageNumbers).call(this, this.pageCount, this.maxPages, this.currentPage);
600
+ };
584
601
  SkyPagingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyPagingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
585
602
  SkyPagingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyPagingComponent, selector: "sky-paging", inputs: { currentPage: "currentPage", itemCount: "itemCount", maxPages: "maxPages", pageSize: "pageSize", pagingLabel: "pagingLabel" }, outputs: { currentPageChange: "currentPageChange" }, usesOnChanges: true, ngImport: i0, template: "<nav\n *ngIf=\"pageCount > 1\"\n class=\"sky-paging\"\n [attr.aria-label]=\"pagingLabel || ('skyux_paging_label' | skyLibResources)\"\n>\n <ul>\n <li>\n <button\n class=\"sky-btn sky-btn-default sky-paging-btn sky-paging-btn-previous sky-box\"\n sky-cmp-id=\"previous\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_paging_previous' | skyLibResources\"\n [disabled]=\"isPreviousButtonDisabled\"\n (click)=\"previousPage()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"caret-left\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-left\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n </li>\n <li *ngFor=\"let pageNumber of displayedPages\" class=\"sky-list-paging-link\">\n <button\n class=\"sky-btn sky-btn-default sky-paging-btn sky-box\"\n type=\"button\"\n [attr.aria-current]=\"currentPage === pageNumber ? 'page' : null\"\n [attr.sky-cmp-id]=\"pageNumber\"\n [attr.aria-label]=\"\n 'skyux_paging_page_link_aria_label' | skyLibResources: pageNumber\n \"\n [disabled]=\"currentPage === pageNumber\"\n [ngClass]=\"{ 'sky-paging-current': currentPage === pageNumber }\"\n (click)=\"setPage(pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </li>\n <li>\n <button\n class=\"sky-btn sky-btn-default sky-paging-btn sky-paging-btn-next sky-box\"\n sky-cmp-id=\"next\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_paging_next' | skyLibResources\"\n [disabled]=\"isNextButtonDisabled\"\n (click)=\"nextPage()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"caret-right\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-right\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n </li>\n </ul>\n</nav>\n", styles: [":host{display:block}ul{margin:15px 0 0;display:inline-block;padding-left:0;border-radius:4px}li{display:inline}.sky-paging-btn{border-top:1px solid #e2e3e4;border-right:1px solid #e2e3e4;border-bottom:1px solid #e2e3e4;border-left:1px solid #e2e3e4;border-radius:0;background-color:#fff;color:inherit;float:left;margin-left:-1px;padding:4px 10px;text-decoration:none;line-height:1.428571429;font-size:15px;cursor:pointer}.sky-paging-btn.sky-paging-caret{transform:none}.sky-paging-btn.sky-paging-current,.sky-paging-btn.sky-paging-current:disabled,.sky-paging-btn.sky-paging-current[disabled]{background-color:#eeeeef;cursor:default;color:inherit;opacity:1}.sky-paging-btn:hover{background-color:#d4d4d6}.sky-paging-btn:disabled{color:#686c73;cursor:not-allowed;pointer-events:none}.sky-paging-btn.sky-paging-btn-previous,.sky-paging-btn.sky-paging-btn-next{padding-left:8.5px;padding-right:8.5px}:host-context(.sky-theme-modern) .sky-paging-btn{background-color:transparent;border:none;box-shadow:none;border-radius:6px;margin-right:10px;padding:3px 10px}:host-context(.sky-theme-modern) .sky-paging-btn:hover{background-color:transparent;border:solid 1px #1870B8;padding:2px 9px;z-index:1}:host-context(.sky-theme-modern) .sky-paging-btn:active,:host-context(.sky-theme-modern) .sky-paging-btn:focus{border:solid 2px #1870B8;color:#212327;padding:1px 8px}:host-context(.sky-theme-modern) .sky-paging-btn:focus:not(:active){outline:none;box-shadow:0 1px 3px #0000004d}:host-context(.sky-theme-modern) .sky-paging-current{background-color:#c1e8fb;border:solid 1px #1870B8;padding:2px 9px}.sky-theme-modern .sky-paging-btn{background-color:transparent;border:none;box-shadow:none;border-radius:6px;margin-right:10px;padding:3px 10px}.sky-theme-modern .sky-paging-btn:hover{background-color:transparent;border:solid 1px #1870B8;padding:2px 9px;z-index:1}.sky-theme-modern .sky-paging-btn:active,.sky-theme-modern .sky-paging-btn:focus{border:solid 2px #1870B8;color:#212327;padding:1px 8px}.sky-theme-modern .sky-paging-btn:focus:not(:active){outline:none;box-shadow:0 1px 3px #0000004d}.sky-theme-modern .sky-paging-current{background-color:#c1e8fb;border:solid 1px #1870B8;padding:2px 9px}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-paging-btn:active,:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-paging-btn:focus{color:#fbfcfe}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-paging-current{background-color:#1870b8}.sky-theme-modern.sky-theme-mode-dark .sky-paging-btn:active,.sky-theme-modern.sky-theme-mode-dark .sky-paging-btn:focus{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark .sky-paging-current{background-color:#1870b8}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "directive", type: i3.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
586
603
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyPagingComponent, decorators: [{
@@ -664,6 +681,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
664
681
  args: [{ selector: 'sky-repeater-item-title', template: "<ng-content></ng-content>\n" }]
665
682
  }] });
666
683
 
684
+ var _SkyRepeaterService__expandMode;
685
+ let uniqueId = 0;
686
+ const DEFAULT_EXPAND_MODE = 'none';
667
687
  /**
668
688
  * @internal
669
689
  */
@@ -680,6 +700,15 @@ class SkyRepeaterService {
680
700
  title: undefined,
681
701
  });
682
702
  this.orderChange = new BehaviorSubject(undefined);
703
+ this.repeaterGroupId = ++uniqueId;
704
+ _SkyRepeaterService__expandMode.set(this, DEFAULT_EXPAND_MODE);
705
+ }
706
+ // TODO: Remove 'string' as a valid type in a breaking change.
707
+ get expandMode() {
708
+ return __classPrivateFieldGet(this, _SkyRepeaterService__expandMode, "f");
709
+ }
710
+ set expandMode(value) {
711
+ __classPrivateFieldSet(this, _SkyRepeaterService__expandMode, value !== null && value !== void 0 ? value : DEFAULT_EXPAND_MODE, "f");
683
712
  }
684
713
  ngOnDestroy() {
685
714
  this.activeItemChange.complete();
@@ -722,9 +751,6 @@ class SkyRepeaterService {
722
751
  onItemCollapseStateChange(item) {
723
752
  this.itemCollapseStateChange.emit(item);
724
753
  }
725
- getItemIndex(item) {
726
- return this.items.indexOf(item);
727
- }
728
754
  registerOrderChange() {
729
755
  this.orderChange.next();
730
756
  }
@@ -732,35 +758,39 @@ class SkyRepeaterService {
732
758
  this.items.splice(newIndex, 0, this.items.splice(oldIndex, 1)[0]);
733
759
  }
734
760
  }
761
+ _SkyRepeaterService__expandMode = new WeakMap();
735
762
  SkyRepeaterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
736
763
  SkyRepeaterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterService });
737
764
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterService, decorators: [{
738
765
  type: Injectable
739
766
  }] });
740
767
 
768
+ var _SkyRepeaterAdapterService_instances, _SkyRepeaterAdapterService_repeaterItemGroupSelector_get, _SkyRepeaterAdapterService_host, _SkyRepeaterAdapterService_repeaterService, _SkyRepeaterAdapterService_moveItem, _SkyRepeaterAdapterService_getRepeaterItemArray;
741
769
  /**
742
770
  * @internal
743
771
  */
744
772
  class SkyRepeaterAdapterService {
745
773
  constructor(repeaterService) {
746
- this.repeaterService = repeaterService;
747
- }
748
- get repeaterItemGroupSelector() {
749
- return '.sky-repeater-item-group-' + this.repeaterService.repeaterGroupId;
774
+ _SkyRepeaterAdapterService_instances.add(this);
775
+ _SkyRepeaterAdapterService_host.set(this, void 0);
776
+ _SkyRepeaterAdapterService_repeaterService.set(this, void 0);
777
+ __classPrivateFieldSet(this, _SkyRepeaterAdapterService_repeaterService, repeaterService, "f");
750
778
  }
751
779
  focusElement(element) {
752
- if (element instanceof ElementRef) {
753
- element.nativeElement.focus();
754
- }
755
- else {
756
- element.focus();
780
+ if (element) {
781
+ if (element instanceof ElementRef) {
782
+ element.nativeElement.focus();
783
+ }
784
+ else {
785
+ element.focus();
786
+ }
757
787
  }
758
788
  }
759
789
  setRepeaterHost(hostRef) {
760
- this.host = hostRef;
790
+ __classPrivateFieldSet(this, _SkyRepeaterAdapterService_host, hostRef, "f");
761
791
  }
762
792
  getRepeaterItemIndex(element) {
763
- return this.getRepeaterItemArray().indexOf(element);
793
+ return __classPrivateFieldGet(this, _SkyRepeaterAdapterService_instances, "m", _SkyRepeaterAdapterService_getRepeaterItemArray).call(this).indexOf(element);
764
794
  }
765
795
  moveItemUp(element, top = false, steps = 1) {
766
796
  const index = this.getRepeaterItemIndex(element);
@@ -771,49 +801,48 @@ class SkyRepeaterAdapterService {
771
801
  if (top || newIndex < 0) {
772
802
  newIndex = 0;
773
803
  }
774
- return this.moveItem(element, index, newIndex);
804
+ return __classPrivateFieldGet(this, _SkyRepeaterAdapterService_instances, "m", _SkyRepeaterAdapterService_moveItem).call(this, element, index, newIndex);
775
805
  }
776
806
  moveItemDown(element, steps = 1) {
777
- const itemArray = this.getRepeaterItemArray();
807
+ const itemArray = __classPrivateFieldGet(this, _SkyRepeaterAdapterService_instances, "m", _SkyRepeaterAdapterService_getRepeaterItemArray).call(this);
778
808
  const index = this.getRepeaterItemIndex(element);
779
809
  if (index === itemArray.length - steps) {
780
810
  return;
781
811
  }
782
812
  const newIndex = index + steps;
783
- return this.moveItem(element, index, newIndex);
813
+ return __classPrivateFieldGet(this, _SkyRepeaterAdapterService_instances, "m", _SkyRepeaterAdapterService_moveItem).call(this, element, index, newIndex);
784
814
  }
785
- moveItem(element, oldIndex, newIndex) {
786
- const repeaterDiv = this.host.nativeElement.querySelector('.sky-repeater');
815
+ }
816
+ _SkyRepeaterAdapterService_host = new WeakMap(), _SkyRepeaterAdapterService_repeaterService = new WeakMap(), _SkyRepeaterAdapterService_instances = new WeakSet(), _SkyRepeaterAdapterService_repeaterItemGroupSelector_get = function _SkyRepeaterAdapterService_repeaterItemGroupSelector_get() {
817
+ return '.sky-repeater-item-group-' + __classPrivateFieldGet(this, _SkyRepeaterAdapterService_repeaterService, "f").repeaterGroupId;
818
+ }, _SkyRepeaterAdapterService_moveItem = function _SkyRepeaterAdapterService_moveItem(element, oldIndex, newIndex) {
819
+ /* istanbul ignore else */
820
+ if (__classPrivateFieldGet(this, _SkyRepeaterAdapterService_host, "f")) {
821
+ const repeaterDiv = __classPrivateFieldGet(this, _SkyRepeaterAdapterService_host, "f").nativeElement.querySelector('.sky-repeater');
787
822
  repeaterDiv.removeChild(element);
788
- const nextSibling = repeaterDiv.querySelectorAll(this.repeaterItemGroupSelector)[newIndex];
823
+ const nextSibling = repeaterDiv.querySelectorAll(__classPrivateFieldGet(this, _SkyRepeaterAdapterService_instances, "a", _SkyRepeaterAdapterService_repeaterItemGroupSelector_get))[newIndex];
789
824
  repeaterDiv.insertBefore(element, nextSibling);
790
- this.repeaterService.reorderItem(oldIndex, newIndex);
791
- return newIndex;
792
- }
793
- /**
794
- * Returns an array of the immediate repeater item descendants. Excludes nested repeater items.
795
- */
796
- getRepeaterItemArray() {
797
- return Array.from(this.host.nativeElement.querySelectorAll(this.repeaterItemGroupSelector));
825
+ __classPrivateFieldGet(this, _SkyRepeaterAdapterService_repeaterService, "f").reorderItem(oldIndex, newIndex);
798
826
  }
799
- }
827
+ return newIndex;
828
+ }, _SkyRepeaterAdapterService_getRepeaterItemArray = function _SkyRepeaterAdapterService_getRepeaterItemArray() {
829
+ var _a;
830
+ return Array.from((_a = __classPrivateFieldGet(this, _SkyRepeaterAdapterService_host, "f")) === null || _a === void 0 ? void 0 : _a.nativeElement.querySelectorAll(__classPrivateFieldGet(this, _SkyRepeaterAdapterService_instances, "a", _SkyRepeaterAdapterService_repeaterItemGroupSelector_get)));
831
+ };
800
832
  SkyRepeaterAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterAdapterService, deps: [{ token: SkyRepeaterService }], target: i0.ɵɵFactoryTarget.Injectable });
801
833
  SkyRepeaterAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterAdapterService });
802
834
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterAdapterService, decorators: [{
803
835
  type: Injectable
804
836
  }], ctorParameters: function () { return [{ type: SkyRepeaterService }]; } });
805
837
 
838
+ var _SkyRepeaterItemComponent_instances, _SkyRepeaterItemComponent_adapterService, _SkyRepeaterItemComponent_changeDetector, _SkyRepeaterItemComponent_elementRef, _SkyRepeaterItemComponent_isExpanded, _SkyRepeaterItemComponent_keyboardReorderingEnabled, _SkyRepeaterItemComponent_ngUnsubscribe, _SkyRepeaterItemComponent_reorderCancelText, _SkyRepeaterItemComponent_reorderCurrentIndex, _SkyRepeaterItemComponent_reorderFinishText, _SkyRepeaterItemComponent_reorderInstructions, _SkyRepeaterItemComponent_reorderMovedText, _SkyRepeaterItemComponent_reorderStateDescription, _SkyRepeaterItemComponent_reorderSteps, _SkyRepeaterItemComponent_repeaterService, _SkyRepeaterItemComponent_resourceService, _SkyRepeaterItemComponent__isCollapsible, _SkyRepeaterItemComponent__isDisabled, _SkyRepeaterItemComponent__isSelected, _SkyRepeaterItemComponent_slideForExpanded, _SkyRepeaterItemComponent_keyboardReorderUp, _SkyRepeaterItemComponent_keyboardReorderDown, _SkyRepeaterItemComponent_keyboardToggleReorder, _SkyRepeaterItemComponent_revertReorderSteps, _SkyRepeaterItemComponent_updateExpandOnContentChange;
806
839
  let nextContentId = 0;
807
840
  /**
808
841
  * Creates an individual repeater item.
809
842
  */
810
843
  class SkyRepeaterItemComponent {
811
844
  constructor(repeaterService, changeDetector, adapterService, elementRef, resourceService) {
812
- this.repeaterService = repeaterService;
813
- this.changeDetector = changeDetector;
814
- this.adapterService = adapterService;
815
- this.elementRef = elementRef;
816
- this.resourceService = resourceService;
845
+ _SkyRepeaterItemComponent_instances.add(this);
817
846
  /**
818
847
  * Indicates whether users can change the order of the repeater item.
819
848
  * The repeater component's `reorderable` property must also be set to `true`.
@@ -845,31 +874,51 @@ class SkyRepeaterItemComponent {
845
874
  * Fires when users select or clear the checkbox for the repeater item.
846
875
  */
847
876
  this.isSelectedChange = new EventEmitter();
848
- this.contentId = `sky-repeater-item-content-${++nextContentId}`;
849
877
  this.hasItemContent = false;
850
878
  this.isActive = false;
851
- this.keyboardReorderingEnabled = false;
852
- this.ngUnsubscribe = new Subject();
853
- this._isCollapsible = true;
854
- this._isDisabled = false;
855
- this._isExpanded = true;
856
- this._isSelected = false;
857
- this.slideForExpanded(false);
879
+ this.reorderButtonLabel = '';
880
+ _SkyRepeaterItemComponent_adapterService.set(this, void 0);
881
+ _SkyRepeaterItemComponent_changeDetector.set(this, void 0);
882
+ _SkyRepeaterItemComponent_elementRef.set(this, void 0);
883
+ _SkyRepeaterItemComponent_isExpanded.set(this, true);
884
+ _SkyRepeaterItemComponent_keyboardReorderingEnabled.set(this, false);
885
+ _SkyRepeaterItemComponent_ngUnsubscribe.set(this, new Subject());
886
+ _SkyRepeaterItemComponent_reorderCancelText.set(this, '');
887
+ _SkyRepeaterItemComponent_reorderCurrentIndex.set(this, -1);
888
+ _SkyRepeaterItemComponent_reorderFinishText.set(this, '');
889
+ _SkyRepeaterItemComponent_reorderInstructions.set(this, '');
890
+ _SkyRepeaterItemComponent_reorderMovedText.set(this, '');
891
+ _SkyRepeaterItemComponent_reorderStateDescription.set(this, '');
892
+ _SkyRepeaterItemComponent_reorderSteps.set(this, 0);
893
+ _SkyRepeaterItemComponent_repeaterService.set(this, void 0);
894
+ _SkyRepeaterItemComponent_resourceService.set(this, void 0);
895
+ _SkyRepeaterItemComponent__isCollapsible.set(this, true);
896
+ _SkyRepeaterItemComponent__isDisabled.set(this, false);
897
+ _SkyRepeaterItemComponent__isSelected.set(this, void 0);
898
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_repeaterService, repeaterService, "f");
899
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_changeDetector, changeDetector, "f");
900
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_adapterService, adapterService, "f");
901
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_elementRef, elementRef, "f");
902
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_resourceService, resourceService, "f");
903
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_instances, "m", _SkyRepeaterItemComponent_slideForExpanded).call(this);
858
904
  forkJoin([
859
- this.resourceService.getString('skyux_repeater_item_reorder_cancel'),
860
- this.resourceService.getString('skyux_repeater_item_reorder_finish'),
861
- this.resourceService.getString('skyux_repeater_item_reorder_instructions'),
862
- this.resourceService.getString('skyux_repeater_item_reorder_operation'),
863
- this.resourceService.getString('skyux_repeater_item_reorder_moved'),
864
- ]).subscribe((translatedStrings) => {
865
- this.reorderCancelText = translatedStrings[0];
866
- this.reorderFinishText = translatedStrings[1];
867
- this.reorderStateDescription = translatedStrings[2];
868
- this.reorderInstructions = translatedStrings[3];
869
- this.reorderMovedText = translatedStrings[4];
870
- this.reorderButtonLabel = this.reorderInstructions;
905
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_resourceService, "f").getString('skyux_repeater_item_reorder_cancel'),
906
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_resourceService, "f").getString('skyux_repeater_item_reorder_finish'),
907
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_resourceService, "f").getString('skyux_repeater_item_reorder_instructions'),
908
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_resourceService, "f").getString('skyux_repeater_item_reorder_operation'),
909
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_resourceService, "f").getString('skyux_repeater_item_reorder_moved'),
910
+ ])
911
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_ngUnsubscribe, "f")))
912
+ .subscribe(([reorderCancelText, reorderFinishText, reorderInstructionsText, reorderOperationText, reorderMovedText,]) => {
913
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderCancelText, reorderCancelText, "f");
914
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderFinishText, reorderFinishText, "f");
915
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderStateDescription, reorderInstructionsText, "f");
916
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderInstructions, reorderOperationText, "f");
917
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderMovedText, reorderMovedText, "f");
918
+ this.reorderButtonLabel = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderInstructions, "f");
871
919
  });
872
- this.itemRole$ = this.repeaterService.itemRole.asObservable();
920
+ this.contentId = `sky-repeater-item-content-${++nextContentId}`;
921
+ this.itemRole$ = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").itemRole.asObservable();
873
922
  }
874
923
  /**
875
924
  * Make the first, non-disabled item tab-focusable.
@@ -877,7 +926,7 @@ class SkyRepeaterItemComponent {
877
926
  * - One item per list/grid/listbox should be tab focusable per [W3C](https://www.w3.org/TR/wai-aria-practices-1.1/#grid).
878
927
  */
879
928
  get tabindex() {
880
- return this.repeaterService.items.filter((item) => !item.disabled)[0] ===
929
+ return __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").items.filter((item) => !item.disabled)[0] ===
881
930
  this
882
931
  ? 0
883
932
  : -1;
@@ -886,35 +935,35 @@ class SkyRepeaterItemComponent {
886
935
  * Whether to exclude an item when cycling through.
887
936
  */
888
937
  set disabled(value) {
889
- if (this._isDisabled !== value) {
938
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent__isDisabled, "f") !== value) {
890
939
  if (value) {
891
940
  this.isSelected = false;
892
- this._isDisabled = true;
941
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent__isDisabled, true, "f");
893
942
  }
894
943
  else {
895
- this._isDisabled = false;
944
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent__isDisabled, false, "f");
896
945
  }
897
946
  if (this.isActive) {
898
- this.repeaterService.activateItemByIndex(undefined);
947
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").activateItemByIndex(undefined);
899
948
  }
900
- if (this.elementRef.nativeElement.matches(':focus-within')) {
901
- this.elementRef.nativeElement.ownerDocument.activeElement.blur();
949
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_elementRef, "f").nativeElement.matches(':focus-within')) {
950
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_elementRef, "f").nativeElement.ownerDocument.activeElement.blur();
902
951
  }
903
- this.changeDetector.markForCheck();
952
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_changeDetector, "f").markForCheck();
904
953
  }
905
954
  }
906
955
  get disabled() {
907
- return this._isDisabled;
956
+ return __classPrivateFieldGet(this, _SkyRepeaterItemComponent__isDisabled, "f");
908
957
  }
909
958
  /**
910
959
  * Indicates whether the repeater item is expanded.
911
960
  * @default true
912
961
  */
913
962
  set isExpanded(value) {
914
- this.updateForExpanded(value, true);
963
+ this.updateForExpanded(value !== false);
915
964
  }
916
965
  get isExpanded() {
917
- return this._isExpanded;
966
+ return __classPrivateFieldGet(this, _SkyRepeaterItemComponent_isExpanded, "f");
918
967
  }
919
968
  /**
920
969
  * Indicates whether the repeater item's checkbox is selected.
@@ -922,56 +971,58 @@ class SkyRepeaterItemComponent {
922
971
  * @default false
923
972
  */
924
973
  set isSelected(value) {
925
- if (!this.disabled && value !== this._isSelected) {
926
- this._isSelected = value;
927
- this.isSelectedChange.emit(this._isSelected);
974
+ if (!this.disabled && value !== __classPrivateFieldGet(this, _SkyRepeaterItemComponent__isSelected, "f")) {
975
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent__isSelected, value, "f");
976
+ this.isSelectedChange.emit(__classPrivateFieldGet(this, _SkyRepeaterItemComponent__isSelected, "f"));
928
977
  }
929
978
  }
930
979
  get isSelected() {
931
- return this._isSelected;
980
+ return __classPrivateFieldGet(this, _SkyRepeaterItemComponent__isSelected, "f");
932
981
  }
933
982
  set isCollapsible(value) {
934
983
  if (this.isCollapsible !== value) {
935
- this._isCollapsible = value;
984
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent__isCollapsible, value !== false, "f");
936
985
  /*istanbul ignore else */
937
- if (!value) {
938
- this.updateForExpanded(true, false);
986
+ if (!__classPrivateFieldGet(this, _SkyRepeaterItemComponent__isCollapsible, "f")) {
987
+ this.updateForExpanded(true);
939
988
  }
940
989
  }
941
- this.changeDetector.markForCheck();
990
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_changeDetector, "f").markForCheck();
942
991
  }
943
992
  get isCollapsible() {
944
- return this._isCollapsible;
993
+ return __classPrivateFieldGet(this, _SkyRepeaterItemComponent__isCollapsible, "f");
945
994
  }
946
995
  get repeaterGroupClass() {
947
- return 'sky-repeater-item-group-' + this.repeaterService.repeaterGroupId;
996
+ return 'sky-repeater-item-group-' + __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").repeaterGroupId;
948
997
  }
949
998
  ngOnInit() {
950
- this.repeaterService.registerItem(this);
951
- this.repeaterService.activeItemChange
952
- .pipe(takeUntil(this.ngUnsubscribe))
999
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").registerItem(this);
1000
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").activeItemChange
1001
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_ngUnsubscribe, "f")))
953
1002
  .subscribe((item) => {
954
1003
  const newIsActiveValue = this === item;
955
1004
  if (newIsActiveValue !== this.isActive) {
956
1005
  this.isActive = newIsActiveValue;
957
- this.changeDetector.markForCheck();
1006
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_changeDetector, "f").markForCheck();
958
1007
  }
959
1008
  });
960
1009
  }
961
1010
  ngAfterViewInit() {
962
- this.hasItemContent = this.repeaterItemContentComponents.length > 0;
963
- this.updateExpandOnContentChange();
1011
+ var _b;
1012
+ this.hasItemContent = !!((_b = this.repeaterItemContentComponents) === null || _b === void 0 ? void 0 : _b.length);
1013
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_instances, "m", _SkyRepeaterItemComponent_updateExpandOnContentChange).call(this);
964
1014
  }
965
1015
  ngOnDestroy() {
966
1016
  this.collapse.complete();
967
1017
  this.expand.complete();
968
1018
  this.inlineFormClose.complete();
969
1019
  this.isSelectedChange.complete();
970
- this.ngUnsubscribe.next();
971
- this.ngUnsubscribe.complete();
972
- this.repeaterService.unregisterItem(this);
1020
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_ngUnsubscribe, "f").next();
1021
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_ngUnsubscribe, "f").complete();
1022
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").unregisterItem(this);
973
1023
  }
974
1024
  onKeydown($event) {
1025
+ var _b;
975
1026
  if ([' ', 'Enter', 'Home', 'End', 'ArrowUp', 'ArrowDown'].includes($event.key)) {
976
1027
  if ($event.target.matches('input, textarea, select, option, [contenteditable], [contenteditable] *')) {
977
1028
  return;
@@ -989,7 +1040,7 @@ class SkyRepeaterItemComponent {
989
1040
  }
990
1041
  /* istanbul ignore else */
991
1042
  if (['Home', 'End'].includes($event.key)) {
992
- const items = this.repeaterService.items.filter((item) => !item.disabled);
1043
+ const items = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").items.filter((item) => !item.disabled);
993
1044
  if ($event.key === 'Home') {
994
1045
  activateItem = items.shift();
995
1046
  }
@@ -999,7 +1050,7 @@ class SkyRepeaterItemComponent {
999
1050
  }
1000
1051
  /* istanbul ignore else */
1001
1052
  if (['ArrowUp', 'ArrowDown'].includes($event.key)) {
1002
- const currentIndex = this.repeaterService.items.findIndex((item) => item === this);
1053
+ const currentIndex = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").items.findIndex((item) => item === this);
1003
1054
  let sliceFrom;
1004
1055
  let sliceTo;
1005
1056
  if ($event.key === 'ArrowUp') {
@@ -1010,7 +1061,7 @@ class SkyRepeaterItemComponent {
1010
1061
  sliceFrom = currentIndex + 1;
1011
1062
  sliceTo = undefined;
1012
1063
  }
1013
- const items = this.repeaterService.items
1064
+ const items = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").items
1014
1065
  .slice(sliceFrom, sliceTo)
1015
1066
  .filter((item) => !item.disabled);
1016
1067
  activateItem = $event.key === 'ArrowUp' ? items.pop() : items.shift();
@@ -1024,7 +1075,7 @@ class SkyRepeaterItemComponent {
1024
1075
  sliceFrom = currentIndex + 1;
1025
1076
  sliceTo = undefined;
1026
1077
  }
1027
- const items = this.repeaterService.items
1078
+ const items = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").items
1028
1079
  .slice(sliceFrom, sliceTo)
1029
1080
  .filter((item) => !item.disabled);
1030
1081
  activateItem = $event.key === 'ArrowUp' ? items.pop() : items.shift();
@@ -1032,47 +1083,48 @@ class SkyRepeaterItemComponent {
1032
1083
  }
1033
1084
  /* istanbul ignore else */
1034
1085
  if (activateItem && !activateItem.isActive) {
1035
- this.repeaterService.activateItem(activateItem);
1036
- if (!activateItem.elementRef.nativeElement.matches(':focus-within')) {
1037
- activateItem.elementRef.nativeElement.focus();
1086
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").activateItem(activateItem);
1087
+ if (!__classPrivateFieldGet(activateItem, _SkyRepeaterItemComponent_elementRef, "f").nativeElement.matches(':focus-within')) {
1088
+ (_b = activateItem.itemRef) === null || _b === void 0 ? void 0 : _b.nativeElement.focus();
1038
1089
  }
1039
1090
  }
1040
1091
  }
1041
1092
  }
1042
1093
  headerClick() {
1043
1094
  if (this.isCollapsible) {
1044
- this.updateForExpanded(!this.isExpanded, true);
1095
+ this.updateForExpanded(!this.isExpanded);
1045
1096
  }
1046
1097
  }
1047
1098
  chevronDirectionChange(direction) {
1048
- this.updateForExpanded(direction === 'up', true);
1099
+ this.updateForExpanded(direction === 'up');
1049
1100
  }
1050
1101
  onRepeaterItemClick(event) {
1102
+ var _b, _c, _d;
1051
1103
  // Only activate item if clicking on the title, content, or parent item div.
1052
1104
  // This will avoid accidental activations when clicking inside interactive elements like
1053
1105
  // the expand/collapse chevron, dropdown, inline-delete, etc...
1054
- if (event.target === this.itemRef.nativeElement ||
1055
- this.itemContentRef.nativeElement.contains(event.target) ||
1056
- this.itemHeaderRef.nativeElement.contains(event.target)) {
1057
- this.repeaterService.activateItem(this);
1106
+ if (event.target === ((_b = this.itemRef) === null || _b === void 0 ? void 0 : _b.nativeElement) ||
1107
+ ((_c = this.itemContentRef) === null || _c === void 0 ? void 0 : _c.nativeElement.contains(event.target)) ||
1108
+ ((_d = this.itemHeaderRef) === null || _d === void 0 ? void 0 : _d.nativeElement.contains(event.target))) {
1109
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").activateItem(this);
1058
1110
  }
1059
1111
  }
1060
- updateForExpanded(value, animate) {
1112
+ updateForExpanded(value) {
1061
1113
  if (this.isCollapsible === false && value === false) {
1062
1114
  console.warn(`Setting isExpanded to false when the repeater item is not collapsible
1063
1115
  will have no effect.`);
1064
1116
  }
1065
- else if (this._isExpanded !== value) {
1066
- this._isExpanded = value;
1067
- if (this._isExpanded) {
1117
+ else if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_isExpanded, "f") !== value) {
1118
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_isExpanded, value, "f");
1119
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_isExpanded, "f")) {
1068
1120
  this.expand.emit();
1069
1121
  }
1070
1122
  else {
1071
1123
  this.collapse.emit();
1072
1124
  }
1073
- this.repeaterService.onItemCollapseStateChange(this);
1074
- this.slideForExpanded(animate);
1075
- this.changeDetector.markForCheck();
1125
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").onItemCollapseStateChange(this);
1126
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_instances, "m", _SkyRepeaterItemComponent_slideForExpanded).call(this);
1127
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_changeDetector, "f").markForCheck();
1076
1128
  }
1077
1129
  }
1078
1130
  onCheckboxChange(value) {
@@ -1083,9 +1135,9 @@ class SkyRepeaterItemComponent {
1083
1135
  }
1084
1136
  moveToTop(event) {
1085
1137
  event.stopPropagation();
1086
- this.adapterService.moveItemUp(this.elementRef.nativeElement, true);
1087
- this.adapterService.focusElement(event.target);
1088
- this.repeaterService.registerOrderChange();
1138
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").moveItemUp(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_elementRef, "f").nativeElement, true);
1139
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").focusElement(event.target);
1140
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").registerOrderChange();
1089
1141
  }
1090
1142
  onReorderHandleKeyDown(event) {
1091
1143
  /*istanbul ignore else */
@@ -1093,43 +1145,43 @@ class SkyRepeaterItemComponent {
1093
1145
  switch (event.key.toLowerCase()) {
1094
1146
  case ' ':
1095
1147
  case 'enter':
1096
- this.keyboardToggleReorder();
1148
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_instances, "m", _SkyRepeaterItemComponent_keyboardToggleReorder).call(this);
1097
1149
  event.preventDefault();
1098
1150
  event.stopPropagation();
1099
1151
  break;
1100
1152
  case 'escape':
1101
1153
  /* istanbul ignore else */
1102
- if (this.keyboardReorderingEnabled) {
1103
- this.keyboardReorderingEnabled = false;
1104
- this.revertReorderSteps();
1154
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, "f")) {
1155
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, false, "f");
1156
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_instances, "m", _SkyRepeaterItemComponent_revertReorderSteps).call(this);
1105
1157
  this.reorderButtonLabel =
1106
- this.reorderCancelText + ' ' + this.reorderInstructions;
1107
- this.adapterService.focusElement(event.target);
1158
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderCancelText, "f") + ' ' + __classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderInstructions, "f");
1159
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").focusElement(event.target);
1108
1160
  event.preventDefault();
1109
1161
  event.stopPropagation();
1110
1162
  }
1111
1163
  break;
1112
1164
  case 'arrowup':
1113
- if (this.keyboardReorderingEnabled) {
1114
- this.keyboardReorderUp();
1165
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, "f")) {
1166
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_instances, "m", _SkyRepeaterItemComponent_keyboardReorderUp).call(this);
1115
1167
  event.preventDefault();
1116
1168
  event.stopPropagation();
1117
- this.repeaterService.registerOrderChange();
1169
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").registerOrderChange();
1118
1170
  }
1119
1171
  break;
1120
1172
  case 'arrowdown':
1121
1173
  /* istanbul ignore else */
1122
- if (this.keyboardReorderingEnabled) {
1123
- this.keyboardReorderDown();
1174
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, "f")) {
1175
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_instances, "m", _SkyRepeaterItemComponent_keyboardReorderDown).call(this);
1124
1176
  event.preventDefault();
1125
1177
  event.stopPropagation();
1126
- this.repeaterService.registerOrderChange();
1178
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").registerOrderChange();
1127
1179
  }
1128
1180
  break;
1129
1181
  case 'arrowleft':
1130
1182
  case 'arrowright':
1131
1183
  /* istanbul ignore else */
1132
- if (this.keyboardReorderingEnabled) {
1184
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, "f")) {
1133
1185
  event.preventDefault();
1134
1186
  event.stopPropagation();
1135
1187
  }
@@ -1141,70 +1193,73 @@ class SkyRepeaterItemComponent {
1141
1193
  }
1142
1194
  }
1143
1195
  onReorderHandleBlur(event) {
1144
- this.keyboardReorderingEnabled = false;
1145
- this.revertReorderSteps();
1146
- this.reorderButtonLabel = this.reorderInstructions;
1196
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, false, "f");
1197
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_instances, "m", _SkyRepeaterItemComponent_revertReorderSteps).call(this);
1198
+ this.reorderButtonLabel = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderInstructions, "f");
1147
1199
  this.reorderState = undefined;
1148
1200
  }
1149
- slideForExpanded(animate) {
1150
- this.slideDirection = this.isExpanded ? 'down' : 'up';
1151
- }
1152
- keyboardReorderUp() {
1153
- this.reorderCurrentIndex = this.adapterService.moveItemUp(this.elementRef.nativeElement);
1154
- this.reorderSteps--;
1155
- this.adapterService.focusElement(this.grabHandle);
1156
- this.keyboardReorderingEnabled = true;
1157
- this.reorderButtonLabel = `${this.reorderMovedText} ${this.reorderCurrentIndex + 1}`;
1158
- }
1159
- keyboardReorderDown() {
1160
- this.reorderCurrentIndex = this.adapterService.moveItemDown(this.elementRef.nativeElement);
1161
- this.reorderSteps++;
1162
- this.adapterService.focusElement(this.grabHandle);
1163
- this.keyboardReorderingEnabled = true;
1164
- this.reorderButtonLabel = `${this.reorderMovedText} ${this.reorderCurrentIndex + 1}`;
1165
- }
1166
- keyboardToggleReorder() {
1167
- this.keyboardReorderingEnabled = !this.keyboardReorderingEnabled;
1168
- this.reorderSteps = 0;
1169
- if (this.keyboardReorderingEnabled) {
1170
- this.reorderState = this.reorderStateDescription;
1171
- }
1172
- else {
1173
- this.reorderState = `${this.reorderFinishText} ${this.reorderCurrentIndex + 1} ${this.reorderInstructions}`;
1174
- }
1175
- }
1176
- revertReorderSteps() {
1177
- if (this.reorderSteps < 0) {
1178
- this.adapterService.moveItemDown(this.elementRef.nativeElement, Math.abs(this.reorderSteps));
1179
- }
1180
- else if (this.reorderSteps > 0) {
1181
- this.adapterService.moveItemUp(this.elementRef.nativeElement, false, this.reorderSteps);
1182
- }
1183
- this.repeaterService.registerOrderChange();
1184
- }
1185
- updateExpandOnContentChange() {
1186
- this.repeaterItemContentComponents.changes
1187
- .pipe(takeUntil(this.ngUnsubscribe))
1188
- .subscribe(() => {
1189
- this.hasItemContent = this.repeaterItemContentComponents.length > 0;
1190
- /* istanbul ignore next */
1191
- this.isCollapsible =
1192
- this.hasItemContent && this.repeaterService.expandMode !== 'none';
1193
- /* istanbul ignore else */
1194
- if (this.repeaterService.expandMode === 'single') {
1195
- this.repeaterService.onItemCollapseStateChange(this);
1196
- }
1197
- });
1198
- }
1199
1201
  }
1202
+ _SkyRepeaterItemComponent_adapterService = new WeakMap(), _SkyRepeaterItemComponent_changeDetector = new WeakMap(), _SkyRepeaterItemComponent_elementRef = new WeakMap(), _SkyRepeaterItemComponent_isExpanded = new WeakMap(), _SkyRepeaterItemComponent_keyboardReorderingEnabled = new WeakMap(), _SkyRepeaterItemComponent_ngUnsubscribe = new WeakMap(), _SkyRepeaterItemComponent_reorderCancelText = new WeakMap(), _SkyRepeaterItemComponent_reorderCurrentIndex = new WeakMap(), _SkyRepeaterItemComponent_reorderFinishText = new WeakMap(), _SkyRepeaterItemComponent_reorderInstructions = new WeakMap(), _SkyRepeaterItemComponent_reorderMovedText = new WeakMap(), _SkyRepeaterItemComponent_reorderStateDescription = new WeakMap(), _SkyRepeaterItemComponent_reorderSteps = new WeakMap(), _SkyRepeaterItemComponent_repeaterService = new WeakMap(), _SkyRepeaterItemComponent_resourceService = new WeakMap(), _SkyRepeaterItemComponent__isCollapsible = new WeakMap(), _SkyRepeaterItemComponent__isDisabled = new WeakMap(), _SkyRepeaterItemComponent__isSelected = new WeakMap(), _SkyRepeaterItemComponent_instances = new WeakSet(), _SkyRepeaterItemComponent_slideForExpanded = function _SkyRepeaterItemComponent_slideForExpanded() {
1203
+ this.slideDirection = this.isExpanded ? 'down' : 'up';
1204
+ }, _SkyRepeaterItemComponent_keyboardReorderUp = function _SkyRepeaterItemComponent_keyboardReorderUp() {
1205
+ var _a;
1206
+ const newIndex = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").moveItemUp(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_elementRef, "f").nativeElement);
1207
+ if (newIndex !== undefined) {
1208
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderCurrentIndex, newIndex, "f");
1209
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderSteps, (_a = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderSteps, "f"), _a--, _a), "f");
1210
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").focusElement(this.grabHandle);
1211
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, true, "f");
1212
+ this.reorderButtonLabel = `${__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderMovedText, "f")} ${__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderCurrentIndex, "f") + 1}`;
1213
+ }
1214
+ }, _SkyRepeaterItemComponent_keyboardReorderDown = function _SkyRepeaterItemComponent_keyboardReorderDown() {
1215
+ var _a;
1216
+ const newIndex = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").moveItemDown(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_elementRef, "f").nativeElement);
1217
+ if (newIndex) {
1218
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderCurrentIndex, newIndex, "f");
1219
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderSteps, (_a = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderSteps, "f"), _a++, _a), "f");
1220
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").focusElement(this.grabHandle);
1221
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, true, "f");
1222
+ this.reorderButtonLabel = `${__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderMovedText, "f")} ${__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderCurrentIndex, "f") + 1}`;
1223
+ }
1224
+ }, _SkyRepeaterItemComponent_keyboardToggleReorder = function _SkyRepeaterItemComponent_keyboardToggleReorder() {
1225
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, !__classPrivateFieldGet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, "f"), "f");
1226
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderSteps, 0, "f");
1227
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_keyboardReorderingEnabled, "f")) {
1228
+ this.reorderState = __classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderStateDescription, "f");
1229
+ }
1230
+ else {
1231
+ // TODO: Needs improvement to be localizable
1232
+ this.reorderState = `${__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderFinishText, "f")} ${__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderCurrentIndex, "f") + 1} ${__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderInstructions, "f")}`;
1233
+ __classPrivateFieldSet(this, _SkyRepeaterItemComponent_reorderCurrentIndex, -1, "f");
1234
+ }
1235
+ }, _SkyRepeaterItemComponent_revertReorderSteps = function _SkyRepeaterItemComponent_revertReorderSteps() {
1236
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderSteps, "f") < 0) {
1237
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").moveItemDown(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_elementRef, "f").nativeElement, Math.abs(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderSteps, "f")));
1238
+ }
1239
+ else if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderSteps, "f") > 0) {
1240
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_adapterService, "f").moveItemUp(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_elementRef, "f").nativeElement, false, __classPrivateFieldGet(this, _SkyRepeaterItemComponent_reorderSteps, "f"));
1241
+ }
1242
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").registerOrderChange();
1243
+ }, _SkyRepeaterItemComponent_updateExpandOnContentChange = function _SkyRepeaterItemComponent_updateExpandOnContentChange() {
1244
+ var _b;
1245
+ (_b = this.repeaterItemContentComponents) === null || _b === void 0 ? void 0 : _b.changes.pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterItemComponent_ngUnsubscribe, "f"))).subscribe(() => {
1246
+ var _b;
1247
+ this.hasItemContent = !!((_b = this.repeaterItemContentComponents) === null || _b === void 0 ? void 0 : _b.length);
1248
+ /* istanbul ignore next */
1249
+ this.isCollapsible =
1250
+ this.hasItemContent && __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").expandMode !== 'none';
1251
+ /* istanbul ignore else */
1252
+ if (__classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").expandMode === 'single') {
1253
+ __classPrivateFieldGet(this, _SkyRepeaterItemComponent_repeaterService, "f").onItemCollapseStateChange(this);
1254
+ }
1255
+ });
1256
+ };
1200
1257
  SkyRepeaterItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterItemComponent, deps: [{ token: SkyRepeaterService }, { token: i0.ChangeDetectorRef }, { token: SkyRepeaterAdapterService }, { token: i0.ElementRef }, { token: i4.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Component });
1201
- SkyRepeaterItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyRepeaterItemComponent, selector: "sky-repeater-item", inputs: { disabled: "disabled", itemName: "itemName", inlineFormConfig: "inlineFormConfig", inlineFormTemplate: "inlineFormTemplate", isExpanded: "isExpanded", isSelected: "isSelected", reorderable: "reorderable", selectable: "selectable", showInlineForm: "showInlineForm", tag: "tag" }, outputs: { collapse: "collapse", expand: "expand", inlineFormClose: "inlineFormClose", isSelectedChange: "isSelectedChange" }, host: { listeners: { "keydown": "onKeydown($event)" }, properties: { "tabindex": "this.tabindex", "class": "this.repeaterGroupClass" } }, queries: [{ propertyName: "contextMenu", first: true, predicate: SkyRepeaterItemContextMenuComponent, descendants: true, read: ElementRef }, { propertyName: "repeaterItemContentComponents", predicate: SkyRepeaterItemContentComponent }], viewQueries: [{ propertyName: "grabHandle", first: true, predicate: ["grabHandle"], descendants: true, read: ElementRef }, { propertyName: "itemContentRef", first: true, predicate: ["itemContentRef"], descendants: true, read: ElementRef }, { propertyName: "itemHeaderRef", first: true, predicate: ["itemHeaderRef"], descendants: true, read: ElementRef }, { propertyName: "itemRef", first: true, predicate: ["itemRef"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n class=\"sky-repeater-item sky-padding-even-default\"\n [attr.aria-label]=\"itemName\"\n [attr.aria-selected]=\"selectable ? isSelected : undefined\"\n [attr.role]=\"showInlineForm ? 'form' : (itemRole$ | async).item\"\n [ngClass]=\"{\n 'sky-repeater-item-active': isActive,\n 'sky-repeater-item-collapsible': isCollapsible,\n 'sky-repeater-item-selected': isSelected\n }\"\n (click)=\"onRepeaterItemClick($event)\"\n #itemRef\n>\n <div #inlineDelete>\n <ng-content select=\"sky-inline-delete\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"inlineFormTemplate\">\n <sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showInlineForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n >\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemLeft\"></ng-container>\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemRight\"></ng-container>\n </sky-inline-form>\n </ng-container>\n\n <ng-container *ngIf=\"!inlineFormTemplate\">\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemLeft\"></ng-container>\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemRight\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #skyRepeaterItemLeft>\n <div class=\"sky-repeater-item-left\">\n <ng-container *ngIf=\"reorderable\">\n <span\n aria-live=\"assertive\"\n class=\"sky-screen-reader-only\"\n [id]=\"contentId + '-reorder-state'\"\n >\n {{ reorderState }}\n </span>\n <span\n class=\"sky-screen-reader-only\"\n [id]=\"contentId + '-reorder-instructions'\"\n >{{ reorderButtonLabel }}</span\n >\n <button\n class=\"sky-btn sky-tile-tools-control sky-repeater-item-grab-handle\"\n type=\"button\"\n [attr.aria-describedby]=\"contentId + '-reorder-instructions'\"\n [attr.aria-label]=\"\n itemName\n ? ('skyux_repeater_item_reorder_label' | skyLibResources: itemName)\n : ('skyux_repeater_item_reorder_label_default' | skyLibResources)\n \"\n (blur)=\"onReorderHandleBlur($event)\"\n (keydown)=\"onReorderHandleKeyDown($event)\"\n #grabHandle\n >\n <sky-icon icon=\"arrows-v\"></sky-icon>\n </button>\n </ng-container>\n <sky-checkbox\n *ngIf=\"selectable\"\n class=\"sky-repeater-item-checkbox\"\n [checked]=\"isSelected\"\n [label]=\"\n itemName\n ? ('skyux_repeater_item_checkbox_label' | skyLibResources: itemName)\n : ('skyux_repeater_item_checkbox_label_default' | skyLibResources)\n \"\n (change)=\"onCheckboxChange($event)\"\n >\n </sky-checkbox>\n <div\n class=\"sky-repeater-item-context-menu\"\n [hidden]=\"contextMenuEl.children.length === 0\"\n #contextMenuEl\n >\n <ng-content select=\"sky-repeater-item-context-menu\"></ng-content>\n </div>\n </div>\n</ng-template>\n\n<ng-template #skyRepeaterItemRight>\n <div class=\"sky-repeater-item-right\" #itemHeaderRef>\n <div\n class=\"sky-repeater-item-header\"\n [hidden]=\"titleRef.children.length === 0\"\n (click)=\"headerClick()\"\n >\n <div\n class=\"sky-repeater-item-title sky-emphasized\"\n #titleRef\n [attr.role]=\"(itemRole$ | async).title\"\n >\n <ng-content select=\"sky-repeater-item-title\"></ng-content>\n </div>\n <button\n *ngIf=\"reorderable\"\n class=\"sky-btn sky-btn-link sky-repeater-item-reorder-top\"\n type=\"button\"\n [attr.aria-label]=\"\n itemName\n ? ('skyux_repeater_item_reorder_top_label'\n | skyLibResources: itemName)\n : ('skyux_repeater_item_reorder_top_label_default'\n | skyLibResources)\n \"\n (click)=\"moveToTop($event)\"\n >\n <sky-icon icon=\"arrow-circle-up\"></sky-icon>\n {{ 'skyux_repeater_item_reorder_top' | skyLibResources }}\n </button>\n <div *ngIf=\"isCollapsible\" class=\"sky-repeater-item-chevron\">\n <sky-chevron\n [ariaControls]=\"contentId\"\n [ariaLabel]=\"\n itemName\n ? ('skyux_repeater_item_expand' | skyLibResources: itemName)\n : ('skyux_repeater_item_expand_default' | skyLibResources)\n \"\n [direction]=\"isExpanded ? 'up' : 'down'\"\n (directionChange)=\"chevronDirectionChange($event)\"\n >\n </sky-chevron>\n </div>\n <!-- Used for when the chevron is hidden to ensure that the right side is the same height as the left.-->\n <div\n *ngIf=\"!isCollapsible && !contextMenu\"\n class=\"sky-repeater-item-chevron-placeholder\"\n ></div>\n <!-- Used to ensure that the right side is the same height as the left.-->\n <div\n *ngIf=\"contextMenu\"\n class=\"sky-repeater-item-chevron-placeholder-with-context\"\n ></div>\n </div>\n <div\n class=\"sky-repeater-item-content\"\n [id]=\"contentId\"\n [@skyAnimationSlide]=\"slideDirection\"\n #itemContentRef\n [attr.role]=\"(itemRole$ | async).content\"\n >\n <ng-content select=\"sky-repeater-item-content\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: ["sky-repeater-item .sky-repeater-item{display:flex;border-bottom:1px dotted #cdcfd2;padding-top:0;position:relative;transition:box-shadow .15s;align-items:flex-start}sky-repeater-item .sky-repeater-item sky-inline-form{display:block;width:100%}sky-repeater-item .sky-repeater-item sky-inline-form>:first-child,sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-first,sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-last{display:flex;flex:1 0 auto;width:100%}sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-last{padding-top:10px}sky-repeater-item .sky-repeater-item.sky-repeater-item-active{background-color:#eeeeef;color:#212327;padding-left:6px;border-left:4px solid #00b4f1}sky-repeater-item .sky-repeater-item.sky-repeater-item-active .sky-inline-delete{margin-left:-4px;width:calc(100% + 4px)}sky-repeater-item .sky-repeater-item-left{display:flex;padding-top:10px;align-items:center}sky-repeater-item .sky-repeater-item-left sky-checkbox{display:flex}sky-repeater-item .sky-repeater-item-right{max-width:100%;flex-grow:1;align-self:center}sky-repeater-item .sky-repeater-item-header{align-items:center;display:flex;padding-top:10px}sky-repeater-item .sky-repeater-item-chevron{margin-left:10px}sky-repeater-item .sky-repeater-item-chevron-placeholder{height:24px}sky-repeater-item .sky-repeater-item-chevron-placeholder-with-context{height:29px}sky-repeater-item .sky-repeater-item-context-menu{padding:0 10px 0 0}sky-repeater-item .sky-repeater-item-checkbox{padding:0 5px 0 0}sky-repeater-item .sky-repeater-item-selected{background-color:#f1eef6;transition:background-color .15s}sky-repeater-item .sky-repeater-item-title{margin:0;flex-grow:1;line-height:1.1;color:#212327}sky-repeater-item sky-repeater-item-content{display:block;margin:10px 0 0}sky-repeater-item .sky-repeater-item-collapsible .sky-repeater-item-header{cursor:pointer}sky-repeater-item .sky-repeater-item-collapsible .sky-repeater-item-content{padding-right:34px}sky-repeater-item .sky-repeater-item-collapsed .sky-repeater-item-content{display:none}sky-repeater-item .sky-repeater-item-grab-handle{color:#cdcfd2;cursor:pointer;border:0;width:24px;height:24px;cursor:grab;cursor:-moz-grab;padding:0;margin-right:10px}sky-repeater-item .sky-repeater-item-grab-handle:hover{color:#979ba2;transition:color .15s}sky-repeater-item.sky-repeater-item-dragging.gu-mirror{opacity:initial;-ms-filter:initial;filter:initial;background-color:#fff;box-shadow:0 0 5px #0000004d}sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item{background-color:#d8d8d8}sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item .sky-repeater-item-left,sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item .sky-repeater-item-right{visibility:hidden}sky-repeater-item.sky-repeater-item-dragging .sky-repeater-item-grab-handle{cursor:grabbing;cursor:-webkit-grabbing}.sky-theme-modern sky-repeater-item .sky-repeater-item{padding-bottom:20px}.sky-theme-modern sky-repeater-item .sky-repeater-item.sky-repeater-item-active{background-color:transparent;border-left-color:#1870b8}.sky-theme-modern sky-repeater-item .sky-repeater-item:focus,.sky-theme-modern sky-repeater-item .sky-repeater-item:active:focus{outline:solid 2px #1870B8;outline-offset:-2px}.sky-theme-modern sky-repeater-item .sky-repeater-item:focus:not(:active){box-shadow:0 1px 8px #0000004d}.sky-theme-modern sky-repeater-item .sky-repeater-item-header[hidden]+.sky-repeater-item-content sky-repeater-item-content{margin:20px 0 0}.sky-theme-modern sky-repeater-item .sky-repeater-item-header,.sky-theme-modern sky-repeater-item .sky-repeater-item-left{padding-top:20px}.sky-theme-modern sky-repeater-item sky-inline-form .sky-slide-dissolve-last{padding-top:20px}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item{border-bottom-color:#686c73}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item.sky-repeater-item-active{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item-title{color:#fbfcfe}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.λ2, selector: "sky-chevron", inputs: ["ariaControls", "ariaLabel", "direction", "disabled"], outputs: ["directionChange"] }, { kind: "component", type: i6.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { kind: "component", type: i2.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "component", type: i7.λ1, selector: "sky-inline-form", inputs: ["config", "template", "showForm"], outputs: ["close"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], animations: [skyAnimationSlide], encapsulation: i0.ViewEncapsulation.None });
1258
+ SkyRepeaterItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyRepeaterItemComponent, selector: "sky-repeater-item", inputs: { disabled: "disabled", itemName: "itemName", inlineFormConfig: "inlineFormConfig", inlineFormTemplate: "inlineFormTemplate", isExpanded: "isExpanded", isSelected: "isSelected", reorderable: "reorderable", selectable: "selectable", showInlineForm: "showInlineForm", tag: "tag" }, outputs: { collapse: "collapse", expand: "expand", inlineFormClose: "inlineFormClose", isSelectedChange: "isSelectedChange" }, host: { listeners: { "keydown": "onKeydown($event)" }, properties: { "class": "this.repeaterGroupClass" } }, queries: [{ propertyName: "contextMenu", first: true, predicate: SkyRepeaterItemContextMenuComponent, descendants: true, read: ElementRef }, { propertyName: "repeaterItemContentComponents", predicate: SkyRepeaterItemContentComponent }], viewQueries: [{ propertyName: "grabHandle", first: true, predicate: ["grabHandle"], descendants: true, read: ElementRef }, { propertyName: "itemContentRef", first: true, predicate: ["itemContentRef"], descendants: true, read: ElementRef }, { propertyName: "itemHeaderRef", first: true, predicate: ["itemHeaderRef"], descendants: true, read: ElementRef }, { propertyName: "itemRef", first: true, predicate: ["itemRef"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n class=\"sky-repeater-item sky-padding-even-default\"\n [attr.aria-label]=\"itemName\"\n [attr.aria-selected]=\"selectable ? !!isSelected : undefined\"\n [attr.role]=\"(itemRole$ | async)?.item\"\n [attr.tabIndex]=\"tabindex\"\n [ngClass]=\"{\n 'sky-repeater-item-active': isActive,\n 'sky-repeater-item-collapsible': isCollapsible,\n 'sky-repeater-item-selected': isSelected\n }\"\n (click)=\"onRepeaterItemClick($event)\"\n #itemRef\n>\n <div #inlineDelete>\n <ng-content select=\"sky-inline-delete\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"inlineFormTemplate\">\n <sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showInlineForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n >\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemLeft\"></ng-container>\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemRight\"></ng-container>\n </sky-inline-form>\n </ng-container>\n\n <ng-container *ngIf=\"!inlineFormTemplate\">\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemLeft\"></ng-container>\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemRight\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #skyRepeaterItemLeft>\n <div\n [attr.role]=\"!showInlineForm ? (itemRole$ | async)?.content : undefined\"\n class=\"sky-repeater-item-left\"\n >\n <ng-container *ngIf=\"reorderable\">\n <span\n aria-live=\"assertive\"\n class=\"sky-screen-reader-only\"\n [id]=\"contentId + '-reorder-state'\"\n >\n {{ reorderState }}\n </span>\n <span\n class=\"sky-screen-reader-only\"\n [id]=\"contentId + '-reorder-instructions'\"\n >{{ reorderButtonLabel }}</span\n >\n <button\n class=\"sky-btn sky-tile-tools-control sky-repeater-item-grab-handle\"\n type=\"button\"\n [attr.aria-describedby]=\"contentId + '-reorder-instructions'\"\n [attr.aria-label]=\"\n itemName\n ? ('skyux_repeater_item_reorder_label' | skyLibResources: itemName)\n : ('skyux_repeater_item_reorder_label_default' | skyLibResources)\n \"\n (blur)=\"onReorderHandleBlur($event)\"\n (keydown)=\"onReorderHandleKeyDown($event)\"\n #grabHandle\n >\n <sky-icon icon=\"arrows-v\"></sky-icon>\n </button>\n </ng-container>\n <sky-checkbox\n *ngIf=\"selectable\"\n class=\"sky-repeater-item-checkbox\"\n [checked]=\"isSelected\"\n [label]=\"\n itemName\n ? ('skyux_repeater_item_checkbox_label' | skyLibResources: itemName)\n : ('skyux_repeater_item_checkbox_label_default' | skyLibResources)\n \"\n (change)=\"onCheckboxChange($event)\"\n >\n </sky-checkbox>\n <div\n class=\"sky-repeater-item-context-menu\"\n [hidden]=\"contextMenuEl.children.length === 0\"\n #contextMenuEl\n >\n <ng-content select=\"sky-repeater-item-context-menu\"></ng-content>\n </div>\n </div>\n</ng-template>\n\n<ng-template #skyRepeaterItemRight>\n <div class=\"sky-repeater-item-right\" #itemHeaderRef>\n <div\n class=\"sky-repeater-item-header\"\n [attr.role]=\"(itemRole$ | async)?.title\"\n [hidden]=\"titleRef.children.length === 0\"\n (click)=\"headerClick()\"\n >\n <div class=\"sky-repeater-item-title sky-emphasized\" #titleRef>\n <ng-content select=\"sky-repeater-item-title\"></ng-content>\n </div>\n <button\n *ngIf=\"reorderable\"\n class=\"sky-btn sky-btn-link sky-repeater-item-reorder-top\"\n type=\"button\"\n [attr.aria-label]=\"\n itemName\n ? ('skyux_repeater_item_reorder_top_label'\n | skyLibResources: itemName)\n : ('skyux_repeater_item_reorder_top_label_default'\n | skyLibResources)\n \"\n (click)=\"moveToTop($event)\"\n >\n <sky-icon icon=\"arrow-circle-up\"></sky-icon>\n {{ 'skyux_repeater_item_reorder_top' | skyLibResources }}\n </button>\n <div *ngIf=\"isCollapsible\" class=\"sky-repeater-item-chevron\">\n <sky-chevron\n [ariaControls]=\"contentId\"\n [ariaLabel]=\"\n itemName\n ? ('skyux_repeater_item_expand' | skyLibResources: itemName)\n : ('skyux_repeater_item_expand_default' | skyLibResources)\n \"\n [direction]=\"isExpanded ? 'up' : 'down'\"\n (directionChange)=\"chevronDirectionChange($event)\"\n >\n </sky-chevron>\n </div>\n <!-- Used for when the chevron is hidden to ensure that the right side is the same height as the left.-->\n <div\n *ngIf=\"!isCollapsible && !contextMenu\"\n class=\"sky-repeater-item-chevron-placeholder\"\n ></div>\n <!-- Used to ensure that the right side is the same height as the left.-->\n <div\n *ngIf=\"contextMenu\"\n class=\"sky-repeater-item-chevron-placeholder-with-context\"\n ></div>\n </div>\n <div\n class=\"sky-repeater-item-content\"\n [id]=\"contentId\"\n [@skyAnimationSlide]=\"slideDirection\"\n #itemContentRef\n [attr.role]=\"(itemRole$ | async)?.content\"\n >\n <ng-content select=\"sky-repeater-item-content\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: ["sky-repeater-item .sky-repeater-item{display:flex;border-bottom:1px dotted #cdcfd2;padding-top:0;position:relative;transition:box-shadow .15s;align-items:flex-start}sky-repeater-item .sky-repeater-item sky-inline-form{display:block;width:100%}sky-repeater-item .sky-repeater-item sky-inline-form>:first-child,sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-first,sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-last{display:flex;flex:1 0 auto;width:100%}sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-last{padding-top:10px}sky-repeater-item .sky-repeater-item.sky-repeater-item-active{background-color:#eeeeef;color:#212327;padding-left:6px;border-left:4px solid #00b4f1}sky-repeater-item .sky-repeater-item.sky-repeater-item-active .sky-inline-delete{margin-left:-4px;width:calc(100% + 4px)}sky-repeater-item .sky-repeater-item-left{display:flex;padding-top:10px;align-items:center}sky-repeater-item .sky-repeater-item-left sky-checkbox{display:flex}sky-repeater-item .sky-repeater-item-right{max-width:100%;flex-grow:1;align-self:center}sky-repeater-item .sky-repeater-item-header{align-items:center;display:flex;padding-top:10px}sky-repeater-item .sky-repeater-item-chevron{margin-left:10px}sky-repeater-item .sky-repeater-item-chevron-placeholder{height:24px}sky-repeater-item .sky-repeater-item-chevron-placeholder-with-context{height:29px}sky-repeater-item .sky-repeater-item-context-menu{padding:0 10px 0 0}sky-repeater-item .sky-repeater-item-checkbox{padding:0 5px 0 0}sky-repeater-item .sky-repeater-item-selected{background-color:#f1eef6;transition:background-color .15s}sky-repeater-item .sky-repeater-item-title{margin:0;flex-grow:1;line-height:1.1;color:#212327}sky-repeater-item sky-repeater-item-content{display:block;margin:10px 0 0}sky-repeater-item .sky-repeater-item-collapsible .sky-repeater-item-header{cursor:pointer}sky-repeater-item .sky-repeater-item-collapsible .sky-repeater-item-content{padding-right:34px}sky-repeater-item .sky-repeater-item-collapsed .sky-repeater-item-content{display:none}sky-repeater-item .sky-repeater-item-grab-handle{color:#cdcfd2;cursor:pointer;border:0;width:24px;height:24px;cursor:grab;cursor:-moz-grab;padding:0;margin-right:10px}sky-repeater-item .sky-repeater-item-grab-handle:hover{color:#979ba2;transition:color .15s}sky-repeater-item.sky-repeater-item-dragging.gu-mirror{opacity:initial;-ms-filter:initial;filter:initial;background-color:#fff;box-shadow:0 0 5px #0000004d}sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item{background-color:#d8d8d8}sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item .sky-repeater-item-left,sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item .sky-repeater-item-right{visibility:hidden}sky-repeater-item.sky-repeater-item-dragging .sky-repeater-item-grab-handle{cursor:grabbing;cursor:-webkit-grabbing}.sky-theme-modern sky-repeater-item .sky-repeater-item{padding-bottom:20px}.sky-theme-modern sky-repeater-item .sky-repeater-item.sky-repeater-item-active{background-color:transparent;border-left-color:#1870b8}.sky-theme-modern sky-repeater-item .sky-repeater-item:focus,.sky-theme-modern sky-repeater-item .sky-repeater-item:active:focus{outline:solid 2px #1870B8;outline-offset:-2px}.sky-theme-modern sky-repeater-item .sky-repeater-item:focus:not(:active){box-shadow:0 1px 8px #0000004d}.sky-theme-modern sky-repeater-item .sky-repeater-item-header[hidden]+.sky-repeater-item-content sky-repeater-item-content{margin:20px 0 0}.sky-theme-modern sky-repeater-item .sky-repeater-item-header,.sky-theme-modern sky-repeater-item .sky-repeater-item-left{padding-top:20px}.sky-theme-modern sky-repeater-item sky-inline-form .sky-slide-dissolve-last{padding-top:20px}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item{border-bottom-color:#686c73}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item.sky-repeater-item-active{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item-title{color:#fbfcfe}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.λ2, selector: "sky-chevron", inputs: ["ariaControls", "ariaLabel", "direction", "disabled"], outputs: ["directionChange"] }, { kind: "component", type: i6.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { kind: "component", type: i2.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "component", type: i7.λ1, selector: "sky-inline-form", inputs: ["config", "template", "showForm"], outputs: ["close"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], animations: [skyAnimationSlide], encapsulation: i0.ViewEncapsulation.None });
1202
1259
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterItemComponent, decorators: [{
1203
1260
  type: Component,
1204
- args: [{ selector: 'sky-repeater-item', animations: [skyAnimationSlide], encapsulation: ViewEncapsulation.None, template: "<div\n class=\"sky-repeater-item sky-padding-even-default\"\n [attr.aria-label]=\"itemName\"\n [attr.aria-selected]=\"selectable ? isSelected : undefined\"\n [attr.role]=\"showInlineForm ? 'form' : (itemRole$ | async).item\"\n [ngClass]=\"{\n 'sky-repeater-item-active': isActive,\n 'sky-repeater-item-collapsible': isCollapsible,\n 'sky-repeater-item-selected': isSelected\n }\"\n (click)=\"onRepeaterItemClick($event)\"\n #itemRef\n>\n <div #inlineDelete>\n <ng-content select=\"sky-inline-delete\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"inlineFormTemplate\">\n <sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showInlineForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n >\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemLeft\"></ng-container>\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemRight\"></ng-container>\n </sky-inline-form>\n </ng-container>\n\n <ng-container *ngIf=\"!inlineFormTemplate\">\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemLeft\"></ng-container>\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemRight\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #skyRepeaterItemLeft>\n <div class=\"sky-repeater-item-left\">\n <ng-container *ngIf=\"reorderable\">\n <span\n aria-live=\"assertive\"\n class=\"sky-screen-reader-only\"\n [id]=\"contentId + '-reorder-state'\"\n >\n {{ reorderState }}\n </span>\n <span\n class=\"sky-screen-reader-only\"\n [id]=\"contentId + '-reorder-instructions'\"\n >{{ reorderButtonLabel }}</span\n >\n <button\n class=\"sky-btn sky-tile-tools-control sky-repeater-item-grab-handle\"\n type=\"button\"\n [attr.aria-describedby]=\"contentId + '-reorder-instructions'\"\n [attr.aria-label]=\"\n itemName\n ? ('skyux_repeater_item_reorder_label' | skyLibResources: itemName)\n : ('skyux_repeater_item_reorder_label_default' | skyLibResources)\n \"\n (blur)=\"onReorderHandleBlur($event)\"\n (keydown)=\"onReorderHandleKeyDown($event)\"\n #grabHandle\n >\n <sky-icon icon=\"arrows-v\"></sky-icon>\n </button>\n </ng-container>\n <sky-checkbox\n *ngIf=\"selectable\"\n class=\"sky-repeater-item-checkbox\"\n [checked]=\"isSelected\"\n [label]=\"\n itemName\n ? ('skyux_repeater_item_checkbox_label' | skyLibResources: itemName)\n : ('skyux_repeater_item_checkbox_label_default' | skyLibResources)\n \"\n (change)=\"onCheckboxChange($event)\"\n >\n </sky-checkbox>\n <div\n class=\"sky-repeater-item-context-menu\"\n [hidden]=\"contextMenuEl.children.length === 0\"\n #contextMenuEl\n >\n <ng-content select=\"sky-repeater-item-context-menu\"></ng-content>\n </div>\n </div>\n</ng-template>\n\n<ng-template #skyRepeaterItemRight>\n <div class=\"sky-repeater-item-right\" #itemHeaderRef>\n <div\n class=\"sky-repeater-item-header\"\n [hidden]=\"titleRef.children.length === 0\"\n (click)=\"headerClick()\"\n >\n <div\n class=\"sky-repeater-item-title sky-emphasized\"\n #titleRef\n [attr.role]=\"(itemRole$ | async).title\"\n >\n <ng-content select=\"sky-repeater-item-title\"></ng-content>\n </div>\n <button\n *ngIf=\"reorderable\"\n class=\"sky-btn sky-btn-link sky-repeater-item-reorder-top\"\n type=\"button\"\n [attr.aria-label]=\"\n itemName\n ? ('skyux_repeater_item_reorder_top_label'\n | skyLibResources: itemName)\n : ('skyux_repeater_item_reorder_top_label_default'\n | skyLibResources)\n \"\n (click)=\"moveToTop($event)\"\n >\n <sky-icon icon=\"arrow-circle-up\"></sky-icon>\n {{ 'skyux_repeater_item_reorder_top' | skyLibResources }}\n </button>\n <div *ngIf=\"isCollapsible\" class=\"sky-repeater-item-chevron\">\n <sky-chevron\n [ariaControls]=\"contentId\"\n [ariaLabel]=\"\n itemName\n ? ('skyux_repeater_item_expand' | skyLibResources: itemName)\n : ('skyux_repeater_item_expand_default' | skyLibResources)\n \"\n [direction]=\"isExpanded ? 'up' : 'down'\"\n (directionChange)=\"chevronDirectionChange($event)\"\n >\n </sky-chevron>\n </div>\n <!-- Used for when the chevron is hidden to ensure that the right side is the same height as the left.-->\n <div\n *ngIf=\"!isCollapsible && !contextMenu\"\n class=\"sky-repeater-item-chevron-placeholder\"\n ></div>\n <!-- Used to ensure that the right side is the same height as the left.-->\n <div\n *ngIf=\"contextMenu\"\n class=\"sky-repeater-item-chevron-placeholder-with-context\"\n ></div>\n </div>\n <div\n class=\"sky-repeater-item-content\"\n [id]=\"contentId\"\n [@skyAnimationSlide]=\"slideDirection\"\n #itemContentRef\n [attr.role]=\"(itemRole$ | async).content\"\n >\n <ng-content select=\"sky-repeater-item-content\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: ["sky-repeater-item .sky-repeater-item{display:flex;border-bottom:1px dotted #cdcfd2;padding-top:0;position:relative;transition:box-shadow .15s;align-items:flex-start}sky-repeater-item .sky-repeater-item sky-inline-form{display:block;width:100%}sky-repeater-item .sky-repeater-item sky-inline-form>:first-child,sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-first,sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-last{display:flex;flex:1 0 auto;width:100%}sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-last{padding-top:10px}sky-repeater-item .sky-repeater-item.sky-repeater-item-active{background-color:#eeeeef;color:#212327;padding-left:6px;border-left:4px solid #00b4f1}sky-repeater-item .sky-repeater-item.sky-repeater-item-active .sky-inline-delete{margin-left:-4px;width:calc(100% + 4px)}sky-repeater-item .sky-repeater-item-left{display:flex;padding-top:10px;align-items:center}sky-repeater-item .sky-repeater-item-left sky-checkbox{display:flex}sky-repeater-item .sky-repeater-item-right{max-width:100%;flex-grow:1;align-self:center}sky-repeater-item .sky-repeater-item-header{align-items:center;display:flex;padding-top:10px}sky-repeater-item .sky-repeater-item-chevron{margin-left:10px}sky-repeater-item .sky-repeater-item-chevron-placeholder{height:24px}sky-repeater-item .sky-repeater-item-chevron-placeholder-with-context{height:29px}sky-repeater-item .sky-repeater-item-context-menu{padding:0 10px 0 0}sky-repeater-item .sky-repeater-item-checkbox{padding:0 5px 0 0}sky-repeater-item .sky-repeater-item-selected{background-color:#f1eef6;transition:background-color .15s}sky-repeater-item .sky-repeater-item-title{margin:0;flex-grow:1;line-height:1.1;color:#212327}sky-repeater-item sky-repeater-item-content{display:block;margin:10px 0 0}sky-repeater-item .sky-repeater-item-collapsible .sky-repeater-item-header{cursor:pointer}sky-repeater-item .sky-repeater-item-collapsible .sky-repeater-item-content{padding-right:34px}sky-repeater-item .sky-repeater-item-collapsed .sky-repeater-item-content{display:none}sky-repeater-item .sky-repeater-item-grab-handle{color:#cdcfd2;cursor:pointer;border:0;width:24px;height:24px;cursor:grab;cursor:-moz-grab;padding:0;margin-right:10px}sky-repeater-item .sky-repeater-item-grab-handle:hover{color:#979ba2;transition:color .15s}sky-repeater-item.sky-repeater-item-dragging.gu-mirror{opacity:initial;-ms-filter:initial;filter:initial;background-color:#fff;box-shadow:0 0 5px #0000004d}sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item{background-color:#d8d8d8}sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item .sky-repeater-item-left,sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item .sky-repeater-item-right{visibility:hidden}sky-repeater-item.sky-repeater-item-dragging .sky-repeater-item-grab-handle{cursor:grabbing;cursor:-webkit-grabbing}.sky-theme-modern sky-repeater-item .sky-repeater-item{padding-bottom:20px}.sky-theme-modern sky-repeater-item .sky-repeater-item.sky-repeater-item-active{background-color:transparent;border-left-color:#1870b8}.sky-theme-modern sky-repeater-item .sky-repeater-item:focus,.sky-theme-modern sky-repeater-item .sky-repeater-item:active:focus{outline:solid 2px #1870B8;outline-offset:-2px}.sky-theme-modern sky-repeater-item .sky-repeater-item:focus:not(:active){box-shadow:0 1px 8px #0000004d}.sky-theme-modern sky-repeater-item .sky-repeater-item-header[hidden]+.sky-repeater-item-content sky-repeater-item-content{margin:20px 0 0}.sky-theme-modern sky-repeater-item .sky-repeater-item-header,.sky-theme-modern sky-repeater-item .sky-repeater-item-left{padding-top:20px}.sky-theme-modern sky-repeater-item sky-inline-form .sky-slide-dissolve-last{padding-top:20px}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item{border-bottom-color:#686c73}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item.sky-repeater-item-active{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item-title{color:#fbfcfe}\n"] }]
1205
- }], ctorParameters: function () { return [{ type: SkyRepeaterService }, { type: i0.ChangeDetectorRef }, { type: SkyRepeaterAdapterService }, { type: i0.ElementRef }, { type: i4.SkyLibResourcesService }]; }, propDecorators: { tabindex: [{
1206
- type: HostBinding
1207
- }], disabled: [{
1261
+ args: [{ selector: 'sky-repeater-item', animations: [skyAnimationSlide], encapsulation: ViewEncapsulation.None, template: "<div\n class=\"sky-repeater-item sky-padding-even-default\"\n [attr.aria-label]=\"itemName\"\n [attr.aria-selected]=\"selectable ? !!isSelected : undefined\"\n [attr.role]=\"(itemRole$ | async)?.item\"\n [attr.tabIndex]=\"tabindex\"\n [ngClass]=\"{\n 'sky-repeater-item-active': isActive,\n 'sky-repeater-item-collapsible': isCollapsible,\n 'sky-repeater-item-selected': isSelected\n }\"\n (click)=\"onRepeaterItemClick($event)\"\n #itemRef\n>\n <div #inlineDelete>\n <ng-content select=\"sky-inline-delete\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"inlineFormTemplate\">\n <sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showInlineForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n >\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemLeft\"></ng-container>\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemRight\"></ng-container>\n </sky-inline-form>\n </ng-container>\n\n <ng-container *ngIf=\"!inlineFormTemplate\">\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemLeft\"></ng-container>\n <ng-container *ngTemplateOutlet=\"skyRepeaterItemRight\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #skyRepeaterItemLeft>\n <div\n [attr.role]=\"!showInlineForm ? (itemRole$ | async)?.content : undefined\"\n class=\"sky-repeater-item-left\"\n >\n <ng-container *ngIf=\"reorderable\">\n <span\n aria-live=\"assertive\"\n class=\"sky-screen-reader-only\"\n [id]=\"contentId + '-reorder-state'\"\n >\n {{ reorderState }}\n </span>\n <span\n class=\"sky-screen-reader-only\"\n [id]=\"contentId + '-reorder-instructions'\"\n >{{ reorderButtonLabel }}</span\n >\n <button\n class=\"sky-btn sky-tile-tools-control sky-repeater-item-grab-handle\"\n type=\"button\"\n [attr.aria-describedby]=\"contentId + '-reorder-instructions'\"\n [attr.aria-label]=\"\n itemName\n ? ('skyux_repeater_item_reorder_label' | skyLibResources: itemName)\n : ('skyux_repeater_item_reorder_label_default' | skyLibResources)\n \"\n (blur)=\"onReorderHandleBlur($event)\"\n (keydown)=\"onReorderHandleKeyDown($event)\"\n #grabHandle\n >\n <sky-icon icon=\"arrows-v\"></sky-icon>\n </button>\n </ng-container>\n <sky-checkbox\n *ngIf=\"selectable\"\n class=\"sky-repeater-item-checkbox\"\n [checked]=\"isSelected\"\n [label]=\"\n itemName\n ? ('skyux_repeater_item_checkbox_label' | skyLibResources: itemName)\n : ('skyux_repeater_item_checkbox_label_default' | skyLibResources)\n \"\n (change)=\"onCheckboxChange($event)\"\n >\n </sky-checkbox>\n <div\n class=\"sky-repeater-item-context-menu\"\n [hidden]=\"contextMenuEl.children.length === 0\"\n #contextMenuEl\n >\n <ng-content select=\"sky-repeater-item-context-menu\"></ng-content>\n </div>\n </div>\n</ng-template>\n\n<ng-template #skyRepeaterItemRight>\n <div class=\"sky-repeater-item-right\" #itemHeaderRef>\n <div\n class=\"sky-repeater-item-header\"\n [attr.role]=\"(itemRole$ | async)?.title\"\n [hidden]=\"titleRef.children.length === 0\"\n (click)=\"headerClick()\"\n >\n <div class=\"sky-repeater-item-title sky-emphasized\" #titleRef>\n <ng-content select=\"sky-repeater-item-title\"></ng-content>\n </div>\n <button\n *ngIf=\"reorderable\"\n class=\"sky-btn sky-btn-link sky-repeater-item-reorder-top\"\n type=\"button\"\n [attr.aria-label]=\"\n itemName\n ? ('skyux_repeater_item_reorder_top_label'\n | skyLibResources: itemName)\n : ('skyux_repeater_item_reorder_top_label_default'\n | skyLibResources)\n \"\n (click)=\"moveToTop($event)\"\n >\n <sky-icon icon=\"arrow-circle-up\"></sky-icon>\n {{ 'skyux_repeater_item_reorder_top' | skyLibResources }}\n </button>\n <div *ngIf=\"isCollapsible\" class=\"sky-repeater-item-chevron\">\n <sky-chevron\n [ariaControls]=\"contentId\"\n [ariaLabel]=\"\n itemName\n ? ('skyux_repeater_item_expand' | skyLibResources: itemName)\n : ('skyux_repeater_item_expand_default' | skyLibResources)\n \"\n [direction]=\"isExpanded ? 'up' : 'down'\"\n (directionChange)=\"chevronDirectionChange($event)\"\n >\n </sky-chevron>\n </div>\n <!-- Used for when the chevron is hidden to ensure that the right side is the same height as the left.-->\n <div\n *ngIf=\"!isCollapsible && !contextMenu\"\n class=\"sky-repeater-item-chevron-placeholder\"\n ></div>\n <!-- Used to ensure that the right side is the same height as the left.-->\n <div\n *ngIf=\"contextMenu\"\n class=\"sky-repeater-item-chevron-placeholder-with-context\"\n ></div>\n </div>\n <div\n class=\"sky-repeater-item-content\"\n [id]=\"contentId\"\n [@skyAnimationSlide]=\"slideDirection\"\n #itemContentRef\n [attr.role]=\"(itemRole$ | async)?.content\"\n >\n <ng-content select=\"sky-repeater-item-content\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: ["sky-repeater-item .sky-repeater-item{display:flex;border-bottom:1px dotted #cdcfd2;padding-top:0;position:relative;transition:box-shadow .15s;align-items:flex-start}sky-repeater-item .sky-repeater-item sky-inline-form{display:block;width:100%}sky-repeater-item .sky-repeater-item sky-inline-form>:first-child,sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-first,sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-last{display:flex;flex:1 0 auto;width:100%}sky-repeater-item .sky-repeater-item sky-inline-form .sky-slide-dissolve-last{padding-top:10px}sky-repeater-item .sky-repeater-item.sky-repeater-item-active{background-color:#eeeeef;color:#212327;padding-left:6px;border-left:4px solid #00b4f1}sky-repeater-item .sky-repeater-item.sky-repeater-item-active .sky-inline-delete{margin-left:-4px;width:calc(100% + 4px)}sky-repeater-item .sky-repeater-item-left{display:flex;padding-top:10px;align-items:center}sky-repeater-item .sky-repeater-item-left sky-checkbox{display:flex}sky-repeater-item .sky-repeater-item-right{max-width:100%;flex-grow:1;align-self:center}sky-repeater-item .sky-repeater-item-header{align-items:center;display:flex;padding-top:10px}sky-repeater-item .sky-repeater-item-chevron{margin-left:10px}sky-repeater-item .sky-repeater-item-chevron-placeholder{height:24px}sky-repeater-item .sky-repeater-item-chevron-placeholder-with-context{height:29px}sky-repeater-item .sky-repeater-item-context-menu{padding:0 10px 0 0}sky-repeater-item .sky-repeater-item-checkbox{padding:0 5px 0 0}sky-repeater-item .sky-repeater-item-selected{background-color:#f1eef6;transition:background-color .15s}sky-repeater-item .sky-repeater-item-title{margin:0;flex-grow:1;line-height:1.1;color:#212327}sky-repeater-item sky-repeater-item-content{display:block;margin:10px 0 0}sky-repeater-item .sky-repeater-item-collapsible .sky-repeater-item-header{cursor:pointer}sky-repeater-item .sky-repeater-item-collapsible .sky-repeater-item-content{padding-right:34px}sky-repeater-item .sky-repeater-item-collapsed .sky-repeater-item-content{display:none}sky-repeater-item .sky-repeater-item-grab-handle{color:#cdcfd2;cursor:pointer;border:0;width:24px;height:24px;cursor:grab;cursor:-moz-grab;padding:0;margin-right:10px}sky-repeater-item .sky-repeater-item-grab-handle:hover{color:#979ba2;transition:color .15s}sky-repeater-item.sky-repeater-item-dragging.gu-mirror{opacity:initial;-ms-filter:initial;filter:initial;background-color:#fff;box-shadow:0 0 5px #0000004d}sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item{background-color:#d8d8d8}sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item .sky-repeater-item-left,sky-repeater-item.sky-repeater-item-dragging.gu-transit .sky-repeater-item .sky-repeater-item-right{visibility:hidden}sky-repeater-item.sky-repeater-item-dragging .sky-repeater-item-grab-handle{cursor:grabbing;cursor:-webkit-grabbing}.sky-theme-modern sky-repeater-item .sky-repeater-item{padding-bottom:20px}.sky-theme-modern sky-repeater-item .sky-repeater-item.sky-repeater-item-active{background-color:transparent;border-left-color:#1870b8}.sky-theme-modern sky-repeater-item .sky-repeater-item:focus,.sky-theme-modern sky-repeater-item .sky-repeater-item:active:focus{outline:solid 2px #1870B8;outline-offset:-2px}.sky-theme-modern sky-repeater-item .sky-repeater-item:focus:not(:active){box-shadow:0 1px 8px #0000004d}.sky-theme-modern sky-repeater-item .sky-repeater-item-header[hidden]+.sky-repeater-item-content sky-repeater-item-content{margin:20px 0 0}.sky-theme-modern sky-repeater-item .sky-repeater-item-header,.sky-theme-modern sky-repeater-item .sky-repeater-item-left{padding-top:20px}.sky-theme-modern sky-repeater-item sky-inline-form .sky-slide-dissolve-last{padding-top:20px}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item{border-bottom-color:#686c73}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item.sky-repeater-item-active{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark sky-repeater-item .sky-repeater-item-title{color:#fbfcfe}\n"] }]
1262
+ }], ctorParameters: function () { return [{ type: SkyRepeaterService }, { type: i0.ChangeDetectorRef }, { type: SkyRepeaterAdapterService }, { type: i0.ElementRef }, { type: i4.SkyLibResourcesService }]; }, propDecorators: { disabled: [{
1208
1263
  type: Input
1209
1264
  }], itemName: [{
1210
1265
  type: Input
@@ -1258,18 +1313,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
1258
1313
  args: ['keydown', ['$event']]
1259
1314
  }] } });
1260
1315
 
1261
- let uniqueId = 0;
1316
+ var _SkyRepeaterComponent_instances, _SkyRepeaterComponent_adapterService, _SkyRepeaterComponent_changeDetector, _SkyRepeaterComponent_dragulaService, _SkyRepeaterComponent_elementRef, _SkyRepeaterComponent_renderer, _SkyRepeaterComponent_repeaterService, _SkyRepeaterComponent_ngUnsubscribe, _SkyRepeaterComponent_updateForExpandMode, _SkyRepeaterComponent_initializeDragAndDrop, _SkyRepeaterComponent_destroyDragAndDrop, _SkyRepeaterComponent_emitTags, _SkyRepeaterComponent_everyItemHasTag, _SkyRepeaterComponent_updateRole;
1262
1317
  /**
1263
1318
  * Creates a container to display repeater items.
1264
1319
  */
1265
1320
  class SkyRepeaterComponent {
1266
1321
  constructor(changeDetector, repeaterService, adapterService, dragulaService, elementRef, renderer) {
1267
- this.changeDetector = changeDetector;
1268
- this.repeaterService = repeaterService;
1269
- this.adapterService = adapterService;
1270
- this.dragulaService = dragulaService;
1271
- this.elementRef = elementRef;
1272
- this.renderer = renderer;
1322
+ _SkyRepeaterComponent_instances.add(this);
1273
1323
  /**
1274
1324
  * Indicates whether users can change the order of items in the repeater list.
1275
1325
  * Each repeater item also has `reorderable` property to indicate whether
@@ -1285,15 +1335,26 @@ class SkyRepeaterComponent {
1285
1335
  * This event emits an ordered array of the `tag` properties that the consumer provides for each repeater item.
1286
1336
  */
1287
1337
  this.orderChange = new EventEmitter();
1288
- this.dragulaUnsubscribe = new Subject();
1289
- this.ngUnsubscribe = new Subject();
1290
- this._expandMode = 'none';
1291
- this.dragulaGroupName = `sky-repeater-dragula-${++uniqueId}`;
1292
- this.repeaterService.itemCollapseStateChange
1293
- .pipe(takeUntil(this.ngUnsubscribe))
1338
+ _SkyRepeaterComponent_adapterService.set(this, void 0);
1339
+ _SkyRepeaterComponent_changeDetector.set(this, void 0);
1340
+ _SkyRepeaterComponent_dragulaService.set(this, void 0);
1341
+ _SkyRepeaterComponent_elementRef.set(this, void 0);
1342
+ _SkyRepeaterComponent_renderer.set(this, void 0);
1343
+ _SkyRepeaterComponent_repeaterService.set(this, void 0);
1344
+ _SkyRepeaterComponent_ngUnsubscribe.set(this, new Subject());
1345
+ __classPrivateFieldSet(this, _SkyRepeaterComponent_changeDetector, changeDetector, "f");
1346
+ __classPrivateFieldSet(this, _SkyRepeaterComponent_repeaterService, repeaterService, "f");
1347
+ __classPrivateFieldSet(this, _SkyRepeaterComponent_adapterService, adapterService, "f");
1348
+ __classPrivateFieldSet(this, _SkyRepeaterComponent_dragulaService, dragulaService, "f");
1349
+ __classPrivateFieldSet(this, _SkyRepeaterComponent_elementRef, elementRef, "f");
1350
+ __classPrivateFieldSet(this, _SkyRepeaterComponent_renderer, renderer, "f");
1351
+ this.dragulaGroupName = `sky-repeater-dragula-${__classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").repeaterGroupId}`;
1352
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").itemCollapseStateChange
1353
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterComponent_ngUnsubscribe, "f")))
1294
1354
  .subscribe((item) => {
1355
+ var _a;
1295
1356
  if (this.expandMode === 'single' && item.isExpanded) {
1296
- this.items.forEach((otherItem) => {
1357
+ (_a = this.items) === null || _a === void 0 ? void 0 : _a.forEach((otherItem) => {
1297
1358
  if (otherItem !== item &&
1298
1359
  otherItem.isExpanded &&
1299
1360
  otherItem.isCollapsible) {
@@ -1302,23 +1363,22 @@ class SkyRepeaterComponent {
1302
1363
  });
1303
1364
  }
1304
1365
  });
1305
- this.repeaterService.activeItemIndexChange
1306
- .pipe(takeUntil(this.ngUnsubscribe))
1366
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").activeItemIndexChange
1367
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterComponent_ngUnsubscribe, "f")))
1307
1368
  .subscribe((index) => {
1308
1369
  if (index !== this.activeIndex) {
1309
1370
  this.activeIndex = index;
1310
1371
  this.activeIndexChange.emit(index);
1311
1372
  }
1312
1373
  });
1313
- this.repeaterService.orderChange
1314
- .pipe(takeUntil(this.ngUnsubscribe))
1374
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").orderChange
1375
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterComponent_ngUnsubscribe, "f")))
1315
1376
  .subscribe(() => {
1316
- this.emitTags();
1377
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_emitTags).call(this);
1317
1378
  });
1318
- this.repeaterService.repeaterGroupId = uniqueId;
1319
- this.updateForExpandMode();
1320
- this.adapterService.setRepeaterHost(this.elementRef);
1321
- this.initializeDragAndDrop();
1379
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateForExpandMode).call(this);
1380
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_adapterService, "f").setRepeaterHost(__classPrivateFieldGet(this, _SkyRepeaterComponent_elementRef, "f"));
1381
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_initializeDragAndDrop).call(this);
1322
1382
  }
1323
1383
  /**
1324
1384
  * Specifies a layout to determine which repeater items are expanded by default and whether
@@ -1339,209 +1399,201 @@ class SkyRepeaterComponent {
1339
1399
  * and users only occasionally need to view the body content.
1340
1400
  * @default "none"
1341
1401
  */
1402
+ // TODO: Remove 'string' as a valid type in a breaking change.
1342
1403
  set expandMode(value) {
1343
- this.repeaterService.expandMode = value;
1344
- this._expandMode = value;
1345
- this.updateForExpandMode();
1404
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").expandMode = value;
1405
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateForExpandMode).call(this);
1346
1406
  }
1347
1407
  get expandMode() {
1348
- return this._expandMode || 'none';
1408
+ return __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").expandMode;
1349
1409
  }
1350
1410
  ngAfterContentInit() {
1411
+ var _a;
1351
1412
  // If activeIndex has been set on init, call service to activate the appropriate item.
1352
1413
  setTimeout(() => {
1353
1414
  if (this.activeIndex || this.activeIndex === 0) {
1354
- this.repeaterService.activateItemByIndex(this.activeIndex);
1415
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").activateItemByIndex(this.activeIndex);
1355
1416
  }
1356
- if (this.reorderable && !this.everyItemHasTag()) {
1417
+ if (this.reorderable && !__classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_everyItemHasTag).call(this)) {
1357
1418
  console.warn('Please supply tag properties for each repeater item when reordering functionality is enabled.');
1358
1419
  }
1359
1420
  });
1360
1421
  // HACK: Not updating for expand mode in a timeout causes an error.
1361
1422
  // https://github.com/angular/angular/issues/6005
1362
- this.items.changes.pipe(takeUntil(this.ngUnsubscribe)).subscribe(() => {
1423
+ (_a = this.items) === null || _a === void 0 ? void 0 : _a.changes.pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterComponent_ngUnsubscribe, "f"))).subscribe(() => {
1363
1424
  setTimeout(() => {
1364
- if (this.items.last) {
1365
- this.updateForExpandMode(this.items.last);
1425
+ var _a;
1426
+ if ((_a = this.items) === null || _a === void 0 ? void 0 : _a.last) {
1427
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateForExpandMode).call(this, this.items.last);
1366
1428
  this.items.last.reorderable = this.reorderable;
1367
1429
  }
1368
1430
  if (this.activeIndex !== undefined) {
1369
- this.repeaterService.activateItemByIndex(this.activeIndex);
1431
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").activateItemByIndex(this.activeIndex);
1370
1432
  }
1371
- this.updateRole();
1433
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateRole).call(this);
1372
1434
  });
1373
1435
  });
1374
1436
  setTimeout(() => {
1375
- this.updateForExpandMode();
1376
- this.items.forEach((item) => {
1437
+ var _a;
1438
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateForExpandMode).call(this);
1439
+ (_a = this.items) === null || _a === void 0 ? void 0 : _a.forEach((item) => {
1377
1440
  item.reorderable = this.reorderable;
1378
1441
  });
1379
- this.updateRole();
1442
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateRole).call(this);
1380
1443
  }, 0);
1381
1444
  }
1382
1445
  ngOnChanges(changes) {
1383
1446
  if (changes['activeIndex']) {
1384
- this.repeaterService.enableActiveState = true;
1447
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").enableActiveState = true;
1385
1448
  if (changes['activeIndex'].currentValue !==
1386
1449
  changes['activeIndex'].previousValue) {
1387
- this.repeaterService.activateItemByIndex(this.activeIndex);
1450
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").activateItemByIndex(this.activeIndex);
1388
1451
  }
1389
1452
  }
1390
1453
  if (changes.reorderable) {
1391
1454
  if (this.items) {
1392
1455
  this.items.forEach((item) => (item.reorderable = this.reorderable));
1393
1456
  }
1394
- this.updateRole();
1395
- this.changeDetector.markForCheck();
1457
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateRole).call(this);
1458
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_changeDetector, "f").markForCheck();
1396
1459
  }
1397
1460
  }
1398
1461
  ngOnDestroy() {
1399
- this.ngUnsubscribe.next();
1400
- this.ngUnsubscribe.complete();
1401
- this.destroyDragAndDrop();
1462
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_ngUnsubscribe, "f").next();
1463
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_ngUnsubscribe, "f").complete();
1464
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_destroyDragAndDrop).call(this);
1402
1465
  }
1403
1466
  ngOnInit() {
1404
- this.updateRole();
1467
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateRole).call(this);
1405
1468
  }
1406
1469
  onCdkObserveContent() {
1407
- this.updateRole();
1408
- }
1409
- updateForExpandMode(itemAdded) {
1410
- if (this.items) {
1411
- let foundExpanded = false;
1412
- const isCollapsible = this.expandMode !== 'none';
1413
- const isSingle = this.expandMode === 'single';
1414
- // Keep any newly-added expanded item expanded and collapse the rest.
1415
- if (itemAdded && itemAdded.isExpanded) {
1416
- foundExpanded = true;
1417
- }
1418
- this.items.forEach((item) => {
1419
- item.isCollapsible = isCollapsible && !!item.hasItemContent;
1420
- if (item !== itemAdded && isSingle && item.isExpanded) {
1421
- if (foundExpanded) {
1422
- item.updateForExpanded(false, false);
1423
- }
1424
- foundExpanded = true;
1425
- }
1426
- });
1427
- this.updateRole();
1428
- }
1470
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateRole).call(this);
1429
1471
  }
1430
- initializeDragAndDrop() {
1431
- /* Sanity check that we haven't already set up dragging abilities */
1432
- /* istanbul ignore else */
1433
- if (!this.dragulaService.find(this.dragulaGroupName)) {
1434
- this.dragulaService.createGroup(this.dragulaGroupName, {
1435
- moves: (el, container, handle) => {
1436
- const target = el.querySelector('.sky-repeater-item-grab-handle');
1437
- return this.reorderable && target && target.contains(handle);
1438
- },
1439
- });
1472
+ }
1473
+ _SkyRepeaterComponent_adapterService = new WeakMap(), _SkyRepeaterComponent_changeDetector = new WeakMap(), _SkyRepeaterComponent_dragulaService = new WeakMap(), _SkyRepeaterComponent_elementRef = new WeakMap(), _SkyRepeaterComponent_renderer = new WeakMap(), _SkyRepeaterComponent_repeaterService = new WeakMap(), _SkyRepeaterComponent_ngUnsubscribe = new WeakMap(), _SkyRepeaterComponent_instances = new WeakSet(), _SkyRepeaterComponent_updateForExpandMode = function _SkyRepeaterComponent_updateForExpandMode(itemAdded) {
1474
+ if (this.items) {
1475
+ let foundExpanded = false;
1476
+ const isCollapsible = this.expandMode !== 'none';
1477
+ const isSingle = this.expandMode === 'single';
1478
+ // Keep any newly-added expanded item expanded and collapse the rest.
1479
+ if (itemAdded && itemAdded.isExpanded) {
1480
+ foundExpanded = true;
1440
1481
  }
1441
- let draggedItemIndex;
1442
- this.dragulaService
1443
- .drag(this.dragulaGroupName)
1444
- .pipe(takeUntil(this.dragulaUnsubscribe))
1445
- .subscribe((args) => {
1446
- /* istanbul ignore else */
1447
- if (args.name === this.dragulaGroupName) {
1448
- this.renderer.addClass(args.el, 'sky-repeater-item-dragging');
1449
- draggedItemIndex = this.adapterService.getRepeaterItemIndex(args.el);
1450
- }
1451
- });
1452
- this.dragulaService
1453
- .dragend(this.dragulaGroupName)
1454
- .pipe(takeUntil(this.dragulaUnsubscribe))
1455
- .subscribe((args) => {
1456
- /* istanbul ignore else */
1457
- if (args.name === this.dragulaGroupName) {
1458
- this.renderer.removeClass(args.el, 'sky-repeater-item-dragging');
1459
- const newItemIndex = this.adapterService.getRepeaterItemIndex(args.el);
1460
- /* sanity check */
1461
- /* istanbul ignore else */
1462
- if (draggedItemIndex >= 0) {
1463
- this.repeaterService.reorderItem(draggedItemIndex, newItemIndex);
1464
- draggedItemIndex = undefined;
1482
+ this.items.forEach((item) => {
1483
+ item.isCollapsible = isCollapsible && !!item.hasItemContent;
1484
+ if (item !== itemAdded && isSingle && item.isExpanded) {
1485
+ if (foundExpanded) {
1486
+ item.updateForExpanded(false);
1465
1487
  }
1466
- this.emitTags();
1488
+ foundExpanded = true;
1467
1489
  }
1468
1490
  });
1469
- }
1470
- destroyDragAndDrop() {
1471
- this.dragulaUnsubscribe.next();
1472
- this.dragulaUnsubscribe.complete();
1473
- this.dragulaUnsubscribe = undefined;
1474
- /* Sanity check that we have set up dragging abilities */
1475
- /* istanbul ignore else */
1476
- if (this.dragulaService.find(this.dragulaGroupName)) {
1477
- this.dragulaService.destroy(this.dragulaGroupName);
1478
- }
1479
- }
1480
- emitTags() {
1481
- const tags = this.repeaterService.items.map((item) => item.tag);
1482
- this.orderChange.emit(tags);
1483
- }
1484
- everyItemHasTag() {
1485
- /* sanity check */
1486
- /* istanbul ignore if */
1487
- if (!this.items || this.items.length === 0) {
1488
- return false;
1489
- }
1490
- return this.items.toArray().every((item) => {
1491
- return item.tag !== undefined;
1491
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_updateRole).call(this);
1492
+ }
1493
+ }, _SkyRepeaterComponent_initializeDragAndDrop = function _SkyRepeaterComponent_initializeDragAndDrop() {
1494
+ /* Sanity check that we haven't already set up dragging abilities */
1495
+ /* istanbul ignore else */
1496
+ if (!__classPrivateFieldGet(this, _SkyRepeaterComponent_dragulaService, "f").find(this.dragulaGroupName)) {
1497
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_dragulaService, "f").createGroup(this.dragulaGroupName, {
1498
+ moves: (el, container, handle) => {
1499
+ const target = el === null || el === void 0 ? void 0 : el.querySelector('.sky-repeater-item-grab-handle');
1500
+ return !!this.reorderable && !!target && target.contains(handle);
1501
+ },
1492
1502
  });
1493
1503
  }
1494
- updateRole() {
1495
- var _a, _b;
1496
- // Determine a role using a hierarchy based on https://www.w3.org/TR/wai-aria-practices-1.1/
1497
- // 1. If there are one or more interactions in the repeater item projected content, use grid.
1498
- // 2. If there are selectable repeater items and no other interactions, use listbox.
1499
- // 3. If there are no interactions, use list.
1500
- // Default to list role.
1501
- let autoRole = 'list';
1502
- const roleMap = {
1503
- list: { item: 'listitem', title: undefined, content: undefined },
1504
- listbox: { item: 'option', title: undefined, content: undefined },
1505
- grid: { item: 'row', title: 'rowheader', content: 'gridcell' },
1506
- };
1507
- // Based on https://html.spec.whatwg.org/multipage/dom.html#interactive-content
1508
- const interactionSelector = [
1509
- 'a[href]',
1510
- 'audio[controls]',
1511
- 'button',
1512
- 'details',
1513
- 'embed',
1514
- 'iframe',
1515
- 'img[usemap]',
1516
- 'input:not([type="hidden"])',
1517
- 'label',
1518
- 'select',
1519
- 'textarea',
1520
- 'video[controls]',
1521
- '[contenteditable]',
1522
- '.sky-repeater[role="grid"]',
1523
- ]
1524
- .map((selector) => `sky-repeater-item-title ${selector}:not([hidden]), sky-repeater-item-content ${selector}:not([hidden])`)
1525
- .concat([`skyux-dropdown`])
1526
- .join(', ');
1527
- const hasInteraction = this.reorderable ||
1528
- ((_a = this.items) === null || _a === void 0 ? void 0 : _a.some((item) => item.isCollapsible)) ||
1529
- !!this.elementRef.nativeElement.querySelector(interactionSelector);
1530
- if (hasInteraction) {
1531
- // If the repeater matches interaction selector https://www.w3.org/TR/wai-aria-practices-1.1/#grid
1532
- autoRole = 'grid';
1533
- }
1534
- else if ((_b = this.items) === null || _b === void 0 ? void 0 : _b.some((item) => item.selectable)) {
1535
- // If the only interaction is select https://www.w3.org/TR/wai-aria-practices-1.1/#Listbox
1536
- autoRole = 'listbox';
1504
+ let draggedItemIndex = -1;
1505
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_dragulaService, "f")
1506
+ .drag(this.dragulaGroupName)
1507
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterComponent_ngUnsubscribe, "f")))
1508
+ .subscribe((args) => {
1509
+ /* istanbul ignore else */
1510
+ if (args.name === this.dragulaGroupName) {
1511
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_renderer, "f").addClass(args.el, 'sky-repeater-item-dragging');
1512
+ draggedItemIndex = __classPrivateFieldGet(this, _SkyRepeaterComponent_adapterService, "f").getRepeaterItemIndex(args.el);
1537
1513
  }
1538
- if (this.role !== autoRole) {
1539
- this.repeaterService.itemRole.next(Object.assign({}, roleMap[autoRole]));
1540
- this.role = `${autoRole}`;
1541
- this.changeDetector.markForCheck();
1514
+ });
1515
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_dragulaService, "f")
1516
+ .dragend(this.dragulaGroupName)
1517
+ .pipe(takeUntil(__classPrivateFieldGet(this, _SkyRepeaterComponent_ngUnsubscribe, "f")))
1518
+ .subscribe((args) => {
1519
+ /* istanbul ignore else */
1520
+ if (args.name === this.dragulaGroupName) {
1521
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_renderer, "f").removeClass(args.el, 'sky-repeater-item-dragging');
1522
+ const newItemIndex = __classPrivateFieldGet(this, _SkyRepeaterComponent_adapterService, "f").getRepeaterItemIndex(args.el);
1523
+ /* sanity check */
1524
+ /* istanbul ignore else */
1525
+ if (draggedItemIndex >= 0) {
1526
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").reorderItem(draggedItemIndex, newItemIndex);
1527
+ draggedItemIndex = -1;
1528
+ }
1529
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_instances, "m", _SkyRepeaterComponent_emitTags).call(this);
1542
1530
  }
1531
+ });
1532
+ }, _SkyRepeaterComponent_destroyDragAndDrop = function _SkyRepeaterComponent_destroyDragAndDrop() {
1533
+ /* Sanity check that we have set up dragging abilities */
1534
+ /* istanbul ignore else */
1535
+ if (__classPrivateFieldGet(this, _SkyRepeaterComponent_dragulaService, "f").find(this.dragulaGroupName)) {
1536
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_dragulaService, "f").destroy(this.dragulaGroupName);
1537
+ }
1538
+ }, _SkyRepeaterComponent_emitTags = function _SkyRepeaterComponent_emitTags() {
1539
+ const tags = __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").items.map((item) => item.tag);
1540
+ this.orderChange.emit(tags);
1541
+ }, _SkyRepeaterComponent_everyItemHasTag = function _SkyRepeaterComponent_everyItemHasTag() {
1542
+ /* sanity check */
1543
+ /* istanbul ignore if */
1544
+ if (!this.items || this.items.length === 0) {
1545
+ return false;
1546
+ }
1547
+ return this.items.toArray().every((item) => {
1548
+ return item.tag !== undefined;
1549
+ });
1550
+ }, _SkyRepeaterComponent_updateRole = function _SkyRepeaterComponent_updateRole() {
1551
+ var _a, _b;
1552
+ // Determine a role using a hierarchy based on https://www.w3.org/TR/wai-aria-practices-1.1/
1553
+ // 1. If there are one or more interactions in the repeater item projected content, use grid.
1554
+ // 2. If there are selectable repeater items and no other interactions, use listbox.
1555
+ // 3. If there are no interactions, use list.
1556
+ // Default to list role.
1557
+ let autoRole = 'list';
1558
+ const roleMap = {
1559
+ list: { item: 'listitem', title: undefined, content: undefined },
1560
+ listbox: { item: 'option', title: undefined, content: undefined },
1561
+ grid: { item: 'row', title: 'rowheader', content: 'gridcell' },
1562
+ };
1563
+ // Based on https://html.spec.whatwg.org/multipage/dom.html#interactive-content
1564
+ const interactionSelector = [
1565
+ 'a[href]',
1566
+ 'audio[controls]',
1567
+ 'button',
1568
+ 'details',
1569
+ 'embed',
1570
+ 'iframe',
1571
+ 'img[usemap]',
1572
+ 'input:not([type="hidden"])',
1573
+ 'label',
1574
+ 'select',
1575
+ 'textarea',
1576
+ 'video[controls]',
1577
+ '[contenteditable]',
1578
+ '.sky-repeater[role="grid"]',
1579
+ ]
1580
+ .map((selector) => `sky-repeater-item-title ${selector}:not([hidden]), sky-repeater-item-content ${selector}:not([hidden])`)
1581
+ .concat([`skyux-dropdown`])
1582
+ .join(', ');
1583
+ const hasInteraction = this.reorderable ||
1584
+ ((_a = this.items) === null || _a === void 0 ? void 0 : _a.some((item) => item.isCollapsible)) ||
1585
+ ((_b = this.items) === null || _b === void 0 ? void 0 : _b.some((item) => !!item.selectable)) ||
1586
+ !!__classPrivateFieldGet(this, _SkyRepeaterComponent_elementRef, "f").nativeElement.querySelector(interactionSelector);
1587
+ if (hasInteraction) {
1588
+ // If the repeater matches interaction selector https://www.w3.org/TR/wai-aria-practices-1.1/#grid
1589
+ autoRole = 'grid';
1590
+ }
1591
+ if (this.role !== autoRole) {
1592
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_repeaterService, "f").itemRole.next(Object.assign({}, roleMap[autoRole]));
1593
+ this.role = `${autoRole}`;
1594
+ __classPrivateFieldGet(this, _SkyRepeaterComponent_changeDetector, "f").markForCheck();
1543
1595
  }
1544
- }
1596
+ };
1545
1597
  SkyRepeaterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: SkyRepeaterService }, { token: SkyRepeaterAdapterService }, { token: i3$1.DragulaService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
1546
1598
  SkyRepeaterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyRepeaterComponent, selector: "sky-repeater", inputs: { activeIndex: "activeIndex", ariaLabel: "ariaLabel", reorderable: "reorderable", expandMode: "expandMode" }, outputs: { activeIndexChange: "activeIndexChange", orderChange: "orderChange" }, providers: [SkyRepeaterService, SkyRepeaterAdapterService], queries: [{ propertyName: "items", predicate: SkyRepeaterItemComponent }], usesOnChanges: true, ngImport: i0, template: "<ng-container #repeaterHost>\n <div\n class=\"sky-repeater\"\n [attr.role]=\"role\"\n [attr.aria-label]=\"ariaLabel || ('skyux_repeater_label' | skyLibResources)\"\n [dragula]=\"dragulaGroupName\"\n (cdkObserveContent)=\"onCdkObserveContent()\"\n >\n <ng-content></ng-content>\n </div>\n</ng-container>\n", styles: [".sky-repeater{padding:0}\n"], dependencies: [{ kind: "directive", type: i3$1.DragulaDirective, selector: "[dragula]", inputs: ["dragula", "dragulaModel"], outputs: ["dragulaModelChange"] }, { kind: "directive", type: i4$1.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1547
1599
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyRepeaterComponent, decorators: [{
@@ -1639,49 +1691,58 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
1639
1691
  type: Injectable
1640
1692
  }] });
1641
1693
 
1694
+ var _SkySortItemComponent_subscription, _SkySortItemComponent_sortItemId, _SkySortItemComponent_sortService, _SkySortItemComponent_detector;
1642
1695
  const SORT_ITEM_ID_PREFIX = 'sky-sort-item-';
1643
1696
  let sortItemIdNumber = 0;
1644
1697
  class SkySortItemComponent {
1645
1698
  constructor(sortService, detector) {
1646
- this.sortService = sortService;
1647
- this.detector = detector;
1648
1699
  /**
1649
1700
  * Fires when a sort item is selected.
1650
1701
  */
1651
- this.itemSelect = new EventEmitter();
1702
+ this.itemSelect = new EventEmitter(); // TODO: Change to `EventEmitter<void>` in a breaking change.
1652
1703
  this.isSelected = new BehaviorSubject(false);
1704
+ _SkySortItemComponent_subscription.set(this, void 0);
1705
+ _SkySortItemComponent_sortItemId.set(this, void 0);
1706
+ _SkySortItemComponent_sortService.set(this, void 0);
1707
+ _SkySortItemComponent_detector.set(this, void 0);
1708
+ __classPrivateFieldSet(this, _SkySortItemComponent_sortService, sortService, "f");
1709
+ __classPrivateFieldSet(this, _SkySortItemComponent_detector, detector, "f");
1653
1710
  }
1654
1711
  ngOnInit() {
1655
1712
  sortItemIdNumber++;
1656
- this.sortItemId = SORT_ITEM_ID_PREFIX + sortItemIdNumber.toString();
1657
- this.subscription = this.sortService.selectedItem.subscribe((itemId) => {
1658
- this.isSelected.next(itemId === this.sortItemId);
1659
- this.detector.detectChanges();
1660
- });
1713
+ __classPrivateFieldSet(this, _SkySortItemComponent_sortItemId, SORT_ITEM_ID_PREFIX + sortItemIdNumber.toString(), "f");
1714
+ __classPrivateFieldSet(this, _SkySortItemComponent_subscription, __classPrivateFieldGet(this, _SkySortItemComponent_sortService, "f").selectedItem.subscribe((itemId) => {
1715
+ this.isSelected.next(itemId === __classPrivateFieldGet(this, _SkySortItemComponent_sortItemId, "f"));
1716
+ __classPrivateFieldGet(this, _SkySortItemComponent_detector, "f").detectChanges();
1717
+ }), "f");
1661
1718
  if (this.active) {
1662
- this.sortService.selectItem(this.sortItemId);
1719
+ __classPrivateFieldGet(this, _SkySortItemComponent_sortService, "f").selectItem(__classPrivateFieldGet(this, _SkySortItemComponent_sortItemId, "f"));
1663
1720
  }
1664
1721
  }
1665
1722
  ngOnChanges(changes) {
1666
- if (changes &&
1723
+ if (__classPrivateFieldGet(this, _SkySortItemComponent_sortItemId, "f") &&
1724
+ changes &&
1667
1725
  changes['active'] &&
1668
1726
  changes['active'].currentValue &&
1669
1727
  changes['active'].currentValue !== changes['active'].previousValue) {
1670
- this.sortService.selectItem(this.sortItemId);
1728
+ __classPrivateFieldGet(this, _SkySortItemComponent_sortService, "f").selectItem(__classPrivateFieldGet(this, _SkySortItemComponent_sortItemId, "f"));
1671
1729
  }
1672
1730
  }
1673
1731
  itemClicked() {
1674
- this.sortService.selectItem(this.sortItemId);
1675
- this.itemSelect.emit();
1732
+ if (__classPrivateFieldGet(this, _SkySortItemComponent_sortItemId, "f")) {
1733
+ __classPrivateFieldGet(this, _SkySortItemComponent_sortService, "f").selectItem(__classPrivateFieldGet(this, _SkySortItemComponent_sortItemId, "f"));
1734
+ this.itemSelect.emit();
1735
+ }
1676
1736
  }
1677
1737
  ngOnDestroy() {
1678
1738
  /* istanbul ignore else */
1679
1739
  /* sanity check */
1680
- if (this.subscription) {
1681
- this.subscription.unsubscribe();
1740
+ if (__classPrivateFieldGet(this, _SkySortItemComponent_subscription, "f")) {
1741
+ __classPrivateFieldGet(this, _SkySortItemComponent_subscription, "f").unsubscribe();
1682
1742
  }
1683
1743
  }
1684
1744
  }
1745
+ _SkySortItemComponent_subscription = new WeakMap(), _SkySortItemComponent_sortItemId = new WeakMap(), _SkySortItemComponent_sortService = new WeakMap(), _SkySortItemComponent_detector = new WeakMap();
1685
1746
  SkySortItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkySortItemComponent, deps: [{ token: SkySortService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1686
1747
  SkySortItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkySortItemComponent, selector: "sky-sort-item", inputs: { active: "active" }, outputs: { itemSelect: "itemSelect" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"sky-sort-item\"\n role=\"menuitemradio\"\n [attr.aria-checked]=\"isSelected | async\"\n [ngClass]=\"{ 'sky-sort-item-selected': (isSelected | async) }\"\n>\n <button\n type=\"button\"\n [ngClass]=\"{ 'sky-emphasized': (isSelected | async) }\"\n (click)=\"itemClicked()\"\n >\n <ng-content></ng-content>\n </button>\n</div>\n", styles: [".sky-sort-item{background-color:transparent;border:none;display:block;margin:4px;min-width:160px;text-align:left;transition:background-color .15s}.sky-sort-item.sky-dropdown-item-active,.sky-sort-item:hover{background-color:#eeeeef}.sky-sort-item.sky-dropdown-item-disabled{cursor:default}.sky-sort-item.sky-dropdown-item-disabled:hover{background-color:transparent}.sky-sort-item ::ng-deep>button{background-color:transparent;border:none;color:#212327;cursor:pointer;display:block;padding:3px 20px;text-align:left;width:100%}.sky-sort-item ::ng-deep>button[disabled]{color:#686c73}.sky-sort-item ::ng-deep>button[disabled]:hover{cursor:default}.sky-sort-item-selected{background-color:#f1eef6;padding:4px;margin:0}:host-context(.sky-theme-modern) .sky-sort-item{margin:0 0 10px;border:none;border-radius:0;color:var(--sky-text-color-deemphasized);font-weight:400;transition:box-shadow .15s;padding:10px 20px}:host-context(.sky-theme-modern) .sky-sort-item:hover:not(.sky-btn-tab-disabled):not(.sky-btn-tab-selected):not(.sky-dropdown-button-type-tab):not(:focus){background-color:transparent;border-bottom:solid 1px #00b4f1;color:var(--sky-text-color-default);padding-bottom:9px}:host-context(.sky-theme-modern) .sky-sort-item:focus{background-color:transparent;color:var(--sky-text-color-default);outline:none}:host-context(.sky-theme-modern) .sky-sort-item:focus:not(:active){color:var(--sky-text-color-default);outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}:host-context(.sky-theme-modern) .sky-sort-item:active{border-bottom:solid 3px #00b4f1;color:var(--sky-text-color-default);padding-bottom:7px}:host-context(.sky-theme-modern) .sky-sort-item.sky-btn-tab-disabled{background-color:transparent;font-family:BLKB Sans,Helvetica Neue,Arial,sans-serif;color:#686c73;font-weight:400;font-size:15px;font-style:italic}:host-context(.sky-theme-modern) .sky-sort-item:hover:not(.sky-btn-tab-disabled){background-color:transparent;border-bottom:none;outline:solid 1px #1870B8;outline-offset:-1px}:host-context(.sky-theme-modern) .sky-sort-item:focus:not(:active){background-color:transparent;box-shadow:0 1px 8px #0000004d;outline:solid 2px #1870B8;outline-offset:-2px}:host-context(.sky-theme-modern) .sky-sort-item button{padding:0;color:#686c73}:host-context(.sky-theme-modern) .sky-sort-item-selected{color:#212327;border-bottom:none;border-left:solid 3px #1870B8;padding-bottom:10px;padding-left:17px;background-color:inherit}:host-context(.sky-theme-modern) .sky-sort-item-selected button{font-weight:400;color:#212327}.sky-theme-modern .sky-sort-item{margin:0 0 10px;border:none;border-radius:0;color:var(--sky-text-color-deemphasized);font-weight:400;transition:box-shadow .15s;padding:10px 20px}.sky-theme-modern .sky-sort-item:hover:not(.sky-btn-tab-disabled):not(.sky-btn-tab-selected):not(.sky-dropdown-button-type-tab):not(:focus){background-color:transparent;border-bottom:solid 1px #00b4f1;color:var(--sky-text-color-default);padding-bottom:9px}.sky-theme-modern .sky-sort-item:focus{background-color:transparent;color:var(--sky-text-color-default);outline:none}.sky-theme-modern .sky-sort-item:focus:not(:active){color:var(--sky-text-color-default);outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}.sky-theme-modern .sky-sort-item:active{border-bottom:solid 3px #00b4f1;color:var(--sky-text-color-default);padding-bottom:7px}.sky-theme-modern .sky-sort-item.sky-btn-tab-disabled{background-color:transparent;font-family:BLKB Sans,Helvetica Neue,Arial,sans-serif;color:#686c73;font-weight:400;font-size:15px;font-style:italic}.sky-theme-modern .sky-sort-item:hover:not(.sky-btn-tab-disabled){background-color:transparent;border-bottom:none;outline:solid 1px #1870B8;outline-offset:-1px}.sky-theme-modern .sky-sort-item:focus:not(:active){background-color:transparent;box-shadow:0 1px 8px #0000004d;outline:solid 2px #1870B8;outline-offset:-2px}.sky-theme-modern .sky-sort-item button{padding:0;color:#686c73}.sky-theme-modern .sky-sort-item-selected{color:#212327;border-bottom:none;border-left:solid 3px #1870B8;padding-bottom:10px;padding-left:17px;background-color:inherit}.sky-theme-modern .sky-sort-item-selected button{font-weight:400;color:#212327}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-sort-item button{color:#c0c2c5}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-sort-item-selected button{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark .sky-sort-item button{color:#c0c2c5}.sky-theme-modern.sky-theme-mode-dark .sky-sort-item-selected button{color:#fbfcfe}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1687
1748
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkySortItemComponent, decorators: [{