@fundamental-ngx/core 0.63.2-rc.6 → 0.63.2
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.
- package/fesm2022/fundamental-ngx-core-action-bar.mjs +26 -27
- package/fesm2022/fundamental-ngx-core-action-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-action-sheet.mjs +22 -25
- package/fesm2022/fundamental-ngx-core-action-sheet.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs +31 -35
- package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar-group.mjs +43 -52
- package/fesm2022/fundamental-ngx-core-avatar-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar.mjs +43 -67
- package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-bar.mjs +41 -50
- package/fesm2022/fundamental-ngx-core-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +14 -18
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-busy-indicator.mjs +23 -34
- package/fesm2022/fundamental-ngx-core-busy-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-button.mjs +37 -56
- package/fesm2022/fundamental-ngx-core-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-calendar.mjs +62 -87
- package/fesm2022/fundamental-ngx-core-calendar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-card.mjs +188 -264
- package/fesm2022/fundamental-ngx-core-card.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-carousel.mjs +26 -35
- package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-checkbox.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-combobox.mjs +18 -19
- package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-content-density.mjs +36 -46
- package/fesm2022/fundamental-ngx-core-content-density.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-date-picker.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +14 -15
- package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-datetime.mjs +31 -32
- package/fesm2022/fundamental-ngx-core-datetime.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-dialog.mjs +89 -116
- package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-dynamic-page.mjs +77 -100
- package/fesm2022/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-facets.mjs +20 -24
- package/fesm2022/fundamental-ngx-core-facets.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-feed-input.mjs +17 -18
- package/fesm2022/fundamental-ngx-core-feed-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-feed-list-item.mjs +24 -24
- package/fesm2022/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-file-uploader.mjs +16 -16
- package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs +15 -17
- package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-form.mjs +74 -74
- package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-formatted-text.mjs +12 -17
- package/fesm2022/fundamental-ngx-core-formatted-text.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-generic-tag.mjs +13 -19
- package/fesm2022/fundamental-ngx-core-generic-tag.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-grid-list.mjs +51 -56
- package/fesm2022/fundamental-ngx-core-grid-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-icon.mjs +20 -33
- package/fesm2022/fundamental-ngx-core-icon.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-illustrated-message.mjs +31 -42
- package/fesm2022/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs +9 -11
- package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-info-label.mjs +18 -29
- package/fesm2022/fundamental-ngx-core-info-label.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-inline-help.mjs +25 -35
- package/fesm2022/fundamental-ngx-core-inline-help.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-input-group.mjs +21 -21
- package/fesm2022/fundamental-ngx-core-input-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-layout-grid.mjs +27 -40
- package/fesm2022/fundamental-ngx-core-layout-grid.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-layout-panel.mjs +37 -41
- package/fesm2022/fundamental-ngx-core-layout-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-link.mjs +19 -24
- package/fesm2022/fundamental-ngx-core-link.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-list.mjs +91 -100
- package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-menu.mjs +101 -125
- package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-box.mjs +38 -39
- package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-page.mjs +19 -19
- package/fesm2022/fundamental-ngx-core-message-strip.mjs +55 -79
- package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-toast.mjs +17 -17
- package/fesm2022/fundamental-ngx-core-message-toast.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs +20 -21
- package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-mobile-mode.mjs +3 -3
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +66 -98
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-multi-input.mjs +21 -27
- package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-nested-list.mjs +43 -46
- package/fesm2022/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-notification.mjs +132 -178
- package/fesm2022/fundamental-ngx-core-notification.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-attribute.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-object-identifier.mjs +17 -24
- package/fesm2022/fundamental-ngx-core-object-identifier.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-marker.mjs +24 -41
- package/fesm2022/fundamental-ngx-core-object-marker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-number.mjs +21 -33
- package/fesm2022/fundamental-ngx-core-object-number.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-status.mjs +26 -41
- package/fesm2022/fundamental-ngx-core-object-status.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-overflow-layout.mjs +32 -33
- package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-pagination.mjs +10 -10
- package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-panel.mjs +35 -51
- package/fesm2022/fundamental-ngx-core-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-popover.mjs +164 -267
- package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-product-switch.mjs +32 -46
- package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-progress-indicator.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-quick-view.mjs +44 -47
- package/fesm2022/fundamental-ngx-core-quick-view.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-radio.mjs +8 -8
- package/fesm2022/fundamental-ngx-core-radio.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-rating-indicator.mjs +39 -61
- package/fesm2022/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs +11 -12
- package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-scroll-spy.mjs +12 -17
- package/fesm2022/fundamental-ngx-core-scroll-spy.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-scrollbar.mjs +12 -14
- package/fesm2022/fundamental-ngx-core-scrollbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-segmented-button.mjs +8 -9
- package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-select.mjs +21 -22
- package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-settings.mjs +60 -70
- package/fesm2022/fundamental-ngx-core-settings.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-shared.mjs +3 -3
- package/fesm2022/fundamental-ngx-core-shellbar.mjs +63 -77
- package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-side-navigation.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-skeleton.mjs +16 -24
- package/fesm2022/fundamental-ngx-core-skeleton.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-slider.mjs +13 -15
- package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-split-button.mjs +10 -10
- package/fesm2022/fundamental-ngx-core-status-indicator.mjs +35 -62
- package/fesm2022/fundamental-ngx-core-status-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-step-input.mjs +9 -11
- package/fesm2022/fundamental-ngx-core-step-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-switch.mjs +8 -8
- package/fesm2022/fundamental-ngx-core-switch.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-table.mjs +50 -51
- package/fesm2022/fundamental-ngx-core-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tabs.mjs +55 -56
- package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-text.mjs +19 -29
- package/fesm2022/fundamental-ngx-core-text.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-theming.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-tile.mjs +136 -171
- package/fesm2022/fundamental-ngx-core-tile.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-time-picker.mjs +8 -9
- package/fesm2022/fundamental-ngx-core-time-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-time.mjs +14 -17
- package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-timeline.mjs +43 -43
- package/fesm2022/fundamental-ngx-core-title.mjs +10 -12
- package/fesm2022/fundamental-ngx-core-title.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-token.mjs +25 -34
- package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-toolbar.mjs +32 -35
- package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tree.mjs +36 -41
- package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-upload-collection.mjs +57 -43
- package/fesm2022/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-user-menu.mjs +84 -108
- package/fesm2022/fundamental-ngx-core-user-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs +17 -20
- package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-wizard.mjs +32 -41
- package/fesm2022/fundamental-ngx-core-wizard.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core.mjs +4 -4
- package/package.json +10 -11
- package/schematics/add-styles/index.js +3 -3
- package/schematics/add-styles/index.js.map +1 -1
- package/schematics/add-theming/index.js +1 -1
- package/schematics/add-theming/index.js.map +1 -1
- package/schematics/tsconfig.json +6 -12
- package/schematics/tsconfig.spec.json +0 -2
- package/schematics/utils/calls-providers-function.js +1 -34
- package/schematics/utils/calls-providers-function.js.map +1 -1
- package/schematics/utils/ng-module-utils.js +1 -34
- package/schematics/utils/ng-module-utils.js.map +1 -1
- package/types/fundamental-ngx-core-avatar-group-legacy.d.ts +0 -1
- package/types/fundamental-ngx-core-carousel.d.ts +0 -2
- package/types/fundamental-ngx-core-list.d.ts +2 -2
- package/types/fundamental-ngx-core-menu.d.ts +4 -4
- package/types/fundamental-ngx-core-notification.d.ts +2 -0
- package/types/fundamental-ngx-core-popover.d.ts +6 -8
- package/types/fundamental-ngx-core-product-switch.d.ts +3 -6
- package/types/fundamental-ngx-core-upload-collection.d.ts +2 -0
- package/types/fundamental-ngx-core-wizard.d.ts +1 -4
- package/schematics/package.json +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-core-toolbar.mjs","sources":["../../../../libs/core/toolbar/abstract-toolbar-item.class.ts","../../../../libs/core/toolbar/tokens.ts","../../../../libs/core/toolbar/toolbar-item.directive.ts","../../../../libs/core/toolbar/toolbar-form-label.directive.ts","../../../../libs/core/toolbar/toolbar-label.directive.ts","../../../../libs/core/toolbar/toolbar-overflow-button-menu.directive.ts","../../../../libs/core/toolbar/toolbar-overflow-button.directive.ts","../../../../libs/core/toolbar/toolbar-separator.component.ts","../../../../libs/core/toolbar/toolbar-spacer.directive.ts","../../../../libs/core/toolbar/toolbar.component.ts","../../../../libs/core/toolbar/toolbar.component.html","../../../../libs/core/toolbar/toolbar.module.ts","../../../../libs/core/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 { InjectionToken } from '@angular/core';\n\nexport const FD_TOOLBAR = new InjectionToken('FdToolbarComponent');\n","import { Directive, ElementRef, forwardRef, inject, 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 standalone: true\n})\nexport class ToolbarItemDirective implements ToolbarItem {\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 private lastWidth = 0;\n\n /** @hidden */\n private readonly _elementRef = inject(ElementRef);\n}\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 standalone: true\n})\nexport class ToolbarFormLabelDirective extends ToolbarItemDirective {}\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 standalone: true\n})\nexport class ToolbarLabelDirective 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 standalone: true\n})\nexport class ToolbarOverflowButtonMenuDirective 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 standalone: true\n})\nexport class ToolbarOverflowButtonDirective extends ToolbarItemDirective {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } 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 standalone: true\n})\nexport class ToolbarSeparatorComponent {}\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 standalone: true\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 {\n AfterContentInit,\n AfterViewChecked,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n contentChildren,\n DestroyRef,\n ElementRef,\n HostBinding,\n inject,\n Inject,\n Injector,\n Input,\n Optional,\n signal,\n SkipSelf,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { DYNAMIC_PAGE_HEADER_TOKEN, DynamicPageHeader } from '@fundamental-ngx/core/shared';\n\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport {\n applyCssClass,\n CssClassBuilder,\n DynamicPortalComponent,\n intersectionObservable,\n Nullable,\n OVERFLOW_PRIORITY_SCORE,\n OverflowPriority,\n ResizeObserverService\n} from '@fundamental-ngx/cdk/utils';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport {\n ContentDensityMode,\n ContentDensityObserver,\n contentDensityObserverProviders\n} from '@fundamental-ngx/core/content-density';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { HeadingLevel } from '@fundamental-ngx/core/shared';\nimport { TitleComponent, TitleToken } from '@fundamental-ngx/core/title';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport { BehaviorSubject, combineLatest, EMPTY, filter, first, map, Observable, of, switchMap } from 'rxjs';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport { FD_TOOLBAR } from './tokens';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\n\nconst ELEMENT_MARGIN = 8;\nconst OVERFLOW_BTN_COZY = 36;\nconst OVERFLOW_BTN_COMPACT = 32;\nconst MAX_CONTENT_SIZE = 99999999;\n\nexport type ToolbarType = 'solid' | 'transparent' | 'auto' | 'info';\n\nlet toolbarTitleId = 0;\nlet toolbarId = 0;\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 styleUrl: './toolbar.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n contentDensityObserverProviders({\n defaultContentDensity: ContentDensityMode.COMPACT\n }),\n {\n provide: FD_TOOLBAR,\n useExisting: ToolbarComponent\n }\n ],\n imports: [\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n PopoverModule,\n ButtonComponent,\n DynamicPortalComponent,\n TitleComponent,\n FdTranslatePipe\n ]\n})\nexport class ToolbarComponent implements AfterViewInit, AfterViewChecked, CssClassBuilder, AfterContentInit {\n /**\n * The ID of the toolbar title\n * */\n @Input()\n titleId = `fd-toolbar-title-${toolbarTitleId++}`;\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 /** 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 /**\n * Heading level of the toolbar title.\n */\n @Input()\n set headingLevel(level: Nullable<HeadingLevel>) {\n if (typeof level === 'number') {\n this._headingLevel = level;\n } else if (typeof level === 'string') {\n this._headingLevel = Number.parseInt(level.replace(/\\D/g, ''), 10);\n }\n }\n\n /** Toolbar Aria-label attribute. */\n @Input()\n @HostBinding('attr.aria-label')\n ariaLabel: string;\n\n /** Toolbar Aria-labelledby attribute. */\n @Input()\n @HostBinding('attr.aria-labelledby')\n ariaLabelledBy: string;\n\n /** Toolbar Aria-describedby attribute. */\n @Input()\n @HostBinding('attr.aria-describedby')\n ariaDescribedBy: string;\n\n /** Toolbar Aria-orientation attribute. */\n @Input()\n @HostBinding('attr.aria-orientation')\n ariaOrientation: 'horizontal' | 'vertical' = 'horizontal';\n\n /**\n * The ID of the toolbar\n * */\n @Input()\n @HostBinding('attr.id')\n id = `fd-toolbar-${toolbarId++}`;\n\n /** @hidden */\n @ViewChild('titleElement', { read: ElementRef })\n titleElement: ElementRef<HTMLHeadElement>;\n\n /** @hidden */\n @HostBinding('attr.role')\n protected readonly _role = 'toolbar';\n\n /** @hidden */\n readonly toolbarItems = contentChildren(ToolbarItem, { descendants: true });\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 spacerUsed = signal(false);\n\n /** @hidden */\n spacerDirectives = contentChildren(ToolbarSpacerDirective);\n\n /** @hidden */\n separatorDirectives = contentChildren(ToolbarSeparatorComponent);\n\n /** @hidden */\n _headingLevel = 2;\n\n /** HTML Element Reference. */\n readonly elementRef = inject(ElementRef);\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 const _overflow_btn_size = this._contentDensityObserver.isCompact ? OVERFLOW_BTN_COMPACT : OVERFLOW_BTN_COZY;\n return (\n (this.elementRef.nativeElement as HTMLElement).clientWidth -\n (_overflow_btn_size + 4 * ELEMENT_MARGIN + 1 + this.separatorDirectives().length)\n );\n }\n\n /** @hidden */\n private _shouldOverflow = 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 readonly _injector: Injector,\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.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._updateSpacerUsed();\n\n // Observe title element size changes to trigger recalculation when title content changes\n const titleElementResize$ = this._titleComponent$.pipe(\n switchMap((titleComponent): Observable<HTMLElement | null> => {\n const titleElement = titleComponent?.elementRef?.nativeElement ?? this.titleElement?.nativeElement;\n if (!titleElement) {\n return of(null);\n }\n // When title element resizes (e.g., text content changes), emit\n return this.resizeObserverService.observe(titleElement).pipe(map(() => titleElement));\n })\n );\n\n this.overflowItems$ = combineLatest([\n this.resizeObserverService.observe(this.elementRef.nativeElement).pipe(map(() => this._toolbarWidth)),\n toObservable(this.toolbarItems, { injector: this._injector }).pipe(\n map((toolbarItems) => [...toolbarItems])\n ),\n titleElementResize$,\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 + 2;\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.buildComponentCssClass();\n\n // Use IntersectionObserver to detect when toolbar becomes visible\n // (e.g., when rendered inside a tab that was initially hidden).\n // This triggers a recalculation once the toolbar is visible and has proper dimensions.\n this.shouldOverflow$\n .pipe(\n switchMap((shouldOverflow) =>\n shouldOverflow\n ? intersectionObservable(this.elementRef.nativeElement).pipe(\n filter((entries) => entries[0]?.isIntersecting),\n first()\n )\n : EMPTY\n ),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() => {\n this._refreshOverflow$.next();\n });\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 /** Method triggering collapsible toolbar */\n updateCollapsibleItems(): void {\n this._refreshOverflow$.next();\n }\n\n /** @hidden */\n private _updateSpacerUsed(): void {\n // do not render extra spacer if there is at least one passed by the application\n // and it is not fixed this.spacerUsed.set(this.spacer.length > 0 && this.spacer.some((spacer) => !spacer.fixed));\n this.spacerUsed.set(\n this.spacerDirectives().length > 0 && this.spacerDirectives().some((spacer) => !spacer.fixed)\n );\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: ToolbarItem) => i.priority)\n .filter(\n (prio: OverflowPriority) =>\n prio !== OverflowPriorityEnum.ALWAYS && prio !== OverflowPriorityEnum.NEVER\n )\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(\n (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 {} as Record<number, Array<{ element: ToolbarItem; index: number }>>\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) ?? -Infinity,\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), [] as ToolbarItem[]);\n }\n}\n","@if (title) {\n <span\n fd-title\n role=\"heading\"\n [headerSize]=\"4\"\n [attr.aria-level]=\"_headingLevel\"\n [attr.title]=\"title\"\n [attr.aria-label]=\"title\"\n class=\"fd-toolbar__title fd-toolbar__title--truncate\"\n [id]=\"titleId\"\n #titleElement\n >\n {{ title }}\n </span>\n}\n<ng-content></ng-content>\n@if (overflownItems.length > 0) {\n @if (!spacerUsed()) {\n <fd-toolbar-spacer></fd-toolbar-spacer>\n }\n <fd-toolbar-separator></fd-toolbar-separator>\n <fd-popover placement=\"bottom-end\" [noArrow]=\"true\" class=\"fd-popover\" [focusAutoCapture]=\"true\">\n <fd-popover-control>\n <button\n fd-button\n [title]=\"('coreToolbar.moreButton' | fdTranslate)()\"\n [attr.aria-label]=\"('coreToolbar.moreButton' | fdTranslate)()\"\n aria-haspopup=\"true\"\n fdType=\"transparent\"\n glyph=\"overflow\"\n ></button>\n </fd-popover-control>\n <fd-popover-body>\n <div class=\"fd-toolbar__overflow\">\n @for (overflowedItem of overflownItems; track overflowedItem) {\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 }\n </div>\n </fd-popover-body>\n </fd-popover>\n}\n","import { NgModule } from '@angular/core';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { ToolbarFormLabelDirective } from './toolbar-form-label.directive';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport { ToolbarLabelDirective } from './toolbar-label.directive';\nimport { ToolbarOverflowButtonMenuDirective } from './toolbar-overflow-button-menu.directive';\nimport { ToolbarOverflowButtonDirective } from './toolbar-overflow-button.directive';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\nimport { ToolbarComponent } from './toolbar.component';\n\nconst components = [\n ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective\n];\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [ContentDensityModule, ...components],\n exports: [...components, ContentDensityModule]\n})\nexport class ToolbarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-core-toolbar.mjs","sources":["../../../../libs/core/toolbar/abstract-toolbar-item.class.ts","../../../../libs/core/toolbar/tokens.ts","../../../../libs/core/toolbar/toolbar-item.directive.ts","../../../../libs/core/toolbar/toolbar-form-label.directive.ts","../../../../libs/core/toolbar/toolbar-label.directive.ts","../../../../libs/core/toolbar/toolbar-overflow-button-menu.directive.ts","../../../../libs/core/toolbar/toolbar-overflow-button.directive.ts","../../../../libs/core/toolbar/toolbar-separator.component.ts","../../../../libs/core/toolbar/toolbar-spacer.directive.ts","../../../../libs/core/toolbar/toolbar.component.ts","../../../../libs/core/toolbar/toolbar.component.html","../../../../libs/core/toolbar/toolbar.module.ts","../../../../libs/core/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 { InjectionToken } from '@angular/core';\n\nexport const FD_TOOLBAR = new InjectionToken('FdToolbarComponent');\n","import { Directive, ElementRef, forwardRef, inject, 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 standalone: true\n})\nexport class ToolbarItemDirective implements ToolbarItem {\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 private lastWidth = 0;\n\n /** @hidden */\n private readonly _elementRef = inject(ElementRef);\n}\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 standalone: true\n})\nexport class ToolbarFormLabelDirective extends ToolbarItemDirective {}\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 standalone: true\n})\nexport class ToolbarLabelDirective 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 standalone: true\n})\nexport class ToolbarOverflowButtonMenuDirective 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 standalone: true\n})\nexport class ToolbarOverflowButtonDirective extends ToolbarItemDirective {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } 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 standalone: true\n})\nexport class ToolbarSeparatorComponent {}\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 standalone: true\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 {\n AfterContentInit,\n AfterViewChecked,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n contentChildren,\n DestroyRef,\n ElementRef,\n HostBinding,\n inject,\n Inject,\n Injector,\n Input,\n Optional,\n signal,\n SkipSelf,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { DYNAMIC_PAGE_HEADER_TOKEN, DynamicPageHeader } from '@fundamental-ngx/core/shared';\n\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport {\n applyCssClass,\n CssClassBuilder,\n DynamicPortalComponent,\n intersectionObservable,\n Nullable,\n OVERFLOW_PRIORITY_SCORE,\n OverflowPriority,\n ResizeObserverService\n} from '@fundamental-ngx/cdk/utils';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport {\n ContentDensityMode,\n ContentDensityObserver,\n contentDensityObserverProviders\n} from '@fundamental-ngx/core/content-density';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { HeadingLevel } from '@fundamental-ngx/core/shared';\nimport { TitleComponent, TitleToken } from '@fundamental-ngx/core/title';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport { BehaviorSubject, combineLatest, EMPTY, filter, first, map, Observable, of, switchMap } from 'rxjs';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport { FD_TOOLBAR } from './tokens';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\n\nconst ELEMENT_MARGIN = 8;\nconst OVERFLOW_BTN_COZY = 36;\nconst OVERFLOW_BTN_COMPACT = 32;\nconst MAX_CONTENT_SIZE = 99999999;\n\nexport type ToolbarType = 'solid' | 'transparent' | 'auto' | 'info';\n\nlet toolbarTitleId = 0;\nlet toolbarId = 0;\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 styleUrl: './toolbar.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n contentDensityObserverProviders({\n defaultContentDensity: ContentDensityMode.COMPACT\n }),\n {\n provide: FD_TOOLBAR,\n useExisting: ToolbarComponent\n }\n ],\n imports: [\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n PopoverModule,\n ButtonComponent,\n DynamicPortalComponent,\n TitleComponent,\n FdTranslatePipe\n ]\n})\nexport class ToolbarComponent implements AfterViewInit, AfterViewChecked, CssClassBuilder, AfterContentInit {\n /**\n * The ID of the toolbar title\n * */\n @Input()\n titleId = `fd-toolbar-title-${toolbarTitleId++}`;\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 /** 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 /**\n * Heading level of the toolbar title.\n */\n @Input()\n set headingLevel(level: Nullable<HeadingLevel>) {\n if (typeof level === 'number') {\n this._headingLevel = level;\n } else if (typeof level === 'string') {\n this._headingLevel = Number.parseInt(level.replace(/\\D/g, ''), 10);\n }\n }\n\n /** Toolbar Aria-label attribute. */\n @Input()\n @HostBinding('attr.aria-label')\n ariaLabel: string;\n\n /** Toolbar Aria-labelledby attribute. */\n @Input()\n @HostBinding('attr.aria-labelledby')\n ariaLabelledBy: string;\n\n /** Toolbar Aria-describedby attribute. */\n @Input()\n @HostBinding('attr.aria-describedby')\n ariaDescribedBy: string;\n\n /** Toolbar Aria-orientation attribute. */\n @Input()\n @HostBinding('attr.aria-orientation')\n ariaOrientation: 'horizontal' | 'vertical' = 'horizontal';\n\n /**\n * The ID of the toolbar\n * */\n @Input()\n @HostBinding('attr.id')\n id = `fd-toolbar-${toolbarId++}`;\n\n /** @hidden */\n @ViewChild('titleElement', { read: ElementRef })\n titleElement: ElementRef<HTMLHeadElement>;\n\n /** @hidden */\n @HostBinding('attr.role')\n protected readonly _role = 'toolbar';\n\n /** @hidden */\n readonly toolbarItems = contentChildren(ToolbarItem, { descendants: true });\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 spacerUsed = signal(false);\n\n /** @hidden */\n spacerDirectives = contentChildren(ToolbarSpacerDirective);\n\n /** @hidden */\n separatorDirectives = contentChildren(ToolbarSeparatorComponent);\n\n /** @hidden */\n _headingLevel = 2;\n\n /** HTML Element Reference. */\n readonly elementRef = inject(ElementRef);\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 const _overflow_btn_size = this._contentDensityObserver.isCompact ? OVERFLOW_BTN_COMPACT : OVERFLOW_BTN_COZY;\n return (\n (this.elementRef.nativeElement as HTMLElement).clientWidth -\n (_overflow_btn_size + 4 * ELEMENT_MARGIN + 1 + this.separatorDirectives().length)\n );\n }\n\n /** @hidden */\n private _shouldOverflow = 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 readonly _injector: Injector,\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.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._updateSpacerUsed();\n\n // Observe title element size changes to trigger recalculation when title content changes\n const titleElementResize$ = this._titleComponent$.pipe(\n switchMap((titleComponent): Observable<HTMLElement | null> => {\n const titleElement = titleComponent?.elementRef?.nativeElement ?? this.titleElement?.nativeElement;\n if (!titleElement) {\n return of(null);\n }\n // When title element resizes (e.g., text content changes), emit\n return this.resizeObserverService.observe(titleElement).pipe(map(() => titleElement));\n })\n );\n\n this.overflowItems$ = combineLatest([\n this.resizeObserverService.observe(this.elementRef.nativeElement).pipe(map(() => this._toolbarWidth)),\n toObservable(this.toolbarItems, { injector: this._injector }).pipe(\n map((toolbarItems) => [...toolbarItems])\n ),\n titleElementResize$,\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 + 2;\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.buildComponentCssClass();\n\n // Use IntersectionObserver to detect when toolbar becomes visible\n // (e.g., when rendered inside a tab that was initially hidden).\n // This triggers a recalculation once the toolbar is visible and has proper dimensions.\n this.shouldOverflow$\n .pipe(\n switchMap((shouldOverflow) =>\n shouldOverflow\n ? intersectionObservable(this.elementRef.nativeElement).pipe(\n filter((entries) => entries[0]?.isIntersecting),\n first()\n )\n : EMPTY\n ),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() => {\n this._refreshOverflow$.next();\n });\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 /** Method triggering collapsible toolbar */\n updateCollapsibleItems(): void {\n this._refreshOverflow$.next();\n }\n\n /** @hidden */\n private _updateSpacerUsed(): void {\n // do not render extra spacer if there is at least one passed by the application\n // and it is not fixed this.spacerUsed.set(this.spacer.length > 0 && this.spacer.some((spacer) => !spacer.fixed));\n this.spacerUsed.set(\n this.spacerDirectives().length > 0 && this.spacerDirectives().some((spacer) => !spacer.fixed)\n );\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: ToolbarItem) => i.priority)\n .filter(\n (prio: OverflowPriority) =>\n prio !== OverflowPriorityEnum.ALWAYS && prio !== OverflowPriorityEnum.NEVER\n )\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(\n (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 {} as Record<number, Array<{ element: ToolbarItem; index: number }>>\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) ?? -Infinity,\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), [] as ToolbarItem[]);\n }\n}\n","@if (title) {\n <span\n fd-title\n role=\"heading\"\n [headerSize]=\"4\"\n [attr.aria-level]=\"_headingLevel\"\n [attr.title]=\"title\"\n [attr.aria-label]=\"title\"\n class=\"fd-toolbar__title fd-toolbar__title--truncate\"\n [id]=\"titleId\"\n #titleElement\n >\n {{ title }}\n </span>\n}\n<ng-content></ng-content>\n@if (overflownItems.length > 0) {\n @if (!spacerUsed()) {\n <fd-toolbar-spacer></fd-toolbar-spacer>\n }\n <fd-toolbar-separator></fd-toolbar-separator>\n <fd-popover placement=\"bottom-end\" [noArrow]=\"true\" class=\"fd-popover\" [focusAutoCapture]=\"true\">\n <fd-popover-control>\n <button\n fd-button\n [title]=\"('coreToolbar.moreButton' | fdTranslate)()\"\n [attr.aria-label]=\"('coreToolbar.moreButton' | fdTranslate)()\"\n aria-haspopup=\"true\"\n fdType=\"transparent\"\n glyph=\"overflow\"\n ></button>\n </fd-popover-control>\n <fd-popover-body>\n <div class=\"fd-toolbar__overflow\">\n @for (overflowedItem of overflownItems; track overflowedItem) {\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 }\n </div>\n </fd-popover-body>\n </fd-popover>\n}\n","import { NgModule } from '@angular/core';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { ToolbarFormLabelDirective } from './toolbar-form-label.directive';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport { ToolbarLabelDirective } from './toolbar-label.directive';\nimport { ToolbarOverflowButtonMenuDirective } from './toolbar-overflow-button-menu.directive';\nimport { ToolbarOverflowButtonDirective } from './toolbar-overflow-button.directive';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\nimport { ToolbarComponent } from './toolbar.component';\n\nconst components = [\n ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective\n];\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [ContentDensityModule, ...components],\n exports: [...components, ContentDensityModule]\n})\nexport class ToolbarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -70,10 +70,10 @@ class TreeItemDefDirective {
|
|
|
70
70
|
static ngTemplateContextGuard(dir, ctx) {
|
|
71
71
|
return true;
|
|
72
72
|
}
|
|
73
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
74
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
73
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
74
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: TreeItemDefDirective, isStandalone: true, selector: "[fdTreeItemDef]", inputs: { fdTreeItemDefAs: "fdTreeItemDefAs" }, ngImport: i0 }); }
|
|
75
75
|
}
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
76
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemDefDirective, decorators: [{
|
|
77
77
|
type: Directive,
|
|
78
78
|
args: [{
|
|
79
79
|
selector: '[fdTreeItemDef]',
|
|
@@ -96,10 +96,10 @@ class TreeItemDirective {
|
|
|
96
96
|
ngOnDestroy() {
|
|
97
97
|
this.treeItem = null;
|
|
98
98
|
}
|
|
99
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
100
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
99
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemDirective, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
100
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: TreeItemDirective, isStandalone: true, selector: "[fdTreeItem]", exportAs: ["fdTreeItem"], ngImport: i0 }); }
|
|
101
101
|
}
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemDirective, decorators: [{
|
|
103
103
|
type: Directive,
|
|
104
104
|
args: [{
|
|
105
105
|
selector: '[fdTreeItem]',
|
|
@@ -115,10 +115,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
115
115
|
* @template P - The value type of the tree item (defaults to any)
|
|
116
116
|
*/
|
|
117
117
|
class BaseTreeItem {
|
|
118
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
119
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
118
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: BaseTreeItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
119
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: BaseTreeItem, isStandalone: true, ngImport: i0 }); }
|
|
120
120
|
}
|
|
121
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: BaseTreeItem, decorators: [{
|
|
122
122
|
type: Directive
|
|
123
123
|
}] });
|
|
124
124
|
|
|
@@ -131,14 +131,11 @@ class TreeService {
|
|
|
131
131
|
/** @hidden */
|
|
132
132
|
this._expandableItems = new Map();
|
|
133
133
|
/** @hidden */
|
|
134
|
-
this._selectionMode$ = signal({ mode: 'none', placement: 'none' },
|
|
135
|
-
...(ngDevMode ? [{ debugName: "_selectionMode$" }] : /* istanbul ignore next */ []));
|
|
134
|
+
this._selectionMode$ = signal({ mode: 'none', placement: 'none' }, ...(ngDevMode ? [{ debugName: "_selectionMode$" }] : []));
|
|
136
135
|
/** @hidden */
|
|
137
|
-
this._expandedLevel = signal(undefined,
|
|
138
|
-
...(ngDevMode ? [{ debugName: "_expandedLevel" }] : /* istanbul ignore next */ []));
|
|
136
|
+
this._expandedLevel = signal(undefined, ...(ngDevMode ? [{ debugName: "_expandedLevel" }] : []));
|
|
139
137
|
/** @hidden */
|
|
140
|
-
this._navigationIndicator$ = signal(false,
|
|
141
|
-
...(ngDevMode ? [{ debugName: "_navigationIndicator$" }] : /* istanbul ignore next */ []));
|
|
138
|
+
this._navigationIndicator$ = signal(false, ...(ngDevMode ? [{ debugName: "_navigationIndicator$" }] : []));
|
|
142
139
|
}
|
|
143
140
|
/** Current expanded level. */
|
|
144
141
|
get expandedLevel() {
|
|
@@ -215,10 +212,10 @@ class TreeService {
|
|
|
215
212
|
}
|
|
216
213
|
this._expandedLevel.set(lastLevel);
|
|
217
214
|
}
|
|
218
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
219
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
215
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
216
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeService }); }
|
|
220
217
|
}
|
|
221
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
218
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeService, decorators: [{
|
|
222
219
|
type: Injectable
|
|
223
220
|
}] });
|
|
224
221
|
|
|
@@ -563,8 +560,8 @@ class TreeComponent {
|
|
|
563
560
|
this._selectionService.initialize(this._sortedTreeItems.map((item) => item.selectableListItem));
|
|
564
561
|
this._setupEventListeners();
|
|
565
562
|
}
|
|
566
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
567
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
563
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
564
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: TreeComponent, isStandalone: true, 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: [
|
|
568
565
|
contentDensityObserverProviders(),
|
|
569
566
|
TreeService,
|
|
570
567
|
SelectionService,
|
|
@@ -580,7 +577,7 @@ __decorate([
|
|
|
580
577
|
__metadata("design:paramtypes", []),
|
|
581
578
|
__metadata("design:returntype", Array)
|
|
582
579
|
], TreeComponent.prototype, "buildComponentCssClass", null);
|
|
583
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
580
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeComponent, decorators: [{
|
|
584
581
|
type: Component,
|
|
585
582
|
args: [{ selector: 'fd-tree', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
|
|
586
583
|
{
|
|
@@ -744,13 +741,11 @@ class TreeItemComponent extends BaseTreeItem {
|
|
|
744
741
|
/**
|
|
745
742
|
* Custom background color
|
|
746
743
|
*/
|
|
747
|
-
this.backgroundColor = input(
|
|
748
|
-
...(ngDevMode ? [undefined, { debugName: "backgroundColor" }] : /* istanbul ignore next */ []));
|
|
744
|
+
this.backgroundColor = input(...(ngDevMode ? [undefined, { debugName: "backgroundColor" }] : []));
|
|
749
745
|
/**
|
|
750
746
|
* Custom styles
|
|
751
747
|
*/
|
|
752
|
-
this.customStyles = input(
|
|
753
|
-
...(ngDevMode ? [undefined, { debugName: "customStyles" }] : /* istanbul ignore next */ []));
|
|
748
|
+
this.customStyles = input(...(ngDevMode ? [undefined, { debugName: "customStyles" }] : []));
|
|
754
749
|
/** @hidden */
|
|
755
750
|
this._expanded = false;
|
|
756
751
|
/** @hidden */
|
|
@@ -849,8 +844,8 @@ class TreeItemComponent extends BaseTreeItem {
|
|
|
849
844
|
_setSelected(selected) {
|
|
850
845
|
this._selectionState = selected;
|
|
851
846
|
}
|
|
852
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
853
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
847
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
848
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: TreeItemComponent, isStandalone: true, selector: "fd-tree-item", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, parentId: { classPropertyName: "parentId", publicName: "parentId", isSignal: false, isRequired: false, transformFunction: null }, navigatable: { classPropertyName: "navigatable", publicName: "navigatable", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: false, isRequired: false, transformFunction: null }, childNodes: { classPropertyName: "childNodes", publicName: "childNodes", isSignal: false, isRequired: false, transformFunction: null }, wrapContent: { classPropertyName: "wrapContent", publicName: "wrapContent", isSignal: false, isRequired: false, transformFunction: null }, level: { classPropertyName: "level", publicName: "level", isSignal: false, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: false, isRequired: false, transformFunction: null }, backgroundColor: { classPropertyName: "backgroundColor", publicName: "backgroundColor", isSignal: true, isRequired: false, transformFunction: null }, customStyles: { classPropertyName: "customStyles", publicName: "customStyles", isSignal: true, isRequired: false, transformFunction: null } }, 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: [
|
|
854
849
|
{
|
|
855
850
|
provide: FDK_SELECTABLE_ITEM_PROVIDER,
|
|
856
851
|
useExisting: TreeItemComponent
|
|
@@ -861,7 +856,7 @@ class TreeItemComponent extends BaseTreeItem {
|
|
|
861
856
|
}
|
|
862
857
|
], queries: [{ propertyName: "_projectedTreeItems", predicate: BaseTreeItem }], viewQueries: [{ propertyName: "itemContainer", first: true, predicate: ["itemContainer"], descendants: true, read: ElementRef }, { propertyName: "selectableListItem", first: true, predicate: SelectableItemDirective, descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1.DataSourceDirective }], ngImport: i0, template: "<div\n class=\"fd-tree__item-container\"\n [attr.tabindex]=\"_containerTabIndex\"\n (fdkClicked)=\"_onClick($event)\"\n fdkSelectableItem\n (selected)=\"_setSelected($event)\"\n [value]=\"value\"\n [attr.aria-haspopup]=\"children.length > 0 || hasProjectedChildren\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-setsize]=\"_setSize\"\n [attr.aria-posinset]=\"_currentPosition\"\n role=\"treeitem\"\n [attr.aria-level]=\"level\"\n [style.background-color]=\"backgroundColor()\"\n [ngStyle]=\"customStyles()\"\n #itemContainer\n [ngClass]=\"[\n state ? 'has-highlight-indicator has-highlight-indicator--' + state : '',\n navigatable ? 'fd-tree__item-container--active' : '',\n wrapContent ? 'fd-tree__content--wrap' : ''\n ]\"\n>\n @if (_treeService.selectionMode().placement === 'left') {\n <ng-template [ngTemplateOutlet]=\"selection\"></ng-template>\n }\n @if (hasChildren) {\n @if (hasDsChildren || hasProjectedChildren) {\n <span\n (click)=\"_toggleExpandState($event)\"\n class=\"fd-tree__expander\"\n aria-hidden=\"true\"\n role=\"presentation\"\n [attr.aria-label]=\"((expanded ? 'coreTree.collapse' : 'coreTree.expand') | fdTranslate)()\"\n [class.is-expanded]=\"expanded\"\n >\n <fd-icon\n class=\"fd-tree__icon\"\n [glyph]=\"expanded ? 'navigation-down-arrow' : 'navigation-right-arrow'\"\n ></fd-icon>\n </span>\n }\n @if (!_totalChildrenLoaded) {\n <div class=\"fd-tree__expander fd-tree__expander--loading\">\n <fd-skeleton type=\"rectangle\" width=\"1rem\" height=\"1rem\"></fd-skeleton>\n </div>\n }\n @if (_treeService.selectionMode().placement === 'afterExpand') {\n <ng-template [ngTemplateOutlet]=\"selection\"></ng-template>\n }\n }\n <div class=\"fd-tree__content\">\n <ng-content select=\"[fdTreeItemIcon]\"></ng-content>\n <ng-content select=\"[fdTreeItemText]\"></ng-content>\n </div>\n <ng-content select=\"[fdTreeItemButton]\"></ng-content>\n @if (_treeService.selectionMode().placement === 'right') {\n <ng-template [ngTemplateOutlet]=\"selection\"></ng-template>\n }\n @if (navigatable && _treeService.navigationIndicator()) {\n <fd-icon glyph=\"slim-arrow-right\" class=\"fd-tree__icon fd-tree__icon--navigation\"></fd-icon>\n }\n</div>\n@if (hasProjectedChildren && expanded) {\n <div class=\"fd-tree\">\n <ng-content select=\"fd-tree-item\"></ng-content>\n </div>\n}\n<ng-template #selection>\n <div class=\"fd-form-item\">\n @if (_treeService.selectionMode().mode === 'multiple') {\n <fd-checkbox\n [(ngModel)]=\"_selectionState\"\n [ngModelOptions]=\"{ standalone: true }\"\n [standalone]=\"true\"\n tabIndexValue=\"-1\"\n ></fd-checkbox>\n }\n @if (_treeService.selectionMode().mode === 'single') {\n <fd-radio-button\n [(ngModel)]=\"_selectionState\"\n [ngModelOptions]=\"{ standalone: true }\"\n [selectedValue]=\"_selectionState\"\n [value]=\"true\"\n tabIndex=\"-1\"\n [standalone]=\"true\"\n tabIndexValue=\"-1\"\n ></fd-radio-button>\n }\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: SelectableItemDirective, selector: "[fdkSelectableItem]", inputs: ["value", "fdkSelectableItem"], outputs: ["clicked", "selected"], exportAs: ["fdkSelectableItem"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: ClickedDirective, selector: "[fdkClicked]", outputs: ["fdkClicked"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "size", "class", "ariaLabel", "ariaHidden"], outputs: ["ariaHiddenChange"] }, { kind: "component", type: SkeletonComponent, selector: "fd-skeleton", inputs: ["animated", "type", "textLines", "width", "height"] }, { kind: "component", type: CheckboxComponent, selector: "fd-checkbox", inputs: ["wrapLabel", "valignLabel", "ariaLabel", "role", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "readonly", "tristate", "tristateSelectable", "labelClass", "required", "displayOnly", "values", "standalone"], outputs: ["focusChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: RadioButtonComponent, selector: "fd-radio-button", inputs: ["ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "title", "tabIndex", "state", "disabled", "readOnly", "selectedValue", "name", "id", "value", "required", "standalone", "wrapLabel", "valignLabel"] }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
863
858
|
}
|
|
864
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
859
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemComponent, decorators: [{
|
|
865
860
|
type: Component,
|
|
866
861
|
args: [{ selector: 'fd-tree-item', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [DataSourceDirective], host: {
|
|
867
862
|
class: 'fd-tree__item',
|
|
@@ -930,10 +925,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
930
925
|
}], backgroundColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "backgroundColor", required: false }] }], customStyles: [{ type: i0.Input, args: [{ isSignal: true, alias: "customStyles", required: false }] }] } });
|
|
931
926
|
|
|
932
927
|
class TreeItemButtonDirective {
|
|
933
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
934
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
928
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
929
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: TreeItemButtonDirective, isStandalone: true, selector: "[fdTreeItemButton]", host: { classAttribute: "fd-tree__button" }, ngImport: i0 }); }
|
|
935
930
|
}
|
|
936
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
931
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemButtonDirective, decorators: [{
|
|
937
932
|
type: Directive,
|
|
938
933
|
args: [{
|
|
939
934
|
selector: '[fdTreeItemButton]',
|
|
@@ -951,10 +946,10 @@ class TreeItemIconDirective {
|
|
|
951
946
|
/** @hidden */
|
|
952
947
|
this._ariaHidden = true;
|
|
953
948
|
}
|
|
954
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
955
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
949
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemIconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
950
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: TreeItemIconDirective, isStandalone: true, selector: "[fdTreeItemIcon]", host: { properties: { "attr.role": "this._role", "attr.aria-hidden": "this._ariaHidden" }, classAttribute: "fd-tree__icon" }, ngImport: i0 }); }
|
|
956
951
|
}
|
|
957
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
952
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemIconDirective, decorators: [{
|
|
958
953
|
type: Directive,
|
|
959
954
|
args: [{
|
|
960
955
|
selector: '[fdTreeItemIcon]',
|
|
@@ -971,10 +966,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
971
966
|
args: ['attr.aria-hidden']
|
|
972
967
|
}] } });
|
|
973
968
|
class TreeItemTextDirective {
|
|
974
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
975
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
969
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemTextDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
970
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: TreeItemTextDirective, isStandalone: true, selector: "[fdTreeItemText]", host: { classAttribute: "fd-tree__text" }, ngImport: i0 }); }
|
|
976
971
|
}
|
|
977
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
972
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeItemTextDirective, decorators: [{
|
|
978
973
|
type: Directive,
|
|
979
974
|
args: [{
|
|
980
975
|
selector: '[fdTreeItemText]',
|
|
@@ -1006,8 +1001,8 @@ const components = [
|
|
|
1006
1001
|
`TreeItemButtonDirective`
|
|
1007
1002
|
*/
|
|
1008
1003
|
class TreeModule {
|
|
1009
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1010
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
1004
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1005
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.0", ngImport: i0, type: TreeModule, imports: [TreeComponent,
|
|
1011
1006
|
TreeItemComponent,
|
|
1012
1007
|
TreeItemDefDirective,
|
|
1013
1008
|
TreeItemDirective,
|
|
@@ -1020,10 +1015,10 @@ class TreeModule {
|
|
|
1020
1015
|
TreeItemIconDirective,
|
|
1021
1016
|
TreeItemTextDirective,
|
|
1022
1017
|
TreeItemButtonDirective] }); }
|
|
1023
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
1018
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeModule, imports: [TreeComponent,
|
|
1024
1019
|
TreeItemComponent] }); }
|
|
1025
1020
|
}
|
|
1026
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1021
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TreeModule, decorators: [{
|
|
1027
1022
|
type: NgModule,
|
|
1028
1023
|
args: [{
|
|
1029
1024
|
imports: [...components],
|