Start adding filters, migrate types to zod, update readme
All checks were successful
build / build (push) Successful in 1m22s
All checks were successful
build / build (push) Successful in 1m22s
This commit is contained in:
@@ -1,16 +1,13 @@
|
||||
import {
|
||||
ChangeDetectionStrategy,
|
||||
ChangeDetectorRef,
|
||||
Component,
|
||||
computed,
|
||||
effect,
|
||||
inject,
|
||||
input,
|
||||
signal,
|
||||
viewChild,
|
||||
} from '@angular/core';
|
||||
import { Skeleton } from 'primeng/skeleton';
|
||||
import { Table, TableLazyLoadEvent, TableModule } from 'primeng/table';
|
||||
import { TableLazyLoadEvent, TableModule } from 'primeng/table';
|
||||
import { Column, DuckdbService } from '../duckdb.service';
|
||||
|
||||
@Component({
|
||||
@@ -34,6 +31,8 @@ import { Column, DuckdbService } from '../duckdb.service';
|
||||
[virtualScrollItemSize]="46"
|
||||
[lazy]="true"
|
||||
(onLazyLoad)="onLazyLoad($event)"
|
||||
[multiSortMeta]="[{ field: columns()[0].name, order: 1 }]"
|
||||
stripedRows
|
||||
>
|
||||
<ng-template #header let-columns>
|
||||
<tr>
|
||||
@@ -43,7 +42,9 @@ import { Column, DuckdbService } from '../duckdb.service';
|
||||
pResizableColumn
|
||||
[pSortableColumn]="col.name"
|
||||
>
|
||||
{{ col.name }} <p-sortIcon [field]="col.name" />
|
||||
{{ col.name }}
|
||||
<p-columnFilter type="text" [field]="col.name" display="menu" />
|
||||
<p-sortIcon [field]="col.name" />
|
||||
</th>
|
||||
}
|
||||
</tr>
|
||||
@@ -116,7 +117,15 @@ export class FileViewerComponent {
|
||||
name: meta.field,
|
||||
sortType: meta.order < 0 ? 'desc' : 'asc',
|
||||
})) ?? [],
|
||||
[],
|
||||
Array.isArray(event.filters)
|
||||
? Object.values(event.filters).map((filter) => ({
|
||||
value: Array.isArray(filter.value)
|
||||
? filter.value
|
||||
: [filter.value],
|
||||
matchType: filter.matchMode,
|
||||
operator: filter.operator,
|
||||
}))
|
||||
: [],
|
||||
[],
|
||||
);
|
||||
// First clear out existing data, don't want to risk loading entire file into memory
|
||||
|
||||
Reference in New Issue
Block a user