ms-time-sheet 0.0.12 → 0.0.13
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.
- package/esm2022/lib/ms-time-sheet.component.mjs +410 -52
- package/esm2022/lib/pipes/filter.pipe.mjs +329 -5
- package/esm2022/lib/pipes/timezone-format.pipe.mjs +34 -3
- package/esm2022/lib/services/common.service.mjs +8 -2
- package/fesm2022/ms-time-sheet.mjs +777 -58
- package/fesm2022/ms-time-sheet.mjs.map +1 -1
- package/lib/ms-time-sheet.component.d.ts +37 -2
- package/lib/pipes/filter.pipe.d.ts +14 -0
- package/lib/pipes/timezone-format.pipe.d.ts +8 -1
- package/lib/services/common.service.d.ts +3 -1
- package/package.json +1 -1
|
@@ -696,23 +696,39 @@ export declare class TimeSheetComponent implements OnInit, OnChanges, AfterViewI
|
|
|
696
696
|
detailEditingKey: string | null;
|
|
697
697
|
activeDetailRow: any;
|
|
698
698
|
activeDetailCol: any;
|
|
699
|
+
activeDetailFilterCol: any;
|
|
700
|
+
activeDetailFilterRow: any;
|
|
699
701
|
detailFilterValue: string;
|
|
700
702
|
detailFilterCondition: string;
|
|
701
703
|
detailFilters: Map<string, {
|
|
702
704
|
condition: string;
|
|
703
705
|
value: any;
|
|
704
706
|
}>;
|
|
707
|
+
detailFilterType: string;
|
|
708
|
+
detailFilterOptions: any[];
|
|
709
|
+
detailSelectedFilterOptions: any[];
|
|
710
|
+
detailFilterDateValue: string | Date | null;
|
|
711
|
+
detailFilterTimeValue: string;
|
|
712
|
+
detailFilterSearch: string;
|
|
713
|
+
allDetailDropdownOptions: any[];
|
|
714
|
+
filteredDetailDropdownOptions: any[];
|
|
715
|
+
detailFilterMenuPosition: {
|
|
716
|
+
x: number;
|
|
717
|
+
y: number;
|
|
718
|
+
} | null;
|
|
705
719
|
currentDetailDraggingColumn: any;
|
|
706
720
|
currentDetailRow: any;
|
|
707
721
|
openDetailThreeDotsMenu(event: MouseEvent, row: any, col: any): void;
|
|
722
|
+
openDetailFilterMenu(event: MouseEvent, col: any, row: any): void;
|
|
723
|
+
openDetailFilterMenuHandler(col: any, row: any): void;
|
|
708
724
|
enableDetailEdit(row: any, dataItem: any, col: any): void;
|
|
709
725
|
isDetailEditing(row: any, dataItem: any, col: any): boolean;
|
|
710
726
|
isActiveDetailCell(row: any, dataItem: any, col: any): boolean;
|
|
711
727
|
getDetailFilterMenuLeft(row: any, col: any): number;
|
|
712
|
-
applyDetailFilter(
|
|
728
|
+
applyDetailFilter(): void;
|
|
713
729
|
toggleSelectAllDetailFilters(col: any, row: any, event: any): void;
|
|
714
730
|
onDetailOptionToggle(col: any, option: any, row: any): void;
|
|
715
|
-
resetDetailFilter(
|
|
731
|
+
resetDetailFilter(): void;
|
|
716
732
|
filterDetailData(row: any): void;
|
|
717
733
|
onDetailDragStart(event: CdkDragStart, row: any, col: any, index: number): void;
|
|
718
734
|
onDetailDragMoved(event: CdkDragMove, row: any): void;
|
|
@@ -741,6 +757,11 @@ export declare class TimeSheetComponent implements OnInit, OnChanges, AfterViewI
|
|
|
741
757
|
enableDetailCellEdit(row: any, dataItem: any, col: any): void;
|
|
742
758
|
disableDetailCellEdit(row: any, dataItem: any, col: any): void;
|
|
743
759
|
isDetailCellEditing(row: any, dataItem: any, col: any): boolean;
|
|
760
|
+
isDetailColumnFiltered(row: any, col: any): boolean;
|
|
761
|
+
filterDetailDropdownOptions(): void;
|
|
762
|
+
hasExistingDetailFilter(row: any, col: any): boolean;
|
|
763
|
+
toggleDetailFilterOption(option: any): void;
|
|
764
|
+
closeDetailFilterMenu(): void;
|
|
744
765
|
tooltipVisible: boolean;
|
|
745
766
|
tooltipEditing: boolean;
|
|
746
767
|
currentTooltipField: string | null;
|
|
@@ -789,12 +810,15 @@ export declare class TimeSheetComponent implements OnInit, OnChanges, AfterViewI
|
|
|
789
810
|
};
|
|
790
811
|
currentRestrictionLogs: any[];
|
|
791
812
|
currentManualLogsRow: any;
|
|
813
|
+
detailMenuTop: number | null;
|
|
814
|
+
detailMenuLeft: number | null;
|
|
792
815
|
isDetailMenueHidden: boolean;
|
|
793
816
|
openDetailThreeDotsMenus(event: MouseEvent, col: any, row: any): void;
|
|
794
817
|
sortDetailAsc(col: any, row: any): void;
|
|
795
818
|
sortDetailDesc(col: any, row: any): void;
|
|
796
819
|
resetDetailSort(col: any, row: any): void;
|
|
797
820
|
private sortDetailData;
|
|
821
|
+
private normalizeDetailValue;
|
|
798
822
|
updateDetailColumnPin(col: any, row: any, pinned: 'left' | 'right' | null): void;
|
|
799
823
|
private reorderDetailColumns;
|
|
800
824
|
autosizeDetailColumn(col: any, row: any): void;
|
|
@@ -852,6 +876,7 @@ export declare class TimeSheetComponent implements OnInit, OnChanges, AfterViewI
|
|
|
852
876
|
private getDetailSelectionState;
|
|
853
877
|
private findFocusedDetailRowAndSection;
|
|
854
878
|
private clearOtherDetailSections;
|
|
879
|
+
toggleAccordion(row: any): void;
|
|
855
880
|
get hasOpenAccordion(): boolean;
|
|
856
881
|
private hasAccordionStateChanged;
|
|
857
882
|
selectRange(range: Date[], drp: BsDaterangepickerDirective): void;
|
|
@@ -923,6 +948,16 @@ export declare class TimeSheetComponent implements OnInit, OnChanges, AfterViewI
|
|
|
923
948
|
hideShortLeaveTooltip(): void;
|
|
924
949
|
preventShortLeaveTooltipHide(): void;
|
|
925
950
|
onDetailBadgeOverflowCountClick(col: any, detailRow: any, badgeComponent?: any): void;
|
|
951
|
+
accordionColumnFilters: Map<string, any>;
|
|
952
|
+
activeAccordionFilterMenu: {
|
|
953
|
+
row: any;
|
|
954
|
+
col: any;
|
|
955
|
+
} | null;
|
|
956
|
+
isAccordionColumnFiltered(row: any, col: any): boolean;
|
|
957
|
+
isColumnFilterable(col: any): boolean;
|
|
958
|
+
private getFilterValue;
|
|
959
|
+
private matchesFilterCondition;
|
|
960
|
+
filterAccordionData(row: any): void;
|
|
926
961
|
static ɵfac: i0.ɵɵFactoryDeclaration<TimeSheetComponent, never>;
|
|
927
962
|
static ɵcmp: i0.ɵɵComponentDeclaration<TimeSheetComponent, "time-sheet", never, { "paginationConfig": { "alias": "paginationConfig"; "required": false; }; "dataSet": { "alias": "dataSet"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "headerRowHeight": { "alias": "headerRowHeight"; "required": false; }; "showVerticalBorder": { "alias": "showVerticalBorder"; "required": false; }; "evenRowsBackgroundColor": { "alias": "evenRowsBackgroundColor"; "required": false; }; "oddRowsBackgroundColor": { "alias": "oddRowsBackgroundColor"; "required": false; }; "headerBackgroundColor": { "alias": "headerBackgroundColor"; "required": false; }; "checkboxesBackgroundColor": { "alias": "checkboxesBackgroundColor"; "required": false; }; "showColumnsGrouping": { "alias": "showColumnsGrouping"; "required": false; }; "rowHoverColor": { "alias": "rowHoverColor"; "required": false; }; "leftPinnedBackgroundColor": { "alias": "leftPinnedBackgroundColor"; "required": false; }; "bodyBackgroundColor": { "alias": "bodyBackgroundColor"; "required": false; }; "rightPinnedBackgroundColor": { "alias": "rightPinnedBackgroundColor"; "required": false; }; "sidemenuBackgroundColor": { "alias": "sidemenuBackgroundColor"; "required": false; }; "bodyTextColor": { "alias": "bodyTextColor"; "required": false; }; "headerTextColor": { "alias": "headerTextColor"; "required": false; }; "headerTextFontsSize": { "alias": "headerTextFontsSize"; "required": false; }; "bodyTextFontsSize": { "alias": "bodyTextFontsSize"; "required": false; }; "headerFontWeight": { "alias": "headerFontWeight"; "required": false; }; "bodyFontWeight": { "alias": "bodyFontWeight"; "required": false; }; "checkedRowBackgroundColor": { "alias": "checkedRowBackgroundColor"; "required": false; }; "dropdownsBackgroundColor": { "alias": "dropdownsBackgroundColor"; "required": false; }; "footerRowHeight": { "alias": "footerRowHeight"; "required": false; }; "topGroupedBadgesBackgroundColor": { "alias": "topGroupedBadgesBackgroundColor"; "required": false; }; "showRowsGrouping": { "alias": "showRowsGrouping"; "required": false; }; "showFilterRow": { "alias": "showFilterRow"; "required": false; }; "fontFaimly": { "alias": "fontFaimly"; "required": false; }; "showSideMenu": { "alias": "showSideMenu"; "required": false; }; "footerPadding": { "alias": "footerPadding"; "required": false; }; "topFilterRowHeight": { "alias": "topFilterRowHeight"; "required": false; }; "rowShadingEnabled": { "alias": "rowShadingEnabled"; "required": false; }; "showSerialNumber": { "alias": "showSerialNumber"; "required": false; }; "enableExport": { "alias": "enableExport"; "required": false; }; "singleSpaAssetsPath": { "alias": "singleSpaAssetsPath"; "required": false; }; "filtersConfig": { "alias": "filtersConfig"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "verticalScrollbarWidth": { "alias": "verticalScrollbarWidth"; "required": false; }; "horizintalScrollbarWidth": { "alias": "horizintalScrollbarWidth"; "required": false; }; "showCellDetailsBox": { "alias": "showCellDetailsBox"; "required": false; }; "dateFormat": { "alias": "dateFormat"; "required": false; }; "tableSearch": { "alias": "tableSearch"; "required": false; }; "actions": { "alias": "actions"; "required": false; }; "config": { "alias": "config"; "required": false; }; "showTaskbar": { "alias": "showTaskbar"; "required": false; }; "tableName": { "alias": "tableName"; "required": false; }; "listingType": { "alias": "listingType"; "required": false; }; "checkboxState": { "alias": "checkboxState"; "required": false; }; "taskbarActions": { "alias": "taskbarActions"; "required": false; }; "sortingConfig": { "alias": "sortingConfig"; "required": false; }; "tableFilterViewId": { "alias": "tableFilterViewId"; "required": false; }; "selectedTableLayout": { "alias": "selectedTableLayout"; "required": false; }; "selectedPresetId": { "alias": "selectedPresetId"; "required": false; }; "closeDropdown": { "alias": "closeDropdown"; "required": false; }; "globalSearchText": { "alias": "globalSearchText"; "required": false; }; "nestedTablerowFontsize": { "alias": "nestedTablerowFontsize"; "required": false; }; "nestedTableHeaderRowHeight": { "alias": "nestedTableHeaderRowHeight"; "required": false; }; "nestedTablerowHeight": { "alias": "nestedTablerowHeight"; "required": false; }; "gridType": { "alias": "gridType"; "required": false; }; "isSingleDay": { "alias": "isSingleDay"; "required": false; }; "leftPinnedBoxshadow": { "alias": "leftPinnedBoxshadow"; "required": false; }; "rightPinnedBoxshadow": { "alias": "rightPinnedBoxshadow"; "required": false; }; "enableAccordionShadow": { "alias": "enableAccordionShadow"; "required": false; }; "enableAccordionSeparators": { "alias": "enableAccordionSeparators"; "required": false; }; "enableRowShading": { "alias": "enableRowShading"; "required": false; }; "selectedRowsBackgroundColor": { "alias": "selectedRowsBackgroundColor"; "required": false; }; "nestedTableHeaderBAckgroundColor": { "alias": "nestedTableHeaderBAckgroundColor"; "required": false; }; "tableView": { "alias": "tableView"; "required": false; }; "columnThreedotsMunuConfig": { "alias": "columnThreedotsMunuConfig"; "required": false; }; "timezonePrefs": { "alias": "timezonePrefs"; "required": false; }; "enableProgressiveLoading": { "alias": "enableProgressiveLoading"; "required": false; }; "progressiveChunkSize": { "alias": "progressiveChunkSize"; "required": false; }; "progressiveDelay": { "alias": "progressiveDelay"; "required": false; }; "detailsIconPosition": { "alias": "detailsIconPosition"; "required": false; }; "detailsPosition": { "alias": "detailsPosition"; "required": false; }; "buttons": { "alias": "buttons"; "required": false; }; "isStartDateNotEqualToEndDate": { "alias": "isStartDateNotEqualToEndDate"; "required": false; }; }, { "onShortBreakClick": "onShortBreakClick"; "searchEvent": "searchEvent"; "changeLayout": "changeLayout"; "filterOptions": "filterOptions"; "filterCleared": "filterCleared"; "genericEvent": "genericEvent"; "tablePresetConfig": "tablePresetConfig"; "sortingOrderOptions": "sortingOrderOptions"; "createUpdateConfigListing": "createUpdateConfigListing"; "loadMore": "loadMore"; "emailClicked": "emailClicked"; "addAttendanceClicked": "addAttendanceClicked"; "backPayClicked": "backPayClicked"; "grandTotalClicked": "grandTotalClicked"; "printClicked": "printClicked"; "exportClicked": "exportClicked"; "exportDailyClicked": "exportDailyClicked"; "deleteClicked": "deleteClicked"; }, never, never, true, never>;
|
|
928
963
|
}
|
|
@@ -2,6 +2,20 @@ import { PipeTransform } from '@angular/core';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class FilterPipe implements PipeTransform {
|
|
4
4
|
transform(items: any[], searchText: string, key?: string): any[];
|
|
5
|
+
private matchesSearchTerm;
|
|
6
|
+
private getNestedValue;
|
|
7
|
+
private searchInObject;
|
|
8
|
+
private valueMatchesTerm;
|
|
9
|
+
private stringMatchesTerm;
|
|
10
|
+
private fuzzyMatch;
|
|
11
|
+
private levenshteinDistance;
|
|
12
|
+
private partialWordMatch;
|
|
13
|
+
private tryParseDate;
|
|
14
|
+
private checkCommonVariations;
|
|
15
|
+
private generateVariations;
|
|
16
|
+
private isNumericMatch;
|
|
17
|
+
private dateMatchesTerm;
|
|
18
|
+
private formatDate;
|
|
5
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<FilterPipe, never>;
|
|
6
20
|
static ɵpipe: i0.ɵɵPipeDeclaration<FilterPipe, "filter", true>;
|
|
7
21
|
}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
interface DateTimePrefs {
|
|
4
|
+
timeZone: string;
|
|
5
|
+
dateFormat: string;
|
|
6
|
+
timeFormat: string;
|
|
7
|
+
}
|
|
3
8
|
export declare class TimezoneFormatPipe implements PipeTransform {
|
|
4
9
|
private formatCache;
|
|
5
10
|
transform(value: string | Date | null | undefined, prefs?: {
|
|
@@ -7,9 +12,11 @@ export declare class TimezoneFormatPipe implements PipeTransform {
|
|
|
7
12
|
dateFormat: string;
|
|
8
13
|
timeFormat: string;
|
|
9
14
|
}, formatType?: 'date' | 'time' | 'datetime'): string;
|
|
10
|
-
|
|
15
|
+
formatDate(date: Date | string | number, prefs: DateTimePrefs, formatType?: 'date' | 'time' | 'datetime'): string;
|
|
16
|
+
private __formatDate;
|
|
11
17
|
private parseFormatToIntlOptions;
|
|
12
18
|
private convertAngularToMomentFormat;
|
|
13
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<TimezoneFormatPipe, never>;
|
|
14
20
|
static ɵpipe: i0.ɵɵPipeDeclaration<TimezoneFormatPipe, "timezoneFormat", true>;
|
|
15
21
|
}
|
|
22
|
+
export {};
|
|
@@ -11,7 +11,9 @@ export declare class CommonService {
|
|
|
11
11
|
getFiltersFromColumns(columns: any[], filtersConfig: any[]): any[];
|
|
12
12
|
applyFiltersToColumns(columns: any[], filters: any[]): Promise<any[]>;
|
|
13
13
|
globalSearch: EventEmitter<any>;
|
|
14
|
-
private
|
|
14
|
+
private _userData;
|
|
15
|
+
get userData(): any;
|
|
16
|
+
set userData(value: any);
|
|
15
17
|
setUserData(user: any): void;
|
|
16
18
|
formatDateTimeWithPrefs(): {
|
|
17
19
|
timeZone: any;
|