{"version":3,"file":"primeng-paginator.mjs","sources":["../../src/paginator/style/paginatorstyle.ts","../../src/paginator/paginator.ts","../../src/paginator/primeng-paginator.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-paginator {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    flex-wrap: wrap;\n    background: ${dt('paginator.background')};\n    color: ${dt('paginator.color')};\n    padding: ${dt('paginator.padding')};\n    border-radius: ${dt('paginator.border.radius')};\n    gap: ${dt('paginator.gap')};\n}\n\n.p-paginator-content {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    flex-wrap: wrap;\n    gap: ${dt('paginator.gap')};\n}\n\n.p-paginator-content-start {\n    margin-inline-end: auto;\n}\n\n.p-paginator-content-end {\n    margin-inline-start: auto;\n}\n\n.p-paginator-page,\n.p-paginator-next,\n.p-paginator-last,\n.p-paginator-first,\n.p-paginator-prev {\n    cursor: pointer;\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    line-height: 1;\n    user-select: none;\n    overflow: hidden;\n    position: relative;\n    background: ${dt('paginator.nav.button.background')};\n    border: 0 none;\n    color: ${dt('paginator.nav.button.color')};\n    min-width: ${dt('paginator.nav.button.width')};\n    height: ${dt('paginator.nav.button.height')};\n    transition: background ${dt('paginator.transition.duration')}, color ${dt('paginator.transition.duration')}, outline-color ${dt('paginator.transition.duration')}, box-shadow ${dt('paginator.transition.duration')};\n    border-radius: ${dt('paginator.nav.button.border.radius')};\n    padding: 0;\n    margin: 0;\n}\n\n.p-paginator-page:focus-visible,\n.p-paginator-next:focus-visible,\n.p-paginator-last:focus-visible,\n.p-paginator-first:focus-visible,\n.p-paginator-prev:focus-visible {\n    box-shadow: ${dt('paginator.nav.button.focus.ring.shadow')};\n    outline: ${dt('paginator.nav.button.focus.ring.width')} ${dt('paginator.nav.button.focus.ring.style')} ${dt('paginator.nav.button.focus.ring.color')};\n    outline-offset: ${dt('paginator.nav.button.focus.ring.offset')};\n}\n\n.p-paginator-page:not(.p-disabled):not(.p-paginator-page-selected):hover,\n.p-paginator-first:not(.p-disabled):hover,\n.p-paginator-prev:not(.p-disabled):hover,\n.p-paginator-next:not(.p-disabled):hover,\n.p-paginator-last:not(.p-disabled):hover {\n    background: ${dt('paginator.nav.button.hover.background')};\n    color: ${dt('paginator.nav.button.hover.color')};\n}\n\n.p-paginator-first:dir(rtl),\n.p-paginator-prev:dir(rtl),\n.p-paginator-next:dir(rtl),\n.p-paginator-last:dir(rtl) {\n    transform: rotate(180deg);\n}\n\n.p-paginator-page.p-paginator-page-selected {\n    background: ${dt('paginator.nav.button.selected.background')};\n    color: ${dt('paginator.nav.button.selected.color')};\n}\n\n.p-paginator-current {\n    color: ${dt('paginator.current.page.report.color')};\n}\n\n.p-paginator-pages {\n    display: flex;\n    align-items: center;\n    gap: ${dt('paginator.gap')};\n}\n\n.p-paginator-jtp-input .p-inputtext {\n    max-width: ${dt('paginator.jump.to.page.input.max.width')};\n}\n`;\n\nconst classes = {\n    paginator: ({ instance, key }) => [\n        'p-paginator p-component',\n        {\n            'p-paginator-default': !instance.hasBreakpoints(),\n            [`p-paginator-${key}`]: instance.hasBreakpoints()\n        }\n    ],\n    content: 'p-paginator-content',\n    contentStart: 'p-paginator-content-start',\n    contentEnd: 'p-paginator-content-end',\n    first: ({ instance }) => [\n        'p-paginator-first',\n        {\n            'p-disabled': instance.$attrs.disabled\n        }\n    ],\n    firstIcon: 'p-paginator-first-icon',\n    prev: ({ instance }) => [\n        'p-paginator-prev',\n        {\n            'p-disabled': instance.$attrs.disabled\n        }\n    ],\n    prevIcon: 'p-paginator-prev-icon',\n    next: ({ instance }) => [\n        'p-paginator-next',\n        {\n            'p-disabled': instance.$attrs.disabled\n        }\n    ],\n    nextIcon: 'p-paginator-next-icon',\n    last: ({ instance }) => [\n        'p-paginator-last',\n        {\n            'p-disabled': instance.$attrs.disabled\n        }\n    ],\n    lastIcon: 'p-paginator-last-icon',\n    pages: 'p-paginator-pages',\n    page: ({ props, pageLink }) => [\n        'p-paginator-page',\n        {\n            'p-paginator-page-selected': pageLink - 1 === props.page\n        }\n    ],\n    current: 'p-paginator-current',\n    pcRowPerPageDropdown: 'p-paginator-rpp-dropdown',\n    pcJumpToPageDropdown: 'p-paginator-jtp-dropdown',\n    pcJumpToPageInput: 'p-paginator-jtp-input'\n};\n\n@Injectable()\nexport class PaginatorStyle extends BaseStyle {\n    name = 'paginator';\n\n    theme = theme;\n\n    classes = classes;\n}\n\n/**\n *\n * Paginator is a generic component to display content in paged format.\n *\n * [Live Demo](https://www.primeng.org/paginator)\n *\n * @module paginatorstyle\n *\n */\n\nexport enum PaginatorClasses {\n    /**\n     * Class name of the paginator element\n     */\n    paginator = 'p-paginator',\n    /**\n     * Class name of the content start element\n     */\n    contentStart = 'p-paginator-content-start',\n    /**\n     * Class name of the content end element\n     */\n    contentEnd = 'p-paginator-content-end',\n    /**\n     * Class name of the first element\n     */\n    first = 'p-paginator-first',\n    /**\n     * Class name of the first icon element\n     */\n    firstIcon = 'p-paginator-first-icon',\n    /**\n     * Class name of the prev element\n     */\n    prev = 'p-paginator-prev',\n    /**\n     * Class name of the prev icon element\n     */\n    prevIcon = 'p-paginator-prev-icon',\n    /**\n     * Class name of the next element\n     */\n    next = 'p-paginator-next',\n    /**\n     * Class name of the next icon element\n     */\n    nextIcon = 'p-paginator-next-icon',\n    /**\n     * Class name of the last element\n     */\n    last = 'p-paginator-last',\n    /**\n     * Class name of the last icon element\n     */\n    lastIcon = 'p-paginator-last-icon',\n    /**\n     * Class name of the pages element\n     */\n    pages = 'p-paginator-pages',\n    /**\n     * Class name of the page element\n     */\n    page = 'p-paginator-page',\n    /**\n     * Class name of the current element\n     */\n    current = 'p-paginator-current',\n    /**\n     * Class name of the row per page dropdown element\n     */\n    pcRowPerPageDropdown = 'p-paginator-rpp-dropdown',\n    /**\n     * Class name of the jump to page dropdown element\n     */\n    pcJumpToPageDropdown = 'p-paginator-jtp-dropdown',\n    /**\n     * Class name of the jump to page input element\n     */\n    pcJumpToPageInput = 'p-paginator-jtp-input'\n}\n\nexport interface PaginatorStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport {\n    AfterContentInit,\n    booleanAttribute,\n    ChangeDetectionStrategy,\n    Component,\n    ContentChild,\n    ContentChildren,\n    ElementRef,\n    EventEmitter,\n    inject,\n    Input,\n    NgModule,\n    numberAttribute,\n    OnChanges,\n    OnInit,\n    Output,\n    QueryList,\n    SimpleChanges,\n    TemplateRef,\n    ViewEncapsulation\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { Aria, PrimeTemplate, SelectItem, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { DropdownChangeEvent } from 'primeng/dropdown';\nimport { AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleLeftIcon, AngleRightIcon } from 'primeng/icons';\nimport { InputNumber } from 'primeng/inputnumber';\nimport { Ripple } from 'primeng/ripple';\nimport { Select } from 'primeng/select';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { PaginatorState } from './paginator.interface';\nimport { PaginatorStyle } from './style/paginatorstyle';\n\n/**\n * Paginator is a generic component to display content in paged format.\n * @group Components\n */\n@Component({\n    selector: 'p-paginator',\n    standalone: true,\n    imports: [CommonModule, Select, InputNumber, FormsModule, Ripple, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleLeftIcon, AngleRightIcon, SharedModule],\n    template: `\n        <div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"'p-paginator p-component'\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\n            <div class=\"p-paginator-content-start\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\n                <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\n            </div>\n            <span class=\"p-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\n            <button\n                *ngIf=\"showFirstLastIcon\"\n                type=\"button\"\n                [disabled]=\"isFirstPage() || empty()\"\n                (click)=\"changePageToFirst($event)\"\n                pRipple\n                class=\"p-paginator-first\"\n                [ngClass]=\"{ 'p-disabled': isFirstPage() || empty() }\"\n                [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\n            >\n                <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate && !_firstPageLinkIconTemplate\" [styleClass]=\"'p-paginator-first-icon'\" />\n                <span class=\"p-paginator-first-icon\" *ngIf=\"firstPageLinkIconTemplate || _firstPageLinkIconTemplate\">\n                    <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate || _firstPageLinkIconTemplate\"></ng-template>\n                </span>\n            </button>\n            <button type=\"button\" [disabled]=\"isFirstPage() || empty()\" (click)=\"changePageToPrev($event)\" pRipple class=\"p-paginator-prev\" [ngClass]=\"{ 'p-disabled': isFirstPage() || empty() }\" [attr.aria-label]=\"getAriaLabel('prevPageLabel')\">\n                <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate && !_previousPageLinkIconTemplate\" [styleClass]=\"'p-paginator-prev-icon'\" />\n                <span class=\"p-paginator-prev-icon\" *ngIf=\"previousPageLinkIconTemplate || _previousPageLinkIconTemplate\">\n                    <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate || _previousPageLinkIconTemplate\"></ng-template>\n                </span>\n            </button>\n            <span class=\"p-paginator-pages\" *ngIf=\"showPageLinks\">\n                <button\n                    type=\"button\"\n                    *ngFor=\"let pageLink of pageLinks\"\n                    class=\"p-paginator-page\"\n                    [ngClass]=\"{ 'p-paginator-page-selected': pageLink - 1 == getPage() }\"\n                    [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\n                    [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\n                    (click)=\"onPageLinkClick($event, pageLink - 1)\"\n                    pRipple\n                >\n                    {{ getLocalization(pageLink) }}\n                </button>\n            </span>\n            <p-select\n                [options]=\"pageItems\"\n                [ngModel]=\"getPage()\"\n                *ngIf=\"showJumpToPageDropdown\"\n                [disabled]=\"empty()\"\n                [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\n                styleClass=\"p-paginator-jtp-dropdown\"\n                (onChange)=\"onPageDropdownChange($event)\"\n                [appendTo]=\"dropdownAppendTo\"\n                [scrollHeight]=\"dropdownScrollHeight\"\n            >\n                <ng-template pTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\n                <ng-container *ngIf=\"jumpToPageItemTemplate\">\n                    <ng-template let-item pTemplate=\"item\">\n                        <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"></ng-container>\n                    </ng-template>\n                </ng-container>\n                <ng-template pTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate || _dropdownIconTemplate\">\n                    <ng-container *ngTemplateOutlet=\"dropdownIconTemplate || _dropdownIconTemplate\"></ng-container>\n                </ng-template>\n            </p-select>\n            <button type=\"button\" [disabled]=\"isLastPage() || empty()\" (click)=\"changePageToNext($event)\" pRipple class=\"p-paginator-next\" [ngClass]=\"{ 'p-disabled': isLastPage() || empty() }\" [attr.aria-label]=\"getAriaLabel('nextPageLabel')\">\n                <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate && !_nextPageLinkIconTemplate\" [styleClass]=\"'p-paginator-next-icon'\" />\n                <span class=\"p-paginator-next-icon\" *ngIf=\"nextPageLinkIconTemplate || _nextPageLinkIconTemplate\">\n                    <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate || _nextPageLinkIconTemplate\"></ng-template>\n                </span>\n            </button>\n            <button\n                *ngIf=\"showFirstLastIcon\"\n                type=\"button\"\n                [disabled]=\"isLastPage() || empty()\"\n                (click)=\"changePageToLast($event)\"\n                pRipple\n                class=\"p-paginator-last\"\n                [ngClass]=\"{ 'p-disabled': isLastPage() || empty() }\"\n                [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\n            >\n                <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate && !_lastPageLinkIconTemplate\" [styleClass]=\"'p-paginator-last-icon'\" />\n                <span class=\"p-paginator-last-icon\" *ngIf=\"lastPageLinkIconTemplate || _lastPageLinkIconTemplate\">\n                    <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate || _lastPageLinkIconTemplate\"></ng-template>\n                </span>\n            </button>\n            <p-inputnumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"p-paginator-jtp-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></p-inputnumber>\n            <p-select\n                [options]=\"rowsPerPageItems\"\n                [(ngModel)]=\"rows\"\n                *ngIf=\"rowsPerPageOptions\"\n                styleClass=\"p-paginator-rpp-dropdown\"\n                [disabled]=\"empty()\"\n                (onChange)=\"onRppChange($event)\"\n                [appendTo]=\"dropdownAppendTo\"\n                [scrollHeight]=\"dropdownScrollHeight\"\n                [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\n            >\n                <ng-container *ngIf=\"dropdownItemTemplate\">\n                    <ng-template let-item pTemplate=\"item\">\n                        <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"></ng-container>\n                    </ng-template>\n                </ng-container>\n                <ng-template pTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate || _dropdownIconTemplate\">\n                    <ng-container *ngTemplateOutlet=\"dropdownIconTemplate || _dropdownIconTemplate\"></ng-container>\n                </ng-template>\n            </p-select>\n            <div class=\"p-paginator-content-end\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\n                <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\n            </div>\n        </div>\n    `,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None,\n    providers: [PaginatorStyle]\n})\nexport class Paginator extends BaseComponent implements OnInit, AfterContentInit, OnChanges {\n    /**\n     * Number of page links to display.\n     * @group Props\n     */\n    @Input({ transform: numberAttribute }) pageLinkSize: number = 5;\n    /**\n     * Inline style of the component.\n     * @group Props\n     */\n    @Input() style: { [klass: string]: any } | null | undefined;\n    /**\n     * Style class of the component.\n     * @group Props\n     */\n    @Input() styleClass: string | undefined;\n    /**\n     * Whether to show it even there is only one page.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) alwaysShow: boolean = true;\n    /**\n     * Target element to attach the dropdown overlay, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n     * @group Props\n     */\n    @Input() dropdownAppendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n    /**\n     * Template instance to inject into the left side of the paginator.\n     * @param {PaginatorState} context - Paginator state.\n     * @group Props\n     */\n    @Input() templateLeft: TemplateRef<PaginatorState> | undefined;\n    /**\n     * Template instance to inject into the right side of the paginator.\n     * @param {PaginatorState} context - Paginator state.\n     * @group Props\n     */\n    @Input() templateRight: TemplateRef<PaginatorState> | undefined;\n    /**\n     * Target element to attach the dropdown overlay, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n     * @group Props\n     */\n    @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n    /**\n     * Dropdown height of the viewport in pixels, a scrollbar is defined if height of list exceeds this value.\n     * @group Props\n     */\n    @Input() dropdownScrollHeight: string = '200px';\n    /**\n     * Template of the current page report element. Available placeholders are {currentPage},{totalPages},{rows},{first},{last} and {totalRecords}\n     * @group Props\n     */\n    @Input() currentPageReportTemplate: string = '{currentPage} of {totalPages}';\n    /**\n     * Whether to display current page report.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) showCurrentPageReport: boolean | undefined;\n    /**\n     * When enabled, icons are displayed on paginator to go first and last page.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) showFirstLastIcon: boolean = true;\n    /**\n     * Number of total records.\n     * @group Props\n     */\n    @Input({ transform: numberAttribute }) totalRecords: number = 0;\n    /**\n     * Data count to display per page.\n     * @group Props\n     */\n    @Input({ transform: numberAttribute }) rows: number = 0;\n    /**\n     * Array of integer/object values to display inside rows per page dropdown. A object that have 'showAll' key can be added to it to show all data. Exp; [10,20,30,{showAll:'All'}]\n     * @group Props\n     */\n    @Input() rowsPerPageOptions: any[] | undefined;\n    /**\n     * Whether to display a dropdown to navigate to any page.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) showJumpToPageDropdown: boolean | undefined;\n    /**\n     * Whether to display a input to navigate to any page.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) showJumpToPageInput: boolean | undefined;\n    /**\n     * Template instance to inject into the jump to page dropdown item inside in the paginator.\n     * @param {Object} context - item instance.\n     * @group Props\n     */\n    @Input() jumpToPageItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n    /**\n     * Whether to show page links.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) showPageLinks: boolean = true;\n    /**\n     * Locale to be used in formatting.\n     * @group Props\n     */\n    @Input() locale: string | undefined;\n    /**\n     * Template instance to inject into the rows per page dropdown item inside in the paginator.\n     * @param {Object} context - item instance.\n     * @group Props\n     */\n    @Input() dropdownItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n    /**\n     * Zero-relative number of the first row to be displayed.\n     * @group Props\n     */\n    @Input() get first(): number {\n        return this._first;\n    }\n\n    set first(val: number) {\n        this._first = val;\n    }\n\n    /**\n     * Callback to invoke when page changes, the event object contains information about the new state.\n     * @param {PaginatorState} event - Paginator state.\n     * @group Emits\n     */\n    @Output() onPageChange: EventEmitter<PaginatorState> = new EventEmitter<PaginatorState>();\n\n    /**\n     * Template for the dropdown icon.\n     * @group Templates\n     */\n    @ContentChild('dropdownicon', { descendants: false }) dropdownIconTemplate: Nullable<TemplateRef<any>>;\n\n    /**\n     * Template for the first page link icon.\n     * @group Templates\n     */\n    @ContentChild('firstpagelinkicon', { descendants: false }) firstPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n\n    /**\n     * Template for the previous page link icon.\n     * @group Templates\n     */\n    @ContentChild('previouspagelinkicon', { descendants: false }) previousPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n\n    /**\n     * Template for the last page link icon.\n     * @group Templates\n     */\n    @ContentChild('lastpagelinkicon', { descendants: false }) lastPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n\n    /**\n     * Template for the next page link icon.\n     * @group Templates\n     */\n    @ContentChild('nextpagelinkicon', { descendants: false }) nextPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n\n    @ContentChildren(PrimeTemplate) templates: Nullable<QueryList<any>>;\n\n    _dropdownIconTemplate: TemplateRef<any> | undefined;\n\n    _firstPageLinkIconTemplate: TemplateRef<any> | undefined;\n\n    _previousPageLinkIconTemplate: TemplateRef<any> | undefined;\n\n    _lastPageLinkIconTemplate: TemplateRef<any> | undefined;\n\n    _nextPageLinkIconTemplate: TemplateRef<any> | undefined;\n\n    pageLinks: number[] | undefined;\n\n    pageItems: SelectItem[] | undefined;\n\n    rowsPerPageItems: SelectItem[] | undefined;\n\n    paginatorState: any;\n\n    _first: number = 0;\n\n    _page: number = 0;\n\n    _componentStyle = inject(PaginatorStyle);\n\n    constructor() {\n        super();\n    }\n\n    ngOnInit() {\n        super.ngOnInit();\n        this.updatePaginatorState();\n    }\n\n    ngAfterContentInit(): void {\n        (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n            switch (item.getType()) {\n                case 'dropdownicon':\n                    this._dropdownIconTemplate = item.template;\n                    break;\n\n                case 'firstpagelinkicon':\n                    this._firstPageLinkIconTemplate = item.template;\n                    break;\n\n                case 'previouspagelinkicon':\n                    this._previousPageLinkIconTemplate = item.template;\n                    break;\n\n                case 'lastpagelinkicon':\n                    this._lastPageLinkIconTemplate = item.template;\n                    break;\n\n                case 'nextpagelinkicon':\n                    this._nextPageLinkIconTemplate = item.template;\n                    break;\n            }\n        });\n    }\n\n    getAriaLabel(labelType: keyof Aria): string | undefined {\n        return this.config.translation.aria ? this.config.translation.aria[labelType] : undefined;\n    }\n\n    getPageAriaLabel(value: number): string | undefined {\n        return this.config.translation.aria ? this.config.translation.aria.pageLabel.replace(/{page}/g, `${value}`) : undefined;\n    }\n\n    getLocalization(digit: number): string {\n        const numerals = [...new Intl.NumberFormat(this.locale, { useGrouping: false }).format(9876543210)].reverse();\n        const index = new Map(numerals.map((d, i) => [i, d]));\n        if (digit > 9) {\n            const numbers = String(digit).split('');\n            return numbers.map((number) => index.get(Number(number))).join('');\n        } else {\n            return index.get(digit);\n        }\n    }\n\n    ngOnChanges(simpleChange: SimpleChanges): void {\n        super.ngOnChanges(simpleChange);\n\n        if (simpleChange.totalRecords) {\n            this.updatePageLinks();\n            this.updatePaginatorState();\n            this.updateFirst();\n            this.updateRowsPerPageOptions();\n        }\n\n        if (simpleChange.first) {\n            this._first = simpleChange.first.currentValue;\n            this.updatePageLinks();\n            this.updatePaginatorState();\n        }\n\n        if (simpleChange.rows) {\n            this.updatePageLinks();\n            this.updatePaginatorState();\n        }\n\n        if (simpleChange.rowsPerPageOptions) {\n            this.updateRowsPerPageOptions();\n        }\n\n        if (simpleChange.pageLinkSize) {\n            this.updatePageLinks();\n        }\n    }\n\n    updateRowsPerPageOptions(): void {\n        if (this.rowsPerPageOptions) {\n            this.rowsPerPageItems = [];\n            let showAllItem: SelectItem | null = null;\n\n            for (let opt of this.rowsPerPageOptions) {\n                if (typeof opt == 'object' && opt['showAll']) {\n                    showAllItem = { label: opt['showAll'], value: this.totalRecords };\n                } else {\n                    this.rowsPerPageItems.push({ label: String(this.getLocalization(opt)), value: opt });\n                }\n            }\n\n            if (showAllItem) {\n                this.rowsPerPageItems.push(showAllItem);\n            }\n        }\n    }\n\n    isFirstPage(): boolean {\n        return this.getPage() === 0;\n    }\n\n    isLastPage(): boolean {\n        return this.getPage() === this.getPageCount() - 1;\n    }\n\n    getPageCount(): number {\n        return Math.ceil(this.totalRecords / this.rows);\n    }\n\n    calculatePageLinkBoundaries(): [number, number] {\n        let numberOfPages = this.getPageCount(),\n            visiblePages = Math.min(this.pageLinkSize, numberOfPages);\n\n        //calculate range, keep current in middle if necessary\n        let start = Math.max(0, Math.ceil(this.getPage() - visiblePages / 2)),\n            end = Math.min(numberOfPages - 1, start + visiblePages - 1);\n\n        //check when approaching to last page\n        var delta = this.pageLinkSize - (end - start + 1);\n        start = Math.max(0, start - delta);\n\n        return [start, end];\n    }\n\n    updatePageLinks(): void {\n        this.pageLinks = [];\n        let boundaries = this.calculatePageLinkBoundaries(),\n            start = boundaries[0],\n            end = boundaries[1];\n\n        for (let i = start; i <= end; i++) {\n            this.pageLinks.push(i + 1);\n        }\n\n        if (this.showJumpToPageDropdown) {\n            this.pageItems = [];\n            for (let i = 0; i < this.getPageCount(); i++) {\n                this.pageItems.push({ label: String(i + 1), value: i });\n            }\n        }\n    }\n\n    changePage(p: number): void {\n        var pc = this.getPageCount();\n\n        if (p >= 0 && p < pc) {\n            this._first = this.rows * p;\n            var state = {\n                page: p,\n                first: this.first,\n                rows: this.rows,\n                pageCount: pc\n            };\n            this.updatePageLinks();\n\n            this.onPageChange.emit(state);\n            this.updatePaginatorState();\n        }\n    }\n\n    updateFirst(): void {\n        const page = this.getPage();\n        if (page > 0 && this.totalRecords && this.first >= this.totalRecords) {\n            Promise.resolve(null).then(() => this.changePage(page - 1));\n        }\n    }\n\n    getPage(): number {\n        return Math.floor(this.first / this.rows);\n    }\n\n    changePageToFirst(event: Event): void {\n        if (!this.isFirstPage()) {\n            this.changePage(0);\n        }\n\n        event.preventDefault();\n    }\n\n    changePageToPrev(event: Event): void {\n        this.changePage(this.getPage() - 1);\n        event.preventDefault();\n    }\n\n    changePageToNext(event: Event): void {\n        this.changePage(this.getPage() + 1);\n        event.preventDefault();\n    }\n\n    changePageToLast(event: Event): void {\n        if (!this.isLastPage()) {\n            this.changePage(this.getPageCount() - 1);\n        }\n\n        event.preventDefault();\n    }\n\n    onPageLinkClick(event: Event, page: number): void {\n        this.changePage(page);\n        event.preventDefault();\n    }\n\n    onRppChange(event: Event): void {\n        this.changePage(this.getPage());\n    }\n\n    onPageDropdownChange(event: DropdownChangeEvent): void {\n        this.changePage(event.value);\n    }\n\n    updatePaginatorState(): void {\n        this.paginatorState = {\n            page: this.getPage(),\n            pageCount: this.getPageCount(),\n            rows: this.rows,\n            first: this.first,\n            totalRecords: this.totalRecords\n        };\n    }\n\n    empty(): boolean {\n        return this.getPageCount() === 0;\n    }\n\n    currentPage(): number {\n        return this.getPageCount() > 0 ? this.getPage() + 1 : 0;\n    }\n\n    get currentPageReport(): string {\n        return this.currentPageReportTemplate\n            .replace('{currentPage}', String(this.currentPage()))\n            .replace('{totalPages}', String(this.getPageCount()))\n            .replace('{first}', String(this.totalRecords > 0 ? this._first + 1 : 0))\n            .replace('{last}', String(Math.min(this._first + this.rows, this.totalRecords)))\n            .replace('{rows}', String(this.rows))\n            .replace('{totalRecords}', String(this.totalRecords));\n    }\n}\n\n@NgModule({\n    imports: [Paginator, SharedModule],\n    exports: [Paginator, SharedModule]\n})\nexport class PaginatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}