import { EventEmitter, Injectable } from '@angular/core'; import { BsComponentRef } from 'ngx-bootstrap/component-loader'; import { BsDropdownMenuDirective } from './bs-dropdown-menu.directive'; @Injectable({providedIn: 'platform'}) export class BsDropdownState { direction: 'down' | 'up' = 'down'; autoClose = true; insideClick = false; isAnimated = false; stopOnClickPropagation = false; isOpenChange = new EventEmitter(); isDisabledChange = new EventEmitter(); toggleClick = new EventEmitter(); counts = 0; /** * Content to be displayed as popover. */ dropdownMenu: Promise>; resolveDropdownMenu!: (componentRef: BsComponentRef) => void; constructor() { this.dropdownMenu = new Promise(resolve => { this.resolveDropdownMenu = resolve; }); } }