{"version":3,"file":"ng-zorro-antd-pagination.mjs","sources":["../../components/pagination/pagination-item.component.ts","../../components/pagination/pagination-simple.component.ts","../../components/pagination/pagination-options.component.ts","../../components/pagination/pagination-default.component.ts","../../components/pagination/pagination.component.ts","../../components/pagination/pagination.module.ts","../../components/pagination/public-api.ts","../../components/pagination/ng-zorro-antd-pagination.ts"],"sourcesContent":["/* eslint-disable */\n/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n  ChangeDetectionStrategy,\n  Component,\n  EventEmitter,\n  Input,\n  OnChanges,\n  Output,\n  SimpleChanges,\n  TemplateRef,\n  ViewEncapsulation\n} from '@angular/core';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzPaginationI18nInterface } from 'ng-zorro-antd/i18n';\nimport { PaginationItemRenderContext, PaginationItemType } from './pagination.types';\n\n@Component({\n  selector: 'li[nz-pagination-item]',\n  preserveWhitespaces: false,\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  template: `\n    <ng-template #renderItemTemplate let-type let-page=\"page\">\n      <ng-container [ngSwitch]=\"type\">\n        <a *ngSwitchCase=\"'page'\">{{ page }}</a>\n        <button type=\"button\" [disabled]=\"disabled\" class=\"ant-pagination-item-link\" *ngSwitchCase=\"'prev'\">\n          <ng-container [ngSwitch]=\"direction\">\n            <i *ngSwitchCase=\"'rtl'\" nz-icon nzType=\"right\"></i>\n            <i *ngSwitchDefault nz-icon nzType=\"left\"></i>\n          </ng-container>\n        </button>\n        <button type=\"button\" [disabled]=\"disabled\" class=\"ant-pagination-item-link\" *ngSwitchCase=\"'next'\">\n          <ng-container [ngSwitch]=\"direction\">\n            <i *ngSwitchCase=\"'rtl'\" nz-icon nzType=\"left\"></i>\n            <i *ngSwitchDefault nz-icon nzType=\"right\"></i>\n          </ng-container>\n        </button>\n        <ng-container *ngSwitchDefault>\n          <a class=\"ant-pagination-item-link\" [ngSwitch]=\"type\">\n            <div class=\"ant-pagination-item-container\" *ngSwitchDefault>\n              <ng-container [ngSwitch]=\"type\">\n                <ng-container *ngSwitchCase=\"'prev_5'\" [ngSwitch]=\"direction\">\n                  <i *ngSwitchCase=\"'rtl'\" nz-icon nzType=\"double-right\" class=\"ant-pagination-item-link-icon\"></i>\n                  <i *ngSwitchDefault nz-icon nzType=\"double-left\" class=\"ant-pagination-item-link-icon\"></i>\n                </ng-container>\n                <ng-container *ngSwitchCase=\"'next_5'\" [ngSwitch]=\"direction\">\n                  <i *ngSwitchCase=\"'rtl'\" nz-icon nzType=\"double-left\" class=\"ant-pagination-item-link-icon\"></i>\n                  <i *ngSwitchDefault nz-icon nzType=\"double-right\" class=\"ant-pagination-item-link-icon\"></i>\n                </ng-container>\n              </ng-container>\n              <span class=\"ant-pagination-item-ellipsis\">•••</span>\n            </div>\n          </a>\n        </ng-container>\n      </ng-container>\n    </ng-template>\n    <ng-template\n      [ngTemplateOutlet]=\"itemRender || renderItemTemplate\"\n      [ngTemplateOutletContext]=\"{ $implicit: type, page: index }\"\n    ></ng-template>\n  `,\n  host: {\n    '[class.ant-pagination-prev]': `type === 'prev'`,\n    '[class.ant-pagination-next]': `type === 'next'`,\n    '[class.ant-pagination-item]': `type === 'page'`,\n    '[class.ant-pagination-jump-prev]': `type === 'prev_5'`,\n    '[class.ant-pagination-jump-prev-custom-icon]': `type === 'prev_5'`,\n    '[class.ant-pagination-jump-next]': `type === 'next_5'`,\n    '[class.ant-pagination-jump-next-custom-icon]': `type === 'next_5'`,\n    '[class.ant-pagination-disabled]': 'disabled',\n    '[class.ant-pagination-item-active]': 'active',\n    '[attr.title]': 'title',\n    '(click)': 'clickItem()'\n  }\n})\nexport class NzPaginationItemComponent implements OnChanges {\n  static ngAcceptInputType_type: PaginationItemType | string | null | undefined;\n  static ngAcceptInputType_index: number | null | undefined;\n\n  @Input() active = false;\n  @Input() locale!: NzPaginationI18nInterface;\n  @Input() index: number | null = null;\n  @Input() disabled = false;\n  @Input() direction = 'ltr';\n  @Input() type: PaginationItemType | string | null = null;\n  @Input() itemRender: TemplateRef<PaginationItemRenderContext> | null = null;\n  @Output() readonly diffIndex = new EventEmitter<number>();\n  @Output() readonly gotoIndex = new EventEmitter<number>();\n  title: string | null = null;\n\n  clickItem(): void {\n    if (!this.disabled) {\n      if (this.type === 'page') {\n        this.gotoIndex.emit(this.index!);\n      } else {\n        this.diffIndex.emit(\n          (\n            {\n              next: 1,\n              prev: -1,\n              prev_5: -5,\n              next_5: 5\n            } as NzSafeAny\n          )[this.type!]\n        );\n      }\n    }\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { locale, index, type } = changes;\n    if (locale || index || type) {\n      this.title = (\n        {\n          page: `${this.index}`,\n          next: this.locale?.next_page,\n          prev: this.locale?.prev_page,\n          prev_5: this.locale?.prev_5,\n          next_5: this.locale?.next_5\n        } as NzSafeAny\n      )[this.type!];\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  EventEmitter,\n  Input,\n  OnChanges,\n  OnDestroy,\n  OnInit,\n  Optional,\n  Output,\n  Renderer2,\n  SimpleChanges,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { toNumber } from 'ng-zorro-antd/core/util';\nimport { NzPaginationI18nInterface } from 'ng-zorro-antd/i18n';\n\nimport { PaginationItemRenderContext } from './pagination.types';\n\n@Component({\n  selector: 'nz-pagination-simple',\n  preserveWhitespaces: false,\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  template: `\n    <ng-template #containerTemplate>\n      <li\n        nz-pagination-item\n        [attr.title]=\"locale.prev_page\"\n        [disabled]=\"isFirstIndex\"\n        [direction]=\"dir\"\n        (click)=\"prePage()\"\n        type=\"prev\"\n        [itemRender]=\"itemRender\"\n      ></li>\n      <li [attr.title]=\"pageIndex + '/' + lastIndex\" class=\"ant-pagination-simple-pager\">\n        <input [disabled]=\"disabled\" [value]=\"pageIndex\" (keydown.enter)=\"jumpToPageViaInput($event)\" size=\"3\" />\n        <span class=\"ant-pagination-slash\">/</span>\n        {{ lastIndex }}\n      </li>\n      <li\n        nz-pagination-item\n        [attr.title]=\"locale?.next_page\"\n        [disabled]=\"isLastIndex\"\n        [direction]=\"dir\"\n        (click)=\"nextPage()\"\n        type=\"next\"\n        [itemRender]=\"itemRender\"\n      ></li>\n    </ng-template>\n  `\n})\nexport class NzPaginationSimpleComponent implements OnChanges, OnDestroy, OnInit {\n  @ViewChild('containerTemplate', { static: true }) template!: TemplateRef<NzSafeAny>;\n  @Input() itemRender: TemplateRef<PaginationItemRenderContext> | null = null;\n  @Input() disabled = false;\n  @Input() locale!: NzPaginationI18nInterface;\n  @Input() total = 0;\n  @Input() pageIndex = 1;\n  @Input() pageSize = 10;\n  @Output() readonly pageIndexChange = new EventEmitter<number>();\n  lastIndex = 0;\n  isFirstIndex = false;\n  isLastIndex = false;\n\n  dir: Direction = 'ltr';\n  private destroy$ = new Subject<void>();\n\n  constructor(\n    private cdr: ChangeDetectorRef,\n    private renderer: Renderer2,\n    private elementRef: ElementRef,\n    @Optional() private directionality: Directionality\n  ) {\n    renderer.removeChild(renderer.parentNode(elementRef.nativeElement), elementRef.nativeElement);\n  }\n  ngOnInit(): void {\n    this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n      this.dir = direction;\n      this.updateRtlStyle();\n      this.cdr.detectChanges();\n    });\n    this.dir = this.directionality.value;\n    this.updateRtlStyle();\n  }\n\n  private updateRtlStyle(): void {\n    if (this.dir === 'rtl') {\n      this.renderer.addClass(this.elementRef.nativeElement, 'ant-pagination-rtl');\n    } else {\n      this.renderer.removeClass(this.elementRef.nativeElement, 'ant-pagination-rtl');\n    }\n  }\n\n  ngOnDestroy(): void {\n    this.destroy$.next();\n    this.destroy$.complete();\n  }\n\n  jumpToPageViaInput($event: Event): void {\n    const target = $event.target as HTMLInputElement;\n    const index = toNumber(target.value, this.pageIndex);\n    this.onPageIndexChange(index);\n    target.value = `${this.pageIndex}`;\n  }\n\n  prePage(): void {\n    this.onPageIndexChange(this.pageIndex - 1);\n  }\n  nextPage(): void {\n    this.onPageIndexChange(this.pageIndex + 1);\n  }\n\n  onPageIndexChange(index: number): void {\n    this.pageIndexChange.next(index);\n  }\n\n  updateBindingValue(): void {\n    this.lastIndex = Math.ceil(this.total / this.pageSize);\n    this.isFirstIndex = this.pageIndex === 1;\n    this.isLastIndex = this.pageIndex === this.lastIndex;\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { pageIndex, total, pageSize } = changes;\n    if (pageIndex || total || pageSize) {\n      this.updateBindingValue();\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n  ChangeDetectionStrategy,\n  Component,\n  EventEmitter,\n  Input,\n  OnChanges,\n  Output,\n  SimpleChanges,\n  ViewEncapsulation\n} from '@angular/core';\n\nimport { toNumber } from 'ng-zorro-antd/core/util';\nimport { NzPaginationI18nInterface } from 'ng-zorro-antd/i18n';\n\n@Component({\n  selector: 'div[nz-pagination-options]',\n  preserveWhitespaces: false,\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  template: `\n    <nz-select\n      class=\"ant-pagination-options-size-changer\"\n      *ngIf=\"showSizeChanger\"\n      [nzDisabled]=\"disabled\"\n      [nzSize]=\"nzSize\"\n      [ngModel]=\"pageSize\"\n      (ngModelChange)=\"onPageSizeChange($event)\"\n    >\n      <nz-option\n        *ngFor=\"let option of listOfPageSizeOption; trackBy: trackByOption\"\n        [nzLabel]=\"option.label\"\n        [nzValue]=\"option.value\"\n      ></nz-option>\n    </nz-select>\n    <div class=\"ant-pagination-options-quick-jumper\" *ngIf=\"showQuickJumper\">\n      {{ locale.jump_to }}\n      <input [disabled]=\"disabled\" (keydown.enter)=\"jumpToPageViaInput($event)\" />\n      {{ locale.page }}\n    </div>\n  `,\n  host: { class: 'ant-pagination-options' }\n})\nexport class NzPaginationOptionsComponent implements OnChanges {\n  @Input() nzSize: 'default' | 'small' = 'default';\n  @Input() disabled = false;\n  @Input() showSizeChanger = false;\n  @Input() showQuickJumper = false;\n  @Input() locale!: NzPaginationI18nInterface;\n  @Input() total = 0;\n  @Input() pageIndex = 1;\n  @Input() pageSize = 10;\n  @Input() pageSizeOptions: number[] = [];\n  @Output() readonly pageIndexChange = new EventEmitter<number>();\n  @Output() readonly pageSizeChange = new EventEmitter<number>();\n  listOfPageSizeOption: Array<{ value: number; label: string }> = [];\n\n  constructor() {}\n\n  onPageSizeChange(size: number): void {\n    if (this.pageSize !== size) {\n      this.pageSizeChange.next(size);\n    }\n  }\n\n  jumpToPageViaInput($event: Event): void {\n    const target = $event.target as HTMLInputElement;\n    const index = Math.floor(toNumber(target.value, this.pageIndex));\n    this.pageIndexChange.next(index);\n    target.value = '';\n  }\n\n  trackByOption(_: number, option: { value: number; label: string }): number {\n    return option.value;\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { pageSize, pageSizeOptions, locale } = changes;\n    if (pageSize || pageSizeOptions || locale) {\n      this.listOfPageSizeOption = [...new Set([...this.pageSizeOptions, this.pageSize])].map(item => ({\n        value: item,\n        label: `${item} ${this.locale.items_per_page}`\n      }));\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  EventEmitter,\n  Input,\n  OnChanges,\n  OnDestroy,\n  OnInit,\n  Optional,\n  Output,\n  Renderer2,\n  SimpleChanges,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzPaginationI18nInterface } from 'ng-zorro-antd/i18n';\n\nimport { NzPaginationItemComponent } from './pagination-item.component';\nimport { PaginationItemRenderContext } from './pagination.types';\n\n@Component({\n  selector: 'nz-pagination-default',\n  preserveWhitespaces: false,\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  template: `\n    <ng-template #containerTemplate>\n      <li class=\"ant-pagination-total-text\" *ngIf=\"showTotal\">\n        <ng-template\n          [ngTemplateOutlet]=\"showTotal\"\n          [ngTemplateOutletContext]=\"{ $implicit: total, range: ranges }\"\n        ></ng-template>\n      </li>\n      <li\n        *ngFor=\"let page of listOfPageItem; trackBy: trackByPageItem\"\n        nz-pagination-item\n        [locale]=\"locale\"\n        [type]=\"page.type\"\n        [index]=\"page.index\"\n        [disabled]=\"!!page.disabled\"\n        [itemRender]=\"itemRender\"\n        [active]=\"pageIndex === page.index\"\n        (gotoIndex)=\"jumpPage($event)\"\n        (diffIndex)=\"jumpDiff($event)\"\n        [direction]=\"dir\"\n      ></li>\n      <div\n        nz-pagination-options\n        *ngIf=\"showQuickJumper || showSizeChanger\"\n        [total]=\"total\"\n        [locale]=\"locale\"\n        [disabled]=\"disabled\"\n        [nzSize]=\"nzSize\"\n        [showSizeChanger]=\"showSizeChanger\"\n        [showQuickJumper]=\"showQuickJumper\"\n        [pageIndex]=\"pageIndex\"\n        [pageSize]=\"pageSize\"\n        [pageSizeOptions]=\"pageSizeOptions\"\n        (pageIndexChange)=\"onPageIndexChange($event)\"\n        (pageSizeChange)=\"onPageSizeChange($event)\"\n      ></div>\n    </ng-template>\n  `\n})\nexport class NzPaginationDefaultComponent implements OnChanges, OnDestroy, OnInit {\n  @ViewChild('containerTemplate', { static: true }) template!: TemplateRef<NzSafeAny>;\n  @Input() nzSize: 'default' | 'small' = 'default';\n  @Input() itemRender: TemplateRef<PaginationItemRenderContext> | null = null;\n  @Input() showTotal: TemplateRef<{ $implicit: number; range: [number, number] }> | null = null;\n  @Input() disabled = false;\n  @Input() locale!: NzPaginationI18nInterface;\n  @Input() showSizeChanger = false;\n  @Input() showQuickJumper = false;\n  @Input() total = 0;\n  @Input() pageIndex = 1;\n  @Input() pageSize = 10;\n  @Input() pageSizeOptions: number[] = [10, 20, 30, 40];\n  @Output() readonly pageIndexChange = new EventEmitter<number>();\n  @Output() readonly pageSizeChange = new EventEmitter<number>();\n  ranges = [0, 0];\n  listOfPageItem: Array<Partial<NzPaginationItemComponent>> = [];\n\n  dir: Direction = 'ltr';\n  private destroy$ = new Subject<void>();\n\n  constructor(\n    private cdr: ChangeDetectorRef,\n    private renderer: Renderer2,\n    private elementRef: ElementRef,\n    @Optional() private directionality: Directionality\n  ) {\n    renderer.removeChild(renderer.parentNode(elementRef.nativeElement), elementRef.nativeElement);\n  }\n  ngOnInit(): void {\n    this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n      this.dir = direction;\n      this.updateRtlStyle();\n      this.cdr.detectChanges();\n    });\n    this.dir = this.directionality.value;\n    this.updateRtlStyle();\n  }\n\n  private updateRtlStyle(): void {\n    if (this.dir === 'rtl') {\n      this.renderer.addClass(this.elementRef.nativeElement, 'ant-pagination-rtl');\n    } else {\n      this.renderer.removeClass(this.elementRef.nativeElement, 'ant-pagination-rtl');\n    }\n  }\n\n  ngOnDestroy(): void {\n    this.destroy$.next();\n    this.destroy$.complete();\n  }\n\n  jumpPage(index: number): void {\n    this.onPageIndexChange(index);\n  }\n\n  jumpDiff(diff: number): void {\n    this.jumpPage(this.pageIndex + diff);\n  }\n\n  trackByPageItem(_: number, value: Partial<NzPaginationItemComponent>): string {\n    return `${value.type}-${value.index}`;\n  }\n\n  onPageIndexChange(index: number): void {\n    this.pageIndexChange.next(index);\n  }\n\n  onPageSizeChange(size: number): void {\n    this.pageSizeChange.next(size);\n  }\n\n  getLastIndex(total: number, pageSize: number): number {\n    return Math.ceil(total / pageSize);\n  }\n\n  buildIndexes(): void {\n    const lastIndex = this.getLastIndex(this.total, this.pageSize);\n    this.listOfPageItem = this.getListOfPageItem(this.pageIndex, lastIndex);\n  }\n\n  getListOfPageItem(pageIndex: number, lastIndex: number): Array<Partial<NzPaginationItemComponent>> {\n    // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n    const concatWithPrevNext = (listOfPage: Array<Partial<NzPaginationItemComponent>>) => {\n      const prevItem = {\n        type: 'prev',\n        disabled: pageIndex === 1\n      };\n      const nextItem = {\n        type: 'next',\n        disabled: pageIndex === lastIndex\n      };\n      return [prevItem, ...listOfPage, nextItem];\n    };\n    const generatePage = (start: number, end: number): Array<Partial<NzPaginationItemComponent>> => {\n      const list = [];\n      for (let i = start; i <= end; i++) {\n        list.push({\n          index: i,\n          type: 'page'\n        });\n      }\n      return list;\n    };\n    if (lastIndex <= 9) {\n      return concatWithPrevNext(generatePage(1, lastIndex));\n    } else {\n      // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n      const generateRangeItem = (selected: number, last: number) => {\n        let listOfRange = [];\n        const prevFiveItem = {\n          type: 'prev_5'\n        };\n        const nextFiveItem = {\n          type: 'next_5'\n        };\n        const firstPageItem = generatePage(1, 1);\n        const lastPageItem = generatePage(lastIndex, lastIndex);\n        if (selected < 5) {\n          // If the 4th is selected, one more page will be displayed.\n          const maxLeft = selected === 4 ? 6 : 5;\n          listOfRange = [...generatePage(2, maxLeft), nextFiveItem];\n        } else if (selected < last - 3) {\n          listOfRange = [prevFiveItem, ...generatePage(selected - 2, selected + 2), nextFiveItem];\n        } else {\n          // If the 4th from last is selected, one more page will be displayed.\n          const minRight = selected === last - 3 ? last - 5 : last - 4;\n          listOfRange = [prevFiveItem, ...generatePage(minRight, last - 1)];\n        }\n        return [...firstPageItem, ...listOfRange, ...lastPageItem];\n      };\n      return concatWithPrevNext(generateRangeItem(pageIndex, lastIndex));\n    }\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { pageIndex, pageSize, total } = changes;\n    if (pageIndex || pageSize || total) {\n      this.ranges = [(this.pageIndex - 1) * this.pageSize + 1, Math.min(this.pageIndex * this.pageSize, this.total)];\n      this.buildIndexes();\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  EventEmitter,\n  Input,\n  OnChanges,\n  OnDestroy,\n  OnInit,\n  Optional,\n  Output,\n  SimpleChanges,\n  TemplateRef,\n  ViewEncapsulation\n} from '@angular/core';\nimport { ReplaySubject, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzConfigKey, NzConfigService, WithConfig } from 'ng-zorro-antd/core/config';\nimport { gridResponsiveMap, NzBreakpointEnum, NzBreakpointService } from 'ng-zorro-antd/core/services';\nimport { BooleanInput, NumberInput } from 'ng-zorro-antd/core/types';\nimport { InputBoolean, InputNumber } from 'ng-zorro-antd/core/util';\nimport { NzI18nService, NzPaginationI18nInterface } from 'ng-zorro-antd/i18n';\n\nimport { PaginationItemRenderContext } from './pagination.types';\n\nconst NZ_CONFIG_MODULE_NAME: NzConfigKey = 'pagination';\n\n@Component({\n  selector: 'nz-pagination',\n  exportAs: 'nzPagination',\n  preserveWhitespaces: false,\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  template: `\n    <ng-container *ngIf=\"showPagination\">\n      <ng-container *ngIf=\"nzSimple; else defaultPagination.template\">\n        <ng-template [ngTemplateOutlet]=\"simplePagination.template\"></ng-template>\n      </ng-container>\n    </ng-container>\n    <nz-pagination-simple\n      #simplePagination\n      [disabled]=\"nzDisabled\"\n      [itemRender]=\"nzItemRender\"\n      [locale]=\"locale\"\n      [pageSize]=\"nzPageSize\"\n      [total]=\"nzTotal\"\n      [pageIndex]=\"nzPageIndex\"\n      (pageIndexChange)=\"onPageIndexChange($event)\"\n    ></nz-pagination-simple>\n    <nz-pagination-default\n      #defaultPagination\n      [nzSize]=\"size\"\n      [itemRender]=\"nzItemRender\"\n      [showTotal]=\"nzShowTotal\"\n      [disabled]=\"nzDisabled\"\n      [locale]=\"locale\"\n      [showSizeChanger]=\"nzShowSizeChanger\"\n      [showQuickJumper]=\"nzShowQuickJumper\"\n      [total]=\"nzTotal\"\n      [pageIndex]=\"nzPageIndex\"\n      [pageSize]=\"nzPageSize\"\n      [pageSizeOptions]=\"nzPageSizeOptions\"\n      (pageIndexChange)=\"onPageIndexChange($event)\"\n      (pageSizeChange)=\"onPageSizeChange($event)\"\n    ></nz-pagination-default>\n  `,\n  host: {\n    class: 'ant-pagination',\n    '[class.ant-pagination-simple]': 'nzSimple',\n    '[class.ant-pagination-disabled]': 'nzDisabled',\n    '[class.mini]': `!nzSimple && size === 'small'`,\n    '[class.ant-pagination-rtl]': `dir === 'rtl'`\n  }\n})\nexport class NzPaginationComponent implements OnInit, OnDestroy, OnChanges {\n  readonly _nzModuleName: NzConfigKey = NZ_CONFIG_MODULE_NAME;\n\n  static ngAcceptInputType_nzDisabled: BooleanInput;\n  static ngAcceptInputType_nzShowSizeChanger: BooleanInput;\n  static ngAcceptInputType_nzHideOnSinglePage: BooleanInput;\n  static ngAcceptInputType_nzShowQuickJumper: BooleanInput;\n  static ngAcceptInputType_nzSimple: BooleanInput;\n  static ngAcceptInputType_nzResponsive: BooleanInput;\n  static ngAcceptInputType_nzTotal: NumberInput;\n  static ngAcceptInputType_nzPageIndex: NumberInput;\n  static ngAcceptInputType_nzPageSize: NumberInput;\n\n  @Output() readonly nzPageSizeChange: EventEmitter<number> = new EventEmitter();\n  @Output() readonly nzPageIndexChange: EventEmitter<number> = new EventEmitter();\n  @Input() nzShowTotal: TemplateRef<{ $implicit: number; range: [number, number] }> | null = null;\n  @Input() nzItemRender: TemplateRef<PaginationItemRenderContext> | null = null;\n  @Input() @WithConfig() nzSize: 'default' | 'small' = 'default';\n  @Input() @WithConfig() nzPageSizeOptions: number[] = [10, 20, 30, 40];\n  @Input() @WithConfig() @InputBoolean() nzShowSizeChanger = false;\n  @Input() @WithConfig() @InputBoolean() nzShowQuickJumper = false;\n  @Input() @WithConfig() @InputBoolean() nzSimple = false;\n  @Input() @InputBoolean() nzDisabled = false;\n  @Input() @InputBoolean() nzResponsive = false;\n  @Input() @InputBoolean() nzHideOnSinglePage = false;\n  @Input() @InputNumber() nzTotal = 0;\n  @Input() @InputNumber() nzPageIndex = 1;\n  @Input() @InputNumber() nzPageSize = 10;\n\n  showPagination = true;\n  locale!: NzPaginationI18nInterface;\n  size: 'default' | 'small' = 'default';\n  dir: Direction = 'ltr';\n\n  private destroy$ = new Subject<void>();\n  private total$ = new ReplaySubject<number>(1);\n\n  validatePageIndex(value: number, lastIndex: number): number {\n    if (value > lastIndex) {\n      return lastIndex;\n    } else if (value < 1) {\n      return 1;\n    } else {\n      return value;\n    }\n  }\n\n  onPageIndexChange(index: number): void {\n    const lastIndex = this.getLastIndex(this.nzTotal, this.nzPageSize);\n    const validIndex = this.validatePageIndex(index, lastIndex);\n    if (validIndex !== this.nzPageIndex && !this.nzDisabled) {\n      this.nzPageIndex = validIndex;\n      this.nzPageIndexChange.emit(this.nzPageIndex);\n    }\n  }\n\n  onPageSizeChange(size: number): void {\n    this.nzPageSize = size;\n    this.nzPageSizeChange.emit(size);\n    const lastIndex = this.getLastIndex(this.nzTotal, this.nzPageSize);\n    if (this.nzPageIndex > lastIndex) {\n      this.onPageIndexChange(lastIndex);\n    }\n  }\n\n  onTotalChange(total: number): void {\n    const lastIndex = this.getLastIndex(total, this.nzPageSize);\n    if (this.nzPageIndex > lastIndex) {\n      Promise.resolve().then(() => {\n        this.onPageIndexChange(lastIndex);\n        this.cdr.markForCheck();\n      });\n    }\n  }\n\n  getLastIndex(total: number, pageSize: number): number {\n    return Math.ceil(total / pageSize);\n  }\n\n  constructor(\n    private i18n: NzI18nService,\n    private cdr: ChangeDetectorRef,\n    private breakpointService: NzBreakpointService,\n    protected nzConfigService: NzConfigService,\n    @Optional() private directionality: Directionality\n  ) {}\n\n  ngOnInit(): void {\n    this.i18n.localeChange.pipe(takeUntil(this.destroy$)).subscribe(() => {\n      this.locale = this.i18n.getLocaleData('Pagination');\n      this.cdr.markForCheck();\n    });\n\n    this.total$.pipe(takeUntil(this.destroy$)).subscribe(total => {\n      this.onTotalChange(total);\n    });\n\n    this.breakpointService\n      .subscribe(gridResponsiveMap)\n      .pipe(takeUntil(this.destroy$))\n      .subscribe(bp => {\n        if (this.nzResponsive) {\n          this.size = bp === NzBreakpointEnum.xs ? 'small' : 'default';\n          this.cdr.markForCheck();\n        }\n      });\n\n    this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n      this.dir = direction;\n      this.cdr.detectChanges();\n    });\n\n    this.dir = this.directionality.value;\n  }\n\n  ngOnDestroy(): void {\n    this.destroy$.next();\n    this.destroy$.complete();\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { nzHideOnSinglePage, nzTotal, nzPageSize, nzSize } = changes;\n    if (nzTotal) {\n      this.total$.next(this.nzTotal);\n    }\n    if (nzHideOnSinglePage || nzTotal || nzPageSize) {\n      this.showPagination =\n        (this.nzHideOnSinglePage && this.nzTotal > this.nzPageSize) || (this.nzTotal > 0 && !this.nzHideOnSinglePage);\n    }\n\n    if (nzSize) {\n      this.size = nzSize.currentValue;\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzI18nModule } from 'ng-zorro-antd/i18n';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\n\nimport { NzPaginationDefaultComponent } from './pagination-default.component';\nimport { NzPaginationItemComponent } from './pagination-item.component';\nimport { NzPaginationOptionsComponent } from './pagination-options.component';\nimport { NzPaginationSimpleComponent } from './pagination-simple.component';\nimport { NzPaginationComponent } from './pagination.component';\n\n@NgModule({\n  declarations: [\n    NzPaginationComponent,\n    NzPaginationSimpleComponent,\n    NzPaginationOptionsComponent,\n    NzPaginationItemComponent,\n    NzPaginationDefaultComponent\n  ],\n  exports: [NzPaginationComponent],\n  imports: [BidiModule, CommonModule, FormsModule, NzSelectModule, NzI18nModule, NzIconModule]\n})\nexport class NzPaginationModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './pagination.component';\nexport * from './pagination.module';\nexport * from './pagination.types';\nexport * from './pagination-simple.component';\nexport * from './pagination-options.component';\nexport * from './pagination-item.component';\nexport * from './pagination-default.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}