{"version":3,"file":"tapsellorg-angular-material-library-src-lib-table.mjs","sources":["../../projects/pegah-library/src/lib/table/table-date-range-picker.directive.ts","../../projects/pegah-library/src/lib/table/table-header.directive.ts","../../projects/pegah-library/src/lib/table/table-box/table-box.component.ts","../../projects/pegah-library/src/lib/table/table-box/table-box.component.html","../../projects/pegah-library/src/lib/table/table.module.ts","../../projects/pegah-library/src/lib/table/table-datasource.ts","../../projects/pegah-library/src/lib/table/tapsellorg-angular-material-library-src-lib-table.ts"],"sourcesContent":["import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[pgh-table-date-range-picker]',\n  standalone: false,\n})\nexport class PghTableDateRangePickerDirective {\n  constructor() {}\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[pgh-table-header]',\n  standalone: false,\n})\nexport class PghTableHeaderDirective {\n  constructor() {}\n}\n","import { AfterViewInit, Component, ContentChild, input, ViewEncapsulation } from '@angular/core';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { PghFilterChipsComponent } from '@tapsellorg/angular-material-library/src/lib/filter-chips';\nimport { PghTableDateRangePickerDirective } from '../table-date-range-picker.directive';\nimport { PghTableHeaderDirective } from '../table-header.directive';\nimport { PghDateRangePickerComponent } from '@tapsellorg/angular-material-library/src/lib/date-range-picker';\nimport { MatSort } from '@angular/material/sort';\nimport { PghTableDatasource } from '../public-api';\nimport { PghRefreshButtonComponent } from '@tapsellorg/angular-material-library/src/lib/refresh-button';\n\n@Component({\n  selector: 'pgh-table-box',\n  templateUrl: './table-box.component.html',\n  styleUrls: ['./table-box.component.scss'],\n  encapsulation: ViewEncapsulation.None,\n  standalone: false,\n})\nexport class PghTableBoxComponent implements AfterViewInit {\n  tableTitle = input<string | undefined>(undefined);\n  datasource = input<PghTableDatasource<any> | undefined>(undefined);\n  maxHeightVh = input<number | undefined>(undefined);\n\n  @ContentChild(PghFilterChipsComponent) filterChipsComponent?: PghFilterChipsComponent;\n  @ContentChild(MatPaginator) matPaginator?: MatPaginator;\n  @ContentChild(MatSort) matSort?: MatSort;\n  @ContentChild(PghDateRangePickerComponent) dateRangePickerComponent?: PghDateRangePickerComponent;\n  @ContentChild(PghTableDateRangePickerDirective)\n  dateRangePickerDirective?: PghTableDateRangePickerDirective;\n  @ContentChild(PghTableHeaderDirective) headerDirective?: PghTableHeaderDirective;\n  @ContentChild(PghRefreshButtonComponent) refreshButtonComponent?: PghRefreshButtonComponent;\n\n  constructor() {}\n\n  ngAfterViewInit(): void {\n    this.initializeDatasource();\n    this.getTableData();\n  }\n\n  initializeDatasource() {\n    if (this.matPaginator) {\n      this.datasource()?.setPaginator(this.matPaginator);\n    }\n    if (this.matSort) {\n      this.datasource()?.setSorter(this.matSort);\n    }\n    if (this.filterChipsComponent) {\n      this.datasource()?.setFilter(this.filterChipsComponent);\n    }\n    if (this.dateRangePickerComponent) {\n      this.datasource()?.setDateFilter(this.dateRangePickerComponent);\n    }\n    if (this.refreshButtonComponent) {\n      this.datasource()?.setRefresher(this.refreshButtonComponent);\n    }\n  }\n\n  getTableData() {\n    this.datasource()?.triggerLoadData();\n  }\n}\n","<div class=\"pgh-table-box\">\n  <div class=\"pgh-table-box-header\" [hidden]=\"!tableTitle() && !headerDirective\">\n    @if (tableTitle()) {\n    <h4>{{ tableTitle() }}</h4>\n    }\n    <ng-content select=\"[pgh-table-header]\"></ng-content>\n  </div>\n  <div class=\"pgh-table-box-header\" [hidden]=\"!dateRangePickerDirective && !refreshButtonComponent\">\n    <ng-content select=\"[pgh-table-date-range-picker]\"></ng-content>\n    <ng-content select=\"[pgh-table-refresh-button]\"></ng-content>\n  </div>\n\n  <div\n    class=\"pgh-filters-wrapper\"\n    [hidden]=\"!filtersWrapperRef.innerHTML.trim() && !actionButtonsWrapperRef.innerHTML.trim()\"\n  >\n    <div #filtersWrapperRef>\n      <ng-content select=\"pgh-filter-chips\"></ng-content>\n      <ng-content select=\"[pgh-table-filters]\"></ng-content>\n    </div>\n    <div #actionButtonsWrapperRef class=\"pgh-action-buttons\">\n      <ng-content select=\"[pgh-action-buttons]\"></ng-content>\n    </div>\n  </div>\n\n  <div class=\"overflow-x-auto\" [style.max-height.vh]=\"maxHeightVh()\">\n    <ng-content></ng-content>\n  </div>\n  @if (matPaginator) {\n  <div class=\"pgh-table-footer-container\">\n    <ng-content select=\"mat-paginator\"></ng-content>\n  </div>\n  }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { PghTableBoxComponent } from './table-box/table-box.component';\nimport { PghTableDateRangePickerDirective } from './table-date-range-picker.directive';\nimport { PghTableHeaderDirective } from './table-header.directive';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\n@NgModule({\n  declarations: [PghTableBoxComponent, PghTableDateRangePickerDirective, PghTableHeaderDirective],\n  imports: [CommonModule, MatButtonModule, MatMenuModule, MatIconModule, MatTooltipModule],\n  exports: [PghTableBoxComponent, PghTableDateRangePickerDirective, PghTableHeaderDirective],\n})\nexport class PghTableModule {}\n","import { DataSource } from '@angular/cdk/table';\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\nimport { CollectionViewer } from '@angular/cdk/collections';\nimport { pghLoader, PghLoader } from '@tapsellorg/angular-material-library/src/lib/loader';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { takeUntil } from 'rxjs/operators';\nimport { MatSort } from '@angular/material/sort';\nimport { pghDebounceTime } from '@tapsellorg/angular-material-library/src/lib/common';\nimport { PghTableDataSourceLoadResponse, PghTableDataSourceParams } from './models';\nimport {\n  PghFilterChipsComponent,\n  PghFilterChipsSearchEvent,\n} from '@tapsellorg/angular-material-library/src/lib/filter-chips';\nimport { PghRefreshButtonComponent } from '@tapsellorg/angular-material-library/src/lib/refresh-button';\nimport {\n  PghDateRangeChangeEvent,\n  PghDateRangePickerComponent,\n} from '@tapsellorg/angular-material-library/src/lib/date-range-picker';\n\nexport abstract class PghTableDatasource<T> extends DataSource<T> {\n  readonly DEFAULT_PAGE_SIZE = 20;\n  protected _destroyed$ = new Subject();\n  protected dataSubject = new BehaviorSubject<T[]>([]);\n  private triggerLoadDataSubject = new Subject();\n  private paginator?: MatPaginator;\n  private sorter?: MatSort;\n  private filterChipsComponent?: PghFilterChipsComponent;\n  private dateRangePickerComponent?: PghDateRangePickerComponent;\n  private filterChipsFilterData?: PghFilterChipsSearchEvent;\n  private dateRangePickerSelectedRange?: PghDateRangeChangeEvent;\n  private refreshButtonComponent?: PghRefreshButtonComponent;\n\n  dataLength: number = 0;\n  loader = new PghLoader(['overlay', 'big']);\n\n  protected constructor(protected config: { idField: keyof T }) {\n    super();\n  }\n\n  connect(_collectionViewer: CollectionViewer): Observable<T[]> {\n    return this.dataSubject.asObservable();\n  }\n\n  disconnect(_collectionViewer: CollectionViewer): void {\n    this.dataSubject.complete();\n    this._destroyed$.next(undefined);\n    this._destroyed$.complete();\n  }\n\n  abstract loadData(data: PghTableDataSourceParams): Observable<PghTableDataSourceLoadResponse<T>>;\n\n  setPaginator(paginator: MatPaginator) {\n    if (!paginator) return;\n\n    this.paginator = paginator;\n    this.paginator.page.pipe(takeUntil(this._destroyed$)).subscribe(() => {\n      this.triggerLoadData();\n    });\n  }\n\n  setSorter(sorter: MatSort) {\n    this.sorter = sorter;\n    this.sorter.sortChange.pipe(takeUntil(this._destroyed$)).subscribe(() => {\n      this.triggerLoadData();\n    });\n  }\n\n  setFilter(filterChipsComponent: PghFilterChipsComponent) {\n    this.paginator?.firstPage();\n    this.filterChipsComponent = filterChipsComponent;\n    this.filterChipsComponent.search.subscribe((data: PghFilterChipsSearchEvent) => {\n      this.filterChipsFilterData = data;\n      this.triggerLoadData();\n    });\n  }\n\n  setDateFilter(dateRangePickerComponent: PghDateRangePickerComponent) {\n    this.dateRangePickerComponent = dateRangePickerComponent;\n    this.dateRangePickerSelectedRange = this.dateRangePickerComponent.getSelectedDateRange();\n    this.dateRangePickerComponent.rangeChange.subscribe(data => {\n      this.dateRangePickerSelectedRange = data;\n      this.triggerLoadData();\n    });\n  }\n\n  setRefresher(refreshButtonComponent: PghRefreshButtonComponent) {\n    this.refreshButtonComponent = refreshButtonComponent;\n    this.refreshButtonComponent?.refreshDataEvent.subscribe(() => {\n      this.triggerLoadData();\n    });\n  }\n\n  trackBy = (index: number, item: T) => item[this.config.idField];\n\n  @pghDebounceTime(200)\n  triggerLoadData() {\n    this.triggerLoadDataSubject.next(true);\n    this.loadData({\n      pageOptions: {\n        index: this.paginator?.pageIndex ?? 0,\n        size: this.paginator?.pageSize ?? this.DEFAULT_PAGE_SIZE,\n      },\n      sortOptions: this.sorter?.active\n        ? {\n            field: this.sorter.active,\n            direction: this.sorter.direction,\n          }\n        : undefined,\n      filterChipsFilterData: this.filterChipsFilterData,\n      dateRangePickerSelectedRange: this.dateRangePickerSelectedRange,\n    })\n      .pipe(pghLoader(this.loader), takeUntil(this.triggerLoadDataSubject))\n      .subscribe(response => {\n        this.dataSubject.next(response.data);\n        this.dataLength = response.totalItems;\n      });\n  }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}