@fundamental-ngx/platform 0.43.32 → 0.43.34

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 (68) hide show
  1. package/dynamic-page/dynamic-page-header/title/dynamic-page-title.component.d.ts +1 -1
  2. package/esm2020/dynamic-page/dynamic-page-header/title/dynamic-page-title.component.mjs +4 -4
  3. package/esm2020/dynamic-page/dynamic-page.component.mjs +3 -3
  4. package/esm2020/list/free-content-list-item/free-content-list-item.component.mjs +5 -5
  5. package/esm2020/list/list.component.mjs +1 -5
  6. package/esm2020/menu/menu-trigger.directive.mjs +5 -1
  7. package/esm2020/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +1 -1
  8. package/esm2020/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +13 -3
  9. package/esm2020/table/components/table-header-row/table-header-row.component.mjs +3 -3
  10. package/esm2020/table/components/table-p13-dialog/table-p13-dialog.component.mjs +5 -3
  11. package/esm2020/table/components/table-row/table-row.component.mjs +6 -3
  12. package/esm2020/table/components/table-toolbar/table-toolbar.component.mjs +3 -3
  13. package/esm2020/table/table.component.mjs +15 -4
  14. package/esm2020/table-helpers/models/index.mjs +2 -1
  15. package/esm2020/table-helpers/models/table-cell-activate-event.model.mjs +12 -0
  16. package/esm2020/table-helpers/services/table-row.service.mjs +9 -1
  17. package/esm2020/upload-collection/dialogs/move-to/move-to.component.mjs +1 -1
  18. package/esm2020/upload-collection/upload-collection/upload-collection.component.mjs +1 -1
  19. package/esm2020/value-help-dialog/components/select-tab/select-tab.component.mjs +3 -3
  20. package/esm2020/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +8 -4
  21. package/esm2020/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +1 -1
  22. package/fesm2015/fundamental-ngx-platform-dynamic-page.mjs +5 -5
  23. package/fesm2015/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
  24. package/fesm2015/fundamental-ngx-platform-list.mjs +4 -8
  25. package/fesm2015/fundamental-ngx-platform-list.mjs.map +1 -1
  26. package/fesm2015/fundamental-ngx-platform-menu.mjs +4 -0
  27. package/fesm2015/fundamental-ngx-platform-menu.mjs.map +1 -1
  28. package/fesm2015/fundamental-ngx-platform-smart-filter-bar.mjs +1 -1
  29. package/fesm2015/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
  30. package/fesm2015/fundamental-ngx-platform-table-helpers.mjs +21 -1
  31. package/fesm2015/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
  32. package/fesm2015/fundamental-ngx-platform-table.mjs +40 -14
  33. package/fesm2015/fundamental-ngx-platform-table.mjs.map +1 -1
  34. package/fesm2015/fundamental-ngx-platform-upload-collection.mjs +2 -2
  35. package/fesm2015/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
  36. package/fesm2015/fundamental-ngx-platform-value-help-dialog.mjs +9 -5
  37. package/fesm2015/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
  38. package/fesm2015/fundamental-ngx-platform-variant-management.mjs +1 -1
  39. package/fesm2015/fundamental-ngx-platform-variant-management.mjs.map +1 -1
  40. package/fesm2020/fundamental-ngx-platform-dynamic-page.mjs +5 -5
  41. package/fesm2020/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
  42. package/fesm2020/fundamental-ngx-platform-list.mjs +4 -8
  43. package/fesm2020/fundamental-ngx-platform-list.mjs.map +1 -1
  44. package/fesm2020/fundamental-ngx-platform-menu.mjs +4 -0
  45. package/fesm2020/fundamental-ngx-platform-menu.mjs.map +1 -1
  46. package/fesm2020/fundamental-ngx-platform-smart-filter-bar.mjs +1 -1
  47. package/fesm2020/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
  48. package/fesm2020/fundamental-ngx-platform-table-helpers.mjs +21 -1
  49. package/fesm2020/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
  50. package/fesm2020/fundamental-ngx-platform-table.mjs +39 -14
  51. package/fesm2020/fundamental-ngx-platform-table.mjs.map +1 -1
  52. package/fesm2020/fundamental-ngx-platform-upload-collection.mjs +2 -2
  53. package/fesm2020/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
  54. package/fesm2020/fundamental-ngx-platform-value-help-dialog.mjs +9 -5
  55. package/fesm2020/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
  56. package/fesm2020/fundamental-ngx-platform-variant-management.mjs +1 -1
  57. package/fesm2020/fundamental-ngx-platform-variant-management.mjs.map +1 -1
  58. package/fundamental-ngx-platform-v0.43.34.tgz +0 -0
  59. package/list/free-content-list-item/free-content-list-item.component.d.ts +1 -1
  60. package/package.json +4 -4
  61. package/schematics/ng-add/index.js +1 -1
  62. package/table/components/table-cell-header-popover/table-cell-header-popover.component.d.ts +5 -0
  63. package/table/table.component.d.ts +7 -3
  64. package/table-helpers/models/index.d.ts +1 -0
  65. package/table-helpers/models/table-cell-activate-event.model.d.ts +10 -0
  66. package/table-helpers/services/table-row.service.d.ts +7 -0
  67. package/value-help-dialog/value-help-dialog/value-help-dialog.component.d.ts +1 -1
  68. package/fundamental-ngx-platform-v0.43.32.tgz +0 -0
@@ -529,6 +529,10 @@ class MenuTriggerDirective {
529
529
  }
530
530
  else {
531
531
  this._element.nativeElement.focus();
532
+ // TODO: remove with fdp-menu-button deprecation
533
+ if (this._element.nativeElement.tagName.toLowerCase() === 'fdp-menu-button') {
534
+ this._element.nativeElement.firstChild.focus();
535
+ }
532
536
  }
533
537
  this._overlayRef.detach();
534
538
  this._isMenuOpen = false;
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-platform-menu.mjs","sources":["../../../../libs/platform/src/lib/menu/menu-item.component.ts","../../../../libs/platform/src/lib/menu/menu-item.component.html","../../../../libs/platform/src/lib/menu/menu.component.ts","../../../../libs/platform/src/lib/menu/menu.component.html","../../../../libs/platform/src/lib/menu/menu-trigger.directive.ts","../../../../libs/platform/src/lib/menu/menu.module.ts","../../../../libs/platform/src/lib/menu/fundamental-ngx-platform-menu.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n OnDestroy,\n Input,\n Output,\n ViewEncapsulation,\n ContentChild,\n ChangeDetectorRef\n} from '@angular/core';\nimport { FocusableOption } from '@angular/cdk/a11y';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { Subject } from 'rxjs';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { MenuInteractiveDirective } from '@fundamental-ngx/core/menu';\n\n@Component({\n selector: 'fdp-menu-item',\n templateUrl: './menu-item.component.html',\n styleUrls: ['./menu-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'fd-menu__item',\n tabindex: '-1'\n }\n})\nexport class MenuItemComponent implements OnDestroy, FocusableOption {\n /** Set the Menu Item as disabled/enabled */\n @Input()\n disabled = false;\n\n /** Menu direction */\n @Input()\n cascadeDirection: 'right' | 'left' = 'right';\n\n /** Event emitted when item is selected. */\n @Output()\n itemSelect: EventEmitter<void> = new EventEmitter<void>();\n\n /** Track when menu item is hovered over */\n hovered: Subject<MenuItemComponent> = new Subject<MenuItemComponent>();\n\n /** Sets whether this item is a trigger for sub-menu. */\n @HostBinding('class.trigger')\n isTrigger = false;\n\n /** @hidden */\n _isSelected = false;\n /**\n * @hidden\n * set CSS class 'is-selected' if menu-item opens a sub-menu.\n */\n set isSelected(selected: boolean) {\n if (this._isSelected !== selected) {\n this._isSelected = selected;\n this._cdr.markForCheck();\n }\n }\n /** @hidden */\n get isSelected(): boolean {\n return this._isSelected;\n }\n\n /** @hidden */\n @ContentChild(MenuInteractiveDirective)\n _fdMenuInteractiveChild: MenuInteractiveDirective;\n\n /** @hidden */\n constructor(private _elementRef: ElementRef, private _cdr: ChangeDetectorRef) {}\n\n /** @hidden */\n ngOnDestroy(): void {\n this.hovered.complete();\n }\n\n /** Focus on option */\n focus(): void {\n const interactive = this._elementRef.nativeElement?.firstElementChild as HTMLElement;\n interactive?.focus();\n }\n\n /**\n * @hidden\n * Handle selection of item via keyboard 'Enter'\n */\n @HostListener('keydown', ['$event'])\n private _onItemKeydown(event: KeyboardEvent): void {\n if (event && KeyUtil.isKeyCode(event, [SPACE, ENTER]) && !this.disabled) {\n this.itemSelect.emit();\n } else if (this.disabled) {\n event.stopPropagation();\n }\n }\n\n /**\n * @hidden\n * Handle click of item via mouse click.\n */\n @HostListener('click', ['$event'])\n private _onItemClick(event: MouseEvent): void {\n if (!this.disabled) {\n this.itemSelect.emit();\n } else {\n event.stopPropagation();\n }\n }\n\n /**\n * @hidden\n * Handle mouse enter event.\n */\n @HostListener('mouseenter')\n private _onMouseEnter(): void {\n this.hovered.next(this);\n }\n}\n","<ng-container *ngIf=\"!_fdMenuInteractiveChild; else projectedContent\">\n <div\n class=\"fd-menu__link\"\n [class.is-disabled]=\"disabled\"\n [attr.disabled]=\"disabled\"\n [class.is-selected]=\"isSelected\"\n tabindex=\"0\"\n role=\"menuitem\"\n >\n <span class=\"fd-menu__title\">\n <ng-container [ngTemplateOutlet]=\"projectedContent\"></ng-container>\n </span>\n <span *ngIf=\"isTrigger\" class=\"fd-menu__addon-after fd-menu__addon-after--submenu\"></span>\n </div>\n</ng-container>\n\n<ng-template #projectedContent>\n <ng-content></ng-content>\n</ng-template>\n","/**\n * @license\n * Copyright (c) 2010-2020 SAP\n * Copyright (c) 2010-2020 Google LLC. http://angular.io/license\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and\n * associated documentation files (the \"Software\"), to deal in the Software without restriction,\n * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,\n * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial\n * portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT\n * LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { FocusKeyManager, FocusOrigin } from '@angular/cdk/a11y';\nimport { ENTER, ESCAPE, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport { merge, Observable, Subscription } from 'rxjs';\nimport { startWith, switchMap } from 'rxjs/operators';\n\nimport { KeyUtil, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { MenuItemComponent } from './menu-item.component';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\n\nexport type MenuCloseMethod = void | 'mouse' | 'keyboard' | 'tab' | 'arrow';\n\n/**\n * Variables for generating menu IDs.\n * Needed for establishing 'aria-control' between trigger and menu.\n */\nconst MENU_ID_ROOT = 'fdp-menu-';\nlet menuIdCounter = 0;\n\n@Component({\n selector: 'fdp-menu',\n templateUrl: './menu.component.html',\n styleUrls: ['./menu.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [contentDensityObserverProviders()]\n})\nexport class MenuComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n /** Menu ID */\n @Input()\n set id(id: string) {\n this._id = id;\n\n // Use 'id' property to create menu ID for aria-control purposes.\n this.menuId = MENU_ID_ROOT + id;\n }\n get id(): string {\n return this._id;\n }\n\n /**\n * Whether menu can be opened using arrow keys\n * @default true\n */\n @Input()\n openByArrowKeys = true;\n\n /**\n * Horizontal position of menu in relation to trigger element.\n */\n @Input()\n xPosition: 'before' | 'after' = 'after';\n\n /**\n * The templateRef needs to be available to the menu trigger for\n * opening in a CDK overlay.\n */\n @ViewChild('menuTemplate', { static: false })\n templateRef: TemplateRef<any>;\n\n /**\n * Child items of the menu.\n */\n @ContentChildren(MenuItemComponent)\n menuItems: QueryList<MenuItemComponent>;\n\n /**\n * Emitted event when menu closes\n */\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n close: EventEmitter<MenuCloseMethod> = new EventEmitter();\n\n /** Menu direction */\n direction: 'ltr' | 'rtl' = 'ltr';\n\n /** @hidden */\n menuId: string;\n\n /** @hidden */\n private _id: string;\n\n /** @hidden */\n private _keyManager: FocusKeyManager<MenuItemComponent>;\n\n /** @hidden */\n private _tabSubscription = Subscription.EMPTY;\n\n /** @hidden */\n private _dirChangeSubscription = Subscription.EMPTY;\n\n /** @hidden */\n constructor(@Optional() private _rtl: RtlService, readonly contentDensityObserver: ContentDensityObserver) {\n if (this._rtl) {\n this._dirChangeSubscription = this._rtl.rtl.subscribe((value: boolean) => {\n this.direction = value ? 'rtl' : 'ltr';\n this._setMenuItemCascadeDirection();\n });\n }\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (!this.menuId) {\n this.menuId = MENU_ID_ROOT + menuIdCounter++;\n }\n if (this.menuItems) {\n this._keyManager = new FocusKeyManager(this.menuItems);\n this._tabSubscription = this._keyManager.tabOut.subscribe(() => {\n this.close.emit('keyboard');\n });\n }\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setMenuItemCascadeDirection();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.close.complete();\n this._tabSubscription.unsubscribe();\n this._dirChangeSubscription.unsubscribe();\n this._keyManager?.destroy();\n }\n\n /**\n * Set focus on first item\n * @param origin FocusOrigin\n */\n focusOnFirstItem(origin: FocusOrigin = 'program'): void {\n this._keyManager.setFocusOrigin(origin).setFirstItemActive();\n }\n\n /**\n * Close menu\n * @param method menu close method\n */\n closeMenu(method: MenuCloseMethod): void {\n this.close.emit(method);\n }\n\n /**\n * @hidden\n * Menu keydown handler\n */\n _onKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, LEFT_ARROW)) {\n if (this._cascadesRight()) {\n this.close.emit('arrow');\n }\n } else if (KeyUtil.isKeyCode(event, RIGHT_ARROW)) {\n if (this._cascadesLeft()) {\n this.close.emit('arrow');\n }\n } else if (KeyUtil.isKeyCode(event, ESCAPE)) {\n this.close.emit('keyboard');\n } else if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n event.preventDefault();\n this.close.emit('keyboard');\n } else {\n this._keyManager.onKeydown(event);\n }\n }\n\n /**\n * @hidden\n * Menu click handler\n */\n _onClick(): void {\n this.close.emit('mouse');\n }\n\n /**\n * @hidden\n * Get stream of menu items hover change\n */\n _menuItemHoverChange(): Observable<MenuItemComponent> {\n const menuItems = this.menuItems.changes as Observable<QueryList<MenuItemComponent>>;\n return menuItems.pipe(\n startWith(this.menuItems),\n switchMap((items) => merge(...items.map((item: MenuItemComponent) => item.hovered)))\n ) as Observable<MenuItemComponent>;\n }\n\n /** @hidden */\n _setMenuItemCascadeDirection(): void {\n if (!this.menuItems) {\n return;\n }\n // set cascade direction\n this.menuItems.forEach((item) => {\n item.cascadeDirection = this._cascadesLeft() ? 'left' : 'right';\n });\n }\n\n /**\n * @hidden\n * Check if cascade menu should appear from right\n */\n _cascadesRight(): boolean {\n return (\n (this.xPosition === 'after' && this.direction === 'ltr') ||\n (this.xPosition === 'before' && this.direction === 'rtl')\n );\n }\n\n /**\n * @hidden\n * Check if cascade menu should appear from left\n */\n _cascadesLeft(): boolean {\n return (\n (this.xPosition === 'after' && this.direction === 'rtl') ||\n (this.xPosition === 'before' && this.direction === 'ltr')\n );\n }\n}\n","<ng-template #menuTemplate>\n <nav\n [attr.id]=\"menuId\"\n [attr.dir]=\"direction\"\n class=\"fd-menu\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n tabindex=\"0\"\n role=\"menu\"\n (click)=\"_onClick()\"\n (keydown)=\"_onKeydown($event)\"\n >\n <div class=\"fd-menu__list\">\n <ng-content></ng-content>\n </div>\n </nav>\n</ng-template>\n","import {\n AfterContentInit,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n Optional,\n Self,\n ViewContainerRef\n} from '@angular/core';\nimport { ConnectedPosition, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport { fromEvent, Subscription } from 'rxjs';\nimport { filter, take } from 'rxjs/operators';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { MenuCloseMethod, MenuComponent } from './menu.component';\nimport { MenuItemComponent } from './menu-item.component';\n\n@Directive({\n selector: `[fdpMenuTriggerFor]`,\n host: {\n 'aria-haspopup': 'menu',\n '[attr.aria-expanded]': 'isMenuOpen || null',\n '[attr.aria-controls]': 'isMenuOpen ? menu.menuId : null'\n }\n})\nexport class MenuTriggerDirective implements OnDestroy, AfterContentInit {\n /** Set Menu Component for which this trigger will be associated. */\n @Input('fdpMenuTriggerFor')\n set menu(menu: MenuComponent) {\n if (this._menu === menu) {\n return;\n }\n this._menu = menu;\n this._menuCloseSubscription.unsubscribe();\n }\n get menu(): MenuComponent {\n return this._menu;\n }\n\n /** @hidden */\n private _menu: MenuComponent;\n /** @hidden */\n private _overlayRef: OverlayRef | null;\n /** @hidden */\n private _portal: TemplatePortal;\n /** @hidden */\n private _isMenuOpen = false;\n /** @hidden */\n private _outsideClickSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _menuCloseSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _parentMenuCloseSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _menuItemHoverChangeSubscription: Subscription = Subscription.EMPTY;\n\n /** @hidden */\n constructor(\n private _element: ElementRef<HTMLElement>,\n private _overlay: Overlay,\n private _viewContainerRef: ViewContainerRef,\n @Optional() @Self() private _menuItem: MenuItemComponent,\n @Optional() private _parentMenu: MenuComponent\n ) {}\n\n /** @hidden */\n ngAfterContentInit(): void {\n if (this._isMenuItem()) {\n // mark menu item as trigger\n this._menuItem.isTrigger = true;\n\n // subscribe to changes of menu item hover state\n this._menuItemHoverChangeSubscription = this._parentMenu._menuItemHoverChange().subscribe((item) => {\n if (item === this._menuItem) {\n if (!this.isMenuOpen) {\n this._menuItem.isSelected = true;\n this.openMenu();\n }\n } else {\n this._menuItem.isSelected = false;\n this.closeMenu();\n }\n });\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n this._outsideClickSubscription.unsubscribe();\n this._menuCloseSubscription.unsubscribe();\n this._parentMenuCloseSubscription.unsubscribe();\n this._menuItemHoverChangeSubscription.unsubscribe();\n }\n\n /** Flag to determine if associated menu is open. */\n get isMenuOpen(): boolean {\n return this._isMenuOpen;\n }\n\n /**\n * @hidden\n * Handle click on trigger element.\n */\n @HostListener('click', ['$event'])\n _onTriggerClick(event: MouseEvent): void {\n // Need to interupt default menu behavior of closing the menu\n if (this._isMenuItem()) {\n event.preventDefault();\n event.stopPropagation();\n }\n // filter out clicks initiated by keyboard enter.\n // For IE 11, MouseEvent fires a MSPointerEvent object instead of MouseEvent.\n if (event.detail > 0 || (event instanceof PointerEvent && event.detail === 0)) {\n this.toggleMenu();\n }\n }\n\n /**\n * @hidden\n * Handled keypress which focus is on trigger element.\n */\n @HostListener('keydown', ['$event'])\n _onTriggerKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [SPACE, ENTER])) {\n if (KeyUtil.isKeyCode(event, [SPACE])) {\n event.preventDefault();\n }\n\n // Need to interupt default menu item behavior of closing the menu\n if (this._isMenuItem()) {\n event.preventDefault();\n event.stopPropagation();\n }\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n } else if (KeyUtil.isKeyCode(event, [RIGHT_ARROW])) {\n if (this._menu._cascadesRight() && this._menu.openByArrowKeys) {\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n }\n } else if (KeyUtil.isKeyCode(event, [LEFT_ARROW])) {\n if (this._menu._cascadesLeft() && this._menu.openByArrowKeys) {\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n }\n }\n }\n\n /**\n * @hidden\n * Toggle display of associated menu.\n */\n toggleMenu(): void {\n /**\n * Need to add delay here to ensure that any \"closeMenu\" operation which\n * has been invoked within an \"outsideClickSubscription\" gets resolved\n * before \"openMenu\" is called. This can happen when there are multiple\n * triggers for the same menu.\n */\n setTimeout(() => {\n this._isMenuOpen ? this._destroyMenu() : this.openMenu();\n }, 0);\n }\n\n /**\n * @hidden\n * Open associated menu.\n */\n openMenu(): void {\n // create overlay\n const overlayConfig = this._getOverlayConfig();\n this._overlayRef = this._overlay.create(overlayConfig);\n\n // get portal and attach to overlay\n this._portal = new TemplatePortal(this._menu.templateRef, this._viewContainerRef);\n this._overlayRef.attach(this._portal);\n\n // add subscription to capture clicks outside menu\n if (this._outsideClickSubscription) {\n this._outsideClickSubscription.unsubscribe();\n }\n this._outsideClickSubscription = fromEvent<MouseEvent>(document, 'click')\n .pipe(\n filter((event) => {\n const target = event.target as HTMLElement;\n return (\n !this._element.nativeElement.contains(target) &&\n !!this._overlayRef &&\n !this._overlayRef.overlayElement.contains(target) &&\n this.isMenuOpen\n );\n }),\n take(1)\n )\n .subscribe(() => {\n this.closeMenu();\n });\n\n // add subscription to menu 'close' event\n if (this._menuCloseSubscription) {\n this._menuCloseSubscription.unsubscribe();\n }\n this._menuCloseSubscription = this._menu.close.subscribe((method: MenuCloseMethod) => {\n this._destroyMenu();\n // Need to close parent menu if closing of menu was done by terminating action\n if (this._parentMenu && (method === 'keyboard' || method === 'mouse')) {\n this._parentMenu.closeMenu(method);\n }\n });\n\n // add subscription to parent menu 'close' event\n if (this._parentMenu) {\n if (this._parentMenuCloseSubscription) {\n this._parentMenuCloseSubscription.unsubscribe();\n }\n this._parentMenuCloseSubscription = this._parentMenu.close.subscribe(() => {\n this.closeMenu();\n });\n }\n\n // set focus to menu\n this._menu.focusOnFirstItem();\n\n this._isMenuOpen = true;\n }\n\n /**\n * @hidden\n * Close associated menu.\n */\n closeMenu(): void {\n this._menu.closeMenu();\n }\n\n /**\n * @hidden\n * destroy associated menu.\n */\n private _destroyMenu(): void {\n if (this._menuItem) {\n this._menuItem.isSelected = false;\n }\n if (!this._overlayRef || !this._isMenuOpen) {\n return;\n }\n if (this._menuItem) {\n this._menuItem.focus();\n } else {\n this._element.nativeElement.focus();\n }\n this._overlayRef.detach();\n this._isMenuOpen = false;\n }\n\n /** @hidden */\n private _getOverlayConfig(): OverlayConfig {\n const positions = this._getPositions();\n const positionStrategy = this._overlay\n .position()\n .flexibleConnectedTo(this._element)\n .withLockedPosition()\n .withPositions(positions);\n\n const scrollStrategy = this._overlay.scrollStrategies.reposition();\n\n const overlayConfig = new OverlayConfig({\n positionStrategy,\n scrollStrategy,\n backdropClass: 'cdk-overlay-transparent-backdrop'\n });\n return overlayConfig;\n }\n\n /** @hidden */\n private _getPositions(): ConnectedPosition[] {\n let positions: ConnectedPosition[] = [];\n const offsetYPosition = 0;\n const offsetXPosition = 0;\n const subMenuXPadding = 4; // horizontal padding of 0.25rem(4px) is needed for sub-menu\n const subMenuYPadding = 4; // vertical padding of 0.25rem(4px) is needed for sub-menu\n\n if (this._isMenuItem()) {\n if (this._menu._cascadesLeft()) {\n positions = [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n offsetX: subMenuXPadding,\n offsetY: subMenuYPadding\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetX: subMenuXPadding,\n offsetY: -subMenuYPadding\n }\n ];\n } else {\n positions = [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n offsetX: -subMenuXPadding,\n offsetY: subMenuYPadding\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetX: -subMenuXPadding,\n offsetY: -subMenuYPadding\n }\n ];\n }\n } else {\n if (this._menu._cascadesLeft()) {\n positions = [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n offsetY: offsetYPosition,\n offsetX: offsetXPosition\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetY: -offsetYPosition,\n offsetX: offsetXPosition\n }\n ];\n } else {\n positions = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: offsetYPosition,\n offsetX: -offsetXPosition\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -offsetYPosition,\n offsetX: -offsetXPosition\n }\n ];\n }\n }\n\n return positions;\n }\n\n /** @hidden */\n private _isMenuItem(): boolean {\n return !!(this._parentMenu && this._menuItem);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { PipeModule } from '@fundamental-ngx/cdk/utils';\n\nimport { MenuComponent } from './menu.component';\nimport { MenuItemComponent } from './menu-item.component';\nimport { MenuTriggerDirective } from './menu-trigger.directive';\nimport { PlatformContentDensityDeprecationsModule } from '@fundamental-ngx/platform/shared';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n BidiModule,\n ScrollingModule,\n PipeModule,\n PlatformContentDensityDeprecationsModule,\n ContentDensityModule\n ],\n declarations: [MenuComponent, MenuItemComponent, MenuTriggerDirective],\n exports: [\n MenuComponent,\n MenuItemComponent,\n MenuTriggerDirective,\n PlatformContentDensityDeprecationsModule,\n ContentDensityModule\n ]\n})\nexport class PlatformMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i4","i2.MenuItemComponent","i3.MenuComponent"],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-platform-menu.mjs","sources":["../../../../libs/platform/src/lib/menu/menu-item.component.ts","../../../../libs/platform/src/lib/menu/menu-item.component.html","../../../../libs/platform/src/lib/menu/menu.component.ts","../../../../libs/platform/src/lib/menu/menu.component.html","../../../../libs/platform/src/lib/menu/menu-trigger.directive.ts","../../../../libs/platform/src/lib/menu/menu.module.ts","../../../../libs/platform/src/lib/menu/fundamental-ngx-platform-menu.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n OnDestroy,\n Input,\n Output,\n ViewEncapsulation,\n ContentChild,\n ChangeDetectorRef\n} from '@angular/core';\nimport { FocusableOption } from '@angular/cdk/a11y';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { Subject } from 'rxjs';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { MenuInteractiveDirective } from '@fundamental-ngx/core/menu';\n\n@Component({\n selector: 'fdp-menu-item',\n templateUrl: './menu-item.component.html',\n styleUrls: ['./menu-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'fd-menu__item',\n tabindex: '-1'\n }\n})\nexport class MenuItemComponent implements OnDestroy, FocusableOption {\n /** Set the Menu Item as disabled/enabled */\n @Input()\n disabled = false;\n\n /** Menu direction */\n @Input()\n cascadeDirection: 'right' | 'left' = 'right';\n\n /** Event emitted when item is selected. */\n @Output()\n itemSelect: EventEmitter<void> = new EventEmitter<void>();\n\n /** Track when menu item is hovered over */\n hovered: Subject<MenuItemComponent> = new Subject<MenuItemComponent>();\n\n /** Sets whether this item is a trigger for sub-menu. */\n @HostBinding('class.trigger')\n isTrigger = false;\n\n /** @hidden */\n _isSelected = false;\n /**\n * @hidden\n * set CSS class 'is-selected' if menu-item opens a sub-menu.\n */\n set isSelected(selected: boolean) {\n if (this._isSelected !== selected) {\n this._isSelected = selected;\n this._cdr.markForCheck();\n }\n }\n /** @hidden */\n get isSelected(): boolean {\n return this._isSelected;\n }\n\n /** @hidden */\n @ContentChild(MenuInteractiveDirective)\n _fdMenuInteractiveChild: MenuInteractiveDirective;\n\n /** @hidden */\n constructor(private _elementRef: ElementRef, private _cdr: ChangeDetectorRef) {}\n\n /** @hidden */\n ngOnDestroy(): void {\n this.hovered.complete();\n }\n\n /** Focus on option */\n focus(): void {\n const interactive = this._elementRef.nativeElement?.firstElementChild as HTMLElement;\n interactive?.focus();\n }\n\n /**\n * @hidden\n * Handle selection of item via keyboard 'Enter'\n */\n @HostListener('keydown', ['$event'])\n private _onItemKeydown(event: KeyboardEvent): void {\n if (event && KeyUtil.isKeyCode(event, [SPACE, ENTER]) && !this.disabled) {\n this.itemSelect.emit();\n } else if (this.disabled) {\n event.stopPropagation();\n }\n }\n\n /**\n * @hidden\n * Handle click of item via mouse click.\n */\n @HostListener('click', ['$event'])\n private _onItemClick(event: MouseEvent): void {\n if (!this.disabled) {\n this.itemSelect.emit();\n } else {\n event.stopPropagation();\n }\n }\n\n /**\n * @hidden\n * Handle mouse enter event.\n */\n @HostListener('mouseenter')\n private _onMouseEnter(): void {\n this.hovered.next(this);\n }\n}\n","<ng-container *ngIf=\"!_fdMenuInteractiveChild; else projectedContent\">\n <div\n class=\"fd-menu__link\"\n [class.is-disabled]=\"disabled\"\n [attr.disabled]=\"disabled\"\n [class.is-selected]=\"isSelected\"\n tabindex=\"0\"\n role=\"menuitem\"\n >\n <span class=\"fd-menu__title\">\n <ng-container [ngTemplateOutlet]=\"projectedContent\"></ng-container>\n </span>\n <span *ngIf=\"isTrigger\" class=\"fd-menu__addon-after fd-menu__addon-after--submenu\"></span>\n </div>\n</ng-container>\n\n<ng-template #projectedContent>\n <ng-content></ng-content>\n</ng-template>\n","/**\n * @license\n * Copyright (c) 2010-2020 SAP\n * Copyright (c) 2010-2020 Google LLC. http://angular.io/license\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and\n * associated documentation files (the \"Software\"), to deal in the Software without restriction,\n * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,\n * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial\n * portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT\n * LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { FocusKeyManager, FocusOrigin } from '@angular/cdk/a11y';\nimport { ENTER, ESCAPE, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport { merge, Observable, Subscription } from 'rxjs';\nimport { startWith, switchMap } from 'rxjs/operators';\n\nimport { KeyUtil, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { MenuItemComponent } from './menu-item.component';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\n\nexport type MenuCloseMethod = void | 'mouse' | 'keyboard' | 'tab' | 'arrow';\n\n/**\n * Variables for generating menu IDs.\n * Needed for establishing 'aria-control' between trigger and menu.\n */\nconst MENU_ID_ROOT = 'fdp-menu-';\nlet menuIdCounter = 0;\n\n@Component({\n selector: 'fdp-menu',\n templateUrl: './menu.component.html',\n styleUrls: ['./menu.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [contentDensityObserverProviders()]\n})\nexport class MenuComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n /** Menu ID */\n @Input()\n set id(id: string) {\n this._id = id;\n\n // Use 'id' property to create menu ID for aria-control purposes.\n this.menuId = MENU_ID_ROOT + id;\n }\n get id(): string {\n return this._id;\n }\n\n /**\n * Whether menu can be opened using arrow keys\n * @default true\n */\n @Input()\n openByArrowKeys = true;\n\n /**\n * Horizontal position of menu in relation to trigger element.\n */\n @Input()\n xPosition: 'before' | 'after' = 'after';\n\n /**\n * The templateRef needs to be available to the menu trigger for\n * opening in a CDK overlay.\n */\n @ViewChild('menuTemplate', { static: false })\n templateRef: TemplateRef<any>;\n\n /**\n * Child items of the menu.\n */\n @ContentChildren(MenuItemComponent)\n menuItems: QueryList<MenuItemComponent>;\n\n /**\n * Emitted event when menu closes\n */\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n close: EventEmitter<MenuCloseMethod> = new EventEmitter();\n\n /** Menu direction */\n direction: 'ltr' | 'rtl' = 'ltr';\n\n /** @hidden */\n menuId: string;\n\n /** @hidden */\n private _id: string;\n\n /** @hidden */\n private _keyManager: FocusKeyManager<MenuItemComponent>;\n\n /** @hidden */\n private _tabSubscription = Subscription.EMPTY;\n\n /** @hidden */\n private _dirChangeSubscription = Subscription.EMPTY;\n\n /** @hidden */\n constructor(@Optional() private _rtl: RtlService, readonly contentDensityObserver: ContentDensityObserver) {\n if (this._rtl) {\n this._dirChangeSubscription = this._rtl.rtl.subscribe((value: boolean) => {\n this.direction = value ? 'rtl' : 'ltr';\n this._setMenuItemCascadeDirection();\n });\n }\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (!this.menuId) {\n this.menuId = MENU_ID_ROOT + menuIdCounter++;\n }\n if (this.menuItems) {\n this._keyManager = new FocusKeyManager(this.menuItems);\n this._tabSubscription = this._keyManager.tabOut.subscribe(() => {\n this.close.emit('keyboard');\n });\n }\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setMenuItemCascadeDirection();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.close.complete();\n this._tabSubscription.unsubscribe();\n this._dirChangeSubscription.unsubscribe();\n this._keyManager?.destroy();\n }\n\n /**\n * Set focus on first item\n * @param origin FocusOrigin\n */\n focusOnFirstItem(origin: FocusOrigin = 'program'): void {\n this._keyManager.setFocusOrigin(origin).setFirstItemActive();\n }\n\n /**\n * Close menu\n * @param method menu close method\n */\n closeMenu(method: MenuCloseMethod): void {\n this.close.emit(method);\n }\n\n /**\n * @hidden\n * Menu keydown handler\n */\n _onKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, LEFT_ARROW)) {\n if (this._cascadesRight()) {\n this.close.emit('arrow');\n }\n } else if (KeyUtil.isKeyCode(event, RIGHT_ARROW)) {\n if (this._cascadesLeft()) {\n this.close.emit('arrow');\n }\n } else if (KeyUtil.isKeyCode(event, ESCAPE)) {\n this.close.emit('keyboard');\n } else if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n event.preventDefault();\n this.close.emit('keyboard');\n } else {\n this._keyManager.onKeydown(event);\n }\n }\n\n /**\n * @hidden\n * Menu click handler\n */\n _onClick(): void {\n this.close.emit('mouse');\n }\n\n /**\n * @hidden\n * Get stream of menu items hover change\n */\n _menuItemHoverChange(): Observable<MenuItemComponent> {\n const menuItems = this.menuItems.changes as Observable<QueryList<MenuItemComponent>>;\n return menuItems.pipe(\n startWith(this.menuItems),\n switchMap((items) => merge(...items.map((item: MenuItemComponent) => item.hovered)))\n ) as Observable<MenuItemComponent>;\n }\n\n /** @hidden */\n _setMenuItemCascadeDirection(): void {\n if (!this.menuItems) {\n return;\n }\n // set cascade direction\n this.menuItems.forEach((item) => {\n item.cascadeDirection = this._cascadesLeft() ? 'left' : 'right';\n });\n }\n\n /**\n * @hidden\n * Check if cascade menu should appear from right\n */\n _cascadesRight(): boolean {\n return (\n (this.xPosition === 'after' && this.direction === 'ltr') ||\n (this.xPosition === 'before' && this.direction === 'rtl')\n );\n }\n\n /**\n * @hidden\n * Check if cascade menu should appear from left\n */\n _cascadesLeft(): boolean {\n return (\n (this.xPosition === 'after' && this.direction === 'rtl') ||\n (this.xPosition === 'before' && this.direction === 'ltr')\n );\n }\n}\n","<ng-template #menuTemplate>\n <nav\n [attr.id]=\"menuId\"\n [attr.dir]=\"direction\"\n class=\"fd-menu\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n tabindex=\"0\"\n role=\"menu\"\n (click)=\"_onClick()\"\n (keydown)=\"_onKeydown($event)\"\n >\n <div class=\"fd-menu__list\">\n <ng-content></ng-content>\n </div>\n </nav>\n</ng-template>\n","import {\n AfterContentInit,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n Optional,\n Self,\n ViewContainerRef\n} from '@angular/core';\nimport { ConnectedPosition, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport { fromEvent, Subscription } from 'rxjs';\nimport { filter, take } from 'rxjs/operators';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { MenuCloseMethod, MenuComponent } from './menu.component';\nimport { MenuItemComponent } from './menu-item.component';\n\n@Directive({\n selector: `[fdpMenuTriggerFor]`,\n host: {\n 'aria-haspopup': 'menu',\n '[attr.aria-expanded]': 'isMenuOpen || null',\n '[attr.aria-controls]': 'isMenuOpen ? menu.menuId : null'\n }\n})\nexport class MenuTriggerDirective implements OnDestroy, AfterContentInit {\n /** Set Menu Component for which this trigger will be associated. */\n @Input('fdpMenuTriggerFor')\n set menu(menu: MenuComponent) {\n if (this._menu === menu) {\n return;\n }\n this._menu = menu;\n this._menuCloseSubscription.unsubscribe();\n }\n get menu(): MenuComponent {\n return this._menu;\n }\n\n /** @hidden */\n private _menu: MenuComponent;\n /** @hidden */\n private _overlayRef: OverlayRef | null;\n /** @hidden */\n private _portal: TemplatePortal;\n /** @hidden */\n private _isMenuOpen = false;\n /** @hidden */\n private _outsideClickSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _menuCloseSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _parentMenuCloseSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _menuItemHoverChangeSubscription: Subscription = Subscription.EMPTY;\n\n /** @hidden */\n constructor(\n private _element: ElementRef<HTMLElement>,\n private _overlay: Overlay,\n private _viewContainerRef: ViewContainerRef,\n @Optional() @Self() private _menuItem: MenuItemComponent,\n @Optional() private _parentMenu: MenuComponent\n ) {}\n\n /** @hidden */\n ngAfterContentInit(): void {\n if (this._isMenuItem()) {\n // mark menu item as trigger\n this._menuItem.isTrigger = true;\n\n // subscribe to changes of menu item hover state\n this._menuItemHoverChangeSubscription = this._parentMenu._menuItemHoverChange().subscribe((item) => {\n if (item === this._menuItem) {\n if (!this.isMenuOpen) {\n this._menuItem.isSelected = true;\n this.openMenu();\n }\n } else {\n this._menuItem.isSelected = false;\n this.closeMenu();\n }\n });\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n this._outsideClickSubscription.unsubscribe();\n this._menuCloseSubscription.unsubscribe();\n this._parentMenuCloseSubscription.unsubscribe();\n this._menuItemHoverChangeSubscription.unsubscribe();\n }\n\n /** Flag to determine if associated menu is open. */\n get isMenuOpen(): boolean {\n return this._isMenuOpen;\n }\n\n /**\n * @hidden\n * Handle click on trigger element.\n */\n @HostListener('click', ['$event'])\n _onTriggerClick(event: MouseEvent): void {\n // Need to interupt default menu behavior of closing the menu\n if (this._isMenuItem()) {\n event.preventDefault();\n event.stopPropagation();\n }\n // filter out clicks initiated by keyboard enter.\n // For IE 11, MouseEvent fires a MSPointerEvent object instead of MouseEvent.\n if (event.detail > 0 || (event instanceof PointerEvent && event.detail === 0)) {\n this.toggleMenu();\n }\n }\n\n /**\n * @hidden\n * Handled keypress which focus is on trigger element.\n */\n @HostListener('keydown', ['$event'])\n _onTriggerKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [SPACE, ENTER])) {\n if (KeyUtil.isKeyCode(event, [SPACE])) {\n event.preventDefault();\n }\n\n // Need to interupt default menu item behavior of closing the menu\n if (this._isMenuItem()) {\n event.preventDefault();\n event.stopPropagation();\n }\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n } else if (KeyUtil.isKeyCode(event, [RIGHT_ARROW])) {\n if (this._menu._cascadesRight() && this._menu.openByArrowKeys) {\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n }\n } else if (KeyUtil.isKeyCode(event, [LEFT_ARROW])) {\n if (this._menu._cascadesLeft() && this._menu.openByArrowKeys) {\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n }\n }\n }\n\n /**\n * @hidden\n * Toggle display of associated menu.\n */\n toggleMenu(): void {\n /**\n * Need to add delay here to ensure that any \"closeMenu\" operation which\n * has been invoked within an \"outsideClickSubscription\" gets resolved\n * before \"openMenu\" is called. This can happen when there are multiple\n * triggers for the same menu.\n */\n setTimeout(() => {\n this._isMenuOpen ? this._destroyMenu() : this.openMenu();\n }, 0);\n }\n\n /**\n * @hidden\n * Open associated menu.\n */\n openMenu(): void {\n // create overlay\n const overlayConfig = this._getOverlayConfig();\n this._overlayRef = this._overlay.create(overlayConfig);\n\n // get portal and attach to overlay\n this._portal = new TemplatePortal(this._menu.templateRef, this._viewContainerRef);\n this._overlayRef.attach(this._portal);\n\n // add subscription to capture clicks outside menu\n if (this._outsideClickSubscription) {\n this._outsideClickSubscription.unsubscribe();\n }\n this._outsideClickSubscription = fromEvent<MouseEvent>(document, 'click')\n .pipe(\n filter((event) => {\n const target = event.target as HTMLElement;\n return (\n !this._element.nativeElement.contains(target) &&\n !!this._overlayRef &&\n !this._overlayRef.overlayElement.contains(target) &&\n this.isMenuOpen\n );\n }),\n take(1)\n )\n .subscribe(() => {\n this.closeMenu();\n });\n\n // add subscription to menu 'close' event\n if (this._menuCloseSubscription) {\n this._menuCloseSubscription.unsubscribe();\n }\n this._menuCloseSubscription = this._menu.close.subscribe((method: MenuCloseMethod) => {\n this._destroyMenu();\n // Need to close parent menu if closing of menu was done by terminating action\n if (this._parentMenu && (method === 'keyboard' || method === 'mouse')) {\n this._parentMenu.closeMenu(method);\n }\n });\n\n // add subscription to parent menu 'close' event\n if (this._parentMenu) {\n if (this._parentMenuCloseSubscription) {\n this._parentMenuCloseSubscription.unsubscribe();\n }\n this._parentMenuCloseSubscription = this._parentMenu.close.subscribe(() => {\n this.closeMenu();\n });\n }\n\n // set focus to menu\n this._menu.focusOnFirstItem();\n\n this._isMenuOpen = true;\n }\n\n /**\n * @hidden\n * Close associated menu.\n */\n closeMenu(): void {\n this._menu.closeMenu();\n }\n\n /**\n * @hidden\n * destroy associated menu.\n */\n private _destroyMenu(): void {\n if (this._menuItem) {\n this._menuItem.isSelected = false;\n }\n if (!this._overlayRef || !this._isMenuOpen) {\n return;\n }\n if (this._menuItem) {\n this._menuItem.focus();\n } else {\n this._element.nativeElement.focus();\n // TODO: remove with fdp-menu-button deprecation\n if (this._element.nativeElement.tagName.toLowerCase() === 'fdp-menu-button') {\n (this._element.nativeElement.firstChild as HTMLElement).focus();\n }\n }\n this._overlayRef.detach();\n this._isMenuOpen = false;\n }\n\n /** @hidden */\n private _getOverlayConfig(): OverlayConfig {\n const positions = this._getPositions();\n const positionStrategy = this._overlay\n .position()\n .flexibleConnectedTo(this._element)\n .withLockedPosition()\n .withPositions(positions);\n\n const scrollStrategy = this._overlay.scrollStrategies.reposition();\n\n const overlayConfig = new OverlayConfig({\n positionStrategy,\n scrollStrategy,\n backdropClass: 'cdk-overlay-transparent-backdrop'\n });\n return overlayConfig;\n }\n\n /** @hidden */\n private _getPositions(): ConnectedPosition[] {\n let positions: ConnectedPosition[] = [];\n const offsetYPosition = 0;\n const offsetXPosition = 0;\n const subMenuXPadding = 4; // horizontal padding of 0.25rem(4px) is needed for sub-menu\n const subMenuYPadding = 4; // vertical padding of 0.25rem(4px) is needed for sub-menu\n\n if (this._isMenuItem()) {\n if (this._menu._cascadesLeft()) {\n positions = [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n offsetX: subMenuXPadding,\n offsetY: subMenuYPadding\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetX: subMenuXPadding,\n offsetY: -subMenuYPadding\n }\n ];\n } else {\n positions = [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n offsetX: -subMenuXPadding,\n offsetY: subMenuYPadding\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetX: -subMenuXPadding,\n offsetY: -subMenuYPadding\n }\n ];\n }\n } else {\n if (this._menu._cascadesLeft()) {\n positions = [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n offsetY: offsetYPosition,\n offsetX: offsetXPosition\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetY: -offsetYPosition,\n offsetX: offsetXPosition\n }\n ];\n } else {\n positions = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: offsetYPosition,\n offsetX: -offsetXPosition\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -offsetYPosition,\n offsetX: -offsetXPosition\n }\n ];\n }\n }\n\n return positions;\n }\n\n /** @hidden */\n private _isMenuItem(): boolean {\n return !!(this._parentMenu && this._menuItem);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { PipeModule } from '@fundamental-ngx/cdk/utils';\n\nimport { MenuComponent } from './menu.component';\nimport { MenuItemComponent } from './menu-item.component';\nimport { MenuTriggerDirective } from './menu-trigger.directive';\nimport { PlatformContentDensityDeprecationsModule } from '@fundamental-ngx/platform/shared';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n BidiModule,\n ScrollingModule,\n PipeModule,\n PlatformContentDensityDeprecationsModule,\n ContentDensityModule\n ],\n declarations: [MenuComponent, MenuItemComponent, MenuTriggerDirective],\n exports: [\n MenuComponent,\n MenuItemComponent,\n MenuTriggerDirective,\n PlatformContentDensityDeprecationsModule,\n ContentDensityModule\n ]\n})\nexport class PlatformMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i4","i2.MenuItemComponent","i3.MenuComponent"],"mappings":"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"}
@@ -232,7 +232,7 @@ class SmartFilterBarSettingsDialogComponent {
232
232
  }
233
233
  }
234
234
  SmartFilterBarSettingsDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SmartFilterBarSettingsDialogComponent, deps: [{ token: i1.DialogRef }, { token: FD_LANGUAGE }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
235
- SmartFilterBarSettingsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SmartFilterBarSettingsDialogComponent, selector: "fdp-smart-filter-bar-settings-dialog", providers: [{ provide: RESETTABLE_TOKEN, useExisting: SmartFilterBarSettingsDialogComponent }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<fd-dialog class=\"fdp-table-p13-filtering-dialog\">\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h4 [headerSize]=\"4\" fd-title>\n {{ 'platformSmartFilterBar.selectFiltersHeader' | fdTranslate }}\n </h4>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <fdp-table-reset-button></fdp-table-reset-button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <fdp-table\n *ngIf=\"loaded; else loadingTpl\"\n #table\n (rowSelectionChange)=\"_onRowSelectionChange($event)\"\n [dataSource]=\"source\"\n selectionMode=\"multiple\"\n >\n <fdp-table-toolbar\n [hideItemCount]=\"false\"\n [title]=\"'platformSmartFilterBar.selectFiltersAvailableFiltersText' | fdTranslate\"\n >\n <fdp-table-toolbar-actions>\n <fdp-select\n (selectionChange)=\"_onFilterVisibilityChange($event)\"\n [list]=\"_filterVisibilityOptions\"\n [value]=\"_filterVisibilityOptions[0].value\"\n >\n </fdp-select>\n </fdp-table-toolbar-actions>\n </fdp-table-toolbar>\n <fdp-column\n align=\"start\"\n key=\"label\"\n [label]=\"'platformSmartFilterBar.selectFiltersFilterColumnLabel' | fdTranslate\"\n name=\"label\"\n ></fdp-column>\n <fdp-column\n align=\"center\"\n key=\"active\"\n [label]=\"'platformSmartFilterBar.selectFiltersActiveColumnLabel' | fdTranslate\"\n name=\"active\"\n width=\"150px\"\n >\n <fdp-table-cell *fdpCellDef=\"let item\">\n <fd-icon *ngIf=\"item.active\" glyph=\"accept\"></fd-icon>\n </fdp-table-cell>\n </fdp-column>\n </fdp-table>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <fdp-button\n (click)=\"_confirm()\"\n buttonType=\"emphasized\"\n [label]=\"'platformSmartFilterBar.selectFiltersSubmitButtonLabel' | fdTranslate\"\n ></fdp-button>\n </fd-dialog-footer-button>\n\n <fd-dialog-footer-button>\n <fdp-button\n (click)=\"_cancel()\"\n buttonType=\"transparent\"\n [label]=\"'platformSmartFilterBar.selectFiltersCancelButton' | fdTranslate\"\n ></fdp-button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n\n<ng-template #loadingTpl>\n <div style=\"text-align: center; margin: 1rem\">\n <fd-busy-indicator [loading]=\"true\"></fd-busy-indicator>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "fdp-button", inputs: ["glyphPosition", "label", "glyph", "buttonType", "toggled", "title", "ariaSelected", "ariaDisabled", "ariaExpanded", "ariaControlsId", "ariaPressed", "name", "type", "value"], outputs: ["buttonClicked"] }, { kind: "component", type: i4.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i5$1.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i1.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i1.DialogFooterButtonComponent, selector: "fd-dialog-footer-button" }, { kind: "directive", type: i6.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i6.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i6.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth", "isTitle"] }, { kind: "component", type: i7.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title], span[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i4$1.TemplateDirective, selector: "[fdkTemplate], [fdTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i9.TableComponent, selector: "fdp-table", inputs: ["name", "id", "enableDragResize", "fixed", "freezeColumnsTo", "freezeEndColumnsTo", "pageScrolling", "pageSize", "pageScrollingThreshold", "bodyHeight", "emptyTableMessage", "noVisibleColumnsMessage", "noHorizontalBorders", "noVerticalBorders", "noBorders", "noBodyBorders", "noOuterBorders", "noBorderX", "noBorderY", "relationKey", "expandedStateKey", "hasChildrenKey", "rowNavigatable", "highlightNavigatedRow", "rowsActivable", "selectedKey", "selectableKey", "trackBy", "rowComparator", "rowsClass", "editableRowSkeleton", "expandOnInit", "rowHeight", "loadPagesBefore", "selectionMode", "enableTristateMode", "semanticHighlighting", "forceCheckedAllState", "ariaLabelledBy", "nonFrozenColumnsMinWidth", "loading"], outputs: ["presetChanged", "rowSelectionChange", "sortChange", "filterChange", "groupChange", "columnsChange", "pageChange", "columnFreeze", "rowToggleOpenState", "rowActivate", "rowNavigate", "emptyRowAdded", "save", "cancel", "tableScrolled", "tableRowsSet", "allRowsExpanded", "allRowsCollapsed", "cellFocused"] }, { kind: "component", type: i9.TableColumnComponent, selector: "fdp-column", inputs: ["name", "key", "label", "align", "sortable", "filterable", "visible", "dataType", "groupable", "freezable", "endFreezable", "width", "noWrap", "applyText", "role"] }, { kind: "component", type: i9.TableToolbarComponent, selector: "fdp-table-toolbar", inputs: ["shouldOverflow", "title", "searchFieldAriaLabel", "hideItemCount", "hideSearchInput", "showExpandCollapseButtons", "searchSuggestions", "editMode"] }, { kind: "component", type: i9.TableToolbarActionsComponent, selector: "fdp-table-toolbar-actions" }, { kind: "component", type: i9.ResetButtonComponent, selector: "fdp-table-reset-button" }, { kind: "directive", type: i10.TableInitialStateDirective, selector: "[fdpTableInitialState], fdp-table", inputs: ["initialVisibleColumns", "initialSortBy", "initialFilterBy", "initialGroupBy", "initialPage", "state"] }, { kind: "directive", type: i10.FdpTableCell, selector: "fdp-table-cell" }, { kind: "directive", type: i10.FdpCellDef, selector: "[fdpCellDef]", inputs: ["fdpCellDefAs"] }, { kind: "component", type: i3$1.SelectComponent, selector: "fdp-select", inputs: ["selectState", "value", "inline"] }, { kind: "pipe", type: i12.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
235
+ SmartFilterBarSettingsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SmartFilterBarSettingsDialogComponent, selector: "fdp-smart-filter-bar-settings-dialog", providers: [{ provide: RESETTABLE_TOKEN, useExisting: SmartFilterBarSettingsDialogComponent }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<fd-dialog class=\"fdp-table-p13-filtering-dialog\">\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h4 [headerSize]=\"4\" fd-title>\n {{ 'platformSmartFilterBar.selectFiltersHeader' | fdTranslate }}\n </h4>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <fdp-table-reset-button></fdp-table-reset-button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <fdp-table\n *ngIf=\"loaded; else loadingTpl\"\n #table\n (rowSelectionChange)=\"_onRowSelectionChange($event)\"\n [dataSource]=\"source\"\n selectionMode=\"multiple\"\n >\n <fdp-table-toolbar\n [hideItemCount]=\"false\"\n [title]=\"'platformSmartFilterBar.selectFiltersAvailableFiltersText' | fdTranslate\"\n >\n <fdp-table-toolbar-actions>\n <fdp-select\n (selectionChange)=\"_onFilterVisibilityChange($event)\"\n [list]=\"_filterVisibilityOptions\"\n [value]=\"_filterVisibilityOptions[0].value\"\n >\n </fdp-select>\n </fdp-table-toolbar-actions>\n </fdp-table-toolbar>\n <fdp-column\n align=\"start\"\n key=\"label\"\n [label]=\"'platformSmartFilterBar.selectFiltersFilterColumnLabel' | fdTranslate\"\n name=\"label\"\n ></fdp-column>\n <fdp-column\n align=\"center\"\n key=\"active\"\n [label]=\"'platformSmartFilterBar.selectFiltersActiveColumnLabel' | fdTranslate\"\n name=\"active\"\n width=\"150px\"\n >\n <fdp-table-cell *fdpCellDef=\"let item\">\n <fd-icon *ngIf=\"item.active\" glyph=\"accept\"></fd-icon>\n </fdp-table-cell>\n </fdp-column>\n </fdp-table>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <fdp-button\n (click)=\"_confirm()\"\n buttonType=\"emphasized\"\n [label]=\"'platformSmartFilterBar.selectFiltersSubmitButtonLabel' | fdTranslate\"\n ></fdp-button>\n </fd-dialog-footer-button>\n\n <fd-dialog-footer-button>\n <fdp-button\n (click)=\"_cancel()\"\n buttonType=\"transparent\"\n [label]=\"'platformSmartFilterBar.selectFiltersCancelButton' | fdTranslate\"\n ></fdp-button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n\n<ng-template #loadingTpl>\n <div style=\"text-align: center; margin: 1rem\">\n <fd-busy-indicator [loading]=\"true\"></fd-busy-indicator>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "fdp-button", inputs: ["glyphPosition", "label", "glyph", "buttonType", "toggled", "title", "ariaSelected", "ariaDisabled", "ariaExpanded", "ariaControlsId", "ariaPressed", "name", "type", "value"], outputs: ["buttonClicked"] }, { kind: "component", type: i4.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i5$1.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i1.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i1.DialogFooterButtonComponent, selector: "fd-dialog-footer-button" }, { kind: "directive", type: i6.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i6.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i6.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth", "isTitle"] }, { kind: "component", type: i7.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title], span[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i4$1.TemplateDirective, selector: "[fdkTemplate], [fdTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i9.TableComponent, selector: "fdp-table", inputs: ["name", "id", "enableDragResize", "fixed", "freezeColumnsTo", "freezeEndColumnsTo", "pageScrolling", "pageSize", "pageScrollingThreshold", "bodyHeight", "emptyTableMessage", "noVisibleColumnsMessage", "noHorizontalBorders", "noVerticalBorders", "noBorders", "noBodyBorders", "noOuterBorders", "noBorderX", "noBorderY", "relationKey", "expandedStateKey", "hasChildrenKey", "rowNavigatable", "highlightNavigatedRow", "rowsActivable", "selectedKey", "selectableKey", "trackBy", "rowComparator", "rowsClass", "editableRowSkeleton", "expandOnInit", "rowHeight", "loadPagesBefore", "selectionMode", "enableTristateMode", "semanticHighlighting", "forceCheckedAllState", "ariaLabelledBy", "nonFrozenColumnsMinWidth", "loading"], outputs: ["presetChanged", "rowSelectionChange", "sortChange", "filterChange", "groupChange", "columnsChange", "pageChange", "columnFreeze", "rowToggleOpenState", "cellActivate", "rowActivate", "rowNavigate", "emptyRowAdded", "save", "cancel", "tableScrolled", "tableRowsSet", "allRowsExpanded", "allRowsCollapsed", "cellFocused"] }, { kind: "component", type: i9.TableColumnComponent, selector: "fdp-column", inputs: ["name", "key", "label", "align", "sortable", "filterable", "visible", "dataType", "groupable", "freezable", "endFreezable", "width", "noWrap", "applyText", "role"] }, { kind: "component", type: i9.TableToolbarComponent, selector: "fdp-table-toolbar", inputs: ["shouldOverflow", "title", "searchFieldAriaLabel", "hideItemCount", "hideSearchInput", "showExpandCollapseButtons", "searchSuggestions", "editMode"] }, { kind: "component", type: i9.TableToolbarActionsComponent, selector: "fdp-table-toolbar-actions" }, { kind: "component", type: i9.ResetButtonComponent, selector: "fdp-table-reset-button" }, { kind: "directive", type: i10.TableInitialStateDirective, selector: "[fdpTableInitialState], fdp-table", inputs: ["initialVisibleColumns", "initialSortBy", "initialFilterBy", "initialGroupBy", "initialPage", "state"] }, { kind: "directive", type: i10.FdpTableCell, selector: "fdp-table-cell" }, { kind: "directive", type: i10.FdpCellDef, selector: "[fdpCellDef]", inputs: ["fdpCellDefAs"] }, { kind: "component", type: i3$1.SelectComponent, selector: "fdp-select", inputs: ["selectState", "value", "inline"] }, { kind: "pipe", type: i12.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
236
236
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SmartFilterBarSettingsDialogComponent, decorators: [{
237
237
  type: Component,
238
238
  args: [{ selector: 'fdp-smart-filter-bar-settings-dialog', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: RESETTABLE_TOKEN, useExisting: SmartFilterBarSettingsDialogComponent }], template: "<fd-dialog class=\"fdp-table-p13-filtering-dialog\">\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h4 [headerSize]=\"4\" fd-title>\n {{ 'platformSmartFilterBar.selectFiltersHeader' | fdTranslate }}\n </h4>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <fdp-table-reset-button></fdp-table-reset-button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <fdp-table\n *ngIf=\"loaded; else loadingTpl\"\n #table\n (rowSelectionChange)=\"_onRowSelectionChange($event)\"\n [dataSource]=\"source\"\n selectionMode=\"multiple\"\n >\n <fdp-table-toolbar\n [hideItemCount]=\"false\"\n [title]=\"'platformSmartFilterBar.selectFiltersAvailableFiltersText' | fdTranslate\"\n >\n <fdp-table-toolbar-actions>\n <fdp-select\n (selectionChange)=\"_onFilterVisibilityChange($event)\"\n [list]=\"_filterVisibilityOptions\"\n [value]=\"_filterVisibilityOptions[0].value\"\n >\n </fdp-select>\n </fdp-table-toolbar-actions>\n </fdp-table-toolbar>\n <fdp-column\n align=\"start\"\n key=\"label\"\n [label]=\"'platformSmartFilterBar.selectFiltersFilterColumnLabel' | fdTranslate\"\n name=\"label\"\n ></fdp-column>\n <fdp-column\n align=\"center\"\n key=\"active\"\n [label]=\"'platformSmartFilterBar.selectFiltersActiveColumnLabel' | fdTranslate\"\n name=\"active\"\n width=\"150px\"\n >\n <fdp-table-cell *fdpCellDef=\"let item\">\n <fd-icon *ngIf=\"item.active\" glyph=\"accept\"></fd-icon>\n </fdp-table-cell>\n </fdp-column>\n </fdp-table>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <fdp-button\n (click)=\"_confirm()\"\n buttonType=\"emphasized\"\n [label]=\"'platformSmartFilterBar.selectFiltersSubmitButtonLabel' | fdTranslate\"\n ></fdp-button>\n </fd-dialog-footer-button>\n\n <fd-dialog-footer-button>\n <fdp-button\n (click)=\"_cancel()\"\n buttonType=\"transparent\"\n [label]=\"'platformSmartFilterBar.selectFiltersCancelButton' | fdTranslate\"\n ></fdp-button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n\n<ng-template #loadingTpl>\n <div style=\"text-align: center; margin: 1rem\">\n <fd-busy-indicator [loading]=\"true\"></fd-busy-indicator>\n </div>\n</ng-template>\n" }]