text: import { ChangeDetectionStrategy, Component, ContentChild, ElementRef, Injector, NgModule, Renderer2, ViewContainerRef } from '@angular/core';
  import { ComponentBase, ComponentMixins, Template, setValue } from '@syncfusion/ej2-angular-base';
  import { ListView, Virtualization } from '@syncfusion/ej2-lists';
  import { CommonModule } from '@angular/common';
  
  import * as ɵngcc0 from '@angular/core';
  
  const _c0 = ["template"];
  const _c1 = ["groupTemplate"];
  const _c2 = ["headerTemplate"];
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
      var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
      if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
      else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
      return c > 3 && r && Object.defineProperty(target, key, r), r;
  };
  var __metadata = (this && this.__metadata) || function (k, v) {
      if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  };
  const inputs = ['animation', 'checkBoxPosition', 'cssClass', 'dataSource', 'enable', 'enableHtmlSanitizer', 'enablePersistence', 'enableRtl', 'enableVirtualization', 'fields', 'groupTemplate', 'headerTemplate', 'headerTitle', 'height', 'htmlAttributes', 'locale', 'query', 'showCheckBox', 'showHeader', 'showIcon', 'sortOrder', 'template', 'width'];
  const outputs = ['actionBegin', 'actionComplete', 'actionFailure', 'select'];
  const twoWays = [''];
  /**
   * Represents Angular ListView Component
   * ```
   * <ejs-listview [dataSource]='data'></ejs-listview>
   * ```
   */
  let ListViewComponent = class ListViewComponent extends ListView {
      /**
       * @param {?} ngEle
       * @param {?} srenderer
       * @param {?} viewContainerRef
       * @param {?} injector
       */
      constructor(ngEle, srenderer, viewContainerRef, injector) {
          super();
          this.ngEle = ngEle;
          this.srenderer = srenderer;
          this.viewContainerRef = viewContainerRef;
          this.injector = injector;
          this.element = this.ngEle.nativeElement;
          this.injectedModules = this.injectedModules || [];
          try {
              let mod = this.injector.get('ListsVirtualization');
              if (this.injectedModules.indexOf(mod) === -1) {
                  this.injectedModules.push(mod);
              }
          }
          catch (_a) { }
          this.registerEvents(outputs);
          this.addTwoWay.call(this, twoWays);
          setValue('currentInstance', this, this.viewContainerRef);
          this.context = new ComponentBase();
      }
      /**
       * @return {?}
       */
      ngOnInit() {
          this.context.ngOnInit(this);
      }
      /**
       * @return {?}
       */
      ngAfterViewInit() {
          this.context.ngAfterViewInit(this);
      }
      /**
       * @return {?}
       */
      ngOnDestroy() {
          this.context.ngOnDestroy(this);
      }
      /**
       * @return {?}
       */
      ngAfterContentChecked() {
          this.context.ngAfterContentChecked(this);
      }
  };
  ListViewComponent.ɵfac = function ListViewComponent_Factory(t) { return new (t || ListViewComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Injector)); };
  ListViewComponent.ɵcmp = /*@__PURE__*/ ɵngcc0.ɵɵdefineComponent({ type: ListViewComponent, selectors: [["ejs-listview"]], contentQueries: function ListViewComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
          ɵngcc0.ɵɵcontentQuery(dirIndex, _c0, 5);
          ɵngcc0.ɵɵcontentQuery(dirIndex, _c1, 5);
          ɵngcc0.ɵɵcontentQuery(dirIndex, _c2, 5);
      } if (rf & 2) {
          let _t;
          ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.template = _t.first);
          ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.groupTemplate = _t.first);
          ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.headerTemplate = _t.first);
      } }, inputs: { animation: "animation", checkBoxPosition: "checkBoxPosition", cssClass: "cssClass", dataSource: "dataSource", enable: "enable", enableHtmlSanitizer: "enableHtmlSanitizer", enablePersistence: "enablePersistence", enableRtl: "enableRtl", enableVirtualization: "enableVirtualization", fields: "fields", groupTemplate: "groupTemplate", headerTemplate: "headerTemplate", headerTitle: "headerTitle", height: "height", htmlAttributes: "htmlAttributes", locale: "locale", query: "query", showCheckBox: "showCheckBox", showHeader: "showHeader", showIcon: "showIcon", sortOrder: "sortOrder", template: "template", width: "width" }, outputs: { actionBegin: "actionBegin", actionComplete: "actionComplete", actionFailure: "actionFailure", select: "select" }, features: [ɵngcc0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function ListViewComponent_Template(rf, ctx) { }, encapsulation: 2, changeDetection: 0 });
  /**
   * @nocollapse
   */
  ListViewComponent.ctorParameters = () => [
      { type: ElementRef, },
      { type: Renderer2, },
      { type: ViewContainerRef, },
      { type: Injector, },
  ];
  ListViewComponent.propDecorators = {
      'template': [{ type: ContentChild, args: ['template',] },],
      'groupTemplate': [{ type: ContentChild, args: ['groupTemplate',] },],
      'headerTemplate': [{ type: ContentChild, args: ['headerTemplate',] },],
  };
  __decorate([
      Template(),
      __metadata("design:type", Object)
  ], ListViewComponent.prototype, "template", void 0);
  __decorate([
      Template(),
      __metadata("design:type", Object)
  ], ListViewComponent.prototype, "groupTemplate", void 0);
  __decorate([
      Template(),
      __metadata("design:type", Object)
  ], ListViewComponent.prototype, "headerTemplate", void 0);
  ListViewComponent = __decorate([
      ComponentMixins([ComponentBase]),
      __metadata("design:paramtypes", [ElementRef,
          Renderer2,
          ViewContainerRef,
          Injector])
  ], ListViewComponent);
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ListViewComponent, [{
          type: Component,
          args: [{
                  selector: 'ejs-listview',
                  inputs: inputs,
                  outputs: outputs,
                  template: '',
                  changeDetection: ChangeDetectionStrategy.OnPush,
                  queries: {}
              }]
      }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ViewContainerRef }, { type: ɵngcc0.Injector }]; }, { template: [{
              type: ContentChild,
              args: ['template']
          }], groupTemplate: [{
              type: ContentChild,
              args: ['groupTemplate']
          }], headerTemplate: [{
              type: ContentChild,
              args: ['headerTemplate']
          }] }); })();
  
  /**
   * NgModule definition for the ListView component.
   */
  class ListViewModule {
  }
  ListViewModule.ɵfac = function ListViewModule_Factory(t) { return new (t || ListViewModule)(); };
  ListViewModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: ListViewModule });
  ListViewModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });
  /**
   * @nocollapse
   */
  ListViewModule.ctorParameters = () => [];
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ListViewModule, [{
          type: NgModule,
          args: [{
                  imports: [CommonModule],
                  declarations: [
                      ListViewComponent
                  ],
                  exports: [
                      ListViewComponent
                  ]
              }]
      }], null, null); })();
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(ListViewModule, { declarations: function () { return [ListViewComponent]; }, imports: function () { return [CommonModule]; }, exports: function () { return [ListViewComponent]; } }); })();
  
  const VirtualizationService = { provide: 'ListsVirtualization', useValue: Virtualization };
  /**
   * NgModule definition for the ListView component with providers.
   */
  class ListViewAllModule {
  }
  ListViewAllModule.ɵfac = function ListViewAllModule_Factory(t) { return new (t || ListViewAllModule)(); };
  ListViewAllModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: ListViewAllModule });
  ListViewAllModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({ providers: [
          VirtualizationService
      ], imports: [[CommonModule, ListViewModule], ListViewModule] });
  /**
   * @nocollapse
   */
  ListViewAllModule.ctorParameters = () => [];
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ListViewAllModule, [{
          type: NgModule,
          args: [{
                  imports: [CommonModule, ListViewModule],
                  exports: [
                      ListViewModule
                  ],
                  providers: [
                      VirtualizationService
                  ]
              }]
      }], null, null); })();
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(ListViewAllModule, { imports: function () { return [CommonModule, ListViewModule]; }, exports: function () { return [ListViewModule]; } }); })();
  
  /**
   * Generated bundle index. Do not edit.
   */
  
  export { ListViewComponent, ListViewModule, ListViewAllModule, VirtualizationService, inputs as ɵa, outputs as ɵb };
  export { classNames, FieldSettings, ListView, Virtualization, cssClass, ListBase, getFieldValues, Sortable, moveTo } from '@syncfusion/ej2-lists';
  
  //# sourceMappingURL=ej2-angular-lists.js.map