clarion-shared-types 1.0.120 → 1.0.121

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/dist/cjs/modules/gis/index.js +1 -0
  2. package/dist/cjs/modules/gis/index.js.map +1 -1
  3. package/dist/cjs/modules/gis/interfaces/zone-analytics.js +3 -0
  4. package/dist/cjs/modules/gis/interfaces/zone-analytics.js.map +1 -0
  5. package/dist/cjs/modules/organization/index.js +1 -0
  6. package/dist/cjs/modules/organization/index.js.map +1 -1
  7. package/dist/cjs/modules/organization/interfaces/organization-analytics.js +15 -0
  8. package/dist/cjs/modules/organization/interfaces/organization-analytics.js.map +1 -0
  9. package/dist/cjs/modules/permission/enums/permission-actions.enum.js +2 -0
  10. package/dist/cjs/modules/permission/enums/permission-actions.enum.js.map +1 -1
  11. package/dist/esm/modules/gis/index.js +1 -0
  12. package/dist/esm/modules/gis/index.js.map +1 -1
  13. package/dist/esm/modules/gis/interfaces/zone-analytics.js +2 -0
  14. package/dist/esm/modules/gis/interfaces/zone-analytics.js.map +1 -0
  15. package/dist/esm/modules/organization/index.js +1 -0
  16. package/dist/esm/modules/organization/index.js.map +1 -1
  17. package/dist/esm/modules/organization/interfaces/organization-analytics.js +14 -0
  18. package/dist/esm/modules/organization/interfaces/organization-analytics.js.map +1 -0
  19. package/dist/esm/modules/permission/enums/permission-actions.enum.js +2 -0
  20. package/dist/esm/modules/permission/enums/permission-actions.enum.js.map +1 -1
  21. package/dist/types/modules/gis/index.d.ts +1 -0
  22. package/dist/types/modules/gis/interfaces/zone-analytics.d.ts +143 -0
  23. package/dist/types/modules/organization/index.d.ts +1 -0
  24. package/dist/types/modules/organization/interfaces/organization-analytics.d.ts +200 -0
  25. package/dist/types/modules/permission/enums/permission-actions.enum.d.ts +1 -0
  26. package/package.json +1 -1
@@ -26,6 +26,7 @@ __exportStar(require("./interfaces/polygon-validation-result"), exports);
26
26
  __exportStar(require("./interfaces/zone"), exports);
27
27
  __exportStar(require("./interfaces/zone-for-point"), exports);
28
28
  __exportStar(require("./interfaces/zone-match-result"), exports);
29
+ __exportStar(require("./interfaces/zone-analytics"), exports);
29
30
  __exportStar(require("./interfaces/zone-near-point"), exports);
30
31
  __exportStar(require("./interfaces/zone-statistics"), exports);
31
32
  __exportStar(require("./enums/routing.enum"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/gis/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kFAAgE;AAChE,4DAA0C;AAC1C,qDAAmC;AACnC,gEAA8C;AAC9C,6EAA2D;AAC3D,uEAAqD;AACrD,iEAA+C;AAC/C,8DAA4C;AAC5C,yEAAuD;AACvD,oDAAkC;AAClC,8DAA4C;AAC5C,iEAA+C;AAC/C,+DAA6C;AAC7C,+DAA6C;AAC7C,uDAAqC;AACrC,0DAAwC;AACxC,uDAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/gis/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kFAAgE;AAChE,4DAA0C;AAC1C,qDAAmC;AACnC,gEAA8C;AAC9C,6EAA2D;AAC3D,uEAAqD;AACrD,iEAA+C;AAC/C,8DAA4C;AAC5C,yEAAuD;AACvD,oDAAkC;AAClC,8DAA4C;AAC5C,iEAA+C;AAC/C,8DAA4C;AAC5C,+DAA6C;AAC7C,+DAA6C;AAC7C,uDAAqC;AACrC,0DAAwC;AACxC,uDAAqC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=zone-analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-analytics.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/zone-analytics.ts"],"names":[],"mappings":""}
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  // Interfaces
18
18
  __exportStar(require("./interfaces/organization"), exports);
19
19
  __exportStar(require("./interfaces/organization-sla"), exports);
20
+ __exportStar(require("./interfaces/organization-analytics"), exports);
20
21
  // Enums
21
22
  __exportStar(require("./enums/org-status.enum"), exports);
22
23
  __exportStar(require("./enums/org-type.enum"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/organization/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,aAAa;AACb,4DAA0C;AAC1C,gEAA8C;AAE9C,QAAQ;AACR,0DAAwC;AACxC,wDAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/organization/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,aAAa;AACb,4DAA0C;AAC1C,gEAA8C;AAC9C,sEAAoD;AAEpD,QAAQ;AACR,0DAAwC;AACxC,wDAAsC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /**
3
+ * Organization analytics, the organization half (the admin's Organization Analytics):
4
+ * the organizations, their control centres, the response units they have set up and
5
+ * what those can respond to, and the responders who crew them - computed by
6
+ * clarion-organization. The other half, the zones the control centres cover, is
7
+ * ZoneAnalytics (clarion-gis); both answer the same query.
8
+ *
9
+ * The structure - organizations, control centres, units, responders - is as it stands
10
+ * NOW. What the period adds: what was created in it, and the responders' duty in it.
11
+ * Counts, rates and durations only - never a phone number, an address, a person or a
12
+ * typed reason.
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ //# sourceMappingURL=organization-analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization-analytics.js","sourceRoot":"","sources":["../../../../../src/modules/organization/interfaces/organization-analytics.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG"}
@@ -8,6 +8,8 @@ var PermissionActions;
8
8
  PermissionActions["READ_ORGANIZATION"] = "read:organization";
9
9
  PermissionActions["UPDATE_ORGANIZATION"] = "update:organization";
10
10
  PermissionActions["DELETE_ORGANIZATION"] = "delete:organization";
11
+ // Organizations, control centres, units, responders' duty and the zones they cover.
12
+ PermissionActions["READ_ORGANIZATION_ANALYTICS"] = "read:organization-analytics";
11
13
  // Module: Partner
12
14
  PermissionActions["CREATE_PARTNER"] = "create:partner";
13
15
  PermissionActions["READ_PARTNER"] = "read:partner";
@@ -1 +1 @@
1
- {"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export * from './interfaces/polygon-validation-result';
10
10
  export * from './interfaces/zone';
11
11
  export * from './interfaces/zone-for-point';
12
12
  export * from './interfaces/zone-match-result';
13
+ export * from './interfaces/zone-analytics';
13
14
  export * from './interfaces/zone-near-point';
14
15
  export * from './interfaces/zone-statistics';
15
16
  export * from './enums/routing.enum';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/gis/index.ts"],"names":[],"mappings":"AAAA,cAAc,iDAAiD,CAAC;AAChE,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/gis/index.ts"],"names":[],"mappings":"AAAA,cAAc,iDAAiD,CAAC;AAChE,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=zone-analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-analytics.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/zone-analytics.ts"],"names":[],"mappings":""}
@@ -1,6 +1,7 @@
1
1
  // Interfaces
2
2
  export * from './interfaces/organization';
3
3
  export * from './interfaces/organization-sla';
4
+ export * from './interfaces/organization-analytics';
4
5
  // Enums
5
6
  export * from './enums/org-status.enum';
6
7
  export * from './enums/org-type.enum';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/organization/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAE9C,QAAQ;AACR,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/organization/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AAEpD,QAAQ;AACR,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Organization analytics, the organization half (the admin's Organization Analytics):
3
+ * the organizations, their control centres, the response units they have set up and
4
+ * what those can respond to, and the responders who crew them - computed by
5
+ * clarion-organization. The other half, the zones the control centres cover, is
6
+ * ZoneAnalytics (clarion-gis); both answer the same query.
7
+ *
8
+ * The structure - organizations, control centres, units, responders - is as it stands
9
+ * NOW. What the period adds: what was created in it, and the responders' duty in it.
10
+ * Counts, rates and durations only - never a phone number, an address, a person or a
11
+ * typed reason.
12
+ */
13
+ export {};
14
+ //# sourceMappingURL=organization-analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization-analytics.js","sourceRoot":"","sources":["../../../../../src/modules/organization/interfaces/organization-analytics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
@@ -5,6 +5,8 @@ export var PermissionActions;
5
5
  PermissionActions["READ_ORGANIZATION"] = "read:organization";
6
6
  PermissionActions["UPDATE_ORGANIZATION"] = "update:organization";
7
7
  PermissionActions["DELETE_ORGANIZATION"] = "delete:organization";
8
+ // Organizations, control centres, units, responders' duty and the zones they cover.
9
+ PermissionActions["READ_ORGANIZATION_ANALYTICS"] = "read:organization-analytics";
8
10
  // Module: Partner
9
11
  PermissionActions["CREATE_PARTNER"] = "create:partner";
10
12
  PermissionActions["READ_PARTNER"] = "read:partner";
@@ -1 +1 @@
1
- {"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export * from './interfaces/polygon-validation-result';
10
10
  export * from './interfaces/zone';
11
11
  export * from './interfaces/zone-for-point';
12
12
  export * from './interfaces/zone-match-result';
13
+ export * from './interfaces/zone-analytics';
13
14
  export * from './interfaces/zone-near-point';
14
15
  export * from './interfaces/zone-statistics';
15
16
  export * from './enums/routing.enum';
@@ -0,0 +1,143 @@
1
+ import { OrganizationAnalyticsCount, OrganizationAnalyticsRange, OrganizationAnalyticsScope } from '../../organization/interfaces/organization-analytics';
2
+ /**
3
+ * Organization analytics, the zone half: the areas the control centres cover - how
4
+ * much ground, which counties, where zones overlap - computed by clarion-gis for the
5
+ * same query as OrganizationAnalytics.
6
+ *
7
+ * As the zones stand NOW; the period adds only what was created in it. Areas are on
8
+ * the earth's surface (geography), in km². Coverage counts the ACTIVE zones that route
9
+ * incidents - every type but EXCLUSION, whose area is taken out of what the others
10
+ * cover. Never a zone's shape: names, counts and areas only.
11
+ */
12
+ export interface ZoneAnalyticsTotals {
13
+ zones: number;
14
+ active: number;
15
+ created: number;
16
+ /** The previous period of the same length; null for "forever". */
17
+ previousCreated: number | null;
18
+ byStatus: OrganizationAnalyticsCount[];
19
+ byType: OrganizationAnalyticsCount[];
20
+ /** Control centres and organizations with at least one active zone. */
21
+ controlCentresWithZones: number;
22
+ organizationsWithZones: number;
23
+ /** The active routing zones' areas added up, and the ground they cover once (overlaps counted once, exclusions taken out). */
24
+ zonedAreaKm2: number;
25
+ coveredAreaKm2: number;
26
+ /** Ground covered by more than one active routing zone of the same organization. */
27
+ overlapAreaKm2: number;
28
+ /** Active EXCLUSION zones: incidents there are not routed. */
29
+ exclusionAreaKm2: number;
30
+ medianZoneAreaKm2: number | null;
31
+ /** Active zones whose effective window has not started yet, or has ended. */
32
+ notYetEffective: number;
33
+ expired: number;
34
+ }
35
+ export interface ZoneAnalyticsCountryCoverage {
36
+ isoCode: string;
37
+ name: string;
38
+ areaKm2: number;
39
+ coveredKm2: number;
40
+ /** coveredKm2 / areaKm2, as a percentage. */
41
+ coveredPercent: number | null;
42
+ }
43
+ export interface ZoneAnalyticsCountyCoverage {
44
+ code: number;
45
+ name: string;
46
+ countryIso: string;
47
+ areaKm2: number;
48
+ coveredKm2: number;
49
+ coveredPercent: number | null;
50
+ /** Active routing zones reaching into it. */
51
+ zones: number;
52
+ }
53
+ export interface ZoneAnalyticsCoverage {
54
+ /** The countries the zones in scope reach into. */
55
+ countries: ZoneAnalyticsCountryCoverage[];
56
+ /** Every county of those countries, most covered first - uncovered ones included. */
57
+ counties: ZoneAnalyticsCountyCoverage[];
58
+ /** Counties with any coverage, and those covered (almost) entirely - 95% or more. */
59
+ countiesCovered: number;
60
+ countiesFullyCovered: number;
61
+ countiesUncovered: number;
62
+ }
63
+ /** Two active routing zones of one organization that share ground. */
64
+ export interface ZoneAnalyticsOverlapRow {
65
+ zoneId: number;
66
+ zoneName: string;
67
+ controlCentreId: number;
68
+ otherZoneId: number;
69
+ otherZoneName: string;
70
+ otherControlCentreId: number;
71
+ organizationId: number;
72
+ overlapKm2: number;
73
+ /** Both zones have the same routing priority. */
74
+ samePriority: boolean;
75
+ /** Both zones belong to one control centre - harmless for routing. */
76
+ sameControlCentre: boolean;
77
+ }
78
+ export interface ZoneAnalyticsOverlaps {
79
+ /** Overlapping pairs (sharing at least a hectare). */
80
+ pairs: number;
81
+ /** Pairs of different control centres with the same priority: an incident in the shared ground could go to either. */
82
+ ambiguousPairs: number;
83
+ sameControlCentrePairs: number;
84
+ /** The largest overlaps first; capped (see `rowsTruncated`). */
85
+ rows: ZoneAnalyticsOverlapRow[];
86
+ rowsTruncated: boolean;
87
+ }
88
+ export interface ZoneAnalyticsZoneRow {
89
+ zoneId: number;
90
+ name: string;
91
+ organizationId: number;
92
+ controlCentreId: number;
93
+ type: string;
94
+ status: string;
95
+ /** Lower routes first where zones overlap. */
96
+ priority: number;
97
+ areaKm2: number;
98
+ /** Counties it reaches into, and the zones it overlaps. */
99
+ counties: number;
100
+ overlaps: number;
101
+ effectiveFrom: string | null;
102
+ effectiveUntil: string | null;
103
+ createdAt: string;
104
+ }
105
+ export interface ZoneAnalyticsControlCentreRow {
106
+ controlCentreId: number;
107
+ organizationId: number;
108
+ zones: number;
109
+ activeZones: number;
110
+ /** Ground its active routing zones cover, once. */
111
+ coveredKm2: number;
112
+ counties: number;
113
+ }
114
+ /** Platform view only: one row per organization. */
115
+ export interface ZoneAnalyticsOrganizationRow {
116
+ organizationId: number;
117
+ zones: number;
118
+ activeZones: number;
119
+ controlCentres: number;
120
+ coveredKm2: number;
121
+ overlapPairs: number;
122
+ ambiguousPairs: number;
123
+ }
124
+ export interface ZoneAnalyticsTimelinePoint {
125
+ /** Start of the bucket, ISO 8601. */
126
+ at: string;
127
+ created: number;
128
+ }
129
+ export interface ZoneAnalytics {
130
+ generatedAt: string;
131
+ range: OrganizationAnalyticsRange;
132
+ scope: OrganizationAnalyticsScope;
133
+ totals: ZoneAnalyticsTotals;
134
+ coverage: ZoneAnalyticsCoverage;
135
+ overlaps: ZoneAnalyticsOverlaps;
136
+ /** The zones in scope, largest first; capped (see `zonesTruncated`). */
137
+ zones: ZoneAnalyticsZoneRow[];
138
+ zonesTruncated: boolean;
139
+ byControlCentre: ZoneAnalyticsControlCentreRow[];
140
+ /** Platform view only; null otherwise. */
141
+ byOrganization: ZoneAnalyticsOrganizationRow[] | null;
142
+ timeline: ZoneAnalyticsTimelinePoint[];
143
+ }
@@ -1,4 +1,5 @@
1
1
  export * from './interfaces/organization';
2
2
  export * from './interfaces/organization-sla';
3
+ export * from './interfaces/organization-analytics';
3
4
  export * from './enums/org-status.enum';
4
5
  export * from './enums/org-type.enum';
@@ -0,0 +1,200 @@
1
+ /**
2
+ * Organization analytics, the organization half (the admin's Organization Analytics):
3
+ * the organizations, their control centres, the response units they have set up and
4
+ * what those can respond to, and the responders who crew them - computed by
5
+ * clarion-organization. The other half, the zones the control centres cover, is
6
+ * ZoneAnalytics (clarion-gis); both answer the same query.
7
+ *
8
+ * The structure - organizations, control centres, units, responders - is as it stands
9
+ * NOW. What the period adds: what was created in it, and the responders' duty in it.
10
+ * Counts, rates and durations only - never a phone number, an address, a person or a
11
+ * typed reason.
12
+ */
13
+ /** How the period is cut into points. Chosen by the service from the length of the period. */
14
+ export type OrganizationAnalyticsBucket = 'hour' | 'day' | 'week' | 'month';
15
+ export interface OrganizationAnalyticsRange {
16
+ /** Inclusive, ISO 8601. For "forever", the start of the data in scope. */
17
+ from: string;
18
+ /** Exclusive, ISO 8601. */
19
+ to: string;
20
+ bucket: OrganizationAnalyticsBucket;
21
+ /** IANA time zone the buckets (and the hour-of-week grid) are cut in. */
22
+ timeZone: string;
23
+ }
24
+ /** Whose figures these are, as the service decided from the caller. */
25
+ export interface OrganizationAnalyticsScope {
26
+ /** Null: every organization (a Super-Admin's platform view). */
27
+ organizationId: number | null;
28
+ /** Null: every control centre of the organization. */
29
+ controlCentreId: number | null;
30
+ platform: boolean;
31
+ }
32
+ /** A count by a key (a status, a type, a country), largest first unless the section says otherwise. */
33
+ export interface OrganizationAnalyticsCount<K extends string = string> {
34
+ key: K;
35
+ count: number;
36
+ }
37
+ /** Median and 90th percentile of one duration, in seconds; null when nothing was measured. */
38
+ export interface OrganizationAnalyticsDuration {
39
+ samples: number;
40
+ medianSeconds: number | null;
41
+ p90Seconds: number | null;
42
+ }
43
+ /** The organizations in scope: every one for the platform, otherwise the caller's own. */
44
+ export interface OrganizationAnalyticsOrganizations {
45
+ total: number;
46
+ /** Created in the period, and in the previous period of the same length (null for "forever"). */
47
+ created: number;
48
+ previousCreated: number | null;
49
+ byStatus: OrganizationAnalyticsCount[];
50
+ /** ISO 3166-1 alpha-2. */
51
+ byCountry: OrganizationAnalyticsCount[];
52
+ /** The organization type it was registered with (Private, Public, ...). */
53
+ byType: OrganizationAnalyticsCount[];
54
+ /** The app (brand) it belongs to. */
55
+ byApp: OrganizationAnalyticsCount[];
56
+ /** Whether it handles incidents or grievances. */
57
+ byIncidentClass: OrganizationAnalyticsCount[];
58
+ }
59
+ export interface OrganizationAnalyticsControlCentres {
60
+ total: number;
61
+ active: number;
62
+ created: number;
63
+ previousCreated: number | null;
64
+ byStatus: OrganizationAnalyticsCount[];
65
+ /** Control centres with at least one unit in service, and with none. */
66
+ withUnits: number;
67
+ withoutUnits: number;
68
+ /** Control centres with at least one responder assigned to one of their units. */
69
+ withResponders: number;
70
+ /**
71
+ * For each capability (MEDICAL_RESPONSE, ...): the active control centres with no
72
+ * unit in service able to answer it. Every capability, zero counts included.
73
+ */
74
+ capabilityGaps: OrganizationAnalyticsCount[];
75
+ }
76
+ export interface OrganizationAnalyticsUnits {
77
+ total: number;
78
+ /** In service (`isActive`) and switched off. */
79
+ active: number;
80
+ inactive: number;
81
+ created: number;
82
+ previousCreated: number | null;
83
+ /** Vehicle, Person, Team. */
84
+ byType: OrganizationAnalyticsCount[];
85
+ /** What kind of each: the vehicle type (Ambulance, Security, ...), the person's category, or Team. */
86
+ byKind: OrganizationAnalyticsCount[];
87
+ /** As each was last set: a vehicle's status, a person's or a team's. */
88
+ byStatus: OrganizationAnalyticsCount[];
89
+ /**
90
+ * Units in service able to answer each capability - as configured on the unit, or
91
+ * as its type implies when nothing is configured. A unit can count under several.
92
+ * Every capability, zero counts included.
93
+ */
94
+ byCapability: OrganizationAnalyticsCount[];
95
+ /** Units whose capabilities were set on the unit rather than implied by its type. */
96
+ configuredCapabilities: number;
97
+ /** Units in service that answer nothing: none configured and none implied (a team, a volunteer). */
98
+ withoutCapability: number;
99
+ }
100
+ /** The responder app's people: who crews which unit, and their duty. */
101
+ export interface OrganizationAnalyticsResponders {
102
+ /** Responder-to-unit assignments, the people behind them, and the units that have any. */
103
+ memberships: number;
104
+ responders: number;
105
+ unitsWithResponders: number;
106
+ /** Units in service with no responder assigned. */
107
+ unitsWithoutResponders: number;
108
+ /** On duty now: responders, and the units they are on duty with. */
109
+ onDutyNow: number;
110
+ unitsOnDutyNow: number;
111
+ /** Duty sessions started in the period, and in the previous period (null for "forever"). */
112
+ sessions: number;
113
+ previousSessions: number | null;
114
+ /** Different responders who were on duty at any time in the period. */
115
+ respondersOnDuty: number;
116
+ /** Hours on duty within the period, every session counted for the part of it inside the period. */
117
+ dutyHours: number;
118
+ /** Length of the sessions started in the period that have ended. */
119
+ sessionLength: OrganizationAnalyticsDuration;
120
+ /** Why the period's ended sessions ended. */
121
+ endReasons: OrganizationAnalyticsCount[];
122
+ }
123
+ export interface OrganizationAnalyticsTimelinePoint {
124
+ /** Start of the bucket, ISO 8601. */
125
+ at: string;
126
+ organizations: number;
127
+ controlCentres: number;
128
+ units: number;
129
+ /** Duty sessions started, and hours on duty within the bucket. */
130
+ dutySessions: number;
131
+ dutyHours: number;
132
+ }
133
+ export interface OrganizationAnalyticsHourOfWeek {
134
+ /** 0 = Monday ... 6 = Sunday, in the period's time zone. */
135
+ day: number;
136
+ hour: number;
137
+ /** Duty sessions started in that hour. */
138
+ sessions: number;
139
+ }
140
+ /** A control centre in scope, as it stands now, and its responders' duty in the period. */
141
+ export interface OrganizationAnalyticsControlCentreRow {
142
+ controlCentreId: number;
143
+ organizationId: number;
144
+ name: string;
145
+ status: string;
146
+ createdAt: string;
147
+ units: number;
148
+ activeUnits: number;
149
+ responders: number;
150
+ onDutyNow: number;
151
+ dutyHours: number;
152
+ /** The capabilities its units in service can answer between them. */
153
+ capabilities: string[];
154
+ }
155
+ /** An organization in scope (the platform's every one, otherwise the caller's own). */
156
+ export interface OrganizationAnalyticsOrganizationRow {
157
+ organizationId: number;
158
+ name: string;
159
+ countryCode: string | null;
160
+ type: string | null;
161
+ appId: string | null;
162
+ incidentClass: string | null;
163
+ status: string;
164
+ createdAt: string;
165
+ controlCentres: number;
166
+ activeControlCentres: number;
167
+ units: number;
168
+ activeUnits: number;
169
+ responders: number;
170
+ onDutyNow: number;
171
+ dutyHours: number;
172
+ }
173
+ export interface OrganizationAnalytics {
174
+ generatedAt: string;
175
+ range: OrganizationAnalyticsRange;
176
+ scope: OrganizationAnalyticsScope;
177
+ organizations: OrganizationAnalyticsOrganizations;
178
+ controlCentres: OrganizationAnalyticsControlCentres;
179
+ units: OrganizationAnalyticsUnits;
180
+ responders: OrganizationAnalyticsResponders;
181
+ timeline: OrganizationAnalyticsTimelinePoint[];
182
+ /** Duty sessions started, by weekday and hour; only cells with sessions. */
183
+ dutyHourOfWeek: OrganizationAnalyticsHourOfWeek[];
184
+ /** The control centres in scope, most units first; capped (see `controlCentreRowsTruncated`). */
185
+ controlCentreRows: OrganizationAnalyticsControlCentreRow[];
186
+ controlCentreRowsTruncated: boolean;
187
+ /** The organizations in scope: one row for an organization's own staff. */
188
+ organizationRows: OrganizationAnalyticsOrganizationRow[];
189
+ }
190
+ /** The query both halves of the Organization analytics answer (OrganizationAnalyticsQueryDto in the services). */
191
+ export interface OrganizationAnalyticsQuery {
192
+ /** Inclusive, ISO 8601; omit for "forever". */
193
+ from?: string;
194
+ /** Exclusive, ISO 8601; omit for now. */
195
+ to?: string;
196
+ timeZone?: string;
197
+ /** Super-Admin only. */
198
+ organizationId?: number;
199
+ controlCentreId?: number;
200
+ }
@@ -3,6 +3,7 @@ export declare enum PermissionActions {
3
3
  READ_ORGANIZATION = "read:organization",
4
4
  UPDATE_ORGANIZATION = "update:organization",
5
5
  DELETE_ORGANIZATION = "delete:organization",
6
+ READ_ORGANIZATION_ANALYTICS = "read:organization-analytics",
6
7
  CREATE_PARTNER = "create:partner",
7
8
  READ_PARTNER = "read:partner",
8
9
  UPDATE_PARTNER = "update:partner",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clarion-shared-types",
3
- "version": "1.0.120",
3
+ "version": "1.0.121",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "types": "dist/types/index.d.ts",