ms-time-sheet 0.0.1 → 0.0.3
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 +2610 -319
- package/fesm2022/ms-time-sheet.mjs +2694 -403
- package/fesm2022/ms-time-sheet.mjs.map +1 -1
- package/lib/ms-time-sheet.component.d.ts +336 -34
- package/package.json +1 -1
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { OnChanges, SimpleChanges, ElementRef, AfterViewInit,
|
|
2
|
-
import { SplitColumnsService } from './services/split-columns.service';
|
|
1
|
+
import { OnInit, OnChanges, SimpleChanges, ElementRef, AfterViewInit, EventEmitter, OnDestroy, ViewContainerRef, Injector } from '@angular/core';
|
|
3
2
|
import { CommonService } from './services/common.service';
|
|
4
3
|
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
|
|
5
|
-
import { BsDaterangepickerDirective } from 'ngx-bootstrap/datepicker';
|
|
4
|
+
import { BsDaterangepickerDirective, BsDaterangepickerConfig } from 'ngx-bootstrap/datepicker';
|
|
6
5
|
import { CdkDrag, CdkDragDrop, CdkDragEnd, CdkDragEnter, CdkDragExit, CdkDragMove, CdkDragSortEvent, CdkDragStart } from '@angular/cdk/drag-drop';
|
|
7
6
|
import { CdkDropList } from '@angular/cdk/drag-drop';
|
|
8
|
-
import { CopyServiceService } from './services/copy-service.service';
|
|
9
7
|
import * as i0 from "@angular/core";
|
|
10
8
|
interface CellPosition {
|
|
11
9
|
rowIndex: number;
|
|
@@ -14,14 +12,57 @@ interface CellPosition {
|
|
|
14
12
|
field: string;
|
|
15
13
|
key: string;
|
|
16
14
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
15
|
+
interface PerformanceMetrics {
|
|
16
|
+
renderTime: number;
|
|
17
|
+
scrollTime: number;
|
|
18
|
+
filterTime: number;
|
|
19
|
+
sortTime: number;
|
|
20
|
+
infiniteScrollTime: number;
|
|
21
|
+
lastRenderStart: number;
|
|
22
|
+
renderCount: number;
|
|
23
|
+
}
|
|
24
|
+
export declare class TimeSheetComponent implements OnInit, OnChanges, AfterViewInit, OnDestroy {
|
|
25
|
+
private injector;
|
|
26
|
+
private vcr;
|
|
24
27
|
expandedRows: Set<string>;
|
|
28
|
+
onShortBreakClick: EventEmitter<any>;
|
|
29
|
+
searchEvent: EventEmitter<any>;
|
|
30
|
+
private scrollSubject;
|
|
31
|
+
private filterSubject;
|
|
32
|
+
private dataSubject;
|
|
33
|
+
private viewportResizeSubject;
|
|
34
|
+
private destroy$;
|
|
35
|
+
private dataCache;
|
|
36
|
+
private computationCache;
|
|
37
|
+
private domCache;
|
|
38
|
+
private virtualScrollBuffer;
|
|
39
|
+
private maxRenderedItems;
|
|
40
|
+
private itemHeightCache;
|
|
41
|
+
private dynamicItemHeights;
|
|
42
|
+
private averageItemHeight;
|
|
43
|
+
private heightCalculationSamples;
|
|
44
|
+
private viewportHeight;
|
|
45
|
+
private scrollDirection;
|
|
46
|
+
private lastScrollTop;
|
|
47
|
+
private scrollVelocity;
|
|
48
|
+
private scrollAcceleration;
|
|
49
|
+
private dataLoadQueue;
|
|
50
|
+
private isLoadingData;
|
|
51
|
+
private lastScrollPosition;
|
|
52
|
+
private componentRefs;
|
|
53
|
+
private eventListeners;
|
|
54
|
+
private resizeObservers;
|
|
55
|
+
private timeouts;
|
|
56
|
+
private intervals;
|
|
57
|
+
isShortLeavePopoverVisible: boolean;
|
|
58
|
+
currentShortLeaveData: any[];
|
|
59
|
+
private hideTimeout;
|
|
60
|
+
hideShortBreakTooltip(): void;
|
|
61
|
+
showShortLeavePopover(event: MouseEvent, row: any): void;
|
|
62
|
+
hideShortLeavePopover(): void;
|
|
63
|
+
private intersectionObserver;
|
|
64
|
+
private lazyLoadCallbacks;
|
|
65
|
+
private viewportElements;
|
|
25
66
|
paginationConfig: any;
|
|
26
67
|
dataSet: any[];
|
|
27
68
|
columns: any[];
|
|
@@ -93,6 +134,9 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
93
134
|
isSingleDay: boolean;
|
|
94
135
|
leftPinnedBoxshadow: string;
|
|
95
136
|
rightPinnedBoxshadow: string;
|
|
137
|
+
enableAccordionShadow: boolean;
|
|
138
|
+
enableAccordionSeparators: boolean;
|
|
139
|
+
enableRowShading: boolean;
|
|
96
140
|
selectedRowsBackgroundColor: string;
|
|
97
141
|
nestedTableHeaderBAckgroundColor: string;
|
|
98
142
|
tableView: any[];
|
|
@@ -102,12 +146,19 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
102
146
|
showAscending: boolean;
|
|
103
147
|
showDescending: boolean;
|
|
104
148
|
showFilter: boolean;
|
|
105
|
-
showRowsGrouping: boolean
|
|
149
|
+
showRowsGrouping: boolean;
|
|
106
150
|
showAutosizeAllColumns: boolean;
|
|
107
151
|
showAutosizeThisColumn: boolean;
|
|
108
152
|
showChoseColumns: boolean;
|
|
109
153
|
showResetColumns: boolean;
|
|
110
154
|
};
|
|
155
|
+
timezonePrefs: any;
|
|
156
|
+
enableProgressiveLoading: boolean;
|
|
157
|
+
progressiveChunkSize: number;
|
|
158
|
+
progressiveDelay: number;
|
|
159
|
+
private progressiveLoadingChunks;
|
|
160
|
+
private progressiveLoadingIndex;
|
|
161
|
+
private isProgressiveLoading;
|
|
111
162
|
enableInfiniteScroll: boolean;
|
|
112
163
|
hasMoreData: boolean;
|
|
113
164
|
loadingMore: boolean;
|
|
@@ -118,18 +169,79 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
118
169
|
tablePresetConfig: EventEmitter<any>;
|
|
119
170
|
sortingOrderOptions: EventEmitter<any>;
|
|
120
171
|
createUpdateConfigListing: EventEmitter<any>;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
172
|
+
currentBreakTooltip: any;
|
|
173
|
+
currentShortBreakTooltip: any;
|
|
174
|
+
tooltipPosition: {
|
|
175
|
+
x: number;
|
|
176
|
+
y: number;
|
|
177
|
+
};
|
|
178
|
+
manualLogsTooltipVisible: boolean;
|
|
179
|
+
manualLogsTooltipPosition: {
|
|
180
|
+
x: number;
|
|
181
|
+
y: number;
|
|
182
|
+
};
|
|
183
|
+
currentManualLogs: any[];
|
|
184
|
+
noShortLeaveDetail: any;
|
|
185
|
+
noShortLeaveLeft: any;
|
|
186
|
+
showBreakTooltip(event: MouseEvent, breakItem: any): void;
|
|
187
|
+
showShortBreakTooltip(event: MouseEvent, shortBreak: any, type?: string): void;
|
|
188
|
+
setPosition(event: MouseEvent): void;
|
|
189
|
+
hideBreakTooltip(): void;
|
|
190
|
+
getBreakTooltip(breakItem: any): string;
|
|
191
|
+
hasManualLogs(row: any): boolean;
|
|
192
|
+
preventManualLogsTooltipHide(): void;
|
|
124
193
|
groupedColumns: any[];
|
|
125
194
|
activeCol: any;
|
|
126
195
|
activeFilterCell: any;
|
|
127
196
|
showActionsDropDown: boolean;
|
|
128
197
|
sideMenuVisible: boolean;
|
|
129
198
|
pivotMode: boolean;
|
|
199
|
+
viewMode: 'standard' | 'compact' | 'detailed' | 'timeline' | 'calendar' | 'card' | 'heatmap';
|
|
200
|
+
togglePivotMode(): void;
|
|
201
|
+
toggleViewMode(mode: 'standard' | 'compact' | 'detailed' | 'timeline' | 'calendar' | 'card' | 'heatmap'): void;
|
|
202
|
+
private applyViewMode;
|
|
203
|
+
private enablePivotMode;
|
|
204
|
+
private disablePivotMode;
|
|
130
205
|
columnSearch: string;
|
|
131
206
|
expandAllAccordians: boolean;
|
|
132
207
|
currentOpenedSideMenue: 'cols' | 'filtrs' | null;
|
|
208
|
+
detailSortField: string | null;
|
|
209
|
+
detailSortOrder: 'asc' | 'desc' | null;
|
|
210
|
+
themes: {
|
|
211
|
+
white: {
|
|
212
|
+
bodyBackgroundColor: string;
|
|
213
|
+
headerBackgroundColor: string;
|
|
214
|
+
bodyTextColor: string;
|
|
215
|
+
headerTextColor: string;
|
|
216
|
+
checkboxesBackgroundColor: string;
|
|
217
|
+
dropdownsBackgroundColor: string;
|
|
218
|
+
rowHoverColor: string;
|
|
219
|
+
selectedRowsBackgroundColor: string;
|
|
220
|
+
evenRowsBackgroundColor: string;
|
|
221
|
+
oddRowsBackgroundColor: string;
|
|
222
|
+
leftPinnedBackgroundColor: string;
|
|
223
|
+
rightPinnedBackgroundColor: string;
|
|
224
|
+
sidemenuBackgroundColor: string;
|
|
225
|
+
};
|
|
226
|
+
blue: {
|
|
227
|
+
bodyBackgroundColor: string;
|
|
228
|
+
headerBackgroundColor: string;
|
|
229
|
+
bodyTextColor: string;
|
|
230
|
+
headerTextColor: string;
|
|
231
|
+
checkboxesBackgroundColor: string;
|
|
232
|
+
dropdownsBackgroundColor: string;
|
|
233
|
+
rowHoverColor: string;
|
|
234
|
+
selectedRowsBackgroundColor: string;
|
|
235
|
+
evenRowsBackgroundColor: string;
|
|
236
|
+
oddRowsBackgroundColor: string;
|
|
237
|
+
leftPinnedBackgroundColor: string;
|
|
238
|
+
rightPinnedBackgroundColor: string;
|
|
239
|
+
sidemenuBackgroundColor: string;
|
|
240
|
+
};
|
|
241
|
+
};
|
|
242
|
+
currentTheme: string;
|
|
243
|
+
showThemeSelector: boolean;
|
|
244
|
+
customThemeColor: string;
|
|
133
245
|
originalColumns: any[];
|
|
134
246
|
originalDataSet: any[];
|
|
135
247
|
activeTopButton: string | null;
|
|
@@ -149,9 +261,50 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
149
261
|
subMenueOpendField: string;
|
|
150
262
|
fontFamilies: string[];
|
|
151
263
|
fontSizes: string[];
|
|
152
|
-
|
|
264
|
+
private columnService;
|
|
265
|
+
private cdr;
|
|
266
|
+
commonSevice: CommonService;
|
|
267
|
+
private elementRef;
|
|
268
|
+
private ngZone;
|
|
269
|
+
private copyService;
|
|
270
|
+
removeCharacters: {
|
|
271
|
+
find: string;
|
|
272
|
+
replace: string;
|
|
273
|
+
}[];
|
|
274
|
+
applyTheme(themeName: string): void;
|
|
275
|
+
applyBackendThemeOrDefault(): void;
|
|
276
|
+
applyCustomTheme(): void;
|
|
277
|
+
private isLightColor;
|
|
278
|
+
private adjustBrightness;
|
|
279
|
+
private hexToRgb;
|
|
280
|
+
toggleThemeSelector(): void;
|
|
281
|
+
selectTheme(themeName: string): void;
|
|
282
|
+
transformStatus(status: string): string;
|
|
283
|
+
constructor(injector: Injector, vcr: ViewContainerRef);
|
|
284
|
+
ngOnInit(): void;
|
|
285
|
+
private initializeLazyModules;
|
|
286
|
+
private initializeReactiveStreams;
|
|
153
287
|
cellText: ElementRef;
|
|
154
288
|
ngAfterViewInit(): Promise<void>;
|
|
289
|
+
private setupOptimizedScrollListeners;
|
|
290
|
+
private updateScrollMetrics;
|
|
291
|
+
private lastScrollTime;
|
|
292
|
+
private previousVelocity;
|
|
293
|
+
private handleOptimizedScroll;
|
|
294
|
+
private updateItemHeightEstimations;
|
|
295
|
+
private calculateAdaptiveOverscan;
|
|
296
|
+
private calculateStartIndex;
|
|
297
|
+
private calculateTranslateY;
|
|
298
|
+
private previousScrollDirection;
|
|
299
|
+
private handleAdvancedInfiniteScroll;
|
|
300
|
+
private adaptiveDataWindowing;
|
|
301
|
+
private isPrefetching;
|
|
302
|
+
private prefetchData;
|
|
303
|
+
private prefetchNextBatch;
|
|
304
|
+
private handleOptimizedFilter;
|
|
305
|
+
private handleViewportResize;
|
|
306
|
+
private loadMoreDataOptimized;
|
|
307
|
+
private optimizeDataWindow;
|
|
155
308
|
ngOnChanges(changes: SimpleChanges): Promise<void>;
|
|
156
309
|
applyFilteroptionList(): Promise<void>;
|
|
157
310
|
leftPinnedColumns: any[];
|
|
@@ -168,11 +321,95 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
168
321
|
centerPinnedHeader: ElementRef<HTMLDivElement>;
|
|
169
322
|
rightPinnedHeader: ElementRef<HTMLDivElement>;
|
|
170
323
|
columnsGroupedBox: ElementRef<HTMLDivElement>;
|
|
324
|
+
private cachedElements;
|
|
325
|
+
private resizeObserver;
|
|
326
|
+
private elementCacheTimeout;
|
|
327
|
+
private columnIndex;
|
|
328
|
+
private rowIndex;
|
|
329
|
+
private visibleColumnCache;
|
|
330
|
+
private domQueryCache;
|
|
331
|
+
private domQueryStats;
|
|
332
|
+
private cacheCleanupInterval;
|
|
333
|
+
private readonly CACHE_TTL;
|
|
334
|
+
private readonly MAX_CACHE_SIZE;
|
|
335
|
+
private getOptimizedElements;
|
|
336
|
+
private evictOldestCacheEntries;
|
|
337
|
+
private getOptimizedElement;
|
|
338
|
+
private invalidateDomCache;
|
|
339
|
+
private startCacheCleanup;
|
|
340
|
+
private stopCacheCleanup;
|
|
341
|
+
private getCachedElements;
|
|
342
|
+
private clearElementCache;
|
|
343
|
+
private buildColumnIndex;
|
|
344
|
+
private buildRowIndex;
|
|
345
|
+
private getColumnByField;
|
|
346
|
+
private getRowIndex;
|
|
347
|
+
private setDataCache;
|
|
348
|
+
private getDataCache;
|
|
349
|
+
private setComputationCache;
|
|
350
|
+
private getComputationCache;
|
|
351
|
+
private templateExpressionCache;
|
|
352
|
+
memoizeTemplateExpression(key: string, expression: () => any, ttl?: number): any;
|
|
353
|
+
clearTemplateCache(): void;
|
|
354
|
+
private zoneOptimizationEnabled;
|
|
355
|
+
private microtaskQueue;
|
|
356
|
+
private isProcessingMicrotasks;
|
|
357
|
+
private scheduleMicrotask;
|
|
358
|
+
private processMicrotaskQueue;
|
|
359
|
+
private weakRefRegistry;
|
|
360
|
+
registerForAdvancedCleanup(obj: object, cleanup: () => void): void;
|
|
361
|
+
cleanupWeakRefs(): void;
|
|
362
|
+
private hydrationQueue;
|
|
363
|
+
private isHydrating;
|
|
364
|
+
queueForHydration(callback: () => void, priority?: number): void;
|
|
365
|
+
private startProgressiveHydration;
|
|
171
366
|
centerFakeScrollbar: ElementRef<HTMLDivElement>;
|
|
172
367
|
updateColumnWidthsAndGroups(columns?: any): Promise<void>;
|
|
173
368
|
refreshPreviewColumns(columns?: any): Promise<void>;
|
|
174
369
|
SetColumnsDefaultWidth(): Promise<void>;
|
|
175
370
|
setSectionsWidth(): void;
|
|
371
|
+
private getCachedElement;
|
|
372
|
+
private performanceMetrics;
|
|
373
|
+
private startPerformanceTimer;
|
|
374
|
+
private endPerformanceTimer;
|
|
375
|
+
private initializeProgressiveLoading;
|
|
376
|
+
private loadNextProgressiveChunk;
|
|
377
|
+
private finalizeProgressiveLoading;
|
|
378
|
+
private processDataSetDirectly;
|
|
379
|
+
private reapplyGroupingAfterDataChange;
|
|
380
|
+
private profilerMarks;
|
|
381
|
+
private profilerMeasures;
|
|
382
|
+
private performanceThresholds;
|
|
383
|
+
metrics: PerformanceMetrics;
|
|
384
|
+
startProfiling(markName: string): void;
|
|
385
|
+
endProfiling(markName: string): number;
|
|
386
|
+
private checkPerformanceThresholds;
|
|
387
|
+
getDetailedPerformanceReport(): {
|
|
388
|
+
metrics: PerformanceMetrics;
|
|
389
|
+
measures: Map<string, {
|
|
390
|
+
start: number;
|
|
391
|
+
end: number;
|
|
392
|
+
duration: number;
|
|
393
|
+
}>;
|
|
394
|
+
domCacheStats: {
|
|
395
|
+
size: number;
|
|
396
|
+
hitRate: number;
|
|
397
|
+
totalQueries: number;
|
|
398
|
+
};
|
|
399
|
+
memoryUsage: any;
|
|
400
|
+
};
|
|
401
|
+
private getMemoryUsage;
|
|
402
|
+
getOptimizationSuggestions(): string[];
|
|
403
|
+
getPerformanceMetrics(): PerformanceMetrics;
|
|
404
|
+
resetPerformanceMetrics(): void;
|
|
405
|
+
private initializeDataStructures;
|
|
406
|
+
private initializeViewportLazyLoading;
|
|
407
|
+
private initializeServiceWorkerCaching;
|
|
408
|
+
private setupAdvancedCaching;
|
|
409
|
+
private createCacheStrategy;
|
|
410
|
+
private precacheCriticalAssets;
|
|
411
|
+
registerForLazyLoading(elementId: string, callback: () => void): void;
|
|
412
|
+
isElementInViewport(element: Element): boolean;
|
|
176
413
|
onLeftBodyScroll(): void;
|
|
177
414
|
onRightBodyScroll(): void;
|
|
178
415
|
fakeScrollbarScrollLeft: number;
|
|
@@ -205,6 +442,9 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
205
442
|
private markColumnAsGrouped;
|
|
206
443
|
groupBy(col: any): Promise<void>;
|
|
207
444
|
groupDataAsync(data: any[], groupFields: string[]): Promise<any[]>;
|
|
445
|
+
private processHeavyComputationsWithWorker;
|
|
446
|
+
private processHeavyComputations;
|
|
447
|
+
private groupDataWithWorker;
|
|
208
448
|
chooseColumns(): void;
|
|
209
449
|
resetColumns(): void;
|
|
210
450
|
clearFilter(col: any): void;
|
|
@@ -258,17 +498,22 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
258
498
|
private flattenGroupedRows;
|
|
259
499
|
assignVirtualIndexes(data: any[]): any[];
|
|
260
500
|
updateVisibleRows(scrollTop: number): void;
|
|
501
|
+
private updateVisibleRowsOptimized;
|
|
261
502
|
trackByRenderedIndex: (i: number, _row: any) => number;
|
|
262
503
|
private isSyncingFromMain;
|
|
263
504
|
private isSyncingFromFake;
|
|
264
505
|
private mainScrollRaf;
|
|
265
506
|
trackById(index: number, item: any): any;
|
|
507
|
+
trackByColumnField(index: number, item: any): any;
|
|
508
|
+
trackByColumn(index: number, item: any): any;
|
|
509
|
+
trackByRow(index: number, item: any): any;
|
|
510
|
+
trackByGroupedRow(index: number, item: any): any;
|
|
266
511
|
flattenedData: any[];
|
|
267
512
|
updateFlattenedData(): void;
|
|
268
513
|
private fakeScrollRaf;
|
|
514
|
+
private autoScrollInterval;
|
|
269
515
|
translateY: number;
|
|
270
516
|
loadMore: EventEmitter<void>;
|
|
271
|
-
onMainScroll(event: Event): void;
|
|
272
517
|
get isScrollbarVisible(): boolean;
|
|
273
518
|
onMainFakeScroll(event: Event): void;
|
|
274
519
|
viewportRows: number;
|
|
@@ -394,7 +639,7 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
394
639
|
deatilsList: any;
|
|
395
640
|
openExpendIndex: any;
|
|
396
641
|
positionedYet: boolean;
|
|
397
|
-
onRightClick(event: MouseEvent | TouchEvent
|
|
642
|
+
onRightClick(event: MouseEvent | TouchEvent, item: any, context?: 'main' | 'accordion-parent' | 'accordion-child'): boolean;
|
|
398
643
|
onActionClick(action: string): void;
|
|
399
644
|
onVerifyClick(type: string): void;
|
|
400
645
|
getCellClasses(column: any, value: any): string;
|
|
@@ -403,6 +648,7 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
403
648
|
downloadCsv(): void;
|
|
404
649
|
onFontChange(): void;
|
|
405
650
|
onGlobalSearch(): void;
|
|
651
|
+
onSearchReset(): void;
|
|
406
652
|
checkFilterChangesEffect(): any;
|
|
407
653
|
selectedCells: any[];
|
|
408
654
|
selectedKeys: Set<string>;
|
|
@@ -444,7 +690,6 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
444
690
|
rowSelectedIndexes: Set<number>;
|
|
445
691
|
rowSelecting: boolean;
|
|
446
692
|
rowSelectionStartIndex: number | null;
|
|
447
|
-
autoScrollInterval: any;
|
|
448
693
|
get firstSelectedRow(): number | null;
|
|
449
694
|
get lastSelectedRow(): number | null;
|
|
450
695
|
onRowMouseDown(index: number, event: MouseEvent): void;
|
|
@@ -513,19 +758,18 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
513
758
|
tooltipEditing: boolean;
|
|
514
759
|
currentTooltipField: string | null;
|
|
515
760
|
currentTooltipData: any;
|
|
516
|
-
tooltipPosition: {
|
|
517
|
-
x: number;
|
|
518
|
-
y: number;
|
|
519
|
-
};
|
|
520
761
|
enableDetailEdits(row: any, dataItem: any, col: any): void;
|
|
521
762
|
disableDetailEdits(row: any, dataItem: any, col: any): void;
|
|
522
763
|
tooltipElement: HTMLElement | null;
|
|
523
764
|
getDisplayValue(dataItem: any, field: string): string;
|
|
765
|
+
getFormattedCellValue(row: any, col: any): any;
|
|
524
766
|
enableDetailEditss(row: any, dataItem: any, col: any, breakItem?: any): void;
|
|
525
767
|
disableDetailEditss(row: any, dataItem: any, col: any): void;
|
|
526
768
|
isDetailEditings(row: any, dataItem: any, col: any): boolean;
|
|
527
769
|
isActiveDetailCells(row: any, dataItem: any, col: any): boolean;
|
|
528
770
|
showCustomTooltip(event: MouseEvent, dataItem: any, field: string): void;
|
|
771
|
+
private currentTooltip;
|
|
772
|
+
getEmployeeNameTitle(row: any): string;
|
|
529
773
|
getTooltipContent(dataItem: any, field: string): string;
|
|
530
774
|
getBreakColor(type: string): string;
|
|
531
775
|
minuteOptions: number[];
|
|
@@ -539,11 +783,18 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
539
783
|
private customTooltipHideTimeout;
|
|
540
784
|
private restrictionTooltipHideTimeout;
|
|
541
785
|
private manualLogsTooltipHideTimeout;
|
|
542
|
-
|
|
543
|
-
|
|
786
|
+
showManualLogsModal: boolean;
|
|
787
|
+
showManualLogsTooltipModal: boolean;
|
|
788
|
+
selectedManualLogs: any[];
|
|
789
|
+
selectedManualLogsRow: any;
|
|
790
|
+
hideTooltipTimeout: any;
|
|
791
|
+
openManualLogsModal(event: MouseEvent, parentRow: any): void;
|
|
792
|
+
showManualLogsTooltip(event: MouseEvent, row: any, d: any): void;
|
|
544
793
|
hideManualLogsTooltip(): void;
|
|
794
|
+
hideRestrictionTooltip(): void;
|
|
795
|
+
closeManualLogsModal(): void;
|
|
545
796
|
preventRestrictionTooltipHide(): void;
|
|
546
|
-
|
|
797
|
+
preventManualLogsModalHide(): void;
|
|
547
798
|
hideCustomTooltip(): void;
|
|
548
799
|
preventCustomTooltipHide(): void;
|
|
549
800
|
restrictionTooltipVisible: boolean;
|
|
@@ -552,12 +803,7 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
552
803
|
y: number;
|
|
553
804
|
};
|
|
554
805
|
currentRestrictionLogs: any[];
|
|
555
|
-
|
|
556
|
-
manualLogsTooltipPosition: {
|
|
557
|
-
x: number;
|
|
558
|
-
y: number;
|
|
559
|
-
};
|
|
560
|
-
currentManualLogs: any[];
|
|
806
|
+
currentManualLogsRow: any;
|
|
561
807
|
isDetailMenueHidden: boolean;
|
|
562
808
|
openDetailThreeDotsMenus(event: MouseEvent, col: any, row: any): void;
|
|
563
809
|
sortDetailAsc(col: any, row: any): void;
|
|
@@ -581,11 +827,14 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
581
827
|
groupDetailData(row: any): void;
|
|
582
828
|
ungroupDetailColumn(col: any, row: any): void;
|
|
583
829
|
toggleExpand(row: any): void;
|
|
584
|
-
toggleDetailSideMenu(row: any, tab: 'cols'
|
|
830
|
+
toggleDetailSideMenu(row: any, tab: 'cols'): void;
|
|
585
831
|
onDetailColumnVisibilityChange(row: any): void;
|
|
586
832
|
applyDetailRowFilter(row: any): void;
|
|
833
|
+
applySideMenuFilters(): void;
|
|
834
|
+
resetSideMenuFilters(): void;
|
|
587
835
|
onResizeDetailColumn(event: MouseEvent, row: any, col: any): void;
|
|
588
836
|
getDetailViewportHeight(row: any): number;
|
|
837
|
+
private getAccordionRowHeight;
|
|
589
838
|
onDetailLeftScroll(event: Event, row: any): void;
|
|
590
839
|
onDetailRightScroll(event: Event, row: any): void;
|
|
591
840
|
onDetailCenterScroll(event: Event, row: any): void;
|
|
@@ -619,8 +868,61 @@ export declare class TimeSheetComponent implements OnChanges, AfterViewInit {
|
|
|
619
868
|
private findFocusedDetailRowAndSection;
|
|
620
869
|
private clearOtherDetailSections;
|
|
621
870
|
get hasOpenAccordion(): boolean;
|
|
871
|
+
private hasAccordionStateChanged;
|
|
872
|
+
selectRange(range: Date[], drp: BsDaterangepickerDirective): void;
|
|
873
|
+
onClear(drp: BsDaterangepickerDirective): void;
|
|
874
|
+
onApply(drp: BsDaterangepickerDirective): void;
|
|
875
|
+
bsRangeValue: Date[];
|
|
876
|
+
showPicker: boolean;
|
|
877
|
+
bsConfig: Partial<BsDaterangepickerConfig>;
|
|
878
|
+
private getCustomRanges;
|
|
879
|
+
onRangeChange(value: Date[]): void;
|
|
880
|
+
clearDateRange(): void;
|
|
622
881
|
togglePicker(picker: BsDaterangepickerDirective): void;
|
|
882
|
+
onRangeSelected(range: (Date | undefined)[] | undefined, picker: BsDaterangepickerDirective): void;
|
|
883
|
+
onMainScroll(event: Event): void;
|
|
884
|
+
ngOnDestroy(): void;
|
|
885
|
+
emailClicked: EventEmitter<void>;
|
|
886
|
+
addAttendanceClicked: EventEmitter<void>;
|
|
887
|
+
isStartDateNotEqualToEndDate: () => boolean;
|
|
888
|
+
onEmailClick(): void;
|
|
889
|
+
onAddAttendanceClick(): void;
|
|
890
|
+
onBackPayClick(): void;
|
|
891
|
+
onGrandTotalClick(): void;
|
|
892
|
+
onPrintClick(): void;
|
|
893
|
+
onExportClick(): void;
|
|
894
|
+
onExportDailyClick(): void;
|
|
895
|
+
backPayClicked: EventEmitter<void>;
|
|
896
|
+
grandTotalClicked: EventEmitter<void>;
|
|
897
|
+
printClicked: EventEmitter<void>;
|
|
898
|
+
exportClicked: EventEmitter<void>;
|
|
899
|
+
exportDailyClicked: EventEmitter<void>;
|
|
900
|
+
get areDatesSelectedAndEqual(): boolean;
|
|
901
|
+
isArray(value: any): boolean;
|
|
902
|
+
getTimelineHours(): string[];
|
|
903
|
+
getTimePosition(timeString: string): number;
|
|
904
|
+
getWorkDurationWidth(row: any): number;
|
|
905
|
+
getBreakDurationWidth(breakItem: any): number;
|
|
906
|
+
getCurrentMonthYear(): string;
|
|
907
|
+
getCalendarWeeks(): any[][];
|
|
908
|
+
getEntriesForDate(date: Date): any[];
|
|
909
|
+
getEntryColor(entry: any): string;
|
|
910
|
+
getEntryTooltip(entry: any): string;
|
|
911
|
+
getEntryTime(entry: any): string;
|
|
912
|
+
calculateTotalHours(row: any): string;
|
|
913
|
+
getAvatarColor(name: string): string;
|
|
914
|
+
getInitialss(name: string): string;
|
|
915
|
+
getStatusBadgeClass(status: string): string;
|
|
916
|
+
getHeatmapMonths(): string[];
|
|
917
|
+
getHeatmapWeeks(): any[][];
|
|
918
|
+
getActivityForDate(date: Date): number;
|
|
919
|
+
getHeatmapColor(activity: number): string;
|
|
920
|
+
getHeatmapTooltip(day: any): string;
|
|
921
|
+
shortLeaveTooltipPosition: {
|
|
922
|
+
x: number;
|
|
923
|
+
y: number;
|
|
924
|
+
};
|
|
623
925
|
static ɵfac: i0.ɵɵFactoryDeclaration<TimeSheetComponent, never>;
|
|
624
|
-
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; }; "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; }; "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; }; "selectedRowsBackgroundColor": { "alias": "selectedRowsBackgroundColor"; "required": false; }; "nestedTableHeaderBAckgroundColor": { "alias": "nestedTableHeaderBAckgroundColor"; "required": false; }; "tableView": { "alias": "tableView"; "required": false; }; "columnThreedotsMunuConfig": { "alias": "columnThreedotsMunuConfig"; "required": false; }; "enableInfiniteScroll": { "alias": "enableInfiniteScroll"; "required": false; }; "hasMoreData": { "alias": "hasMoreData"; "required": false; }; "loadingMore": { "alias": "loadingMore"; "required": false; }; "detailsIconPosition": { "alias": "detailsIconPosition"; "required": false; }; "detailsPosition": { "alias": "detailsPosition"; "required": false; }; }, { "loadMoreData": "loadMoreData"; "changeLayout": "changeLayout"; "filterOptions": "filterOptions"; "genericEvent": "genericEvent"; "tablePresetConfig": "tablePresetConfig"; "sortingOrderOptions": "sortingOrderOptions"; "createUpdateConfigListing": "createUpdateConfigListing"; "loadMore": "loadMore"; }, never, never, true, never>;
|
|
926
|
+
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; }; "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; }; "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; }; "enableInfiniteScroll": { "alias": "enableInfiniteScroll"; "required": false; }; "hasMoreData": { "alias": "hasMoreData"; "required": false; }; "loadingMore": { "alias": "loadingMore"; "required": false; }; "detailsIconPosition": { "alias": "detailsIconPosition"; "required": false; }; "detailsPosition": { "alias": "detailsPosition"; "required": false; }; "isStartDateNotEqualToEndDate": { "alias": "isStartDateNotEqualToEndDate"; "required": false; }; }, { "onShortBreakClick": "onShortBreakClick"; "searchEvent": "searchEvent"; "loadMoreData": "loadMoreData"; "changeLayout": "changeLayout"; "filterOptions": "filterOptions"; "genericEvent": "genericEvent"; "tablePresetConfig": "tablePresetConfig"; "sortingOrderOptions": "sortingOrderOptions"; "createUpdateConfigListing": "createUpdateConfigListing"; "loadMore": "loadMore"; "emailClicked": "emailClicked"; "addAttendanceClicked": "addAttendanceClicked"; "backPayClicked": "backPayClicked"; "grandTotalClicked": "grandTotalClicked"; "printClicked": "printClicked"; "exportClicked": "exportClicked"; "exportDailyClicked": "exportDailyClicked"; }, never, never, true, never>;
|
|
625
927
|
}
|
|
626
928
|
export {};
|