text: import { Directive, ViewContainerRef, ComponentFactoryResolver, Input } from "@angular/core";
  import { FilterHostDirective } from "../filter-host.directive";
  import { isNullOrEmptyString, isPresent } from "../../utils";
  import { filterMenuComponentFactory } from "./filter-menu-component.factory";
  import { StringFilterMenuComponent } from "./string-filter-menu.component";
  /**
   * @hidden
   */
  export class FilterMenuHostDirective extends FilterHostDirective {
      constructor(host, resolver) {
          super(host, resolver);
      }
      componentType() {
          if (isPresent(this.column) && !isNullOrEmptyString(this.column.filter)) {
              return filterMenuComponentFactory(this.column.filter);
          }
          return StringFilterMenuComponent;
      }
      initComponent(ctx) {
          super.initComponent(ctx);
          this.component.instance.filterService = this.filterService;
      }
  }
  FilterMenuHostDirective.decorators = [
      { type: Directive, args: [{
                  selector: '[kendoFilterMenuHost]'
              },] },
  ];
  /** @nocollapse */
  FilterMenuHostDirective.ctorParameters = () => [
      { type: ViewContainerRef, },
      { type: ComponentFactoryResolver, },
  ];
  FilterMenuHostDirective.propDecorators = {
      'filterService': [{ type: Input },],
  };
  