import { ɵɵprojection, ɵɵdefineComponent, ɵɵprojectionDef, ɵɵelementStart, ɵɵelementEnd, ɵsetClassMetadata, Component, ChangeDetectionStrategy, ɵɵelement, ɵɵtemplate, ɵɵadvance, ɵɵproperty, Input, ɵɵnextContext, ɵɵelementContainer, ɵɵelementContainerStart, ɵɵtext, ɵɵelementContainerEnd, ɵɵtextInterpolate, TemplateRef, ɵɵdirectiveInject, ElementRef, Renderer2, ɵɵcontentQuery, ɵɵqueryRefresh, ɵɵloadQuery, ViewEncapsulation, ContentChild, ɵɵviewQuery, ViewChild, NgZone, ChangeDetectorRef, ɵɵNgOnChangesFeature, ContentChildren, ɵɵdefineDirective, Directive, ɵɵpureFunction2, ɵɵstyleProp, ɵɵclassProp, ɵɵProvidersFeature, ɵɵtemplateRefExtractor, ɵɵreference, HostBinding, ɵɵdefineNgModule, ɵɵdefineInjector, ɵɵsetNgModuleScope, NgModule } from '@angular/core';
import { NzAvatarComponent, NzAvatarModule } from 'ng-zorro-antd/avatar';
import { NgIf, NgTemplateOutlet, NgForOf, CommonModule } from '@angular/common';
import { NzStringTemplateOutletDirective, NzUpdateHostClassService, InputBoolean, NzOutletModule } from 'ng-zorro-antd/core';
import { __decorate, __metadata } from 'tslib';
import { Subject, defer, of, merge, BehaviorSubject } from 'rxjs';
import { take, switchMap, takeUntil } from 'rxjs/operators';
import { NzEmbedEmptyComponent, NzEmptyModule } from 'ng-zorro-antd/empty';
import { NzSpinComponent, NzSpinModule } from 'ng-zorro-antd/spin';
import { NzRowDirective, NzColDirective, NzGridModule } from 'ng-zorro-antd/grid';

/**
 * @license
 * Copyright Alibaba.com All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */
var _c0 = ["*"];
function NzListItemMetaAvatarComponent_2_Template(rf, ctx) { if (rf & 1) {
    ɵɵprojection(0, 0, ["*ngIf", "!nzSrc"]);
} }
var NzListItemMetaTitleComponent = /** @class */ (function () {
    function NzListItemMetaTitleComponent() {
    }
    /** @nocollapse */ NzListItemMetaTitleComponent.ɵfac = function NzListItemMetaTitleComponent_Factory(t) { return new (t || NzListItemMetaTitleComponent)(); };
    /** @nocollapse */ NzListItemMetaTitleComponent.ɵcmp = ɵɵdefineComponent({ type: NzListItemMetaTitleComponent, selectors: [["nz-list-item-meta-title"]], exportAs: ["nzListItemMetaTitle"], ngContentSelectors: _c0, decls: 2, vars: 0, consts: [[1, "ant-list-item-meta-title"]], template: function NzListItemMetaTitleComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef();
            ɵɵelementStart(0, "h4", 0);
            ɵɵprojection(1);
            ɵɵelementEnd();
        } }, encapsulation: 2, changeDetection: 0 });
    return NzListItemMetaTitleComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListItemMetaTitleComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-item-meta-title',
                exportAs: 'nzListItemMetaTitle',
                template: "\n    <h4 class=\"ant-list-item-meta-title\">\n      <ng-content></ng-content>\n    </h4>\n  ",
                changeDetection: ChangeDetectionStrategy.OnPush
            }]
    }], null, null); })();
var NzListItemMetaDescriptionComponent = /** @class */ (function () {
    function NzListItemMetaDescriptionComponent() {
    }
    /** @nocollapse */ NzListItemMetaDescriptionComponent.ɵfac = function NzListItemMetaDescriptionComponent_Factory(t) { return new (t || NzListItemMetaDescriptionComponent)(); };
    /** @nocollapse */ NzListItemMetaDescriptionComponent.ɵcmp = ɵɵdefineComponent({ type: NzListItemMetaDescriptionComponent, selectors: [["nz-list-item-meta-description"]], exportAs: ["nzListItemMetaDescription"], ngContentSelectors: _c0, decls: 2, vars: 0, consts: [[1, "ant-list-item-meta-description"]], template: function NzListItemMetaDescriptionComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef();
            ɵɵelementStart(0, "div", 0);
            ɵɵprojection(1);
            ɵɵelementEnd();
        } }, encapsulation: 2, changeDetection: 0 });
    return NzListItemMetaDescriptionComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListItemMetaDescriptionComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-item-meta-description',
                exportAs: 'nzListItemMetaDescription',
                template: "\n    <div class=\"ant-list-item-meta-description\">\n      <ng-content></ng-content>\n    </div>\n  ",
                changeDetection: ChangeDetectionStrategy.OnPush
            }]
    }], null, null); })();
var NzListItemMetaAvatarComponent = /** @class */ (function () {
    function NzListItemMetaAvatarComponent() {
    }
    /** @nocollapse */ NzListItemMetaAvatarComponent.ɵfac = function NzListItemMetaAvatarComponent_Factory(t) { return new (t || NzListItemMetaAvatarComponent)(); };
    /** @nocollapse */ NzListItemMetaAvatarComponent.ɵcmp = ɵɵdefineComponent({ type: NzListItemMetaAvatarComponent, selectors: [["nz-list-item-meta-avatar"]], inputs: { nzSrc: "nzSrc" }, exportAs: ["nzListItemMetaAvatar"], ngContentSelectors: _c0, decls: 3, vars: 2, consts: [[1, "ant-list-item-meta-avatar"], [3, "nzSrc"], [4, "ngIf"]], template: function NzListItemMetaAvatarComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef();
            ɵɵelementStart(0, "div", 0);
            ɵɵelement(1, "nz-avatar", 1);
            ɵɵtemplate(2, NzListItemMetaAvatarComponent_2_Template, 1, 0, undefined, 2);
            ɵɵelementEnd();
        } if (rf & 2) {
            ɵɵadvance(1);
            ɵɵproperty("nzSrc", ctx.nzSrc);
            ɵɵadvance(1);
            ɵɵproperty("ngIf", !ctx.nzSrc);
        } }, directives: [NzAvatarComponent, NgIf], encapsulation: 2, changeDetection: 0 });
    return NzListItemMetaAvatarComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListItemMetaAvatarComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-item-meta-avatar',
                exportAs: 'nzListItemMetaAvatar',
                template: "\n    <div class=\"ant-list-item-meta-avatar\">\n      <nz-avatar [nzSrc]=\"nzSrc\"></nz-avatar>\n      <ng-content *ngIf=\"!nzSrc\"></ng-content>\n    </div>\n  ",
                changeDetection: ChangeDetectionStrategy.OnPush
            }]
    }], null, { nzSrc: [{
            type: Input
        }] }); })();

/**
 * @license
 * Copyright Alibaba.com All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */
function NzListItemMetaComponent_nz_list_item_meta_avatar_0_Template(rf, ctx) { if (rf & 1) {
    ɵɵelement(0, "nz-list-item-meta-avatar", 3);
} if (rf & 2) {
    var ctx_r2262 = ɵɵnextContext();
    ɵɵproperty("nzSrc", ctx_r2262.avatarStr);
} }
function NzListItemMetaComponent_nz_list_item_meta_avatar_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "nz-list-item-meta-avatar");
    ɵɵelementContainer(1, 4);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2263 = ɵɵnextContext();
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", ctx_r2263.avatarTpl);
} }
function NzListItemMetaComponent_div_3_nz_list_item_meta_title_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementContainerStart(0);
    ɵɵtext(1);
    ɵɵelementContainerEnd();
} if (rf & 2) {
    var ctx_r2267 = ɵɵnextContext(3);
    ɵɵadvance(1);
    ɵɵtextInterpolate(ctx_r2267.nzTitle);
} }
function NzListItemMetaComponent_div_3_nz_list_item_meta_title_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "nz-list-item-meta-title");
    ɵɵtemplate(1, NzListItemMetaComponent_div_3_nz_list_item_meta_title_1_ng_container_1_Template, 2, 1, "ng-container", 6);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2265 = ɵɵnextContext(2);
    ɵɵadvance(1);
    ɵɵproperty("nzStringTemplateOutlet", ctx_r2265.nzTitle);
} }
function NzListItemMetaComponent_div_3_nz_list_item_meta_description_2_ng_container_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementContainerStart(0);
    ɵɵtext(1);
    ɵɵelementContainerEnd();
} if (rf & 2) {
    var ctx_r2268 = ɵɵnextContext(3);
    ɵɵadvance(1);
    ɵɵtextInterpolate(ctx_r2268.nzDescription);
} }
function NzListItemMetaComponent_div_3_nz_list_item_meta_description_2_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "nz-list-item-meta-description");
    ɵɵtemplate(1, NzListItemMetaComponent_div_3_nz_list_item_meta_description_2_ng_container_1_Template, 2, 1, "ng-container", 6);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2266 = ɵɵnextContext(2);
    ɵɵadvance(1);
    ɵɵproperty("nzStringTemplateOutlet", ctx_r2266.nzDescription);
} }
function NzListItemMetaComponent_div_3_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "div", 5);
    ɵɵtemplate(1, NzListItemMetaComponent_div_3_nz_list_item_meta_title_1_Template, 2, 1, "nz-list-item-meta-title", 1);
    ɵɵtemplate(2, NzListItemMetaComponent_div_3_nz_list_item_meta_description_2_Template, 2, 1, "nz-list-item-meta-description", 1);
    ɵɵprojection(3, 1);
    ɵɵprojection(4, 2);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2264 = ɵɵnextContext();
    ɵɵadvance(1);
    ɵɵproperty("ngIf", ctx_r2264.nzTitle && !ctx_r2264.titleComponent);
    ɵɵadvance(1);
    ɵɵproperty("ngIf", ctx_r2264.nzDescription && !ctx_r2264.descriptionComponent);
} }
var _c0$1 = [[["nz-list-item-meta-avatar"]], [["nz-list-item-meta-title"]], [["nz-list-item-meta-description"]]];
var _c1 = ["nz-list-item-meta-avatar", "nz-list-item-meta-title", "nz-list-item-meta-description"];
var NzListItemMetaComponent = /** @class */ (function () {
    function NzListItemMetaComponent(elementRef, renderer) {
        this.elementRef = elementRef;
        this.renderer = renderer;
        this.avatarStr = '';
        this.renderer.addClass(elementRef.nativeElement, 'ant-list-item-meta');
    }
    Object.defineProperty(NzListItemMetaComponent.prototype, "nzAvatar", {
        set: function (value) {
            if (value instanceof TemplateRef) {
                this.avatarStr = '';
                this.avatarTpl = value;
            }
            else {
                this.avatarStr = value;
            }
        },
        enumerable: true,
        configurable: true
    });
    /** @nocollapse */ NzListItemMetaComponent.ɵfac = function NzListItemMetaComponent_Factory(t) { return new (t || NzListItemMetaComponent)(ɵɵdirectiveInject(ElementRef), ɵɵdirectiveInject(Renderer2)); };
    /** @nocollapse */ NzListItemMetaComponent.ɵcmp = ɵɵdefineComponent({ type: NzListItemMetaComponent, selectors: [["nz-list-item-meta"], ["", "nz-list-item-meta", ""]], contentQueries: function NzListItemMetaComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
            ɵɵcontentQuery(dirIndex, NzListItemMetaDescriptionComponent, true);
            ɵɵcontentQuery(dirIndex, NzListItemMetaTitleComponent, true);
        } if (rf & 2) {
            var _t;
            ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.descriptionComponent = _t.first);
            ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.titleComponent = _t.first);
        } }, inputs: { nzAvatar: "nzAvatar", nzTitle: "nzTitle", nzDescription: "nzDescription" }, exportAs: ["nzListItemMeta"], ngContentSelectors: _c1, decls: 4, vars: 3, consts: [[3, "nzSrc", 4, "ngIf"], [4, "ngIf"], ["class", "ant-list-item-meta-content", 4, "ngIf"], [3, "nzSrc"], [3, "ngTemplateOutlet"], [1, "ant-list-item-meta-content"], [4, "nzStringTemplateOutlet"]], template: function NzListItemMetaComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef(_c0$1);
            ɵɵtemplate(0, NzListItemMetaComponent_nz_list_item_meta_avatar_0_Template, 1, 1, "nz-list-item-meta-avatar", 0);
            ɵɵtemplate(1, NzListItemMetaComponent_nz_list_item_meta_avatar_1_Template, 2, 1, "nz-list-item-meta-avatar", 1);
            ɵɵprojection(2);
            ɵɵtemplate(3, NzListItemMetaComponent_div_3_Template, 5, 2, "div", 2);
        } if (rf & 2) {
            ɵɵproperty("ngIf", ctx.avatarStr);
            ɵɵadvance(1);
            ɵɵproperty("ngIf", ctx.avatarTpl);
            ɵɵadvance(2);
            ɵɵproperty("ngIf", ctx.nzTitle || ctx.nzDescription || ctx.descriptionComponent || ctx.titleComponent);
        } }, directives: [NgIf, NzListItemMetaAvatarComponent, NgTemplateOutlet, NzListItemMetaTitleComponent, NzStringTemplateOutletDirective, NzListItemMetaDescriptionComponent], encapsulation: 2, changeDetection: 0 });
    return NzListItemMetaComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListItemMetaComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-item-meta, [nz-list-item-meta]',
                exportAs: 'nzListItemMeta',
                template: "\n    <!--Old API Start-->\n    <nz-list-item-meta-avatar *ngIf=\"avatarStr\" [nzSrc]=\"avatarStr\"></nz-list-item-meta-avatar>\n    <nz-list-item-meta-avatar *ngIf=\"avatarTpl\">\n      <ng-container [ngTemplateOutlet]=\"avatarTpl\"></ng-container>\n    </nz-list-item-meta-avatar>\n    <!--Old API End-->\n\n    <ng-content select=\"nz-list-item-meta-avatar\"></ng-content>\n\n    <div *ngIf=\"nzTitle || nzDescription || descriptionComponent || titleComponent\" class=\"ant-list-item-meta-content\">\n      <!--Old API Start-->\n      <nz-list-item-meta-title *ngIf=\"nzTitle && !titleComponent\">\n        <ng-container *nzStringTemplateOutlet=\"nzTitle\">{{ nzTitle }}</ng-container>\n      </nz-list-item-meta-title>\n      <nz-list-item-meta-description *ngIf=\"nzDescription && !descriptionComponent\">\n        <ng-container *nzStringTemplateOutlet=\"nzDescription\">{{ nzDescription }}</ng-container>\n      </nz-list-item-meta-description>\n      <!--Old API End-->\n\n      <ng-content select=\"nz-list-item-meta-title\"></ng-content>\n      <ng-content select=\"nz-list-item-meta-description\"></ng-content>\n    </div>\n  ",
                preserveWhitespaces: false,
                changeDetection: ChangeDetectionStrategy.OnPush,
                encapsulation: ViewEncapsulation.None
            }]
    }], function () { return [{ type: ElementRef }, { type: Renderer2 }]; }, { nzAvatar: [{
            type: Input
        }], nzTitle: [{
            type: Input
        }], nzDescription: [{
            type: Input
        }], descriptionComponent: [{
            type: ContentChild,
            args: [NzListItemMetaDescriptionComponent]
        }], titleComponent: [{
            type: ContentChild,
            args: [NzListItemMetaTitleComponent]
        }] }); })();

/**
 * @license
 * Copyright Alibaba.com All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */
var _c0$2 = ["*"];
function NzListItemActionComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
    ɵɵprojection(0);
} }
var _c1$1 = ["nz-list-item-actions", ""];
function NzListItemActionsComponent_li_0_ng_template_1_Template(rf, ctx) { }
function NzListItemActionsComponent_li_0_em_2_Template(rf, ctx) { if (rf & 1) {
    ɵɵelement(0, "em", 3);
} }
function NzListItemActionsComponent_li_0_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "li");
    ɵɵtemplate(1, NzListItemActionsComponent_li_0_ng_template_1_Template, 0, 0, "ng-template", 1);
    ɵɵtemplate(2, NzListItemActionsComponent_li_0_em_2_Template, 1, 0, "em", 2);
    ɵɵelementEnd();
} if (rf & 2) {
    var i_r2271 = ctx.$implicit;
    var last_r2272 = ctx.last;
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", i_r2271);
    ɵɵadvance(1);
    ɵɵproperty("ngIf", !last_r2272);
} }
var NzListItemExtraComponent = /** @class */ (function () {
    function NzListItemExtraComponent() {
    }
    /** @nocollapse */ NzListItemExtraComponent.ɵfac = function NzListItemExtraComponent_Factory(t) { return new (t || NzListItemExtraComponent)(); };
    /** @nocollapse */ NzListItemExtraComponent.ɵcmp = ɵɵdefineComponent({ type: NzListItemExtraComponent, selectors: [["nz-list-item-extra"], ["", "nz-list-item-extra", ""]], hostAttrs: [1, "ant-list-item-extra"], exportAs: ["nzListItemExtra"], ngContentSelectors: _c0$2, decls: 1, vars: 0, template: function NzListItemExtraComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef();
            ɵɵprojection(0);
        } }, encapsulation: 2, changeDetection: 0 });
    return NzListItemExtraComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListItemExtraComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-item-extra, [nz-list-item-extra]',
                exportAs: 'nzListItemExtra',
                changeDetection: ChangeDetectionStrategy.OnPush,
                template: "\n    <ng-content></ng-content>\n  ",
                host: {
                    class: 'ant-list-item-extra'
                }
            }]
    }], function () { return []; }, null); })();
var NzListItemActionComponent = /** @class */ (function () {
    function NzListItemActionComponent() {
    }
    /** @nocollapse */ NzListItemActionComponent.ɵfac = function NzListItemActionComponent_Factory(t) { return new (t || NzListItemActionComponent)(); };
    /** @nocollapse */ NzListItemActionComponent.ɵcmp = ɵɵdefineComponent({ type: NzListItemActionComponent, selectors: [["nz-list-item-action"]], viewQuery: function NzListItemActionComponent_Query(rf, ctx) { if (rf & 1) {
            ɵɵviewQuery(TemplateRef, true);
        } if (rf & 2) {
            var _t;
            ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.templateRef = _t.first);
        } }, exportAs: ["nzListItemAction"], ngContentSelectors: _c0$2, decls: 1, vars: 0, template: function NzListItemActionComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef();
            ɵɵtemplate(0, NzListItemActionComponent_ng_template_0_Template, 1, 0, "ng-template");
        } }, encapsulation: 2, changeDetection: 0 });
    return NzListItemActionComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListItemActionComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-item-action',
                exportAs: 'nzListItemAction',
                changeDetection: ChangeDetectionStrategy.OnPush,
                template: "\n    <ng-template><ng-content></ng-content></ng-template>\n  "
            }]
    }], function () { return []; }, { templateRef: [{
            type: ViewChild,
            args: [TemplateRef]
        }] }); })();
var NzListItemActionsComponent = /** @class */ (function () {
    function NzListItemActionsComponent(ngZone, cdr) {
        var _this = this;
        this.ngZone = ngZone;
        this.cdr = cdr;
        this.nzActions = [];
        this.actions = [];
        this.destroy$ = new Subject();
        this.inputActionChanges$ = new Subject();
        this.contentChildrenChanges$ = defer(function () {
            if (_this.nzListItemActions) {
                return of(null);
            }
            return _this.ngZone.onStable.asObservable().pipe(take(1), switchMap(function () { return _this.contentChildrenChanges$; }));
        });
        merge(this.contentChildrenChanges$, this.inputActionChanges$)
            .pipe(takeUntil(this.destroy$))
            .subscribe(function () {
            if (_this.nzActions.length) {
                _this.actions = _this.nzActions;
            }
            else {
                _this.actions = _this.nzListItemActions.map(function (action) { return action.templateRef; });
            }
            _this.cdr.markForCheck();
        });
    }
    NzListItemActionsComponent.prototype.ngOnChanges = function () {
        this.inputActionChanges$.next(null);
    };
    NzListItemActionsComponent.prototype.ngOnDestroy = function () {
        this.destroy$.next();
        this.destroy$.complete();
    };
    /** @nocollapse */ NzListItemActionsComponent.ɵfac = function NzListItemActionsComponent_Factory(t) { return new (t || NzListItemActionsComponent)(ɵɵdirectiveInject(NgZone), ɵɵdirectiveInject(ChangeDetectorRef)); };
    /** @nocollapse */ NzListItemActionsComponent.ɵcmp = ɵɵdefineComponent({ type: NzListItemActionsComponent, selectors: [["ul", "nz-list-item-actions", ""]], contentQueries: function NzListItemActionsComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
            ɵɵcontentQuery(dirIndex, NzListItemActionComponent, false);
        } if (rf & 2) {
            var _t;
            ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.nzListItemActions = _t);
        } }, hostAttrs: [1, "ant-list-item-action"], inputs: { nzActions: "nzActions" }, exportAs: ["nzListItemActions"], features: [ɵɵNgOnChangesFeature], attrs: _c1$1, decls: 1, vars: 1, consts: [[4, "ngFor", "ngForOf"], [3, "ngTemplateOutlet"], ["class", "ant-list-item-action-split", 4, "ngIf"], [1, "ant-list-item-action-split"]], template: function NzListItemActionsComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵtemplate(0, NzListItemActionsComponent_li_0_Template, 3, 2, "li", 0);
        } if (rf & 2) {
            ɵɵproperty("ngForOf", ctx.actions);
        } }, directives: [NgForOf, NgTemplateOutlet, NgIf], encapsulation: 2, changeDetection: 0 });
    return NzListItemActionsComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListItemActionsComponent, [{
        type: Component,
        args: [{
                selector: 'ul[nz-list-item-actions]',
                exportAs: 'nzListItemActions',
                changeDetection: ChangeDetectionStrategy.OnPush,
                template: "\n    <li *ngFor=\"let i of actions; let last = last\">\n      <ng-template [ngTemplateOutlet]=\"i\"></ng-template>\n      <em *ngIf=\"!last\" class=\"ant-list-item-action-split\"></em>\n    </li>\n  ",
                host: {
                    class: 'ant-list-item-action'
                }
            }]
    }], function () { return [{ type: NgZone }, { type: ChangeDetectorRef }]; }, { nzActions: [{
            type: Input
        }], nzListItemActions: [{
            type: ContentChildren,
            args: [NzListItemActionComponent]
        }] }); })();

/**
 * @license
 * Copyright Alibaba.com All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */
var _c0$3 = ["*"];
var NzListEmptyComponent = /** @class */ (function () {
    function NzListEmptyComponent() {
    }
    /** @nocollapse */ NzListEmptyComponent.ɵfac = function NzListEmptyComponent_Factory(t) { return new (t || NzListEmptyComponent)(); };
    /** @nocollapse */ NzListEmptyComponent.ɵcmp = ɵɵdefineComponent({ type: NzListEmptyComponent, selectors: [["nz-list-empty"]], hostAttrs: [1, "ant-list-empty-text"], inputs: { nzNoResult: "nzNoResult" }, exportAs: ["nzListHeader"], decls: 1, vars: 2, consts: [[3, "nzComponentName", "specificContent"]], template: function NzListEmptyComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵelement(0, "nz-embed-empty", 0);
        } if (rf & 2) {
            ɵɵproperty("nzComponentName", "list")("specificContent", ctx.nzNoResult);
        } }, directives: [NzEmbedEmptyComponent], encapsulation: 2, changeDetection: 0 });
    return NzListEmptyComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListEmptyComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-empty',
                exportAs: 'nzListHeader',
                changeDetection: ChangeDetectionStrategy.OnPush,
                template: "\n    <nz-embed-empty [nzComponentName]=\"'list'\" [specificContent]=\"nzNoResult\"></nz-embed-empty>\n  ",
                host: {
                    class: 'ant-list-empty-text'
                }
            }]
    }], null, { nzNoResult: [{
            type: Input
        }] }); })();
var NzListHeaderComponent = /** @class */ (function () {
    function NzListHeaderComponent() {
    }
    /** @nocollapse */ NzListHeaderComponent.ɵfac = function NzListHeaderComponent_Factory(t) { return new (t || NzListHeaderComponent)(); };
    /** @nocollapse */ NzListHeaderComponent.ɵcmp = ɵɵdefineComponent({ type: NzListHeaderComponent, selectors: [["nz-list-header"]], hostAttrs: [1, "ant-list-header"], exportAs: ["nzListHeader"], ngContentSelectors: _c0$3, decls: 1, vars: 0, template: function NzListHeaderComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef();
            ɵɵprojection(0);
        } }, encapsulation: 2, changeDetection: 0 });
    return NzListHeaderComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListHeaderComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-header',
                exportAs: 'nzListHeader',
                changeDetection: ChangeDetectionStrategy.OnPush,
                template: "\n    <ng-content></ng-content>\n  ",
                host: {
                    class: 'ant-list-header'
                }
            }]
    }], null, null); })();
var NzListFooterComponent = /** @class */ (function () {
    function NzListFooterComponent() {
    }
    /** @nocollapse */ NzListFooterComponent.ɵfac = function NzListFooterComponent_Factory(t) { return new (t || NzListFooterComponent)(); };
    /** @nocollapse */ NzListFooterComponent.ɵcmp = ɵɵdefineComponent({ type: NzListFooterComponent, selectors: [["nz-list-footer"]], hostAttrs: [1, "ant-list-footer"], exportAs: ["nzListFooter"], ngContentSelectors: _c0$3, decls: 1, vars: 0, template: function NzListFooterComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef();
            ɵɵprojection(0);
        } }, encapsulation: 2, changeDetection: 0 });
    return NzListFooterComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListFooterComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-footer',
                exportAs: 'nzListFooter',
                changeDetection: ChangeDetectionStrategy.OnPush,
                template: "\n    <ng-content></ng-content>\n  ",
                host: {
                    class: 'ant-list-footer'
                }
            }]
    }], null, null); })();
var NzListPaginationComponent = /** @class */ (function () {
    function NzListPaginationComponent() {
    }
    /** @nocollapse */ NzListPaginationComponent.ɵfac = function NzListPaginationComponent_Factory(t) { return new (t || NzListPaginationComponent)(); };
    /** @nocollapse */ NzListPaginationComponent.ɵcmp = ɵɵdefineComponent({ type: NzListPaginationComponent, selectors: [["nz-list-pagination"]], hostAttrs: [1, "ant-list-pagination"], exportAs: ["nzListPagination"], ngContentSelectors: _c0$3, decls: 1, vars: 0, template: function NzListPaginationComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef();
            ɵɵprojection(0);
        } }, encapsulation: 2, changeDetection: 0 });
    return NzListPaginationComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListPaginationComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-pagination',
                exportAs: 'nzListPagination',
                changeDetection: ChangeDetectionStrategy.OnPush,
                template: "\n    <ng-content></ng-content>\n  ",
                host: {
                    class: 'ant-list-pagination'
                }
            }]
    }], null, null); })();
var NzListLoadMoreDirective = /** @class */ (function () {
    function NzListLoadMoreDirective() {
    }
    /** @nocollapse */ NzListLoadMoreDirective.ɵfac = function NzListLoadMoreDirective_Factory(t) { return new (t || NzListLoadMoreDirective)(); };
    /** @nocollapse */ NzListLoadMoreDirective.ɵdir = ɵɵdefineDirective({ type: NzListLoadMoreDirective, selectors: [["nz-list-load-more"]], exportAs: ["nzListLoadMoreDirective"] });
    return NzListLoadMoreDirective;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListLoadMoreDirective, [{
        type: Directive,
        args: [{
                selector: 'nz-list-load-more',
                exportAs: 'nzListLoadMoreDirective'
            }]
    }], null, null); })();
var NzListGridDirective = /** @class */ (function () {
    function NzListGridDirective() {
    }
    /** @nocollapse */ NzListGridDirective.ɵfac = function NzListGridDirective_Factory(t) { return new (t || NzListGridDirective)(); };
    /** @nocollapse */ NzListGridDirective.ɵdir = ɵɵdefineDirective({ type: NzListGridDirective, selectors: [["nz-list", "nzGrid", ""]], hostAttrs: [1, "ant-list-grid"] });
    return NzListGridDirective;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListGridDirective, [{
        type: Directive,
        args: [{
                selector: 'nz-list[nzGrid]',
                host: {
                    class: 'ant-list-grid'
                }
            }]
    }], null, null); })();

function NzListComponent_ng_template_0_ng_container_1_ng_template_1_Template(rf, ctx) { }
var _c0$4 = function (a0, a1) { return { $implicit: a0, index: a1 }; };
function NzListComponent_ng_template_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementContainerStart(0);
    ɵɵtemplate(1, NzListComponent_ng_template_0_ng_container_1_ng_template_1_Template, 0, 0, "ng-template", 9);
    ɵɵelementContainerEnd();
} if (rf & 2) {
    var item_r2285 = ctx.$implicit;
    var index_r2286 = ctx.index;
    var ctx_r2284 = ɵɵnextContext(2);
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", ctx_r2284.nzRenderItem)("ngTemplateOutletContext", ɵɵpureFunction2(2, _c0$4, item_r2285, index_r2286));
} }
function NzListComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "div", 7);
    ɵɵtemplate(1, NzListComponent_ng_template_0_ng_container_1_Template, 2, 5, "ng-container", 8);
    ɵɵprojection(2, 5);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2276 = ɵɵnextContext();
    ɵɵadvance(1);
    ɵɵproperty("ngForOf", ctx_r2276.nzDataSource);
} }
function NzListComponent_nz_list_header_2_ng_container_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementContainerStart(0);
    ɵɵtext(1);
    ɵɵelementContainerEnd();
} if (rf & 2) {
    var ctx_r2288 = ɵɵnextContext(2);
    ɵɵadvance(1);
    ɵɵtextInterpolate(ctx_r2288.nzHeader);
} }
function NzListComponent_nz_list_header_2_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "nz-list-header");
    ɵɵtemplate(1, NzListComponent_nz_list_header_2_ng_container_1_Template, 2, 1, "ng-container", 10);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2277 = ɵɵnextContext();
    ɵɵadvance(1);
    ɵɵproperty("nzStringTemplateOutlet", ctx_r2277.nzHeader);
} }
function NzListComponent_div_6_Template(rf, ctx) { if (rf & 1) {
    ɵɵelement(0, "div");
} if (rf & 2) {
    ɵɵstyleProp("min-height", 53, "px");
} }
function NzListComponent_div_7_div_1_ng_template_1_Template(rf, ctx) { }
function NzListComponent_div_7_div_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "div", 13);
    ɵɵtemplate(1, NzListComponent_div_7_div_1_ng_template_1_Template, 0, 0, "ng-template", 9);
    ɵɵelementEnd();
} if (rf & 2) {
    var item_r2290 = ctx.$implicit;
    var index_r2291 = ctx.index;
    var ctx_r2289 = ɵɵnextContext(2);
    ɵɵproperty("nzSpan", ctx_r2289.nzGrid.span)("nzXs", ctx_r2289.nzGrid.xs)("nzSm", ctx_r2289.nzGrid.sm)("nzMd", ctx_r2289.nzGrid.md)("nzLg", ctx_r2289.nzGrid.lg)("nzXl", ctx_r2289.nzGrid.xl)("nzXXl", ctx_r2289.nzGrid.xxl);
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", ctx_r2289.nzRenderItem)("ngTemplateOutletContext", ɵɵpureFunction2(9, _c0$4, item_r2290, index_r2291));
} }
function NzListComponent_div_7_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "div", 11);
    ɵɵtemplate(1, NzListComponent_div_7_div_1_Template, 2, 12, "div", 12);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2279 = ɵɵnextContext();
    ɵɵproperty("nzGutter", ctx_r2279.nzGrid.gutter);
    ɵɵadvance(1);
    ɵɵproperty("ngForOf", ctx_r2279.nzDataSource);
} }
function NzListComponent_nz_list_empty_8_Template(rf, ctx) { if (rf & 1) {
    ɵɵelement(0, "nz-list-empty", 14);
} if (rf & 2) {
    var ctx_r2280 = ɵɵnextContext();
    ɵɵproperty("nzNoResult", ctx_r2280.nzNoResult);
} }
function NzListComponent_nz_list_footer_10_ng_container_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementContainerStart(0);
    ɵɵtext(1);
    ɵɵelementContainerEnd();
} if (rf & 2) {
    var ctx_r2293 = ɵɵnextContext(2);
    ɵɵadvance(1);
    ɵɵtextInterpolate(ctx_r2293.nzFooter);
} }
function NzListComponent_nz_list_footer_10_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "nz-list-footer");
    ɵɵtemplate(1, NzListComponent_nz_list_footer_10_ng_container_1_Template, 2, 1, "ng-container", 10);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2281 = ɵɵnextContext();
    ɵɵadvance(1);
    ɵɵproperty("nzStringTemplateOutlet", ctx_r2281.nzFooter);
} }
function NzListComponent_ng_template_12_Template(rf, ctx) { }
function NzListComponent_nz_list_pagination_14_ng_template_1_Template(rf, ctx) { }
function NzListComponent_nz_list_pagination_14_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "nz-list-pagination");
    ɵɵtemplate(1, NzListComponent_nz_list_pagination_14_ng_template_1_Template, 0, 0, "ng-template", 6);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2283 = ɵɵnextContext();
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", ctx_r2283.nzPagination);
} }
var _c1$2 = [[["nz-list-header"]], "*", [["nz-list-footer"], ["", "nz-list-footer", ""]], [["nz-list-load-more"], ["", "nz-list-load-more", ""]], [["nz-list-pagination"], ["", "nz-list-pagination", ""]], [["nz-list-item"], ["", "nz-list-item", ""]]];
var _c2 = ["nz-list-header", "*", "nz-list-footer, [nz-list-footer]", "nz-list-load-more, [nz-list-load-more]", "nz-list-pagination, [nz-list-pagination]", "nz-list-item, [nz-list-item]"];
var NzListComponent = /** @class */ (function () {
    function NzListComponent(el, updateHostClassService) {
        this.el = el;
        this.updateHostClassService = updateHostClassService;
        this.nzBordered = false;
        this.nzItemLayout = 'horizontal';
        this.nzLoading = false;
        this.nzSize = 'default';
        this.nzSplit = true;
        this.hasSomethingAfterLastItem = false;
        this.prefixCls = 'ant-list';
        // #endregion
        this.itemLayoutNotifySource = new BehaviorSubject(this.nzItemLayout);
    }
    NzListComponent.prototype._setClassMap = function () {
        var _a;
        var classMap = (_a = {},
            _a[this.prefixCls] = true,
            _a);
        this.updateHostClassService.updateHostClass(this.el.nativeElement, classMap);
    };
    Object.defineProperty(NzListComponent.prototype, "itemLayoutNotify$", {
        get: function () {
            return this.itemLayoutNotifySource.asObservable();
        },
        enumerable: true,
        configurable: true
    });
    NzListComponent.prototype.getSomethingAfterLastItem = function () {
        return !!(this.nzLoadMore ||
            this.nzPagination ||
            this.nzFooter ||
            this.nzListFooterComponent ||
            this.nzListPaginationComponent ||
            this.nzListLoadMoreDirective);
    };
    NzListComponent.prototype.ngOnInit = function () {
        this._setClassMap();
    };
    NzListComponent.prototype.ngOnChanges = function (changes) {
        this._setClassMap();
        if (changes.nzItemLayout) {
            this.itemLayoutNotifySource.next(this.nzItemLayout);
        }
    };
    NzListComponent.prototype.ngOnDestroy = function () {
        this.itemLayoutNotifySource.unsubscribe();
    };
    NzListComponent.prototype.ngAfterContentInit = function () {
        this.hasSomethingAfterLastItem = this.getSomethingAfterLastItem();
    };
    /** @nocollapse */ NzListComponent.ɵfac = function NzListComponent_Factory(t) { return new (t || NzListComponent)(ɵɵdirectiveInject(ElementRef), ɵɵdirectiveInject(NzUpdateHostClassService)); };
    /** @nocollapse */ NzListComponent.ɵcmp = ɵɵdefineComponent({ type: NzListComponent, selectors: [["nz-list"], ["", "nz-list", ""]], contentQueries: function NzListComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
            ɵɵcontentQuery(dirIndex, NzListFooterComponent, true);
            ɵɵcontentQuery(dirIndex, NzListPaginationComponent, true);
            ɵɵcontentQuery(dirIndex, NzListLoadMoreDirective, true);
        } if (rf & 2) {
            var _t;
            ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.nzListFooterComponent = _t.first);
            ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.nzListPaginationComponent = _t.first);
            ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.nzListLoadMoreDirective = _t.first);
        } }, hostVars: 14, hostBindings: function NzListComponent_HostBindings(rf, ctx) { if (rf & 2) {
            ɵɵclassProp("ant-list-vertical", ctx.nzItemLayout === "vertical")("ant-list-lg", ctx.nzSize === "large")("ant-list-sm", ctx.nzSize === "small")("ant-list-split", ctx.nzSplit)("ant-list-bordered", ctx.nzBordered)("ant-list-loading", ctx.nzLoading)("ant-list-something-after-last-item", ctx.hasSomethingAfterLastItem);
        } }, inputs: { nzDataSource: "nzDataSource", nzBordered: "nzBordered", nzGrid: "nzGrid", nzHeader: "nzHeader", nzFooter: "nzFooter", nzItemLayout: "nzItemLayout", nzRenderItem: "nzRenderItem", nzLoading: "nzLoading", nzLoadMore: "nzLoadMore", nzPagination: "nzPagination", nzSize: "nzSize", nzSplit: "nzSplit", nzNoResult: "nzNoResult" }, exportAs: ["nzList"], features: [ɵɵProvidersFeature([NzUpdateHostClassService]), ɵɵNgOnChangesFeature], ngContentSelectors: _c2, decls: 16, vars: 9, consts: [["itemsTpl", ""], [4, "ngIf"], [3, "nzSpinning"], [3, "min-height", 4, "ngIf"], ["nz-row", "", 3, "nzGutter", 4, "ngIf", "ngIfElse"], [3, "nzNoResult", 4, "ngIf"], [3, "ngTemplateOutlet"], [1, "ant-list-items"], [4, "ngFor", "ngForOf"], [3, "ngTemplateOutlet", "ngTemplateOutletContext"], [4, "nzStringTemplateOutlet"], ["nz-row", "", 3, "nzGutter"], ["nz-col", "", 3, "nzSpan", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl", 4, "ngFor", "ngForOf"], ["nz-col", "", 3, "nzSpan", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], [3, "nzNoResult"]], template: function NzListComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef(_c1$2);
            ɵɵtemplate(0, NzListComponent_ng_template_0_Template, 3, 1, "ng-template", null, 0, ɵɵtemplateRefExtractor);
            ɵɵtemplate(2, NzListComponent_nz_list_header_2_Template, 2, 1, "nz-list-header", 1);
            ɵɵprojection(3);
            ɵɵelementStart(4, "nz-spin", 2);
            ɵɵelementContainerStart(5);
            ɵɵtemplate(6, NzListComponent_div_6_Template, 1, 2, "div", 3);
            ɵɵtemplate(7, NzListComponent_div_7_Template, 2, 2, "div", 4);
            ɵɵtemplate(8, NzListComponent_nz_list_empty_8_Template, 1, 1, "nz-list-empty", 5);
            ɵɵelementContainerEnd();
            ɵɵprojection(9, 1);
            ɵɵelementEnd();
            ɵɵtemplate(10, NzListComponent_nz_list_footer_10_Template, 2, 1, "nz-list-footer", 1);
            ɵɵprojection(11, 2);
            ɵɵtemplate(12, NzListComponent_ng_template_12_Template, 0, 0, "ng-template", 6);
            ɵɵprojection(13, 3);
            ɵɵtemplate(14, NzListComponent_nz_list_pagination_14_Template, 2, 1, "nz-list-pagination", 1);
            ɵɵprojection(15, 4);
        } if (rf & 2) {
            var _r2275 = ɵɵreference(1);
            ɵɵadvance(2);
            ɵɵproperty("ngIf", ctx.nzHeader);
            ɵɵadvance(2);
            ɵɵproperty("nzSpinning", ctx.nzLoading);
            ɵɵadvance(2);
            ɵɵproperty("ngIf", ctx.nzLoading && ctx.nzDataSource && ctx.nzDataSource.length === 0);
            ɵɵadvance(1);
            ɵɵproperty("ngIf", ctx.nzGrid && ctx.nzDataSource)("ngIfElse", _r2275);
            ɵɵadvance(1);
            ɵɵproperty("ngIf", !ctx.nzLoading && ctx.nzDataSource && ctx.nzDataSource.length === 0);
            ɵɵadvance(2);
            ɵɵproperty("ngIf", ctx.nzFooter);
            ɵɵadvance(2);
            ɵɵproperty("ngTemplateOutlet", ctx.nzLoadMore);
            ɵɵadvance(2);
            ɵɵproperty("ngIf", ctx.nzPagination);
        } }, directives: [NgIf, NzSpinComponent, NgTemplateOutlet, NgForOf, NzListHeaderComponent, NzStringTemplateOutletDirective, NzRowDirective, NzColDirective, NzListEmptyComponent, NzListFooterComponent, NzListPaginationComponent], encapsulation: 2, changeDetection: 0 });
    __decorate([
        InputBoolean(),
        __metadata("design:type", Object)
    ], NzListComponent.prototype, "nzBordered", void 0);
    __decorate([
        InputBoolean(),
        __metadata("design:type", Object)
    ], NzListComponent.prototype, "nzLoading", void 0);
    __decorate([
        InputBoolean(),
        __metadata("design:type", Object)
    ], NzListComponent.prototype, "nzSplit", void 0);
    return NzListComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list, [nz-list]',
                exportAs: 'nzList',
                template: "\n    <ng-template #itemsTpl>\n      <div class=\"ant-list-items\">\n        <ng-container *ngFor=\"let item of nzDataSource; let index = index\">\n          <ng-template [ngTemplateOutlet]=\"nzRenderItem\" [ngTemplateOutletContext]=\"{ $implicit: item, index: index }\"></ng-template>\n        </ng-container>\n        <ng-content select=\"nz-list-item, [nz-list-item]\"></ng-content>\n      </div>\n    </ng-template>\n\n    <nz-list-header *ngIf=\"nzHeader\">\n      <ng-container *nzStringTemplateOutlet=\"nzHeader\">{{ nzHeader }}</ng-container>\n    </nz-list-header>\n    <ng-content select=\"nz-list-header\"></ng-content>\n\n    <nz-spin [nzSpinning]=\"nzLoading\">\n      <ng-container>\n        <div *ngIf=\"nzLoading && nzDataSource && nzDataSource.length === 0\" [style.min-height.px]=\"53\"></div>\n        <div *ngIf=\"nzGrid && nzDataSource; else itemsTpl\" nz-row [nzGutter]=\"nzGrid.gutter\">\n          <div\n            nz-col\n            [nzSpan]=\"nzGrid.span\"\n            [nzXs]=\"nzGrid.xs\"\n            [nzSm]=\"nzGrid.sm\"\n            [nzMd]=\"nzGrid.md\"\n            [nzLg]=\"nzGrid.lg\"\n            [nzXl]=\"nzGrid.xl\"\n            [nzXXl]=\"nzGrid.xxl\"\n            *ngFor=\"let item of nzDataSource; let index = index\"\n          >\n            <ng-template [ngTemplateOutlet]=\"nzRenderItem\" [ngTemplateOutletContext]=\"{ $implicit: item, index: index }\"></ng-template>\n          </div>\n        </div>\n        <nz-list-empty *ngIf=\"!nzLoading && nzDataSource && nzDataSource.length === 0\" [nzNoResult]=\"nzNoResult\"></nz-list-empty>\n      </ng-container>\n      <ng-content></ng-content>\n    </nz-spin>\n\n    <nz-list-footer *ngIf=\"nzFooter\">\n      <ng-container *nzStringTemplateOutlet=\"nzFooter\">{{ nzFooter }}</ng-container>\n    </nz-list-footer>\n    <ng-content select=\"nz-list-footer, [nz-list-footer]\"></ng-content>\n\n    <ng-template [ngTemplateOutlet]=\"nzLoadMore\"></ng-template>\n    <ng-content select=\"nz-list-load-more, [nz-list-load-more]\"></ng-content>\n\n    <nz-list-pagination *ngIf=\"nzPagination\">\n      <ng-template [ngTemplateOutlet]=\"nzPagination\"></ng-template>\n    </nz-list-pagination>\n    <ng-content select=\"nz-list-pagination, [nz-list-pagination]\"></ng-content>\n  ",
                providers: [NzUpdateHostClassService],
                preserveWhitespaces: false,
                encapsulation: ViewEncapsulation.None,
                changeDetection: ChangeDetectionStrategy.OnPush,
                host: {
                    '[class.ant-list-vertical]': 'nzItemLayout === "vertical"',
                    '[class.ant-list-lg]': 'nzSize === "large"',
                    '[class.ant-list-sm]': 'nzSize === "small"',
                    '[class.ant-list-split]': 'nzSplit',
                    '[class.ant-list-bordered]': 'nzBordered',
                    '[class.ant-list-loading]': 'nzLoading',
                    '[class.ant-list-something-after-last-item]': 'hasSomethingAfterLastItem'
                }
            }]
    }], function () { return [{ type: ElementRef }, { type: NzUpdateHostClassService }]; }, { nzDataSource: [{
            type: Input
        }], nzBordered: [{
            type: Input
        }], nzGrid: [{
            type: Input
        }], nzHeader: [{
            type: Input
        }], nzFooter: [{
            type: Input
        }], nzItemLayout: [{
            type: Input
        }], nzRenderItem: [{
            type: Input
        }], nzLoading: [{
            type: Input
        }], nzLoadMore: [{
            type: Input
        }], nzPagination: [{
            type: Input
        }], nzSize: [{
            type: Input
        }], nzSplit: [{
            type: Input
        }], nzNoResult: [{
            type: Input
        }], nzListFooterComponent: [{
            type: ContentChild,
            args: [NzListFooterComponent]
        }], nzListPaginationComponent: [{
            type: ContentChild,
            args: [NzListPaginationComponent]
        }], nzListLoadMoreDirective: [{
            type: ContentChild,
            args: [NzListLoadMoreDirective]
        }] }); })();

function NzListItemComponent_ng_template_0_ul_0_Template(rf, ctx) { if (rf & 1) {
    ɵɵelement(0, "ul", 6);
} if (rf & 2) {
    var ctx_r2304 = ɵɵnextContext(2);
    ɵɵproperty("nzActions", ctx_r2304.nzActions);
} }
function NzListItemComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
    ɵɵtemplate(0, NzListItemComponent_ng_template_0_ul_0_Template, 1, 1, "ul", 5);
    ɵɵprojection(1);
} if (rf & 2) {
    var ctx_r2296 = ɵɵnextContext();
    ɵɵproperty("ngIf", (ctx_r2296.nzActions == null ? null : ctx_r2296.nzActions.length) > 0);
} }
function NzListItemComponent_ng_template_2_ng_container_2_ng_container_1_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementContainerStart(0);
    ɵɵtext(1);
    ɵɵelementContainerEnd();
} if (rf & 2) {
    var ctx_r2306 = ɵɵnextContext(3);
    ɵɵadvance(1);
    ɵɵtextInterpolate(ctx_r2306.nzContent);
} }
function NzListItemComponent_ng_template_2_ng_container_2_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementContainerStart(0);
    ɵɵtemplate(1, NzListItemComponent_ng_template_2_ng_container_2_ng_container_1_Template, 2, 1, "ng-container", 8);
    ɵɵelementContainerEnd();
} if (rf & 2) {
    var ctx_r2305 = ɵɵnextContext(2);
    ɵɵadvance(1);
    ɵɵproperty("nzStringTemplateOutlet", ctx_r2305.nzContent);
} }
function NzListItemComponent_ng_template_2_Template(rf, ctx) { if (rf & 1) {
    ɵɵprojection(0, 1);
    ɵɵprojection(1, 2);
    ɵɵtemplate(2, NzListItemComponent_ng_template_2_ng_container_2_Template, 2, 1, "ng-container", 7);
} if (rf & 2) {
    var ctx_r2298 = ɵɵnextContext();
    ɵɵadvance(2);
    ɵɵproperty("ngIf", ctx_r2298.nzContent);
} }
function NzListItemComponent_ng_template_4_Template(rf, ctx) { if (rf & 1) {
    ɵɵprojection(0, 3);
} }
function NzListItemComponent_ng_template_6_ng_template_0_Template(rf, ctx) { }
function NzListItemComponent_ng_template_6_ng_template_1_Template(rf, ctx) { }
function NzListItemComponent_ng_template_6_ng_template_2_Template(rf, ctx) { }
function NzListItemComponent_ng_template_6_ng_template_3_Template(rf, ctx) { }
function NzListItemComponent_ng_template_6_Template(rf, ctx) { if (rf & 1) {
    ɵɵtemplate(0, NzListItemComponent_ng_template_6_ng_template_0_Template, 0, 0, "ng-template", 9);
    ɵɵtemplate(1, NzListItemComponent_ng_template_6_ng_template_1_Template, 0, 0, "ng-template", 9);
    ɵɵtemplate(2, NzListItemComponent_ng_template_6_ng_template_2_Template, 0, 0, "ng-template", 9);
    ɵɵtemplate(3, NzListItemComponent_ng_template_6_ng_template_3_Template, 0, 0, "ng-template", 9);
} if (rf & 2) {
    var ctx_r2302 = ɵɵnextContext();
    var _r2297 = ɵɵreference(3);
    var _r2299 = ɵɵreference(5);
    var _r2295 = ɵɵreference(1);
    ɵɵproperty("ngTemplateOutlet", _r2297);
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", ctx_r2302.nzExtra);
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", _r2299);
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", _r2295);
} }
function NzListItemComponent_ng_container_8_ng_template_2_Template(rf, ctx) { }
function NzListItemComponent_ng_container_8_ng_template_3_Template(rf, ctx) { }
function NzListItemComponent_ng_container_8_nz_list_item_extra_4_ng_template_1_Template(rf, ctx) { }
function NzListItemComponent_ng_container_8_nz_list_item_extra_4_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementStart(0, "nz-list-item-extra");
    ɵɵtemplate(1, NzListItemComponent_ng_container_8_nz_list_item_extra_4_ng_template_1_Template, 0, 0, "ng-template", 9);
    ɵɵelementEnd();
} if (rf & 2) {
    var ctx_r2313 = ɵɵnextContext(2);
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", ctx_r2313.nzExtra);
} }
function NzListItemComponent_ng_container_8_ng_template_5_Template(rf, ctx) { }
function NzListItemComponent_ng_container_8_Template(rf, ctx) { if (rf & 1) {
    ɵɵelementContainerStart(0);
    ɵɵelementStart(1, "div", 10);
    ɵɵtemplate(2, NzListItemComponent_ng_container_8_ng_template_2_Template, 0, 0, "ng-template", 9);
    ɵɵtemplate(3, NzListItemComponent_ng_container_8_ng_template_3_Template, 0, 0, "ng-template", 9);
    ɵɵelementEnd();
    ɵɵtemplate(4, NzListItemComponent_ng_container_8_nz_list_item_extra_4_Template, 2, 1, "nz-list-item-extra", 7);
    ɵɵtemplate(5, NzListItemComponent_ng_container_8_ng_template_5_Template, 0, 0, "ng-template", 9);
    ɵɵelementContainerEnd();
} if (rf & 2) {
    var ctx_r2303 = ɵɵnextContext();
    var _r2297 = ɵɵreference(3);
    var _r2295 = ɵɵreference(1);
    var _r2299 = ɵɵreference(5);
    ɵɵadvance(2);
    ɵɵproperty("ngTemplateOutlet", _r2297);
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", _r2295);
    ɵɵadvance(1);
    ɵɵproperty("ngIf", ctx_r2303.nzExtra);
    ɵɵadvance(1);
    ɵɵproperty("ngTemplateOutlet", _r2299);
} }
var _c0$5 = [[["nz-list-item-actions"], ["", "nz-list-item-actions", ""]], [["nz-list-item-meta"], ["", "nz-list-item-meta", ""]], "*", [["nz-list-item-extra"], ["", "nz-list-item-extra", ""]]];
var _c1$3 = ["nz-list-item-actions, [nz-list-item-actions]", "nz-list-item-meta, [nz-list-item-meta]", "*", "nz-list-item-extra, [nz-list-item-extra]"];
var NzListItemComponent = /** @class */ (function () {
    function NzListItemComponent(elementRef, renderer, parentComp, cdr) {
        this.parentComp = parentComp;
        this.cdr = cdr;
        this.nzActions = [];
        this.nzNoFlex = false;
        renderer.addClass(elementRef.nativeElement, 'ant-list-item');
    }
    Object.defineProperty(NzListItemComponent.prototype, "isVerticalAndExtra", {
        get: function () {
            return this.itemLayout === 'vertical' && (!!this.listItemExtraDirective || !!this.nzExtra);
        },
        enumerable: true,
        configurable: true
    });
    NzListItemComponent.prototype.ngAfterViewInit = function () {
        var _this = this;
        this.itemLayout$ = this.parentComp.itemLayoutNotify$.subscribe(function (val) {
            _this.itemLayout = val;
            _this.cdr.detectChanges();
        });
    };
    NzListItemComponent.prototype.ngOnDestroy = function () {
        if (this.itemLayout$) {
            this.itemLayout$.unsubscribe();
        }
    };
    /** @nocollapse */ NzListItemComponent.ɵfac = function NzListItemComponent_Factory(t) { return new (t || NzListItemComponent)(ɵɵdirectiveInject(ElementRef), ɵɵdirectiveInject(Renderer2), ɵɵdirectiveInject(NzListComponent), ɵɵdirectiveInject(ChangeDetectorRef)); };
    /** @nocollapse */ NzListItemComponent.ɵcmp = ɵɵdefineComponent({ type: NzListItemComponent, selectors: [["nz-list-item"], ["", "nz-list-item", ""]], contentQueries: function NzListItemComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
            ɵɵcontentQuery(dirIndex, NzListItemExtraComponent, true);
        } if (rf & 2) {
            var _t;
            ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.listItemExtraDirective = _t.first);
        } }, hostVars: 2, hostBindings: function NzListItemComponent_HostBindings(rf, ctx) { if (rf & 2) {
            ɵɵclassProp("ant-list-item-no-flex", ctx.nzNoFlex);
        } }, inputs: { nzActions: "nzActions", nzContent: "nzContent", nzExtra: "nzExtra", nzNoFlex: "nzNoFlex" }, exportAs: ["nzListItem"], ngContentSelectors: _c1$3, decls: 9, vars: 2, consts: [["actionsTpl", ""], ["contentTpl", ""], ["extraTpl", ""], ["simpleTpl", ""], [4, "ngIf", "ngIfElse"], ["nz-list-item-actions", "", 3, "nzActions", 4, "ngIf"], ["nz-list-item-actions", "", 3, "nzActions"], [4, "ngIf"], [4, "nzStringTemplateOutlet"], [3, "ngTemplateOutlet"], [1, "ant-list-item-main"]], template: function NzListItemComponent_Template(rf, ctx) { if (rf & 1) {
            ɵɵprojectionDef(_c0$5);
            ɵɵtemplate(0, NzListItemComponent_ng_template_0_Template, 2, 1, "ng-template", null, 0, ɵɵtemplateRefExtractor);
            ɵɵtemplate(2, NzListItemComponent_ng_template_2_Template, 3, 1, "ng-template", null, 1, ɵɵtemplateRefExtractor);
            ɵɵtemplate(4, NzListItemComponent_ng_template_4_Template, 1, 0, "ng-template", null, 2, ɵɵtemplateRefExtractor);
            ɵɵtemplate(6, NzListItemComponent_ng_template_6_Template, 4, 4, "ng-template", null, 3, ɵɵtemplateRefExtractor);
            ɵɵtemplate(8, NzListItemComponent_ng_container_8_Template, 6, 4, "ng-container", 4);
        } if (rf & 2) {
            var _r2301 = ɵɵreference(7);
            ɵɵadvance(8);
            ɵɵproperty("ngIf", ctx.isVerticalAndExtra)("ngIfElse", _r2301);
        } }, directives: [NgIf, NzListItemActionsComponent, NzStringTemplateOutletDirective, NgTemplateOutlet, NzListItemExtraComponent], encapsulation: 2, changeDetection: 0 });
    __decorate([
        InputBoolean(),
        __metadata("design:type", Boolean)
    ], NzListItemComponent.prototype, "nzNoFlex", void 0);
    return NzListItemComponent;
}());
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListItemComponent, [{
        type: Component,
        args: [{
                selector: 'nz-list-item, [nz-list-item]',
                exportAs: 'nzListItem',
                template: "\n    <ng-template #actionsTpl>\n      <ul nz-list-item-actions *ngIf=\"nzActions?.length > 0\" [nzActions]=\"nzActions\"></ul>\n      <ng-content select=\"nz-list-item-actions, [nz-list-item-actions]\"></ng-content>\n    </ng-template>\n    <ng-template #contentTpl>\n      <ng-content select=\"nz-list-item-meta, [nz-list-item-meta]\"></ng-content>\n      <ng-content></ng-content>\n      <ng-container *ngIf=\"nzContent\">\n        <ng-container *nzStringTemplateOutlet=\"nzContent\">{{ nzContent }}</ng-container>\n      </ng-container>\n    </ng-template>\n    <ng-template #extraTpl>\n      <ng-content select=\"nz-list-item-extra, [nz-list-item-extra]\"></ng-content>\n    </ng-template>\n    <ng-template #simpleTpl>\n      <ng-template [ngTemplateOutlet]=\"contentTpl\"></ng-template>\n      <ng-template [ngTemplateOutlet]=\"nzExtra\"></ng-template>\n      <ng-template [ngTemplateOutlet]=\"extraTpl\"></ng-template>\n      <ng-template [ngTemplateOutlet]=\"actionsTpl\"></ng-template>\n    </ng-template>\n\n    <ng-container *ngIf=\"isVerticalAndExtra; else simpleTpl\">\n      <div class=\"ant-list-item-main\">\n        <ng-template [ngTemplateOutlet]=\"contentTpl\"></ng-template>\n        <ng-template [ngTemplateOutlet]=\"actionsTpl\"></ng-template>\n      </div>\n      <nz-list-item-extra *ngIf=\"nzExtra\">\n        <ng-template [ngTemplateOutlet]=\"nzExtra\"></ng-template>\n      </nz-list-item-extra>\n      <ng-template [ngTemplateOutlet]=\"extraTpl\"></ng-template>\n    </ng-container>\n  ",
                preserveWhitespaces: false,
                encapsulation: ViewEncapsulation.None,
                changeDetection: ChangeDetectionStrategy.OnPush
            }]
    }], function () { return [{ type: ElementRef }, { type: Renderer2 }, { type: NzListComponent }, { type: ChangeDetectorRef }]; }, { nzActions: [{
            type: Input
        }], nzContent: [{
            type: Input
        }], nzExtra: [{
            type: Input
        }], nzNoFlex: [{
            type: Input
        }, {
            type: HostBinding,
            args: ['class.ant-list-item-no-flex']
        }], listItemExtraDirective: [{
            type: ContentChild,
            args: [NzListItemExtraComponent]
        }] }); })();

/**
 * @license
 * Copyright Alibaba.com All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */
var DIRECTIVES = [
    NzListComponent,
    NzListHeaderComponent,
    NzListFooterComponent,
    NzListPaginationComponent,
    NzListEmptyComponent,
    NzListItemComponent,
    NzListItemMetaComponent,
    NzListItemMetaTitleComponent,
    NzListItemMetaDescriptionComponent,
    NzListItemMetaAvatarComponent,
    NzListItemActionsComponent,
    NzListItemActionComponent,
    NzListItemExtraComponent,
    NzListLoadMoreDirective,
    NzListGridDirective
];
var NzListModule = /** @class */ (function () {
    function NzListModule() {
    }
    /** @nocollapse */ NzListModule.ɵmod = ɵɵdefineNgModule({ type: NzListModule });
    /** @nocollapse */ NzListModule.ɵinj = ɵɵdefineInjector({ factory: function NzListModule_Factory(t) { return new (t || NzListModule)(); }, imports: [[CommonModule, NzSpinModule, NzGridModule, NzAvatarModule, NzOutletModule, NzEmptyModule]] });
    return NzListModule;
}());
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵɵsetNgModuleScope(NzListModule, { declarations: [NzListComponent,
        NzListHeaderComponent,
        NzListFooterComponent,
        NzListPaginationComponent,
        NzListEmptyComponent,
        NzListItemComponent,
        NzListItemMetaComponent,
        NzListItemMetaTitleComponent,
        NzListItemMetaDescriptionComponent,
        NzListItemMetaAvatarComponent,
        NzListItemActionsComponent,
        NzListItemActionComponent,
        NzListItemExtraComponent,
        NzListLoadMoreDirective,
        NzListGridDirective], imports: [CommonModule, NzSpinModule, NzGridModule, NzAvatarModule, NzOutletModule, NzEmptyModule], exports: [NzListComponent,
        NzListHeaderComponent,
        NzListFooterComponent,
        NzListPaginationComponent,
        NzListEmptyComponent,
        NzListItemComponent,
        NzListItemMetaComponent,
        NzListItemMetaTitleComponent,
        NzListItemMetaDescriptionComponent,
        NzListItemMetaAvatarComponent,
        NzListItemActionsComponent,
        NzListItemActionComponent,
        NzListItemExtraComponent,
        NzListLoadMoreDirective,
        NzListGridDirective] }); })();
/*@__PURE__*/ (function () { ɵsetClassMetadata(NzListModule, [{
        type: NgModule,
        args: [{
                imports: [CommonModule, NzSpinModule, NzGridModule, NzAvatarModule, NzOutletModule, NzEmptyModule],
                declarations: [DIRECTIVES],
                exports: [DIRECTIVES]
            }]
    }], null, null); })();

/**
 * @license
 * Copyright Alibaba.com All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */

/**
 * Generated bundle index. Do not edit.
 */

export { NzListComponent, NzListEmptyComponent, NzListFooterComponent, NzListGridDirective, NzListHeaderComponent, NzListItemActionComponent, NzListItemActionsComponent, NzListItemComponent, NzListItemExtraComponent, NzListItemMetaAvatarComponent, NzListItemMetaComponent, NzListItemMetaDescriptionComponent, NzListItemMetaTitleComponent, NzListLoadMoreDirective, NzListModule, NzListPaginationComponent };
//# sourceMappingURL=ng-zorro-antd-list.js.map
