import { Injectable } from '@angular/core';
import { MatPaginatorIntl } from '@angular/material/paginator';

@Injectable()
export class MatPaginatorIntlSAM extends MatPaginatorIntl {
    override itemsPerPageLabel: string = 'Datos por página';
    override nextPageLabel: string = 'Siguiente página';
    override previousPageLabel: string = 'Anterior página';
    override firstPageLabel: string = 'Primera página';
    override lastPageLabel: string = 'Última página';
    override getRangeLabel = (page: number, pageSize: number, length: number) => {
        if (length === 0 || pageSize === 0) {
            return '0 de ' + length;
        }

        length = Math.max(length, 0);
        const startIndex = page * pageSize;
        const endIndex = startIndex < length ?
            Math.min(startIndex + pageSize, length) :
            startIndex + pageSize;
        return startIndex + 1 + ' - ' + endIndex + ' de ' + length;
    };
}