novo-elements 11.2.0 → 11.2.1-next.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.
Files changed (104) hide show
  1. package/fesm2022/novo-elements-addons-ace-editor.mjs.map +1 -1
  2. package/fesm2022/novo-elements-addons-ckeditor.mjs.map +1 -1
  3. package/fesm2022/novo-elements-addons-code-editor.mjs +3 -3
  4. package/fesm2022/novo-elements-addons-code-editor.mjs.map +1 -1
  5. package/fesm2022/novo-elements-elements-agenda.mjs +15 -15
  6. package/fesm2022/novo-elements-elements-agenda.mjs.map +1 -1
  7. package/fesm2022/novo-elements-elements-aside.mjs.map +1 -1
  8. package/fesm2022/novo-elements-elements-autocomplete.mjs +7 -5
  9. package/fesm2022/novo-elements-elements-autocomplete.mjs.map +1 -1
  10. package/fesm2022/novo-elements-elements-avatar.mjs +2 -1
  11. package/fesm2022/novo-elements-elements-avatar.mjs.map +1 -1
  12. package/fesm2022/novo-elements-elements-breadcrumbs.mjs.map +1 -1
  13. package/fesm2022/novo-elements-elements-button.mjs.map +1 -1
  14. package/fesm2022/novo-elements-elements-calendar.mjs +7 -4
  15. package/fesm2022/novo-elements-elements-calendar.mjs.map +1 -1
  16. package/fesm2022/novo-elements-elements-card.mjs +1 -1
  17. package/fesm2022/novo-elements-elements-card.mjs.map +1 -1
  18. package/fesm2022/novo-elements-elements-category-dropdown.mjs.map +1 -1
  19. package/fesm2022/novo-elements-elements-checkbox.mjs.map +1 -1
  20. package/fesm2022/novo-elements-elements-chips.mjs +18 -14
  21. package/fesm2022/novo-elements-elements-chips.mjs.map +1 -1
  22. package/fesm2022/novo-elements-elements-color-picker.mjs +1 -1
  23. package/fesm2022/novo-elements-elements-color-picker.mjs.map +1 -1
  24. package/fesm2022/novo-elements-elements-common.mjs +28 -28
  25. package/fesm2022/novo-elements-elements-common.mjs.map +1 -1
  26. package/fesm2022/novo-elements-elements-data-table.mjs +28 -28
  27. package/fesm2022/novo-elements-elements-data-table.mjs.map +1 -1
  28. package/fesm2022/novo-elements-elements-date-picker.mjs +4 -4
  29. package/fesm2022/novo-elements-elements-date-picker.mjs.map +1 -1
  30. package/fesm2022/novo-elements-elements-date-time-picker.mjs.map +1 -1
  31. package/fesm2022/novo-elements-elements-divider.mjs.map +1 -1
  32. package/fesm2022/novo-elements-elements-drag-drop.mjs +7 -7
  33. package/fesm2022/novo-elements-elements-drag-drop.mjs.map +1 -1
  34. package/fesm2022/novo-elements-elements-dropdown.mjs +9 -9
  35. package/fesm2022/novo-elements-elements-dropdown.mjs.map +1 -1
  36. package/fesm2022/novo-elements-elements-expansion.mjs +5 -5
  37. package/fesm2022/novo-elements-elements-expansion.mjs.map +1 -1
  38. package/fesm2022/novo-elements-elements-field.mjs +20 -14
  39. package/fesm2022/novo-elements-elements-field.mjs.map +1 -1
  40. package/fesm2022/novo-elements-elements-flex.mjs +12 -12
  41. package/fesm2022/novo-elements-elements-flex.mjs.map +1 -1
  42. package/fesm2022/novo-elements-elements-form.mjs +16 -15
  43. package/fesm2022/novo-elements-elements-form.mjs.map +1 -1
  44. package/fesm2022/novo-elements-elements-header.mjs +6 -6
  45. package/fesm2022/novo-elements-elements-header.mjs.map +1 -1
  46. package/fesm2022/novo-elements-elements-icon.mjs.map +1 -1
  47. package/fesm2022/novo-elements-elements-layout.mjs +2 -2
  48. package/fesm2022/novo-elements-elements-layout.mjs.map +1 -1
  49. package/fesm2022/novo-elements-elements-list.mjs +12 -12
  50. package/fesm2022/novo-elements-elements-list.mjs.map +1 -1
  51. package/fesm2022/novo-elements-elements-loading.mjs +5 -5
  52. package/fesm2022/novo-elements-elements-loading.mjs.map +1 -1
  53. package/fesm2022/novo-elements-elements-menu.mjs +4 -4
  54. package/fesm2022/novo-elements-elements-menu.mjs.map +1 -1
  55. package/fesm2022/novo-elements-elements-modal.mjs.map +1 -1
  56. package/fesm2022/novo-elements-elements-multi-picker.mjs.map +1 -1
  57. package/fesm2022/novo-elements-elements-non-ideal-state.mjs.map +1 -1
  58. package/fesm2022/novo-elements-elements-picker.mjs +5 -5
  59. package/fesm2022/novo-elements-elements-picker.mjs.map +1 -1
  60. package/fesm2022/novo-elements-elements-places.mjs.map +1 -1
  61. package/fesm2022/novo-elements-elements-popover.mjs +3 -3
  62. package/fesm2022/novo-elements-elements-popover.mjs.map +1 -1
  63. package/fesm2022/novo-elements-elements-progress.mjs +3 -3
  64. package/fesm2022/novo-elements-elements-progress.mjs.map +1 -1
  65. package/fesm2022/novo-elements-elements-query-builder.mjs +27 -25
  66. package/fesm2022/novo-elements-elements-query-builder.mjs.map +1 -1
  67. package/fesm2022/novo-elements-elements-quick-note.mjs +2 -2
  68. package/fesm2022/novo-elements-elements-quick-note.mjs.map +1 -1
  69. package/fesm2022/novo-elements-elements-radio.mjs.map +1 -1
  70. package/fesm2022/novo-elements-elements-search.mjs.map +1 -1
  71. package/fesm2022/novo-elements-elements-select-search.mjs +2 -2
  72. package/fesm2022/novo-elements-elements-select-search.mjs.map +1 -1
  73. package/fesm2022/novo-elements-elements-select.mjs +5 -5
  74. package/fesm2022/novo-elements-elements-select.mjs.map +1 -1
  75. package/fesm2022/novo-elements-elements-simple-table.mjs +30 -30
  76. package/fesm2022/novo-elements-elements-simple-table.mjs.map +1 -1
  77. package/fesm2022/novo-elements-elements-slider.mjs.map +1 -1
  78. package/fesm2022/novo-elements-elements-stepper.mjs +4 -4
  79. package/fesm2022/novo-elements-elements-stepper.mjs.map +1 -1
  80. package/fesm2022/novo-elements-elements-switch.mjs.map +1 -1
  81. package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
  82. package/fesm2022/novo-elements-elements-tabs.mjs +2 -1
  83. package/fesm2022/novo-elements-elements-tabs.mjs.map +1 -1
  84. package/fesm2022/novo-elements-elements-tiles.mjs.map +1 -1
  85. package/fesm2022/novo-elements-elements-time-picker.mjs +1 -0
  86. package/fesm2022/novo-elements-elements-time-picker.mjs.map +1 -1
  87. package/fesm2022/novo-elements-elements-tip-well.mjs.map +1 -1
  88. package/fesm2022/novo-elements-elements-toast.mjs.map +1 -1
  89. package/fesm2022/novo-elements-elements-toolbar.mjs +1 -1
  90. package/fesm2022/novo-elements-elements-toolbar.mjs.map +1 -1
  91. package/fesm2022/novo-elements-elements-tooltip.mjs +3 -4
  92. package/fesm2022/novo-elements-elements-tooltip.mjs.map +1 -1
  93. package/fesm2022/novo-elements-elements-unless.mjs +1 -1
  94. package/fesm2022/novo-elements-elements-unless.mjs.map +1 -1
  95. package/fesm2022/novo-elements-elements-value.mjs +2 -2
  96. package/fesm2022/novo-elements-elements-value.mjs.map +1 -1
  97. package/fesm2022/novo-elements-pipes.mjs +9 -9
  98. package/fesm2022/novo-elements-pipes.mjs.map +1 -1
  99. package/fesm2022/novo-elements-services.mjs +21 -22
  100. package/fesm2022/novo-elements-services.mjs.map +1 -1
  101. package/fesm2022/novo-elements-utils.mjs +33 -17
  102. package/fesm2022/novo-elements-utils.mjs.map +1 -1
  103. package/package.json +1 -1
  104. package/services/date-format/DateFormat.d.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-menu.mjs","sources":["../../../projects/novo-elements/src/elements/menu/menu-content.component.ts","../../../projects/novo-elements/src/elements/menu/menu-item.directive.ts","../../../projects/novo-elements/src/elements/menu/menu.service.ts","../../../projects/novo-elements/src/elements/menu/menu.tokens.ts","../../../projects/novo-elements/src/elements/menu/menu.component.ts","../../../projects/novo-elements/src/elements/menu/menu.directive.ts","../../../projects/novo-elements/src/elements/menu/menu.module.ts","../../../projects/novo-elements/src/elements/menu/index.ts","../../../projects/novo-elements/src/elements/menu/novo-elements-elements-menu.ts"],"sourcesContent":["import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { AfterViewInit, Component, EventEmitter, HostListener, Input, OnDestroy, OnInit, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { Key } from 'novo-elements/utils';\nimport { NovoOption } from 'novo-elements/elements/common';\nimport { MenuItemDirective } from './menu-item.directive';\nimport { CloseLeafMenuEvent, IMenuClickEvent } from './menu.service';\nimport { ILinkConfig } from './menu.types';\n\n@Component({\n selector: 'menu-content',\n styleUrls: ['./menu-content.component.scss'],\n template: `<div class=\"menu-container novo-menu\" [ngClass]=\"menuClass\" tabindex=\"0\">\n <ul #menu class=\"menu\" style=\"position: static; float: none;\" tabindex=\"0\">\n <ng-container *ngFor=\"let menuItem of menuItems; let i = index\">\n <ng-template [ngTemplateOutlet]=\"menuItem.template\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\n </ng-container>\n </ul>\n </div> `,\n standalone: false\n})\nexport class MenuContentComponent implements OnInit, OnDestroy, AfterViewInit {\n @Input() public menuItems: MenuItemDirective[] = [];\n @Input() public item: any;\n @Input() public event: MouseEvent | KeyboardEvent;\n @Input() public menu: any;\n @Input() public parentMenu: MenuContentComponent;\n @Input() public menuClass: string;\n @Input() public overlay: OverlayRef;\n @Input() public isLeaf = false;\n @Output() public openSubMenu: EventEmitter<IMenuClickEvent> = new EventEmitter();\n @Output() public closeLeafMenu: EventEmitter<CloseLeafMenuEvent> = new EventEmitter();\n @Output() public closeAllMenus: EventEmitter<{ event: MouseEvent }> = new EventEmitter();\n\n public autoFocus = false;\n private _keyManager: ActiveDescendantKeyManager<NovoOption>;\n private subscription: Subscription = new Subscription();\n constructor() {}\n\n ngOnInit(): void {}\n\n ngAfterViewInit() {\n if (this.autoFocus) {\n setTimeout(() => this.focus());\n }\n this.overlay.updatePosition();\n this._keyManager = new ActiveDescendantKeyManager<NovoOption>(this.menu.menuOptions).withWrap();\n }\n\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n\n focus(): void {}\n\n stopEvent($event: MouseEvent) {\n $event.stopPropagation();\n }\n\n public isMenuItemEnabled(menuItem: MenuItemDirective): boolean {\n return this.evaluateIfFunction(menuItem && menuItem.menuItemEnabled);\n }\n\n public isMenuItemVisible(menuItem: MenuItemDirective): boolean {\n return this.evaluateIfFunction(menuItem && menuItem.menuItemVisible);\n }\n\n public evaluateIfFunction(value: any): any {\n if (value instanceof Function) {\n return value(this.item);\n }\n return value;\n }\n\n public isDisabled(link: ILinkConfig): boolean {\n return link.enabled && !link.enabled(this.item);\n }\n\n @HostListener('window:keydown.ArrowDown', ['$event'])\n @HostListener('window:keydown.ArrowUp', ['$event'])\n public onKeyEvent(event: KeyboardEvent): void {\n if (!this.isLeaf) {\n return;\n }\n this._keyManager.onKeydown(event);\n }\n\n @HostListener('window:keydown.ArrowRight', ['$event'])\n public keyboardOpenSubMenu(event?: KeyboardEvent): void {\n if (!this.isLeaf) {\n return;\n }\n this.cancelEvent(event);\n const menuItem = this.menuItems[this._keyManager.activeItemIndex];\n if (menuItem) {\n this.onOpenSubMenu(menuItem);\n }\n }\n\n @HostListener('window:keydown.Enter', ['$event'])\n @HostListener('window:keydown.Space', ['$event'])\n public keyboardMenuItemSelect(event?: KeyboardEvent): void {\n if (!this.isLeaf) {\n return;\n }\n this.cancelEvent(event);\n const menuItem = this.menuItems[this._keyManager.activeItemIndex];\n const option = this._keyManager.activeItem;\n option._clickViaInteraction();\n }\n\n @HostListener('window:keydown.Escape', ['$event'])\n @HostListener('window:keydown.ArrowLeft', ['$event'])\n public onCloseLeafMenu(event: KeyboardEvent): void {\n if (!this.isLeaf) {\n return;\n }\n this.cancelEvent(event);\n this.closeLeafMenu.emit({ exceptRootMenu: event.key === Key.ArrowLeft, event });\n }\n\n @HostListener('document:click', ['$event'])\n public closeMenu(event: MouseEvent): void {\n if (event.type === 'click' && event.button === 2) {\n return;\n }\n this.closeAllMenus.emit({ event });\n }\n\n @HostListener('mouseleave', ['$event'])\n public onMouseLeave(event: MouseEvent): void {\n if (this.isLeaf) {\n this.closeLeafMenu.emit({ exceptRootMenu: true, event });\n }\n }\n\n public onOpenSubMenu(menuItem: MenuItemDirective, event?: MouseEvent | KeyboardEvent): void {}\n\n public onMenuItemSelect(menuItem: MenuItemDirective, event: MouseEvent | KeyboardEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.onOpenSubMenu(menuItem, event);\n }\n\n private cancelEvent(event): void {\n if (!event) {\n return;\n }\n\n const target: HTMLElement = event.target;\n if (['INPUT', 'TEXTAREA', 'SELECT'].indexOf(target.tagName) > -1 || target.isContentEditable) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n }\n}\n","import { ContentChild, Directive, ElementRef, Input, TemplateRef } from '@angular/core';\nimport { NovoOption } from 'novo-elements/elements/common';\n\n/**\n * This is a structural directive now. Should only be used on `novo-options`\n */\n@Directive({\n selector: '[menuItem]',\n standalone: false\n})\nexport class MenuItemDirective {\n @Input() public menuItemEnabled: boolean | ((item: any) => boolean) = true;\n @Input() public menuItemVisible: boolean | ((item: any) => boolean) = true;\n\n @ContentChild(NovoOption) optionRef: NovoOption;\n\n public currentItem: any;\n\n constructor(public template: TemplateRef<{ item: any }>, public elementRef: ElementRef) {}\n}\n","import { Overlay, OverlayRef, ScrollStrategyOptions } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ComponentRef, ElementRef, Injectable } from '@angular/core';\nimport { Subject, Subscription } from 'rxjs';\nimport { MenuContentComponent } from './menu-content.component';\nimport type { MenuItemDirective } from './menu-item.directive';\nimport type { MenuComponent } from './menu.component';\nimport type { MenuDirective } from './menu.directive';\n\nexport interface IMenuClickEvent {\n anchorElement?: Element | EventTarget;\n menu?: MenuComponent;\n event?: MouseEvent | KeyboardEvent;\n parentMenu?: MenuComponent;\n menuTrigger?: MenuDirective;\n item: any;\n activeMenuItemIndex?: number;\n}\nexport interface IMenuContext extends IMenuClickEvent {\n menuItems: MenuItemDirective[];\n menuClass: string;\n}\nexport interface CloseLeafMenuEvent {\n exceptRootMenu?: boolean;\n event?: MouseEvent | KeyboardEvent;\n}\nexport interface OverlayRefWithMenu extends OverlayRef {\n menu?: MenuContentComponent;\n}\n\nexport interface CancelMenuEvent {\n eventType: 'cancel';\n event?: MouseEvent | KeyboardEvent;\n}\nexport interface ExecuteMenuEvent {\n eventType: 'execute';\n event?: MouseEvent | KeyboardEvent;\n item: any;\n menuItem: MenuItemDirective;\n}\nexport type CloseMenuEvent = ExecuteMenuEvent | CancelMenuEvent;\n\n@Injectable({ providedIn: 'root' })\nexport class NovoMenuService {\n public isDestroyingLeafMenu = false;\n\n public show: Subject<IMenuClickEvent> = new Subject<IMenuClickEvent>();\n public triggerClose: Subject<MenuContentComponent> = new Subject();\n public close: Subject<CloseMenuEvent> = new Subject();\n\n private menuContent: ComponentRef<MenuContentComponent>;\n private overlays: OverlayRef[] = [];\n private fakeElement: any = {\n getBoundingClientRect: (): any => ({\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n x: 0,\n y: 0,\n }),\n };\n\n constructor(private overlay: Overlay, private scrollStrategy: ScrollStrategyOptions) {}\n\n public openMenu(context: IMenuContext) {\n const { anchorElement, event, parentMenu } = context;\n\n if (!parentMenu) {\n const mouseEvent = event as MouseEvent;\n this.fakeElement.getBoundingClientRect = (): any => ({\n bottom: mouseEvent.clientY,\n height: 0,\n left: mouseEvent.clientX,\n right: mouseEvent.clientX,\n top: mouseEvent.clientY,\n width: 0,\n x: mouseEvent.clientX,\n y: mouseEvent.clientY,\n });\n this.closeAllMenus({ eventType: 'cancel', event });\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(new ElementRef(anchorElement || this.fakeElement))\n .withFlexibleDimensions(false)\n .withPositions([\n { originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top' },\n { originX: 'start', originY: 'top', overlayX: 'start', overlayY: 'bottom' },\n { originX: 'end', originY: 'top', overlayX: 'start', overlayY: 'top' },\n { originX: 'start', originY: 'top', overlayX: 'end', overlayY: 'top' },\n { originX: 'end', originY: 'center', overlayX: 'start', overlayY: 'center' },\n { originX: 'start', originY: 'center', overlayX: 'end', overlayY: 'center' },\n ]);\n this.overlays = [\n this.overlay.create({\n positionStrategy,\n panelClass: 'novo-menu',\n scrollStrategy: this.scrollStrategy.close(),\n }),\n ];\n this.attachMenu(this.overlays[0], context);\n } else {\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(new ElementRef(event ? event.target : anchorElement))\n .withFlexibleDimensions(false)\n .withPositions([\n { originX: 'end', originY: 'top', overlayX: 'start', overlayY: 'top' },\n { originX: 'start', originY: 'top', overlayX: 'end', overlayY: 'top' },\n { originX: 'end', originY: 'bottom', overlayX: 'end', overlayY: 'top' },\n { originX: 'start', originY: 'bottom', overlayX: 'end', overlayY: 'bottom' },\n ]);\n const newOverlay = this.overlay.create({\n positionStrategy,\n panelClass: 'novo-menu',\n scrollStrategy: this.scrollStrategy.close(),\n });\n this.overlays = this.overlays.concat(newOverlay);\n this.attachMenu(newOverlay, context);\n }\n }\n\n public attachMenu(overlay: OverlayRef, context: IMenuContext): void {\n const { event, item, menu, menuItems, menuClass, menuTrigger } = context;\n\n const menuContent: ComponentRef<MenuContentComponent> = overlay.attach(new ComponentPortal(MenuContentComponent));\n menuContent.instance.event = event;\n menuContent.instance.item = item;\n menuContent.instance.menu = menu;\n menuContent.instance.menuItems = menuItems;\n menuContent.instance.overlay = overlay;\n menuContent.instance.isLeaf = true;\n menuContent.instance.menuClass = menuClass;\n (overlay as OverlayRefWithMenu).menu = menuContent.instance;\n\n if (!!menuTrigger) {\n menuTrigger.menuContent = menuContent.instance;\n }\n\n const subscriptions: Subscription = new Subscription();\n subscriptions.add(\n menuContent.instance.closeAllMenus\n .asObservable()\n .subscribe((closeAllEvent) => this.closeAllMenus({ eventType: 'cancel', ...closeAllEvent })),\n );\n subscriptions.add(\n menuContent.instance.closeLeafMenu.asObservable().subscribe((closeLeafMenuEvent) => this.destroyLeafMenu(closeLeafMenuEvent)),\n );\n subscriptions.add(\n menuContent.instance.openSubMenu.asObservable().subscribe((subMenuEvent: IMenuContext) => {\n this.destroySubMenus(menuContent.instance);\n if (!subMenuEvent.menu) {\n menuContent.instance.isLeaf = true;\n return;\n }\n menuContent.instance.isLeaf = false;\n this.show.next(subMenuEvent);\n }),\n );\n menuContent.onDestroy(() => {\n subscriptions.unsubscribe();\n });\n menuContent.changeDetectorRef.detectChanges();\n }\n\n public closeAllMenus(closeEvent: CloseMenuEvent): void {\n if (this.overlays) {\n this.close.next(closeEvent);\n this.overlays.forEach((overlay, index) => {\n overlay.detach();\n overlay.dispose();\n });\n }\n this.overlays = [];\n }\n\n public hasOpenMenus() {\n return this.overlays?.length > 0;\n }\n\n public getLastAttachedOverlay(): OverlayRefWithMenu {\n let overlay: OverlayRef = this.overlays[this.overlays.length - 1];\n while (this.overlays.length > 1 && overlay && !overlay.hasAttached()) {\n overlay.detach();\n overlay.dispose();\n this.overlays = this.overlays.slice(0, -1);\n overlay = this.overlays[this.overlays.length - 1];\n }\n return overlay;\n }\n\n public destroyLeafMenu({ exceptRootMenu, event }: CloseLeafMenuEvent = {}): void {\n if (this.isDestroyingLeafMenu) {\n return;\n }\n this.isDestroyingLeafMenu = true;\n\n setTimeout(() => {\n const overlay = this.getLastAttachedOverlay();\n if (this.overlays.length > 1 && overlay) {\n overlay.detach();\n overlay.dispose();\n }\n if (!exceptRootMenu && this.overlays.length > 0 && overlay) {\n this.close.next({ eventType: 'cancel', event });\n overlay.detach();\n overlay.dispose();\n }\n\n const newLeaf = this.getLastAttachedOverlay();\n if (newLeaf) {\n newLeaf.menu.isLeaf = true;\n }\n\n this.isDestroyingLeafMenu = false;\n });\n }\n\n public destroySubMenus(menu: MenuContentComponent): void {\n const overlay = menu.overlay;\n const index = this.overlays.indexOf(overlay);\n this.overlays.slice(index + 1).forEach((subMenuOverlay) => {\n subMenuOverlay.detach();\n subMenuOverlay.dispose();\n });\n }\n\n public isLeafMenu(menuContent: MenuContentComponent): boolean {\n const overlay = this.getLastAttachedOverlay();\n return menuContent.overlay === overlay;\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const MENU_OPTIONS = new InjectionToken('MENU_OPTIONS');\n\nexport const PARENT_MENU = new InjectionToken('PARENT_MENU');\n","import {\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { first } from 'rxjs/operators';\nimport { NovoOption } from 'novo-elements/elements/common';\nimport { MenuItemDirective } from './menu-item.directive';\nimport { CloseMenuEvent, IMenuClickEvent, NovoMenuService } from './menu.service';\nimport { MENU_OPTIONS, PARENT_MENU } from './menu.tokens';\nimport { ILinkConfig, IMenuOptions } from './menu.types';\n\nexport interface MouseLocation {\n left?: string;\n marginLeft?: string;\n marginTop?: string;\n top?: string;\n}\n\n@Component({\n encapsulation: ViewEncapsulation.None,\n selector: 'novo-menu',\n styles: [\n `\n .cdk-overlay-container {\n position: fixed;\n z-index: z(overlay);\n pointer-events: none;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n .novo-menu.cdk-overlay-pane {\n position: absolute;\n pointer-events: auto;\n box-sizing: border-box;\n }\n `,\n ],\n template: ``,\n providers: [{ provide: PARENT_MENU, useExisting: MenuComponent }],\n standalone: false\n})\nexport class MenuComponent implements OnDestroy {\n @Input() public menuClass = '';\n @Input() public autoFocus = false;\n @Input() public disabled = false;\n @Output() public close: EventEmitter<CloseMenuEvent> = new EventEmitter();\n @Output() public open: EventEmitter<IMenuClickEvent> = new EventEmitter();\n @ContentChildren(MenuItemDirective) public menuItems: QueryList<MenuItemDirective>;\n @ContentChildren(NovoOption) public menuOptions: QueryList<NovoOption>;\n @ViewChild('menu') public menuElement: ElementRef;\n public visibleMenuItems: MenuItemDirective[] = [];\n\n public links: ILinkConfig[] = [];\n public item: any;\n public event: MouseEvent | KeyboardEvent;\n private subscription: Subscription = new Subscription();\n\n constructor(\n private menuService: NovoMenuService,\n private changeDetector: ChangeDetectorRef,\n private elementRef: ElementRef,\n @Optional()\n @Inject(MENU_OPTIONS)\n private options: IMenuOptions,\n ) {\n if (options) {\n this.autoFocus = options.autoFocus;\n }\n this.subscription.add(\n menuService.show.subscribe((menuEvent) => {\n this.onMenuEvent(menuEvent);\n }),\n );\n }\n\n public ngOnDestroy(): void {\n this.subscription.unsubscribe();\n }\n\n public onMenuEvent(menuEvent: IMenuClickEvent): void {\n if (this.disabled) {\n return;\n }\n const { menu, event, item } = menuEvent;\n if (menu && menu !== this) {\n return;\n }\n this.event = event;\n this.item = item;\n this.setVisibleMenuItems();\n this.menuService.openMenu({ ...menuEvent, menuItems: this.visibleMenuItems, menuClass: this.menuClass });\n this.menuService.close\n .asObservable()\n .pipe(first())\n .subscribe((closeEvent) => this.close.emit(closeEvent));\n this.open.next(menuEvent);\n }\n\n public isMenuItemVisible(menuItem: MenuItemDirective): boolean {\n return this.evaluateIfFunction(menuItem.menuItemVisible);\n }\n\n public setVisibleMenuItems(): void {\n this.visibleMenuItems = this.menuItems.filter((menuItem) => this.isMenuItemVisible(menuItem));\n }\n\n public evaluateIfFunction(value: any): any {\n if (value instanceof Function) {\n return value(this.item);\n }\n return value;\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { BooleanInput } from 'novo-elements/utils';\nimport { MenuContentComponent } from './menu-content.component';\nimport { MenuComponent } from './menu.component';\nimport { NovoMenuService } from './menu.service';\nimport { PARENT_MENU } from './menu.tokens';\n\n@Directive({\n selector: '[menu]',\n standalone: false\n})\nexport class MenuDirective implements OnInit, OnDestroy {\n @Input() public menuContext: any;\n @Input() public menu: MenuComponent;\n @Input() public menuContent: MenuContentComponent;\n @Input() @BooleanInput() public waitWhenOpen: boolean = false;\n @Input() @BooleanInput() public capture: boolean = false;\n @Input() @BooleanInput() public anchor: boolean = false;\n @Input() public trigger: 'click' | 'contextmenu' | 'mouseenter' = 'click';\n\n isSubMenu: boolean = false;\n isActive: boolean = false;\n @HostBinding('class.menu-active')\n get hb_menuActive() {\n return this.isActive;\n }\n\n subscription: Subscription;\n\n constructor(\n private element: ElementRef,\n private menuService: NovoMenuService,\n private cdr: ChangeDetectorRef,\n @Optional() @Inject(PARENT_MENU) private _parentMenu: MenuComponent,\n ) {\n if (!!this._parentMenu) {\n this.isSubMenu = true;\n this.trigger = 'mouseenter';\n }\n }\n\n ngOnInit() {\n this.subscription = this.menuService.close.subscribe(() => {\n this.isActive = false;\n this.cdr.detectChanges();\n });\n }\n\n ngOnDestroy() {\n this.isActive = false;\n this.subscription.unsubscribe();\n }\n\n @HostListener('click', ['$event'])\n @HostListener('contextmenu', ['$event'])\n @HostListener('mouseenter', ['$event'])\n public onMenuClick(event: MouseEvent): void {\n if (this.trigger !== event.type) {\n return;\n }\n if (this.trigger === 'click' && event.button !== 0) {\n return;\n } else if (this.trigger === 'contextmenu' && event.button !== 2) {\n return;\n } else if (this.waitWhenOpen && this.menuService.hasOpenMenus()) {\n return;\n }\n\n if (!this.menu.disabled) {\n this.menuService.show.next({\n menu: this.menu,\n event,\n item: this.menuContext,\n anchorElement: this.anchor ? this.element.nativeElement : null,\n parentMenu: this._parentMenu,\n menuTrigger: this,\n });\n this.isActive = true;\n event.preventDefault();\n event.stopPropagation();\n this.cdr.detectChanges();\n }\n }\n}\n","import { FullscreenOverlayContainer, OverlayContainer, OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { MenuContentComponent } from './menu-content.component';\nimport { MenuItemDirective } from './menu-item.directive';\nimport { MenuComponent } from './menu.component';\nimport { MenuDirective } from './menu.directive';\nimport { NovoMenuService } from './menu.service';\nimport { MENU_OPTIONS } from './menu.tokens';\nimport { IMenuOptions } from './menu.types';\n\n@NgModule({\n declarations: [MenuDirective, MenuComponent, MenuContentComponent, MenuItemDirective],\n exports: [MenuDirective, MenuComponent, MenuItemDirective],\n imports: [CommonModule, OverlayModule, NovoCommonModule, NovoIconModule],\n})\nexport class NovoMenuModule {\n public static forRoot(options?: IMenuOptions): ModuleWithProviders<NovoMenuModule> {\n return {\n ngModule: NovoMenuModule,\n providers: [\n NovoMenuService,\n {\n provide: MENU_OPTIONS,\n useValue: options,\n },\n { provide: OverlayContainer, useClass: FullscreenOverlayContainer },\n ],\n };\n }\n}\n","/*\n * Public API Surface of ngx-contextmenu\n */\n\nexport * from './menu-content.component';\nexport * from './menu-item.directive';\nexport * from './menu.component';\nexport * from './menu.directive';\nexport { NovoMenuModule } from './menu.module';\nexport * from './menu.service';\nexport * from './menu.tokens';\nexport * from './menu.types';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-menu.mjs","sources":["../../../projects/novo-elements/src/elements/menu/menu-content.component.ts","../../../projects/novo-elements/src/elements/menu/menu-item.directive.ts","../../../projects/novo-elements/src/elements/menu/menu.service.ts","../../../projects/novo-elements/src/elements/menu/menu.tokens.ts","../../../projects/novo-elements/src/elements/menu/menu.component.ts","../../../projects/novo-elements/src/elements/menu/menu.directive.ts","../../../projects/novo-elements/src/elements/menu/menu.module.ts","../../../projects/novo-elements/src/elements/menu/index.ts","../../../projects/novo-elements/src/elements/menu/novo-elements-elements-menu.ts"],"sourcesContent":["import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { AfterViewInit, Component, EventEmitter, HostListener, Input, OnDestroy, OnInit, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { Key } from 'novo-elements/utils';\nimport { NovoOption } from 'novo-elements/elements/common';\nimport { MenuItemDirective } from './menu-item.directive';\nimport { CloseLeafMenuEvent, IMenuClickEvent } from './menu.service';\nimport { ILinkConfig } from './menu.types';\n\n@Component({\n selector: 'menu-content',\n styleUrls: ['./menu-content.component.scss'],\n template: `<div class=\"menu-container novo-menu\" [ngClass]=\"menuClass\" tabindex=\"0\">\n <ul #menu class=\"menu\" style=\"position: static; float: none;\" tabindex=\"0\">\n <ng-container *ngFor=\"let menuItem of menuItems; let i = index\">\n <ng-template [ngTemplateOutlet]=\"menuItem.template\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\n </ng-container>\n </ul>\n </div> `,\n standalone: false,\n})\nexport class MenuContentComponent implements OnInit, OnDestroy, AfterViewInit {\n @Input() public menuItems: MenuItemDirective[] = [];\n @Input() public item: any;\n @Input() public event: MouseEvent | KeyboardEvent;\n @Input() public menu: any;\n @Input() public parentMenu: MenuContentComponent;\n @Input() public menuClass: string;\n @Input() public overlay: OverlayRef;\n @Input() public isLeaf = false;\n @Output() public openSubMenu: EventEmitter<IMenuClickEvent> = new EventEmitter();\n @Output() public closeLeafMenu: EventEmitter<CloseLeafMenuEvent> = new EventEmitter();\n @Output() public closeAllMenus: EventEmitter<{ event: MouseEvent }> = new EventEmitter();\n\n public autoFocus = false;\n private _keyManager: ActiveDescendantKeyManager<NovoOption>;\n private subscription: Subscription = new Subscription();\n constructor() {}\n\n ngOnInit(): void {}\n\n ngAfterViewInit() {\n if (this.autoFocus) {\n setTimeout(() => this.focus());\n }\n this.overlay.updatePosition();\n this._keyManager = new ActiveDescendantKeyManager<NovoOption>(this.menu.menuOptions).withWrap();\n }\n\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n\n focus(): void {}\n\n stopEvent($event: MouseEvent) {\n $event.stopPropagation();\n }\n\n public isMenuItemEnabled(menuItem: MenuItemDirective): boolean {\n return this.evaluateIfFunction(menuItem && menuItem.menuItemEnabled);\n }\n\n public isMenuItemVisible(menuItem: MenuItemDirective): boolean {\n return this.evaluateIfFunction(menuItem && menuItem.menuItemVisible);\n }\n\n public evaluateIfFunction(value: any): any {\n if (value instanceof Function) {\n return value(this.item);\n }\n return value;\n }\n\n public isDisabled(link: ILinkConfig): boolean {\n return link.enabled && !link.enabled(this.item);\n }\n\n @HostListener('window:keydown.ArrowDown', ['$event'])\n @HostListener('window:keydown.ArrowUp', ['$event'])\n public onKeyEvent(event: KeyboardEvent): void {\n if (!this.isLeaf) {\n return;\n }\n this._keyManager.onKeydown(event);\n }\n\n @HostListener('window:keydown.ArrowRight', ['$event'])\n public keyboardOpenSubMenu(event?: KeyboardEvent): void {\n if (!this.isLeaf) {\n return;\n }\n this.cancelEvent(event);\n const menuItem = this.menuItems[this._keyManager.activeItemIndex];\n if (menuItem) {\n this.onOpenSubMenu(menuItem);\n }\n }\n\n @HostListener('window:keydown.Enter', ['$event'])\n @HostListener('window:keydown.Space', ['$event'])\n public keyboardMenuItemSelect(event?: KeyboardEvent): void {\n if (!this.isLeaf) {\n return;\n }\n this.cancelEvent(event);\n const menuItem = this.menuItems[this._keyManager.activeItemIndex];\n const option = this._keyManager.activeItem;\n option._clickViaInteraction();\n }\n\n @HostListener('window:keydown.Escape', ['$event'])\n @HostListener('window:keydown.ArrowLeft', ['$event'])\n public onCloseLeafMenu(event: KeyboardEvent): void {\n if (!this.isLeaf) {\n return;\n }\n this.cancelEvent(event);\n this.closeLeafMenu.emit({ exceptRootMenu: event.key === Key.ArrowLeft, event });\n }\n\n @HostListener('document:click', ['$event'])\n public closeMenu(event: MouseEvent): void {\n if (event.type === 'click' && event.button === 2) {\n return;\n }\n this.closeAllMenus.emit({ event });\n }\n\n @HostListener('mouseleave', ['$event'])\n public onMouseLeave(event: MouseEvent): void {\n if (this.isLeaf) {\n this.closeLeafMenu.emit({ exceptRootMenu: true, event });\n }\n }\n\n public onOpenSubMenu(menuItem: MenuItemDirective, event?: MouseEvent | KeyboardEvent): void {}\n\n public onMenuItemSelect(menuItem: MenuItemDirective, event: MouseEvent | KeyboardEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.onOpenSubMenu(menuItem, event);\n }\n\n private cancelEvent(event): void {\n if (!event) {\n return;\n }\n\n const target: HTMLElement = event.target;\n if (['INPUT', 'TEXTAREA', 'SELECT'].indexOf(target.tagName) > -1 || target.isContentEditable) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n }\n}\n","import { ContentChild, Directive, ElementRef, Input, TemplateRef } from '@angular/core';\nimport { NovoOption } from 'novo-elements/elements/common';\n\n/**\n * This is a structural directive now. Should only be used on `novo-options`\n */\n@Directive({\n selector: '[menuItem]',\n standalone: false,\n})\nexport class MenuItemDirective {\n @Input() public menuItemEnabled: boolean | ((item: any) => boolean) = true;\n @Input() public menuItemVisible: boolean | ((item: any) => boolean) = true;\n\n @ContentChild(NovoOption) optionRef: NovoOption;\n\n public currentItem: any;\n\n constructor(public template: TemplateRef<{ item: any }>, public elementRef: ElementRef) {}\n}\n","import { Overlay, OverlayRef, ScrollStrategyOptions } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ComponentRef, ElementRef, Injectable } from '@angular/core';\nimport { Subject, Subscription } from 'rxjs';\nimport { MenuContentComponent } from './menu-content.component';\nimport type { MenuItemDirective } from './menu-item.directive';\nimport type { MenuComponent } from './menu.component';\nimport type { MenuDirective } from './menu.directive';\n\nexport interface IMenuClickEvent {\n anchorElement?: Element | EventTarget;\n menu?: MenuComponent;\n event?: MouseEvent | KeyboardEvent;\n parentMenu?: MenuComponent;\n menuTrigger?: MenuDirective;\n item: any;\n activeMenuItemIndex?: number;\n}\nexport interface IMenuContext extends IMenuClickEvent {\n menuItems: MenuItemDirective[];\n menuClass: string;\n}\nexport interface CloseLeafMenuEvent {\n exceptRootMenu?: boolean;\n event?: MouseEvent | KeyboardEvent;\n}\nexport interface OverlayRefWithMenu extends OverlayRef {\n menu?: MenuContentComponent;\n}\n\nexport interface CancelMenuEvent {\n eventType: 'cancel';\n event?: MouseEvent | KeyboardEvent;\n}\nexport interface ExecuteMenuEvent {\n eventType: 'execute';\n event?: MouseEvent | KeyboardEvent;\n item: any;\n menuItem: MenuItemDirective;\n}\nexport type CloseMenuEvent = ExecuteMenuEvent | CancelMenuEvent;\n\n@Injectable({ providedIn: 'root' })\nexport class NovoMenuService {\n public isDestroyingLeafMenu = false;\n\n public show: Subject<IMenuClickEvent> = new Subject<IMenuClickEvent>();\n public triggerClose: Subject<MenuContentComponent> = new Subject();\n public close: Subject<CloseMenuEvent> = new Subject();\n\n private menuContent: ComponentRef<MenuContentComponent>;\n private overlays: OverlayRef[] = [];\n private fakeElement: any = {\n getBoundingClientRect: (): any => ({\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n x: 0,\n y: 0,\n }),\n };\n\n constructor(private overlay: Overlay, private scrollStrategy: ScrollStrategyOptions) {}\n\n public openMenu(context: IMenuContext) {\n const { anchorElement, event, parentMenu } = context;\n\n if (!parentMenu) {\n const mouseEvent = event as MouseEvent;\n this.fakeElement.getBoundingClientRect = (): any => ({\n bottom: mouseEvent.clientY,\n height: 0,\n left: mouseEvent.clientX,\n right: mouseEvent.clientX,\n top: mouseEvent.clientY,\n width: 0,\n x: mouseEvent.clientX,\n y: mouseEvent.clientY,\n });\n this.closeAllMenus({ eventType: 'cancel', event });\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(new ElementRef(anchorElement || this.fakeElement))\n .withFlexibleDimensions(false)\n .withPositions([\n { originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top' },\n { originX: 'start', originY: 'top', overlayX: 'start', overlayY: 'bottom' },\n { originX: 'end', originY: 'top', overlayX: 'start', overlayY: 'top' },\n { originX: 'start', originY: 'top', overlayX: 'end', overlayY: 'top' },\n { originX: 'end', originY: 'center', overlayX: 'start', overlayY: 'center' },\n { originX: 'start', originY: 'center', overlayX: 'end', overlayY: 'center' },\n ]);\n this.overlays = [\n this.overlay.create({\n positionStrategy,\n panelClass: 'novo-menu',\n scrollStrategy: this.scrollStrategy.close(),\n }),\n ];\n this.attachMenu(this.overlays[0], context);\n } else {\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(new ElementRef(event ? event.target : anchorElement))\n .withFlexibleDimensions(false)\n .withPositions([\n { originX: 'end', originY: 'top', overlayX: 'start', overlayY: 'top' },\n { originX: 'start', originY: 'top', overlayX: 'end', overlayY: 'top' },\n { originX: 'end', originY: 'bottom', overlayX: 'end', overlayY: 'top' },\n { originX: 'start', originY: 'bottom', overlayX: 'end', overlayY: 'bottom' },\n ]);\n const newOverlay = this.overlay.create({\n positionStrategy,\n panelClass: 'novo-menu',\n scrollStrategy: this.scrollStrategy.close(),\n });\n this.overlays = this.overlays.concat(newOverlay);\n this.attachMenu(newOverlay, context);\n }\n }\n\n public attachMenu(overlay: OverlayRef, context: IMenuContext): void {\n const { event, item, menu, menuItems, menuClass, menuTrigger } = context;\n\n const menuContent: ComponentRef<MenuContentComponent> = overlay.attach(new ComponentPortal(MenuContentComponent));\n menuContent.instance.event = event;\n menuContent.instance.item = item;\n menuContent.instance.menu = menu;\n menuContent.instance.menuItems = menuItems;\n menuContent.instance.overlay = overlay;\n menuContent.instance.isLeaf = true;\n menuContent.instance.menuClass = menuClass;\n (overlay as OverlayRefWithMenu).menu = menuContent.instance;\n\n if (!!menuTrigger) {\n menuTrigger.menuContent = menuContent.instance;\n }\n\n const subscriptions: Subscription = new Subscription();\n subscriptions.add(\n menuContent.instance.closeAllMenus\n .asObservable()\n .subscribe((closeAllEvent) => this.closeAllMenus({ eventType: 'cancel', ...closeAllEvent })),\n );\n subscriptions.add(\n menuContent.instance.closeLeafMenu.asObservable().subscribe((closeLeafMenuEvent) => this.destroyLeafMenu(closeLeafMenuEvent)),\n );\n subscriptions.add(\n menuContent.instance.openSubMenu.asObservable().subscribe((subMenuEvent: IMenuContext) => {\n this.destroySubMenus(menuContent.instance);\n if (!subMenuEvent.menu) {\n menuContent.instance.isLeaf = true;\n return;\n }\n menuContent.instance.isLeaf = false;\n this.show.next(subMenuEvent);\n }),\n );\n menuContent.onDestroy(() => {\n subscriptions.unsubscribe();\n });\n menuContent.changeDetectorRef.detectChanges();\n }\n\n public closeAllMenus(closeEvent: CloseMenuEvent): void {\n if (this.overlays) {\n this.close.next(closeEvent);\n this.overlays.forEach((overlay, index) => {\n overlay.detach();\n overlay.dispose();\n });\n }\n this.overlays = [];\n }\n\n public hasOpenMenus() {\n return this.overlays?.length > 0;\n }\n\n public getLastAttachedOverlay(): OverlayRefWithMenu {\n let overlay: OverlayRef = this.overlays[this.overlays.length - 1];\n while (this.overlays.length > 1 && overlay && !overlay.hasAttached()) {\n overlay.detach();\n overlay.dispose();\n this.overlays = this.overlays.slice(0, -1);\n overlay = this.overlays[this.overlays.length - 1];\n }\n return overlay;\n }\n\n public destroyLeafMenu({ exceptRootMenu, event }: CloseLeafMenuEvent = {}): void {\n if (this.isDestroyingLeafMenu) {\n return;\n }\n this.isDestroyingLeafMenu = true;\n\n setTimeout(() => {\n const overlay = this.getLastAttachedOverlay();\n if (this.overlays.length > 1 && overlay) {\n overlay.detach();\n overlay.dispose();\n }\n if (!exceptRootMenu && this.overlays.length > 0 && overlay) {\n this.close.next({ eventType: 'cancel', event });\n overlay.detach();\n overlay.dispose();\n }\n\n const newLeaf = this.getLastAttachedOverlay();\n if (newLeaf) {\n newLeaf.menu.isLeaf = true;\n }\n\n this.isDestroyingLeafMenu = false;\n });\n }\n\n public destroySubMenus(menu: MenuContentComponent): void {\n const overlay = menu.overlay;\n const index = this.overlays.indexOf(overlay);\n this.overlays.slice(index + 1).forEach((subMenuOverlay) => {\n subMenuOverlay.detach();\n subMenuOverlay.dispose();\n });\n }\n\n public isLeafMenu(menuContent: MenuContentComponent): boolean {\n const overlay = this.getLastAttachedOverlay();\n return menuContent.overlay === overlay;\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const MENU_OPTIONS = new InjectionToken('MENU_OPTIONS');\n\nexport const PARENT_MENU = new InjectionToken('PARENT_MENU');\n","import {\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { first } from 'rxjs/operators';\nimport { NovoOption } from 'novo-elements/elements/common';\nimport { MenuItemDirective } from './menu-item.directive';\nimport { CloseMenuEvent, IMenuClickEvent, NovoMenuService } from './menu.service';\nimport { MENU_OPTIONS, PARENT_MENU } from './menu.tokens';\nimport { ILinkConfig, IMenuOptions } from './menu.types';\n\nexport interface MouseLocation {\n left?: string;\n marginLeft?: string;\n marginTop?: string;\n top?: string;\n}\n\n@Component({\n encapsulation: ViewEncapsulation.None,\n selector: 'novo-menu',\n styles: [\n `\n .cdk-overlay-container {\n position: fixed;\n z-index: z(overlay);\n pointer-events: none;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n .novo-menu.cdk-overlay-pane {\n position: absolute;\n pointer-events: auto;\n box-sizing: border-box;\n }\n `,\n ],\n template: '',\n providers: [{ provide: PARENT_MENU, useExisting: MenuComponent }],\n standalone: false,\n})\nexport class MenuComponent implements OnDestroy {\n @Input() public menuClass = '';\n @Input() public autoFocus = false;\n @Input() public disabled = false;\n @Output() public close: EventEmitter<CloseMenuEvent> = new EventEmitter();\n @Output() public open: EventEmitter<IMenuClickEvent> = new EventEmitter();\n @ContentChildren(MenuItemDirective) public menuItems: QueryList<MenuItemDirective>;\n @ContentChildren(NovoOption) public menuOptions: QueryList<NovoOption>;\n @ViewChild('menu') public menuElement: ElementRef;\n public visibleMenuItems: MenuItemDirective[] = [];\n\n public links: ILinkConfig[] = [];\n public item: any;\n public event: MouseEvent | KeyboardEvent;\n private subscription: Subscription = new Subscription();\n\n constructor(\n private menuService: NovoMenuService,\n private changeDetector: ChangeDetectorRef,\n private elementRef: ElementRef,\n @Optional()\n @Inject(MENU_OPTIONS)\n private options: IMenuOptions,\n ) {\n if (options) {\n this.autoFocus = options.autoFocus;\n }\n this.subscription.add(\n menuService.show.subscribe((menuEvent) => {\n this.onMenuEvent(menuEvent);\n }),\n );\n }\n\n public ngOnDestroy(): void {\n this.subscription.unsubscribe();\n }\n\n public onMenuEvent(menuEvent: IMenuClickEvent): void {\n if (this.disabled) {\n return;\n }\n const { menu, event, item } = menuEvent;\n if (menu && menu !== this) {\n return;\n }\n this.event = event;\n this.item = item;\n this.setVisibleMenuItems();\n this.menuService.openMenu({ ...menuEvent, menuItems: this.visibleMenuItems, menuClass: this.menuClass });\n this.menuService.close\n .asObservable()\n .pipe(first())\n .subscribe((closeEvent) => this.close.emit(closeEvent));\n this.open.next(menuEvent);\n }\n\n public isMenuItemVisible(menuItem: MenuItemDirective): boolean {\n return this.evaluateIfFunction(menuItem.menuItemVisible);\n }\n\n public setVisibleMenuItems(): void {\n this.visibleMenuItems = this.menuItems.filter((menuItem) => this.isMenuItemVisible(menuItem));\n }\n\n public evaluateIfFunction(value: any): any {\n if (value instanceof Function) {\n return value(this.item);\n }\n return value;\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { BooleanInput } from 'novo-elements/utils';\nimport { MenuContentComponent } from './menu-content.component';\nimport { MenuComponent } from './menu.component';\nimport { NovoMenuService } from './menu.service';\nimport { PARENT_MENU } from './menu.tokens';\n\n@Directive({\n selector: '[menu]',\n standalone: false,\n})\nexport class MenuDirective implements OnInit, OnDestroy {\n @Input() public menuContext: any;\n @Input() public menu: MenuComponent;\n @Input() public menuContent: MenuContentComponent;\n @Input() @BooleanInput() public waitWhenOpen: boolean = false;\n @Input() @BooleanInput() public capture: boolean = false;\n @Input() @BooleanInput() public anchor: boolean = false;\n @Input() public trigger: 'click' | 'contextmenu' | 'mouseenter' = 'click';\n\n isSubMenu: boolean = false;\n isActive: boolean = false;\n @HostBinding('class.menu-active')\n get hb_menuActive() {\n return this.isActive;\n }\n\n subscription: Subscription;\n\n constructor(\n private element: ElementRef,\n private menuService: NovoMenuService,\n private cdr: ChangeDetectorRef,\n @Optional() @Inject(PARENT_MENU) private _parentMenu: MenuComponent,\n ) {\n if (!!this._parentMenu) {\n this.isSubMenu = true;\n this.trigger = 'mouseenter';\n }\n }\n\n ngOnInit() {\n this.subscription = this.menuService.close.subscribe(() => {\n this.isActive = false;\n this.cdr.detectChanges();\n });\n }\n\n ngOnDestroy() {\n this.isActive = false;\n this.subscription.unsubscribe();\n }\n\n @HostListener('click', ['$event'])\n @HostListener('contextmenu', ['$event'])\n @HostListener('mouseenter', ['$event'])\n public onMenuClick(event: MouseEvent): void {\n if (this.trigger !== event.type) {\n return;\n }\n if (this.trigger === 'click' && event.button !== 0) {\n return;\n } else if (this.trigger === 'contextmenu' && event.button !== 2) {\n return;\n } else if (this.waitWhenOpen && this.menuService.hasOpenMenus()) {\n return;\n }\n\n if (!this.menu.disabled) {\n this.menuService.show.next({\n menu: this.menu,\n event,\n item: this.menuContext,\n anchorElement: this.anchor ? this.element.nativeElement : null,\n parentMenu: this._parentMenu,\n menuTrigger: this,\n });\n this.isActive = true;\n event.preventDefault();\n event.stopPropagation();\n this.cdr.detectChanges();\n }\n }\n}\n","import { FullscreenOverlayContainer, OverlayContainer, OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { MenuContentComponent } from './menu-content.component';\nimport { MenuItemDirective } from './menu-item.directive';\nimport { MenuComponent } from './menu.component';\nimport { MenuDirective } from './menu.directive';\nimport { NovoMenuService } from './menu.service';\nimport { MENU_OPTIONS } from './menu.tokens';\nimport { IMenuOptions } from './menu.types';\n\n@NgModule({\n declarations: [MenuDirective, MenuComponent, MenuContentComponent, MenuItemDirective],\n exports: [MenuDirective, MenuComponent, MenuItemDirective],\n imports: [CommonModule, OverlayModule, NovoCommonModule, NovoIconModule],\n})\nexport class NovoMenuModule {\n public static forRoot(options?: IMenuOptions): ModuleWithProviders<NovoMenuModule> {\n return {\n ngModule: NovoMenuModule,\n providers: [\n NovoMenuService,\n {\n provide: MENU_OPTIONS,\n useValue: options,\n },\n { provide: OverlayContainer, useClass: FullscreenOverlayContainer },\n ],\n };\n }\n}\n","/*\n * Public API Surface of ngx-contextmenu\n */\n\nexport * from './menu-content.component';\nexport * from './menu-item.directive';\nexport * from './menu.component';\nexport * from './menu.directive';\nexport { NovoMenuModule } from './menu.module';\nexport * from './menu.service';\nexport * from './menu.tokens';\nexport * from './menu.types';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-modal.mjs","sources":["../../../projects/novo-elements/src/elements/modal/modal-ref.ts","../../../projects/novo-elements/src/elements/modal/modal.animation.ts","../../../projects/novo-elements/src/elements/modal/modal-container.component.ts","../../../projects/novo-elements/src/elements/modal/modal-container.component.html","../../../projects/novo-elements/src/elements/modal/modal.component.ts","../../../projects/novo-elements/src/elements/modal/modal.service.ts","../../../projects/novo-elements/src/elements/modal/modal.module.ts","../../../projects/novo-elements/src/elements/modal/novo-elements-elements-modal.ts"],"sourcesContent":["import { OverlayRef } from '@angular/cdk/overlay';\nimport { Observable, Subject } from 'rxjs';\nimport { filter, take } from 'rxjs/operators';\nimport { NovoModalContainerComponent } from './modal-container.component';\n\n/**\n * Params that can be passed to the Modal\n */\n\nexport interface ModalParams {\n [propName: string]: any;\n}\nexport class NovoModalParams implements ModalParams {}\n\nexport class NovoModalRef<T = any, R = any> {\n constructor(public component: any, public params: T, private overlayRef: OverlayRef) {}\n\n private _beforeClose = new Subject<R>();\n private _afterClosed = new Subject<R>();\n\n componentInstance: NovoModalContainerComponent;\n isClosed: boolean = false;\n\n // Gets a promise that is resolved when the dialog is closed.\n get onClosed(): Promise<R> {\n return this._afterClosed.toPromise();\n }\n\n afterClosed(): Observable<R> {\n return this._afterClosed.asObservable();\n }\n\n beforeClose(): Observable<R> {\n return this._beforeClose.asObservable();\n }\n\n close(result?: R): void {\n // Listen for animation 'start' events\n this.componentInstance.animationStateChanged\n .pipe(\n filter((event) => event.phaseName === 'start'),\n take(1),\n )\n .subscribe(() => {\n this._beforeClose.next(result);\n this._beforeClose.complete();\n this.overlayRef.detachBackdrop();\n });\n\n // Listen for animation 'done' events\n this.componentInstance.animationStateChanged\n .pipe(\n filter((event) => event.phaseName === 'done' && event.toState === 'leave'),\n take(1),\n )\n .subscribe(() => {\n this.isClosed = true;\n this.overlayRef.dispose();\n this._afterClosed.next(result);\n this._afterClosed.complete();\n // Make sure to also clear the reference to the\n // component instance to avoid memory leaks\n this.componentInstance = null;\n });\n\n // Start exit animation\n this.componentInstance.startExitAnimation();\n }\n}\n","import { animate, style, transition, trigger } from '@angular/animations';\n\nexport const zoomInOut = trigger('zoomInOut', [\n transition('void => *', [style({ transform: 'scale3d(.3, .3, .3)' }), animate(50)]),\n transition('* => void', [animate(50, style({ transform: 'scale3d(.0, .0, .0)' }))]),\n]);\n","import { AnimationEvent } from '@angular/animations';\nimport { ComponentPortal, Portal } from '@angular/cdk/portal';\nimport { Component, EventEmitter, HostBinding, Injector, Output } from '@angular/core';\nimport { NovoModalRef } from './modal-ref';\nimport { zoomInOut } from './modal.animation';\n\n@Component({\n selector: 'novo-modal-container',\n templateUrl: './modal-container.component.html',\n styleUrls: ['./modal-container.component.scss'],\n animations: [zoomInOut],\n standalone: false\n})\nexport class NovoModalContainerComponent {\n @Output() animationStateChanged = new EventEmitter<AnimationEvent>();\n animationState: 'void' | 'enter' | 'leave' = 'enter';\n component: Portal<any>;\n initTimestamp = Date.now();\n @HostBinding('id') id = `modal-container-${this.initTimestamp}`;\n\n constructor(private injector: Injector, private modalRef: NovoModalRef) {\n this.component = new ComponentPortal(modalRef.component, null, injector);\n }\n\n onAnimationStart(event: AnimationEvent) {\n this.animationStateChanged.emit(event);\n }\n\n onAnimationDone(event: AnimationEvent) {\n this.animationStateChanged.emit(event);\n }\n\n startExitAnimation() {\n this.animationState = 'leave';\n }\n}\n","<div class=\"modal-container\"\n [@zoomInOut]=\"animationState\"\n (@zoomInOut.start)=\"onAnimationStart($event)\"\n (@zoomInOut.done)=\"onAnimationDone($event)\">\n <ng-template [cdkPortalOutlet]=\"component\"></ng-template>\n</div>","// NG2\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { NovoModalRef } from './modal-ref';\n\n@Component({\n selector: 'novo-modal',\n template: `\n <ng-content select=\"header,novo-header,novo-card-header\"></ng-content>\n <ng-content select=\"section,novo-card-content\"></ng-content>\n <footer class=\"novo-modal-footer\"><ng-content select=\"button,novo-button\"></ng-content></footer>\n `,\n styleUrls: ['./modal.component.scss'],\n host: {\n class: 'novo-modal',\n },\n standalone: false\n})\nexport class NovoModalElement {\n constructor(private modalRef: NovoModalRef) {}\n}\n\n@Component({\n selector: 'novo-notification',\n template: `\n <novo-button class=\"modal-close\" theme=\"icon\" icon=\"x\" (click)=\"close()\"></novo-button>\n <header class=\"novo-notification-header\"><ng-content select=\"label,novo-label\"></ng-content></header>\n <section class=\"novo-notification-body notification-body\">\n <i class=\"indicator\" [ngClass]=\"iconType\" *ngIf=\"iconType\"></i>\n <ng-content select=\"h1\"></ng-content>\n <ng-content select=\"h2\"></ng-content>\n <ng-content select=\"p\"></ng-content>\n </section>\n <footer class=\"novo-notification-footer\"><ng-content select=\"button,novo-button,novo-dropdown\"></ng-content></footer>\n `,\n styleUrls: ['./notification.component.scss'],\n host: {\n class: 'novo-notification',\n },\n standalone: false\n})\nexport class NovoModalNotificationElement implements OnInit {\n @Input()\n type: string;\n @Input()\n icon: string;\n\n @Output()\n cancel: EventEmitter<any> = new EventEmitter();\n\n iconType: string;\n\n constructor(private modalRef: NovoModalRef) {\n this.modalRef = modalRef;\n }\n\n close() {\n this.cancel.emit();\n this.modalRef.close();\n }\n\n ngOnInit() {\n switch (this.type) {\n case 'success':\n this.iconType = 'bhi-check';\n break;\n case 'warning':\n this.iconType = 'bhi-caution-o';\n break;\n case 'error':\n this.iconType = 'bhi-caution-o';\n break;\n case 'custom':\n this.iconType = `bhi-${this.icon}`;\n break;\n default:\n break;\n }\n }\n}\n","// NG2\nimport { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal, PortalInjector } from '@angular/cdk/portal';\nimport { ComponentRef, Injectable, Injector, ViewContainerRef } from '@angular/core';\nimport { NovoModalContainerComponent } from './modal-container.component';\n// APP\nimport { NovoModalParams, NovoModalRef } from './modal-ref';\n\ninterface ModalConfig {\n panelClass?: string;\n hasBackdrop?: boolean;\n backdropClass?: string;\n}\n\nconst DEFAULT_CONFIG: ModalConfig = {\n hasBackdrop: true,\n backdropClass: 'modal-overlay-backdrop',\n panelClass: 'modal-overlay-panel',\n};\n\n@Injectable({ providedIn: 'root' })\nexport class NovoModalService {\n _parentViewContainer: ViewContainerRef;\n overlayRef: OverlayRef;\n\n set parentViewContainer(view: ViewContainerRef) {\n console.warn('parentViewContainer is deprecated');\n this._parentViewContainer = view;\n }\n\n constructor(private injector: Injector, private overlay: Overlay) {}\n\n open<T extends Record<string, any>>(component, params: Partial<T> = {}) {\n // Override default configuration\n const modalConfig = DEFAULT_CONFIG;\n\n // Returns an OverlayRef which is a PortalHost\n const overlayRef = this.createOverlay(modalConfig);\n this.overlayRef = overlayRef;\n\n // Instantiate remote control\n const modalRef = new NovoModalRef<typeof params>(component, params, overlayRef);\n\n const overlayComponent = this.attachModalContainer(NovoModalContainerComponent, overlayRef, modalConfig, modalRef);\n\n // Pass the instance of the overlay component to the remote control\n modalRef.componentInstance = overlayComponent;\n\n overlayRef.backdropClick().subscribe(() => modalRef.close());\n\n return modalRef;\n }\n\n private createOverlay(config: ModalConfig) {\n const overlayConfig = this.getOverlayConfig(config);\n return this.overlay.create(overlayConfig);\n }\n\n private attachModalContainer(component, overlayRef: OverlayRef, config: ModalConfig, modalRef: NovoModalRef) {\n const injector = this.createInjector(config, modalRef);\n const containerPortal = new ComponentPortal(component, null, injector);\n const containerRef: ComponentRef<any> = overlayRef.attach(containerPortal);\n\n return containerRef.instance;\n }\n\n private createInjector(config: ModalConfig, modalRef: NovoModalRef): PortalInjector {\n const injectionTokens = new WeakMap();\n\n injectionTokens.set(NovoModalRef, modalRef);\n // Support backwards compatability\n injectionTokens.set(NovoModalParams, modalRef.params);\n\n return new PortalInjector(this.injector, injectionTokens);\n }\n\n private getOverlayConfig(config: ModalConfig): OverlayConfig {\n const positionStrategy = this.overlay.position().global().centerHorizontally().centerVertically();\n\n const overlayConfig = new OverlayConfig({\n positionStrategy,\n hasBackdrop: config.hasBackdrop,\n backdropClass: config.backdropClass,\n panelClass: config.panelClass,\n });\n\n return overlayConfig;\n }\n}\n","// NG2\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoModalContainerComponent } from './modal-container.component';\nimport { NovoModalElement, NovoModalNotificationElement } from './modal.component';\nimport { NovoModalService } from './modal.service';\n\n@NgModule({\n imports: [OverlayModule, PortalModule, CommonModule, NovoButtonModule],\n declarations: [NovoModalContainerComponent, NovoModalElement, NovoModalNotificationElement],\n exports: [NovoModalElement, NovoModalNotificationElement],\n providers: [NovoModalService],\n})\nexport class NovoModalModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.NovoModalRef","i2"],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-modal.mjs","sources":["../../../projects/novo-elements/src/elements/modal/modal-ref.ts","../../../projects/novo-elements/src/elements/modal/modal.animation.ts","../../../projects/novo-elements/src/elements/modal/modal-container.component.ts","../../../projects/novo-elements/src/elements/modal/modal-container.component.html","../../../projects/novo-elements/src/elements/modal/modal.component.ts","../../../projects/novo-elements/src/elements/modal/modal.service.ts","../../../projects/novo-elements/src/elements/modal/modal.module.ts","../../../projects/novo-elements/src/elements/modal/novo-elements-elements-modal.ts"],"sourcesContent":["import { OverlayRef } from '@angular/cdk/overlay';\nimport { Observable, Subject } from 'rxjs';\nimport { filter, take } from 'rxjs/operators';\nimport { NovoModalContainerComponent } from './modal-container.component';\n\n/**\n * Params that can be passed to the Modal\n */\n\nexport interface ModalParams {\n [propName: string]: any;\n}\nexport class NovoModalParams implements ModalParams {}\n\nexport class NovoModalRef<T = any, R = any> {\n constructor(public component: any, public params: T, private overlayRef: OverlayRef) {}\n\n private _beforeClose = new Subject<R>();\n private _afterClosed = new Subject<R>();\n\n componentInstance: NovoModalContainerComponent;\n isClosed: boolean = false;\n\n // Gets a promise that is resolved when the dialog is closed.\n get onClosed(): Promise<R> {\n return this._afterClosed.toPromise();\n }\n\n afterClosed(): Observable<R> {\n return this._afterClosed.asObservable();\n }\n\n beforeClose(): Observable<R> {\n return this._beforeClose.asObservable();\n }\n\n close(result?: R): void {\n // Listen for animation 'start' events\n this.componentInstance.animationStateChanged\n .pipe(\n filter((event) => event.phaseName === 'start'),\n take(1),\n )\n .subscribe(() => {\n this._beforeClose.next(result);\n this._beforeClose.complete();\n this.overlayRef.detachBackdrop();\n });\n\n // Listen for animation 'done' events\n this.componentInstance.animationStateChanged\n .pipe(\n filter((event) => event.phaseName === 'done' && event.toState === 'leave'),\n take(1),\n )\n .subscribe(() => {\n this.isClosed = true;\n this.overlayRef.dispose();\n this._afterClosed.next(result);\n this._afterClosed.complete();\n // Make sure to also clear the reference to the\n // component instance to avoid memory leaks\n this.componentInstance = null;\n });\n\n // Start exit animation\n this.componentInstance.startExitAnimation();\n }\n}\n","import { animate, style, transition, trigger } from '@angular/animations';\n\nexport const zoomInOut = trigger('zoomInOut', [\n transition('void => *', [style({ transform: 'scale3d(.3, .3, .3)' }), animate(50)]),\n transition('* => void', [animate(50, style({ transform: 'scale3d(.0, .0, .0)' }))]),\n]);\n","import { AnimationEvent } from '@angular/animations';\nimport { ComponentPortal, Portal } from '@angular/cdk/portal';\nimport { Component, EventEmitter, HostBinding, Injector, Output } from '@angular/core';\nimport { NovoModalRef } from './modal-ref';\nimport { zoomInOut } from './modal.animation';\n\n@Component({\n selector: 'novo-modal-container',\n templateUrl: './modal-container.component.html',\n styleUrls: ['./modal-container.component.scss'],\n animations: [zoomInOut],\n standalone: false,\n})\nexport class NovoModalContainerComponent {\n @Output() animationStateChanged = new EventEmitter<AnimationEvent>();\n animationState: 'void' | 'enter' | 'leave' = 'enter';\n component: Portal<any>;\n initTimestamp = Date.now();\n @HostBinding('id') id = `modal-container-${this.initTimestamp}`;\n\n constructor(private injector: Injector, private modalRef: NovoModalRef) {\n this.component = new ComponentPortal(modalRef.component, null, injector);\n }\n\n onAnimationStart(event: AnimationEvent) {\n this.animationStateChanged.emit(event);\n }\n\n onAnimationDone(event: AnimationEvent) {\n this.animationStateChanged.emit(event);\n }\n\n startExitAnimation() {\n this.animationState = 'leave';\n }\n}\n","<div class=\"modal-container\"\n [@zoomInOut]=\"animationState\"\n (@zoomInOut.start)=\"onAnimationStart($event)\"\n (@zoomInOut.done)=\"onAnimationDone($event)\">\n <ng-template [cdkPortalOutlet]=\"component\"></ng-template>\n</div>","// NG2\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { NovoModalRef } from './modal-ref';\n\n@Component({\n selector: 'novo-modal',\n template: `\n <ng-content select=\"header,novo-header,novo-card-header\"></ng-content>\n <ng-content select=\"section,novo-card-content\"></ng-content>\n <footer class=\"novo-modal-footer\"><ng-content select=\"button,novo-button\"></ng-content></footer>\n `,\n styleUrls: ['./modal.component.scss'],\n host: {\n class: 'novo-modal',\n },\n standalone: false,\n})\nexport class NovoModalElement {\n constructor(private modalRef: NovoModalRef) {}\n}\n\n@Component({\n selector: 'novo-notification',\n template: `\n <novo-button class=\"modal-close\" theme=\"icon\" icon=\"x\" (click)=\"close()\"></novo-button>\n <header class=\"novo-notification-header\"><ng-content select=\"label,novo-label\"></ng-content></header>\n <section class=\"novo-notification-body notification-body\">\n <i class=\"indicator\" [ngClass]=\"iconType\" *ngIf=\"iconType\"></i>\n <ng-content select=\"h1\"></ng-content>\n <ng-content select=\"h2\"></ng-content>\n <ng-content select=\"p\"></ng-content>\n </section>\n <footer class=\"novo-notification-footer\"><ng-content select=\"button,novo-button,novo-dropdown\"></ng-content></footer>\n `,\n styleUrls: ['./notification.component.scss'],\n host: {\n class: 'novo-notification',\n },\n standalone: false,\n})\nexport class NovoModalNotificationElement implements OnInit {\n @Input()\n type: string;\n @Input()\n icon: string;\n\n @Output()\n cancel: EventEmitter<any> = new EventEmitter();\n\n iconType: string;\n\n constructor(private modalRef: NovoModalRef) {\n this.modalRef = modalRef;\n }\n\n close() {\n this.cancel.emit();\n this.modalRef.close();\n }\n\n ngOnInit() {\n switch (this.type) {\n case 'success':\n this.iconType = 'bhi-check';\n break;\n case 'warning':\n this.iconType = 'bhi-caution-o';\n break;\n case 'error':\n this.iconType = 'bhi-caution-o';\n break;\n case 'custom':\n this.iconType = `bhi-${this.icon}`;\n break;\n default:\n break;\n }\n }\n}\n","// NG2\nimport { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal, PortalInjector } from '@angular/cdk/portal';\nimport { ComponentRef, Injectable, Injector, ViewContainerRef } from '@angular/core';\nimport { NovoModalContainerComponent } from './modal-container.component';\n// APP\nimport { NovoModalParams, NovoModalRef } from './modal-ref';\n\ninterface ModalConfig {\n panelClass?: string;\n hasBackdrop?: boolean;\n backdropClass?: string;\n}\n\nconst DEFAULT_CONFIG: ModalConfig = {\n hasBackdrop: true,\n backdropClass: 'modal-overlay-backdrop',\n panelClass: 'modal-overlay-panel',\n};\n\n@Injectable({ providedIn: 'root' })\nexport class NovoModalService {\n _parentViewContainer: ViewContainerRef;\n overlayRef: OverlayRef;\n\n set parentViewContainer(view: ViewContainerRef) {\n console.warn('parentViewContainer is deprecated');\n this._parentViewContainer = view;\n }\n\n constructor(private injector: Injector, private overlay: Overlay) {}\n\n open<T extends Record<string, any>>(component, params: Partial<T> = {}) {\n // Override default configuration\n const modalConfig = DEFAULT_CONFIG;\n\n // Returns an OverlayRef which is a PortalHost\n const overlayRef = this.createOverlay(modalConfig);\n this.overlayRef = overlayRef;\n\n // Instantiate remote control\n const modalRef = new NovoModalRef<typeof params>(component, params, overlayRef);\n\n const overlayComponent = this.attachModalContainer(NovoModalContainerComponent, overlayRef, modalConfig, modalRef);\n\n // Pass the instance of the overlay component to the remote control\n modalRef.componentInstance = overlayComponent;\n\n overlayRef.backdropClick().subscribe(() => modalRef.close());\n\n return modalRef;\n }\n\n private createOverlay(config: ModalConfig) {\n const overlayConfig = this.getOverlayConfig(config);\n return this.overlay.create(overlayConfig);\n }\n\n private attachModalContainer(component, overlayRef: OverlayRef, config: ModalConfig, modalRef: NovoModalRef) {\n const injector = this.createInjector(config, modalRef);\n const containerPortal = new ComponentPortal(component, null, injector);\n const containerRef: ComponentRef<any> = overlayRef.attach(containerPortal);\n\n return containerRef.instance;\n }\n\n private createInjector(config: ModalConfig, modalRef: NovoModalRef): PortalInjector {\n const injectionTokens = new WeakMap();\n\n injectionTokens.set(NovoModalRef, modalRef);\n // Support backwards compatability\n injectionTokens.set(NovoModalParams, modalRef.params);\n\n return new PortalInjector(this.injector, injectionTokens);\n }\n\n private getOverlayConfig(config: ModalConfig): OverlayConfig {\n const positionStrategy = this.overlay.position().global().centerHorizontally().centerVertically();\n\n const overlayConfig = new OverlayConfig({\n positionStrategy,\n hasBackdrop: config.hasBackdrop,\n backdropClass: config.backdropClass,\n panelClass: config.panelClass,\n });\n\n return overlayConfig;\n }\n}\n","// NG2\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoModalContainerComponent } from './modal-container.component';\nimport { NovoModalElement, NovoModalNotificationElement } from './modal.component';\nimport { NovoModalService } from './modal.service';\n\n@NgModule({\n imports: [OverlayModule, PortalModule, CommonModule, NovoButtonModule],\n declarations: [NovoModalContainerComponent, NovoModalElement, NovoModalNotificationElement],\n exports: [NovoModalElement, NovoModalNotificationElement],\n providers: [NovoModalService],\n})\nexport class NovoModalModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.NovoModalRef","i2"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-multi-picker.mjs","sources":["../../../projects/novo-elements/src/elements/multi-picker/MultiPicker.ts","../../../projects/novo-elements/src/elements/multi-picker/MultiPicker.module.ts","../../../projects/novo-elements/src/elements/multi-picker/novo-elements-elements-multi-picker.ts"],"sourcesContent":["// NG2\nimport { Component, ElementRef, EventEmitter, forwardRef, Input, OnInit, Output } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { ReplaySubject } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers, Key } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst CHIPS_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoMultiPickerElement),\n multi: true,\n};\n\ninterface Item {\n type;\n label;\n value;\n}\n\n@Component({\n selector: 'multi-picker',\n providers: [CHIPS_VALUE_ACCESSOR],\n template: `\n <novo-chip\n *ngFor=\"let item of _items | async | slice: 0:chipsCount\"\n [type]=\"item.type\"\n [class.selected]=\"item == selected\"\n (removed)=\"removeFromDisplay($event, item)\"\n (selectionChange)=\"select($event, item)\"\n >\n {{ item.label }}\n </novo-chip>\n <div *ngIf=\"items.length > chipsCount\">\n <ul class=\"summary\">\n <li *ngFor=\"let type of notShown\">+ {{ type.count }} {{ labels.more }} {{ type.type }}</li>\n </ul>\n </div>\n <div class=\"chip-input-container\">\n <novo-picker\n clearValueOnSelect=\"true\"\n [config]=\"source\"\n [placeholder]=\"placeholder\"\n (select)=\"clickOption($event)\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onTouched($event)\"\n [overrideElement]=\"element\"\n >\n </novo-picker>\n </div>\n <i class=\"bhi-search\" [class.has-value]=\"items.length\"></i>\n <label class=\"clear-all\" *ngIf=\"items.length\" (click)=\"clearValue()\">{{ labels.clearAll }} <i class=\"bhi-times\"></i></label>\n `,\n styleUrls: ['./_MultiPicker.scss'],\n host: {\n '[class.with-value]': 'items.length > 0',\n },\n standalone: false\n})\nexport class NovoMultiPickerElement implements OnInit {\n @Input()\n source: { options: []; resultsTemplate; selectAllOption: boolean; chipsCount; strictRelationship };\n @Input()\n placeholder: any = '';\n @Input()\n types: { value; singular; plural; isParentOf; isChildOf }[];\n @Output()\n changed: EventEmitter<any> = new EventEmitter();\n @Output()\n focus: EventEmitter<any> = new EventEmitter();\n @Output()\n blur: EventEmitter<any> = new EventEmitter();\n\n get value() {\n return this._value;\n }\n\n @Input()\n set value(selectedItems) {\n if (selectedItems) {\n this.types.forEach((x) => (this._value[x.value] = selectedItems[x.value]));\n } else {\n this._value = {};\n this.types.forEach((x) => (this._value[x.value] = []));\n }\n this.changed.emit(selectedItems);\n this.onModelChange(selectedItems);\n }\n\n items: Item[] = [];\n _items = new ReplaySubject<Item[]>(1);\n options: any;\n _options: any;\n selected: any = null;\n config: any = {};\n chipsCount: number;\n selectAllOption: boolean;\n strictRelationship: boolean;\n // private data model\n _value = {};\n notShown: any = {};\n // Placeholders for the callbacks\n model: any;\n onModelChange: Function = () => {};\n onModelTouched: Function = () => {};\n\n constructor(public element: ElementRef, public labels: NovoLabelService) {\n this.chipsCount = 4;\n }\n\n ngOnInit() {\n this.selectAllOption = this.source.selectAllOption || false;\n this.chipsCount = this.source.chipsCount || 4;\n this.strictRelationship = this.source.strictRelationship || false;\n this.setupOptions();\n }\n\n clearValue() {\n this.types.forEach((type) => this.modifyAllOfType(type.value, 'unselect'));\n this.items = [];\n this._items.next(this.items);\n this.setInitialValue(null);\n this.onModelChange(this.value);\n }\n\n removeFromDisplay(event, item) {\n this.remove(true, item);\n this.modifyAffectedParentsOrChildren(false, item);\n }\n\n setupOptions() {\n this.options = this.source.options || [];\n this._options = [];\n if (this.options) {\n this.options.forEach((option) => {\n const formattedOption = this.setupOptionsByType(option);\n this._options.push(formattedOption);\n });\n }\n this.source.options = this._options;\n }\n\n setupOptionsByType(section) {\n const formattedSection: any = {\n type: section.type,\n label: section.label || section.type,\n };\n formattedSection.data = section.data.map((item) => {\n return this.formatOption(section, item);\n });\n if (this.selectAllOption) {\n const selectAll = this.createSelectAllOption(section);\n formattedSection.data.splice(0, 0, selectAll);\n }\n formattedSection.originalData = formattedSection.data.slice();\n return formattedSection;\n }\n\n formatOption(section, item) {\n const obj = {\n value: section.field ? item[section.field] : item.value || item,\n label: section.format ? Helpers.interpolate(section.format, item) : item.label || String(item.value || item),\n type: section.type,\n checked: undefined,\n isParentOf: section.isParentOf,\n isChildOf: section.isChildOf,\n };\n if (obj.isChildOf) {\n obj[section.isChildOf] = item[section.isChildOf];\n }\n return obj;\n }\n\n createSelectAllOption(section) {\n const selectAll = {\n value: 'ALL',\n label: `All ${section.type}`,\n type: section.type,\n checked: this.model && this.model.length && this.model.indexOf('ALL') !== -1,\n isParentOf: section.isParentOf,\n isChildOf: section.isChildOf,\n };\n if (section.isChildOf) {\n const allParents = section.data.reduce((accum, next) => {\n return accum.concat(next[section.isChildOf]);\n }, []);\n selectAll[section.isChildOf] = allParents;\n }\n return selectAll;\n }\n\n deselectAll() {\n this.selected = null;\n }\n\n select(event, item) {\n this.blur.emit(event);\n this.deselectAll();\n this.selected = item;\n }\n\n onFocus(e) {\n this.element.nativeElement.classList.add('selected');\n this.focus.emit(e);\n }\n\n clickOption(event) {\n if (event && !(event instanceof Event)) {\n if (event.checked === false) {\n this.remove(null, event);\n } else {\n this.add(event);\n }\n this.modifyAffectedParentsOrChildren(event.checked, event);\n // Set focus on the picker\n const input = this.element.nativeElement.querySelector('novo-picker > input');\n if (input) {\n input.focus();\n }\n }\n }\n\n add(event) {\n if (event.value === 'ALL') {\n this.modifyAllOfType(event.type, 'select');\n } else {\n this.updateDisplayItems(event, 'add');\n this.value[event.type].push(event.value);\n this.updateAllItemState(event.type);\n this.triggerValueUpdate();\n }\n this.updateParentOrChildren(event, 'select');\n this.select(null, event);\n }\n\n updateAllItemState(type) {\n const allOfType = this.getAllOfType(type);\n const allOfTypeSelected = this.allItemsSelected(allOfType, type);\n if (allOfTypeSelected) {\n this.selectAll(allOfType, type);\n }\n return { allOfType, allOfTypeSelected };\n }\n\n setIndeterminateState(allOfType, status) {\n if (!this.selectAllOption) {\n return;\n }\n const allItem = allOfType[0];\n allItem.indeterminate = status;\n }\n\n updateDisplayItems(item, action) {\n const adding = action === 'add';\n if (adding) {\n this.items.push(item);\n } else {\n if (this.items.indexOf(item) > -1) {\n this.items.splice(this.items.indexOf(item), 1);\n }\n }\n this.updateDisplayText(this.items);\n this._items.next(this.items);\n }\n\n updateDisplayText(items) {\n this.notShown = [];\n const notShown = items.slice(this.chipsCount);\n if (notShown.length > 0) {\n this.types.forEach((type) => {\n let count;\n const selectedOfType = notShown.filter((x) => x.type === type.value);\n if (selectedOfType.length === 1 && selectedOfType[0].value === 'ALL') {\n count = this.getAllOfType(type.value).length - 1;\n } else {\n count = selectedOfType.length;\n }\n const displayType = count === 1 ? type.singular : type.plural || type.value;\n if (count > 0) {\n this.notShown.push({ type: displayType, count });\n }\n });\n }\n }\n\n remove(event, item) {\n let triggeredByEvent;\n if (event) {\n triggeredByEvent = true;\n }\n const itemToRemove = item;\n if (itemToRemove.value === 'ALL') {\n triggeredByEvent = false;\n this.modifyAllOfType(itemToRemove.type, 'unselect');\n } else if (this.allOfTypeSelected(itemToRemove.type)) {\n this.handleRemoveItemIfAllSelected(itemToRemove);\n }\n this.removeItem(item, triggeredByEvent);\n }\n\n removeItem(item, triggeredByEvent?: any) {\n item.checked = false;\n this.deselectAll();\n this.removeValue(item);\n if (item.value !== 'ALL') {\n this.updateParentOrChildren(item, 'unselect');\n }\n if (triggeredByEvent) {\n this.modifyAffectedParentsOrChildren(false, item);\n }\n }\n\n removeValue(item) {\n const updatedValues = this.value[item.type].filter((x) => x !== item.value);\n this.value[item.type] = updatedValues;\n this.triggerValueUpdate();\n this.updateDisplayItems(item, 'remove');\n }\n\n onKeyDown(event) {\n if (event.key === Key.Backspace) {\n if (event.target && event.target.value.length === 0 && this.items.length) {\n if (event) {\n event.stopPropagation();\n event.preventDefault();\n }\n if (this.selected) {\n this.remove(null, this.selected);\n } else {\n this.select(event, this.items[this.items.length - 1]);\n }\n }\n }\n }\n\n allOfTypeSelected(type) {\n return this.items.filter((x) => x.type === type && x.value === 'ALL').length > 0;\n }\n\n modifyAllOfType(type, action) {\n const selecting = action === 'select';\n const allOfType = this.getAllOfType(type);\n allOfType.forEach((item) => {\n item.checked = selecting;\n item.indeterminate = false;\n });\n if (selecting) {\n this.selectAll(allOfType, type);\n } else {\n this.items = [...this.items.filter((x) => x.type !== type)];\n this._items.next(this.items);\n this.value[type] = [];\n }\n if (this.selectAllOption) {\n this.updateAllParentsOrChildren(allOfType[0], action);\n }\n this.triggerValueUpdate();\n }\n\n triggerValueUpdate() {\n const updatedObject = {};\n this.types.forEach((x) => (updatedObject[x.value] = this.value[x.value]));\n this.value = updatedObject;\n }\n\n selectAll(allOfType, type) {\n if (!this.selectAllOption) {\n return;\n }\n allOfType[0].checked = true;\n const values = allOfType.map((i) => {\n return i.value;\n });\n // remove 'ALL' value\n values.splice(0, 1);\n this.value[type] = values;\n const updatedItems = this.items.filter((x) => x.type !== type);\n this.items = updatedItems;\n this.updateDisplayItems(allOfType[0], 'add');\n }\n\n handleRemoveItemIfAllSelected(item) {\n if (!this.selectAllOption) {\n return;\n }\n const type = item.type;\n const allOfType = this.getAllOfType(type);\n const allItem = allOfType[0];\n this.removeItem(allItem);\n allItem.indeterminate = true;\n const selectedItems = allOfType.filter((i) => i.checked === true);\n this.items = [...this.items, ...selectedItems];\n const values = selectedItems.map((i) => {\n return i.value;\n });\n this.value[type] = [...values];\n }\n\n handleOutsideClick(event) {\n // If the elements doesn't contain the target element, it is an outside click\n if (!this.element.nativeElement.contains(event.target)) {\n this.blur.emit(event);\n this.deselectAll();\n }\n }\n\n getAllOfType(type) {\n return this._options.filter((x) => x.type === type)[0].originalData;\n }\n\n updateParentOrChildren(item, action) {\n if (this.strictRelationship && item.isParentOf) {\n this.updateChildrenValue(item, action);\n } else if (item.isChildOf && this.selectAllOption) {\n this.updateParentValue(item, action);\n }\n }\n\n modifyAffectedParentsOrChildren(selecting, itemChanged) {\n if (!itemChanged.isChildOf && !itemChanged.isParentOf) {\n return;\n }\n const parent = this.types.filter((x) => !!x.isParentOf)[0];\n const parentType = parent.value;\n const allParentType = this.getAllOfType(parentType);\n const childType = allParentType[0].isParentOf;\n const allChildren = this.getAllOfType(childType);\n const allCheckedChildren = allChildren.filter((x) => !!x.checked);\n\n allParentType.forEach((obj) => {\n if (obj.value === 'ALL') {\n return;\n }\n const selectedChildrenOfParent = allCheckedChildren.filter((x) => {\n return x[parentType].filter((y) => y === obj.value).length > 0;\n });\n\n if (selecting) {\n if (obj.checked) {\n return;\n }\n obj.indeterminate = selectedChildrenOfParent.length > 0;\n } else {\n const allChildrenOfParent = allChildren.filter((x) => {\n return x.value !== 'ALL' && x[parentType].filter((y) => y === obj.value).length > 0;\n });\n if (selectedChildrenOfParent.length > 0) {\n if (obj.checked) {\n if (this.strictRelationship && allChildrenOfParent.length !== selectedChildrenOfParent.length) {\n obj.indeterminate = true;\n obj.checked = false;\n this.removeValue(obj);\n this.addIndividualChildren(selectedChildrenOfParent);\n }\n } else {\n obj.indeterminate = true;\n }\n if (this.strictRelationship && itemChanged.type !== parentType) {\n if (obj.checked) {\n obj.checked = false;\n this.removeValue(obj);\n this.addIndividualChildren(selectedChildrenOfParent);\n }\n }\n } else {\n obj.indeterminate = false;\n if (allChildrenOfParent.length === 0) {\n // if it has no children and is checked, it should stay checked\n return;\n } else if (this.strictRelationship && itemChanged.type !== parentType) {\n this.remove(null, obj);\n }\n }\n }\n });\n if (this.selectAllOption) {\n this.updateIndeterminateStates(allParentType, allChildren, allCheckedChildren);\n }\n }\n\n updateAllParentsOrChildren(allItem, action) {\n if (allItem.isParentOf) {\n this.updateAllChildrenValue(allItem, action);\n } else if (allItem.isChildOf) {\n this.updateAllParentValue(allItem, action);\n }\n }\n\n updateAllChildrenValue(item, action) {\n const selecting = action === 'select';\n const childType = item.isParentOf;\n const potentialChildren = this.getAllOfType(childType);\n if (this.selectAllOption && this.allOfTypeSelected(childType) && !selecting) {\n this.remove(null, potentialChildren[0]);\n return;\n }\n potentialChildren.forEach((x) => {\n if (x.value === 'ALL' && !x.checked) {\n if (selecting) {\n x.checked = true;\n }\n x.indeterminate = selecting;\n } else {\n if (x.checked && !selecting) {\n this.remove(null, x);\n }\n x.checked = selecting;\n }\n });\n }\n\n updateAllParentValue(item, action) {\n const selecting = action === 'select';\n const parentType = item.isChildOf;\n const potentialParents = this.getAllOfType(parentType);\n potentialParents.forEach((x) => {\n if (!x.checked) {\n x.indeterminate = selecting;\n }\n });\n }\n\n updateIndeterminateStates(allParentType, allChildren, allCheckedChildren) {\n const allCheckedOrIndeterminateParents = allParentType.filter((x) => (!!x.checked || !!x.indeterminate) && x.value !== 'ALL');\n const isParentIndeterminate = !!allParentType[0].checked ? false : allCheckedOrIndeterminateParents.length > 0;\n const isChildIndeterminate = !!allChildren[0].checked ? false : allCheckedChildren.length > 0;\n this.setIndeterminateState(allParentType, isParentIndeterminate);\n this.setIndeterminateState(allChildren, isChildIndeterminate);\n }\n\n updateChildrenValue(parent, action) {\n const selecting = action === 'select';\n const childType = parent.isParentOf;\n const potentialChildren = this.getAllOfType(childType);\n potentialChildren.forEach((x) => {\n if (x.value === 'ALL') {\n return;\n }\n if (x[parent.type].filter((y) => y === parent.value).length > 0) {\n if (x.checked && !selecting) {\n x.checked = false;\n if (this.allOfTypeSelected(childType)) {\n this.handleRemoveItemIfAllSelected(x);\n } else {\n this.removeValue(x);\n }\n }\n x.checked = selecting;\n }\n });\n }\n\n updateParentValue(child, action) {\n const allParentType = this.getAllOfType(child.isChildOf);\n if (allParentType[0].checked && action !== 'select') {\n this.handleRemoveItemIfAllSelected(allParentType[0]);\n }\n }\n\n addIndividualChildren(children) {\n let parentAlreadySelected = false;\n children.forEach((x) => {\n if (x.isChildOf) {\n // only add children if their parents are not already selected\n x[x.isChildOf].forEach((parent) => {\n if (this.value[x.isChildOf].filter((p) => p === parent).length > 0) {\n parentAlreadySelected = true;\n }\n });\n }\n if (this.value[x.type].filter((item) => item === x.value).length === 0 && !parentAlreadySelected) {\n this.add(x);\n }\n });\n }\n\n setInitialValue(model): void {\n this.items = [];\n this.value = model || {};\n if (!this.types) {\n return;\n }\n this.types.forEach((typeObj) => {\n const type = typeObj.value;\n if (this.value[type]) {\n let indeterminateIsSet = false;\n const options = this.updateAllItemState(type);\n const optionsByType = options.allOfType;\n const allSelected = options.allOfTypeSelected;\n this.value[type].forEach((item) => {\n if (!allSelected && !indeterminateIsSet) {\n indeterminateIsSet = true;\n this.setIndeterminateState(optionsByType, true);\n }\n const value = optionsByType.filter((x) => x.value === item)[0];\n value.checked = true;\n if (!allSelected) {\n this.updateDisplayItems(value, 'add');\n }\n if (this.strictRelationship && value.isParentOf) {\n this.updateChildrenValue(value, 'select');\n }\n });\n if (typeObj.isChildOf) {\n this.modifyAffectedParentsOrChildren(true, { value: type, isChildOf: true });\n }\n } else {\n this.value[type] = [];\n }\n });\n }\n\n allItemsSelected(optionsByType, type) {\n return this.value[type].length === optionsByType.length - 1;\n }\n\n // Set touched on blur\n onTouched(e) {\n this.element.nativeElement.classList.remove('selected');\n this.onModelTouched();\n this.blur.emit(e);\n }\n\n writeValue(model: any): void {\n this.model = model;\n this.setInitialValue(model);\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// APP\nimport { NovoChipsModule } from 'novo-elements/elements/chips';\nimport { NovoPickerModule } from 'novo-elements/elements/picker';\nimport { NovoMultiPickerElement } from './MultiPicker';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoPickerModule, NovoChipsModule],\n declarations: [NovoMultiPickerElement],\n exports: [NovoMultiPickerElement],\n})\nexport class NovoMultiPickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-multi-picker.mjs","sources":["../../../projects/novo-elements/src/elements/multi-picker/MultiPicker.ts","../../../projects/novo-elements/src/elements/multi-picker/MultiPicker.module.ts","../../../projects/novo-elements/src/elements/multi-picker/novo-elements-elements-multi-picker.ts"],"sourcesContent":["// NG2\nimport { Component, ElementRef, EventEmitter, forwardRef, Input, OnInit, Output } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { ReplaySubject } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers, Key } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst CHIPS_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoMultiPickerElement),\n multi: true,\n};\n\ninterface Item {\n type;\n label;\n value;\n}\n\n@Component({\n selector: 'multi-picker',\n providers: [CHIPS_VALUE_ACCESSOR],\n template: `\n <novo-chip\n *ngFor=\"let item of _items | async | slice: 0:chipsCount\"\n [type]=\"item.type\"\n [class.selected]=\"item == selected\"\n (removed)=\"removeFromDisplay($event, item)\"\n (selectionChange)=\"select($event, item)\"\n >\n {{ item.label }}\n </novo-chip>\n <div *ngIf=\"items.length > chipsCount\">\n <ul class=\"summary\">\n <li *ngFor=\"let type of notShown\">+ {{ type.count }} {{ labels.more }} {{ type.type }}</li>\n </ul>\n </div>\n <div class=\"chip-input-container\">\n <novo-picker\n clearValueOnSelect=\"true\"\n [config]=\"source\"\n [placeholder]=\"placeholder\"\n (select)=\"clickOption($event)\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onTouched($event)\"\n [overrideElement]=\"element\"\n >\n </novo-picker>\n </div>\n <i class=\"bhi-search\" [class.has-value]=\"items.length\"></i>\n <label class=\"clear-all\" *ngIf=\"items.length\" (click)=\"clearValue()\">{{ labels.clearAll }} <i class=\"bhi-times\"></i></label>\n `,\n styleUrls: ['./_MultiPicker.scss'],\n host: {\n '[class.with-value]': 'items.length > 0',\n },\n standalone: false,\n})\nexport class NovoMultiPickerElement implements OnInit {\n @Input()\n source: { options: []; resultsTemplate; selectAllOption: boolean; chipsCount; strictRelationship };\n @Input()\n placeholder: any = '';\n @Input()\n types: { value; singular; plural; isParentOf; isChildOf }[];\n @Output()\n changed: EventEmitter<any> = new EventEmitter();\n @Output()\n focus: EventEmitter<any> = new EventEmitter();\n @Output()\n blur: EventEmitter<any> = new EventEmitter();\n\n get value() {\n return this._value;\n }\n\n @Input()\n set value(selectedItems) {\n if (selectedItems) {\n this.types.forEach((x) => (this._value[x.value] = selectedItems[x.value]));\n } else {\n this._value = {};\n this.types.forEach((x) => (this._value[x.value] = []));\n }\n this.changed.emit(selectedItems);\n this.onModelChange(selectedItems);\n }\n\n items: Item[] = [];\n _items = new ReplaySubject<Item[]>(1);\n options: any;\n _options: any;\n selected: any = null;\n config: any = {};\n chipsCount: number;\n selectAllOption: boolean;\n strictRelationship: boolean;\n // private data model\n _value = {};\n notShown: any = {};\n // Placeholders for the callbacks\n model: any;\n onModelChange: Function = () => {};\n onModelTouched: Function = () => {};\n\n constructor(public element: ElementRef, public labels: NovoLabelService) {\n this.chipsCount = 4;\n }\n\n ngOnInit() {\n this.selectAllOption = this.source.selectAllOption || false;\n this.chipsCount = this.source.chipsCount || 4;\n this.strictRelationship = this.source.strictRelationship || false;\n this.setupOptions();\n }\n\n clearValue() {\n this.types.forEach((type) => this.modifyAllOfType(type.value, 'unselect'));\n this.items = [];\n this._items.next(this.items);\n this.setInitialValue(null);\n this.onModelChange(this.value);\n }\n\n removeFromDisplay(event, item) {\n this.remove(true, item);\n this.modifyAffectedParentsOrChildren(false, item);\n }\n\n setupOptions() {\n this.options = this.source.options || [];\n this._options = [];\n if (this.options) {\n this.options.forEach((option) => {\n const formattedOption = this.setupOptionsByType(option);\n this._options.push(formattedOption);\n });\n }\n this.source.options = this._options;\n }\n\n setupOptionsByType(section) {\n const formattedSection: any = {\n type: section.type,\n label: section.label || section.type,\n };\n formattedSection.data = section.data.map((item) => {\n return this.formatOption(section, item);\n });\n if (this.selectAllOption) {\n const selectAll = this.createSelectAllOption(section);\n formattedSection.data.splice(0, 0, selectAll);\n }\n formattedSection.originalData = formattedSection.data.slice();\n return formattedSection;\n }\n\n formatOption(section, item) {\n const obj = {\n value: section.field ? item[section.field] : item.value || item,\n label: section.format ? Helpers.interpolate(section.format, item) : item.label || String(item.value || item),\n type: section.type,\n checked: undefined,\n isParentOf: section.isParentOf,\n isChildOf: section.isChildOf,\n };\n if (obj.isChildOf) {\n obj[section.isChildOf] = item[section.isChildOf];\n }\n return obj;\n }\n\n createSelectAllOption(section) {\n const selectAll = {\n value: 'ALL',\n label: `All ${section.type}`,\n type: section.type,\n checked: this.model && this.model.length && this.model.indexOf('ALL') !== -1,\n isParentOf: section.isParentOf,\n isChildOf: section.isChildOf,\n };\n if (section.isChildOf) {\n const allParents = section.data.reduce((accum, next) => {\n return accum.concat(next[section.isChildOf]);\n }, []);\n selectAll[section.isChildOf] = allParents;\n }\n return selectAll;\n }\n\n deselectAll() {\n this.selected = null;\n }\n\n select(event, item) {\n this.blur.emit(event);\n this.deselectAll();\n this.selected = item;\n }\n\n onFocus(e) {\n this.element.nativeElement.classList.add('selected');\n this.focus.emit(e);\n }\n\n clickOption(event) {\n if (event && !(event instanceof Event)) {\n if (event.checked === false) {\n this.remove(null, event);\n } else {\n this.add(event);\n }\n this.modifyAffectedParentsOrChildren(event.checked, event);\n // Set focus on the picker\n const input = this.element.nativeElement.querySelector('novo-picker > input');\n if (input) {\n input.focus();\n }\n }\n }\n\n add(event) {\n if (event.value === 'ALL') {\n this.modifyAllOfType(event.type, 'select');\n } else {\n this.updateDisplayItems(event, 'add');\n this.value[event.type].push(event.value);\n this.updateAllItemState(event.type);\n this.triggerValueUpdate();\n }\n this.updateParentOrChildren(event, 'select');\n this.select(null, event);\n }\n\n updateAllItemState(type) {\n const allOfType = this.getAllOfType(type);\n const allOfTypeSelected = this.allItemsSelected(allOfType, type);\n if (allOfTypeSelected) {\n this.selectAll(allOfType, type);\n }\n return { allOfType, allOfTypeSelected };\n }\n\n setIndeterminateState(allOfType, status) {\n if (!this.selectAllOption) {\n return;\n }\n const allItem = allOfType[0];\n allItem.indeterminate = status;\n }\n\n updateDisplayItems(item, action) {\n const adding = action === 'add';\n if (adding) {\n this.items.push(item);\n } else {\n if (this.items.indexOf(item) > -1) {\n this.items.splice(this.items.indexOf(item), 1);\n }\n }\n this.updateDisplayText(this.items);\n this._items.next(this.items);\n }\n\n updateDisplayText(items) {\n this.notShown = [];\n const notShown = items.slice(this.chipsCount);\n if (notShown.length > 0) {\n this.types.forEach((type) => {\n let count;\n const selectedOfType = notShown.filter((x) => x.type === type.value);\n if (selectedOfType.length === 1 && selectedOfType[0].value === 'ALL') {\n count = this.getAllOfType(type.value).length - 1;\n } else {\n count = selectedOfType.length;\n }\n const displayType = count === 1 ? type.singular : type.plural || type.value;\n if (count > 0) {\n this.notShown.push({ type: displayType, count });\n }\n });\n }\n }\n\n remove(event, item) {\n let triggeredByEvent;\n if (event) {\n triggeredByEvent = true;\n }\n const itemToRemove = item;\n if (itemToRemove.value === 'ALL') {\n triggeredByEvent = false;\n this.modifyAllOfType(itemToRemove.type, 'unselect');\n } else if (this.allOfTypeSelected(itemToRemove.type)) {\n this.handleRemoveItemIfAllSelected(itemToRemove);\n }\n this.removeItem(item, triggeredByEvent);\n }\n\n removeItem(item, triggeredByEvent?: any) {\n item.checked = false;\n this.deselectAll();\n this.removeValue(item);\n if (item.value !== 'ALL') {\n this.updateParentOrChildren(item, 'unselect');\n }\n if (triggeredByEvent) {\n this.modifyAffectedParentsOrChildren(false, item);\n }\n }\n\n removeValue(item) {\n const updatedValues = this.value[item.type].filter((x) => x !== item.value);\n this.value[item.type] = updatedValues;\n this.triggerValueUpdate();\n this.updateDisplayItems(item, 'remove');\n }\n\n onKeyDown(event) {\n if (event.key === Key.Backspace) {\n if (event.target && event.target.value.length === 0 && this.items.length) {\n if (event) {\n event.stopPropagation();\n event.preventDefault();\n }\n if (this.selected) {\n this.remove(null, this.selected);\n } else {\n this.select(event, this.items[this.items.length - 1]);\n }\n }\n }\n }\n\n allOfTypeSelected(type) {\n return this.items.filter((x) => x.type === type && x.value === 'ALL').length > 0;\n }\n\n modifyAllOfType(type, action) {\n const selecting = action === 'select';\n const allOfType = this.getAllOfType(type);\n allOfType.forEach((item) => {\n item.checked = selecting;\n item.indeterminate = false;\n });\n if (selecting) {\n this.selectAll(allOfType, type);\n } else {\n this.items = [...this.items.filter((x) => x.type !== type)];\n this._items.next(this.items);\n this.value[type] = [];\n }\n if (this.selectAllOption) {\n this.updateAllParentsOrChildren(allOfType[0], action);\n }\n this.triggerValueUpdate();\n }\n\n triggerValueUpdate() {\n const updatedObject = {};\n this.types.forEach((x) => (updatedObject[x.value] = this.value[x.value]));\n this.value = updatedObject;\n }\n\n selectAll(allOfType, type) {\n if (!this.selectAllOption) {\n return;\n }\n allOfType[0].checked = true;\n const values = allOfType.map((i) => {\n return i.value;\n });\n // remove 'ALL' value\n values.splice(0, 1);\n this.value[type] = values;\n const updatedItems = this.items.filter((x) => x.type !== type);\n this.items = updatedItems;\n this.updateDisplayItems(allOfType[0], 'add');\n }\n\n handleRemoveItemIfAllSelected(item) {\n if (!this.selectAllOption) {\n return;\n }\n const type = item.type;\n const allOfType = this.getAllOfType(type);\n const allItem = allOfType[0];\n this.removeItem(allItem);\n allItem.indeterminate = true;\n const selectedItems = allOfType.filter((i) => i.checked === true);\n this.items = [...this.items, ...selectedItems];\n const values = selectedItems.map((i) => {\n return i.value;\n });\n this.value[type] = [...values];\n }\n\n handleOutsideClick(event) {\n // If the elements doesn't contain the target element, it is an outside click\n if (!this.element.nativeElement.contains(event.target)) {\n this.blur.emit(event);\n this.deselectAll();\n }\n }\n\n getAllOfType(type) {\n return this._options.filter((x) => x.type === type)[0].originalData;\n }\n\n updateParentOrChildren(item, action) {\n if (this.strictRelationship && item.isParentOf) {\n this.updateChildrenValue(item, action);\n } else if (item.isChildOf && this.selectAllOption) {\n this.updateParentValue(item, action);\n }\n }\n\n modifyAffectedParentsOrChildren(selecting, itemChanged) {\n if (!itemChanged.isChildOf && !itemChanged.isParentOf) {\n return;\n }\n const parent = this.types.filter((x) => !!x.isParentOf)[0];\n const parentType = parent.value;\n const allParentType = this.getAllOfType(parentType);\n const childType = allParentType[0].isParentOf;\n const allChildren = this.getAllOfType(childType);\n const allCheckedChildren = allChildren.filter((x) => !!x.checked);\n\n allParentType.forEach((obj) => {\n if (obj.value === 'ALL') {\n return;\n }\n const selectedChildrenOfParent = allCheckedChildren.filter((x) => {\n return x[parentType].filter((y) => y === obj.value).length > 0;\n });\n\n if (selecting) {\n if (obj.checked) {\n return;\n }\n obj.indeterminate = selectedChildrenOfParent.length > 0;\n } else {\n const allChildrenOfParent = allChildren.filter((x) => {\n return x.value !== 'ALL' && x[parentType].filter((y) => y === obj.value).length > 0;\n });\n if (selectedChildrenOfParent.length > 0) {\n if (obj.checked) {\n if (this.strictRelationship && allChildrenOfParent.length !== selectedChildrenOfParent.length) {\n obj.indeterminate = true;\n obj.checked = false;\n this.removeValue(obj);\n this.addIndividualChildren(selectedChildrenOfParent);\n }\n } else {\n obj.indeterminate = true;\n }\n if (this.strictRelationship && itemChanged.type !== parentType) {\n if (obj.checked) {\n obj.checked = false;\n this.removeValue(obj);\n this.addIndividualChildren(selectedChildrenOfParent);\n }\n }\n } else {\n obj.indeterminate = false;\n if (allChildrenOfParent.length === 0) {\n // if it has no children and is checked, it should stay checked\n return;\n } else if (this.strictRelationship && itemChanged.type !== parentType) {\n this.remove(null, obj);\n }\n }\n }\n });\n if (this.selectAllOption) {\n this.updateIndeterminateStates(allParentType, allChildren, allCheckedChildren);\n }\n }\n\n updateAllParentsOrChildren(allItem, action) {\n if (allItem.isParentOf) {\n this.updateAllChildrenValue(allItem, action);\n } else if (allItem.isChildOf) {\n this.updateAllParentValue(allItem, action);\n }\n }\n\n updateAllChildrenValue(item, action) {\n const selecting = action === 'select';\n const childType = item.isParentOf;\n const potentialChildren = this.getAllOfType(childType);\n if (this.selectAllOption && this.allOfTypeSelected(childType) && !selecting) {\n this.remove(null, potentialChildren[0]);\n return;\n }\n potentialChildren.forEach((x) => {\n if (x.value === 'ALL' && !x.checked) {\n if (selecting) {\n x.checked = true;\n }\n x.indeterminate = selecting;\n } else {\n if (x.checked && !selecting) {\n this.remove(null, x);\n }\n x.checked = selecting;\n }\n });\n }\n\n updateAllParentValue(item, action) {\n const selecting = action === 'select';\n const parentType = item.isChildOf;\n const potentialParents = this.getAllOfType(parentType);\n potentialParents.forEach((x) => {\n if (!x.checked) {\n x.indeterminate = selecting;\n }\n });\n }\n\n updateIndeterminateStates(allParentType, allChildren, allCheckedChildren) {\n const allCheckedOrIndeterminateParents = allParentType.filter((x) => (!!x.checked || !!x.indeterminate) && x.value !== 'ALL');\n const isParentIndeterminate = !!allParentType[0].checked ? false : allCheckedOrIndeterminateParents.length > 0;\n const isChildIndeterminate = !!allChildren[0].checked ? false : allCheckedChildren.length > 0;\n this.setIndeterminateState(allParentType, isParentIndeterminate);\n this.setIndeterminateState(allChildren, isChildIndeterminate);\n }\n\n updateChildrenValue(parent, action) {\n const selecting = action === 'select';\n const childType = parent.isParentOf;\n const potentialChildren = this.getAllOfType(childType);\n potentialChildren.forEach((x) => {\n if (x.value === 'ALL') {\n return;\n }\n if (x[parent.type].filter((y) => y === parent.value).length > 0) {\n if (x.checked && !selecting) {\n x.checked = false;\n if (this.allOfTypeSelected(childType)) {\n this.handleRemoveItemIfAllSelected(x);\n } else {\n this.removeValue(x);\n }\n }\n x.checked = selecting;\n }\n });\n }\n\n updateParentValue(child, action) {\n const allParentType = this.getAllOfType(child.isChildOf);\n if (allParentType[0].checked && action !== 'select') {\n this.handleRemoveItemIfAllSelected(allParentType[0]);\n }\n }\n\n addIndividualChildren(children) {\n let parentAlreadySelected = false;\n children.forEach((x) => {\n if (x.isChildOf) {\n // only add children if their parents are not already selected\n x[x.isChildOf].forEach((parent) => {\n if (this.value[x.isChildOf].filter((p) => p === parent).length > 0) {\n parentAlreadySelected = true;\n }\n });\n }\n if (this.value[x.type].filter((item) => item === x.value).length === 0 && !parentAlreadySelected) {\n this.add(x);\n }\n });\n }\n\n setInitialValue(model): void {\n this.items = [];\n this.value = model || {};\n if (!this.types) {\n return;\n }\n this.types.forEach((typeObj) => {\n const type = typeObj.value;\n if (this.value[type]) {\n let indeterminateIsSet = false;\n const options = this.updateAllItemState(type);\n const optionsByType = options.allOfType;\n const allSelected = options.allOfTypeSelected;\n this.value[type].forEach((item) => {\n if (!allSelected && !indeterminateIsSet) {\n indeterminateIsSet = true;\n this.setIndeterminateState(optionsByType, true);\n }\n const value = optionsByType.filter((x) => x.value === item)[0];\n value.checked = true;\n if (!allSelected) {\n this.updateDisplayItems(value, 'add');\n }\n if (this.strictRelationship && value.isParentOf) {\n this.updateChildrenValue(value, 'select');\n }\n });\n if (typeObj.isChildOf) {\n this.modifyAffectedParentsOrChildren(true, { value: type, isChildOf: true });\n }\n } else {\n this.value[type] = [];\n }\n });\n }\n\n allItemsSelected(optionsByType, type) {\n return this.value[type].length === optionsByType.length - 1;\n }\n\n // Set touched on blur\n onTouched(e) {\n this.element.nativeElement.classList.remove('selected');\n this.onModelTouched();\n this.blur.emit(e);\n }\n\n writeValue(model: any): void {\n this.model = model;\n this.setInitialValue(model);\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// APP\nimport { NovoChipsModule } from 'novo-elements/elements/chips';\nimport { NovoPickerModule } from 'novo-elements/elements/picker';\nimport { NovoMultiPickerElement } from './MultiPicker';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoPickerModule, NovoChipsModule],\n declarations: [NovoMultiPickerElement],\n exports: [NovoMultiPickerElement],\n})\nexport class NovoMultiPickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;AAQA;AACA,MAAM,oBAAoB,GAAG;AAC3B,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,WAAW,EAAE,UAAU,CAAC,MAAM,sBAAsB,CAAC;AACrD,IAAA,KAAK,EAAE,IAAI;CACZ;MAgDY,sBAAsB,CAAA;AAcjC,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM;;IAGpB,IACI,KAAK,CAAC,aAAa,EAAA;QACrB,IAAI,aAAa,EAAE;AACjB,YAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;;aACrE;AACL,YAAA,IAAI,CAAC,MAAM,GAAG,EAAE;YAChB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;;AAExD,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;AAChC,QAAA,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;;IAoBnC,WAAmB,CAAA,OAAmB,EAAS,MAAwB,EAAA;QAApD,IAAO,CAAA,OAAA,GAAP,OAAO;QAAqB,IAAM,CAAA,MAAA,GAAN,MAAM;QA3CrD,IAAW,CAAA,WAAA,GAAQ,EAAE;AAIrB,QAAA,IAAA,CAAA,OAAO,GAAsB,IAAI,YAAY,EAAE;AAE/C,QAAA,IAAA,CAAA,KAAK,GAAsB,IAAI,YAAY,EAAE;AAE7C,QAAA,IAAA,CAAA,IAAI,GAAsB,IAAI,YAAY,EAAE;QAkB5C,IAAK,CAAA,KAAA,GAAW,EAAE;AAClB,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,aAAa,CAAS,CAAC,CAAC;QAGrC,IAAQ,CAAA,QAAA,GAAQ,IAAI;QACpB,IAAM,CAAA,MAAA,GAAQ,EAAE;;QAKhB,IAAM,CAAA,MAAA,GAAG,EAAE;QACX,IAAQ,CAAA,QAAA,GAAQ,EAAE;AAGlB,QAAA,IAAA,CAAA,aAAa,GAAa,MAAK,GAAG;AAClC,QAAA,IAAA,CAAA,cAAc,GAAa,MAAK,GAAG;AAGjC,QAAA,IAAI,CAAC,UAAU,GAAG,CAAC;;IAGrB,QAAQ,GAAA;QACN,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,KAAK;QAC3D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC;QAC7C,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,KAAK;QACjE,IAAI,CAAC,YAAY,EAAE;;IAGrB,UAAU,GAAA;QACR,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAC1E,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE;QACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5B,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;;IAGhC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAA;AAC3B,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,+BAA+B,CAAC,KAAK,EAAE,IAAI,CAAC;;IAGnD,YAAY,GAAA;QACV,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE;AACxC,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;AAClB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;gBAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;AACvD,gBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;AACrC,aAAC,CAAC;;QAEJ,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ;;AAGrC,IAAA,kBAAkB,CAAC,OAAO,EAAA;AACxB,QAAA,MAAM,gBAAgB,GAAQ;YAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;AAClB,YAAA,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI;SACrC;AACD,QAAA,gBAAgB,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;YAChD,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC;AACzC,SAAC,CAAC;AACF,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC;YACrD,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC;;QAE/C,gBAAgB,CAAC,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE;AAC7D,QAAA,OAAO,gBAAgB;;IAGzB,YAAY,CAAC,OAAO,EAAE,IAAI,EAAA;AACxB,QAAA,MAAM,GAAG,GAAG;YACV,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI;AAC/D,YAAA,KAAK,EAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC;YAC5G,IAAI,EAAE,OAAO,CAAC,IAAI;AAClB,YAAA,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B;AACD,QAAA,IAAI,GAAG,CAAC,SAAS,EAAE;AACjB,YAAA,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;;AAElD,QAAA,OAAO,GAAG;;AAGZ,IAAA,qBAAqB,CAAC,OAAO,EAAA;AAC3B,QAAA,MAAM,SAAS,GAAG;AAChB,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,KAAK,EAAE,CAAA,IAAA,EAAO,OAAO,CAAC,IAAI,CAAE,CAAA;YAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5E,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B;AACD,QAAA,IAAI,OAAO,CAAC,SAAS,EAAE;AACrB,YAAA,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,KAAI;gBACrD,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aAC7C,EAAE,EAAE,CAAC;AACN,YAAA,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,UAAU;;AAE3C,QAAA,OAAO,SAAS;;IAGlB,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;;IAGtB,MAAM,CAAC,KAAK,EAAE,IAAI,EAAA;AAChB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE;AAClB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;;AAGtB,IAAA,OAAO,CAAC,CAAC,EAAA;QACP,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;AACpD,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;;AAGpB,IAAA,WAAW,CAAC,KAAK,EAAA;QACf,IAAI,KAAK,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,EAAE;AACtC,YAAA,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,EAAE;AAC3B,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;;iBACnB;AACL,gBAAA,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;;YAEjB,IAAI,CAAC,+BAA+B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC;;AAE1D,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,qBAAqB,CAAC;YAC7E,IAAI,KAAK,EAAE;gBACT,KAAK,CAAC,KAAK,EAAE;;;;AAKnB,IAAA,GAAG,CAAC,KAAK,EAAA;AACP,QAAA,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,EAAE;YACzB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC;;aACrC;AACL,YAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC;AACrC,YAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;AACxC,YAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC;YACnC,IAAI,CAAC,kBAAkB,EAAE;;AAE3B,QAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC5C,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;;AAG1B,IAAA,kBAAkB,CAAC,IAAI,EAAA;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACzC,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC;QAChE,IAAI,iBAAiB,EAAE;AACrB,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC;;AAEjC,QAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE;;IAGzC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAA;AACrC,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB;;AAEF,QAAA,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC;AAC5B,QAAA,OAAO,CAAC,aAAa,GAAG,MAAM;;IAGhC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAA;AAC7B,QAAA,MAAM,MAAM,GAAG,MAAM,KAAK,KAAK;QAC/B,IAAI,MAAM,EAAE;AACV,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;;aAChB;AACL,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;AACjC,gBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;;AAGlD,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;;AAG9B,IAAA,iBAAiB,CAAC,KAAK,EAAA;AACrB,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;QAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;AAC7C,QAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC1B,gBAAA,IAAI,KAAK;AACT,gBAAA,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC;AACpE,gBAAA,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,EAAE;AACpE,oBAAA,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;;qBAC3C;AACL,oBAAA,KAAK,GAAG,cAAc,CAAC,MAAM;;gBAE/B,MAAM,WAAW,GAAG,KAAK,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK;AAC3E,gBAAA,IAAI,KAAK,GAAG,CAAC,EAAE;AACb,oBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;;AAEpD,aAAC,CAAC;;;IAIN,MAAM,CAAC,KAAK,EAAE,IAAI,EAAA;AAChB,QAAA,IAAI,gBAAgB;QACpB,IAAI,KAAK,EAAE;YACT,gBAAgB,GAAG,IAAI;;QAEzB,MAAM,YAAY,GAAG,IAAI;AACzB,QAAA,IAAI,YAAY,CAAC,KAAK,KAAK,KAAK,EAAE;YAChC,gBAAgB,GAAG,KAAK;YACxB,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC;;aAC9C,IAAI,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;AACpD,YAAA,IAAI,CAAC,6BAA6B,CAAC,YAAY,CAAC;;AAElD,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,gBAAgB,CAAC;;IAGzC,UAAU,CAAC,IAAI,EAAE,gBAAsB,EAAA;AACrC,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;QACpB,IAAI,CAAC,WAAW,EAAE;AAClB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE;AACxB,YAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC;;QAE/C,IAAI,gBAAgB,EAAE;AACpB,YAAA,IAAI,CAAC,+BAA+B,CAAC,KAAK,EAAE,IAAI,CAAC;;;AAIrD,IAAA,WAAW,CAAC,IAAI,EAAA;QACd,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC;QAC3E,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,aAAa;QACrC,IAAI,CAAC,kBAAkB,EAAE;AACzB,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC;;AAGzC,IAAA,SAAS,CAAC,KAAK,EAAA;AACb,QAAA,IAAI,KAAK,CAAC,GAAG,KAAA,WAAA,sBAAoB;YAC/B,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;gBACxE,IAAI,KAAK,EAAE;oBACT,KAAK,CAAC,eAAe,EAAE;oBACvB,KAAK,CAAC,cAAc,EAAE;;AAExB,gBAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;;qBAC3B;AACL,oBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;;;;;AAM7D,IAAA,iBAAiB,CAAC,IAAI,EAAA;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;;IAGlF,eAAe,CAAC,IAAI,EAAE,MAAM,EAAA;AAC1B,QAAA,MAAM,SAAS,GAAG,MAAM,KAAK,QAAQ;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AACzC,QAAA,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACzB,YAAA,IAAI,CAAC,OAAO,GAAG,SAAS;AACxB,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK;AAC5B,SAAC,CAAC;QACF,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC;;aAC1B;YACL,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5B,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;;AAEvB,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;;QAEvD,IAAI,CAAC,kBAAkB,EAAE;;IAG3B,kBAAkB,GAAA;QAChB,MAAM,aAAa,GAAG,EAAE;AACxB,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACzE,QAAA,IAAI,CAAC,KAAK,GAAG,aAAa;;IAG5B,SAAS,CAAC,SAAS,EAAE,IAAI,EAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB;;AAEF,QAAA,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI;QAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YACjC,OAAO,CAAC,CAAC,KAAK;AAChB,SAAC,CAAC;;AAEF,QAAA,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM;AACzB,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC;AAC9D,QAAA,IAAI,CAAC,KAAK,GAAG,YAAY;QACzB,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;;AAG9C,IAAA,6BAA6B,CAAC,IAAI,EAAA;AAChC,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB;;AAEF,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AACzC,QAAA,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC;AAC5B,QAAA,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;AACxB,QAAA,OAAO,CAAC,aAAa,GAAG,IAAI;AAC5B,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC;AACjE,QAAA,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,aAAa,CAAC;QAC9C,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YACrC,OAAO,CAAC,CAAC,KAAK;AAChB,SAAC,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;;AAGhC,IAAA,kBAAkB,CAAC,KAAK,EAAA;;AAEtB,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AACtD,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACrB,IAAI,CAAC,WAAW,EAAE;;;AAItB,IAAA,YAAY,CAAC,IAAI,EAAA;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY;;IAGrE,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAA;QACjC,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,UAAU,EAAE;AAC9C,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC;;aACjC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,EAAE;AACjD,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC;;;IAIxC,+BAA+B,CAAC,SAAS,EAAE,WAAW,EAAA;QACpD,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YACrD;;QAEF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAC1D,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK;QAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;QACnD,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU;QAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;AAChD,QAAA,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AAEjE,QAAA,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AAC5B,YAAA,IAAI,GAAG,CAAC,KAAK,KAAK,KAAK,EAAE;gBACvB;;YAEF,MAAM,wBAAwB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAI;gBAC/D,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;AAChE,aAAC,CAAC;YAEF,IAAI,SAAS,EAAE;AACb,gBAAA,IAAI,GAAG,CAAC,OAAO,EAAE;oBACf;;gBAEF,GAAG,CAAC,aAAa,GAAG,wBAAwB,CAAC,MAAM,GAAG,CAAC;;iBAClD;gBACL,MAAM,mBAAmB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,KAAI;AACnD,oBAAA,OAAO,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;AACrF,iBAAC,CAAC;AACF,gBAAA,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE;AACvC,oBAAA,IAAI,GAAG,CAAC,OAAO,EAAE;AACf,wBAAA,IAAI,IAAI,CAAC,kBAAkB,IAAI,mBAAmB,CAAC,MAAM,KAAK,wBAAwB,CAAC,MAAM,EAAE;AAC7F,4BAAA,GAAG,CAAC,aAAa,GAAG,IAAI;AACxB,4BAAA,GAAG,CAAC,OAAO,GAAG,KAAK;AACnB,4BAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;AACrB,4BAAA,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,CAAC;;;yBAEjD;AACL,wBAAA,GAAG,CAAC,aAAa,GAAG,IAAI;;oBAE1B,IAAI,IAAI,CAAC,kBAAkB,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,EAAE;AAC9D,wBAAA,IAAI,GAAG,CAAC,OAAO,EAAE;AACf,4BAAA,GAAG,CAAC,OAAO,GAAG,KAAK;AACnB,4BAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;AACrB,4BAAA,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,CAAC;;;;qBAGnD;AACL,oBAAA,GAAG,CAAC,aAAa,GAAG,KAAK;AACzB,oBAAA,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE;;wBAEpC;;yBACK,IAAI,IAAI,CAAC,kBAAkB,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,EAAE;AACrE,wBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC;;;;AAI9B,SAAC,CAAC;AACF,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,IAAI,CAAC,yBAAyB,CAAC,aAAa,EAAE,WAAW,EAAE,kBAAkB,CAAC;;;IAIlF,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAA;AACxC,QAAA,IAAI,OAAO,CAAC,UAAU,EAAE;AACtB,YAAA,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC;;AACvC,aAAA,IAAI,OAAO,CAAC,SAAS,EAAE;AAC5B,YAAA,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC;;;IAI9C,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAA;AACjC,QAAA,MAAM,SAAS,GAAG,MAAM,KAAK,QAAQ;AACrC,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU;QACjC,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;AACtD,QAAA,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE;YAC3E,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACvC;;AAEF,QAAA,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;YAC9B,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE;gBACnC,IAAI,SAAS,EAAE;AACb,oBAAA,CAAC,CAAC,OAAO,GAAG,IAAI;;AAElB,gBAAA,CAAC,CAAC,aAAa,GAAG,SAAS;;iBACtB;AACL,gBAAA,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE;AAC3B,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;;AAEtB,gBAAA,CAAC,CAAC,OAAO,GAAG,SAAS;;AAEzB,SAAC,CAAC;;IAGJ,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAA;AAC/B,QAAA,MAAM,SAAS,GAAG,MAAM,KAAK,QAAQ;AACrC,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS;QACjC,MAAM,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;AACtD,QAAA,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;AAC7B,YAAA,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE;AACd,gBAAA,CAAC,CAAC,aAAa,GAAG,SAAS;;AAE/B,SAAC,CAAC;;AAGJ,IAAA,yBAAyB,CAAC,aAAa,EAAE,WAAW,EAAE,kBAAkB,EAAA;AACtE,QAAA,MAAM,gCAAgC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC;QAC7H,MAAM,qBAAqB,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,GAAG,gCAAgC,CAAC,MAAM,GAAG,CAAC;QAC9G,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC;AAC7F,QAAA,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,qBAAqB,CAAC;AAChE,QAAA,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,oBAAoB,CAAC;;IAG/D,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAA;AAChC,QAAA,MAAM,SAAS,GAAG,MAAM,KAAK,QAAQ;AACrC,QAAA,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU;QACnC,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;AACtD,QAAA,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;AAC9B,YAAA,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,EAAE;gBACrB;;YAEF,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/D,gBAAA,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE;AAC3B,oBAAA,CAAC,CAAC,OAAO,GAAG,KAAK;AACjB,oBAAA,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE;AACrC,wBAAA,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;;yBAChC;AACL,wBAAA,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;;;AAGvB,gBAAA,CAAC,CAAC,OAAO,GAAG,SAAS;;AAEzB,SAAC,CAAC;;IAGJ,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAA;QAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;QACxD,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,MAAM,KAAK,QAAQ,EAAE;YACnD,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;;;AAIxD,IAAA,qBAAqB,CAAC,QAAQ,EAAA;QAC5B,IAAI,qBAAqB,GAAG,KAAK;AACjC,QAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;AACrB,YAAA,IAAI,CAAC,CAAC,SAAS,EAAE;;gBAEf,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;oBAChC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;wBAClE,qBAAqB,GAAG,IAAI;;AAEhC,iBAAC,CAAC;;AAEJ,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,qBAAqB,EAAE;AAChG,gBAAA,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;;AAEf,SAAC,CAAC;;AAGJ,IAAA,eAAe,CAAC,KAAK,EAAA;AACnB,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE;AACf,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE;AACxB,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf;;QAEF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,KAAI;AAC7B,YAAA,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK;AAC1B,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBACpB,IAAI,kBAAkB,GAAG,KAAK;gBAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;AAC7C,gBAAA,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS;AACvC,gBAAA,MAAM,WAAW,GAAG,OAAO,CAAC,iBAAiB;gBAC7C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAChC,oBAAA,IAAI,CAAC,WAAW,IAAI,CAAC,kBAAkB,EAAE;wBACvC,kBAAkB,GAAG,IAAI;AACzB,wBAAA,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,IAAI,CAAC;;oBAEjD,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9D,oBAAA,KAAK,CAAC,OAAO,GAAG,IAAI;oBACpB,IAAI,CAAC,WAAW,EAAE;AAChB,wBAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC;;oBAEvC,IAAI,IAAI,CAAC,kBAAkB,IAAI,KAAK,CAAC,UAAU,EAAE;AAC/C,wBAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC;;AAE7C,iBAAC,CAAC;AACF,gBAAA,IAAI,OAAO,CAAC,SAAS,EAAE;AACrB,oBAAA,IAAI,CAAC,+BAA+B,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;;iBAEzE;AACL,gBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;;AAEzB,SAAC,CAAC;;IAGJ,gBAAgB,CAAC,aAAa,EAAE,IAAI,EAAA;AAClC,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM,GAAG,CAAC;;;AAI7D,IAAA,SAAS,CAAC,CAAC,EAAA;QACT,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC;QACvD,IAAI,CAAC,cAAc,EAAE;AACrB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;;AAGnB,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,QAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;;AAG7B,IAAA,gBAAgB,CAAC,EAAY,EAAA;AAC3B,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE;;AAGzB,IAAA,iBAAiB,CAAC,EAAY,EAAA;AAC5B,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE;;+GA9jBf,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EAtCpB,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,WAAA,EAAA,aAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,oBAAoB,CAAC,EACvB,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,mpJAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,cAAA,EAAA,sBAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,uBAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,oBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,UAAA,EAAA,MAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,YAAA,EAAA,UAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,WAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAOU,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAxClC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EACb,SAAA,EAAA,CAAC,oBAAoB,CAAC,EACvB,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BX,EAEO,IAAA,EAAA;AACF,wBAAA,oBAAoB,EAAE,kBAAkB;AAC3C,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,MAAA,EAAA,CAAA,mpJAAA,CAAA,EAAA;8GAInB,MAAM,EAAA,CAAA;sBADL;gBAGD,WAAW,EAAA,CAAA;sBADV;gBAGD,KAAK,EAAA,CAAA;sBADJ;gBAGD,OAAO,EAAA,CAAA;sBADN;gBAGD,KAAK,EAAA,CAAA;sBADJ;gBAGD,IAAI,EAAA,CAAA;sBADH;gBAQG,KAAK,EAAA,CAAA;sBADR;;;AC/EH;MAca,qBAAqB,CAAA;+GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAArB,qBAAqB,EAAA,YAAA,EAAA,CAHjB,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAD3B,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,CAAA,EAAA,OAAA,EAAA,CAE5D,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAErB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YAJtB,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;;4FAI3D,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,CAAC;oBACvE,YAAY,EAAE,CAAC,sBAAsB,CAAC;oBACtC,OAAO,EAAE,CAAC,sBAAsB,CAAC;AAClC,iBAAA;;;ACbD;;AAEG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-non-ideal-state.mjs","sources":["../../../projects/novo-elements/src/elements/non-ideal-state/NonIdealState.ts","../../../projects/novo-elements/src/elements/non-ideal-state/NonIdealState.module.ts","../../../projects/novo-elements/src/elements/non-ideal-state/novo-elements-elements-non-ideal-state.ts"],"sourcesContent":["// NG2\nimport { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n selector: 'novo-non-ideal-state',\n styleUrls: ['./NonIdealState.scss'],\n template: `\n <novo-icon class=\"novo-non-ideal-state-icon\" *ngIf=\"icon\" [color]=\"theme\">{{ icon }}</novo-icon>\n <ng-content select=\"novo-icon\"></ng-content>\n <ng-content select=\"novo-icon,novo-loading,novo-avatar\"></ng-content>\n <novo-title class=\"novo-non-ideal-state-title\" *ngIf=\"title\" marginBefore>{{ title }}</novo-title>\n <ng-content select=\"novo-title\"></ng-content>\n <novo-text *ngIf=\"description\" block marginBefore marginAfter>{{ description }}</novo-text>\n <ng-content select=\"novo-text\"></ng-content>\n <ng-content></ng-content>\n `,\n standalone: false\n})\nexport class NonIdealStateElement {\n @HostBinding('class')\n hb_class = 'novo-non-ideal-state';\n\n @Input()\n theme: string = 'light';\n @Input()\n icon: string;\n @Input()\n title: string;\n @Input()\n description: string;\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NonIdealStateElement } from './NonIdealState';\n\n@NgModule({\n imports: [CommonModule, NovoIconModule, NovoCommonModule],\n declarations: [NonIdealStateElement],\n exports: [NonIdealStateElement],\n})\nexport class NovoNonIdealStateModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-non-ideal-state.mjs","sources":["../../../projects/novo-elements/src/elements/non-ideal-state/NonIdealState.ts","../../../projects/novo-elements/src/elements/non-ideal-state/NonIdealState.module.ts","../../../projects/novo-elements/src/elements/non-ideal-state/novo-elements-elements-non-ideal-state.ts"],"sourcesContent":["// NG2\nimport { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n selector: 'novo-non-ideal-state',\n styleUrls: ['./NonIdealState.scss'],\n template: `\n <novo-icon class=\"novo-non-ideal-state-icon\" *ngIf=\"icon\" [color]=\"theme\">{{ icon }}</novo-icon>\n <ng-content select=\"novo-icon\"></ng-content>\n <ng-content select=\"novo-icon,novo-loading,novo-avatar\"></ng-content>\n <novo-title class=\"novo-non-ideal-state-title\" *ngIf=\"title\" marginBefore>{{ title }}</novo-title>\n <ng-content select=\"novo-title\"></ng-content>\n <novo-text *ngIf=\"description\" block marginBefore marginAfter>{{ description }}</novo-text>\n <ng-content select=\"novo-text\"></ng-content>\n <ng-content></ng-content>\n `,\n standalone: false,\n})\nexport class NonIdealStateElement {\n @HostBinding('class')\n hb_class = 'novo-non-ideal-state';\n\n @Input()\n theme: string = 'light';\n @Input()\n icon: string;\n @Input()\n title: string;\n @Input()\n description: string;\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NonIdealStateElement } from './NonIdealState';\n\n@NgModule({\n imports: [CommonModule, NovoIconModule, NovoCommonModule],\n declarations: [NonIdealStateElement],\n exports: [NonIdealStateElement],\n})\nexport class NovoNonIdealStateModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -516,7 +516,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
516
516
  <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>
517
517
  <p class="picker-null-results" *ngIf="!isLoading && !matches.length && !hasError && term !== ''">{{ labels.pickerEmpty }}</p>
518
518
  `,
519
- standalone: false
519
+ standalone: false,
520
520
  }]
521
521
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.NovoLabelService }, { type: i0.ChangeDetectorRef }] });
522
522
 
@@ -604,7 +604,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
604
604
  <novo-loading theme="line" *ngIf="isLoading && matches?.length > 0"></novo-loading>
605
605
  </novo-list>
606
606
  `,
607
- standalone: false
607
+ standalone: false,
608
608
  }]
609
609
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1$1.DomSanitizer }, { type: i1.NovoLabelService }, { type: i0.ChangeDetectorRef }], propDecorators: { active: [{
610
610
  type: HostBinding,
@@ -1880,7 +1880,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
1880
1880
  <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>
1881
1881
  <p class="picker-null-results" *ngIf="hasNonErrorMessage">{{ getEmptyMessage() }}</p>
1882
1882
  `,
1883
- standalone: false
1883
+ standalone: false,
1884
1884
  }]
1885
1885
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1$1.DomSanitizer }, { type: i1.NovoLabelService }, { type: i0.ChangeDetectorRef }] });
1886
1886
 
@@ -1938,9 +1938,9 @@ class NovoPickerElement {
1938
1938
  this.element = this.overrideElement;
1939
1939
  }
1940
1940
  if (this.appendToBody) {
1941
- notify(`'appendToBody' has been deprecated. Please remove this attribute.`);
1941
+ notify('\'appendToBody\' has been deprecated. Please remove this attribute.');
1942
1942
  }
1943
- let debounceTimeInMilliSeconds = Number.isNaN(Number(this.config?.debounceTimeInMilliSeconds)) ? DEFAULT_DEBOUNCE_TIME : Number(this.config?.debounceTimeInMilliSeconds);
1943
+ const debounceTimeInMilliSeconds = Number.isNaN(Number(this.config?.debounceTimeInMilliSeconds)) ? DEFAULT_DEBOUNCE_TIME : Number(this.config?.debounceTimeInMilliSeconds);
1944
1944
  // Custom results template
1945
1945
  this.resultsComponent = this.config.resultsTemplate || PickerResults;
1946
1946
  const pasteObserver = fromEvent(this.input.nativeElement, 'paste').pipe(debounceTime(debounceTimeInMilliSeconds), distinctUntilChanged());