@fundamental-ngx/core 0.59.1-rc.8 → 0.59.1

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 (131) hide show
  1. package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs +33 -50
  2. package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs.map +1 -1
  3. package/fesm2022/fundamental-ngx-core-avatar-group.mjs +9 -11
  4. package/fesm2022/fundamental-ngx-core-avatar-group.mjs.map +1 -1
  5. package/fesm2022/fundamental-ngx-core-avatar.mjs +206 -293
  6. package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
  7. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +25 -12
  8. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  9. package/fesm2022/fundamental-ngx-core-calendar.mjs +11 -14
  10. package/fesm2022/fundamental-ngx-core-calendar.mjs.map +1 -1
  11. package/fesm2022/fundamental-ngx-core-card.mjs +13 -26
  12. package/fesm2022/fundamental-ngx-core-card.mjs.map +1 -1
  13. package/fesm2022/fundamental-ngx-core-carousel.mjs +11 -11
  14. package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
  15. package/fesm2022/fundamental-ngx-core-combobox.mjs +33 -7
  16. package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
  17. package/fesm2022/fundamental-ngx-core-dialog.mjs +13 -17
  18. package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
  19. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs +32 -24
  20. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  21. package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs +28 -30
  22. package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs.map +1 -1
  23. package/fesm2022/fundamental-ngx-core-grid-list.mjs +12 -10
  24. package/fesm2022/fundamental-ngx-core-grid-list.mjs.map +1 -1
  25. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs +202 -100
  26. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  27. package/fesm2022/fundamental-ngx-core-layout-panel.mjs +72 -231
  28. package/fesm2022/fundamental-ngx-core-layout-panel.mjs.map +1 -1
  29. package/fesm2022/fundamental-ngx-core-list.mjs +12 -12
  30. package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
  31. package/fesm2022/fundamental-ngx-core-menu.mjs +28 -28
  32. package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
  33. package/fesm2022/fundamental-ngx-core-message-strip.mjs +85 -84
  34. package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
  35. package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs +21 -24
  36. package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
  37. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +19 -12
  38. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  39. package/fesm2022/fundamental-ngx-core-multi-input.mjs +46 -39
  40. package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
  41. package/fesm2022/fundamental-ngx-core-nested-list.mjs +66 -103
  42. package/fesm2022/fundamental-ngx-core-nested-list.mjs.map +1 -1
  43. package/fesm2022/fundamental-ngx-core-notification.mjs +63 -27
  44. package/fesm2022/fundamental-ngx-core-notification.mjs.map +1 -1
  45. package/fesm2022/fundamental-ngx-core-object-marker.mjs +69 -59
  46. package/fesm2022/fundamental-ngx-core-object-marker.mjs.map +1 -1
  47. package/fesm2022/fundamental-ngx-core-object-status.mjs +92 -118
  48. package/fesm2022/fundamental-ngx-core-object-status.mjs.map +1 -1
  49. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs +27 -29
  50. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  51. package/fesm2022/fundamental-ngx-core-pagination.mjs +17 -18
  52. package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
  53. package/fesm2022/fundamental-ngx-core-panel.mjs +7 -9
  54. package/fesm2022/fundamental-ngx-core-panel.mjs.map +1 -1
  55. package/fesm2022/fundamental-ngx-core-popover.mjs +10 -15
  56. package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
  57. package/fesm2022/fundamental-ngx-core-product-switch.mjs +12 -15
  58. package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
  59. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs +18 -20
  60. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs.map +1 -1
  61. package/fesm2022/fundamental-ngx-core-segmented-button.mjs +8 -11
  62. package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
  63. package/fesm2022/fundamental-ngx-core-select.mjs +6 -8
  64. package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
  65. package/fesm2022/fundamental-ngx-core-settings.mjs +9 -12
  66. package/fesm2022/fundamental-ngx-core-settings.mjs.map +1 -1
  67. package/fesm2022/fundamental-ngx-core-shellbar.mjs +48 -34
  68. package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
  69. package/fesm2022/fundamental-ngx-core-slider.mjs +30 -31
  70. package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
  71. package/fesm2022/fundamental-ngx-core-status-indicator.mjs +137 -131
  72. package/fesm2022/fundamental-ngx-core-status-indicator.mjs.map +1 -1
  73. package/fesm2022/fundamental-ngx-core-tabs.mjs +21 -17
  74. package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
  75. package/fesm2022/fundamental-ngx-core-tile.mjs +375 -631
  76. package/fesm2022/fundamental-ngx-core-tile.mjs.map +1 -1
  77. package/fesm2022/fundamental-ngx-core-time.mjs +7 -9
  78. package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
  79. package/fesm2022/fundamental-ngx-core-token.mjs +11 -13
  80. package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
  81. package/fesm2022/fundamental-ngx-core-toolbar.mjs +2 -2
  82. package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
  83. package/fesm2022/fundamental-ngx-core-tree.mjs +2 -2
  84. package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
  85. package/fesm2022/fundamental-ngx-core-user-menu.mjs +63 -21
  86. package/fesm2022/fundamental-ngx-core-user-menu.mjs.map +1 -1
  87. package/fesm2022/fundamental-ngx-core-wizard.mjs +1 -1
  88. package/fesm2022/fundamental-ngx-core-wizard.mjs.map +1 -1
  89. package/package.json +4 -4
  90. package/types/fundamental-ngx-core-avatar-group-legacy.d.ts +15 -17
  91. package/types/fundamental-ngx-core-avatar-group.d.ts +1 -1
  92. package/types/fundamental-ngx-core-avatar.d.ts +66 -86
  93. package/types/fundamental-ngx-core-breadcrumb.d.ts +13 -5
  94. package/types/fundamental-ngx-core-calendar.d.ts +3 -4
  95. package/types/fundamental-ngx-core-card.d.ts +4 -11
  96. package/types/fundamental-ngx-core-carousel.d.ts +3 -3
  97. package/types/fundamental-ngx-core-combobox.d.ts +8 -1
  98. package/types/fundamental-ngx-core-dialog.d.ts +2 -4
  99. package/types/fundamental-ngx-core-dynamic-page.d.ts +0 -6
  100. package/types/fundamental-ngx-core-fixed-card-layout.d.ts +7 -7
  101. package/types/fundamental-ngx-core-grid-list.d.ts +6 -4
  102. package/types/fundamental-ngx-core-illustrated-message.d.ts +165 -31
  103. package/types/fundamental-ngx-core-layout-panel.d.ts +19 -131
  104. package/types/fundamental-ngx-core-list.d.ts +8 -6
  105. package/types/fundamental-ngx-core-menu.d.ts +16 -13
  106. package/types/fundamental-ngx-core-message-strip.d.ts +5 -2
  107. package/types/fundamental-ngx-core-micro-process-flow.d.ts +8 -6
  108. package/types/fundamental-ngx-core-multi-combobox.d.ts +8 -5
  109. package/types/fundamental-ngx-core-multi-input.d.ts +24 -16
  110. package/types/fundamental-ngx-core-nested-list.d.ts +19 -33
  111. package/types/fundamental-ngx-core-notification.d.ts +42 -19
  112. package/types/fundamental-ngx-core-object-marker.d.ts +47 -27
  113. package/types/fundamental-ngx-core-object-status.d.ts +49 -48
  114. package/types/fundamental-ngx-core-overflow-layout.d.ts +10 -10
  115. package/types/fundamental-ngx-core-pagination.d.ts +7 -8
  116. package/types/fundamental-ngx-core-panel.d.ts +2 -4
  117. package/types/fundamental-ngx-core-popover.d.ts +7 -5
  118. package/types/fundamental-ngx-core-product-switch.d.ts +5 -4
  119. package/types/fundamental-ngx-core-resizable-card-layout.d.ts +10 -8
  120. package/types/fundamental-ngx-core-segmented-button.d.ts +5 -4
  121. package/types/fundamental-ngx-core-select.d.ts +4 -5
  122. package/types/fundamental-ngx-core-settings.d.ts +7 -10
  123. package/types/fundamental-ngx-core-shellbar.d.ts +23 -14
  124. package/types/fundamental-ngx-core-slider.d.ts +18 -13
  125. package/types/fundamental-ngx-core-status-indicator.d.ts +42 -58
  126. package/types/fundamental-ngx-core-tabs.d.ts +9 -7
  127. package/types/fundamental-ngx-core-tile.d.ts +114 -243
  128. package/types/fundamental-ngx-core-time.d.ts +5 -4
  129. package/types/fundamental-ngx-core-token.d.ts +5 -4
  130. package/types/fundamental-ngx-core-tree.d.ts +1 -1
  131. package/types/fundamental-ngx-core-user-menu.d.ts +25 -21
@@ -1,12 +1,11 @@
1
1
  import { FocusKeyManager } from '@angular/cdk/a11y';
2
2
  import { TAB, DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW } from '@angular/cdk/keycodes';
3
- import * as i1 from '@angular/cdk/overlay';
3
+ import { ViewportRuler } from '@angular/cdk/overlay';
4
4
  import * as i0 from '@angular/core';
5
- import { InjectionToken, HostListener, Optional, Inject, Directive, forwardRef, ViewChild, ContentChildren, Input, ChangeDetectionStrategy, ViewEncapsulation, Component, HostBinding, NgModule } from '@angular/core';
5
+ import { InjectionToken, HostListener, Optional, Inject, Directive, inject, computed, effect, forwardRef, ViewChild, ContentChildren, Input, ChangeDetectionStrategy, ViewEncapsulation, Component, HostBinding, NgModule } from '@angular/core';
6
6
  import { Subscription, of } from 'rxjs';
7
7
  import { delay } from 'rxjs/operators';
8
- import * as i2 from '@fundamental-ngx/cdk/utils';
9
- import { KeyUtil, getRandomColorAccent, applyCssClass } from '@fundamental-ngx/cdk/utils';
8
+ import { RtlService, KeyUtil, getRandomColorAccent, applyCssClass } from '@fundamental-ngx/cdk/utils';
10
9
  import { __decorate, __metadata } from 'tslib';
11
10
 
12
11
  const AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE = new InjectionToken('AvatarGroupLegacyFocusableAvatarDirective');
@@ -80,9 +79,7 @@ class AvatarGroupLegacyComponent {
80
79
  return this._avatarGroupItemWidth + parseInt(marginLeft, 10) + parseInt(marginRight, 10);
81
80
  }
82
81
  /** @hidden */
83
- constructor(_viewportRuler, _rtlService) {
84
- this._viewportRuler = _viewportRuler;
85
- this._rtlService = _rtlService;
82
+ constructor() {
86
83
  /** Id of the Avatar Group. */
87
84
  this.id = `fd-avatar-group-legacy-${avatarGroupCount++}`;
88
85
  /** The size of the Avatar Group. Options include: *xs*, *s*, *m*, *l* and *xl* (default: *s*). */
@@ -95,8 +92,17 @@ class AvatarGroupLegacyComponent {
95
92
  this.overflowItemsCount = 0;
96
93
  /** @hidden */
97
94
  this._subscription = new Subscription();
98
- /** @hidden handles rtl service */
99
- this._dir = 'ltr';
95
+ /** @hidden */
96
+ this._viewportRuler = inject(ViewportRuler);
97
+ /** @hidden */
98
+ this._rtlService = inject(RtlService, { optional: true });
99
+ /** @hidden */
100
+ this._dir = computed(() => (this._rtlService?.rtl() ? 'rtl' : 'ltr'), ...(ngDevMode ? [{ debugName: "_dir" }] : []));
101
+ // React to RTL changes and update keyboard manager orientation
102
+ effect(() => {
103
+ const dir = this._dir();
104
+ this._keyboardEventsManager?.withHorizontalOrientation(dir);
105
+ });
100
106
  }
101
107
  /** @hidden */
102
108
  keyUpHandler(event) {
@@ -128,7 +134,6 @@ class AvatarGroupLegacyComponent {
128
134
  .subscribe(() => this._collapseItems()));
129
135
  this._listenForItemChanges();
130
136
  this._setKeyboardEventsManager();
131
- this._subscribeToRtl();
132
137
  }
133
138
  /** @hidden */
134
139
  ngOnDestroy() {
@@ -197,20 +202,9 @@ class AvatarGroupLegacyComponent {
197
202
  this._keyboardEventsManager?.destroy();
198
203
  this._keyboardEventsManager = new FocusKeyManager(this.mainItems)
199
204
  .withWrap()
200
- .withHorizontalOrientation(this._dir);
205
+ .withHorizontalOrientation(this._dir());
201
206
  }
202
- /** @hidden Rtl change subscription */
203
- _subscribeToRtl() {
204
- if (!this._rtlService) {
205
- return;
206
- }
207
- const rtlSub = this._rtlService.rtl.subscribe((isRtl) => {
208
- this._dir = isRtl ? 'rtl' : 'ltr';
209
- this._keyboardEventsManager = this._keyboardEventsManager.withHorizontalOrientation(this._dir);
210
- });
211
- this._subscription.add(rtlSub);
212
- }
213
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarGroupLegacyComponent, deps: [{ token: i1.ViewportRuler }, { token: i2.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
207
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarGroupLegacyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
214
208
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: AvatarGroupLegacyComponent, isStandalone: true, selector: "fd-avatar-group-legacy", inputs: { id: "id", class: "class", size: "size", type: "type", ariaLabel: "ariaLabel" }, host: { listeners: { "keyup": "keyUpHandler($event)" } }, providers: [
215
209
  {
216
210
  provide: AVATAR_GROUP_LEGACY_COMPONENT,
@@ -225,10 +219,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
225
219
  provide: AVATAR_GROUP_LEGACY_COMPONENT,
226
220
  useExisting: forwardRef(() => AvatarGroupLegacyComponent)
227
221
  }
228
- ], standalone: true, template: "<div #avatarGroupContainer [class]=\"rootClassNames\" [id]=\"id\" [attr.aria-label]=\"ariaLabel\">\n <ng-content></ng-content>\n</div>\n", styles: [".fd-avatar-group-legacy{-webkit-box-sizing:border-box;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;border:0;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-avatar-group-legacy:after,.fd-avatar-group-legacy:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-avatar-group-legacy--group-type[tabindex=\"0\"],.fd-avatar-group-legacy__popover-control[tabindex=\"0\"]{cursor:pointer}.fd-avatar-group-legacy--group-type[tabindex=\"0\"].is-focus,.fd-avatar-group-legacy--group-type[tabindex=\"0\"]:focus,.fd-avatar-group-legacy__popover-control[tabindex=\"0\"].is-focus,.fd-avatar-group-legacy__popover-control[tabindex=\"0\"]:focus{outline:none}.fd-avatar-group-legacy--group-type[tabindex=\"0\"].is-focus:after,.fd-avatar-group-legacy--group-type[tabindex=\"0\"]:focus:after,.fd-avatar-group-legacy__popover-control[tabindex=\"0\"].is-focus:after,.fd-avatar-group-legacy__popover-control[tabindex=\"0\"]:focus:after{border-color:var(--sapContent_FocusColor);border-radius:var(--fdAvatarGroup_Focus_Outline_Radius);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);bottom:var(--fdAvatarGroup_Focus_Outline_Offset);content:\"\";left:var(--fdAvatarGroup_Focus_Outline_Offset);pointer-events:none;position:absolute;right:var(--fdAvatarGroup_Focus_Outline_Offset);top:var(--fdAvatarGroup_Focus_Outline_Offset)}.fd-avatar-group-legacy__popover-control{display:-webkit-box;display:-ms-flexbox;display:flex;height:auto}.fd-avatar-group-legacy__focusable-avatar.is-focus,.fd-avatar-group-legacy__focusable-avatar:focus,.fd-avatar-group-legacy__item[tabindex=\"0\"].is-focus,.fd-avatar-group-legacy__item[tabindex=\"0\"]:focus{outline:none;z-index:5}.fd-avatar-group-legacy__focusable-avatar.is-focus .fd-avatar:after,.fd-avatar-group-legacy__focusable-avatar:focus .fd-avatar:after,.fd-avatar-group-legacy__item[tabindex=\"0\"].is-focus .fd-avatar:after,.fd-avatar-group-legacy__item[tabindex=\"0\"]:focus .fd-avatar:after{border-color:var(--sapContent_FocusColor);border-radius:var(--fdAvatar_Focus_Outline_Radius_Circle);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);bottom:var(--fdAvatar_Focus_Outline_Offset);content:\"\";left:var(--fdAvatar_Focus_Outline_Offset);pointer-events:none;position:absolute;right:var(--fdAvatar_Focus_Outline_Offset);top:var(--fdAvatar_Focus_Outline_Offset)}.fd-avatar-group-legacy--group-type .fd-avatar-group-legacy__more-button{pointer-events:none}.fd-avatar-group-legacy__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-avatar-group-legacy__item:after,.fd-avatar-group-legacy__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-avatar-group-legacy__more-button{outline:none!important}.fd-avatar-group-legacy__more-button.is-focus,.fd-avatar-group-legacy__more-button:focus{outline:none}.fd-avatar-group-legacy__more-button.is-focus:after,.fd-avatar-group-legacy__more-button:focus:after{border-color:var(--sapContent_FocusColor);border-radius:var(--fdAvatar_Focus_Outline_Radius_Circle);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);bottom:var(--fdAvatar_Focus_Outline_Offset);content:\"\";left:var(--fdAvatar_Focus_Outline_Offset);pointer-events:none;position:absolute;right:var(--fdAvatar_Focus_Outline_Offset);top:var(--fdAvatar_Focus_Outline_Offset)}.fd-avatar-group-legacy__more-button .fd-avatar-group-legacy__button-text{font-size:inherit}.fd-avatar-group-legacy__overflow-body{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:1rem;white-space:normal}.fd-avatar-group-legacy__overflow-body:after,.fd-avatar-group-legacy__overflow-body:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-avatar-group-legacy__overflow-body--no-padding{padding:0}.fd-avatar-group-legacy__overflow-body--no-horizontal-scroll{overflow-x:hidden}.fd-avatar-group-legacy__overflow-body--no-vertical-scroll{overflow-y:hidden}.fd-avatar-group-legacy__overflow-body .fd-avatar-group-legacy__item{margin:.25rem}.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__more-button{height:2rem;max-height:2rem;max-width:2rem;min-height:2rem;min-width:2rem;width:2rem}.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:1rem}.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--s .fd-avatar-group-legacy__more-button{height:3rem;max-height:3rem;max-width:3rem;min-height:3rem;min-width:3rem;width:3rem}.fd-avatar-group-legacy--s .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:1.125rem}.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--m .fd-avatar-group-legacy__more-button{height:4rem;max-height:4rem;max-width:4rem;min-height:4rem;min-width:4rem;width:4rem}.fd-avatar-group-legacy--m .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:1.5rem}.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--l .fd-avatar-group-legacy__more-button{height:5rem;max-height:5rem;max-width:5rem;min-height:5rem;min-width:5rem;width:5rem}.fd-avatar-group-legacy--l .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:2.25rem}.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__more-button{height:7rem;max-height:7rem;max-width:7rem;min-height:7rem;min-width:7rem;width:7rem}.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:3rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item{margin-left:0;margin-right:.0625rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item{margin-left:.0625rem;margin-right:0}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item{margin-left:0;margin-right:.125rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item{margin-left:.125rem;margin-right:0}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item{margin-left:0;margin-right:.125rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item{margin-left:.125rem;margin-right:0}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item{margin-left:0;margin-right:.125rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item{margin-left:.125rem;margin-right:0}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item{margin-left:0;margin-right:.25rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item{margin-left:.25rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item{margin-left:0;margin-right:-.75rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item{margin-left:-.75rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item{margin-left:0;margin-right:-1.25rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item{margin-left:-1.25rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item{margin-left:0;margin-right:-1.625rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item{margin-left:-1.625rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item{margin-left:0;margin-right:-2rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item{margin-left:-2rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item{margin-left:0;margin-right:-2.75rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item{margin-left:-2.75rem;margin-right:0}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-1{background-color:var(--fdAvatar_Accent_Color_1);border:var(--fdAvatar_Accent_Color_1_Border);color:var(--fdAvatar_Accent_Color_1_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-2{background-color:var(--fdAvatar_Accent_Color_2);border:var(--fdAvatar_Accent_Color_2_Border);color:var(--fdAvatar_Accent_Color_2_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-3{background-color:var(--fdAvatar_Accent_Color_3);border:var(--fdAvatar_Accent_Color_3_Border);color:var(--fdAvatar_Accent_Color_3_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-4{background-color:var(--fdAvatar_Accent_Color_4);border:var(--fdAvatar_Accent_Color_4_Border);color:var(--fdAvatar_Accent_Color_4_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-5{background-color:var(--fdAvatar_Accent_Color_5);border:var(--fdAvatar_Accent_Color_5_Border);color:var(--fdAvatar_Accent_Color_5_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-6{background-color:var(--fdAvatar_Accent_Color_6);border:var(--fdAvatar_Accent_Color_6_Border);color:var(--fdAvatar_Accent_Color_6_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-7{background-color:var(--fdAvatar_Accent_Color_7);border:var(--fdAvatar_Accent_Color_7_Border);color:var(--fdAvatar_Accent_Color_7_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-8{background-color:var(--fdAvatar_Accent_Color_8);border:var(--fdAvatar_Accent_Color_8_Border);color:var(--fdAvatar_Accent_Color_8_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-9{background-color:var(--fdAvatar_Accent_Color_9);border:var(--fdAvatar_Accent_Color_9_Border);color:var(--fdAvatar_Accent_Color_9_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-10{background-color:var(--fdAvatar_Accent_Color_10);border:var(--fdAvatar_Accent_Color_10_Border);color:var(--fdAvatar_Accent_Color_10_Text)}\n/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */\n/*!\n.fd-avatar-group-legacy+((--individual|--group), (--xs|--s|--m|--l|--xl)\n*/\n"] }]
229
- }], ctorParameters: () => [{ type: i1.ViewportRuler }, { type: i2.RtlService, decorators: [{
230
- type: Optional
231
- }] }], propDecorators: { id: [{
222
+ ], template: "<div #avatarGroupContainer [class]=\"rootClassNames\" [id]=\"id\" [attr.aria-label]=\"ariaLabel\">\n <ng-content></ng-content>\n</div>\n", styles: [".fd-avatar-group-legacy{-webkit-box-sizing:border-box;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;border:0;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-avatar-group-legacy:after,.fd-avatar-group-legacy:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-avatar-group-legacy--group-type[tabindex=\"0\"],.fd-avatar-group-legacy__popover-control[tabindex=\"0\"]{cursor:pointer}.fd-avatar-group-legacy--group-type[tabindex=\"0\"].is-focus,.fd-avatar-group-legacy--group-type[tabindex=\"0\"]:focus,.fd-avatar-group-legacy__popover-control[tabindex=\"0\"].is-focus,.fd-avatar-group-legacy__popover-control[tabindex=\"0\"]:focus{outline:none}.fd-avatar-group-legacy--group-type[tabindex=\"0\"].is-focus:after,.fd-avatar-group-legacy--group-type[tabindex=\"0\"]:focus:after,.fd-avatar-group-legacy__popover-control[tabindex=\"0\"].is-focus:after,.fd-avatar-group-legacy__popover-control[tabindex=\"0\"]:focus:after{border-color:var(--sapContent_FocusColor);border-radius:var(--fdAvatarGroup_Focus_Outline_Radius);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);bottom:var(--fdAvatarGroup_Focus_Outline_Offset);content:\"\";left:var(--fdAvatarGroup_Focus_Outline_Offset);pointer-events:none;position:absolute;right:var(--fdAvatarGroup_Focus_Outline_Offset);top:var(--fdAvatarGroup_Focus_Outline_Offset)}.fd-avatar-group-legacy__popover-control{display:-webkit-box;display:-ms-flexbox;display:flex;height:auto}.fd-avatar-group-legacy__focusable-avatar.is-focus,.fd-avatar-group-legacy__focusable-avatar:focus,.fd-avatar-group-legacy__item[tabindex=\"0\"].is-focus,.fd-avatar-group-legacy__item[tabindex=\"0\"]:focus{outline:none;z-index:5}.fd-avatar-group-legacy__focusable-avatar.is-focus .fd-avatar:after,.fd-avatar-group-legacy__focusable-avatar:focus .fd-avatar:after,.fd-avatar-group-legacy__item[tabindex=\"0\"].is-focus .fd-avatar:after,.fd-avatar-group-legacy__item[tabindex=\"0\"]:focus .fd-avatar:after{border-color:var(--sapContent_FocusColor);border-radius:var(--fdAvatar_Focus_Outline_Radius_Circle);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);bottom:var(--fdAvatar_Focus_Outline_Offset);content:\"\";left:var(--fdAvatar_Focus_Outline_Offset);pointer-events:none;position:absolute;right:var(--fdAvatar_Focus_Outline_Offset);top:var(--fdAvatar_Focus_Outline_Offset)}.fd-avatar-group-legacy--group-type .fd-avatar-group-legacy__more-button{pointer-events:none}.fd-avatar-group-legacy__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-avatar-group-legacy__item:after,.fd-avatar-group-legacy__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-avatar-group-legacy__more-button{outline:none!important}.fd-avatar-group-legacy__more-button.is-focus,.fd-avatar-group-legacy__more-button:focus{outline:none}.fd-avatar-group-legacy__more-button.is-focus:after,.fd-avatar-group-legacy__more-button:focus:after{border-color:var(--sapContent_FocusColor);border-radius:var(--fdAvatar_Focus_Outline_Radius_Circle);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);bottom:var(--fdAvatar_Focus_Outline_Offset);content:\"\";left:var(--fdAvatar_Focus_Outline_Offset);pointer-events:none;position:absolute;right:var(--fdAvatar_Focus_Outline_Offset);top:var(--fdAvatar_Focus_Outline_Offset)}.fd-avatar-group-legacy__more-button .fd-avatar-group-legacy__button-text{font-size:inherit}.fd-avatar-group-legacy__overflow-body{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:1rem;white-space:normal}.fd-avatar-group-legacy__overflow-body:after,.fd-avatar-group-legacy__overflow-body:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-avatar-group-legacy__overflow-body--no-padding{padding:0}.fd-avatar-group-legacy__overflow-body--no-horizontal-scroll{overflow-x:hidden}.fd-avatar-group-legacy__overflow-body--no-vertical-scroll{overflow-y:hidden}.fd-avatar-group-legacy__overflow-body .fd-avatar-group-legacy__item{margin:.25rem}.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__more-button{height:2rem;max-height:2rem;max-width:2rem;min-height:2rem;min-width:2rem;width:2rem}.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:1rem}.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--s .fd-avatar-group-legacy__more-button{height:3rem;max-height:3rem;max-width:3rem;min-height:3rem;min-width:3rem;width:3rem}.fd-avatar-group-legacy--s .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:1.125rem}.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--m .fd-avatar-group-legacy__more-button{height:4rem;max-height:4rem;max-width:4rem;min-height:4rem;min-width:4rem;width:4rem}.fd-avatar-group-legacy--m .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:1.5rem}.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--l .fd-avatar-group-legacy__more-button{height:5rem;max-height:5rem;max-width:5rem;min-height:5rem;min-width:5rem;width:5rem}.fd-avatar-group-legacy--l .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:2.25rem}.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item,.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__more-button{height:7rem;max-height:7rem;max-width:7rem;min-height:7rem;min-width:7rem;width:7rem}.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__more-button{border-radius:25rem;border-width:var(--fdAvatarGroup_MoreButton_Border);font-size:3rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item{margin-left:0;margin-right:.0625rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item{margin-left:.0625rem;margin-right:0}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item{margin-left:0;margin-right:.125rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item{margin-left:.125rem;margin-right:0}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item{margin-left:0;margin-right:.125rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item{margin-left:.125rem;margin-right:0}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item{margin-left:0;margin-right:.125rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item{margin-left:.125rem;margin-right:0}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item{margin-left:0;margin-right:.25rem}.fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--individual-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item{margin-left:.25rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item{margin-left:0;margin-right:-.75rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xs .fd-avatar-group-legacy__item{margin-left:-.75rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item{margin-left:0;margin-right:-1.25rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--s .fd-avatar-group-legacy__item{margin-left:-1.25rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item{margin-left:0;margin-right:-1.625rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--m .fd-avatar-group-legacy__item{margin-left:-1.625rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item{margin-left:0;margin-right:-2rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--l .fd-avatar-group-legacy__item{margin-left:-2rem;margin-right:0}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item{margin-left:0;margin-right:-2.75rem}.fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item[dir=rtl],[dir=rtl] .fd-avatar-group-legacy--group-type.fd-avatar-group-legacy--xl .fd-avatar-group-legacy__item{margin-left:-2.75rem;margin-right:0}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-1{background-color:var(--fdAvatar_Accent_Color_1);border:var(--fdAvatar_Accent_Color_1_Border);color:var(--fdAvatar_Accent_Color_1_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-2{background-color:var(--fdAvatar_Accent_Color_2);border:var(--fdAvatar_Accent_Color_2_Border);color:var(--fdAvatar_Accent_Color_2_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-3{background-color:var(--fdAvatar_Accent_Color_3);border:var(--fdAvatar_Accent_Color_3_Border);color:var(--fdAvatar_Accent_Color_3_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-4{background-color:var(--fdAvatar_Accent_Color_4);border:var(--fdAvatar_Accent_Color_4_Border);color:var(--fdAvatar_Accent_Color_4_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-5{background-color:var(--fdAvatar_Accent_Color_5);border:var(--fdAvatar_Accent_Color_5_Border);color:var(--fdAvatar_Accent_Color_5_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-6{background-color:var(--fdAvatar_Accent_Color_6);border:var(--fdAvatar_Accent_Color_6_Border);color:var(--fdAvatar_Accent_Color_6_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-7{background-color:var(--fdAvatar_Accent_Color_7);border:var(--fdAvatar_Accent_Color_7_Border);color:var(--fdAvatar_Accent_Color_7_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-8{background-color:var(--fdAvatar_Accent_Color_8);border:var(--fdAvatar_Accent_Color_8_Border);color:var(--fdAvatar_Accent_Color_8_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-9{background-color:var(--fdAvatar_Accent_Color_9);border:var(--fdAvatar_Accent_Color_9_Border);color:var(--fdAvatar_Accent_Color_9_Text)}.fd-avatar-group-legacy .fd-avatar-group-legacy__more-button--accent-color-10{background-color:var(--fdAvatar_Accent_Color_10);border:var(--fdAvatar_Accent_Color_10_Border);color:var(--fdAvatar_Accent_Color_10_Text)}\n/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */\n/*!\n.fd-avatar-group-legacy+((--individual|--group), (--xs|--s|--m|--l|--xl)\n*/\n"] }]
223
+ }], ctorParameters: () => [], propDecorators: { id: [{
232
224
  type: Input
233
225
  }], class: [{
234
226
  type: Input
@@ -252,8 +244,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
252
244
  // import { AvatarGroupLegacyFocusableAvatarDirective } from './avatar-group-legacy-focusable-avatar.directive';
253
245
  class AvatarGroupLegacyOverflowBodyDirective {
254
246
  /** @hidden */
255
- constructor(_rtlService) {
256
- this._rtlService = _rtlService;
247
+ constructor() {
257
248
  /** Remove the padding from the overflow body. */
258
249
  this.noPadding = false;
259
250
  /** Hide horizontal scrollbar from the overflow body. */
@@ -262,8 +253,15 @@ class AvatarGroupLegacyOverflowBodyDirective {
262
253
  this.noVerticalScroll = true;
263
254
  /** @hidden */
264
255
  this._subscription = new Subscription();
265
- /** @hidden handles rtl service */
266
- this._dir = 'ltr';
256
+ /** @hidden */
257
+ this._rtlService = inject(RtlService, { optional: true });
258
+ /** @hidden */
259
+ this._dir = computed(() => (this._rtlService?.rtl() ? 'rtl' : 'ltr'), ...(ngDevMode ? [{ debugName: "_dir" }] : []));
260
+ // React to RTL changes and update keyboard manager orientation
261
+ effect(() => {
262
+ const dir = this._dir();
263
+ this._keyboardEventsManager?.withHorizontalOrientation(dir);
264
+ });
267
265
  }
268
266
  /** @hidden */
269
267
  keyUpHandler(event) {
@@ -284,7 +282,6 @@ class AvatarGroupLegacyOverflowBodyDirective {
284
282
  ngAfterViewInit() {
285
283
  this._listenForItemChanges();
286
284
  this._setKeyboardEventsManager();
287
- this._subscribeToRtl();
288
285
  }
289
286
  /** @hidden */
290
287
  ngOnDestroy() {
@@ -304,21 +301,10 @@ class AvatarGroupLegacyOverflowBodyDirective {
304
301
  this._keyboardEventsManager?.destroy();
305
302
  this._keyboardEventsManager = new FocusKeyManager(this.overflowItems)
306
303
  .withWrap()
307
- .withHorizontalOrientation(this._dir);
304
+ .withHorizontalOrientation(this._dir());
308
305
  this._keyboardEventsManager.setFirstItemActive();
309
306
  }
310
- /** @hidden Rtl change subscription */
311
- _subscribeToRtl() {
312
- if (!this._rtlService) {
313
- return;
314
- }
315
- const rtlSub = this._rtlService.rtl.subscribe((isRtl) => {
316
- this._dir = isRtl ? 'rtl' : 'ltr';
317
- this._keyboardEventsManager.withHorizontalOrientation(this._dir);
318
- });
319
- this._subscription.add(rtlSub);
320
- }
321
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarGroupLegacyOverflowBodyDirective, deps: [{ token: i2.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
307
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarGroupLegacyOverflowBodyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
322
308
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: AvatarGroupLegacyOverflowBodyDirective, isStandalone: true, selector: "[fd-avatar-group-legacy-overflow-body]", inputs: { noPadding: "noPadding", noHorizontalScroll: "noHorizontalScroll", noVerticalScroll: "noVerticalScroll" }, host: { listeners: { "keyup": "keyUpHandler($event)" }, properties: { "class.fd-avatar-group-legacy__overflow-body--no-padding": "noPadding", "class.fd-avatar-group-legacy__overflow-body--no-horizontal-scroll": "noHorizontalScroll", "class.fd-avatar-group-legacy__overflow-body--no-vertical-scroll": "noVerticalScroll" }, classAttribute: "fd-avatar-group-legacy__overflow-body" }, queries: [{ propertyName: "overflowItems", predicate: AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE, descendants: true }], ngImport: i0 }); }
323
309
  }
324
310
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarGroupLegacyOverflowBodyDirective, decorators: [{
@@ -331,12 +317,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
331
317
  '[class.fd-avatar-group-legacy__overflow-body--no-padding]': 'noPadding',
332
318
  '[class.fd-avatar-group-legacy__overflow-body--no-horizontal-scroll]': 'noHorizontalScroll',
333
319
  '[class.fd-avatar-group-legacy__overflow-body--no-vertical-scroll]': 'noVerticalScroll'
334
- },
335
- standalone: true
320
+ }
336
321
  }]
337
- }], ctorParameters: () => [{ type: i2.RtlService, decorators: [{
338
- type: Optional
339
- }] }], propDecorators: { noPadding: [{
322
+ }], ctorParameters: () => [], propDecorators: { noPadding: [{
340
323
  type: Input
341
324
  }], noHorizontalScroll: [{
342
325
  type: Input
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-avatar-group-legacy.mjs","sources":["../../../../libs/core/avatar-group-legacy/tokens.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-item.directive.ts","../../../../libs/core/avatar-group-legacy/avatar-group-legacy.component.ts","../../../../libs/core/avatar-group-legacy/avatar-group-legacy.component.html","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-overflow-body.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-focusable-avatar.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-overflow-button-text.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-overflow-button.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-overflow-item.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-popover-control.directive.ts","../../../../libs/core/avatar-group-legacy/avatar-group-legacy.module.ts","../../../../libs/core/avatar-group-legacy/fundamental-ngx-core-avatar-group-legacy.ts"],"sourcesContent":["import { FocusableOption } from '@angular/cdk/a11y';\nimport { InjectionToken } from '@angular/core';\nimport { HasElementRef } from '@fundamental-ngx/cdk/utils';\nimport { AvatarGroupLegacyInterface } from './avatar-group-legacy.interface';\n\nexport type FocusableWithElementRef = FocusableOption & HasElementRef;\n\nexport const AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE = new InjectionToken<FocusableWithElementRef>(\n 'AvatarGroupLegacyFocusableAvatarDirective'\n);\n\nexport const AVATAR_GROUP_LEGACY_COMPONENT = new InjectionToken<AvatarGroupLegacyInterface>(\n 'AvatarGroupLegacyComponent'\n);\n","import { FocusableOption } from '@angular/cdk/a11y';\nimport { Directive, ElementRef, HostListener, Inject, Optional } from '@angular/core';\nimport { AvatarGroupLegacyInterface } from '../avatar-group-legacy.interface';\nimport { AVATAR_GROUP_LEGACY_COMPONENT } from '../tokens';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-item]',\n host: { class: 'fd-avatar-group-legacy__item' },\n standalone: true\n})\nexport class AvatarGroupLegacyItemDirective implements FocusableOption {\n /** Item disable state */\n disabled = false;\n\n /** @hidden */\n constructor(\n private readonly _elementRef: ElementRef<HTMLElement>,\n @Optional() @Inject(AVATAR_GROUP_LEGACY_COMPONENT) private readonly _component: AvatarGroupLegacyInterface\n ) {}\n\n /** @hidden */\n get _element(): HTMLElement {\n return this._elementRef.nativeElement;\n }\n\n /** Handler for mouse events */\n @HostListener('click')\n onClick(): void {\n if (this._component) {\n this._component._setActiveItem(this);\n }\n }\n\n /** @hidden */\n focus(): void {\n this._element.focus();\n }\n}\n","import { FocusKeyManager } from '@angular/cdk/a11y';\nimport { DOWN_ARROW, LEFT_ARROW, RIGHT_ARROW, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport { ViewportRuler } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n forwardRef\n} from '@angular/core';\nimport { Subscription, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { ColorAccent, KeyUtil, Nullable, RtlService, Size } from '@fundamental-ngx/cdk/utils';\nimport { AvatarGroupLegacyInterface } from './avatar-group-legacy.interface';\nimport { AvatarGroupLegacyItemDirective } from './directives/avatar-group-legacy-item.directive';\nimport { AVATAR_GROUP_LEGACY_COMPONENT } from './tokens';\n\nexport type AvatarGroupLegacyType = 'group' | 'individual';\nexport type AvatarGroupLegacyOverflowButtonColor = 'neutral' | 'random' | ColorAccent;\n\nlet avatarGroupCount = 0;\n\n@Component({\n selector: 'fd-avatar-group-legacy',\n templateUrl: './avatar-group-legacy.component.html',\n styleUrl: './avatar-group-legacy.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AVATAR_GROUP_LEGACY_COMPONENT,\n useExisting: forwardRef(() => AvatarGroupLegacyComponent)\n }\n ],\n standalone: true\n})\nexport class AvatarGroupLegacyComponent\n implements AvatarGroupLegacyInterface, OnChanges, OnInit, AfterViewInit, OnDestroy\n{\n /** Id of the Avatar Group. */\n @Input()\n id = `fd-avatar-group-legacy-${avatarGroupCount++}`;\n\n /** Apply user custom class. */\n @Input()\n class: string;\n\n /** The size of the Avatar Group. Options include: *xs*, *s*, *m*, *l* and *xl* (default: *s*). */\n @Input()\n size: Size = 's';\n\n /** The type of the Avatar Group. Options include: *group* and *individual* (default: *group*). */\n @Input()\n type: AvatarGroupLegacyType = 'group';\n\n /** Aria-label for Avatar Group. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** @hidden Avatar Group items. */\n @ContentChildren(AvatarGroupLegacyItemDirective, { descendants: true })\n mainItems: QueryList<AvatarGroupLegacyItemDirective>;\n\n /** @hidden */\n @ViewChild('avatarGroupContainer')\n avatarGroupContainer: ElementRef<HTMLDivElement>;\n\n /** Counter for all avatars. */\n allItemsCount = 0;\n\n /** Counter for visible in overflow popover avatars. */\n overflowItemsCount = 0;\n\n /** @hidden */\n rootClassNames: Record<string, boolean | undefined | null>;\n\n /** @hidden */\n get isGroupType(): boolean {\n return this.type === 'group';\n }\n\n /** @hidden */\n private get _avatarGroupWidth(): number {\n return this.avatarGroupContainer?.nativeElement?.offsetWidth;\n }\n\n /** @hidden */\n private get _avatarGroupItemWidth(): number {\n return this.mainItems.first?._element.offsetWidth ?? 0;\n }\n\n /** @hidden */\n private get _avatarGroupItemWithMarginsWidth(): number {\n if (!this.mainItems.first) {\n return this._avatarGroupItemWidth;\n }\n\n const elementStyles = getComputedStyle(this.mainItems.first._element);\n const marginLeft = elementStyles.marginLeft || '0';\n const marginRight = elementStyles.marginRight || '0';\n\n return this._avatarGroupItemWidth + parseInt(marginLeft, 10) + parseInt(marginRight, 10);\n }\n\n /** @hidden FocusKeyManager instance */\n private _keyboardEventsManager: FocusKeyManager<AvatarGroupLegacyItemDirective>;\n\n /** @hidden */\n private readonly _subscription = new Subscription();\n\n /** @hidden handles rtl service */\n private _dir: 'ltr' | 'rtl' | null = 'ltr';\n\n /** @hidden */\n constructor(\n private readonly _viewportRuler: ViewportRuler,\n @Optional() private _rtlService: RtlService\n ) {}\n\n /** @hidden */\n @HostListener('keyup', ['$event'])\n keyUpHandler(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, TAB)) {\n const index = this.mainItems.toArray().findIndex((item) => item._element === event.target);\n if (index !== -1) {\n this._keyboardEventsManager.setActiveItem(index);\n }\n }\n\n if (KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW])) {\n event.preventDefault();\n\n // passing the event to key manager so we get a change fired\n this._keyboardEventsManager.onKeydown(event);\n }\n }\n\n /** @hidden */\n ngOnInit(): void {\n this._subscription.add(this._viewportRuler.change().subscribe(() => this._onResize()));\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this._assignCssClasses();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._reset();\n\n this._subscription.add(\n of(true)\n .pipe(delay(5))\n .subscribe(() => this._collapseItems())\n );\n\n this._listenForItemChanges();\n this._setKeyboardEventsManager();\n this._subscribeToRtl();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscription.unsubscribe();\n this._keyboardEventsManager.destroy();\n }\n\n /** @hidden */\n _setActiveItem(item: AvatarGroupLegacyItemDirective): void {\n this._keyboardEventsManager.setActiveItem(item);\n }\n\n /** @hidden */\n private _onResize(): void {\n this._reset();\n this._collapseItems();\n }\n\n /** @hidden */\n private _reset(): void {\n this.allItemsCount = this.mainItems.length;\n this.overflowItemsCount = 0;\n\n this.mainItems.forEach((it) => {\n it._element.style.display = 'inline-block';\n it.disabled = false;\n });\n }\n\n /** @hidden */\n private _collapseItems(): void {\n const allItemsCounter = this.mainItems?.length || 0;\n let contentWidth = 0;\n let idx = 0;\n const avatarGroupItemWidth = this._avatarGroupItemWidth;\n const avatarGroupItemWithMarginsWidth = this._avatarGroupItemWithMarginsWidth;\n\n while (idx < allItemsCounter) {\n const newContentWidth =\n idx === 0 && this.isGroupType\n ? contentWidth + avatarGroupItemWidth\n : contentWidth + avatarGroupItemWithMarginsWidth;\n\n if (newContentWidth >= this._avatarGroupWidth) {\n // -1 because the last element in the loop will be replaced by the overflow button\n const newIdx = idx - 1;\n this.overflowItemsCount = allItemsCounter - newIdx;\n const mainItemsToHide = this.mainItems.toArray().slice(newIdx);\n mainItemsToHide.forEach((it) => {\n it._element.style.display = 'none';\n it.disabled = true;\n });\n\n break;\n }\n\n contentWidth = newContentWidth;\n idx++;\n }\n }\n\n /** @hidden */\n private _listenForItemChanges(): void {\n this._subscription.add(this.mainItems.changes.subscribe(() => this._onResize()));\n }\n\n /** @hidden */\n private _assignCssClasses(): void {\n this.rootClassNames = {\n 'fd-avatar-group-legacy': true,\n [`fd-avatar-group-legacy--${this.type}-type`]: !!this.type,\n [`fd-avatar-group-legacy--${this.size}`]: !!this.size,\n [this.class]: !!this.class\n };\n }\n\n /** @hidden */\n private _setKeyboardEventsManager(): void {\n this._keyboardEventsManager?.destroy();\n this._keyboardEventsManager = new FocusKeyManager(this.mainItems)\n .withWrap()\n .withHorizontalOrientation(this._dir);\n }\n\n /** @hidden Rtl change subscription */\n private _subscribeToRtl(): void {\n if (!this._rtlService) {\n return;\n }\n\n const rtlSub = this._rtlService.rtl.subscribe((isRtl) => {\n this._dir = isRtl ? 'rtl' : 'ltr';\n\n this._keyboardEventsManager = this._keyboardEventsManager.withHorizontalOrientation(this._dir);\n });\n\n this._subscription.add(rtlSub);\n }\n}\n","<div #avatarGroupContainer [class]=\"rootClassNames\" [id]=\"id\" [attr.aria-label]=\"ariaLabel\">\n <ng-content></ng-content>\n</div>\n","import { FocusKeyManager, FocusableOption } from '@angular/cdk/a11y';\nimport { DOWN_ARROW, LEFT_ARROW, RIGHT_ARROW, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport {\n AfterViewInit,\n ContentChildren,\n Directive,\n HostListener,\n Input,\n OnDestroy,\n Optional,\n QueryList\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { HasElementRef, KeyUtil, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE, FocusableWithElementRef } from '../tokens';\n\n// import { AvatarGroupLegacyFocusableAvatarDirective } from './avatar-group-legacy-focusable-avatar.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-overflow-body]',\n host: {\n class: 'fd-avatar-group-legacy__overflow-body',\n '[class.fd-avatar-group-legacy__overflow-body--no-padding]': 'noPadding',\n '[class.fd-avatar-group-legacy__overflow-body--no-horizontal-scroll]': 'noHorizontalScroll',\n '[class.fd-avatar-group-legacy__overflow-body--no-vertical-scroll]': 'noVerticalScroll'\n },\n standalone: true\n})\nexport class AvatarGroupLegacyOverflowBodyDirective implements AfterViewInit, OnDestroy {\n /** Remove the padding from the overflow body. */\n @Input()\n noPadding = false;\n\n /** Hide horizontal scrollbar from the overflow body. */\n @Input()\n noHorizontalScroll = true;\n\n /** Hide vertical scrollbar from the overflow body. */\n @Input()\n noVerticalScroll = true;\n\n /** @hidden Avatar Group Overflow items. */\n @ContentChildren(AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE, { descendants: true })\n overflowItems: QueryList<FocusableWithElementRef>;\n\n /** @hidden FocusKeyManager instance */\n private _keyboardEventsManager: FocusKeyManager<HasElementRef>;\n\n /** @hidden */\n private readonly _subscription = new Subscription();\n\n /** @hidden handles rtl service */\n private _dir: 'ltr' | 'rtl' | null = 'ltr';\n\n /** @hidden */\n constructor(@Optional() private _rtlService: RtlService) {}\n\n /** @hidden */\n @HostListener('keyup', ['$event'])\n keyUpHandler(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, TAB)) {\n const index = this.overflowItems\n .toArray()\n .findIndex((item) => item.elementRef.nativeElement === event.target);\n if (index !== -1) {\n this._keyboardEventsManager.setActiveItem(index);\n }\n }\n\n if (KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW])) {\n // passing the event to key manager so we get a change fired\n this._keyboardEventsManager.onKeydown(event);\n }\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._listenForItemChanges();\n\n this._setKeyboardEventsManager();\n\n this._subscribeToRtl();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscription.unsubscribe();\n this._keyboardEventsManager?.destroy();\n }\n\n /** @hidden */\n _setActiveItem(item: FocusableOption & HasElementRef): void {\n this._keyboardEventsManager.setActiveItem(item);\n }\n\n /** @hidden */\n private _listenForItemChanges(): void {\n this.overflowItems.changes.subscribe(() => this._setKeyboardEventsManager());\n }\n\n /** @hidden */\n private _setKeyboardEventsManager(): void {\n this._keyboardEventsManager?.destroy();\n this._keyboardEventsManager = new FocusKeyManager(this.overflowItems)\n .withWrap()\n .withHorizontalOrientation(this._dir);\n\n this._keyboardEventsManager.setFirstItemActive();\n }\n\n /** @hidden Rtl change subscription */\n private _subscribeToRtl(): void {\n if (!this._rtlService) {\n return;\n }\n\n const rtlSub = this._rtlService.rtl.subscribe((isRtl) => {\n this._dir = isRtl ? 'rtl' : 'ltr';\n this._keyboardEventsManager.withHorizontalOrientation(this._dir);\n });\n\n this._subscription.add(rtlSub);\n }\n}\n","import { FocusableOption } from '@angular/cdk/a11y';\nimport { Directive, ElementRef, HostBinding, HostListener, Inject, Input, Optional, forwardRef } from '@angular/core';\n\nimport { HasElementRef } from '@fundamental-ngx/cdk/utils';\n\nimport { AvatarGroupLegacyInterface } from '../avatar-group-legacy.interface';\nimport { AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE } from '../tokens';\nimport { AvatarGroupLegacyOverflowBodyDirective } from './avatar-group-legacy-overflow-body.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-focusable-avatar]',\n host: { class: 'fd-avatar-group-legacy__focusable-avatar' },\n providers: [\n {\n provide: AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE,\n useExisting: forwardRef(() => AvatarGroupLegacyFocusableAvatarDirective)\n }\n ],\n standalone: true\n})\nexport class AvatarGroupLegacyFocusableAvatarDirective implements FocusableOption, HasElementRef {\n /** Tabindex of the Avatar. */\n @Input()\n @HostBinding('attr.tabindex')\n tabindex = 0;\n\n /** @hidden */\n constructor(\n public readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(forwardRef(() => AvatarGroupLegacyOverflowBodyDirective))\n private readonly _component: AvatarGroupLegacyInterface\n ) {}\n\n /** Handler for mouse events */\n @HostListener('click')\n onClick(): void {\n if (this._component) {\n this._component._setActiveItem(this);\n }\n }\n\n /** @hidden */\n focus(): void {\n this.elementRef.nativeElement.focus();\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-overflow-button-text]',\n host: { class: 'fd-button__text fd-avatar-group-legacy__button-text' },\n standalone: true\n})\nexport class AvatarGroupLegacyOverflowButtonTextDirective {}\n","import { Directive, ElementRef, Input, OnChanges, OnInit } from '@angular/core';\n\nimport { CssClassBuilder, Size, applyCssClass, getRandomColorAccent } from '@fundamental-ngx/cdk/utils';\n\nimport { AvatarGroupLegacyOverflowButtonColor } from '../avatar-group-legacy.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-overflow-button]',\n standalone: true\n})\nexport class AvatarGroupLegacyOverflowButtonDirective implements OnInit, OnChanges, CssClassBuilder {\n /** User's custom classes. */\n @Input()\n class: string;\n\n /** The size of the overflow button.\n * Should be the same as the Avatar Group and Avatar size.\n * Options include: *xs*, *s*, *m*, *l* and *xl* (default: *s*). */\n @Input()\n size: Size = 's';\n\n /** A number from 1 to 10 representing the background color of the Avatar Group's overflow button.\n * Options include: *neutral*, *random*, *1*, *2*, *3*, *4*, *5*, *6*, *7*, *8*, *9*, *10* (default: *neutral*). */\n @Input()\n color: AvatarGroupLegacyOverflowButtonColor = 'neutral';\n\n /** @hidden */\n constructor(public readonly elementRef: ElementRef) {}\n\n /** @hidden */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [\n 'fd-button',\n 'fd-avatar-group-legacy__more-button',\n (this.color && this._getMoreButtonColorCssClass()) || '',\n this.size ? `fd-avatar-group-legacy__more-button--${this.size}` : '',\n this.class\n ];\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n private _getMoreButtonColorCssClass(): string | null {\n if (this.color === 'random') {\n return `fd-avatar-group-legacy__more-button--accent-color-${getRandomColorAccent()}`;\n }\n\n if (!Number.isNaN(parseInt(this.color as string, 10))) {\n return `fd-avatar-group-legacy__more-button--accent-color-${this.color}`;\n }\n return null;\n }\n}\n","import { Directive } from '@angular/core';\n\nimport { AvatarGroupLegacyItemDirective } from './avatar-group-legacy-item.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-overflow-item]',\n standalone: true\n})\nexport class AvatarGroupLegacyOverflowItemDirective extends AvatarGroupLegacyItemDirective {}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n/** Needed to bind specific class to group type popover control. */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-popover-control]',\n host: { class: 'fd-avatar-group-legacy__popover-control' },\n standalone: true\n})\nexport class AvatarGroupLegacyPopoverControlDirective {\n /** Tabindex of the popover control. */\n @Input()\n @HostBinding('attr.tabindex')\n tabindex = 0;\n\n /** Role of the popover control. */\n @Input()\n @HostBinding('attr.role')\n role = 'button';\n}\n","import { NgModule } from '@angular/core';\n\nimport { AvatarGroupLegacyComponent } from './avatar-group-legacy.component';\nimport { AvatarGroupLegacyFocusableAvatarDirective } from './directives/avatar-group-legacy-focusable-avatar.directive';\nimport { AvatarGroupLegacyItemDirective } from './directives/avatar-group-legacy-item.directive';\nimport { AvatarGroupLegacyOverflowBodyDirective } from './directives/avatar-group-legacy-overflow-body.directive';\nimport { AvatarGroupLegacyOverflowButtonTextDirective } from './directives/avatar-group-legacy-overflow-button-text.directive';\nimport { AvatarGroupLegacyOverflowButtonDirective } from './directives/avatar-group-legacy-overflow-button.directive';\nimport { AvatarGroupLegacyOverflowItemDirective } from './directives/avatar-group-legacy-overflow-item.directive';\nimport { AvatarGroupLegacyPopoverControlDirective } from './directives/avatar-group-legacy-popover-control.directive';\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [\n AvatarGroupLegacyComponent,\n AvatarGroupLegacyItemDirective,\n AvatarGroupLegacyFocusableAvatarDirective,\n AvatarGroupLegacyPopoverControlDirective,\n AvatarGroupLegacyOverflowBodyDirective,\n AvatarGroupLegacyOverflowItemDirective,\n AvatarGroupLegacyOverflowButtonDirective,\n AvatarGroupLegacyOverflowButtonTextDirective\n ],\n exports: [\n AvatarGroupLegacyComponent,\n AvatarGroupLegacyItemDirective,\n AvatarGroupLegacyFocusableAvatarDirective,\n AvatarGroupLegacyPopoverControlDirective,\n AvatarGroupLegacyOverflowBodyDirective,\n AvatarGroupLegacyOverflowItemDirective,\n AvatarGroupLegacyOverflowButtonDirective,\n AvatarGroupLegacyOverflowButtonTextDirective\n ]\n})\nexport class AvatarGroupLegacyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-avatar-group-legacy.mjs","sources":["../../../../libs/core/avatar-group-legacy/tokens.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-item.directive.ts","../../../../libs/core/avatar-group-legacy/avatar-group-legacy.component.ts","../../../../libs/core/avatar-group-legacy/avatar-group-legacy.component.html","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-overflow-body.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-focusable-avatar.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-overflow-button-text.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-overflow-button.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-overflow-item.directive.ts","../../../../libs/core/avatar-group-legacy/directives/avatar-group-legacy-popover-control.directive.ts","../../../../libs/core/avatar-group-legacy/avatar-group-legacy.module.ts","../../../../libs/core/avatar-group-legacy/fundamental-ngx-core-avatar-group-legacy.ts"],"sourcesContent":["import { FocusableOption } from '@angular/cdk/a11y';\nimport { InjectionToken } from '@angular/core';\nimport { HasElementRef } from '@fundamental-ngx/cdk/utils';\nimport { AvatarGroupLegacyInterface } from './avatar-group-legacy.interface';\n\nexport type FocusableWithElementRef = FocusableOption & HasElementRef;\n\nexport const AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE = new InjectionToken<FocusableWithElementRef>(\n 'AvatarGroupLegacyFocusableAvatarDirective'\n);\n\nexport const AVATAR_GROUP_LEGACY_COMPONENT = new InjectionToken<AvatarGroupLegacyInterface>(\n 'AvatarGroupLegacyComponent'\n);\n","import { FocusableOption } from '@angular/cdk/a11y';\nimport { Directive, ElementRef, HostListener, Inject, Optional } from '@angular/core';\nimport { AvatarGroupLegacyInterface } from '../avatar-group-legacy.interface';\nimport { AVATAR_GROUP_LEGACY_COMPONENT } from '../tokens';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-item]',\n host: { class: 'fd-avatar-group-legacy__item' },\n standalone: true\n})\nexport class AvatarGroupLegacyItemDirective implements FocusableOption {\n /** Item disable state */\n disabled = false;\n\n /** @hidden */\n constructor(\n private readonly _elementRef: ElementRef<HTMLElement>,\n @Optional() @Inject(AVATAR_GROUP_LEGACY_COMPONENT) private readonly _component: AvatarGroupLegacyInterface\n ) {}\n\n /** @hidden */\n get _element(): HTMLElement {\n return this._elementRef.nativeElement;\n }\n\n /** Handler for mouse events */\n @HostListener('click')\n onClick(): void {\n if (this._component) {\n this._component._setActiveItem(this);\n }\n }\n\n /** @hidden */\n focus(): void {\n this._element.focus();\n }\n}\n","import { FocusKeyManager } from '@angular/cdk/a11y';\nimport { DOWN_ARROW, LEFT_ARROW, RIGHT_ARROW, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport { ViewportRuler } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n computed,\n effect,\n forwardRef,\n inject\n} from '@angular/core';\nimport { Subscription, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { ColorAccent, KeyUtil, Nullable, RtlService, Size } from '@fundamental-ngx/cdk/utils';\nimport { AvatarGroupLegacyInterface } from './avatar-group-legacy.interface';\nimport { AvatarGroupLegacyItemDirective } from './directives/avatar-group-legacy-item.directive';\nimport { AVATAR_GROUP_LEGACY_COMPONENT } from './tokens';\n\nexport type AvatarGroupLegacyType = 'group' | 'individual';\nexport type AvatarGroupLegacyOverflowButtonColor = 'neutral' | 'random' | ColorAccent;\n\nlet avatarGroupCount = 0;\n\n@Component({\n selector: 'fd-avatar-group-legacy',\n templateUrl: './avatar-group-legacy.component.html',\n styleUrl: './avatar-group-legacy.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AVATAR_GROUP_LEGACY_COMPONENT,\n useExisting: forwardRef(() => AvatarGroupLegacyComponent)\n }\n ]\n})\nexport class AvatarGroupLegacyComponent\n implements AvatarGroupLegacyInterface, OnChanges, OnInit, AfterViewInit, OnDestroy\n{\n /** Id of the Avatar Group. */\n @Input()\n id = `fd-avatar-group-legacy-${avatarGroupCount++}`;\n\n /** Apply user custom class. */\n @Input()\n class: string;\n\n /** The size of the Avatar Group. Options include: *xs*, *s*, *m*, *l* and *xl* (default: *s*). */\n @Input()\n size: Size = 's';\n\n /** The type of the Avatar Group. Options include: *group* and *individual* (default: *group*). */\n @Input()\n type: AvatarGroupLegacyType = 'group';\n\n /** Aria-label for Avatar Group. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** @hidden Avatar Group items. */\n @ContentChildren(AvatarGroupLegacyItemDirective, { descendants: true })\n mainItems: QueryList<AvatarGroupLegacyItemDirective>;\n\n /** @hidden */\n @ViewChild('avatarGroupContainer')\n avatarGroupContainer: ElementRef<HTMLDivElement>;\n\n /** Counter for all avatars. */\n allItemsCount = 0;\n\n /** Counter for visible in overflow popover avatars. */\n overflowItemsCount = 0;\n\n /** @hidden */\n rootClassNames: Record<string, boolean | undefined | null>;\n\n /** @hidden */\n get isGroupType(): boolean {\n return this.type === 'group';\n }\n\n /** @hidden */\n private get _avatarGroupWidth(): number {\n return this.avatarGroupContainer?.nativeElement?.offsetWidth;\n }\n\n /** @hidden */\n private get _avatarGroupItemWidth(): number {\n return this.mainItems.first?._element.offsetWidth ?? 0;\n }\n\n /** @hidden */\n private get _avatarGroupItemWithMarginsWidth(): number {\n if (!this.mainItems.first) {\n return this._avatarGroupItemWidth;\n }\n\n const elementStyles = getComputedStyle(this.mainItems.first._element);\n const marginLeft = elementStyles.marginLeft || '0';\n const marginRight = elementStyles.marginRight || '0';\n\n return this._avatarGroupItemWidth + parseInt(marginLeft, 10) + parseInt(marginRight, 10);\n }\n\n /** @hidden FocusKeyManager instance */\n private _keyboardEventsManager: FocusKeyManager<AvatarGroupLegacyItemDirective>;\n\n /** @hidden */\n private readonly _subscription = new Subscription();\n\n /** @hidden */\n private readonly _viewportRuler = inject(ViewportRuler);\n\n /** @hidden */\n private readonly _rtlService = inject(RtlService, { optional: true });\n\n /** @hidden */\n private readonly _dir = computed<'ltr' | 'rtl'>(() => (this._rtlService?.rtl() ? 'rtl' : 'ltr'));\n\n /** @hidden */\n constructor() {\n // React to RTL changes and update keyboard manager orientation\n effect(() => {\n const dir = this._dir();\n this._keyboardEventsManager?.withHorizontalOrientation(dir);\n });\n }\n\n /** @hidden */\n @HostListener('keyup', ['$event'])\n keyUpHandler(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, TAB)) {\n const index = this.mainItems.toArray().findIndex((item) => item._element === event.target);\n if (index !== -1) {\n this._keyboardEventsManager.setActiveItem(index);\n }\n }\n\n if (KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW])) {\n event.preventDefault();\n\n // passing the event to key manager so we get a change fired\n this._keyboardEventsManager.onKeydown(event);\n }\n }\n\n /** @hidden */\n ngOnInit(): void {\n this._subscription.add(this._viewportRuler.change().subscribe(() => this._onResize()));\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this._assignCssClasses();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._reset();\n\n this._subscription.add(\n of(true)\n .pipe(delay(5))\n .subscribe(() => this._collapseItems())\n );\n\n this._listenForItemChanges();\n this._setKeyboardEventsManager();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscription.unsubscribe();\n this._keyboardEventsManager.destroy();\n }\n\n /** @hidden */\n _setActiveItem(item: AvatarGroupLegacyItemDirective): void {\n this._keyboardEventsManager.setActiveItem(item);\n }\n\n /** @hidden */\n private _onResize(): void {\n this._reset();\n this._collapseItems();\n }\n\n /** @hidden */\n private _reset(): void {\n this.allItemsCount = this.mainItems.length;\n this.overflowItemsCount = 0;\n\n this.mainItems.forEach((it) => {\n it._element.style.display = 'inline-block';\n it.disabled = false;\n });\n }\n\n /** @hidden */\n private _collapseItems(): void {\n const allItemsCounter = this.mainItems?.length || 0;\n let contentWidth = 0;\n let idx = 0;\n const avatarGroupItemWidth = this._avatarGroupItemWidth;\n const avatarGroupItemWithMarginsWidth = this._avatarGroupItemWithMarginsWidth;\n\n while (idx < allItemsCounter) {\n const newContentWidth =\n idx === 0 && this.isGroupType\n ? contentWidth + avatarGroupItemWidth\n : contentWidth + avatarGroupItemWithMarginsWidth;\n\n if (newContentWidth >= this._avatarGroupWidth) {\n // -1 because the last element in the loop will be replaced by the overflow button\n const newIdx = idx - 1;\n this.overflowItemsCount = allItemsCounter - newIdx;\n const mainItemsToHide = this.mainItems.toArray().slice(newIdx);\n mainItemsToHide.forEach((it) => {\n it._element.style.display = 'none';\n it.disabled = true;\n });\n\n break;\n }\n\n contentWidth = newContentWidth;\n idx++;\n }\n }\n\n /** @hidden */\n private _listenForItemChanges(): void {\n this._subscription.add(this.mainItems.changes.subscribe(() => this._onResize()));\n }\n\n /** @hidden */\n private _assignCssClasses(): void {\n this.rootClassNames = {\n 'fd-avatar-group-legacy': true,\n [`fd-avatar-group-legacy--${this.type}-type`]: !!this.type,\n [`fd-avatar-group-legacy--${this.size}`]: !!this.size,\n [this.class]: !!this.class\n };\n }\n\n /** @hidden */\n private _setKeyboardEventsManager(): void {\n this._keyboardEventsManager?.destroy();\n this._keyboardEventsManager = new FocusKeyManager(this.mainItems)\n .withWrap()\n .withHorizontalOrientation(this._dir());\n }\n}\n","<div #avatarGroupContainer [class]=\"rootClassNames\" [id]=\"id\" [attr.aria-label]=\"ariaLabel\">\n <ng-content></ng-content>\n</div>\n","import { FocusableOption, FocusKeyManager } from '@angular/cdk/a11y';\nimport { DOWN_ARROW, LEFT_ARROW, RIGHT_ARROW, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport {\n AfterViewInit,\n computed,\n ContentChildren,\n Directive,\n effect,\n HostListener,\n inject,\n Input,\n OnDestroy,\n QueryList\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { HasElementRef, KeyUtil, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE, FocusableWithElementRef } from '../tokens';\n\n// import { AvatarGroupLegacyFocusableAvatarDirective } from './avatar-group-legacy-focusable-avatar.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-overflow-body]',\n host: {\n class: 'fd-avatar-group-legacy__overflow-body',\n '[class.fd-avatar-group-legacy__overflow-body--no-padding]': 'noPadding',\n '[class.fd-avatar-group-legacy__overflow-body--no-horizontal-scroll]': 'noHorizontalScroll',\n '[class.fd-avatar-group-legacy__overflow-body--no-vertical-scroll]': 'noVerticalScroll'\n }\n})\nexport class AvatarGroupLegacyOverflowBodyDirective implements AfterViewInit, OnDestroy {\n /** Remove the padding from the overflow body. */\n @Input()\n noPadding = false;\n\n /** Hide horizontal scrollbar from the overflow body. */\n @Input()\n noHorizontalScroll = true;\n\n /** Hide vertical scrollbar from the overflow body. */\n @Input()\n noVerticalScroll = true;\n\n /** @hidden Avatar Group Overflow items. */\n @ContentChildren(AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE, { descendants: true })\n overflowItems: QueryList<FocusableWithElementRef>;\n\n /** @hidden FocusKeyManager instance */\n private _keyboardEventsManager: FocusKeyManager<HasElementRef>;\n\n /** @hidden */\n private readonly _subscription = new Subscription();\n\n /** @hidden */\n private readonly _rtlService = inject(RtlService, { optional: true });\n\n /** @hidden */\n private readonly _dir = computed<'ltr' | 'rtl'>(() => (this._rtlService?.rtl() ? 'rtl' : 'ltr'));\n\n /** @hidden */\n constructor() {\n // React to RTL changes and update keyboard manager orientation\n effect(() => {\n const dir = this._dir();\n this._keyboardEventsManager?.withHorizontalOrientation(dir);\n });\n }\n\n /** @hidden */\n @HostListener('keyup', ['$event'])\n keyUpHandler(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, TAB)) {\n const index = this.overflowItems\n .toArray()\n .findIndex((item) => item.elementRef.nativeElement === event.target);\n if (index !== -1) {\n this._keyboardEventsManager.setActiveItem(index);\n }\n }\n\n if (KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW])) {\n // passing the event to key manager so we get a change fired\n this._keyboardEventsManager.onKeydown(event);\n }\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._listenForItemChanges();\n\n this._setKeyboardEventsManager();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscription.unsubscribe();\n this._keyboardEventsManager?.destroy();\n }\n\n /** @hidden */\n _setActiveItem(item: FocusableOption & HasElementRef): void {\n this._keyboardEventsManager.setActiveItem(item);\n }\n\n /** @hidden */\n private _listenForItemChanges(): void {\n this.overflowItems.changes.subscribe(() => this._setKeyboardEventsManager());\n }\n\n /** @hidden */\n private _setKeyboardEventsManager(): void {\n this._keyboardEventsManager?.destroy();\n this._keyboardEventsManager = new FocusKeyManager(this.overflowItems)\n .withWrap()\n .withHorizontalOrientation(this._dir());\n\n this._keyboardEventsManager.setFirstItemActive();\n }\n}\n","import { FocusableOption } from '@angular/cdk/a11y';\nimport { Directive, ElementRef, HostBinding, HostListener, Inject, Input, Optional, forwardRef } from '@angular/core';\n\nimport { HasElementRef } from '@fundamental-ngx/cdk/utils';\n\nimport { AvatarGroupLegacyInterface } from '../avatar-group-legacy.interface';\nimport { AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE } from '../tokens';\nimport { AvatarGroupLegacyOverflowBodyDirective } from './avatar-group-legacy-overflow-body.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-focusable-avatar]',\n host: { class: 'fd-avatar-group-legacy__focusable-avatar' },\n providers: [\n {\n provide: AVATAR_GROUP_LEGACY_FOCUSABLE_AVATAR_DIRECTIVE,\n useExisting: forwardRef(() => AvatarGroupLegacyFocusableAvatarDirective)\n }\n ],\n standalone: true\n})\nexport class AvatarGroupLegacyFocusableAvatarDirective implements FocusableOption, HasElementRef {\n /** Tabindex of the Avatar. */\n @Input()\n @HostBinding('attr.tabindex')\n tabindex = 0;\n\n /** @hidden */\n constructor(\n public readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(forwardRef(() => AvatarGroupLegacyOverflowBodyDirective))\n private readonly _component: AvatarGroupLegacyInterface\n ) {}\n\n /** Handler for mouse events */\n @HostListener('click')\n onClick(): void {\n if (this._component) {\n this._component._setActiveItem(this);\n }\n }\n\n /** @hidden */\n focus(): void {\n this.elementRef.nativeElement.focus();\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-overflow-button-text]',\n host: { class: 'fd-button__text fd-avatar-group-legacy__button-text' },\n standalone: true\n})\nexport class AvatarGroupLegacyOverflowButtonTextDirective {}\n","import { Directive, ElementRef, Input, OnChanges, OnInit } from '@angular/core';\n\nimport { CssClassBuilder, Size, applyCssClass, getRandomColorAccent } from '@fundamental-ngx/cdk/utils';\n\nimport { AvatarGroupLegacyOverflowButtonColor } from '../avatar-group-legacy.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-overflow-button]',\n standalone: true\n})\nexport class AvatarGroupLegacyOverflowButtonDirective implements OnInit, OnChanges, CssClassBuilder {\n /** User's custom classes. */\n @Input()\n class: string;\n\n /** The size of the overflow button.\n * Should be the same as the Avatar Group and Avatar size.\n * Options include: *xs*, *s*, *m*, *l* and *xl* (default: *s*). */\n @Input()\n size: Size = 's';\n\n /** A number from 1 to 10 representing the background color of the Avatar Group's overflow button.\n * Options include: *neutral*, *random*, *1*, *2*, *3*, *4*, *5*, *6*, *7*, *8*, *9*, *10* (default: *neutral*). */\n @Input()\n color: AvatarGroupLegacyOverflowButtonColor = 'neutral';\n\n /** @hidden */\n constructor(public readonly elementRef: ElementRef) {}\n\n /** @hidden */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [\n 'fd-button',\n 'fd-avatar-group-legacy__more-button',\n (this.color && this._getMoreButtonColorCssClass()) || '',\n this.size ? `fd-avatar-group-legacy__more-button--${this.size}` : '',\n this.class\n ];\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n private _getMoreButtonColorCssClass(): string | null {\n if (this.color === 'random') {\n return `fd-avatar-group-legacy__more-button--accent-color-${getRandomColorAccent()}`;\n }\n\n if (!Number.isNaN(parseInt(this.color as string, 10))) {\n return `fd-avatar-group-legacy__more-button--accent-color-${this.color}`;\n }\n return null;\n }\n}\n","import { Directive } from '@angular/core';\n\nimport { AvatarGroupLegacyItemDirective } from './avatar-group-legacy-item.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-overflow-item]',\n standalone: true\n})\nexport class AvatarGroupLegacyOverflowItemDirective extends AvatarGroupLegacyItemDirective {}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n/** Needed to bind specific class to group type popover control. */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-avatar-group-legacy-popover-control]',\n host: { class: 'fd-avatar-group-legacy__popover-control' },\n standalone: true\n})\nexport class AvatarGroupLegacyPopoverControlDirective {\n /** Tabindex of the popover control. */\n @Input()\n @HostBinding('attr.tabindex')\n tabindex = 0;\n\n /** Role of the popover control. */\n @Input()\n @HostBinding('attr.role')\n role = 'button';\n}\n","import { NgModule } from '@angular/core';\n\nimport { AvatarGroupLegacyComponent } from './avatar-group-legacy.component';\nimport { AvatarGroupLegacyFocusableAvatarDirective } from './directives/avatar-group-legacy-focusable-avatar.directive';\nimport { AvatarGroupLegacyItemDirective } from './directives/avatar-group-legacy-item.directive';\nimport { AvatarGroupLegacyOverflowBodyDirective } from './directives/avatar-group-legacy-overflow-body.directive';\nimport { AvatarGroupLegacyOverflowButtonTextDirective } from './directives/avatar-group-legacy-overflow-button-text.directive';\nimport { AvatarGroupLegacyOverflowButtonDirective } from './directives/avatar-group-legacy-overflow-button.directive';\nimport { AvatarGroupLegacyOverflowItemDirective } from './directives/avatar-group-legacy-overflow-item.directive';\nimport { AvatarGroupLegacyPopoverControlDirective } from './directives/avatar-group-legacy-popover-control.directive';\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [\n AvatarGroupLegacyComponent,\n AvatarGroupLegacyItemDirective,\n AvatarGroupLegacyFocusableAvatarDirective,\n AvatarGroupLegacyPopoverControlDirective,\n AvatarGroupLegacyOverflowBodyDirective,\n AvatarGroupLegacyOverflowItemDirective,\n AvatarGroupLegacyOverflowButtonDirective,\n AvatarGroupLegacyOverflowButtonTextDirective\n ],\n exports: [\n AvatarGroupLegacyComponent,\n AvatarGroupLegacyItemDirective,\n AvatarGroupLegacyFocusableAvatarDirective,\n AvatarGroupLegacyPopoverControlDirective,\n AvatarGroupLegacyOverflowBodyDirective,\n AvatarGroupLegacyOverflowItemDirective,\n AvatarGroupLegacyOverflowButtonDirective,\n AvatarGroupLegacyOverflowButtonTextDirective\n ]\n})\nexport class AvatarGroupLegacyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}