<!--<div class="items-container">
    <div id="navigation" class="mb-8">
        <div class="prev-page prevent-select indigo_primary_background mat-elevation-z8" (click)="goBack(1)" matRipple>
            <mat-icon style="color: white;">arrow_back</mat-icon>
            <div class="page-name ml-4">Administrador del sistema</div>
        </div>
    </div>
    <mat-card class="override-elevation-z8" style="width: 100%; height: 100%;">
        <mat-card-title style="text-align: center;">Administración de catálogos</mat-card-title>
        <mat-card-content>
            <div class="loader-container prevent-select" *ngIf="isLoading">
                <mat-spinner></mat-spinner>
                <h2 class="loader-label">Cargando...</h2>
            </div>
            <div class="error-container prevent-select" *ngIf="!isLoading && hasError">
                <mat-icon style="color: #e53935; transform: scale(5); margin: 48px;">error</mat-icon>
                <h1 style="color: #e53935;">¡Error!</h1>
                <p style="font-style: italic; font-size: 16px; overflow-wrap: anywhere; text-align: center;">{{ errorStr }}</p>
            </div>
            <div class="table-container prevent-select" [hidden]="!(!isLoading && !hasError)" style="overflow: hidden;">
                <div class="actions-container pt-8">
                    <mat-form-field style="width:calc(85% - 8px);box-sizing:border-box" appearance="outline" class="mr-8">
                        <mat-label>Filtro</mat-label>
                        <input matInput (keyup)="applyFilter($event)" placeholder="Ingresa algo para iniciar la búsqueda..." #input>
                        <mat-icon matSuffix>search</mat-icon>
                    </mat-form-field>
                    <button mat-flat-button color="primary" style="width: 15%;" (click)="openUploader()">Registrar catálogo</button>
                </div>
                <div class="table-content-container">
                    <table mat-table [dataSource]="dataSource!" matSort>
                        <ng-container matColumnDef="id">
                            <th mat-header-cell *matHeaderCellDef mat-sort-header>ID</th>
                            <td mat-cell *matCellDef="let row"> {{row.IDCATALOGO}} </td>
                        </ng-container>
                    
                        <ng-container matColumnDef="tipo">
                            <th mat-header-cell *matHeaderCellDef mat-sort-header>Tipo catálogo</th>
                            <td mat-cell *matCellDef="let row"> {{row.TIPOCATALOGO}} </td>
                        </ng-container>
                    
                        <ng-container matColumnDef="version">
                            <th mat-header-cell *matHeaderCellDef mat-sort-header>Versión</th>
                            <td mat-cell *matCellDef="let row"> {{row.VERSION}} </td>
                        </ng-container>
                    
                        <ng-container matColumnDef="usuareg">
                            <th mat-header-cell *matHeaderCellDef mat-sort-header>Usuario registró</th>
                            <td mat-cell *matCellDef="let row"> {{row.USUARIOREGISTRO}} </td>
                        </ng-container>
                    
                        <ng-container matColumnDef="fechareg">
                            <th mat-header-cell *matHeaderCellDef mat-sort-header>Fecha de registro</th>
                            <td mat-cell *matCellDef="let row"> {{orderDate(row.FECHAREGISTRO)}} </td>
                        </ng-container>
                    
                        <ng-container matColumnDef="acciones">
                            <th mat-header-cell *matHeaderCellDef>Acciones</th>
                            <td mat-cell *matCellDef="let row">
                                <button mat-mini-fab #tooltip="matTooltip" matTooltip="Descargar archivo" class="mr-4 override-no-shadow green_primary_background"
                                (click)="downloadCatalogue(row.ADJUNTOS)">
                                    <mat-icon>file_download</mat-icon>
                                </button>
                                <a id="download" target="_blank"></a>
                                <button mat-mini-fab #tooltip="matTooltip" matTooltip="Ver contenido" class="mr-4 override-no-shadow blue_dark_background" 
                                (click)="openViewer(row.ADJUNTOS)">
                                    <mat-icon>visibility</mat-icon>
                                </button>
                                <button mat-mini-fab #tooltip="matTooltip" matTooltip="Historial de versiones" class="mr-4 override-no-shadow indigo_primary_background" 
                                (click)="openHistory(row.TIPOCATALOGO)">
                                    <mat-icon>history</mat-icon>
                                </button>
                            </td>
                        </ng-container>
                    
                        <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
                        <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
                    
                        <tr class="mat-row" *matNoDataRow>
                            <td class="mat-cell" colspan="4" *ngIf="input.value != ''">Nungún resultado coincide con su búsqueda "{{input.value}}"</td>
                            <td class="mat-cell" colspan="4" *ngIf="input.value == ''">Aún no existe ningún registro.</td>
                        </tr>
                    </table>
                </div>
                <mat-paginator [pageSizeOptions]="[10, 25, 50, 100]" aria-label="Selecciona la página de usuarios"></mat-paginator>
            </div>
        </mat-card-content>
    </mat-card>
</div>-->
<main class="main-container animated fadeIn prevent-select" (window:resize)="onResize()">

    <header id="navigation" class="btn-navigate mb-8">
      <div class="prev-page prevent-select indigo_primary_background mat-elevation-z8" [routerLink]="['/sam/ADSI']" matRipple>
        <mat-icon style="color: white;">arrow_back</mat-icon>
        <div class="page-name ml-4">Administrador del sistema</div>
      </div>
    </header>

    <mat-card class="override-card override-elevation-z8">
        <section class="override-section">
            <nav class="override-nav">
                <mat-card-title class="mat-card-title centre">Administración de catálogos</mat-card-title>
                <div class="override-actions">
                    <mat-form-field appearance="outline" class="w-300p mr-8">
                      <mat-label>Buscador</mat-label>
                      <input matInput [(ngModel)]="txtBuscador" (keyup)="applyFilter($event,'INP')"
                        placeholder="Ingrese la palabra a buscar" />
                      <mat-icon *ngIf="txtBuscador.length === 0" matSuffix>search</mat-icon>
                      <mat-icon *ngIf="txtBuscador.length > 0" class="clickable" matTooltip="Eliminar filtro"
                        (click)="applyFilter('', 'EST')" matSuffix>close</mat-icon>
                    </mat-form-field>
                    <div class="override-buttons">
                        <button mat-raised-button color="primary" class="override-no-shadow mr-10 animated fadeIn" (click)="openUploader()" 
                        *ngIf="!btnSmall">
                            <mat-icon>add</mat-icon> Registrar catálogo
                        </button>
                        <button mat-mini-fab color="primary" class="override-no-shadow mr-10 animated fadeIn" matTooltip="Registrar catálogo" 
                        (click)="openUploader()" *ngIf="btnSmall">
                            <mat-icon>add</mat-icon>
                        </button>
                        <button mat-mini-fab color="info" class="mr-10 override-no-shadow" matTooltip="Actualizar Datos" (click)="getData()">
                          <mat-icon>refresh</mat-icon>
                        </button>
                    </div>
                </div>
            </nav>

            <div>
              <div class="is-loading animated fadeIn fast" *ngIf="isLoading">
                <mat-spinner align="center"></mat-spinner>
                <h3>Cargando datos ...</h3>
              </div>
            </div>

            <div class="override-table">
                <table mat-table [dataSource]="dataSource!" matSort class="animated fadeIn" [style.display]="isLoading ? 'none' : 'revert'">
                    <ng-container matColumnDef="id">
                        <th mat-header-cell *matHeaderCellDef mat-sort-header>ID</th>
                        <td mat-cell *matCellDef="let row"> {{row.IDCATALOGO}} </td>
                    </ng-container>
                
                    <ng-container matColumnDef="tipo">
                        <th mat-header-cell *matHeaderCellDef mat-sort-header>Tipo catálogo</th>
                        <td mat-cell *matCellDef="let row"> {{row.TIPOCATALOGO}} </td>
                    </ng-container>
                
                    <ng-container matColumnDef="version">
                        <th mat-header-cell *matHeaderCellDef mat-sort-header>Versión</th>
                        <td mat-cell *matCellDef="let row"> {{row.VERSION}} </td>
                    </ng-container>
                
                    <ng-container matColumnDef="usuareg">
                        <th mat-header-cell *matHeaderCellDef mat-sort-header>Usuario registró</th>
                        <td mat-cell *matCellDef="let row"> {{row.USUARIOREGISTRO}} </td>
                    </ng-container>
                
                    <ng-container matColumnDef="fechareg">
                        <th mat-header-cell *matHeaderCellDef mat-sort-header>Fecha de registro</th>
                        <td mat-cell *matCellDef="let row"> {{orderDate(row.FECHAREGISTRO)}} </td>
                    </ng-container>
                
                    <ng-container matColumnDef="acciones">
                        <th mat-header-cell *matHeaderCellDef>Acciones</th>
                        <td mat-cell *matCellDef="let row">
                            <button mat-mini-fab #tooltip="matTooltip" matTooltip="Descargar archivo" class="mr-4 override-no-shadow green_primary_background"
                            (click)="downloadCatalogue(row.ADJUNTOS)">
                                <mat-icon>file_download</mat-icon>
                            </button>
                            <a id="download" target="_blank"></a>
                            <button mat-mini-fab #tooltip="matTooltip" matTooltip="Ver contenido" class="mr-4 override-no-shadow blue_dark_background" 
                            (click)="openViewer(row.ADJUNTOS)">
                                <mat-icon>visibility</mat-icon>
                            </button>
                            <button mat-mini-fab #tooltip="matTooltip" matTooltip="Historial de versiones" class="mr-4 override-no-shadow indigo_primary_background" 
                            (click)="openHistory(row.TIPOCATALOGO)">
                                <mat-icon>history</mat-icon>
                            </button>
                        </td>
                    </ng-container>
                
                    <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
                    <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>

                    <tr class="mat-row" *matNoDataRow>
                        <td class="mat-cell p-80 centre" colspan="100%">
                            <object data="assets/img/empty_data.svg" width="300"></object>
                            <h2>Sin datos</h2>
                        </td>
                    </tr>
                </table>
            </div>
        </section>
        <mat-paginator [pageSizeOptions]="[10, 50, 100]" class="override-paginator"></mat-paginator>
    </mat-card>

</main>