@annalib/anna-core 1.0.0 → 1.2.1

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 (37) hide show
  1. package/esm2020/lib/anna-core-shared-lib/services/anna-filter.service.mjs +16 -8
  2. package/esm2020/lib/anna-core-shared-lib/services/anna-sort.service.mjs +3 -1
  3. package/esm2020/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.mjs +14 -6
  4. package/esm2020/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +143 -55
  5. package/esm2020/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.mjs +20 -6
  6. package/esm2020/src/lib/anna-core-shared-lib/services/anna-filter.service.mjs +16 -8
  7. package/esm2020/src/lib/anna-core-shared-lib/services/anna-sort.service.mjs +3 -1
  8. package/esm2020/src/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.mjs +14 -6
  9. package/esm2020/src/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +143 -55
  10. package/esm2020/src/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.mjs +20 -6
  11. package/fesm2015/annalib-anna-core-src-lib-anna-core-shared-lib.mjs +155 -148
  12. package/fesm2015/annalib-anna-core-src-lib-anna-core-shared-lib.mjs.map +1 -1
  13. package/fesm2015/annalib-anna-core-src-lib-anna-dropdown-lib.mjs +11 -5
  14. package/fesm2015/annalib-anna-core-src-lib-anna-dropdown-lib.mjs.map +1 -1
  15. package/fesm2015/annalib-anna-core-src-lib-anna-generic-table-lib.mjs +161 -59
  16. package/fesm2015/annalib-anna-core-src-lib-anna-generic-table-lib.mjs.map +1 -1
  17. package/fesm2015/annalib-anna-core.mjs +327 -212
  18. package/fesm2015/annalib-anna-core.mjs.map +1 -1
  19. package/fesm2020/annalib-anna-core-src-lib-anna-core-shared-lib.mjs +155 -148
  20. package/fesm2020/annalib-anna-core-src-lib-anna-core-shared-lib.mjs.map +1 -1
  21. package/fesm2020/annalib-anna-core-src-lib-anna-dropdown-lib.mjs +11 -5
  22. package/fesm2020/annalib-anna-core-src-lib-anna-dropdown-lib.mjs.map +1 -1
  23. package/fesm2020/annalib-anna-core-src-lib-anna-generic-table-lib.mjs +161 -59
  24. package/fesm2020/annalib-anna-core-src-lib-anna-generic-table-lib.mjs.map +1 -1
  25. package/fesm2020/annalib-anna-core.mjs +327 -212
  26. package/fesm2020/annalib-anna-core.mjs.map +1 -1
  27. package/lib/anna-core-shared-lib/services/anna-filter.service.d.ts +3 -1
  28. package/lib/anna-core-shared-lib/services/anna-sort.service.d.ts +2 -0
  29. package/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.d.ts +3 -2
  30. package/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +11 -0
  31. package/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.d.ts +4 -2
  32. package/package.json +1 -1
  33. package/src/lib/anna-core-shared-lib/services/anna-filter.service.d.ts +3 -1
  34. package/src/lib/anna-core-shared-lib/services/anna-sort.service.d.ts +2 -0
  35. package/src/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.d.ts +3 -2
  36. package/src/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +11 -0
  37. package/src/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.d.ts +4 -2
@@ -502,9 +502,152 @@ var AllSelectedStatus;
502
502
  AllSelectedStatus[AllSelectedStatus["fewSelected"] = 2] = "fewSelected";
503
503
  })(AllSelectedStatus || (AllSelectedStatus = {}));
504
504
 
505
+ // Angular import statements
506
+ // Third party import statements
507
+ // User defined import statements
508
+ class AnnaSortService {
509
+ constructor(annaDateTimeFormatService) {
510
+ this.annaDateTimeFormatService = annaDateTimeFormatService;
511
+ this.updateSortTypeSubject = new Subject();
512
+ this.dateSet = new Set([
513
+ 'endDate',
514
+ 'startDate',
515
+ 'end_date',
516
+ 'start_date',
517
+ 'flightStartDate',
518
+ 'flightEndDate',
519
+ ]);
520
+ console.log('AnnaTableColumnSortService sevice created.');
521
+ }
522
+ sortDataForComponentOtherThanLurAndCsrPage(isAsc, data, key) {
523
+ let param1;
524
+ let param2;
525
+ if (this.dateSet.has(key)) {
526
+ data.sort((a, b) => {
527
+ return this.annaDateTimeFormatService.compareDate(a[key], b[key], isAsc);
528
+ });
529
+ }
530
+ else if (key === 'AirDateAndTime') {
531
+ data.sort((a, b) => {
532
+ let first, second;
533
+ if (a[key] == '-') {
534
+ return 1;
535
+ }
536
+ if (b[key] == '-') {
537
+ return -1;
538
+ }
539
+ else {
540
+ first =
541
+ this.annaDateTimeFormatService.formatDateAndHHMMATimeToStandardFormat(a[key]);
542
+ second =
543
+ this.annaDateTimeFormatService.formatDateAndHHMMATimeToStandardFormat(b[key]);
544
+ let compareDate = this.annaDateTimeFormatService.compareDate(first, second, isAsc);
545
+ return compareDate;
546
+ }
547
+ });
548
+ }
549
+ else if (key == 'startEndTime' || key == 'TimeBand') {
550
+ data.sort((a, b) => {
551
+ if (isAsc) {
552
+ param1 = a[key][1];
553
+ param2 = b[key][1];
554
+ }
555
+ else {
556
+ param1 = a[key][2];
557
+ param2 = b[key][2];
558
+ }
559
+ let val = isAsc
560
+ ? this.annaDateTimeFormatService.sortByTimeAscending(param1, param2)
561
+ : this.annaDateTimeFormatService.sortByTimeDescending(param1, param2);
562
+ return val;
563
+ });
564
+ }
565
+ else {
566
+ data.sort((a, b) => {
567
+ param1 = a[key];
568
+ param2 = b[key];
569
+ if (param1 !== param2) {
570
+ return this.annaDateTimeFormatService.compare(param1, param2, isAsc);
571
+ }
572
+ return 0;
573
+ });
574
+ }
575
+ return data;
576
+ }
577
+ sortEnterEditLurAndCsrPage(isAsc, data, key) {
578
+ let param1;
579
+ let param2;
580
+ if (key.includes('_')) {
581
+ let keys = key.split('_');
582
+ let weekNumber = keys[0];
583
+ let sortKey = keys[1];
584
+ if (keys.length > 2) {
585
+ sortKey =
586
+ keys[2] == true
587
+ ? 'BookedAurIncludingNoChargeSpots'
588
+ : 'BookedAurExcludingNoChargeSpots';
589
+ }
590
+ data.sort((a, b) => {
591
+ let aInventoryCodeWeekWiseKey = Object.keys(a.WeekWiseInventoryCodeData).filter((key) => key.split('_')[1] == weekNumber);
592
+ let bInventoryCodeWeekWiseKey = Object.keys(b.WeekWiseInventoryCodeData).filter((key) => key.split('_')[1] == weekNumber);
593
+ param1 = null;
594
+ param2 = null;
595
+ if (aInventoryCodeWeekWiseKey.length > 0) {
596
+ param1 =
597
+ a.WeekWiseInventoryCodeData[aInventoryCodeWeekWiseKey[0]][sortKey][1];
598
+ }
599
+ if (bInventoryCodeWeekWiseKey.length > 0) {
600
+ param2 =
601
+ b.WeekWiseInventoryCodeData[bInventoryCodeWeekWiseKey[0]][sortKey][1];
602
+ }
603
+ if (param1 !== param2) {
604
+ return this.annaDateTimeFormatService.compare(param1, param2, isAsc);
605
+ }
606
+ return 0;
607
+ });
608
+ }
609
+ else if (key == 'TimeBand') {
610
+ data.sort((a, b) => {
611
+ if (isAsc) {
612
+ param1 = a[key][1];
613
+ param2 = b[key][1];
614
+ }
615
+ else {
616
+ param1 = a[key][2];
617
+ param2 = b[key][2];
618
+ }
619
+ let val = isAsc
620
+ ? this.annaDateTimeFormatService.sortByTimeAscending(param1, param2)
621
+ : this.annaDateTimeFormatService.sortByTimeDescending(param1, param2);
622
+ return val;
623
+ });
624
+ }
625
+ else {
626
+ data.sort((a, b) => {
627
+ param1 = a[key];
628
+ param2 = b[key];
629
+ if (param1 !== param2) {
630
+ return this.annaDateTimeFormatService.compare(param1, param2, isAsc);
631
+ }
632
+ return 0;
633
+ });
634
+ }
635
+ return data;
636
+ }
637
+ }
638
+ AnnaSortService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaSortService, deps: [{ token: AnnaDateTimeFormatService }], target: i0.ɵɵFactoryTarget.Injectable });
639
+ AnnaSortService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaSortService, providedIn: 'root' });
640
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaSortService, decorators: [{
641
+ type: Injectable,
642
+ args: [{
643
+ providedIn: 'root',
644
+ }]
645
+ }], ctorParameters: function () { return [{ type: AnnaDateTimeFormatService }]; } });
646
+
505
647
  class AnnaFilterService {
506
- constructor(dateTimeFormatService) {
648
+ constructor(dateTimeFormatService, annaSortService) {
507
649
  this.dateTimeFormatService = dateTimeFormatService;
650
+ this.annaSortService = annaSortService;
508
651
  this.tooltipMap = new Map();
509
652
  this.tooltipSelectedMap = new Map();
510
653
  this.appliedFiltersArray = [];
@@ -591,10 +734,15 @@ class AnnaFilterService {
591
734
  return ((sortMap.size > 0 && sortMap.get(header[0]) != "DEFAULT") || (sortMap.size > 0 && sortMap.get(header[1]) != "DEFAULT") || set.has(header[0]) || set.has(header[1]));
592
735
  }
593
736
  clearColumnFilter() {
594
- this.tooltipSelectedMap.delete(this.selectedRadio);
595
- let appliedFilterSet = new Set(this.appliedFiltersArray);
596
- appliedFilterSet.delete(this.selectedRadio);
597
- this.appliedFiltersArray = [...appliedFilterSet];
737
+ if (this.tooltipSelectedMap.has(this.selectedRadio)) {
738
+ this.tooltipSelectedMap.delete(this.selectedRadio);
739
+ let appliedFilterSet = new Set(this.appliedFiltersArray);
740
+ appliedFilterSet.delete(this.selectedRadio);
741
+ this.appliedFiltersArray = [...appliedFilterSet];
742
+ }
743
+ if (this.annaSortService.columnSortState.has(this.selectedRadio)) {
744
+ this.annaSortService.columnSortState.set(this.selectedRadio, "DEFAULT");
745
+ }
598
746
  }
599
747
  populateSliderTooltip(completeData, filteredData) {
600
748
  let minValue;
@@ -1072,155 +1220,14 @@ class AnnaFilterService {
1072
1220
  }
1073
1221
  }
1074
1222
  AnnaFilterService.bufferSize = 20;
1075
- AnnaFilterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaFilterService, deps: [{ token: AnnaDateTimeFormatService }], target: i0.ɵɵFactoryTarget.Injectable });
1223
+ AnnaFilterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaFilterService, deps: [{ token: AnnaDateTimeFormatService }, { token: AnnaSortService }], target: i0.ɵɵFactoryTarget.Injectable });
1076
1224
  AnnaFilterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaFilterService, providedIn: 'root' });
1077
1225
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaFilterService, decorators: [{
1078
1226
  type: Injectable,
1079
1227
  args: [{
1080
1228
  providedIn: 'root'
1081
1229
  }]
1082
- }], ctorParameters: function () { return [{ type: AnnaDateTimeFormatService }]; } });
1083
-
1084
- // Angular import statements
1085
- // Third party import statements
1086
- // User defined import statements
1087
- class AnnaSortService {
1088
- constructor(annaDateTimeFormatService) {
1089
- this.annaDateTimeFormatService = annaDateTimeFormatService;
1090
- this.dateSet = new Set([
1091
- 'endDate',
1092
- 'startDate',
1093
- 'end_date',
1094
- 'start_date',
1095
- 'flightStartDate',
1096
- 'flightEndDate',
1097
- ]);
1098
- console.log('AnnaTableColumnSortService sevice created.');
1099
- }
1100
- sortDataForComponentOtherThanLurAndCsrPage(isAsc, data, key) {
1101
- let param1;
1102
- let param2;
1103
- if (this.dateSet.has(key)) {
1104
- data.sort((a, b) => {
1105
- return this.annaDateTimeFormatService.compareDate(a[key], b[key], isAsc);
1106
- });
1107
- }
1108
- else if (key === 'AirDateAndTime') {
1109
- data.sort((a, b) => {
1110
- let first, second;
1111
- if (a[key] == '-') {
1112
- return 1;
1113
- }
1114
- if (b[key] == '-') {
1115
- return -1;
1116
- }
1117
- else {
1118
- first =
1119
- this.annaDateTimeFormatService.formatDateAndHHMMATimeToStandardFormat(a[key]);
1120
- second =
1121
- this.annaDateTimeFormatService.formatDateAndHHMMATimeToStandardFormat(b[key]);
1122
- let compareDate = this.annaDateTimeFormatService.compareDate(first, second, isAsc);
1123
- return compareDate;
1124
- }
1125
- });
1126
- }
1127
- else if (key == 'startEndTime' || key == 'TimeBand') {
1128
- data.sort((a, b) => {
1129
- if (isAsc) {
1130
- param1 = a[key][1];
1131
- param2 = b[key][1];
1132
- }
1133
- else {
1134
- param1 = a[key][2];
1135
- param2 = b[key][2];
1136
- }
1137
- let val = isAsc
1138
- ? this.annaDateTimeFormatService.sortByTimeAscending(param1, param2)
1139
- : this.annaDateTimeFormatService.sortByTimeDescending(param1, param2);
1140
- return val;
1141
- });
1142
- }
1143
- else {
1144
- data.sort((a, b) => {
1145
- param1 = a[key];
1146
- param2 = b[key];
1147
- if (param1 !== param2) {
1148
- return this.annaDateTimeFormatService.compare(param1, param2, isAsc);
1149
- }
1150
- return 0;
1151
- });
1152
- }
1153
- return data;
1154
- }
1155
- sortEnterEditLurAndCsrPage(isAsc, data, key) {
1156
- let param1;
1157
- let param2;
1158
- if (key.includes('_')) {
1159
- let keys = key.split('_');
1160
- let weekNumber = keys[0];
1161
- let sortKey = keys[1];
1162
- if (keys.length > 2) {
1163
- sortKey =
1164
- keys[2] == true
1165
- ? 'BookedAurIncludingNoChargeSpots'
1166
- : 'BookedAurExcludingNoChargeSpots';
1167
- }
1168
- data.sort((a, b) => {
1169
- let aInventoryCodeWeekWiseKey = Object.keys(a.WeekWiseInventoryCodeData).filter((key) => key.split('_')[1] == weekNumber);
1170
- let bInventoryCodeWeekWiseKey = Object.keys(b.WeekWiseInventoryCodeData).filter((key) => key.split('_')[1] == weekNumber);
1171
- param1 = null;
1172
- param2 = null;
1173
- if (aInventoryCodeWeekWiseKey.length > 0) {
1174
- param1 =
1175
- a.WeekWiseInventoryCodeData[aInventoryCodeWeekWiseKey[0]][sortKey][1];
1176
- }
1177
- if (bInventoryCodeWeekWiseKey.length > 0) {
1178
- param2 =
1179
- b.WeekWiseInventoryCodeData[bInventoryCodeWeekWiseKey[0]][sortKey][1];
1180
- }
1181
- if (param1 !== param2) {
1182
- return this.annaDateTimeFormatService.compare(param1, param2, isAsc);
1183
- }
1184
- return 0;
1185
- });
1186
- }
1187
- else if (key == 'TimeBand') {
1188
- data.sort((a, b) => {
1189
- if (isAsc) {
1190
- param1 = a[key][1];
1191
- param2 = b[key][1];
1192
- }
1193
- else {
1194
- param1 = a[key][2];
1195
- param2 = b[key][2];
1196
- }
1197
- let val = isAsc
1198
- ? this.annaDateTimeFormatService.sortByTimeAscending(param1, param2)
1199
- : this.annaDateTimeFormatService.sortByTimeDescending(param1, param2);
1200
- return val;
1201
- });
1202
- }
1203
- else {
1204
- data.sort((a, b) => {
1205
- param1 = a[key];
1206
- param2 = b[key];
1207
- if (param1 !== param2) {
1208
- return this.annaDateTimeFormatService.compare(param1, param2, isAsc);
1209
- }
1210
- return 0;
1211
- });
1212
- }
1213
- return data;
1214
- }
1215
- }
1216
- AnnaSortService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaSortService, deps: [{ token: AnnaDateTimeFormatService }], target: i0.ɵɵFactoryTarget.Injectable });
1217
- AnnaSortService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaSortService, providedIn: 'root' });
1218
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaSortService, decorators: [{
1219
- type: Injectable,
1220
- args: [{
1221
- providedIn: 'root',
1222
- }]
1223
- }], ctorParameters: function () { return [{ type: AnnaDateTimeFormatService }]; } });
1230
+ }], ctorParameters: function () { return [{ type: AnnaDateTimeFormatService }, { type: AnnaSortService }]; } });
1224
1231
 
1225
1232
  // Angular import statements
1226
1233
  class AnnaGenericTableService {