@annalib/anna-core 5.0.13 → 5.0.15

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 (26) hide show
  1. package/esm2020/lib/anna-core-shared-lib/constants/shared.constant.mjs +3 -2
  2. package/esm2020/lib/anna-core-shared-lib/models/anna-manage-users.model.mjs +8 -0
  3. package/esm2020/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.mjs +1 -1
  4. package/esm2020/lib/anna-core-shared-lib/models/anna-sort.model.mjs +7 -2
  5. package/esm2020/lib/anna-core-shared-lib/services/anna-filter.service.mjs +7 -5
  6. package/esm2020/lib/anna-core-shared-lib/services/anna-generic-table.service.mjs +84 -8
  7. package/esm2020/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +88 -51
  8. package/esm2020/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.mjs +6 -4
  9. package/esm2020/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.mjs +4 -4
  10. package/esm2020/public-api.mjs +2 -1
  11. package/fesm2015/annalib-anna-core.mjs +232 -103
  12. package/fesm2015/annalib-anna-core.mjs.map +1 -1
  13. package/fesm2020/annalib-anna-core.mjs +231 -102
  14. package/fesm2020/annalib-anna-core.mjs.map +1 -1
  15. package/lib/anna-core-shared-lib/constants/shared.constant.d.ts +2 -1
  16. package/lib/anna-core-shared-lib/models/anna-manage-users.model.d.ts +6 -0
  17. package/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.d.ts +1 -1
  18. package/lib/anna-core-shared-lib/models/anna-sort.model.d.ts +5 -0
  19. package/lib/anna-core-shared-lib/services/anna-generic-table.service.d.ts +18 -4
  20. package/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +19 -8
  21. package/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.d.ts +2 -2
  22. package/package.json +1 -1
  23. package/public-api.d.ts +1 -0
  24. package/src/lib/anna-common-scss/_bootstrap-tooltip.scss +25 -0
  25. package/src/lib/anna-common-scss/_date-picker-form.scss +72 -0
  26. package/src/lib/anna-common-scss/_generic-table-common.scss +59 -0
@@ -8,7 +8,8 @@ export declare class Constants {
8
8
  static readonly ACTIVE_USER_STATUS = "active";
9
9
  static readonly DELETED_USER_STATUS = "deleted";
10
10
  static readonly INACTIVE_USER_STATUS = "inactive";
11
- static readonly OGAdminRole = "OG-admin";
11
+ static readonly OGAdminRole = "Ownership Group Admin";
12
+ static readonly ASARole = "Anna Station Admin";
12
13
  static readonly dollars = "$";
13
14
  }
14
15
  export declare class ErrorCodes {
@@ -0,0 +1,6 @@
1
+ export declare enum UserActivationStatus {
2
+ activationEmailSent = "ActivationEmailSent",
3
+ activationEmailReSent = "ActivationEmailResent",
4
+ ResendActivationEmail = "ResendActivationEmail",
5
+ lastSignedIn = "LastSignedIn"
6
+ }
@@ -20,7 +20,7 @@ export interface IHeaderInfo {
20
20
  tooltip?: ITooltip;
21
21
  joinedFilterSortObjectKeys?: string;
22
22
  }
23
- declare type DATATYPE = "CHECKBOX" | "ICON" | "STRING" | "RADIO" | "" | "SVG_ICON" | "TEXT_ACTIONS" | "CLICKABLE_DATA";
23
+ declare type DATATYPE = "CHECKBOX" | "ICON" | "STRING" | "RADIO" | "" | "SVG_ICON" | "TEXT_ACTIONS" | "CLICKABLE_DATA" | "STRING__TEXT_ACTION";
24
24
  declare type FILTERTYPE = "CHECKBOX" | "SLIDER" | "DATE" | "TIME" | "WEEK";
25
25
  export interface ITotalRowInfo {
26
26
  colspan: number;
@@ -4,3 +4,8 @@ export interface SortOption {
4
4
  isOptionActive: boolean;
5
5
  text: string;
6
6
  }
7
+ export declare enum SortTypeEnum {
8
+ DEFAULT = "DEFAULT",
9
+ ASC = "ASC",
10
+ DESC = "DESC"
11
+ }
@@ -1,14 +1,28 @@
1
+ import { ActivatedRoute, Router } from '@angular/router';
1
2
  import { Subject } from "rxjs";
2
3
  import { AnnaFilterService } from "./anna-filter.service";
3
4
  import { AnnaSortService } from "./anna-sort.service";
4
5
  import * as i0 from "@angular/core";
5
- export declare class AnnaGenericTableService {
6
+ export declare class AnnaGtHelperService {
6
7
  private annaFilterService;
8
+ private router;
9
+ private route;
7
10
  private annaSortService;
8
11
  virtualScrollSubject: Subject<unknown>;
9
- constructor(annaFilterService: AnnaFilterService, annaSortService: AnnaSortService);
12
+ constructor(annaFilterService: AnnaFilterService, router: Router, route: ActivatedRoute, annaSortService: AnnaSortService);
10
13
  calculateNumberOfSkeletonColumnsForTable(tableHeaders: any[]): number[][];
11
14
  initColumnFilterAndSorting(): void;
12
- static ɵfac: i0.ɵɵFactoryDeclaration<AnnaGenericTableService, never>;
13
- static ɵprov: i0.ɵɵInjectableDeclaration<AnnaGenericTableService>;
15
+ enableOrDisableClearAllBtn(): boolean;
16
+ updateFiltersInURL(): void;
17
+ prepareQueryParamsOnFilter(): {
18
+ appliedFilters: string[];
19
+ selectedFilterData: string;
20
+ sortState: string;
21
+ };
22
+ initTableFilters(clonedTableData: any): void;
23
+ initFilters(): void;
24
+ setDataAsPerPersistingFilter(isPersistingFilter: boolean, clonedTable: any, filters: any): any;
25
+ callSort(usersTable: any): any;
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<AnnaGtHelperService, never>;
27
+ static ɵprov: i0.ɵɵInjectableDeclaration<AnnaGtHelperService>;
14
28
  }
@@ -9,27 +9,26 @@ import { SortType } from '../../../anna-core-shared-lib/models/anna-sort.model';
9
9
  import { radioButtonModel, TooltipModel } from '../../../anna-core-shared-lib/models/anna-tooltip.model';
10
10
  import { AnnaSortService } from '../../../anna-core-shared-lib/services/anna-sort.service';
11
11
  import { AnnaFilterService } from '../../../anna-core-shared-lib/services/anna-filter.service';
12
- import { AnnaGenericTableService } from '../../../anna-core-shared-lib/services/anna-generic-table.service';
13
12
  import { BehaviorSubject } from 'rxjs';
13
+ import { UserActivationStatus } from '../../../anna-core-shared-lib/models/anna-manage-users.model';
14
14
  import * as i0 from "@angular/core";
15
15
  export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnChanges, AfterViewChecked {
16
16
  private cdRef;
17
17
  private annaSortService;
18
18
  annaDateTimeFormatService: AnnaDateTimeFormatService;
19
19
  annaFilterService: AnnaFilterService;
20
- private annaGenericTableService;
21
20
  showSkeletonLoading: boolean;
22
21
  tableHeaders: IGtTableHeader[];
23
22
  tableData: any[];
24
23
  clonedTableData: any[];
25
- numberOfSkeletonRows: number[];
26
- numberOfSkeletonColumns: number[][];
27
24
  gtGeneralConfig: IGtGeneralConfig;
28
25
  totalRowInfo?: ITotalRowInfo[];
29
26
  gtDimension: {
30
27
  rowHeight: number;
31
- tableHeight: string;
32
28
  headerHeight: number;
29
+ dataOnTopHeight: number;
30
+ marginFromBottom: number;
31
+ tableHeight?: string;
33
32
  };
34
33
  tableClass: string;
35
34
  maximumRowsWhichCanBeRenderedWithoutScroll: number;
@@ -38,6 +37,7 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
38
37
  downloadInProgress: boolean;
39
38
  percentDone: number;
40
39
  starredInProgress: boolean;
40
+ clickableRow: boolean;
41
41
  toggleCheckbox: EventEmitter<any>;
42
42
  toggleRowCheckbox: EventEmitter<any>;
43
43
  toggleHeaderCheckbox: EventEmitter<any>;
@@ -53,6 +53,8 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
53
53
  gtTextActionClicked: EventEmitter<any>;
54
54
  gtViewDetailClicked: EventEmitter<any>;
55
55
  downloadSpotDetails: EventEmitter<any>;
56
+ clickableDataClicked: EventEmitter<any>;
57
+ numberOfSkeletonRows: number[][];
56
58
  tableDataWrapper: any[];
57
59
  rowChecked: boolean;
58
60
  isAllRowsChecked: boolean;
@@ -147,10 +149,17 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
147
149
  heightOfCheckboxTooltipFilter: number;
148
150
  isNoDataToDisplaySubject$: BehaviorSubject<boolean>;
149
151
  selectedStarredOrderId: string;
150
- constructor(cdRef: ChangeDetectorRef, annaSortService: AnnaSortService, annaDateTimeFormatService: AnnaDateTimeFormatService, annaFilterService: AnnaFilterService, annaGenericTableService: AnnaGenericTableService);
152
+ userActionTableMetaData: {
153
+ lastEmailResentAt: string;
154
+ passwordValidity: string;
155
+ status: UserActivationStatus;
156
+ };
157
+ UserActivationStatus: typeof UserActivationStatus;
158
+ constructor(cdRef: ChangeDetectorRef, annaSortService: AnnaSortService, annaDateTimeFormatService: AnnaDateTimeFormatService, annaFilterService: AnnaFilterService);
151
159
  ngAfterViewChecked(): void;
152
160
  ngOnInit(): void;
153
161
  ngOnChanges(changes: SimpleChanges): void;
162
+ setTableHeight(): void;
154
163
  trackByFn(index: number): number;
155
164
  setTooltipRadioNames(): void;
156
165
  generateTableDataWrapper(): void;
@@ -230,7 +239,6 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
230
239
  svgIconClicked(data: GtColumnIconEmittedData): void;
231
240
  textActionClicked(rowData: any, id: number): void;
232
241
  viewDetailsClicked(rowData: any): void;
233
- setColumnSortStateMap(): void;
234
242
  storeSortTypeInTempVariable(event: SortType): void;
235
243
  unCheckAllCheckbox(): void;
236
244
  selectAllCheckbox(): void;
@@ -254,6 +262,7 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
254
262
  checkIfSliderTooltipIsFiltered(): boolean;
255
263
  setInitialValueMapForSliderFilter(): void;
256
264
  checkIfSortingChanged(): boolean;
265
+ getColumnSortStateForSelectedRadio(): string;
257
266
  disableApplyButtonOfSelectedFilter(): void;
258
267
  disableCheckboxFilterApplyButton(): void;
259
268
  trackByTooltipModelId(index: number, item: TooltipModel): number;
@@ -266,6 +275,8 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
266
275
  setInitialRowsForTable(): void;
267
276
  spotDetailsDownloadClicked(parentChildOrTotalRow: "DATAROW" | "TOTALROW", rowdata?: any): void;
268
277
  tableContainerScrolled(event: any): void;
278
+ mouseEnterOnStringTextActionType(rowData: any): void;
279
+ onClickableDataClicked(Rowdata: any, id: number): void;
269
280
  static ɵfac: i0.ɵɵFactoryDeclaration<AnnaNonEditableGenericTableComponent, never>;
270
- static ɵcmp: i0.ɵɵComponentDeclaration<AnnaNonEditableGenericTableComponent, "anna-core-non-editable-generic-table-lib", never, { "showSkeletonLoading": "showSkeletonLoading"; "tableHeaders": "tableHeaders"; "tableData": "tableData"; "clonedTableData": "clonedTableData"; "numberOfSkeletonRows": "numberOfSkeletonRows"; "numberOfSkeletonColumns": "numberOfSkeletonColumns"; "gtGeneralConfig": "gtGeneralConfig"; "totalRowInfo": "totalRowInfo"; "gtDimension": "gtDimension"; "tableClass": "tableClass"; "maximumRowsWhichCanBeRenderedWithoutScroll": "maximumRowsWhichCanBeRenderedWithoutScroll"; "limit": "limit"; "includeBorderInTableHeight": "includeBorderInTableHeight"; "downloadInProgress": "downloadInProgress"; "percentDone": "percentDone"; "starredInProgress": "starredInProgress"; }, { "toggleCheckbox": "toggleCheckbox"; "toggleRowCheckbox": "toggleRowCheckbox"; "toggleHeaderCheckbox": "toggleHeaderCheckbox"; "undoIconClicked": "undoIconClicked"; "filterAppliedToTable": "filterAppliedToTable"; "sortingAppliedToTable": "sortingAppliedToTable"; "rowClicked": "rowClicked"; "radioButtonSelected": "radioButtonSelected"; "columnFilterOpened": "columnFilterOpened"; "columnFilterClosed": "columnFilterClosed"; "gtIconClicked": "gtIconClicked"; "gtSVGIconClicked": "gtSVGIconClicked"; "gtTextActionClicked": "gtTextActionClicked"; "gtViewDetailClicked": "gtViewDetailClicked"; "downloadSpotDetails": "downloadSpotDetails"; }, never, never>;
281
+ static ɵcmp: i0.ɵɵComponentDeclaration<AnnaNonEditableGenericTableComponent, "anna-core-non-editable-generic-table-lib", never, { "showSkeletonLoading": "showSkeletonLoading"; "tableHeaders": "tableHeaders"; "tableData": "tableData"; "clonedTableData": "clonedTableData"; "gtGeneralConfig": "gtGeneralConfig"; "totalRowInfo": "totalRowInfo"; "gtDimension": "gtDimension"; "tableClass": "tableClass"; "maximumRowsWhichCanBeRenderedWithoutScroll": "maximumRowsWhichCanBeRenderedWithoutScroll"; "limit": "limit"; "includeBorderInTableHeight": "includeBorderInTableHeight"; "downloadInProgress": "downloadInProgress"; "percentDone": "percentDone"; "starredInProgress": "starredInProgress"; "clickableRow": "clickableRow"; }, { "toggleCheckbox": "toggleCheckbox"; "toggleRowCheckbox": "toggleRowCheckbox"; "toggleHeaderCheckbox": "toggleHeaderCheckbox"; "undoIconClicked": "undoIconClicked"; "filterAppliedToTable": "filterAppliedToTable"; "sortingAppliedToTable": "sortingAppliedToTable"; "rowClicked": "rowClicked"; "radioButtonSelected": "radioButtonSelected"; "columnFilterOpened": "columnFilterOpened"; "columnFilterClosed": "columnFilterClosed"; "gtIconClicked": "gtIconClicked"; "gtSVGIconClicked": "gtSVGIconClicked"; "gtTextActionClicked": "gtTextActionClicked"; "gtViewDetailClicked": "gtViewDetailClicked"; "downloadSpotDetails": "downloadSpotDetails"; "clickableDataClicked": "clickableDataClicked"; }, never, never>;
271
282
  }
@@ -10,7 +10,7 @@ import { ListRange } from "@angular/cdk/collections";
10
10
  import { ChangeDetectorRef, ElementRef, NgZone, OnDestroy, OnInit } from "@angular/core";
11
11
  import { Observable } from "rxjs";
12
12
  import { CdkScrollable, CdkVirtualScrollRepeater, VirtualScrollStrategy, ScrollDispatcher, ViewportRuler } from "@angular/cdk/scrolling";
13
- import { AnnaGenericTableService } from '../../../anna-core-shared-lib/services/anna-generic-table.service';
13
+ import { AnnaGtHelperService } from '../../../anna-core-shared-lib/services/anna-generic-table.service';
14
14
  import * as i0 from "@angular/core";
15
15
  /**
16
16
  * A viewport that virtualizes its scrolling with the help of `CdkVirtualForOf`.
@@ -70,7 +70,7 @@ export declare class AnnaTableVirtualScrollViewportComponent extends CdkScrollab
70
70
  private _runAfterChangeDetection;
71
71
  /** Subscription to changes in the viewport size. */
72
72
  private _viewportChanges;
73
- constructor(elementRef: ElementRef<HTMLElement>, _changeDetectorRef: ChangeDetectorRef, ngZone: NgZone, _scrollStrategy: VirtualScrollStrategy, dir: Directionality, scrollDispatcher: ScrollDispatcher, viewportRuler: ViewportRuler, annaGtService: AnnaGenericTableService);
73
+ constructor(elementRef: ElementRef<HTMLElement>, _changeDetectorRef: ChangeDetectorRef, ngZone: NgZone, _scrollStrategy: VirtualScrollStrategy, dir: Directionality, scrollDispatcher: ScrollDispatcher, viewportRuler: ViewportRuler, annaGtService: AnnaGtHelperService);
74
74
  ngOnInit(): void;
75
75
  ngOnDestroy(): void;
76
76
  /** Attaches a `CdkVirtualScrollRepeater` to this viewport. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@annalib/anna-core",
3
- "version": "5.0.13",
3
+ "version": "5.0.15",
4
4
  "peerDependencies": {
5
5
  "@angular-slider/ngx-slider": "2.0.3",
6
6
  "@angular/common": "^13.2.0",
package/public-api.d.ts CHANGED
@@ -17,6 +17,7 @@ export * from "./lib/anna-core-shared-lib/models/anna-global-dropdown-config.mod
17
17
  export * from "./lib/anna-core-shared-lib/models/anna-non-editable-gt-models";
18
18
  export * from "./lib/anna-core-shared-lib/models/anna-tooltip.model";
19
19
  export * from "./lib/anna-core-shared-lib/models/anna-sort.model";
20
+ export * from "./lib/anna-core-shared-lib/models/anna-manage-users.model";
20
21
  export * from "./lib/anna-core-shared-lib/constants/shared.constant";
21
22
  export * from "./lib/anna-core-shared-lib/pipes/annaFilterSearchedText.pipe";
22
23
  export * from "./lib/anna-core-shared-lib/pipes/annaConvertZeroOrNullOrUndefined.pipe";
@@ -0,0 +1,25 @@
1
+ @mixin common-bootstrap-tooltip() {
2
+ opacity: 1 !important;
3
+ .tooltip-inner {
4
+ color: #4a4a4a;
5
+ text-align: left;
6
+ padding: 8px !important;
7
+ border-radius: $fs-2;
8
+ background: white !important;
9
+ box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.3), 0 2px 2px 0 rgba(0, 0, 0, 0.2);
10
+ @include fonts(Roboto, 12px, normal, normal, normal, normal, normal);
11
+ }
12
+
13
+ &.bs-tooltip-top .arrow::before {
14
+ border-top: 6px solid white
15
+ }
16
+ &.bs-tooltip-left .arrow::before {
17
+ border-left:6px solid white
18
+ }
19
+ &.bs-tooltip-bottom .arrow::before {
20
+ border-bottom: 6px solid white
21
+ }
22
+ &.bs-tooltip-right .arrow::before {
23
+ border-right:5px solid white
24
+ }
25
+ }
@@ -0,0 +1,72 @@
1
+ @import "./fonts", "./colors", "./ng-select";
2
+
3
+ .input-group-append {
4
+ margin: auto;
5
+ width: 25px;
6
+ }
7
+
8
+ .input-group {
9
+ background-color: #d8d8d8;
10
+ }
11
+
12
+ .input-group > .form-control {
13
+ width: 150px;
14
+ font-size: 12px;
15
+ border: none;
16
+ background-color: white;
17
+ border-right: 1px solid #d4d4d4;
18
+ cursor: pointer;
19
+ }
20
+
21
+ .datepicker-form-group {
22
+ border-radius: 2px;
23
+ border: 1px solid #d6d6d6;
24
+ }
25
+
26
+ .icon-width {
27
+ font-size: 16px;
28
+ cursor: pointer;
29
+ width: 30px;
30
+ text-align: center;
31
+ }
32
+
33
+ :host ::ng-deep.ngb-dp-arrow.right {
34
+ width: unset !important;
35
+ }
36
+
37
+ ::ng-deep .ngb-dp-day.disabled {
38
+ opacity: 0.5;
39
+ }
40
+
41
+ .form-control {
42
+ padding: 7px;
43
+ color: #000;
44
+ }
45
+
46
+ :host ::ng-deep .bg-primary {
47
+ background-color: #8bac2a !important;
48
+ &:focus {
49
+ outline: none;
50
+ }
51
+ }
52
+
53
+ .form-control {
54
+ &:focus {
55
+ outline: none;
56
+ box-shadow: none;
57
+ }
58
+ }
59
+
60
+ textarea:focus,
61
+ input:focus {
62
+ outline: none;
63
+ }
64
+
65
+ ::ng-deep .custom-select {
66
+ cursor: pointer;
67
+ &:focus {
68
+ border-color: unset;
69
+ outline: 0;
70
+ box-shadow: unset;
71
+ }
72
+ }
@@ -0,0 +1,59 @@
1
+ @mixin no-data-to-display-gt($tableHeight, $rowHeight, $noDataMarginTop) {
2
+ .table-container {
3
+ height: calc($tableHeight) !important;
4
+ table {
5
+ tbody {
6
+ border-top: none;
7
+ border-left: 1px solid #d3d3d3;
8
+ border-right: 1px solid #d3d3d3;
9
+ border-bottom: 1px solid #d3d3d3;
10
+
11
+ tr.no-border-tr:first-of-type {
12
+ height: $rowHeight !important;
13
+
14
+ td {
15
+ box-shadow: none !important;
16
+ }
17
+ }
18
+
19
+ tr:nth-child(n+1) {
20
+ td {
21
+ box-shadow: none !important;
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
27
+
28
+ .no-data {
29
+ margin-top: $noDataMarginTop !important;
30
+ }
31
+ }
32
+
33
+ @mixin resetFilterStyle() {
34
+ padding: 0;
35
+ border: none;
36
+ display: block;
37
+ text-align: right;
38
+ margin-left: auto;
39
+ background-color: white;
40
+ text-decoration: underline;
41
+ color: #268bff;
42
+ border: none;
43
+ &:hover:enabled {
44
+ color: #4a4a4a;
45
+ }
46
+ &:disabled {
47
+ color: #4a4a4a;
48
+ opacity: 0.5;
49
+ cursor: not-allowed;
50
+ }
51
+ }
52
+
53
+ @mixin table-ellipses {
54
+ div {
55
+ text-overflow: ellipsis !important;
56
+ overflow: hidden !important;
57
+ white-space:nowrap !important;
58
+ }
59
+ }