@fundamental-ngx/core 0.44.0-rc.2 → 0.44.0-rc.4

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 (203) hide show
  1. package/avatar/avatar.component.d.ts +0 -1
  2. package/bar/directives/bar-element.directive.d.ts +6 -3
  3. package/breadcrumb/breadcrumb.component.d.ts +4 -4
  4. package/carousel/carousel.component.d.ts +8 -2
  5. package/content-density/providers/content-density-observer-providers.d.ts +1 -1
  6. package/content-density/services/content-density-observer.service.d.ts +3 -3
  7. package/date-picker/date-picker.component.d.ts +30 -9
  8. package/datetime-picker/datetime-picker.component.d.ts +28 -10
  9. package/dialog/dialog-container/dialog-container.component.d.ts +4 -4
  10. package/dialog/dialog-footer-button/dialog-footer-button.component.d.ts +2 -0
  11. package/dialog/directives/dialog-decisive-button.directive.d.ts +2 -0
  12. package/dialog/utils/dialog-config.class.d.ts +1 -1
  13. package/esm2022/action-bar/action-bar.component.mjs +10 -3
  14. package/esm2022/alert/alert-service/alert.service.mjs +12 -3
  15. package/esm2022/alert/alert-utils/alert-config.mjs +11 -3
  16. package/esm2022/alert/alert-utils/alert-container.component.mjs +11 -3
  17. package/esm2022/alert/alert-utils/alert-ref.mjs +11 -3
  18. package/esm2022/alert/alert.component.mjs +17 -3
  19. package/esm2022/alert/alert.module.mjs +11 -3
  20. package/esm2022/avatar/avatar.component.mjs +2 -2
  21. package/esm2022/bar/directives/bar-element.directive.mjs +15 -7
  22. package/esm2022/breadcrumb/breadcrumb.component.mjs +9 -11
  23. package/esm2022/carousel/carousel.component.mjs +34 -5
  24. package/esm2022/combobox/combobox-mobile/combobox-mobile.component.mjs +1 -1
  25. package/esm2022/content-density/providers/content-density-observer-providers.mjs +4 -4
  26. package/esm2022/content-density/services/content-density-observer.service.mjs +13 -13
  27. package/esm2022/date-picker/date-picker.component.mjs +103 -10
  28. package/esm2022/datetime-picker/datetime-picker.component.mjs +78 -8
  29. package/esm2022/dialog/dialog-container/dialog-container.component.mjs +12 -13
  30. package/esm2022/dialog/dialog-footer-button/dialog-footer-button.component.mjs +8 -3
  31. package/esm2022/dialog/dialog-header/dialog-header.component.mjs +1 -1
  32. package/esm2022/dialog/directives/dialog-decisive-button.directive.mjs +6 -2
  33. package/esm2022/dialog/utils/dialog-config.class.mjs +1 -1
  34. package/esm2022/feed-list-item/components/item/feed-list-item.component.mjs +23 -1
  35. package/esm2022/form/form-label/form-label.component.mjs +21 -5
  36. package/esm2022/list/list-item/list-item.component.mjs +36 -1
  37. package/esm2022/menu/menu-mobile/menu-mobile.component.mjs +1 -1
  38. package/esm2022/message-box/directives/message-box-decisive-button.directive.mjs +6 -2
  39. package/esm2022/message-box/message-box-container/message-box-container.component.mjs +12 -15
  40. package/esm2022/message-box/message-box-footer-button/message-box-footer-button.component.mjs +8 -3
  41. package/esm2022/message-box/message-box-header/message-box-header.component.mjs +1 -1
  42. package/esm2022/message-strip/alert/message-strip-alert-container-footer/message-strip-alert-container-footer.component.mjs +8 -9
  43. package/esm2022/message-strip/auto-dismiss-message-strip.directive.mjs +10 -9
  44. package/esm2022/message-strip/message-strip.component.mjs +12 -1
  45. package/esm2022/multi-combobox/base-multi-combobox.class.mjs +17 -14
  46. package/esm2022/multi-combobox/mobile/mobile-multi-combobox.component.mjs +1 -1
  47. package/esm2022/multi-combobox/multi-combobox.component.mjs +44 -45
  48. package/esm2022/multi-combobox/select-all-toggler/select-all-toggler.component.mjs +8 -10
  49. package/esm2022/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +1 -1
  50. package/esm2022/overflow-layout/directives/overflow-layout-popover-content.directive.mjs +9 -11
  51. package/esm2022/pagination/pagination.component.mjs +140 -2
  52. package/esm2022/popover/base/base-popover.class.mjs +25 -1
  53. package/esm2022/popover/popover.component.mjs +28 -17
  54. package/esm2022/product-switch/product-switch/product-switch.component.mjs +11 -1
  55. package/esm2022/quick-view/quick-view-title/quick-view-title.component.mjs +1 -1
  56. package/esm2022/segmented-button/segmented-button.component.mjs +19 -21
  57. package/esm2022/select/select.component.mjs +17 -10
  58. package/esm2022/shellbar/shellbar-actions/shellbar-actions.component.mjs +12 -1
  59. package/esm2022/shellbar/shellbar.component.mjs +12 -11
  60. package/esm2022/side-navigation/side-navigation.component.mjs +12 -3
  61. package/esm2022/slider/slider.component.mjs +83 -13
  62. package/esm2022/split-button/split-button.component.mjs +34 -16
  63. package/esm2022/splitter/splitter-pagination/splitter-pagination.component.mjs +9 -2
  64. package/esm2022/splitter/splitter.component.mjs +16 -5
  65. package/esm2022/step-input/step-input.component.mjs +46 -24
  66. package/esm2022/switch/switch.component.mjs +25 -3
  67. package/esm2022/table/directives/table-cell.directive.mjs +5 -7
  68. package/esm2022/table/directives/table-row.directive.mjs +17 -20
  69. package/esm2022/table/table.component.mjs +10 -9
  70. package/esm2022/tabs/tab-item-expand/tab-item-expand.component.mjs +11 -1
  71. package/esm2022/tabs/tab-list.component.mjs +40 -31
  72. package/esm2022/text/text.component.mjs +23 -1
  73. package/esm2022/time/i18n/time-i18n.mjs +2 -2
  74. package/esm2022/token/token.component.mjs +36 -14
  75. package/esm2022/toolbar/toolbar.component.mjs +33 -26
  76. package/esm2022/tree/components/tree-item/tree-item.component.mjs +21 -21
  77. package/esm2022/tree/tree.component.mjs +23 -22
  78. package/esm2022/upload-collection/upload-collection-button-group/upload-collection-button-group.component.mjs +67 -1
  79. package/esm2022/upload-collection/upload-collection-form-item/upload-collection-form-item.component.mjs +12 -1
  80. package/feed-list-item/components/item/feed-list-item.component.d.ts +8 -2
  81. package/fesm2022/fundamental-ngx-core-action-bar.mjs +9 -2
  82. package/fesm2022/fundamental-ngx-core-action-bar.mjs.map +1 -1
  83. package/fesm2022/fundamental-ngx-core-alert.mjs +58 -13
  84. package/fesm2022/fundamental-ngx-core-alert.mjs.map +1 -1
  85. package/fesm2022/fundamental-ngx-core-avatar.mjs +1 -1
  86. package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
  87. package/fesm2022/fundamental-ngx-core-bar.mjs +14 -6
  88. package/fesm2022/fundamental-ngx-core-bar.mjs.map +1 -1
  89. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +9 -10
  90. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  91. package/fesm2022/fundamental-ngx-core-carousel.mjs +32 -3
  92. package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
  93. package/fesm2022/fundamental-ngx-core-combobox.mjs +1 -1
  94. package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
  95. package/fesm2022/fundamental-ngx-core-content-density.mjs +15 -14
  96. package/fesm2022/fundamental-ngx-core-content-density.mjs.map +1 -1
  97. package/fesm2022/fundamental-ngx-core-date-picker.mjs +102 -9
  98. package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
  99. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +77 -7
  100. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  101. package/fesm2022/fundamental-ngx-core-dialog.mjs +23 -13
  102. package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
  103. package/fesm2022/fundamental-ngx-core-feed-list-item.mjs +22 -0
  104. package/fesm2022/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
  105. package/fesm2022/fundamental-ngx-core-form.mjs +20 -4
  106. package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
  107. package/fesm2022/fundamental-ngx-core-list.mjs +35 -0
  108. package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
  109. package/fesm2022/fundamental-ngx-core-menu.mjs +1 -1
  110. package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
  111. package/fesm2022/fundamental-ngx-core-message-box.mjs +24 -15
  112. package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
  113. package/fesm2022/fundamental-ngx-core-message-strip.mjs +27 -14
  114. package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
  115. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +63 -64
  116. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  117. package/fesm2022/fundamental-ngx-core-multi-input.mjs +1 -1
  118. package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
  119. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs +9 -10
  120. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  121. package/fesm2022/fundamental-ngx-core-pagination.mjs +139 -1
  122. package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
  123. package/fesm2022/fundamental-ngx-core-popover.mjs +51 -16
  124. package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
  125. package/fesm2022/fundamental-ngx-core-product-switch.mjs +10 -0
  126. package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
  127. package/fesm2022/fundamental-ngx-core-quick-view.mjs +1 -1
  128. package/fesm2022/fundamental-ngx-core-quick-view.mjs.map +1 -1
  129. package/fesm2022/fundamental-ngx-core-segmented-button.mjs +17 -19
  130. package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
  131. package/fesm2022/fundamental-ngx-core-select.mjs +16 -9
  132. package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
  133. package/fesm2022/fundamental-ngx-core-shellbar.mjs +22 -10
  134. package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
  135. package/fesm2022/fundamental-ngx-core-side-navigation.mjs +11 -2
  136. package/fesm2022/fundamental-ngx-core-side-navigation.mjs.map +1 -1
  137. package/fesm2022/fundamental-ngx-core-slider.mjs +82 -12
  138. package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
  139. package/fesm2022/fundamental-ngx-core-split-button.mjs +32 -13
  140. package/fesm2022/fundamental-ngx-core-split-button.mjs.map +1 -1
  141. package/fesm2022/fundamental-ngx-core-splitter.mjs +23 -5
  142. package/fesm2022/fundamental-ngx-core-splitter.mjs.map +1 -1
  143. package/fesm2022/fundamental-ngx-core-step-input.mjs +45 -23
  144. package/fesm2022/fundamental-ngx-core-step-input.mjs.map +1 -1
  145. package/fesm2022/fundamental-ngx-core-switch.mjs +24 -2
  146. package/fesm2022/fundamental-ngx-core-switch.mjs.map +1 -1
  147. package/fesm2022/fundamental-ngx-core-table.mjs +26 -30
  148. package/fesm2022/fundamental-ngx-core-table.mjs.map +1 -1
  149. package/fesm2022/fundamental-ngx-core-tabs.mjs +51 -31
  150. package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
  151. package/fesm2022/fundamental-ngx-core-text.mjs +22 -0
  152. package/fesm2022/fundamental-ngx-core-text.mjs.map +1 -1
  153. package/fesm2022/fundamental-ngx-core-time.mjs +1 -1
  154. package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
  155. package/fesm2022/fundamental-ngx-core-token.mjs +36 -13
  156. package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
  157. package/fesm2022/fundamental-ngx-core-toolbar.mjs +31 -24
  158. package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
  159. package/fesm2022/fundamental-ngx-core-tree.mjs +38 -38
  160. package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
  161. package/fesm2022/fundamental-ngx-core-upload-collection.mjs +77 -0
  162. package/fesm2022/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  163. package/form/form-label/form-label.component.d.ts +8 -2
  164. package/fundamental-ngx-core-v0.44.0-rc.4.tgz +0 -0
  165. package/list/list-item/list-item.component.d.ts +16 -4
  166. package/message-box/directives/message-box-decisive-button.directive.d.ts +2 -0
  167. package/message-box/message-box-container/message-box-container.component.d.ts +4 -6
  168. package/message-box/message-box-footer-button/message-box-footer-button.component.d.ts +2 -0
  169. package/message-strip/alert/message-strip-alert-container-footer/message-strip-alert-container-footer.component.d.ts +1 -1
  170. package/message-strip/auto-dismiss-message-strip.directive.d.ts +3 -3
  171. package/message-strip/message-strip.component.d.ts +4 -1
  172. package/multi-combobox/base-multi-combobox.class.d.ts +30 -30
  173. package/multi-combobox/multi-combobox.component.d.ts +17 -18
  174. package/multi-combobox/select-all-toggler/select-all-toggler.component.d.ts +1 -1
  175. package/overflow-layout/directives/overflow-layout-popover-content.directive.d.ts +5 -6
  176. package/package.json +3 -3
  177. package/pagination/pagination.component.d.ts +44 -11
  178. package/popover/base/base-popover.class.d.ts +12 -3
  179. package/popover/popover.component.d.ts +8 -5
  180. package/product-switch/product-switch/product-switch.component.d.ts +4 -1
  181. package/schematics/add-dependencies/index.js +4 -4
  182. package/segmented-button/segmented-button.component.d.ts +6 -7
  183. package/select/select.component.d.ts +9 -6
  184. package/shellbar/shellbar-actions/shellbar-actions.component.d.ts +6 -3
  185. package/shellbar/shellbar.component.d.ts +1 -1
  186. package/slider/slider.component.d.ts +13 -4
  187. package/split-button/split-button.component.d.ts +11 -6
  188. package/splitter/splitter.component.d.ts +5 -2
  189. package/step-input/step-input.component.d.ts +12 -6
  190. package/switch/switch.component.d.ts +10 -4
  191. package/table/directives/table-row.directive.d.ts +2 -4
  192. package/table/table.component.d.ts +3 -4
  193. package/tabs/tab-item-expand/tab-item-expand.component.d.ts +4 -1
  194. package/tabs/tab-list.component.d.ts +10 -8
  195. package/text/text.component.d.ts +8 -2
  196. package/time/i18n/time-i18n.d.ts +2 -2
  197. package/token/token.component.d.ts +13 -7
  198. package/toolbar/toolbar.component.d.ts +10 -7
  199. package/tree/components/tree-item/tree-item.component.d.ts +28 -28
  200. package/tree/tree.component.d.ts +7 -7
  201. package/upload-collection/upload-collection-button-group/upload-collection-button-group.component.d.ts +24 -6
  202. package/upload-collection/upload-collection-form-item/upload-collection-form-item.component.d.ts +6 -3
  203. package/fundamental-ngx-core-v0.44.0-rc.2.tgz +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-toolbar.mjs","sources":["../../../../libs/core/src/lib/toolbar/abstract-toolbar-item.class.ts","../../../../libs/core/src/lib/toolbar/toolbar-spacer.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-separator.component.ts","../../../../libs/core/src/lib/toolbar/toolbar.component.ts","../../../../libs/core/src/lib/toolbar/toolbar.component.html","../../../../libs/core/src/lib/toolbar/toolbar-item.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-label.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-overflow-button.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-overflow-button-menu.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-form-label.directive.ts","../../../../libs/core/src/lib/toolbar/deprecated-toolbar-size.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar.module.ts","../../../../libs/core/src/lib/toolbar/fundamental-ngx-core-toolbar.ts"],"sourcesContent":["import { OverflowPriority } from '@fundamental-ngx/cdk/utils';\n\nexport abstract class ToolbarItem {\n abstract element: HTMLElement;\n abstract isSpacer: boolean;\n abstract width: number;\n abstract priority: OverflowPriority;\n abstract group: number;\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-toolbar-spacer'\n})\nexport class ToolbarSpacerDirective {\n /** Determines the width of spacer when fixed property is set to true\n * Allowed values: absolute and relative metrics\n * Default value: 0px\n */\n @HostBinding('style.width')\n @Input()\n width = '0px';\n\n /** Property allows user to pass additional class\n */\n @Input()\n class = '';\n\n /** Determines if spacer should take only size taken from width property\n * Default value: false\n * Default behaviour: spacer takes remaining space automatically\n */\n @Input()\n fixed = false;\n\n /** @hidden */\n @HostBinding('attr.class')\n get css(): string {\n return `fd-toolbar__spacer ${this.fixed ? 'fd-toolbar__spacer--fixed' : ''} ${this.class}`;\n }\n}\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'fd-toolbar-separator',\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-toolbar__separator'\n }\n})\nexport class ToolbarSeparatorComponent {}\n","import {\n AfterContentInit,\n AfterViewChecked,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n NgZone,\n Optional,\n QueryList,\n SkipSelf,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { DYNAMIC_PAGE_HEADER_TOKEN, DynamicPageHeader } from '@fundamental-ngx/core/shared';\n\nimport {\n applyCssClass,\n CssClassBuilder,\n DestroyedService,\n OVERFLOW_PRIORITY_SCORE,\n OverflowPriority,\n ResizeObserverService\n} from '@fundamental-ngx/cdk/utils';\nimport { BehaviorSubject, combineLatest, map, Observable, startWith, takeUntil } from 'rxjs';\nimport { TitleToken } from '@fundamental-ngx/core/title';\nimport {\n ContentDensityMode,\n ContentDensityObserver,\n contentDensityObserverProviders\n} from '@fundamental-ngx/core/content-density';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\n\nconst ELEMENT_MARGIN = 8;\nconst OVERFLOW_SPACE = 50 + 2 * ELEMENT_MARGIN;\nconst MAX_CONTENT_SIZE = 99999999;\n\nexport type ToolbarType = 'solid' | 'transparent' | 'auto' | 'info';\n\nexport const enum OverflowPriorityEnum {\n ALWAYS = 'always',\n NEVER = 'never',\n LOW = 'low',\n HIGH = 'high',\n DISAPPEAR = 'disappear'\n}\n\n@Component({\n selector: 'fd-toolbar',\n templateUrl: './toolbar.component.html',\n styleUrls: ['./toolbar.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n contentDensityObserverProviders({\n defaultContentDensity: ContentDensityMode.COMPACT\n }),\n DestroyedService\n ]\n})\nexport class ToolbarComponent implements AfterViewInit, AfterViewChecked, CssClassBuilder, AfterContentInit {\n /**\n * The ID of the toolbar title\n * */\n @Input()\n titleId: string;\n\n /** Property allows user to pass additional class\n */\n @Input()\n class: string;\n\n /** Determines if overflow button should be visible\n * Default value: false\n */\n @Input()\n set shouldOverflow(val: boolean) {\n this._shouldOverflow = val;\n this.shouldOverflow$.next(val);\n }\n\n get shouldOverflow(): boolean {\n return this._shouldOverflow;\n }\n\n /** Determines the type of toolbar\n * Available options: 'solid' | 'transparent' | 'auto' | 'info'\n * Default value: 'solid'\n */\n @Input()\n fdType: ToolbarType = 'solid';\n /** @deprecated */\n @Input()\n hasTitle = false;\n\n /** The title for the toolbar. */\n @Input()\n title: string;\n\n /** Determines if toolbar should has active state (only when fdType == 'info')\n * Default value: false\n */\n @Input()\n active = false;\n\n /** Determines if toolbar should clear border bottom\n * Default value: false\n */\n @Input()\n clearBorder = false;\n\n /** Whether all items should be inside overflow */\n @Input()\n forceOverflow = false;\n\n /** Tabindex of the toolbar element, to be used when fdType=\"info\" */\n @Input()\n tabindex = -1;\n\n /** @hidden */\n @ViewChild('toolbar')\n toolbar: ElementRef;\n\n /** @hidden */\n @ViewChild('titleElement')\n titleElement: ElementRef<HTMLHeadElement>;\n\n /** @hidden */\n @ContentChildren(forwardRef(() => ToolbarItem))\n toolbarItems: QueryList<ToolbarItem>;\n\n /** @hidden */\n @ContentChild(TitleToken)\n set titleComponent(title: TitleToken | null) {\n this._titleComponent$.next(title);\n }\n\n get titleComponent(): TitleToken | null {\n return this._titleComponent$.value;\n }\n\n /** @hidden */\n overflowItems$: Observable<ToolbarItem[]>;\n\n /** @hidden */\n overflownItems: ToolbarItem[] = [];\n\n /** @hidden */\n private _titleComponent$: BehaviorSubject<TitleToken | null> = new BehaviorSubject<TitleToken | null>(null);\n\n /** @hidden */\n private _refreshOverflow$ = new BehaviorSubject<void>(undefined);\n\n /** @hidden */\n private get _toolbarWidth(): number {\n return (this.toolbar.nativeElement as HTMLElement).clientWidth - OVERFLOW_SPACE;\n }\n\n /** @hidden */\n private _shouldOverflow = false;\n\n /** @hidden */\n private _initialised = false;\n\n /** @hidden */\n private shouldOverflow$ = new BehaviorSubject<boolean>(false);\n\n /** @hidden */\n constructor(\n private _cd: ChangeDetectorRef,\n readonly _contentDensityObserver: ContentDensityObserver,\n private readonly _destroy$: DestroyedService,\n private resizeObserverService: ResizeObserverService,\n private ngZone: NgZone,\n @Optional() @SkipSelf() @Inject(DYNAMIC_PAGE_HEADER_TOKEN) private _dynamicPageHeader?: DynamicPageHeader\n ) {\n _contentDensityObserver.subscribe();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.overflowItems$ = combineLatest([\n this.resizeObserverService.observe(this.toolbar.nativeElement).pipe(map(() => this._toolbarWidth)),\n this.toolbarItems.changes.pipe(\n startWith(this.toolbarItems),\n map((toolbarItems) => toolbarItems.toArray())\n ),\n this._titleComponent$.pipe(\n map((titleComponent): HTMLElement | null => {\n if (!titleComponent) {\n return this.titleElement?.nativeElement;\n }\n return titleComponent.elementRef.nativeElement;\n })\n ),\n this.shouldOverflow$,\n this._refreshOverflow$\n ]).pipe(\n map(([toolbarWidth, toolbarItems, titleElement, shouldOverflow]) => {\n if (shouldOverflow) {\n const _sortedByPriorityAndGroupItems = this._getSortedByPriorityAndGroupItems(toolbarItems);\n const overflowItems: ToolbarItem[] = [];\n _sortedByPriorityAndGroupItems.reduce((_contentWidth, toolbarItem) => {\n const itemWidth = toolbarItem.width;\n const itemPriority = toolbarItem.priority;\n const shouldItemBeRemovedByWidth = itemWidth + _contentWidth > toolbarWidth;\n const shouldAlwaysBeInOverflow =\n itemPriority === OverflowPriorityEnum.ALWAYS || this.forceOverflow;\n const shouldNeverBeInOverflow = itemPriority === OverflowPriorityEnum.NEVER;\n if ((shouldItemBeRemovedByWidth && !shouldNeverBeInOverflow) || shouldAlwaysBeInOverflow) {\n overflowItems.push(toolbarItem);\n return shouldAlwaysBeInOverflow ? _contentWidth : MAX_CONTENT_SIZE;\n } else {\n return _contentWidth + itemWidth;\n }\n }, titleElement?.clientWidth || 0);\n // Hide orphans\n for (const toolbarItem of overflowItems) {\n const groupedCollection = this._getGroupedCollection(toolbarItems);\n const groupedCollectionPriorities = this._getGroupedCollectionPriority(groupedCollection);\n const group = toolbarItem.group;\n const itemPriority = toolbarItem.priority;\n if (group !== 0 && itemPriority !== OverflowPriorityEnum.DISAPPEAR) {\n const itemsFromCurrentGroup =\n this._getElementsFromCurrentGroup(\n group,\n groupedCollection,\n groupedCollectionPriorities\n ) || [];\n itemsFromCurrentGroup.forEach((i) => {\n if (overflowItems.indexOf(i) === -1) {\n overflowItems.push(i);\n }\n });\n }\n }\n return overflowItems.sort((a, b) => this._sortPriorities(a.priority, b.priority));\n }\n return [];\n }),\n takeUntil(this._destroy$)\n );\n this.overflowItems$.subscribe((items) => {\n this.overflownItems = items;\n this._cd.detectChanges();\n });\n this._initialised = true;\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterViewChecked(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n if (this.titleComponent) {\n this.titleComponent.elementRef?.nativeElement.classList.add('fd-toolbar__title');\n this.buildComponentCssClass();\n }\n }\n\n /** Change detection reference */\n detectChanges(): void {\n this._cd.detectChanges();\n }\n\n /** @hidden */\n get elementRef(): ElementRef {\n return this.toolbar;\n }\n\n /** @hidden */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [\n 'fd-toolbar',\n `fd-toolbar--${this.fdType}`,\n `${this.active && this.fdType === 'info' ? 'fd-toolbar--active' : ''}`,\n `${this.hasTitle || this.title || this.titleComponent ? 'fd-toolbar--title' : ''}`,\n `${this.clearBorder ? 'fd-toolbar--clear' : ''}`,\n `${this._dynamicPageHeader ? 'fd-dynamic-page__toolbar' : ''}`\n ];\n }\n\n /** Method triggering collapsible toolbar */\n updateCollapsibleItems(): void {\n this._refreshOverflow$.next();\n }\n\n /** @hidden Get group number with the lowest priority.\n * Uses for detecting a group of elements which would be hidden from the toolbar.\n * */\n private _getLowestPriorityFromGroup(\n itemGroup: number,\n groupedCollectionPriority?: Record<number, OverflowPriority>\n ): number {\n const priority = groupedCollectionPriority;\n if (!priority || !OVERFLOW_PRIORITY_SCORE.get(priority[itemGroup])) {\n return itemGroup;\n }\n\n const groups = Object.keys(priority);\n\n return groups.reduce((lowestGroup, currentGroup) => {\n const lowestGroupPriority = priority[lowestGroup];\n const currentGroupPriority = priority[currentGroup];\n if (\n OVERFLOW_PRIORITY_SCORE.get(currentGroupPriority)! < OVERFLOW_PRIORITY_SCORE.get(lowestGroupPriority)!\n ) {\n return +currentGroup;\n }\n\n return lowestGroup;\n }, itemGroup as number);\n }\n\n /** @hidden */\n private _getElementsFromCurrentGroup(\n itemGroup: number,\n groupedCollection?: Record<number, ToolbarItem[]>,\n groupedCollectionPriority?: Record<number, OverflowPriority>\n ): ToolbarItem[] {\n const lowestPriorityFromGroup = this._getLowestPriorityFromGroup(itemGroup, groupedCollectionPriority);\n if (!groupedCollection || !groupedCollectionPriority) {\n return [];\n }\n let itemsToRemove = groupedCollection[lowestPriorityFromGroup];\n\n delete groupedCollection[lowestPriorityFromGroup];\n delete groupedCollectionPriority[lowestPriorityFromGroup];\n\n if (lowestPriorityFromGroup !== itemGroup) {\n itemsToRemove = [...itemsToRemove, ...groupedCollection[itemGroup]];\n delete groupedCollection[itemGroup];\n delete groupedCollectionPriority[itemGroup];\n }\n\n return itemsToRemove;\n }\n\n /** @hidden Get the object with grouped arrays of elements. */\n private _getGroupedCollection(toolbarItems: ToolbarItem[]): Record<number, ToolbarItem[]> {\n return toolbarItems.reduce((acc, item) => {\n const itemPrio = item.priority;\n const itemGroup = item.group;\n if (\n itemPrio === OverflowPriorityEnum.NEVER ||\n itemPrio === OverflowPriorityEnum.ALWAYS ||\n itemGroup === 0\n ) {\n return acc;\n }\n if (!acc[itemGroup]) {\n acc[itemGroup] = [];\n }\n acc[itemGroup].push(item);\n return acc;\n }, {});\n }\n\n /** @hidden Get the object with the highest priority for each group of elements. */\n private _getGroupedCollectionPriority(\n groupedCollection: Record<number, ToolbarItem[]>\n ): Record<number, OverflowPriority> {\n const groups = Object.keys(groupedCollection);\n\n return groups.reduce((acc, itemGroup) => {\n const sortedPriorities = groupedCollection![itemGroup]\n .map((i) => i.priority)\n .filter((prio) => prio !== OverflowPriorityEnum.ALWAYS && prio !== OverflowPriorityEnum.NEVER)\n .sort(this._sortPriorities);\n\n acc[itemGroup] = sortedPriorities[0];\n\n return acc;\n }, {});\n }\n\n /** @hidden Sort priorities of elements/groups. */\n private _sortPriorities(a: OverflowPriority, b: OverflowPriority): number {\n return OVERFLOW_PRIORITY_SCORE.get(b)! - OVERFLOW_PRIORITY_SCORE.get(a)!;\n }\n\n /** @hidden Sort by group and priority and initial position */\n private _getSortedByPriorityAndGroupItems(toolbarItems: ToolbarItem[]): ToolbarItem[] {\n const notSorted = toolbarItems.map((element, index) => ({ element, index }));\n\n const groups = notSorted.reduce((gr, item) => {\n let groupId = item.element.group;\n const itemPrio = item.element.priority;\n if (itemPrio === OverflowPriorityEnum.NEVER || itemPrio === OverflowPriorityEnum.ALWAYS) {\n groupId = 0;\n }\n\n if (!gr[groupId]) {\n gr[groupId] = [];\n }\n\n gr[groupId].push(item);\n\n return gr;\n }, {});\n\n const groupIds = Object.keys(groups)\n .map((g) => parseInt(g, 10))\n .filter((g) => g !== 0);\n\n return groupIds\n .map((g) => {\n let minIndex = Number.MAX_SAFE_INTEGER;\n let maxPriority = 0;\n for (const item of groups[g]) {\n minIndex = Math.min(minIndex, item.index);\n maxPriority = Math.max(\n maxPriority,\n OVERFLOW_PRIORITY_SCORE.get(item.element.priority) ?? -Infinity\n );\n }\n\n return { group: groups[g].map(({ element }) => element), minIndex, maxPriority };\n })\n .concat(\n !groups[0]\n ? []\n : groups[0].map((item) => ({\n group: [item.element],\n maxPriority: OVERFLOW_PRIORITY_SCORE.get(item.element.priority),\n minIndex: item.index\n }))\n )\n .sort((a, b) => b.maxPriority - a.maxPriority || a.minIndex - b.minIndex)\n .reduce((arr, i) => arr.concat(i.group), []);\n }\n}\n","<div #toolbar [tabindex]=\"tabindex\" [class.fd-toolbar--cozy]=\"_contentDensityObserver.isCozy$ | async\">\n <h4 *ngIf=\"title\" class=\"fd-title fd-title--h4 fd-toolbar__title\" [id]=\"titleId\" #titleElement>{{ title }}</h4>\n\n <ng-content></ng-content>\n\n <ng-container *ngIf=\"overflownItems.length > 0\">\n <fd-toolbar-spacer></fd-toolbar-spacer>\n <fd-toolbar-separator></fd-toolbar-separator>\n <fd-popover placement=\"bottom-end\" [noArrow]=\"true\" class=\"fd-popover\">\n <fd-popover-control>\n <button\n fd-button\n title=\"More\"\n aria-label=\"More\"\n aria-haspopup=\"true\"\n fdType=\"transparent\"\n glyph=\"overflow\"\n ></button>\n </fd-popover-control>\n\n <fd-popover-body>\n <div class=\"fd-toolbar__overflow\">\n <ng-container *ngFor=\"let overflowedItem of overflownItems\">\n <fdk-dynamic-portal\n [domElement]=\"overflowedItem.element\"\n [style.display]=\"overflowedItem.priority === 'disappear' ? 'none' : 'flex'\"\n [style.flex-direction]=\"overflowedItem.priority === 'disappear' ? undefined : 'column'\"\n >\n </fdk-dynamic-portal>\n </ng-container>\n </div>\n </fd-popover-body>\n </fd-popover>\n </ng-container>\n</div>\n","import { Directive, ElementRef, forwardRef, Input } from '@angular/core';\nimport { OverflowPriority } from '@fundamental-ngx/cdk/utils';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport { OverflowPriorityEnum } from './toolbar.component';\n\n@Directive({\n selector: '[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]',\n providers: [{ provide: ToolbarItem, useExisting: forwardRef(() => ToolbarItemDirective) }]\n})\nexport class ToolbarItemDirective implements ToolbarItem {\n /** @hidden */\n private lastWidth = 0;\n /** The priority of the item. */\n @Input()\n fdOverflowPriority: OverflowPriority = OverflowPriorityEnum.HIGH;\n /** The group number of the item. */\n @Input()\n fdOverflowGroup = 0;\n\n /** @hidden */\n get group(): number {\n return this.fdOverflowGroup;\n }\n\n /** @hidden */\n get priority(): OverflowPriority {\n return this.fdOverflowPriority;\n }\n\n /** @hidden */\n get element(): HTMLElement {\n return this.elementRef.nativeElement;\n }\n\n /** @hidden */\n get isSpacer(): boolean {\n return this.element.classList.contains('fd-toolbar__spacer');\n }\n\n /** @hidden */\n get width(): number {\n if (!this.element.clientWidth) {\n return this.lastWidth;\n }\n this.lastWidth = this.element.clientWidth + 8; // ELEMENT_MARGIN\n return this.lastWidth;\n }\n\n /** @hidden */\n constructor(public elementRef: ElementRef) {}\n}\n","import { Directive } from '@angular/core';\n\nimport { ToolbarItemDirective } from './toolbar-item.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-toolbar-label]',\n host: {\n class: 'fd-label fd-toolbar__overflow-label'\n }\n})\nexport class ToolbarLabelDirective extends ToolbarItemDirective {}\n","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\n\n@Directive({\n selector: '[fdToolbarOverflowButton], [fd-toolbar-overflow-button]',\n host: {\n class: 'fd-toolbar__overflow-button'\n }\n})\nexport class ToolbarOverflowButtonDirective extends ToolbarItemDirective {}\n","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\n\n@Directive({\n selector: '[fdToolbarOverflowButtonMenu], [fd-toolbar-overflow-button-menu]',\n host: {\n class: 'fd-toolbar__overflow-button--menu'\n }\n})\nexport class ToolbarOverflowButtonMenuDirective extends ToolbarItemDirective {}\n","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-toolbar-form-label]',\n host: {\n class: 'fd-form-label fd-toolbar__overflow-form-label fd-toolbar__overflow-form-label--text'\n }\n})\nexport class ToolbarFormLabelDirective extends ToolbarItemDirective {}\n","import { Directive, forwardRef, Input, isDevMode, OnDestroy } from '@angular/core';\nimport {\n CONTENT_DENSITY_DIRECTIVE,\n ContentDensityMode,\n LocalContentDensityMode\n} from '@fundamental-ngx/core/content-density';\nimport { BehaviorSubject } from 'rxjs';\nimport { ModuleDeprecation } from '@fundamental-ngx/cdk/utils';\n\ntype ToolbarSize = 'cozy' | 'compact' | 'condensed' | null;\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-toolbar[size]',\n providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedToolbarSizeDirective)\n }\n ]\n})\nexport class DeprecatedToolbarSizeDirective\n extends BehaviorSubject<LocalContentDensityMode>\n implements OnDestroy, ModuleDeprecation\n{\n /** Size of the toolbar. */\n @Input()\n set size(value: ToolbarSize) {\n switch (value) {\n case 'cozy':\n this.next(ContentDensityMode.COZY);\n break;\n case 'compact':\n this.next(ContentDensityMode.COMPACT);\n break;\n case 'condensed':\n this.next(ContentDensityMode.CONDENSED);\n break;\n default:\n this.next(ContentDensityMode.COMPACT);\n }\n }\n\n /** @hidden */\n readonly message: string;\n\n /** @hidden */\n readonly alternative = {\n name: 'Use [fdContentDensity] directive instead',\n link: ['/core', 'content-density']\n };\n\n /** @hidden */\n constructor() {\n super(ContentDensityMode.COMPACT);\n this.message = `Usage of fd-toolbar[size] is deprecated`;\n if (isDevMode()) {\n console.warn(`${this.message}. Use [fdContentDensity] directive instead.`);\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.complete();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { ToolbarComponent } from './toolbar.component';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\nimport { ToolbarLabelDirective } from './toolbar-label.directive';\nimport { ToolbarOverflowButtonDirective } from './toolbar-overflow-button.directive';\nimport { ToolbarOverflowButtonMenuDirective } from './toolbar-overflow-button-menu.directive';\nimport { ToolbarFormLabelDirective } from './toolbar-form-label.directive';\nimport { DeprecatedToolbarSizeDirective } from './deprecated-toolbar-size.directive';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { DynamicPortalComponent } from '@fundamental-ngx/cdk/utils';\n\nconst components = [\n ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective,\n DeprecatedToolbarSizeDirective\n];\n\n@NgModule({\n declarations: [...components],\n imports: [CommonModule, ButtonModule, PopoverModule, ContentDensityModule, DynamicPortalComponent],\n exports: [...components, ContentDensityModule]\n})\nexport class ToolbarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i6.ToolbarSpacerDirective","i7.ToolbarSeparatorComponent"],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-toolbar.mjs","sources":["../../../../libs/core/src/lib/toolbar/abstract-toolbar-item.class.ts","../../../../libs/core/src/lib/toolbar/toolbar-spacer.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-separator.component.ts","../../../../libs/core/src/lib/toolbar/toolbar.component.ts","../../../../libs/core/src/lib/toolbar/toolbar.component.html","../../../../libs/core/src/lib/toolbar/toolbar-item.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-label.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-overflow-button.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-overflow-button-menu.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar-form-label.directive.ts","../../../../libs/core/src/lib/toolbar/deprecated-toolbar-size.directive.ts","../../../../libs/core/src/lib/toolbar/toolbar.module.ts","../../../../libs/core/src/lib/toolbar/fundamental-ngx-core-toolbar.ts"],"sourcesContent":["import { OverflowPriority } from '@fundamental-ngx/cdk/utils';\n\nexport abstract class ToolbarItem {\n abstract element: HTMLElement;\n abstract isSpacer: boolean;\n abstract width: number;\n abstract priority: OverflowPriority;\n abstract group: number;\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-toolbar-spacer'\n})\nexport class ToolbarSpacerDirective {\n /** Determines the width of spacer when fixed property is set to true\n * Allowed values: absolute and relative metrics\n * Default value: 0px\n */\n @HostBinding('style.width')\n @Input()\n width = '0px';\n\n /** Property allows user to pass additional class\n */\n @Input()\n class = '';\n\n /** Determines if spacer should take only size taken from width property\n * Default value: false\n * Default behaviour: spacer takes remaining space automatically\n */\n @Input()\n fixed = false;\n\n /** @hidden */\n @HostBinding('attr.class')\n get css(): string {\n return `fd-toolbar__spacer ${this.fixed ? 'fd-toolbar__spacer--fixed' : ''} ${this.class}`;\n }\n}\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'fd-toolbar-separator',\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-toolbar__separator'\n }\n})\nexport class ToolbarSeparatorComponent {}\n","import {\n AfterContentInit,\n AfterViewChecked,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n DestroyRef,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n NgZone,\n Optional,\n QueryList,\n SkipSelf,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { DYNAMIC_PAGE_HEADER_TOKEN, DynamicPageHeader } from '@fundamental-ngx/core/shared';\n\nimport {\n applyCssClass,\n CssClassBuilder,\n OVERFLOW_PRIORITY_SCORE,\n OverflowPriority,\n ResizeObserverService\n} from '@fundamental-ngx/cdk/utils';\nimport { BehaviorSubject, combineLatest, map, Observable, startWith } from 'rxjs';\nimport { TitleToken } from '@fundamental-ngx/core/title';\nimport {\n ContentDensityMode,\n ContentDensityObserver,\n contentDensityObserverProviders\n} from '@fundamental-ngx/core/content-density';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nconst ELEMENT_MARGIN = 8;\nconst OVERFLOW_SPACE = 50 + 2 * ELEMENT_MARGIN;\nconst MAX_CONTENT_SIZE = 99999999;\n\nexport type ToolbarType = 'solid' | 'transparent' | 'auto' | 'info';\n\nexport const enum OverflowPriorityEnum {\n ALWAYS = 'always',\n NEVER = 'never',\n LOW = 'low',\n HIGH = 'high',\n DISAPPEAR = 'disappear'\n}\n\n@Component({\n selector: 'fd-toolbar',\n templateUrl: './toolbar.component.html',\n styleUrls: ['./toolbar.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n contentDensityObserverProviders({\n defaultContentDensity: ContentDensityMode.COMPACT\n })\n ]\n})\nexport class ToolbarComponent implements AfterViewInit, AfterViewChecked, CssClassBuilder, AfterContentInit {\n /**\n * The ID of the toolbar title\n * */\n @Input()\n titleId: string;\n\n /** Property allows user to pass additional class\n */\n @Input()\n class: string;\n\n /** Determines if overflow button should be visible\n * Default value: false\n */\n @Input()\n set shouldOverflow(val: boolean) {\n this._shouldOverflow = val;\n this.shouldOverflow$.next(val);\n }\n\n get shouldOverflow(): boolean {\n return this._shouldOverflow;\n }\n\n /** Determines the type of toolbar\n * Available options: 'solid' | 'transparent' | 'auto' | 'info'\n * Default value: 'solid'\n */\n @Input()\n fdType: ToolbarType = 'solid';\n\n /** @deprecated */\n @Input()\n set hasTitle(value: boolean) {\n console.warn('Property hasTitle is deprecated. ');\n this._hasTitle = value;\n }\n\n get hasTitle(): boolean {\n return this._hasTitle;\n }\n\n /** The title for the toolbar. */\n @Input()\n title: string;\n\n /** Determines if toolbar should has active state (only when fdType == 'info')\n * Default value: false\n */\n @Input()\n active = false;\n\n /** Determines if toolbar should clear border bottom\n * Default value: false\n */\n @Input()\n clearBorder = false;\n\n /** Whether all items should be inside overflow */\n @Input()\n forceOverflow = false;\n\n /** Tabindex of the toolbar element, to be used when fdType=\"info\" */\n @Input()\n tabindex = -1;\n\n /** @hidden */\n @ViewChild('toolbar')\n toolbar: ElementRef;\n\n /** @hidden */\n @ViewChild('titleElement')\n titleElement: ElementRef<HTMLHeadElement>;\n\n /** @hidden */\n @ContentChildren(forwardRef(() => ToolbarItem))\n toolbarItems: QueryList<ToolbarItem>;\n\n /** @hidden */\n @ContentChild(TitleToken)\n set titleComponent(title: TitleToken | null) {\n this._titleComponent$.next(title);\n }\n\n get titleComponent(): TitleToken | null {\n return this._titleComponent$.value;\n }\n\n /** @hidden */\n overflowItems$: Observable<ToolbarItem[]>;\n\n /** @hidden */\n overflownItems: ToolbarItem[] = [];\n\n /** @hidden */\n private _hasTitle = false;\n\n /** @hidden */\n private _titleComponent$: BehaviorSubject<TitleToken | null> = new BehaviorSubject<TitleToken | null>(null);\n\n /** @hidden */\n private _refreshOverflow$ = new BehaviorSubject<void>(undefined);\n\n /** @hidden */\n private get _toolbarWidth(): number {\n return (this.toolbar.nativeElement as HTMLElement).clientWidth - OVERFLOW_SPACE;\n }\n\n /** @hidden */\n private _shouldOverflow = false;\n\n /** @hidden */\n private _initialised = false;\n\n /** @hidden */\n private shouldOverflow$ = new BehaviorSubject<boolean>(false);\n\n /** @hidden */\n constructor(\n private _cd: ChangeDetectorRef,\n readonly _contentDensityObserver: ContentDensityObserver,\n private readonly _destroyRef: DestroyRef,\n private resizeObserverService: ResizeObserverService,\n private ngZone: NgZone,\n @Optional() @SkipSelf() @Inject(DYNAMIC_PAGE_HEADER_TOKEN) private _dynamicPageHeader?: DynamicPageHeader\n ) {\n _contentDensityObserver.subscribe();\n }\n\n /** @hidden */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [\n 'fd-toolbar',\n `fd-toolbar--${this.fdType}`,\n `${this.active && this.fdType === 'info' ? 'fd-toolbar--active' : ''}`,\n `${this.hasTitle || this.title || this.titleComponent ? 'fd-toolbar--title' : ''}`,\n `${this.clearBorder ? 'fd-toolbar--clear' : ''}`,\n `${this._dynamicPageHeader ? 'fd-dynamic-page__toolbar' : ''}`\n ];\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.overflowItems$ = combineLatest([\n this.resizeObserverService.observe(this.toolbar.nativeElement).pipe(map(() => this._toolbarWidth)),\n this.toolbarItems.changes.pipe(\n startWith(this.toolbarItems),\n map((toolbarItems) => toolbarItems.toArray())\n ),\n this._titleComponent$.pipe(\n map((titleComponent): HTMLElement | null => {\n if (!titleComponent) {\n return this.titleElement?.nativeElement;\n }\n return titleComponent.elementRef.nativeElement;\n })\n ),\n this.shouldOverflow$,\n this._refreshOverflow$\n ]).pipe(\n map(([toolbarWidth, toolbarItems, titleElement, shouldOverflow]) => {\n if (shouldOverflow) {\n const _sortedByPriorityAndGroupItems = this._getSortedByPriorityAndGroupItems(toolbarItems);\n const overflowItems: ToolbarItem[] = [];\n _sortedByPriorityAndGroupItems.reduce((_contentWidth, toolbarItem) => {\n const itemWidth = toolbarItem.width;\n const itemPriority = toolbarItem.priority;\n const shouldItemBeRemovedByWidth = itemWidth + _contentWidth > toolbarWidth;\n const shouldAlwaysBeInOverflow =\n itemPriority === OverflowPriorityEnum.ALWAYS || this.forceOverflow;\n const shouldNeverBeInOverflow = itemPriority === OverflowPriorityEnum.NEVER;\n if ((shouldItemBeRemovedByWidth && !shouldNeverBeInOverflow) || shouldAlwaysBeInOverflow) {\n overflowItems.push(toolbarItem);\n return shouldAlwaysBeInOverflow ? _contentWidth : MAX_CONTENT_SIZE;\n } else {\n return _contentWidth + itemWidth;\n }\n }, titleElement?.clientWidth || 0);\n // Hide orphans\n for (const toolbarItem of overflowItems) {\n const groupedCollection = this._getGroupedCollection(toolbarItems);\n const groupedCollectionPriorities = this._getGroupedCollectionPriority(groupedCollection);\n const group = toolbarItem.group;\n const itemPriority = toolbarItem.priority;\n if (group !== 0 && itemPriority !== OverflowPriorityEnum.DISAPPEAR) {\n const itemsFromCurrentGroup =\n this._getElementsFromCurrentGroup(\n group,\n groupedCollection,\n groupedCollectionPriorities\n ) || [];\n itemsFromCurrentGroup.forEach((i) => {\n if (overflowItems.indexOf(i) === -1) {\n overflowItems.push(i);\n }\n });\n }\n }\n return overflowItems.sort((a, b) => this._sortPriorities(a.priority, b.priority));\n }\n return [];\n }),\n takeUntilDestroyed(this._destroyRef)\n );\n this.overflowItems$.subscribe((items) => {\n this.overflownItems = items;\n this._cd.detectChanges();\n });\n this._initialised = true;\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterViewChecked(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n if (this.titleComponent) {\n this.titleComponent.elementRef?.nativeElement.classList.add('fd-toolbar__title');\n this.buildComponentCssClass();\n }\n }\n\n /** Change detection reference */\n detectChanges(): void {\n this._cd.detectChanges();\n }\n\n /** @hidden */\n get elementRef(): ElementRef {\n return this.toolbar;\n }\n\n /** Method triggering collapsible toolbar */\n updateCollapsibleItems(): void {\n this._refreshOverflow$.next();\n }\n\n /** @hidden Get group number with the lowest priority.\n * Uses for detecting a group of elements which would be hidden from the toolbar.\n * */\n private _getLowestPriorityFromGroup(\n itemGroup: number,\n groupedCollectionPriority?: Record<number, OverflowPriority>\n ): number {\n const priority = groupedCollectionPriority;\n if (!priority || !OVERFLOW_PRIORITY_SCORE.get(priority[itemGroup])) {\n return itemGroup;\n }\n\n const groups = Object.keys(priority);\n\n return groups.reduce((lowestGroup, currentGroup) => {\n const lowestGroupPriority = priority[lowestGroup];\n const currentGroupPriority = priority[currentGroup];\n if (\n OVERFLOW_PRIORITY_SCORE.get(currentGroupPriority)! < OVERFLOW_PRIORITY_SCORE.get(lowestGroupPriority)!\n ) {\n return +currentGroup;\n }\n\n return lowestGroup;\n }, itemGroup as number);\n }\n\n /** @hidden */\n private _getElementsFromCurrentGroup(\n itemGroup: number,\n groupedCollection?: Record<number, ToolbarItem[]>,\n groupedCollectionPriority?: Record<number, OverflowPriority>\n ): ToolbarItem[] {\n const lowestPriorityFromGroup = this._getLowestPriorityFromGroup(itemGroup, groupedCollectionPriority);\n if (!groupedCollection || !groupedCollectionPriority) {\n return [];\n }\n let itemsToRemove = groupedCollection[lowestPriorityFromGroup];\n\n delete groupedCollection[lowestPriorityFromGroup];\n delete groupedCollectionPriority[lowestPriorityFromGroup];\n\n if (lowestPriorityFromGroup !== itemGroup) {\n itemsToRemove = [...itemsToRemove, ...groupedCollection[itemGroup]];\n delete groupedCollection[itemGroup];\n delete groupedCollectionPriority[itemGroup];\n }\n\n return itemsToRemove;\n }\n\n /** @hidden Get the object with grouped arrays of elements. */\n private _getGroupedCollection(toolbarItems: ToolbarItem[]): Record<number, ToolbarItem[]> {\n return toolbarItems.reduce((acc, item) => {\n const itemPrio = item.priority;\n const itemGroup = item.group;\n if (\n itemPrio === OverflowPriorityEnum.NEVER ||\n itemPrio === OverflowPriorityEnum.ALWAYS ||\n itemGroup === 0\n ) {\n return acc;\n }\n if (!acc[itemGroup]) {\n acc[itemGroup] = [];\n }\n acc[itemGroup].push(item);\n return acc;\n }, {});\n }\n\n /** @hidden Get the object with the highest priority for each group of elements. */\n private _getGroupedCollectionPriority(\n groupedCollection: Record<number, ToolbarItem[]>\n ): Record<number, OverflowPriority> {\n const groups = Object.keys(groupedCollection);\n\n return groups.reduce((acc, itemGroup) => {\n const sortedPriorities = groupedCollection![itemGroup]\n .map((i) => i.priority)\n .filter((prio) => prio !== OverflowPriorityEnum.ALWAYS && prio !== OverflowPriorityEnum.NEVER)\n .sort(this._sortPriorities);\n\n acc[itemGroup] = sortedPriorities[0];\n\n return acc;\n }, {});\n }\n\n /** @hidden Sort priorities of elements/groups. */\n private _sortPriorities(a: OverflowPriority, b: OverflowPriority): number {\n return OVERFLOW_PRIORITY_SCORE.get(b)! - OVERFLOW_PRIORITY_SCORE.get(a)!;\n }\n\n /** @hidden Sort by group and priority and initial position */\n private _getSortedByPriorityAndGroupItems(toolbarItems: ToolbarItem[]): ToolbarItem[] {\n const notSorted = toolbarItems.map((element, index) => ({ element, index }));\n\n const groups = notSorted.reduce((gr, item) => {\n let groupId = item.element.group;\n const itemPrio = item.element.priority;\n if (itemPrio === OverflowPriorityEnum.NEVER || itemPrio === OverflowPriorityEnum.ALWAYS) {\n groupId = 0;\n }\n\n if (!gr[groupId]) {\n gr[groupId] = [];\n }\n\n gr[groupId].push(item);\n\n return gr;\n }, {});\n\n const groupIds = Object.keys(groups)\n .map((g) => parseInt(g, 10))\n .filter((g) => g !== 0);\n\n return groupIds\n .map((g) => {\n let minIndex = Number.MAX_SAFE_INTEGER;\n let maxPriority = 0;\n for (const item of groups[g]) {\n minIndex = Math.min(minIndex, item.index);\n maxPriority = Math.max(\n maxPriority,\n OVERFLOW_PRIORITY_SCORE.get(item.element.priority) ?? -Infinity\n );\n }\n\n return { group: groups[g].map(({ element }) => element), minIndex, maxPriority };\n })\n .concat(\n !groups[0]\n ? []\n : groups[0].map((item) => ({\n group: [item.element],\n maxPriority: OVERFLOW_PRIORITY_SCORE.get(item.element.priority),\n minIndex: item.index\n }))\n )\n .sort((a, b) => b.maxPriority - a.maxPriority || a.minIndex - b.minIndex)\n .reduce((arr, i) => arr.concat(i.group), []);\n }\n}\n","<div #toolbar [tabindex]=\"tabindex\" [class.fd-toolbar--cozy]=\"_contentDensityObserver.isCozy$ | async\">\n <h4 *ngIf=\"title\" class=\"fd-title fd-title--h4 fd-toolbar__title\" [id]=\"titleId\" #titleElement>{{ title }}</h4>\n\n <ng-content></ng-content>\n\n <ng-container *ngIf=\"overflownItems.length > 0\">\n <fd-toolbar-spacer></fd-toolbar-spacer>\n <fd-toolbar-separator></fd-toolbar-separator>\n <fd-popover placement=\"bottom-end\" [noArrow]=\"true\" class=\"fd-popover\">\n <fd-popover-control>\n <button\n fd-button\n title=\"More\"\n aria-label=\"More\"\n aria-haspopup=\"true\"\n fdType=\"transparent\"\n glyph=\"overflow\"\n ></button>\n </fd-popover-control>\n\n <fd-popover-body>\n <div class=\"fd-toolbar__overflow\">\n <ng-container *ngFor=\"let overflowedItem of overflownItems\">\n <fdk-dynamic-portal\n [domElement]=\"overflowedItem.element\"\n [style.display]=\"overflowedItem.priority === 'disappear' ? 'none' : 'flex'\"\n [style.flex-direction]=\"overflowedItem.priority === 'disappear' ? undefined : 'column'\"\n >\n </fdk-dynamic-portal>\n </ng-container>\n </div>\n </fd-popover-body>\n </fd-popover>\n </ng-container>\n</div>\n","import { Directive, ElementRef, forwardRef, Input } from '@angular/core';\nimport { OverflowPriority } from '@fundamental-ngx/cdk/utils';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport { OverflowPriorityEnum } from './toolbar.component';\n\n@Directive({\n selector: '[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]',\n providers: [{ provide: ToolbarItem, useExisting: forwardRef(() => ToolbarItemDirective) }]\n})\nexport class ToolbarItemDirective implements ToolbarItem {\n /** @hidden */\n private lastWidth = 0;\n /** The priority of the item. */\n @Input()\n fdOverflowPriority: OverflowPriority = OverflowPriorityEnum.HIGH;\n /** The group number of the item. */\n @Input()\n fdOverflowGroup = 0;\n\n /** @hidden */\n get group(): number {\n return this.fdOverflowGroup;\n }\n\n /** @hidden */\n get priority(): OverflowPriority {\n return this.fdOverflowPriority;\n }\n\n /** @hidden */\n get element(): HTMLElement {\n return this.elementRef.nativeElement;\n }\n\n /** @hidden */\n get isSpacer(): boolean {\n return this.element.classList.contains('fd-toolbar__spacer');\n }\n\n /** @hidden */\n get width(): number {\n if (!this.element.clientWidth) {\n return this.lastWidth;\n }\n this.lastWidth = this.element.clientWidth + 8; // ELEMENT_MARGIN\n return this.lastWidth;\n }\n\n /** @hidden */\n constructor(public elementRef: ElementRef) {}\n}\n","import { Directive } from '@angular/core';\n\nimport { ToolbarItemDirective } from './toolbar-item.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-toolbar-label]',\n host: {\n class: 'fd-label fd-toolbar__overflow-label'\n }\n})\nexport class ToolbarLabelDirective extends ToolbarItemDirective {}\n","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\n\n@Directive({\n selector: '[fdToolbarOverflowButton], [fd-toolbar-overflow-button]',\n host: {\n class: 'fd-toolbar__overflow-button'\n }\n})\nexport class ToolbarOverflowButtonDirective extends ToolbarItemDirective {}\n","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\n\n@Directive({\n selector: '[fdToolbarOverflowButtonMenu], [fd-toolbar-overflow-button-menu]',\n host: {\n class: 'fd-toolbar__overflow-button--menu'\n }\n})\nexport class ToolbarOverflowButtonMenuDirective extends ToolbarItemDirective {}\n","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-toolbar-form-label]',\n host: {\n class: 'fd-form-label fd-toolbar__overflow-form-label fd-toolbar__overflow-form-label--text'\n }\n})\nexport class ToolbarFormLabelDirective extends ToolbarItemDirective {}\n","import { Directive, forwardRef, Input, isDevMode, OnDestroy } from '@angular/core';\nimport {\n CONTENT_DENSITY_DIRECTIVE,\n ContentDensityMode,\n LocalContentDensityMode\n} from '@fundamental-ngx/core/content-density';\nimport { BehaviorSubject } from 'rxjs';\nimport { ModuleDeprecation } from '@fundamental-ngx/cdk/utils';\n\ntype ToolbarSize = 'cozy' | 'compact' | 'condensed' | null;\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-toolbar[size]',\n providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedToolbarSizeDirective)\n }\n ]\n})\nexport class DeprecatedToolbarSizeDirective\n extends BehaviorSubject<LocalContentDensityMode>\n implements OnDestroy, ModuleDeprecation\n{\n /** Size of the toolbar. */\n @Input()\n set size(value: ToolbarSize) {\n switch (value) {\n case 'cozy':\n this.next(ContentDensityMode.COZY);\n break;\n case 'compact':\n this.next(ContentDensityMode.COMPACT);\n break;\n case 'condensed':\n this.next(ContentDensityMode.CONDENSED);\n break;\n default:\n this.next(ContentDensityMode.COMPACT);\n }\n }\n\n /** @hidden */\n readonly message: string;\n\n /** @hidden */\n readonly alternative = {\n name: 'Use [fdContentDensity] directive instead',\n link: ['/core', 'content-density']\n };\n\n /** @hidden */\n constructor() {\n super(ContentDensityMode.COMPACT);\n this.message = `Usage of fd-toolbar[size] is deprecated`;\n if (isDevMode()) {\n console.warn(`${this.message}. Use [fdContentDensity] directive instead.`);\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.complete();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { ToolbarComponent } from './toolbar.component';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\nimport { ToolbarLabelDirective } from './toolbar-label.directive';\nimport { ToolbarOverflowButtonDirective } from './toolbar-overflow-button.directive';\nimport { ToolbarOverflowButtonMenuDirective } from './toolbar-overflow-button-menu.directive';\nimport { ToolbarFormLabelDirective } from './toolbar-form-label.directive';\nimport { DeprecatedToolbarSizeDirective } from './deprecated-toolbar-size.directive';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { DynamicPortalComponent } from '@fundamental-ngx/cdk/utils';\n\nconst components = [\n ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective,\n DeprecatedToolbarSizeDirective\n];\n\n@NgModule({\n declarations: [...components],\n imports: [CommonModule, ButtonModule, PopoverModule, ContentDensityModule, DynamicPortalComponent],\n exports: [...components, ContentDensityModule]\n})\nexport class ToolbarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i6.ToolbarSpacerDirective","i7.ToolbarSeparatorComponent"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Directive, Input, Injector, Injectable, EventEmitter, inject, ElementRef, ChangeDetectorRef, Component, ViewEncapsulation, Output, ContentChild, ViewChildren, ContentChildren, HostListener, ChangeDetectionStrategy, HostBinding, ViewChild, NgModule, InjectionToken } from '@angular/core';
2
+ import { Directive, Input, Injector, Injectable, EventEmitter, inject, DestroyRef, ElementRef, ChangeDetectorRef, Component, ViewEncapsulation, Output, ContentChild, ViewChildren, ContentChildren, HostListener, ChangeDetectionStrategy, HostBinding, ViewChild, NgModule, InjectionToken } from '@angular/core';
3
3
  import * as i3 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import * as i6 from '@angular/forms';
6
6
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
7
7
  import * as i4 from '@fundamental-ngx/cdk/utils';
8
- import { uuidv4, DestroyedService, SelectionService, RtlService, KeyUtil, applyCssClass, FDK_SELECTABLE_ITEM_PROVIDER, SelectableItemDirective, RepeatDirective, ClickedBehaviorModule } from '@fundamental-ngx/cdk/utils';
8
+ import { uuidv4, SelectionService, RtlService, KeyUtil, applyCssClass, FDK_SELECTABLE_ITEM_PROVIDER, SelectableItemDirective, RepeatDirective, ClickedBehaviorModule } from '@fundamental-ngx/cdk/utils';
9
9
  import * as i4$1 from '@fundamental-ngx/core/checkbox';
10
10
  import { CheckboxModule } from '@fundamental-ngx/core/checkbox';
11
11
  import * as i7$1 from '@fundamental-ngx/core/radio';
@@ -22,7 +22,8 @@ import { BaseDataSource, DataProvider, isDataSource, DataSourceDirective, FD_DAT
22
22
  import * as i2 from '@fundamental-ngx/cdk/forms';
23
23
  import { CvaDirective } from '@fundamental-ngx/cdk/forms';
24
24
  import { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';
25
- import { isObservable, BehaviorSubject, Subject, distinctUntilChanged, takeUntil, startWith, filter, Subscription, fromEvent, switchMap } from 'rxjs';
25
+ import { isObservable, BehaviorSubject, Subject, distinctUntilChanged, startWith, filter, Subscription, fromEvent, switchMap } from 'rxjs';
26
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
26
27
  import { ButtonModule } from '@fundamental-ngx/core/button';
27
28
  import * as i3$1 from '@fundamental-ngx/core/icon';
28
29
  import { IconModule } from '@fundamental-ngx/core/icon';
@@ -288,7 +289,7 @@ class TreeComponent {
288
289
  /** @hidden */
289
290
  this._dataSourceDirective = inject(DataSourceDirective);
290
291
  /** @hidden */
291
- this._destroy$ = inject(DestroyedService);
292
+ this._destroyRef = inject(DestroyRef);
292
293
  /** @hidden */
293
294
  this.elementRef = inject(ElementRef);
294
295
  /** @hidden */
@@ -322,17 +323,19 @@ class TreeComponent {
322
323
  ngOnInit() {
323
324
  this._openDataStream();
324
325
  this.buildComponentCssClass();
325
- this._treeService.expandedLevel.pipe(distinctUntilChanged(), takeUntil(this._destroy$)).subscribe((level) => {
326
+ this._treeService.expandedLevel
327
+ .pipe(distinctUntilChanged(), takeUntilDestroyed(this._destroyRef))
328
+ .subscribe((level) => {
326
329
  this._expandedLevel = level;
327
330
  this.buildComponentCssClass();
328
331
  this._cdr.detectChanges();
329
332
  });
330
- this._treeService.detectChanges.pipe(takeUntil(this._destroy$)).subscribe(() => {
333
+ this._treeService.detectChanges.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(() => {
331
334
  this._cdr.detectChanges();
332
335
  });
333
336
  if (this.selection !== 'none') {
334
337
  this._selectionService.setValue(this._cvaDirective.value);
335
- this._cvaDirective.ngControl?.valueChanges?.pipe(takeUntil(this._destroy$)).subscribe(() => {
338
+ this._cvaDirective.ngControl?.valueChanges?.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(() => {
336
339
  this._selectionService.setValue(this._cvaDirective.value);
337
340
  });
338
341
  }
@@ -362,7 +365,7 @@ class TreeComponent {
362
365
  if (this.selection !== 'none') {
363
366
  this._selectionService.setValue(this._cvaDirective.value);
364
367
  this._selectionSub = this._cvaDirective.ngControl?.valueChanges
365
- ?.pipe(takeUntil(this._destroy$))
368
+ ?.pipe(takeUntilDestroyed(this._destroyRef))
366
369
  .subscribe(() => {
367
370
  this._selectionService.setValue(this._cvaDirective.value);
368
371
  });
@@ -371,7 +374,7 @@ class TreeComponent {
371
374
  /** @hidden */
372
375
  _listenToTreeItemDirectiveChanges() {
373
376
  this._treeItemDirectives.changes
374
- .pipe(startWith(null), filter(() => this.treeItemDef !== undefined), takeUntil(this._destroy$))
377
+ .pipe(startWith(null), filter(() => this.treeItemDef !== undefined), takeUntilDestroyed(this._destroyRef))
375
378
  .subscribe(() => {
376
379
  this._allItems = this._treeItemDirectives.toArray().map((item) => item.treeItem);
377
380
  const flattenedItems = this._sortTreeItems(this._allItems);
@@ -381,7 +384,7 @@ class TreeComponent {
381
384
  /** @hidden */
382
385
  _listenToTreeItemsChanges() {
383
386
  this._projectedTreeItems.changes
384
- .pipe(startWith(null), filter(() => !this.treeItemDef), takeUntil(this._destroy$))
387
+ .pipe(startWith(null), filter(() => !this.treeItemDef), takeUntilDestroyed(this._destroyRef))
385
388
  .subscribe(() => {
386
389
  this._allItems = this._projectedTreeItems.toArray();
387
390
  const flattenedItems = this._sortTreeItems(this._allItems);
@@ -508,6 +511,15 @@ class TreeComponent {
508
511
  _trackFn(index, item) {
509
512
  return item.id;
510
513
  }
514
+ /**
515
+ * @hidden
516
+ * Select list interface method implementation.
517
+ * Sets value for control value accessor and emits it.
518
+ * @param value value of the selection.
519
+ */
520
+ onChange(value) {
521
+ this._cvaDirective.setValue(value, true);
522
+ }
511
523
  /** @hidden */
512
524
  _expandTreeSection(treeItem) {
513
525
  if (treeItem.expanded) {
@@ -550,21 +562,11 @@ class TreeComponent {
550
562
  }));
551
563
  this._dataSourceDirective.dataSourceProvider?.match();
552
564
  }
553
- /**
554
- * @hidden
555
- * Select list interface method implementation.
556
- * Sets value for control value accessor and emits it.
557
- * @param value value of the selection.
558
- */
559
- onChange(value) {
560
- this._cvaDirective.setValue(value, true);
561
- }
562
565
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: TreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
563
566
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: TreeComponent, selector: "fd-tree", inputs: { class: "class", noBorder: "noBorder", selection: "selection", selectionPlacement: "selectionPlacement", independentSections: "independentSections", navigationIndicator: "navigationIndicator" }, outputs: { dataRequested: "dataRequested", dataReceived: "dataReceived", selectedChange: "selectedChange" }, host: { attributes: { "role": "tree" }, listeners: { "keydown": "_onKeyUp($event)" } }, providers: [
564
567
  contentDensityObserverProviders(),
565
568
  TreeService,
566
569
  SelectionService,
567
- DestroyedService,
568
570
  {
569
571
  provide: FD_DATA_SOURCE_TRANSFORMER,
570
572
  useClass: TreeDataSourceParser
@@ -598,7 +600,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
598
600
  contentDensityObserverProviders(),
599
601
  TreeService,
600
602
  SelectionService,
601
- DestroyedService,
602
603
  {
603
604
  provide: FD_DATA_SOURCE_TRANSFORMER,
604
605
  useClass: TreeDataSourceParser
@@ -717,13 +718,6 @@ class TreeItemComponent extends BaseTreeItem {
717
718
  * Whether to wrap content.
718
719
  */
719
720
  this.wrapContent = false;
720
- /** @hidden */
721
- this._expanded = false;
722
- /**
723
- * @hidden
724
- * Whether the tree item should have a navigation indicator.
725
- */
726
- this._navigationIndicator = false;
727
721
  /**
728
722
  * Event emitted when user clicks on tree item.
729
723
  */
@@ -732,6 +726,11 @@ class TreeItemComponent extends BaseTreeItem {
732
726
  * Event emitted when `expanded` state changes.
733
727
  */
734
728
  this.expandedChange = new EventEmitter();
729
+ /**
730
+ * @hidden
731
+ * Whether the tree item should have a navigation indicator.
732
+ */
733
+ this._navigationIndicator = false;
735
734
  /**
736
735
  * @hidden
737
736
  * Selection state.
@@ -746,14 +745,17 @@ class TreeItemComponent extends BaseTreeItem {
746
745
  /** @hidden */
747
746
  this._totalChildrenLoaded = false;
748
747
  /** @hidden */
748
+ this.elementRef = inject(ElementRef);
749
+ /** @hidden */
750
+ this._expanded = false;
751
+ /** @hidden */
749
752
  this._dsChildrenNumber = 0;
750
753
  /** @hidden */
751
754
  this._clicked$ = new Subject();
752
755
  /** Clicked behavior implementation. */
756
+ // eslint-disable-next-line @typescript-eslint/member-ordering
753
757
  this.clicked = this._clicked$.asObservable();
754
758
  /** @hidden */
755
- this.elementRef = inject(ElementRef);
756
- /** @hidden */
757
759
  this._treeItemDir = inject(TreeItemDirective, {
758
760
  optional: true
759
761
  });
@@ -764,7 +766,7 @@ class TreeItemComponent extends BaseTreeItem {
764
766
  /** @hidden */
765
767
  this._cdr = inject(ChangeDetectorRef);
766
768
  /** @hidden */
767
- this._destroy$ = inject(DestroyedService);
769
+ this._destroyRef = inject(DestroyRef);
768
770
  /** @hidden */
769
771
  this._parentTreeItem = inject(TreeItemComponent, {
770
772
  optional: true,
@@ -774,11 +776,11 @@ class TreeItemComponent extends BaseTreeItem {
774
776
  }
775
777
  /** @hidden */
776
778
  ngOnInit() {
777
- this._treeService.selectionMode.pipe(takeUntil(this._destroy$)).subscribe((model) => {
779
+ this._treeService.selectionMode.pipe(takeUntilDestroyed(this._destroyRef)).subscribe((model) => {
778
780
  this._selectionModel = model;
779
781
  this._cdr.detectChanges();
780
782
  });
781
- this._treeService.navigationIndicator.pipe(takeUntil(this._destroy$)).subscribe((value) => {
783
+ this._treeService.navigationIndicator.pipe(takeUntilDestroyed(this._destroyRef)).subscribe((value) => {
782
784
  this._navigationIndicator = value;
783
785
  this._cdr.detectChanges();
784
786
  });
@@ -786,14 +788,14 @@ class TreeItemComponent extends BaseTreeItem {
786
788
  this._treeService.addExpandableItem(this.id, this.level, this.expanded);
787
789
  this._dataSourceDirective.dataSourceProvider
788
790
  ?.getTotalItems()
789
- .pipe(takeUntil(this._destroy$))
791
+ .pipe(takeUntilDestroyed(this._destroyRef))
790
792
  .subscribe((totalItems) => {
791
793
  this._dsChildrenNumber = totalItems;
792
794
  this._totalChildrenLoaded = true;
793
795
  this._cdr.detectChanges();
794
796
  });
795
797
  this._dataSourceDirective.dataSourceProvider?.dataReceived
796
- .pipe(filter((received) => received), switchMap(() => this._dataSourceDirective.dataChanged$), takeUntil(this._destroy$))
798
+ .pipe(filter((received) => received), switchMap(() => this._dataSourceDirective.dataChanged$), takeUntilDestroyed(this._destroyRef))
797
799
  .subscribe((data) => {
798
800
  this.children = this._treeService.normalizeTreeItems(data, this.id, this.level + 1);
799
801
  this.childrenLoaded = true;
@@ -806,7 +808,7 @@ class TreeItemComponent extends BaseTreeItem {
806
808
  /** @hidden */
807
809
  ngAfterViewInit() {
808
810
  this._projectedTreeItems.changes
809
- .pipe(startWith(null), distinctUntilChanged(), takeUntil(this._destroy$))
811
+ .pipe(startWith(null), distinctUntilChanged(), takeUntilDestroyed(this._destroyRef))
810
812
  .subscribe(() => {
811
813
  this._cdr.detectChanges();
812
814
  this._projectedTreeItems.forEach((treeItem, index) => {
@@ -856,7 +858,6 @@ class TreeItemComponent extends BaseTreeItem {
856
858
  }
857
859
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: TreeItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
858
860
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: TreeItemComponent, selector: "fd-tree-item", inputs: { value: "value", id: "id", ariaLabel: "ariaLabel", parentId: "parentId", navigatable: "navigatable", state: "state", childNodes: "childNodes", wrapContent: "wrapContent", level: "level", expanded: "expanded" }, outputs: { treeItemClick: "treeItemClick", expandedChange: "expandedChange" }, host: { attributes: { "role": "presentation" }, properties: { "attr.aria-label": "this.ariaLabel", "attr.aria-level": "this.level" }, classAttribute: "fd-tree__item" }, providers: [
859
- DestroyedService,
860
861
  {
861
862
  provide: FDK_SELECTABLE_ITEM_PROVIDER,
862
863
  useExisting: TreeItemComponent
@@ -873,7 +874,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
873
874
  class: 'fd-tree__item',
874
875
  role: 'presentation'
875
876
  }, providers: [
876
- DestroyedService,
877
877
  {
878
878
  provide: FDK_SELECTABLE_ITEM_PROVIDER,
879
879
  useExisting: TreeItemComponent