@esfaenza/admin-module 20.3.14 → 20.3.17

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/index.d.ts CHANGED
@@ -1,32 +1,32 @@
1
- import * as i26 from '@angular/router';
2
- import { ActivatedRoute } from '@angular/router';
3
- import * as i12 from '@angular/common';
1
+ import * as i28 from '@angular/router';
2
+ import { ActivatedRoute, CanMatchFn } from '@angular/router';
3
+ import * as i14 from '@angular/common';
4
4
  import { Location } from '@angular/common';
5
- import * as i18 from '@esfaenza/localizations';
5
+ import * as i20 from '@esfaenza/localizations';
6
6
  import { LocalizationService } from '@esfaenza/localizations';
7
7
  import { PreferencesService } from '@esfaenza/preferences';
8
- import * as i19 from '@esfaenza/extensions';
8
+ import * as i21 from '@esfaenza/extensions';
9
9
  import { MessageService, ClipboardService, InterComService, UtilityService, DateService, ExportService } from '@esfaenza/extensions';
10
- import * as i20 from '@esfaenza/es-table';
10
+ import * as i22 from '@esfaenza/es-table';
11
11
  import { AppSearch, GenericItem, EsTableOperationDefinition, ItemsSelection } from '@esfaenza/es-table';
12
12
  import * as i0 from '@angular/core';
13
- import { Injector, EventEmitter, PipeTransform, InjectionToken } from '@angular/core';
13
+ import { Injector, NgZone, EventEmitter, PipeTransform, InjectionToken } from '@angular/core';
14
14
  import { HTTPService } from '@esfaenza/httpservice';
15
15
  import { KeyValue as KeyValue$1 } from '@esfaenza/core/domain';
16
- import * as i23 from '@esfaenza/es-charts';
16
+ import * as i25 from '@esfaenza/es-charts';
17
17
  import { DateValue, LineChartData, PieChartData, LineSerie, BaseChartComponent } from '@esfaenza/es-charts';
18
- import * as i13 from '@angular/forms';
18
+ import * as i15 from '@angular/forms';
19
19
  import { NgForm } from '@angular/forms';
20
- import * as i14 from 'ngx-bootstrap/modal';
20
+ import * as i16 from 'ngx-bootstrap/modal';
21
21
  import { ModalDirective } from 'ngx-bootstrap/modal';
22
22
  import { ReplaySubject } from 'rxjs';
23
- import * as i15 from 'ngx-bootstrap/tooltip';
24
- import * as i16 from 'ngx-bootstrap/dropdown';
25
- import * as i17 from '@esfaenza/ngx-contextmenu';
26
- import * as i21 from '@esfaenza/forms-and-validations';
27
- import * as i22 from '@esfaenza/gertrude';
28
- import * as i24 from '@esfaenza/core/components';
29
- import * as i25 from '@esfaenza/core/directives';
23
+ import * as i17 from 'ngx-bootstrap/tooltip';
24
+ import * as i18 from 'ngx-bootstrap/dropdown';
25
+ import * as i19 from '@esfaenza/ngx-contextmenu';
26
+ import * as i23 from '@esfaenza/forms-and-validations';
27
+ import * as i24 from '@esfaenza/gertrude';
28
+ import * as i26 from '@esfaenza/core/components';
29
+ import * as i27 from '@esfaenza/core/directives';
30
30
 
31
31
  declare class Audit {
32
32
  timestamp: Date;
@@ -136,6 +136,123 @@ declare class TopActivitiesDataView extends AppSearch<TopActivity> {
136
136
  filterglobal: boolean;
137
137
  }
138
138
 
139
+ declare enum TopActivityDimension {
140
+ WaitClass = 0,
141
+ EventType = 1,
142
+ WaitEvent = 2,
143
+ Instance = 3,
144
+ UserSession = 4,
145
+ UserName = 5,
146
+ Tenant = 6,
147
+ SessionType = 7,
148
+ BackgroundSession = 8,
149
+ JobName = 9,
150
+ ConsumerGroup = 10,
151
+ ThreadType = 11,
152
+ Api = 12,
153
+ Machine = 13
154
+ }
155
+ declare enum TopActivityDataSource {
156
+ Memory = 0,
157
+ MemoryAndStored = 1
158
+ }
159
+ declare enum TopActivityResolution {
160
+ Low = 0,
161
+ Medium = 1,
162
+ High = 2,
163
+ Maximum = 3
164
+ }
165
+ declare enum TopActivityMaximumThreads {
166
+ None = 0,
167
+ Cores = 1,
168
+ Threads = 2
169
+ }
170
+
171
+ declare class TopActivityV2Filter {
172
+ dimension: TopActivityDimension;
173
+ value: string;
174
+ }
175
+ declare class TopActivityV2Request {
176
+ from?: string;
177
+ to?: string;
178
+ global?: boolean;
179
+ instanceId?: string;
180
+ dataSource?: TopActivityDataSource;
181
+ dimension?: TopActivityDimension;
182
+ filters?: TopActivityV2Filter[];
183
+ totalActivity?: boolean;
184
+ maximumThreads?: TopActivityMaximumThreads;
185
+ resolution?: TopActivityResolution;
186
+ maxComponents?: number;
187
+ tablesFrom?: string;
188
+ tablesTo?: string;
189
+ tables?: TopActivityDimension[];
190
+ topCount?: number;
191
+ }
192
+
193
+ declare class TopActivityV2Component {
194
+ key: string;
195
+ label: string;
196
+ other: boolean;
197
+ activity: number;
198
+ percentage: number;
199
+ values: number[];
200
+ }
201
+ declare class TopActivityV2Breakdown {
202
+ key: string;
203
+ other: boolean;
204
+ activity: number;
205
+ }
206
+ declare class TopActivityV2Session {
207
+ instanceId: string;
208
+ sessionId: number;
209
+ serialNo: number;
210
+ userName: string;
211
+ tenantId: string;
212
+ sessionType: string;
213
+ bgProcessName: string;
214
+ jobName: string;
215
+ consumerGroup: string;
216
+ }
217
+ declare class TopActivityV2Event {
218
+ eventId: string;
219
+ eventName: string;
220
+ eventType: string;
221
+ waitClass: string;
222
+ }
223
+ declare class TopActivityV2TableItem {
224
+ key: string;
225
+ label: string;
226
+ other: boolean;
227
+ activity: number;
228
+ percentage: number;
229
+ breakdown: TopActivityV2Breakdown[];
230
+ session: TopActivityV2Session;
231
+ event: TopActivityV2Event;
232
+ }
233
+ declare class TopActivityV2Table {
234
+ dimension: TopActivityDimension;
235
+ from: string;
236
+ to: string;
237
+ activity: number;
238
+ items: TopActivityV2TableItem[];
239
+ }
240
+ declare class TopActivityV2Response {
241
+ from: string;
242
+ to: string;
243
+ dimension: TopActivityDimension;
244
+ dataSource: TopActivityDataSource;
245
+ bucketSeconds: number;
246
+ times: string[];
247
+ components: TopActivityV2Component[];
248
+ totalActivity: number[];
249
+ maximumThreads: number;
250
+ averageActiveSessions: number;
251
+ peakActiveSessions: number;
252
+ memoryFrom: string;
253
+ tables: TopActivityV2Table[];
254
+ }
255
+
139
256
  declare class DirectorInfosPerInstance {
140
257
  instance: string;
141
258
  startuptime: Date;
@@ -327,6 +444,7 @@ declare class AdminModuleBaseService {
327
444
  getConsumerGroups(be: string): Promise<KeyValue$1[]>;
328
445
  getServerLogs(be: string, from: string, to: string, instance: string, target: string): Promise<string>;
329
446
  getTopActivities(be: string, sv: TopActivitiesDataView): Promise<TopActivitiesDataView>;
447
+ getTopActivitiesV2(be: string, req: TopActivityV2Request): Promise<TopActivityV2Response>;
330
448
  getInfos(be: string): Promise<DirectorInfos>;
331
449
  getNodeStats(be: string, nodeId: string, global?: boolean): Promise<NodeStats>;
332
450
  getSessionStats(be: string, sid: string, serial: string, instance: string): Promise<SessionStats>;
@@ -515,6 +633,113 @@ declare class AdmTopActivitiesComponent {
515
633
  static ɵcmp: i0.ɵɵComponentDeclaration<AdmTopActivitiesComponent, "topact_search", never, {}, {}, never, never, false, never>;
516
634
  }
517
635
 
636
+ declare class TopActivityV2LegendItem {
637
+ key: string;
638
+ label: string;
639
+ color: string;
640
+ other: boolean;
641
+ activity: number;
642
+ percentage: number;
643
+ }
644
+ declare class TopActivityV2FilterChip {
645
+ filter: TopActivityV2Filter;
646
+ label: string;
647
+ }
648
+ declare class AdmTopActivityV2Component {
649
+ dateExts: DateService;
650
+ lc: LocalizationService;
651
+ private localStorage;
652
+ private intercom;
653
+ private route;
654
+ private adms;
655
+ private zone;
656
+ dlgNodeDetails: ModalDirective;
657
+ dlgSessionDetails: ModalDirective;
658
+ readonly Dim: typeof TopActivityDimension;
659
+ readonly TotalColor = "#263238";
660
+ readonly LimitColor = "#e53935";
661
+ filterfrom: string;
662
+ filterto: string;
663
+ instance: string;
664
+ dataSource: string;
665
+ dimension: string;
666
+ resolution: string;
667
+ totalActivity: boolean;
668
+ maxCpu: boolean;
669
+ maxThreadsKind: string;
670
+ tableDims: string[];
671
+ filters: TopActivityV2FilterChip[];
672
+ refreshSeconds: string;
673
+ Instances: KeyValue[];
674
+ DataSources: KeyValue[];
675
+ Dimensions: KeyValue[];
676
+ Resolutions: KeyValue[];
677
+ ThreadKinds: KeyValue[];
678
+ RefreshOptions: KeyValue[];
679
+ loading: boolean;
680
+ result: TopActivityV2Response;
681
+ chartData: LineChartData;
682
+ chartMax: number;
683
+ legend: TopActivityV2LegendItem[];
684
+ tables: TopActivityV2Table[];
685
+ memoryFrom: string;
686
+ limitLabel: string;
687
+ sliderMin: number;
688
+ sliderMax: number;
689
+ sliderStep: number;
690
+ sliderValue: number;
691
+ sliderAnchored: boolean;
692
+ tablesWindowLabel: string;
693
+ DirInfos: DirectorInfos;
694
+ NodeDetails: NodeStats;
695
+ SessionDetails: SessionStats;
696
+ private be;
697
+ private chartFrom;
698
+ private chartTo;
699
+ private colors;
700
+ private lastChartKey;
701
+ private chart;
702
+ private windowAxis;
703
+ private windowRange;
704
+ private refreshTimer;
705
+ constructor(dateExts: DateService, lc: LocalizationService, localStorage: PreferencesService, intercom: InterComService, route: ActivatedRoute, adms: AdminModuleBaseService, zone: NgZone);
706
+ ngOnInit(): Promise<void>;
707
+ ngOnDestroy(): void;
708
+ searchClicked(): void;
709
+ search(): Promise<void>;
710
+ private buildRequest;
711
+ private applyResult;
712
+ onChartLoaded(chart: BaseChartComponent<any>): void;
713
+ private drawTablesWindow;
714
+ addFilter(item: TopActivityV2LegendItem): void;
715
+ removeFilter(index: number): void;
716
+ sliderMoving(): void;
717
+ sliderChanged(): void;
718
+ private updateTablesWindowLabel;
719
+ isClickable(item: TopActivityV2TableItem): boolean;
720
+ openItem(item: TopActivityV2TableItem): void;
721
+ breakdownWidth(item: TopActivityV2TableItem, part: TopActivityV2Breakdown): number;
722
+ breakdownColor(part: TopActivityV2Breakdown): string;
723
+ itemLabel(item: TopActivityV2TableItem, table: TopActivityV2Table): string;
724
+ loadNodeDetails(nodeId: string): void;
725
+ loadSessionDetails(session: TopActivityV2Session): void;
726
+ refreshChanged(): void;
727
+ private shiftWindow;
728
+ private buildSources;
729
+ private loadInstances;
730
+ private refreshInfos;
731
+ dimensionLabel(dimension: TopActivityDimension): string;
732
+ private valueLabel;
733
+ private applySettings;
734
+ private saveSettings;
735
+ private setLastHour;
736
+ private toDate;
737
+ private fmt;
738
+ private parseUtc;
739
+ static ɵfac: i0.ɵɵFactoryDeclaration<AdmTopActivityV2Component, never>;
740
+ static ɵcmp: i0.ɵɵComponentDeclaration<AdmTopActivityV2Component, "topact_v2", never, {}, {}, never, never, false, never>;
741
+ }
742
+
518
743
  declare class AdmEnqComponent {
519
744
  lc: LocalizationService;
520
745
  private localStorage;
@@ -692,6 +917,24 @@ declare class AdminModuleCommService {
692
917
  static ɵprov: i0.ɵɵInjectableDeclaration<AdminModuleCommService>;
693
918
  }
694
919
 
920
+ declare class SessionDetailComponent {
921
+ lc: LocalizationService;
922
+ SessionDetails: SessionStats;
923
+ onClose: EventEmitter<boolean>;
924
+ onNodeSelected: EventEmitter<string>;
925
+ SelectedTopNodes: TopNode[];
926
+ SelectedSessions: LineChartData;
927
+ private seriesPropertiesMapping;
928
+ private propertiesSeriesMapping;
929
+ constructor(lc: LocalizationService);
930
+ ngOnInit(): void;
931
+ threadSelectionChanged(selection?: ItemsSelection<SessionThread>): void;
932
+ onChartLoaded(chart: BaseChartComponent<any>): void;
933
+ closeDialog(): void;
934
+ static ɵfac: i0.ɵɵFactoryDeclaration<SessionDetailComponent, never>;
935
+ static ɵcmp: i0.ɵɵComponentDeclaration<SessionDetailComponent, "session-detail", never, { "SessionDetails": { "alias": "SessionDetails"; "required": false; }; }, { "onClose": "onClose"; "onNodeSelected": "onNodeSelected"; }, never, never, false, never>;
936
+ }
937
+
695
938
  declare class NodeDetailComponent {
696
939
  lc: LocalizationService;
697
940
  NodeDetails: NodeStats;
@@ -711,6 +954,7 @@ declare class FormatTimePipe implements PipeTransform {
711
954
  static ɵpipe: i0.ɵɵPipeDeclaration<FormatTimePipe, "format_time", true>;
712
955
  }
713
956
 
957
+ declare const topActivityV2Enabled: CanMatchFn;
714
958
  declare const routeConfig: {
715
959
  path: string;
716
960
  children: ({
@@ -720,6 +964,7 @@ declare const routeConfig: {
720
964
  title: string;
721
965
  internalNavigation: boolean;
722
966
  };
967
+ canMatch?: undefined;
723
968
  } | {
724
969
  path: string;
725
970
  component: typeof AdmProfilerComponent;
@@ -727,6 +972,15 @@ declare const routeConfig: {
727
972
  title: string;
728
973
  internalNavigation: boolean;
729
974
  };
975
+ canMatch?: undefined;
976
+ } | {
977
+ path: string;
978
+ component: typeof AdmTopActivityV2Component;
979
+ canMatch: CanMatchFn[];
980
+ data: {
981
+ title: string;
982
+ internalNavigation: boolean;
983
+ };
730
984
  } | {
731
985
  path: string;
732
986
  component: typeof AdmTopActivitiesComponent;
@@ -734,6 +988,7 @@ declare const routeConfig: {
734
988
  title: string;
735
989
  internalNavigation: boolean;
736
990
  };
991
+ canMatch?: undefined;
737
992
  } | {
738
993
  path: string;
739
994
  component: typeof AdmMetricsComponent;
@@ -741,6 +996,7 @@ declare const routeConfig: {
741
996
  title: string;
742
997
  internalNavigation: boolean;
743
998
  };
999
+ canMatch?: undefined;
744
1000
  } | {
745
1001
  path: string;
746
1002
  component: typeof AdmLogsComponent;
@@ -748,6 +1004,7 @@ declare const routeConfig: {
748
1004
  title: string;
749
1005
  internalNavigation: boolean;
750
1006
  };
1007
+ canMatch?: undefined;
751
1008
  } | {
752
1009
  path: string;
753
1010
  component: typeof AdmAuditsComponent;
@@ -755,6 +1012,7 @@ declare const routeConfig: {
755
1012
  title: string;
756
1013
  internalNavigation: boolean;
757
1014
  };
1015
+ canMatch?: undefined;
758
1016
  } | {
759
1017
  path: string;
760
1018
  component: typeof AdmEnqComponent;
@@ -762,6 +1020,7 @@ declare const routeConfig: {
762
1020
  title: string;
763
1021
  internalNavigation: boolean;
764
1022
  };
1023
+ canMatch?: undefined;
765
1024
  } | {
766
1025
  path: string;
767
1026
  component: typeof AdmDynamicViewsComponent;
@@ -769,6 +1028,7 @@ declare const routeConfig: {
769
1028
  title: string;
770
1029
  internalNavigation: boolean;
771
1030
  };
1031
+ canMatch?: undefined;
772
1032
  } | {
773
1033
  path: string;
774
1034
  component: typeof MtdQueryComponent;
@@ -776,6 +1036,7 @@ declare const routeConfig: {
776
1036
  title: string;
777
1037
  internalNavigation: boolean;
778
1038
  };
1039
+ canMatch?: undefined;
779
1040
  } | {
780
1041
  path: string;
781
1042
  component: typeof AdmSystemParametersComponent;
@@ -783,18 +1044,20 @@ declare const routeConfig: {
783
1044
  title: string;
784
1045
  internalNavigation: boolean;
785
1046
  };
1047
+ canMatch?: undefined;
786
1048
  })[];
787
1049
  }[];
788
1050
  declare class AdmModule {
789
1051
  private commService;
790
1052
  constructor(commService: AdminModuleCommService);
791
1053
  static ɵfac: i0.ɵɵFactoryDeclaration<AdmModule, never>;
792
- static ɵmod: i0.ɵɵNgModuleDeclaration<AdmModule, [typeof AdmWrkComponent, typeof AdmProfilerComponent, typeof AdmTopActivitiesComponent, typeof AdmDynamicViewsComponent, typeof AdmLogsComponent, typeof AdmAuditsComponent, typeof AdmEnqComponent, typeof AdmMetricsComponent, typeof NodeDetailComponent, typeof MtdQueryComponent, typeof AdmSystemParametersComponent], [typeof i12.CommonModule, typeof i13.FormsModule, typeof i14.ModalModule, typeof i15.TooltipModule, typeof i16.BsDropdownModule, typeof i17.ContextMenuModule, typeof i18.LocalizationModule, typeof i19.ExtensionsModule, typeof i20.EsTableModule, typeof i21.FormsAndValidationsModule, typeof i22.EsGertrudeModule, typeof i23.EsChartsModule, typeof i24.ComponentsModule, typeof i25.DirectivesModule, typeof i26.RouterModule, typeof FormatTimePipe], never>;
1054
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AdmModule, [typeof AdmWrkComponent, typeof AdmProfilerComponent, typeof AdmTopActivitiesComponent, typeof AdmTopActivityV2Component, typeof SessionDetailComponent, typeof AdmDynamicViewsComponent, typeof AdmLogsComponent, typeof AdmAuditsComponent, typeof AdmEnqComponent, typeof AdmMetricsComponent, typeof NodeDetailComponent, typeof MtdQueryComponent, typeof AdmSystemParametersComponent], [typeof i14.CommonModule, typeof i15.FormsModule, typeof i16.ModalModule, typeof i17.TooltipModule, typeof i18.BsDropdownModule, typeof i19.ContextMenuModule, typeof i20.LocalizationModule, typeof i21.ExtensionsModule, typeof i22.EsTableModule, typeof i23.FormsAndValidationsModule, typeof i24.EsGertrudeModule, typeof i25.EsChartsModule, typeof i26.ComponentsModule, typeof i27.DirectivesModule, typeof i28.RouterModule, typeof FormatTimePipe], never>;
793
1055
  static ɵinj: i0.ɵɵInjectorDeclaration<AdmModule>;
794
1056
  }
795
1057
 
796
1058
  declare const ADM_MODULE_PATH: InjectionToken<string>;
797
1059
  declare const ADM_CONVERSATIONS: InjectionToken<boolean>;
1060
+ declare const ADM_TOPACT_V2: InjectionToken<boolean>;
798
1061
 
799
1062
  /** Chiave di questo modulo, da utilizzare per i messaggi */
800
1063
  declare const MK_ADM = "EsAdminModule";
@@ -803,4 +1066,4 @@ declare enum AdmMessageTypes {
803
1066
  Message = 0
804
1067
  }
805
1068
 
806
- export { ADM_CONVERSATIONS, ADM_MODULE_PATH, AdmMessageTypes, AdmModule, MK_ADM, routeConfig };
1069
+ export { ADM_CONVERSATIONS, ADM_MODULE_PATH, ADM_TOPACT_V2, AdmMessageTypes, AdmModule, MK_ADM, routeConfig, topActivityV2Enabled };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esfaenza/admin-module",
3
- "version": "20.3.14",
3
+ "version": "20.3.17",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": "^20.3.34",
6
6
  "@angular/common": "^20.3.34",