@annalib/anna-core 6.2.0 → 7.0.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 (27) 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-date-time-format.service.mjs +3 -3
  6. package/esm2020/lib/anna-core-shared-lib/services/anna-filter.service.mjs +7 -5
  7. package/esm2020/lib/anna-core-shared-lib/services/anna-generic-table.service.mjs +84 -8
  8. package/esm2020/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +86 -47
  9. package/esm2020/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.mjs +6 -4
  10. package/esm2020/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.mjs +4 -4
  11. package/esm2020/public-api.mjs +2 -1
  12. package/fesm2015/annalib-anna-core.mjs +232 -101
  13. package/fesm2015/annalib-anna-core.mjs.map +1 -1
  14. package/fesm2020/annalib-anna-core.mjs +231 -100
  15. package/fesm2020/annalib-anna-core.mjs.map +1 -1
  16. package/lib/anna-core-shared-lib/constants/shared.constant.d.ts +2 -1
  17. package/lib/anna-core-shared-lib/models/anna-manage-users.model.d.ts +6 -0
  18. package/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.d.ts +1 -1
  19. package/lib/anna-core-shared-lib/models/anna-sort.model.d.ts +5 -0
  20. package/lib/anna-core-shared-lib/services/anna-generic-table.service.d.ts +18 -4
  21. package/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +19 -7
  22. package/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.d.ts +2 -2
  23. package/package.json +1 -1
  24. package/public-api.d.ts +1 -0
  25. package/src/lib/anna-common-scss/_bootstrap-tooltip.scss +25 -0
  26. package/src/lib/anna-common-scss/_date-picker-form.scss +72 -0
  27. 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,26 +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
24
  gtGeneralConfig: IGtGeneralConfig;
27
25
  totalRowInfo?: ITotalRowInfo[];
28
26
  gtDimension: {
29
27
  rowHeight: number;
30
- tableHeight: string;
31
28
  headerHeight: number;
29
+ dataOnTopHeight: number;
30
+ marginFromBottom: number;
31
+ tableHeight?: string;
32
32
  };
33
33
  tableClass: string;
34
34
  maximumRowsWhichCanBeRenderedWithoutScroll: number;
@@ -37,6 +37,7 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
37
37
  downloadInProgress: boolean;
38
38
  percentDone: number;
39
39
  starredInProgress: boolean;
40
+ clickableRow: boolean;
40
41
  toggleCheckbox: EventEmitter<any>;
41
42
  toggleRowCheckbox: EventEmitter<any>;
42
43
  toggleHeaderCheckbox: EventEmitter<any>;
@@ -52,6 +53,8 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
52
53
  gtTextActionClicked: EventEmitter<any>;
53
54
  gtViewDetailClicked: EventEmitter<any>;
54
55
  downloadSpotDetails: EventEmitter<any>;
56
+ clickableDataClicked: EventEmitter<any>;
57
+ numberOfSkeletonRows: number[][];
55
58
  tableDataWrapper: any[];
56
59
  rowChecked: boolean;
57
60
  isAllRowsChecked: boolean;
@@ -146,10 +149,17 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
146
149
  heightOfCheckboxTooltipFilter: number;
147
150
  isNoDataToDisplaySubject$: BehaviorSubject<boolean>;
148
151
  selectedStarredOrderId: string;
149
- 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);
150
159
  ngAfterViewChecked(): void;
151
160
  ngOnInit(): void;
152
161
  ngOnChanges(changes: SimpleChanges): void;
162
+ setTableHeight(): void;
153
163
  trackByFn(index: number): number;
154
164
  setTooltipRadioNames(): void;
155
165
  generateTableDataWrapper(): void;
@@ -229,7 +239,6 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
229
239
  svgIconClicked(data: GtColumnIconEmittedData): void;
230
240
  textActionClicked(rowData: any, id: number): void;
231
241
  viewDetailsClicked(rowData: any): void;
232
- setColumnSortStateMap(): void;
233
242
  storeSortTypeInTempVariable(event: SortType): void;
234
243
  unCheckAllCheckbox(): void;
235
244
  selectAllCheckbox(): void;
@@ -253,6 +262,7 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
253
262
  checkIfSliderTooltipIsFiltered(): boolean;
254
263
  setInitialValueMapForSliderFilter(): void;
255
264
  checkIfSortingChanged(): boolean;
265
+ getColumnSortStateForSelectedRadio(): string;
256
266
  disableApplyButtonOfSelectedFilter(): void;
257
267
  disableCheckboxFilterApplyButton(): void;
258
268
  trackByTooltipModelId(index: number, item: TooltipModel): number;
@@ -265,6 +275,8 @@ export declare class AnnaNonEditableGenericTableComponent implements OnInit, OnC
265
275
  setInitialRowsForTable(): void;
266
276
  spotDetailsDownloadClicked(parentChildOrTotalRow: "DATAROW" | "TOTALROW", rowdata?: any): void;
267
277
  tableContainerScrolled(event: any): void;
278
+ mouseEnterOnStringTextActionType(rowData: any): void;
279
+ onClickableDataClicked(Rowdata: any, id: number): void;
268
280
  static ɵfac: i0.ɵɵFactoryDeclaration<AnnaNonEditableGenericTableComponent, never>;
269
- static ɵcmp: i0.ɵɵComponentDeclaration<AnnaNonEditableGenericTableComponent, "anna-core-non-editable-generic-table-lib", never, { "showSkeletonLoading": "showSkeletonLoading"; "tableHeaders": "tableHeaders"; "tableData": "tableData"; "clonedTableData": "clonedTableData"; "numberOfSkeletonRows": "numberOfSkeletonRows"; "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>;
270
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": "6.2.0",
3
+ "version": "7.0.0",
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
+ }