{"version":3,"file":"devsabir-ngtable.mjs","sources":["../../../projects/ng-table/src/lib/ng-table.service.ts","../../../projects/ng-table/src/lib/table-directives/custom-table-column.directive.ts","../../../projects/ng-table/src/lib/table-directives/custom-table-head.directive.ts","../../../projects/ng-table/src/lib/table-pagination/table-pagination.component.ts","../../../projects/ng-table/src/lib/table-pagination/table-pagination.component.html","../../../projects/ng-table/src/lib/table/table.component.ts","../../../projects/ng-table/src/lib/table/table.component.html","../../../projects/ng-table/src/lib/ng-table.module.ts","../../../projects/ng-table/src/public-api.ts","../../../projects/ng-table/src/devsabir-ngtable.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class NgTableService {\n\n  constructor() { }\n}\n","import { Directive, TemplateRef, Input } from '@angular/core';\n\n@Directive({\n  selector: '[appTableCustomColumn]'\n})\nexport class TableCustomColumnDirective {\n  @Input('appTableCustomColumn') columnName: string = '';\n  constructor(public readonly template: TemplateRef<any>) { }\n}\n","import { Directive, TemplateRef, Input } from '@angular/core';\n\n@Directive({\n  selector: '[appTableCustomHead]'\n})\nexport class TableCustomHeadDirective {\n  @Input('appTableCustomHead') headName: string = '';\n  constructor(public readonly template: TemplateRef<any>) { }\n}\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core';\n\n@Component({\n  selector: 'app-table-pagination',\n  templateUrl: './table-pagination.component.html',\n  styleUrls: ['../tailwind.scss']\n})\nexport class TablePaginationComponent implements OnInit, OnChanges {\n  @Input('dataArray') dataArray = []\n  @Input('itemsPerPage') itemsPerPage = 10\n  @Input('currentPage') currentPage = 1\n  @Output('onPageChange') onPageChange = new EventEmitter()\n  totalPages = 0\n\n  ngOnInit() {\n    this.onPageChangeHandler(this.currentPage)\n  }\n\n  ngOnChanges() {\n    this.onPageChangeHandler(1)\n  }\n\n  getTotalPages() {\n    this.totalPages = Math.ceil(this.dataArray.length / this.itemsPerPage)\n    return this.totalPages\n  }\n\n  onPageChangeHandler(pageNum: number) {\n    if (pageNum < 1 || pageNum > this.getTotalPages()) return\n    this.currentPage = pageNum\n    this.onPageChange.emit(this.dataArray.slice((this.currentPage - 1) * this.itemsPerPage, Math.min(this.currentPage * this.itemsPerPage, this.dataArray.length)))\n  }\n\n  getTotalPageRange() {\n    return Array(this.getTotalPages()).fill(0).map((x, i) => i + 1)\n  }\n\n  getPaginationRange() {\n    const range = this.getTotalPageRange()\n    if (range.length <= 5) return range\n    if (this.currentPage <= 5) return range.slice(0, 5)\n    return range.slice(this.currentPage - 1 - 2, this.currentPage - 1 + 2 + 1)\n  }\n}\n","<div class=\"mt-3 flex flex-col items-center justify-between gap-3\">\n    <span class=\"text-sm text-gray-700 \">\n        Showing <span\n            class=\"font-semibold text-gray-900 bg-slate-300 px-2 py-1 rounded\">{{((currentPage-1)*itemsPerPage)+1}}</span>\n        to <span\n            class=\"font-semibold text-gray-900 bg-slate-300 px-2 py-1 rounded\">{{currentPage*itemsPerPage>dataArray.length?dataArray.length:currentPage*itemsPerPage}}</span>\n        of <span class=\"font-semibold text-gray-900 bg-slate-300 px-2 py-1 rounded\">{{dataArray.length}}</span>\n        Entries\n    </span>\n    <nav aria-label=\"Table pagination\">\n        <ul class=\"inline-flex items-center -space-x-px\">\n            <li>\n                <button (click)=\"onPageChangeHandler(currentPage-1)\" [disabled]=\"currentPage == 1\"\n                    class=\"px-3 py-2 ml-0 leading-tight bg-white border border-gray-300 rounded-l-lg hover:bg-gray-100 hover:text-gray-700\n                    disabled:text-gray-500 disabled:hover:text-gray-500 disabled:hover:cursor-not-allowed hover:cursor-pointer\">Previous</button>\n            </li>\n            <li *ngFor=\"let i of getPaginationRange()\">\n                <button (click)=\"onPageChangeHandler(i)\"\n                    class=\"px-3 py-2 leading-tight text-blue-600 bg-white border border-gray-300 hover:bg-gray-100 hover:text-gray-700 \"\n                    [ngClass]=\"{'text-blue-600 bg-blue-100 hover:bg-blue-100 hover:text-blue-700': i===currentPage}\">{{i}}</button>\n            </li>\n            <li>\n                <button (click)=\"onPageChangeHandler(currentPage+1)\" [disabled]=\"currentPage == totalPages\"\n                    class=\"px-3 py-2 leading-tight bg-white border border-gray-300 rounded-r-lg hover:bg-gray-100 hover:text-gray-700 disabled:hover:text-gray-500 disabled:hover:cursor-not-allowed disabled:text-gray-500  hover:cursor-pointer\">Next</button>\n            </li>\n        </ul>\n    </nav>\n</div>","import { AfterContentInit, Component, ContentChildren, Input, QueryList, SimpleChanges, TemplateRef, OnChanges } from '@angular/core';\nimport { TableCustomColumnDirective } from '../table-directives/custom-table-column.directive';\nimport { TableDataHeader } from '../types/table.types';\nimport { TableCustomHeadDirective } from '../table-directives/custom-table-head.directive';\n\n@Component({\n  selector: 'ng-table',\n  templateUrl: './table.component.html',\n  styleUrls: ['../tailwind.scss']\n})\nexport class TableComponent implements AfterContentInit, OnChanges {\n  @Input('dataHeadersDef') table_headers: TableDataHeader[] = [];\n  @Input('dataSource') data: any = [];\n  @Input('autoWidth') autoWidth = true;\n  @Input('pagination') pagination = false;\n  @Input('pageSize') pageSize = 5;\n  @Input('headColor') headColor: 'dark' | 'grey' = 'grey';\n  @Input('columnLines') columnLines = false;\n  dataToDisplay: any = [];\n  customCellTemplates: { [key: string]: typeof TemplateRef } = {};\n  customHeadTemplates: { [key: string]: typeof TemplateRef } = {};\n  constructor() { }\n  ngOnChanges(changes: SimpleChanges): void {\n    if (changes['data']) {\n      this.data = changes['data'].currentValue\n      if (!this.pagination) {\n        this.dataToDisplay = this.data\n      }\n    }\n  }\n\n  // Load Custom TemplateRefs\n  @ContentChildren(TableCustomColumnDirective) cellTemplates: QueryList<TableCustomColumnDirective> = new QueryList<TableCustomColumnDirective>();\n  @ContentChildren(TableCustomHeadDirective) headerTemplates: QueryList<TableCustomHeadDirective> = new QueryList<TableCustomHeadDirective>();\n\n  ngAfterContentInit() {\n    const templatesMap: any = {}\n    const customColumnTemplateDirectives = this.cellTemplates.toArray();\n    customColumnTemplateDirectives.forEach((templateDirective) => {\n      templatesMap[templateDirective.columnName] = templateDirective.template\n    })\n    this.customCellTemplates = templatesMap\n\n    const headerTemplatesMap: any = {}\n    const customHeaderTemplateDirectives = this.headerTemplates.toArray();\n    customHeaderTemplateDirectives.forEach((templateDirective) => {\n      headerTemplatesMap[templateDirective.headName] = templateDirective.template\n    })\n    this.customHeadTemplates = headerTemplatesMap\n  }\n\n  handlePageChange(data: any) {\n    this.dataToDisplay = data\n  }\n\n  getPropFromObj(obj: any, prop: any) {\n    return obj[prop]\n  }\n}\n","<div class=\"relative overflow-x-auto shadow-md scrollbar-thin scrollbar-track-gray-400 scrollbar-thumb-dark-green\"\n    [ngClass]=\"{'sm:rounded-lg' : headColor==='dark'}\">\n    <table class=\"w-full text-sm text-left text-black border border-collapse table-auto\"\n        [ngClass]=\"{'border-black': headColor === 'grey', 'border-gray-200' : headColor === 'dark'}\">\n        <thead class=\"text-white bg-dark-grey\"\n            [ngClass]=\"{'text-white bg-dark-grey': headColor === 'dark', 'text-black bg-gray-100': headColor==='grey'}\">\n            <tr>\n                <th *ngFor=\"let data_head of table_headers; let last = last\" scope=\"col\" tableHeader\n                    [ngClass]=\"{'border border-black': headColor === 'grey', 'border-gray-400' : headColor === 'dark'}\"\n                    class=\"px-2 py-1 border-l border-r overflow-hidden\" [width]=\"data_head.colspan || 'auto'\">\n                    <ng-container\n                        *ngIf=\"customHeadTemplates[data_head.columnId]; then custom; else notCustom\"></ng-container>\n                    <ng-template #custom>\n                        <ng-container\n                            *ngTemplateOutlet=\"getPropFromObj(customHeadTemplates, data_head.columnId); context: { $implicit: data_head.columnAlias || data_head.columnId}\">\n                        </ng-container>\n                    </ng-template>\n                    <!-- Data fetched from the data source -->\n                    <ng-template #notCustom>\n                        {{ data_head.columnAlias || data_head.columnId }}\n                    </ng-template>\n                </th>\n            </tr>\n        </thead>\n        <tbody>\n            <tr *ngFor=\"let data_row of dataToDisplay\">\n                <td *ngFor=\"let data_head of table_headers\"\n                    class=\"px-2 py-1 border-l border-r  hover:bg-gray-200 transition-all duration-300 ease-linear overflow-hidden min-w-0 border\"\n                    [ngClass]=\"{'border-black': headColor === 'grey', 'border-gray-400' : headColor === 'dark'}\">\n                    <ng-container\n                        *ngIf=\"customCellTemplates[data_head.columnId]; then custom; else notCustom\"></ng-container>\n                    <!-- Custom Template Injection -->\n                    <ng-template #custom>\n                        <ng-container\n                            *ngTemplateOutlet=\"getPropFromObj(customCellTemplates, data_head.columnId); context: { $implicit: getPropFromObj(data_row, data_head.columnId) ? getPropFromObj(data_row, data_head.columnId) : data_row }\">\n                        </ng-container>\n                    </ng-template>\n                    <!-- Data fetched from the data source -->\n                    <ng-template #notCustom>\n                        {{ getPropFromObj(data_row, data_head.columnId) }}\n                    </ng-template>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</div>\n<app-table-pagination *ngIf=\"pagination\" class=\"\" [dataArray]=\"data\" [itemsPerPage]=\"pageSize\"\n    (onPageChange)=\"handlePageChange($event)\"></app-table-pagination>","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from '@angular/common'\nimport { TableComponent } from \"./table/table.component\";\nimport { TableCustomColumnDirective } from \"./table-directives/custom-table-column.directive\";\nimport { TableCustomHeadDirective } from \"./table-directives/custom-table-head.directive\";\nimport { TablePaginationComponent } from \"./table-pagination/table-pagination.component\";\n\n@NgModule({\n  declarations: [\n    TableComponent,\n    TableCustomColumnDirective,\n    TableCustomHeadDirective,\n    TablePaginationComponent,\n  ],\n  imports: [\n    CommonModule\n  ],\n  exports: [\n    TableComponent,\n    TableCustomColumnDirective,\n    TableCustomHeadDirective\n  ]\n})\nexport class NgTableModule { }","/*\n * Public API Surface of ng-table\n */\n\nexport * from './lib/ng-table.service';\nexport * from './lib/types/table.types';\nexport * from './lib/ng-table.module';\nexport * from './lib/table/table.component'\nexport * from './lib/table-directives/custom-table-column.directive'\nexport * from './lib/table-directives/custom-table-head.directive'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.TablePaginationComponent"],"mappings":"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"}