grm-shared-library 1.1.53 → 1.1.54

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 (36) hide show
  1. package/dist/cjs/modules/incident/dtos/analytics/analytics-request.dto.js +4 -0
  2. package/dist/cjs/modules/incident/dtos/analytics/analytics-request.dto.js.map +1 -0
  3. package/dist/cjs/modules/incident/dtos/analytics/analytics-response.dto.js +4 -0
  4. package/dist/cjs/modules/incident/dtos/analytics/analytics-response.dto.js.map +1 -0
  5. package/dist/cjs/modules/incident/dtos/analytics/index.js +19 -0
  6. package/dist/cjs/modules/incident/dtos/analytics/index.js.map +1 -0
  7. package/dist/cjs/modules/incident/index.js +2 -0
  8. package/dist/cjs/modules/incident/index.js.map +1 -1
  9. package/dist/cjs/modules/incident/intefaces/analytics/chart-data.js +3 -0
  10. package/dist/cjs/modules/incident/intefaces/analytics/chart-data.js.map +1 -0
  11. package/dist/cjs/modules/incident/intefaces/analytics/incident-analytics.js +3 -0
  12. package/dist/cjs/modules/incident/intefaces/analytics/incident-analytics.js.map +1 -0
  13. package/dist/cjs/modules/incident/intefaces/analytics/index.js +19 -0
  14. package/dist/cjs/modules/incident/intefaces/analytics/index.js.map +1 -0
  15. package/dist/esm/modules/incident/dtos/analytics/analytics-request.dto.js +3 -0
  16. package/dist/esm/modules/incident/dtos/analytics/analytics-request.dto.js.map +1 -0
  17. package/dist/esm/modules/incident/dtos/analytics/analytics-response.dto.js +3 -0
  18. package/dist/esm/modules/incident/dtos/analytics/analytics-response.dto.js.map +1 -0
  19. package/dist/esm/modules/incident/dtos/analytics/index.js +3 -0
  20. package/dist/esm/modules/incident/dtos/analytics/index.js.map +1 -0
  21. package/dist/esm/modules/incident/index.js +2 -0
  22. package/dist/esm/modules/incident/index.js.map +1 -1
  23. package/dist/esm/modules/incident/intefaces/analytics/chart-data.js +2 -0
  24. package/dist/esm/modules/incident/intefaces/analytics/chart-data.js.map +1 -0
  25. package/dist/esm/modules/incident/intefaces/analytics/incident-analytics.js +2 -0
  26. package/dist/esm/modules/incident/intefaces/analytics/incident-analytics.js.map +1 -0
  27. package/dist/esm/modules/incident/intefaces/analytics/index.js +3 -0
  28. package/dist/esm/modules/incident/intefaces/analytics/index.js.map +1 -0
  29. package/dist/types/modules/incident/dtos/analytics/analytics-request.dto.d.ts +34 -0
  30. package/dist/types/modules/incident/dtos/analytics/analytics-response.dto.d.ts +132 -0
  31. package/dist/types/modules/incident/dtos/analytics/index.d.ts +2 -0
  32. package/dist/types/modules/incident/index.d.ts +2 -0
  33. package/dist/types/modules/incident/intefaces/analytics/chart-data.d.ts +62 -0
  34. package/dist/types/modules/incident/intefaces/analytics/incident-analytics.d.ts +90 -0
  35. package/dist/types/modules/incident/intefaces/analytics/index.d.ts +2 -0
  36. package/package.json +1 -1
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Analytics Request DTOs for shared use across services
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=analytics-request.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics-request.dto.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/analytics/analytics-request.dto.ts"],"names":[],"mappings":";AAAA,wDAAwD"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Analytics Response DTOs for shared use across services
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=analytics-response.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics-response.dto.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/analytics/analytics-response.dto.ts"],"names":[],"mappings":";AAAA,yDAAyD"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./analytics-request.dto"), exports);
18
+ __exportStar(require("./analytics-response.dto"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/analytics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,2DAAyC"}
@@ -43,6 +43,7 @@ __exportStar(require("./dtos/reporter/update-incident-reporter.dto"), exports);
43
43
  __exportStar(require("./dtos/report/create-incident-report.dto"), exports);
44
44
  __exportStar(require("./dtos/report/incident-report.dto"), exports);
45
45
  __exportStar(require("./dtos/report/update-incident-report.dto"), exports);
46
+ __exportStar(require("./dtos/analytics"), exports);
46
47
  //enums
47
48
  __exportStar(require("./enums/incident-app-id.enum"), exports);
48
49
  __exportStar(require("./enums/incident-channel.enum"), exports);
@@ -64,4 +65,5 @@ __exportStar(require("./intefaces/incident-status-changed"), exports);
64
65
  __exportStar(require("./intefaces/incident-status-details"), exports);
65
66
  __exportStar(require("./intefaces/incident-on-hold-record"), exports);
66
67
  __exportStar(require("./intefaces/incident-report"), exports);
68
+ __exportStar(require("./intefaces/analytics"), exports);
67
69
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/incident/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAO;AACP,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,mFAAiE;AACjE,mFAAiE;AACjE,+EAA6D;AAC7D,+EAA6D;AAC7D,+DAA6C;AAC7C,sEAAoD;AACpD,sEAAoD;AACpD,8EAA4D;AAC5D,8EAA4D;AAC5D,8EAA4D;AAC5D,wEAAsD;AACtD,uEAAqD;AACrD,uEAAqD;AACrD,4EAA0D;AAC1D,mFAAiE;AACjE,mFAAiE;AACjE,wGAAsF;AACtF,+GAA6F;AAC7F,+GAA6F;AAC7F,wEAAsD;AACtD,+EAA6D;AAC7D,+EAA6D;AAC7D,2EAAyD;AACzD,oEAAkD;AAClD,2EAAyD;AAEzD,OAAO;AACP,+DAA6C;AAC7C,gEAA8C;AAC9C,8DAA4C;AAC5C,iEAA+C;AAC/C,+DAA6C;AAC7C,gEAA8C;AAC9C,4EAA0D;AAE1D,YAAY;AACZ,uDAAqC;AACrC,8DAA4C;AAC5C,kEAAgD;AAChD,gEAA8C;AAC9C,gEAA8C;AAC9C,4DAA0C;AAC1C,kEAAgD;AAChD,gFAA8D;AAC9D,sEAAoD;AACpD,sEAAoD;AACpD,sEAAoD;AACpD,8DAA4C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/incident/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAO;AACP,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,mFAAiE;AACjE,mFAAiE;AACjE,+EAA6D;AAC7D,+EAA6D;AAC7D,+DAA6C;AAC7C,sEAAoD;AACpD,sEAAoD;AACpD,8EAA4D;AAC5D,8EAA4D;AAC5D,8EAA4D;AAC5D,wEAAsD;AACtD,uEAAqD;AACrD,uEAAqD;AACrD,4EAA0D;AAC1D,mFAAiE;AACjE,mFAAiE;AACjE,wGAAsF;AACtF,+GAA6F;AAC7F,+GAA6F;AAC7F,wEAAsD;AACtD,+EAA6D;AAC7D,+EAA6D;AAC7D,2EAAyD;AACzD,oEAAkD;AAClD,2EAAyD;AACzD,mDAAiC;AAEjC,OAAO;AACP,+DAA6C;AAC7C,gEAA8C;AAC9C,8DAA4C;AAC5C,iEAA+C;AAC/C,+DAA6C;AAC7C,gEAA8C;AAC9C,4EAA0D;AAE1D,YAAY;AACZ,uDAAqC;AACrC,8DAA4C;AAC5C,kEAAgD;AAChD,gEAA8C;AAC9C,gEAA8C;AAC9C,4DAA0C;AAC1C,kEAAgD;AAChD,gFAA8D;AAC9D,sEAAoD;AACpD,sEAAoD;AACpD,sEAAoD;AACpD,8DAA4C;AAC5C,wDAAsC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=chart-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-data.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/intefaces/analytics/chart-data.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=incident-analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incident-analytics.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/intefaces/analytics/incident-analytics.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./chart-data"), exports);
18
+ __exportStar(require("./incident-analytics"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/intefaces/analytics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,uDAAqC"}
@@ -0,0 +1,3 @@
1
+ // Analytics Request DTOs for shared use across services
2
+ export {};
3
+ //# sourceMappingURL=analytics-request.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics-request.dto.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/analytics/analytics-request.dto.ts"],"names":[],"mappings":"AAAA,wDAAwD"}
@@ -0,0 +1,3 @@
1
+ // Analytics Response DTOs for shared use across services
2
+ export {};
3
+ //# sourceMappingURL=analytics-response.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics-response.dto.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/analytics/analytics-response.dto.ts"],"names":[],"mappings":"AAAA,yDAAyD"}
@@ -0,0 +1,3 @@
1
+ export * from './analytics-request.dto';
2
+ export * from './analytics-response.dto';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/analytics/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC"}
@@ -27,6 +27,7 @@ export * from './dtos/reporter/update-incident-reporter.dto';
27
27
  export * from './dtos/report/create-incident-report.dto';
28
28
  export * from './dtos/report/incident-report.dto';
29
29
  export * from './dtos/report/update-incident-report.dto';
30
+ export * from './dtos/analytics';
30
31
  //enums
31
32
  export * from './enums/incident-app-id.enum';
32
33
  export * from './enums/incident-channel.enum';
@@ -48,4 +49,5 @@ export * from './intefaces/incident-status-changed';
48
49
  export * from './intefaces/incident-status-details';
49
50
  export * from './intefaces/incident-on-hold-record';
50
51
  export * from './intefaces/incident-report';
52
+ export * from './intefaces/analytics';
51
53
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/incident/index.ts"],"names":[],"mappings":"AAAA,OAAO;AACP,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,uCAAuC,CAAC;AACtD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,uEAAuE,CAAC;AACtF,cAAc,8EAA8E,CAAC;AAC7F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,uCAAuC,CAAC;AACtD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AAEzD,OAAO;AACP,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2CAA2C,CAAC;AAE1D,YAAY;AACZ,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/incident/index.ts"],"names":[],"mappings":"AAAA,OAAO;AACP,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,uCAAuC,CAAC;AACtD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,uEAAuE,CAAC;AACtF,cAAc,8EAA8E,CAAC;AAC7F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,uCAAuC,CAAC;AACtD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,kBAAkB,CAAC;AAEjC,OAAO;AACP,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2CAA2C,CAAC;AAE1D,YAAY;AACZ,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=chart-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-data.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/intefaces/analytics/chart-data.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=incident-analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incident-analytics.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/intefaces/analytics/incident-analytics.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export * from './chart-data';
2
+ export * from './incident-analytics';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/intefaces/analytics/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,34 @@
1
+ export interface AnalyticsFilterDto {
2
+ startDate?: Date;
3
+ endDate?: Date;
4
+ organizationId?: number;
5
+ controlCentreId?: number;
6
+ status?: string[];
7
+ priority?: string[];
8
+ channel?: string[];
9
+ categoryId?: number[];
10
+ typeId?: number[];
11
+ assigneeIds?: number[];
12
+ responseUnitIds?: number[];
13
+ }
14
+ export interface DateRangeDto {
15
+ start: Date;
16
+ end: Date;
17
+ label: string;
18
+ }
19
+ export interface ChartParametersDto {
20
+ chartType?: string;
21
+ limit?: number;
22
+ groupBy?: string;
23
+ granularity?: 'hour' | 'day' | 'week' | 'month' | 'quarter' | 'year';
24
+ }
25
+ export interface ForecastParametersDto {
26
+ periods?: number;
27
+ confidence?: number;
28
+ model?: 'linear' | 'seasonal' | 'arima' | 'auto';
29
+ }
30
+ export interface AnomalyDetectionParametersDto {
31
+ sensitivity?: number;
32
+ threshold?: number;
33
+ types?: ('volume_spike' | 'response_delay' | 'unusual_pattern')[];
34
+ }
@@ -0,0 +1,132 @@
1
+ export interface ChartDataPointDto {
2
+ label: string;
3
+ value: number;
4
+ percentage?: number;
5
+ color?: string;
6
+ }
7
+ export interface TimeSeriesDataPointDto {
8
+ timestamp: string;
9
+ value: number;
10
+ label?: string;
11
+ }
12
+ export interface ComparisonDataPointDto {
13
+ name: string;
14
+ current: number;
15
+ previous: number;
16
+ change: number;
17
+ changePercentage: number;
18
+ }
19
+ export interface GeographicDataPointDto {
20
+ location: string;
21
+ latitude?: number;
22
+ longitude?: number;
23
+ count: number;
24
+ percentage?: number;
25
+ }
26
+ export interface TrendDataPointDto {
27
+ period: string;
28
+ value: number;
29
+ trend: 'up' | 'down' | 'stable';
30
+ changeFromPrevious?: number;
31
+ }
32
+ export interface DrillDownDataPointDto {
33
+ category: string;
34
+ value: number;
35
+ subCategories?: ChartDataPointDto[];
36
+ }
37
+ export interface PerformanceMetricDto {
38
+ name: string;
39
+ value: number;
40
+ unit: string;
41
+ benchmark?: number;
42
+ status: 'good' | 'warning' | 'critical';
43
+ description?: string;
44
+ }
45
+ export interface IncidentOverviewDataDto {
46
+ totalIncidents: number;
47
+ activeIncidents: number;
48
+ resolvedIncidents: number;
49
+ avgResponseTime: number;
50
+ avgResolutionTime: number;
51
+ incidentsToday: number;
52
+ incidentsThisWeek: number;
53
+ incidentsThisMonth: number;
54
+ escalatedIncidents: number;
55
+ criticalIncidents: number;
56
+ responseTimeTarget: number;
57
+ resolutionTimeTarget: number;
58
+ slaCompliance: number;
59
+ }
60
+ export interface IncidentAnalyticsDataDto {
61
+ overview: IncidentOverviewDataDto;
62
+ statusDistribution: ChartDataPointDto[];
63
+ priorityDistribution: ChartDataPointDto[];
64
+ categoryAnalysis: ChartDataPointDto[];
65
+ timeBasedAnalysis: TimeSeriesDataPointDto[];
66
+ geographicAnalysis: GeographicDataPointDto[];
67
+ responseMetrics: PerformanceMetricDto[];
68
+ trendAnalysis: TrendDataPointDto[];
69
+ }
70
+ export interface IncidentHeatmapDataDto {
71
+ timeOfDay: number;
72
+ dayOfWeek: number;
73
+ value: number;
74
+ date?: string;
75
+ }
76
+ export interface IncidentVolumeDataDto {
77
+ period: string;
78
+ total: number;
79
+ resolved: number;
80
+ active: number;
81
+ escalated: number;
82
+ }
83
+ export interface ResponseTimeAnalysisDto {
84
+ averageResponseTime: number;
85
+ targetResponseTime: number;
86
+ performanceByPriority: PerformanceByPriorityDto[];
87
+ performanceByCategory: PerformanceByCategoryDto[];
88
+ monthlyTrends: TimeSeriesDataPointDto[];
89
+ }
90
+ export interface PerformanceByPriorityDto {
91
+ priority: string;
92
+ averageTime: number;
93
+ targetTime: number;
94
+ complianceRate: number;
95
+ incidentCount: number;
96
+ }
97
+ export interface PerformanceByCategoryDto {
98
+ category: string;
99
+ averageTime: number;
100
+ incidentCount: number;
101
+ trend: 'improving' | 'declining' | 'stable';
102
+ }
103
+ export interface IncidentForecastDataDto {
104
+ predicted: TimeSeriesDataPointDto[];
105
+ confidence: {
106
+ upper: TimeSeriesDataPointDto[];
107
+ lower: TimeSeriesDataPointDto[];
108
+ };
109
+ historicalAccuracy: number;
110
+ nextWeekPrediction: number;
111
+ nextMonthPrediction: number;
112
+ }
113
+ export interface AnomalyDetectionDataDto {
114
+ anomalies: {
115
+ timestamp: string;
116
+ actualValue: number;
117
+ expectedValue: number;
118
+ severity: 'low' | 'medium' | 'high';
119
+ type: 'volume_spike' | 'response_delay' | 'unusual_pattern';
120
+ description: string;
121
+ }[];
122
+ overallScore: number;
123
+ patterns: string[];
124
+ }
125
+ export interface ComplianceMetricsDto {
126
+ slaCompliance: number;
127
+ responseTimeCompliance: number;
128
+ resolutionTimeCompliance: number;
129
+ escalationCompliance: number;
130
+ documentationCompliance: number;
131
+ trendsOverTime: TimeSeriesDataPointDto[];
132
+ }
@@ -0,0 +1,2 @@
1
+ export * from './analytics-request.dto';
2
+ export * from './analytics-response.dto';
@@ -26,6 +26,7 @@ export * from './dtos/reporter/update-incident-reporter.dto';
26
26
  export * from './dtos/report/create-incident-report.dto';
27
27
  export * from './dtos/report/incident-report.dto';
28
28
  export * from './dtos/report/update-incident-report.dto';
29
+ export * from './dtos/analytics';
29
30
  export * from './enums/incident-app-id.enum';
30
31
  export * from './enums/incident-channel.enum';
31
32
  export * from './enums/incident-class.enum';
@@ -45,3 +46,4 @@ export * from './intefaces/incident-status-changed';
45
46
  export * from './intefaces/incident-status-details';
46
47
  export * from './intefaces/incident-on-hold-record';
47
48
  export * from './intefaces/incident-report';
49
+ export * from './intefaces/analytics';
@@ -0,0 +1,62 @@
1
+ export interface ChartDataPoint {
2
+ label: string;
3
+ value: number;
4
+ percentage?: number;
5
+ color?: string;
6
+ }
7
+ export interface TimeSeriesDataPoint {
8
+ timestamp: string;
9
+ value: number;
10
+ label?: string;
11
+ }
12
+ export interface ComparisonDataPoint {
13
+ name: string;
14
+ current: number;
15
+ previous: number;
16
+ change: number;
17
+ changePercentage: number;
18
+ }
19
+ export interface GeographicDataPoint {
20
+ location: string;
21
+ latitude?: number;
22
+ longitude?: number;
23
+ count: number;
24
+ percentage?: number;
25
+ }
26
+ export interface TrendDataPoint {
27
+ period: string;
28
+ value: number;
29
+ trend: 'up' | 'down' | 'stable';
30
+ changeFromPrevious?: number;
31
+ }
32
+ export interface DrillDownDataPoint {
33
+ category: string;
34
+ value: number;
35
+ subCategories?: ChartDataPoint[];
36
+ }
37
+ export interface PerformanceMetric {
38
+ name: string;
39
+ value: number;
40
+ unit: string;
41
+ benchmark?: number;
42
+ status: 'good' | 'warning' | 'critical';
43
+ description?: string;
44
+ }
45
+ export interface AnalyticsFilter {
46
+ startDate?: Date;
47
+ endDate?: Date;
48
+ organizationId?: number;
49
+ controlCentreId?: number;
50
+ status?: string[];
51
+ priority?: string[];
52
+ channel?: string[];
53
+ categoryId?: number[];
54
+ typeId?: number[];
55
+ assigneeIds?: number[];
56
+ responseUnitIds?: number[];
57
+ }
58
+ export interface DateRange {
59
+ start: Date;
60
+ end: Date;
61
+ label: string;
62
+ }
@@ -0,0 +1,90 @@
1
+ import { ChartDataPoint, TimeSeriesDataPoint, GeographicDataPoint, TrendDataPoint, PerformanceMetric } from './chart-data';
2
+ export interface IncidentAnalyticsData {
3
+ overview: IncidentOverviewData;
4
+ statusDistribution: ChartDataPoint[];
5
+ priorityDistribution: ChartDataPoint[];
6
+ categoryAnalysis: ChartDataPoint[];
7
+ timeBasedAnalysis: TimeSeriesDataPoint[];
8
+ geographicAnalysis: GeographicDataPoint[];
9
+ responseMetrics: PerformanceMetric[];
10
+ trendAnalysis: TrendDataPoint[];
11
+ }
12
+ export interface IncidentOverviewData {
13
+ totalIncidents: number;
14
+ activeIncidents: number;
15
+ resolvedIncidents: number;
16
+ avgResponseTime: number;
17
+ avgResolutionTime: number;
18
+ incidentsToday: number;
19
+ incidentsThisWeek: number;
20
+ incidentsThisMonth: number;
21
+ escalatedIncidents: number;
22
+ criticalIncidents: number;
23
+ responseTimeTarget: number;
24
+ resolutionTimeTarget: number;
25
+ slaCompliance: number;
26
+ }
27
+ export interface IncidentHeatmapData {
28
+ timeOfDay: number;
29
+ dayOfWeek: number;
30
+ value: number;
31
+ date?: string;
32
+ }
33
+ export interface IncidentVolumeData {
34
+ period: string;
35
+ total: number;
36
+ resolved: number;
37
+ active: number;
38
+ escalated: number;
39
+ }
40
+ export interface ResponseTimeAnalysis {
41
+ averageResponseTime: number;
42
+ targetResponseTime: number;
43
+ performanceByPriority: PerformanceByPriority[];
44
+ performanceByCategory: PerformanceByCategory[];
45
+ monthlyTrends: TimeSeriesDataPoint[];
46
+ }
47
+ export interface PerformanceByPriority {
48
+ priority: string;
49
+ averageTime: number;
50
+ targetTime: number;
51
+ complianceRate: number;
52
+ incidentCount: number;
53
+ }
54
+ export interface PerformanceByCategory {
55
+ category: string;
56
+ averageTime: number;
57
+ incidentCount: number;
58
+ trend: 'improving' | 'declining' | 'stable';
59
+ }
60
+ export interface IncidentForecastData {
61
+ predicted: TimeSeriesDataPoint[];
62
+ confidence: {
63
+ upper: TimeSeriesDataPoint[];
64
+ lower: TimeSeriesDataPoint[];
65
+ };
66
+ historicalAccuracy: number;
67
+ nextWeekPrediction: number;
68
+ nextMonthPrediction: number;
69
+ }
70
+ export interface AnomalyDetectionData {
71
+ anomalies: {
72
+ timestamp: string;
73
+ actualValue: number;
74
+ expectedValue: number;
75
+ severity: 'low' | 'medium' | 'high';
76
+ type: 'volume_spike' | 'response_delay' | 'unusual_pattern';
77
+ description: string;
78
+ }[];
79
+ overallScore: number;
80
+ patterns: string[];
81
+ }
82
+ export interface ComplianceMetrics {
83
+ slaCompliance: number;
84
+ responseTimeCompliance: number;
85
+ resolutionTimeCompliance: number;
86
+ escalationCompliance: number;
87
+ documentationCompliance: number;
88
+ trendsOverTime: TimeSeriesDataPoint[];
89
+ }
90
+ export { ChartDataPoint, TimeSeriesDataPoint, ComparisonDataPoint, GeographicDataPoint, TrendDataPoint, DrillDownDataPoint, PerformanceMetric, AnalyticsFilter, DateRange } from './chart-data';
@@ -0,0 +1,2 @@
1
+ export * from './chart-data';
2
+ export * from './incident-analytics';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "grm-shared-library",
3
- "version": "1.1.53",
3
+ "version": "1.1.54",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "types": "dist/types/index.d.ts",