cps-ui-kit 0.45.0 → 0.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/assets/icons.svg +4 -0
  2. package/esm2020/lib/components/cps-datepicker/cps-datepicker.component.mjs +5 -2
  3. package/esm2020/lib/components/cps-icon/cps-icon.component.mjs +2 -1
  4. package/esm2020/lib/components/cps-menu/cps-menu.component.mjs +35 -5
  5. package/esm2020/lib/components/cps-table/cps-table.component.mjs +50 -17
  6. package/esm2020/lib/components/cps-table/directives/cps-table-column-filter.directive.mjs +59 -0
  7. package/esm2020/lib/components/cps-table/directives/cps-table-column-sortable.directive.mjs +42 -0
  8. package/esm2020/lib/components/cps-table/directives/internal/table-unsort.directive.mjs +85 -0
  9. package/esm2020/lib/components/cps-table/table-column-filter/table-column-filter-constraint/table-column-filter-constraint.component.mjs +77 -0
  10. package/esm2020/lib/components/cps-table/table-column-filter/table-column-filter.component.mjs +227 -0
  11. package/esm2020/lib/components/cps-table/table-row-menu/table-row-menu.component.mjs +37 -0
  12. package/esm2020/public-api.mjs +3 -2
  13. package/fesm2015/cps-ui-kit.mjs +938 -493
  14. package/fesm2015/cps-ui-kit.mjs.map +1 -1
  15. package/fesm2020/cps-ui-kit.mjs +932 -492
  16. package/fesm2020/cps-ui-kit.mjs.map +1 -1
  17. package/lib/components/cps-menu/cps-menu.component.d.ts +6 -3
  18. package/lib/components/cps-table/cps-table.component.d.ts +13 -4
  19. package/lib/components/cps-table/directives/cps-table-column-filter.directive.d.ts +22 -0
  20. package/lib/components/cps-table/{cps-table-column-sortable.directive.d.ts → directives/cps-table-column-sortable.directive.d.ts} +1 -0
  21. package/lib/components/cps-table/table-column-filter/table-column-filter-constraint/table-column-filter-constraint.component.d.ts +25 -0
  22. package/lib/components/cps-table/table-column-filter/table-column-filter.component.d.ts +50 -0
  23. package/lib/components/cps-table/table-row-menu/table-row-menu.component.d.ts +10 -0
  24. package/package.json +1 -1
  25. package/public-api.d.ts +2 -1
  26. package/esm2020/lib/components/cps-table/cps-table-column-sortable.directive.mjs +0 -37
  27. package/esm2020/lib/components/cps-table/table-unsort.directive.mjs +0 -85
  28. /package/lib/components/cps-table/{table-unsort.directive.d.ts → directives/internal/table-unsort.directive.d.ts} +0 -0
@@ -46,18 +46,21 @@ export declare class CpsMenuComponent implements OnDestroy {
46
46
  documentResizeListener: VoidListener | null;
47
47
  overlayEventListener: Nullable<(event?: any) => void>;
48
48
  documentClickListener: VoidListener | null;
49
+ documentKeydownListener: VoidListener | null;
49
50
  destroyCallback: Nullable<Function>;
50
51
  overlaySubscription: Subscription | undefined;
51
52
  constructor(document: Document, platformId: any, el: ElementRef, renderer: Renderer2, cd: ChangeDetectorRef, zone: NgZone, config: PrimeNGConfig, overlayService: OverlayService);
52
- toggle(event: any, target?: any): void;
53
- show(event: any, target?: any): void;
53
+ toggle(event?: any, target?: any): void;
54
+ show(event?: any, target?: any): void;
54
55
  hide(): void;
55
56
  onItemClick(event: any, item: CpsMenuItem): void;
57
+ bindDocumentKeydownListener(): void;
58
+ unbindDocumentKeydownListener(): void;
56
59
  bindDocumentClickListener(): void;
57
60
  unbindDocumentClickListener(): void;
58
61
  onOverlayClick(event: MouseEvent): void;
59
62
  onContentClick(): void;
60
- hasTargetChanged(event: any, target: any): boolean;
63
+ hasTargetChanged(event?: any, target?: any): any;
61
64
  appendContainer(): void;
62
65
  restoreAppend(): void;
63
66
  align(): void;
@@ -24,7 +24,12 @@ export declare class CpsTableComponent implements OnInit, AfterViewInit {
24
24
  sortMode: 'single' | 'multiple';
25
25
  customSort: boolean;
26
26
  rowHover: boolean;
27
+ dataKey: string;
28
+ showRowMenu: boolean;
27
29
  loading: boolean;
30
+ reorderableRows: boolean;
31
+ showColumnsToggle: boolean;
32
+ sortable: boolean;
28
33
  scrollable: boolean;
29
34
  scrollHeight: string;
30
35
  virtualScroll: boolean;
@@ -42,15 +47,15 @@ export declare class CpsTableComponent implements OnInit, AfterViewInit {
42
47
  showRemoveBtnOnSelect: boolean;
43
48
  showActionBtn: boolean;
44
49
  actionBtnTitle: string;
45
- reorderableRows: boolean;
46
- showColumnsToggle: boolean;
47
50
  showExportBtn: boolean;
48
51
  exportFilename: string;
49
52
  csvSeparator: string;
50
- dataKey: string;
51
53
  selectionChanged: EventEmitter<any[]>;
52
54
  actionBtnClicked: EventEmitter<void>;
55
+ editRowBtnClicked: EventEmitter<any>;
53
56
  pageChanged: EventEmitter<any>;
57
+ sorted: EventEmitter<any>;
58
+ rowsReordered: EventEmitter<any>;
54
59
  /**
55
60
  * A function to implement custom sorting. customSort must be true.
56
61
  * @param {any} any - sort meta.
@@ -86,8 +91,12 @@ export declare class CpsTableComponent implements OnInit, AfterViewInit {
86
91
  toggleAllColumns(): void;
87
92
  isColumnSelected(col: any): boolean;
88
93
  onSelectColumn(col: any): void;
94
+ onEditRowClicked(item: any): void;
95
+ onRemoveRowClicked(item: any): void;
96
+ onSort(event: any): void;
97
+ onRowReorder(event: any): void;
89
98
  exportTable(format: CpsTableExportFormat): void;
90
99
  exportXLSX(): void;
91
100
  static ɵfac: i0.ɵɵFactoryDeclaration<CpsTableComponent, never>;
92
- static ɵcmp: i0.ɵɵComponentDeclaration<CpsTableComponent, "cps-table", never, { "data": "data"; "columns": "columns"; "colHeaderName": "colHeaderName"; "colFieldName": "colFieldName"; "striped": "striped"; "bordered": "bordered"; "size": "size"; "selectable": "selectable"; "emptyMessage": "emptyMessage"; "hasToolbar": "hasToolbar"; "toolbarSize": "toolbarSize"; "toolbarTitle": "toolbarTitle"; "sortMode": "sortMode"; "customSort": "customSort"; "rowHover": "rowHover"; "loading": "loading"; "scrollable": "scrollable"; "scrollHeight": "scrollHeight"; "virtualScroll": "virtualScroll"; "paginator": "paginator"; "alwaysShowPaginator": "alwaysShowPaginator"; "rowsPerPageOptions": "rowsPerPageOptions"; "first": "first"; "rows": "rows"; "totalRecords": "totalRecords"; "lazy": "lazy"; "lazyLoadOnInit": "lazyLoadOnInit"; "showGlobalFilter": "showGlobalFilter"; "globalFilterPlaceholder": "globalFilterPlaceholder"; "globalFilterFields": "globalFilterFields"; "showRemoveBtnOnSelect": "showRemoveBtnOnSelect"; "showActionBtn": "showActionBtn"; "actionBtnTitle": "actionBtnTitle"; "reorderableRows": "reorderableRows"; "showColumnsToggle": "showColumnsToggle"; "showExportBtn": "showExportBtn"; "exportFilename": "exportFilename"; "csvSeparator": "csvSeparator"; "dataKey": "dataKey"; }, { "selectionChanged": "selectionChanged"; "actionBtnClicked": "actionBtnClicked"; "pageChanged": "pageChanged"; "customSortFunction": "customSortFunction"; }, ["toolbarTemplate", "headerTemplate", "bodyTemplate", "rowExpansionTemplate"], never, true, never>;
101
+ static ɵcmp: i0.ɵɵComponentDeclaration<CpsTableComponent, "cps-table", never, { "data": "data"; "columns": "columns"; "colHeaderName": "colHeaderName"; "colFieldName": "colFieldName"; "striped": "striped"; "bordered": "bordered"; "size": "size"; "selectable": "selectable"; "emptyMessage": "emptyMessage"; "hasToolbar": "hasToolbar"; "toolbarSize": "toolbarSize"; "toolbarTitle": "toolbarTitle"; "sortMode": "sortMode"; "customSort": "customSort"; "rowHover": "rowHover"; "dataKey": "dataKey"; "showRowMenu": "showRowMenu"; "loading": "loading"; "reorderableRows": "reorderableRows"; "showColumnsToggle": "showColumnsToggle"; "sortable": "sortable"; "scrollable": "scrollable"; "scrollHeight": "scrollHeight"; "virtualScroll": "virtualScroll"; "paginator": "paginator"; "alwaysShowPaginator": "alwaysShowPaginator"; "rowsPerPageOptions": "rowsPerPageOptions"; "first": "first"; "rows": "rows"; "totalRecords": "totalRecords"; "lazy": "lazy"; "lazyLoadOnInit": "lazyLoadOnInit"; "showGlobalFilter": "showGlobalFilter"; "globalFilterPlaceholder": "globalFilterPlaceholder"; "globalFilterFields": "globalFilterFields"; "showRemoveBtnOnSelect": "showRemoveBtnOnSelect"; "showActionBtn": "showActionBtn"; "actionBtnTitle": "actionBtnTitle"; "showExportBtn": "showExportBtn"; "exportFilename": "exportFilename"; "csvSeparator": "csvSeparator"; }, { "selectionChanged": "selectionChanged"; "actionBtnClicked": "actionBtnClicked"; "editRowBtnClicked": "editRowBtnClicked"; "pageChanged": "pageChanged"; "sorted": "sorted"; "rowsReordered": "rowsReordered"; "customSortFunction": "customSortFunction"; }, ["toolbarTemplate", "headerTemplate", "bodyTemplate", "rowExpansionTemplate"], never, true, never>;
93
102
  }
@@ -0,0 +1,22 @@
1
+ import { ComponentRef, ElementRef, OnDestroy, OnInit, ViewContainerRef } from '@angular/core';
2
+ import { TableColumnFilterComponent } from '../table-column-filter/table-column-filter.component';
3
+ import * as i0 from "@angular/core";
4
+ export type CpsTableColumnFilterType = 'text' | 'number' | 'date' | 'boolean' | 'category';
5
+ export declare class CpsTableColumnFilterDirective implements OnInit, OnDestroy {
6
+ private elementRef;
7
+ private viewContainerRef;
8
+ field: string | undefined;
9
+ filterType: CpsTableColumnFilterType;
10
+ filterShowClearButton: boolean;
11
+ filterShowApplyButton: boolean;
12
+ filterHideOnClear: boolean;
13
+ filterMaxConstraints: number;
14
+ filterCategoryOptions: string[];
15
+ filterPlaceholder: string;
16
+ filterCompRef: ComponentRef<TableColumnFilterComponent>;
17
+ constructor(elementRef: ElementRef, viewContainerRef: ViewContainerRef);
18
+ ngOnInit(): void;
19
+ ngOnDestroy(): void;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<CpsTableColumnFilterDirective, never>;
21
+ static ɵdir: i0.ɵɵDirectiveDeclaration<CpsTableColumnFilterDirective, "[cpsColFilter]", never, { "field": "cpsColFilter"; "filterType": "filterType"; "filterShowClearButton": "filterShowClearButton"; "filterShowApplyButton": "filterShowApplyButton"; "filterHideOnClear": "filterHideOnClear"; "filterMaxConstraints": "filterMaxConstraints"; "filterCategoryOptions": "filterCategoryOptions"; "filterPlaceholder": "filterPlaceholder"; }, {}, never, never, true, never>;
22
+ }
@@ -10,6 +10,7 @@ export declare class CpsTableColumnSortableDirective extends SortableColumn impl
10
10
  constructor(elementRef: ElementRef, viewContainerRef: ViewContainerRef, dt: Table);
11
11
  ngOnInit(): void;
12
12
  ngOnDestroy(): void;
13
+ onClick(event: MouseEvent): void;
13
14
  static ɵfac: i0.ɵɵFactoryDeclaration<CpsTableColumnSortableDirective, never>;
14
15
  static ɵdir: i0.ɵɵDirectiveDeclaration<CpsTableColumnSortableDirective, "[cpsColSortable]", never, { "field": "cpsColSortable"; }, {}, never, never, true, never>;
15
16
  }
@@ -0,0 +1,25 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { FilterMetadata } from 'primeng/api';
3
+ import { Table } from 'primeng/table';
4
+ import { BtnToggleOption } from '../../../cps-button-toggle/cps-button-toggle.component';
5
+ import * as i0 from "@angular/core";
6
+ export declare class TableColumnFilterConstraintComponent implements OnInit {
7
+ dt: Table;
8
+ type: string | undefined;
9
+ field: string | undefined;
10
+ filterConstraint: FilterMetadata | undefined;
11
+ categoryOptions: string[];
12
+ placeholder: string;
13
+ hasApplyButton: boolean;
14
+ booleanOptions: BtnToggleOption[];
15
+ categories: {
16
+ label: string;
17
+ value: string;
18
+ }[];
19
+ constructor(dt: Table);
20
+ ngOnInit(): void;
21
+ onValueChange(value: any): void;
22
+ onInputEnterKeyDown(event: any): void;
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<TableColumnFilterConstraintComponent, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<TableColumnFilterConstraintComponent, "table-column-filter-constraint", never, { "type": "type"; "field": "field"; "filterConstraint": "filterConstraint"; "categoryOptions": "categoryOptions"; "placeholder": "placeholder"; "hasApplyButton": "hasApplyButton"; }, {}, never, never, true, never>;
25
+ }
@@ -0,0 +1,50 @@
1
+ import { ElementRef } from '@angular/core';
2
+ import { FilterMetadata, SelectItem } from 'primeng/api';
3
+ import { Table } from 'primeng/table';
4
+ import { CpsMenuComponent } from '../../cps-menu/cps-menu.component';
5
+ import * as i0 from "@angular/core";
6
+ export declare class TableColumnFilterComponent {
7
+ elementRef: ElementRef;
8
+ dt: Table;
9
+ field: string | undefined;
10
+ type: string;
11
+ showClearButton: boolean;
12
+ showApplyButton: boolean;
13
+ hideOnClear: boolean;
14
+ maxConstraints: number;
15
+ categoryOptions: string[];
16
+ placeholder: string;
17
+ operator: string;
18
+ showMatchModes: boolean;
19
+ showOperator: boolean;
20
+ operatorOptions: {
21
+ label: string;
22
+ value: string;
23
+ info: string;
24
+ }[];
25
+ private matchModeLabels;
26
+ private filterMatchModeOptions;
27
+ matchModes: SelectItem[] | undefined;
28
+ columnFilterMenu: CpsMenuComponent;
29
+ constructor(elementRef: ElementRef, dt: Table);
30
+ ngOnInit(): void;
31
+ initFieldFilterConstraint(): void;
32
+ onMenuMatchModeChange(value: any, filterMeta: FilterMetadata): void;
33
+ addConstraint(): void;
34
+ removeConstraint(filterMeta: FilterMetadata): void;
35
+ onOperatorChange(value: any): void;
36
+ getDefaultMatchMode(): string;
37
+ getDefaultOperator(): string | undefined;
38
+ get fieldConstraints(): FilterMetadata[] | undefined | null;
39
+ get showRemoveIcon(): boolean;
40
+ get isShowOperator(): boolean;
41
+ get isShowAddConstraint(): boolean | undefined | null;
42
+ hasFilter(): boolean;
43
+ hide(): void;
44
+ clearFilter(): void;
45
+ applyFilter(): void;
46
+ onMenuShown(): void;
47
+ onMenuHidden(): void;
48
+ static ɵfac: i0.ɵɵFactoryDeclaration<TableColumnFilterComponent, never>;
49
+ static ɵcmp: i0.ɵɵComponentDeclaration<TableColumnFilterComponent, "table-column-filter", never, { "field": "field"; "type": "type"; "showClearButton": "showClearButton"; "showApplyButton": "showApplyButton"; "hideOnClear": "hideOnClear"; "maxConstraints": "maxConstraints"; "categoryOptions": "categoryOptions"; "placeholder": "placeholder"; }, {}, never, never, true, never>;
50
+ }
@@ -0,0 +1,10 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { CpsMenuItem } from '../../cps-menu/cps-menu.component';
3
+ import * as i0 from "@angular/core";
4
+ export declare class TableRowMenuComponent {
5
+ editRowBtnClicked: EventEmitter<any>;
6
+ removeRowBtnClicked: EventEmitter<any>;
7
+ items: CpsMenuItem[];
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<TableRowMenuComponent, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<TableRowMenuComponent, "table-row-menu", never, {}, { "editRowBtnClicked": "editRowBtnClicked"; "removeRowBtnClicked": "removeRowBtnClicked"; }, never, never, true, never>;
10
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cps-ui-kit",
3
- "version": "0.45.0",
3
+ "version": "0.47.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "15 - 16",
6
6
  "@angular/core": "15 - 16",
package/public-api.d.ts CHANGED
@@ -9,7 +9,8 @@ export * from './lib/components/cps-button/cps-button.component';
9
9
  export * from './lib/components/cps-checkbox/cps-checkbox.component';
10
10
  export * from './lib/components/cps-radio/cps-radio.component';
11
11
  export * from './lib/components/cps-table/cps-table.component';
12
- export * from './lib/components/cps-table/cps-table-column-sortable.directive';
12
+ export * from './lib/components/cps-table/directives/cps-table-column-sortable.directive';
13
+ export * from './lib/components/cps-table/directives/cps-table-column-filter.directive';
13
14
  export * from './lib/components/cps-tag/cps-tag.component';
14
15
  export * from './lib/components/cps-chip/cps-chip.component';
15
16
  export * from './lib/components/cps-menu/cps-menu.component';
@@ -1,37 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { SortIcon, SortableColumn } from 'primeng/table';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "primeng/table";
5
- export class CpsTableColumnSortableDirective extends SortableColumn {
6
- constructor(elementRef, viewContainerRef, dt) {
7
- super(dt);
8
- this.elementRef = elementRef;
9
- this.viewContainerRef = viewContainerRef;
10
- this.dt = dt;
11
- this.field = '';
12
- this.sortIconRef = this.viewContainerRef.createComponent(SortIcon);
13
- }
14
- ngOnInit() {
15
- super.ngOnInit();
16
- this.sortIconRef.setInput('field', this.field);
17
- this.elementRef.nativeElement.firstChild.after(this.sortIconRef.location.nativeElement);
18
- }
19
- ngOnDestroy() {
20
- super.ngOnDestroy();
21
- this.sortIconRef.destroy();
22
- this.viewContainerRef.clear();
23
- }
24
- }
25
- CpsTableColumnSortableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CpsTableColumnSortableDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i1.Table }], target: i0.ɵɵFactoryTarget.Directive });
26
- CpsTableColumnSortableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: CpsTableColumnSortableDirective, isStandalone: true, selector: "[cpsColSortable]", inputs: { field: ["cpsColSortable", "field"] }, usesInheritance: true, ngImport: i0 });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CpsTableColumnSortableDirective, decorators: [{
28
- type: Directive,
29
- args: [{
30
- standalone: true,
31
- selector: '[cpsColSortable]'
32
- }]
33
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i1.Table }]; }, propDecorators: { field: [{
34
- type: Input,
35
- args: ['cpsColSortable']
36
- }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLXRhYmxlLWNvbHVtbi1zb3J0YWJsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcHMtdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9jcHMtdGFibGUvY3BzLXRhYmxlLWNvbHVtbi1zb3J0YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxLQUFLLEVBSU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQVMsTUFBTSxlQUFlLENBQUM7OztBQU1oRSxNQUFNLE9BQU8sK0JBQ1gsU0FBUSxjQUFjO0lBTXRCLFlBQ1UsVUFBc0IsRUFDdEIsZ0JBQWtDLEVBQzFCLEVBQVM7UUFFekIsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBSkYsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQzFCLE9BQUUsR0FBRixFQUFFLENBQU87UUFOTyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBUzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRVEsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQzVDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FDeEMsQ0FBQztJQUNKLENBQUM7SUFFUSxXQUFXO1FBQ2xCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzs0SEE1QlUsK0JBQStCO2dIQUEvQiwrQkFBK0I7MkZBQS9CLCtCQUErQjtrQkFKM0MsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGtCQUFrQjtpQkFDN0I7b0pBS21DLEtBQUs7c0JBQXRDLEtBQUs7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50UmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNvcnRJY29uLCBTb3J0YWJsZUNvbHVtbiwgVGFibGUgfSBmcm9tICdwcmltZW5nL3RhYmxlJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW2Nwc0NvbFNvcnRhYmxlXSdcbn0pXG5leHBvcnQgY2xhc3MgQ3BzVGFibGVDb2x1bW5Tb3J0YWJsZURpcmVjdGl2ZVxuICBleHRlbmRzIFNvcnRhYmxlQ29sdW1uXG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcbntcbiAgQElucHV0KCdjcHNDb2xTb3J0YWJsZScpIG92ZXJyaWRlIGZpZWxkID0gJyc7XG4gIHNvcnRJY29uUmVmOiBDb21wb25lbnRSZWY8U29ydEljb24+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHVibGljIG92ZXJyaWRlIGR0OiBUYWJsZVxuICApIHtcbiAgICBzdXBlcihkdCk7XG4gICAgdGhpcy5zb3J0SWNvblJlZiA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoU29ydEljb24pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB0aGlzLnNvcnRJY29uUmVmLnNldElucHV0KCdmaWVsZCcsIHRoaXMuZmllbGQpO1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZpcnN0Q2hpbGQuYWZ0ZXIoXG4gICAgICB0aGlzLnNvcnRJY29uUmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnRcbiAgICApO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLnNvcnRJY29uUmVmLmRlc3Ryb3koKTtcbiAgICB0aGlzLnZpZXdDb250YWluZXJSZWYuY2xlYXIoKTtcbiAgfVxufVxuIl19
@@ -1,85 +0,0 @@
1
- import { Directive, Host, Self, Optional } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "primeng/table";
4
- export class TableUnsortDirective {
5
- constructor(pTable) {
6
- this.pTable = pTable;
7
- this.defaultSortOrderInitialized = false;
8
- pTable.tableService.valueSource$.subscribe((val) => {
9
- if (val != null && val.length > 0 && !this.defaultSortOrderInitialized) {
10
- let i = 0;
11
- val.forEach((v) => {
12
- v._defaultSortOrder = i++;
13
- });
14
- this.defaultSortOrderInitialized = true;
15
- }
16
- });
17
- pTable.sort = (event) => {
18
- if (pTable.sortMode === 'single') {
19
- if (pTable.sortField === event.field && pTable.sortOrder === -1) {
20
- event.field = '_defaultSortOrder';
21
- }
22
- pTable._sortOrder =
23
- pTable.sortField === event.field
24
- ? pTable.sortOrder * -1
25
- : pTable.defaultSortOrder;
26
- pTable._sortField = event.field;
27
- pTable.sortSingle();
28
- }
29
- if (pTable.sortMode === 'multiple') {
30
- let resetIndex = false;
31
- const sortMeta = pTable.getSortMeta(event.field);
32
- if (sortMeta) {
33
- for (let i = 0; i < pTable._multiSortMeta.length; i++) {
34
- if (pTable._multiSortMeta[i].field === sortMeta.field) {
35
- pTable._multiSortMeta.splice(i, 1);
36
- }
37
- }
38
- if (sortMeta.order === 1) {
39
- sortMeta.order = sortMeta.order * -1;
40
- pTable.multiSortMeta.push(sortMeta);
41
- }
42
- if (pTable._multiSortMeta?.length === 0) {
43
- pTable.multiSortMeta.push({
44
- field: '_defaultSortOrder',
45
- order: pTable.defaultSortOrder
46
- });
47
- resetIndex = true;
48
- }
49
- }
50
- else {
51
- if (!pTable.multiSortMeta) {
52
- pTable._multiSortMeta = [];
53
- }
54
- pTable.multiSortMeta.push({
55
- field: event.field,
56
- order: pTable.defaultSortOrder
57
- });
58
- }
59
- pTable.sortMultiple();
60
- if (resetIndex)
61
- pTable._multiSortMeta = [];
62
- }
63
- if (pTable.isStateful()) {
64
- pTable.saveState();
65
- }
66
- pTable.anchorRowIndex = 0;
67
- };
68
- }
69
- }
70
- TableUnsortDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableUnsortDirective, deps: [{ token: i1.Table, host: true, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive });
71
- TableUnsortDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: TableUnsortDirective, isStandalone: true, selector: "[withUnsort]", ngImport: i0 });
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableUnsortDirective, decorators: [{
73
- type: Directive,
74
- args: [{
75
- standalone: true,
76
- selector: '[withUnsort]'
77
- }]
78
- }], ctorParameters: function () { return [{ type: i1.Table, decorators: [{
79
- type: Host
80
- }, {
81
- type: Self
82
- }, {
83
- type: Optional
84
- }] }]; } });
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdW5zb3J0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nwcy11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Nwcy10YWJsZS90YWJsZS11bnNvcnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU9oRSxNQUFNLE9BQU8sb0JBQW9CO0lBRy9CLFlBQStDLE1BQWE7UUFBYixXQUFNLEdBQU4sTUFBTSxDQUFPO1FBRjVELGdDQUEyQixHQUFHLEtBQUssQ0FBQztRQUdsQyxNQUFNLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFVLEVBQUUsRUFBRTtZQUN4RCxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUU7Z0JBQ3RFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDVixHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ2hCLENBQUMsQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDNUIsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQzthQUN6QztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLElBQUksR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQzNCLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUU7Z0JBQ2hDLElBQUksTUFBTSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxTQUFTLEtBQUssQ0FBQyxDQUFDLEVBQUU7b0JBQy9ELEtBQUssQ0FBQyxLQUFLLEdBQUcsbUJBQW1CLENBQUM7aUJBQ25DO2dCQUVELE1BQU0sQ0FBQyxVQUFVO29CQUNmLE1BQU0sQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLEtBQUs7d0JBQzlCLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQzt3QkFDdkIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDOUIsTUFBTSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO2dCQUNoQyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDckI7WUFDRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssVUFBVSxFQUFFO2dCQUNsQyxJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUM7Z0JBQ3ZCLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUVqRCxJQUFJLFFBQVEsRUFBRTtvQkFDWixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7d0JBQ3JELElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLEtBQUssRUFBRTs0QkFDckQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO3lCQUNwQztxQkFDRjtvQkFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFLLEtBQUssQ0FBQyxFQUFFO3dCQUN4QixRQUFRLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7d0JBQ3JDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3FCQUNyQztvQkFDRCxJQUFJLE1BQU0sQ0FBQyxjQUFjLEVBQUUsTUFBTSxLQUFLLENBQUMsRUFBRTt3QkFDdkMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7NEJBQ3hCLEtBQUssRUFBRSxtQkFBbUI7NEJBQzFCLEtBQUssRUFBRSxNQUFNLENBQUMsZ0JBQWdCO3lCQUMvQixDQUFDLENBQUM7d0JBQ0gsVUFBVSxHQUFHLElBQUksQ0FBQztxQkFDbkI7aUJBQ0Y7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUU7d0JBQ3pCLE1BQU0sQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO3FCQUM1QjtvQkFDRCxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQzt3QkFDeEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO3dCQUNsQixLQUFLLEVBQUUsTUFBTSxDQUFDLGdCQUFnQjtxQkFDL0IsQ0FBQyxDQUFDO2lCQUNKO2dCQUVELE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxVQUFVO29CQUFFLE1BQU0sQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO2FBQzVDO1lBRUQsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQUU7Z0JBQ3ZCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQzthQUNwQjtZQUVELE1BQU0sQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLENBQUMsQ0FBQztJQUNKLENBQUM7O2lIQXBFVSxvQkFBb0I7cUdBQXBCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsY0FBYztpQkFDekI7OzBCQUljLElBQUk7OzBCQUFJLElBQUk7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3QsIFNlbGYsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUYWJsZSB9IGZyb20gJ3ByaW1lbmcvdGFibGUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbd2l0aFVuc29ydF0nXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlVW5zb3J0RGlyZWN0aXZlIHtcbiAgZGVmYXVsdFNvcnRPcmRlckluaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoQEhvc3QoKSBAU2VsZigpIEBPcHRpb25hbCgpIHB1YmxpYyBwVGFibGU6IFRhYmxlKSB7XG4gICAgcFRhYmxlLnRhYmxlU2VydmljZS52YWx1ZVNvdXJjZSQuc3Vic2NyaWJlKCh2YWw6IGFueVtdKSA9PiB7XG4gICAgICBpZiAodmFsICE9IG51bGwgJiYgdmFsLmxlbmd0aCA+IDAgJiYgIXRoaXMuZGVmYXVsdFNvcnRPcmRlckluaXRpYWxpemVkKSB7XG4gICAgICAgIGxldCBpID0gMDtcbiAgICAgICAgdmFsLmZvckVhY2goKHYpID0+IHtcbiAgICAgICAgICB2Ll9kZWZhdWx0U29ydE9yZGVyID0gaSsrO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kZWZhdWx0U29ydE9yZGVySW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcFRhYmxlLnNvcnQgPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgaWYgKHBUYWJsZS5zb3J0TW9kZSA9PT0gJ3NpbmdsZScpIHtcbiAgICAgICAgaWYgKHBUYWJsZS5zb3J0RmllbGQgPT09IGV2ZW50LmZpZWxkICYmIHBUYWJsZS5zb3J0T3JkZXIgPT09IC0xKSB7XG4gICAgICAgICAgZXZlbnQuZmllbGQgPSAnX2RlZmF1bHRTb3J0T3JkZXInO1xuICAgICAgICB9XG5cbiAgICAgICAgcFRhYmxlLl9zb3J0T3JkZXIgPVxuICAgICAgICAgIHBUYWJsZS5zb3J0RmllbGQgPT09IGV2ZW50LmZpZWxkXG4gICAgICAgICAgICA/IHBUYWJsZS5zb3J0T3JkZXIgKiAtMVxuICAgICAgICAgICAgOiBwVGFibGUuZGVmYXVsdFNvcnRPcmRlcjtcbiAgICAgICAgcFRhYmxlLl9zb3J0RmllbGQgPSBldmVudC5maWVsZDtcbiAgICAgICAgcFRhYmxlLnNvcnRTaW5nbGUoKTtcbiAgICAgIH1cbiAgICAgIGlmIChwVGFibGUuc29ydE1vZGUgPT09ICdtdWx0aXBsZScpIHtcbiAgICAgICAgbGV0IHJlc2V0SW5kZXggPSBmYWxzZTtcbiAgICAgICAgY29uc3Qgc29ydE1ldGEgPSBwVGFibGUuZ2V0U29ydE1ldGEoZXZlbnQuZmllbGQpO1xuXG4gICAgICAgIGlmIChzb3J0TWV0YSkge1xuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcFRhYmxlLl9tdWx0aVNvcnRNZXRhLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAocFRhYmxlLl9tdWx0aVNvcnRNZXRhW2ldLmZpZWxkID09PSBzb3J0TWV0YS5maWVsZCkge1xuICAgICAgICAgICAgICBwVGFibGUuX211bHRpU29ydE1ldGEuc3BsaWNlKGksIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoc29ydE1ldGEub3JkZXIgPT09IDEpIHtcbiAgICAgICAgICAgIHNvcnRNZXRhLm9yZGVyID0gc29ydE1ldGEub3JkZXIgKiAtMTtcbiAgICAgICAgICAgIHBUYWJsZS5tdWx0aVNvcnRNZXRhLnB1c2goc29ydE1ldGEpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAocFRhYmxlLl9tdWx0aVNvcnRNZXRhPy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHBUYWJsZS5tdWx0aVNvcnRNZXRhLnB1c2goe1xuICAgICAgICAgICAgICBmaWVsZDogJ19kZWZhdWx0U29ydE9yZGVyJyxcbiAgICAgICAgICAgICAgb3JkZXI6IHBUYWJsZS5kZWZhdWx0U29ydE9yZGVyXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJlc2V0SW5kZXggPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoIXBUYWJsZS5tdWx0aVNvcnRNZXRhKSB7XG4gICAgICAgICAgICBwVGFibGUuX211bHRpU29ydE1ldGEgPSBbXTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcFRhYmxlLm11bHRpU29ydE1ldGEucHVzaCh7XG4gICAgICAgICAgICBmaWVsZDogZXZlbnQuZmllbGQsXG4gICAgICAgICAgICBvcmRlcjogcFRhYmxlLmRlZmF1bHRTb3J0T3JkZXJcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHBUYWJsZS5zb3J0TXVsdGlwbGUoKTtcbiAgICAgICAgaWYgKHJlc2V0SW5kZXgpIHBUYWJsZS5fbXVsdGlTb3J0TWV0YSA9IFtdO1xuICAgICAgfVxuXG4gICAgICBpZiAocFRhYmxlLmlzU3RhdGVmdWwoKSkge1xuICAgICAgICBwVGFibGUuc2F2ZVN0YXRlKCk7XG4gICAgICB9XG5cbiAgICAgIHBUYWJsZS5hbmNob3JSb3dJbmRleCA9IDA7XG4gICAgfTtcbiAgfVxufVxuIl19