grm-shared-library 1.1.206 → 1.1.208
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/README.md +75 -0
- package/dist/cjs/modules/role/constants/roles-by-scope.js +2 -1
- package/dist/cjs/modules/role/constants/roles-by-scope.js.map +1 -1
- package/dist/cjs/modules/role/data/roles.data.js +30 -0
- package/dist/cjs/modules/role/data/roles.data.js.map +1 -1
- package/dist/cjs/modules/role/enums/role.enum.js +1 -0
- package/dist/cjs/modules/role/enums/role.enum.js.map +1 -1
- package/dist/cjs/modules/tracking/enums/tracking-provider-code.enum.js +7 -4
- package/dist/cjs/modules/tracking/enums/tracking-provider-code.enum.js.map +1 -1
- package/dist/cjs/modules/tracking/enums/tracking-transport-type.enum.js +3 -3
- package/dist/cjs/modules/tracking/enums/tracking-transport-type.enum.js.map +1 -1
- package/dist/cjs/modules/tracking/index.js +2 -0
- package/dist/cjs/modules/tracking/index.js.map +1 -1
- package/dist/cjs/modules/tracking/interfaces/tracking-provider-descriptor.js +79 -0
- package/dist/cjs/modules/tracking/interfaces/tracking-provider-descriptor.js.map +1 -0
- package/dist/esm/modules/role/constants/roles-by-scope.js +2 -1
- package/dist/esm/modules/role/constants/roles-by-scope.js.map +1 -1
- package/dist/esm/modules/role/data/roles.data.js +30 -0
- package/dist/esm/modules/role/data/roles.data.js.map +1 -1
- package/dist/esm/modules/role/enums/role.enum.js +1 -0
- package/dist/esm/modules/role/enums/role.enum.js.map +1 -1
- package/dist/esm/modules/tracking/enums/tracking-provider-code.enum.js +7 -4
- package/dist/esm/modules/tracking/enums/tracking-provider-code.enum.js.map +1 -1
- package/dist/esm/modules/tracking/enums/tracking-transport-type.enum.js +3 -3
- package/dist/esm/modules/tracking/enums/tracking-transport-type.enum.js.map +1 -1
- package/dist/esm/modules/tracking/index.js +2 -0
- package/dist/esm/modules/tracking/index.js.map +1 -1
- package/dist/esm/modules/tracking/interfaces/tracking-provider-descriptor.js +75 -0
- package/dist/esm/modules/tracking/interfaces/tracking-provider-descriptor.js.map +1 -0
- package/dist/types/modules/role/enums/role.enum.d.ts +1 -0
- package/dist/types/modules/tracking/enums/tracking-provider-code.enum.d.ts +7 -4
- package/dist/types/modules/tracking/enums/tracking-transport-type.enum.d.ts +3 -3
- package/dist/types/modules/tracking/index.d.ts +1 -0
- package/dist/types/modules/tracking/interfaces/tracking-provider-descriptor.d.ts +117 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -3,6 +3,81 @@
|
|
|
3
3
|
Common code for GRM — shared types, enums, interfaces, DTOs and constants for the
|
|
4
4
|
Clarion / Upesy backend NestJS microservices.
|
|
5
5
|
|
|
6
|
+
## Calendar dates
|
|
7
|
+
|
|
8
|
+
One definition of what a date is, because there used to be four and they had
|
|
9
|
+
drifted apart.
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import {
|
|
13
|
+
ISO_CALENDAR_DATE_PATTERN, // the one regex - never write another
|
|
14
|
+
isCalendarDate, // a real YYYY-MM-DD day; rejects 2026-02-30
|
|
15
|
+
toCalendarDate, // Date | string -> YYYY-MM-DD | undefined
|
|
16
|
+
isPlausibleBirthDate, // not future, within 120 years, NO minimum age
|
|
17
|
+
calculateAge, isMinor, // whole years, UTC throughout
|
|
18
|
+
AGE_OF_MAJORITY_YEARS, // 18 - for COPY ONLY, never a validator
|
|
19
|
+
IsCalendarDate, IsBirthDate // class-validator decorators over the above
|
|
20
|
+
} from 'grm-shared-library';
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Why it refuses things
|
|
24
|
+
|
|
25
|
+
A calendar date has no time, no zone and no offset: somebody born on 17 April
|
|
26
|
+
1990 was born on that day in Nairobi, in Kampala and in London alike. Every bug
|
|
27
|
+
this module exists to prevent comes from treating it as a moment.
|
|
28
|
+
|
|
29
|
+
The old conversion did `new Date(freeText)` and then `.toISOString()`. Under the
|
|
30
|
+
production pods` own `TZ=Africa/Nairobi`:
|
|
31
|
+
|
|
32
|
+
| input | old result | |
|
|
33
|
+
|---|---|---|
|
|
34
|
+
| `04/17/1990` | `1990-04-16` | a day early |
|
|
35
|
+
| `new Date(1990,3,17)` | `1990-04-16` | a day early - and this is what a date picker hands you |
|
|
36
|
+
| `17/04/1990` | `undefined` | the East African spelling, refused |
|
|
37
|
+
| `1990-04-17` | `1990-04-17` | correct |
|
|
38
|
+
|
|
39
|
+
`toCalendarDate` now accepts exactly three things and refuses everything else:
|
|
40
|
+
|
|
41
|
+
1. `YYYY-MM-DD`
|
|
42
|
+
2. a full ISO-8601 instant in **UTC** (`1990-04-17T00:00:00.000Z`)
|
|
43
|
+
3. a `Date`, read in UTC - so build one with `Date.UTC`, never `new Date(y,m,d)`
|
|
44
|
+
|
|
45
|
+
An **offset** timestamp is refused too: `1990-04-17T00:00:00+03:00` is 16 April
|
|
46
|
+
in UTC, and only the sender knows which day they meant.
|
|
47
|
+
|
|
48
|
+
Free text is refused rather than guessed at. `04/17/1990` and `17/04/1990` are
|
|
49
|
+
the same eight characters in two orders, this platform serves Kenya, Uganda and
|
|
50
|
+
Tanzania where the second is the common spelling, and there is no reading of
|
|
51
|
+
that string that is safe to infer. A refused date surfaces as a field somebody
|
|
52
|
+
is asked to collect; a drifted one is a permanently wrong birthday at a partner
|
|
53
|
+
that cannot delete a member, on the record a paramedic uses to size a drug dose.
|
|
54
|
+
|
|
55
|
+
### No minimum age
|
|
56
|
+
|
|
57
|
+
`isPlausibleBirthDate` refuses a future date and one beyond a human lifespan,
|
|
58
|
+
and imposes no lower bound. Dependants on a family emergency-cover plan are
|
|
59
|
+
children by design - that is the whole point of registering them with a
|
|
60
|
+
responder - so a minimum-age rule would refuse exactly the people the feature
|
|
61
|
+
exists for. `AGE_OF_MAJORITY_YEARS` is there for wording, not for gating.
|
|
62
|
+
|
|
63
|
+
### A decorator alone guarantees nothing
|
|
64
|
+
|
|
65
|
+
`@IsCalendarDate` / `@IsBirthDate` are real validators, but on this platform
|
|
66
|
+
they are not enforcement on their own: clarion-authentication registers **no**
|
|
67
|
+
global `ValidationPipe`, the spreadsheet importer builds plain objects a pipe
|
|
68
|
+
never sees, and internal service-to-service calls bypass HTTP entirely. Any
|
|
69
|
+
service that OWNS a date must re-check it in the service layer, the way
|
|
70
|
+
`UserService.updateCountry` re-checks `isSupportedCountryCode`.
|
|
71
|
+
|
|
72
|
+
### Postgres round trip
|
|
73
|
+
|
|
74
|
+
A `type: date` column returns a **string** through this stack, not a `Date`:
|
|
75
|
+
`pg` parses OID 1082 into a local-midnight `Date` and TypeORM reads it back with
|
|
76
|
+
local components, so the two cancel out. It is correct, but correct by
|
|
77
|
+
cancellation - never pass a value from a date column into `new Date()`.
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
6
81
|
## Country & Currency (multi-country foundation)
|
|
7
82
|
|
|
8
83
|
Platform-level primitives for country-aware emergency response, newsfeed,
|
|
@@ -7,7 +7,8 @@ exports.ORGANIZATION_ROLES = [
|
|
|
7
7
|
role_enum_1.Roles.ORGANIZATION_ADMIN,
|
|
8
8
|
role_enum_1.Roles.ORGANIZATION_USER,
|
|
9
9
|
role_enum_1.Roles.ORGANIZATION_BILLING_ADMIN,
|
|
10
|
-
role_enum_1.Roles.ORGANIZATION_NEWSFEED_ADMIN
|
|
10
|
+
role_enum_1.Roles.ORGANIZATION_NEWSFEED_ADMIN,
|
|
11
|
+
role_enum_1.Roles.ORGANIZATION_PARTNERSHIPS_ADMIN
|
|
11
12
|
];
|
|
12
13
|
exports.CONTROL_CENTRE_ROLES = [
|
|
13
14
|
role_enum_1.Roles.CONTROL_CENTRE_ADMIN,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles-by-scope.js","sourceRoot":"","sources":["../../../../../src/modules/role/constants/roles-by-scope.ts"],"names":[],"mappings":";;;AAAA,kDAA2C;AAE9B,QAAA,kBAAkB,GAAa;IACxC,iBAAK,CAAC,kBAAkB;IACxB,iBAAK,CAAC,kBAAkB;IACxB,iBAAK,CAAC,iBAAiB;IACvB,iBAAK,CAAC,0BAA0B;IAChC,iBAAK,CAAC,2BAA2B;
|
|
1
|
+
{"version":3,"file":"roles-by-scope.js","sourceRoot":"","sources":["../../../../../src/modules/role/constants/roles-by-scope.ts"],"names":[],"mappings":";;;AAAA,kDAA2C;AAE9B,QAAA,kBAAkB,GAAa;IACxC,iBAAK,CAAC,kBAAkB;IACxB,iBAAK,CAAC,kBAAkB;IACxB,iBAAK,CAAC,iBAAiB;IACvB,iBAAK,CAAC,0BAA0B;IAChC,iBAAK,CAAC,2BAA2B;IACjC,iBAAK,CAAC,+BAA+B;CACxC,CAAC;AAEW,QAAA,oBAAoB,GAAa;IAC1C,iBAAK,CAAC,oBAAoB;IAC1B,iBAAK,CAAC,mBAAmB;IACzB,iBAAK,CAAC,SAAS;CAClB,CAAC;AAEW,QAAA,YAAY,GAAa;IAClC,iBAAK,CAAC,WAAW;CACpB,CAAC"}
|
|
@@ -200,6 +200,36 @@ exports.ROLES_DATA = [
|
|
|
200
200
|
permission_1.PermissionActions.READ_RESPONSE_UNIT
|
|
201
201
|
]
|
|
202
202
|
},
|
|
203
|
+
{
|
|
204
|
+
name: role_enum_1.Roles.ORGANIZATION_PARTNERSHIPS_ADMIN,
|
|
205
|
+
description: 'Organization Partnerships Admin: Manage partnerships with third-party responders - their configuration, coverage, dispatches and member registration',
|
|
206
|
+
permissions: [
|
|
207
|
+
//Partner: every action in the Partner permission module. Pinned by
|
|
208
|
+
//roles.spec.ts, so an action added to that module later has to be
|
|
209
|
+
//granted here - or deliberately withheld - rather than silently missed.
|
|
210
|
+
permission_1.PermissionActions.CREATE_PARTNER,
|
|
211
|
+
permission_1.PermissionActions.READ_PARTNER,
|
|
212
|
+
permission_1.PermissionActions.UPDATE_PARTNER,
|
|
213
|
+
permission_1.PermissionActions.DELETE_PARTNER,
|
|
214
|
+
//Partner dispatch
|
|
215
|
+
permission_1.PermissionActions.READ_PARTNER_DISPATCH,
|
|
216
|
+
permission_1.PermissionActions.APPROVE_PARTNER_DISPATCH,
|
|
217
|
+
permission_1.PermissionActions.UPDATE_PARTNER_DISPATCH,
|
|
218
|
+
permission_1.PermissionActions.CANCEL_PARTNER_DISPATCH,
|
|
219
|
+
permission_1.PermissionActions.RESEND_PARTNER_DISPATCH,
|
|
220
|
+
//Partner membership: includes reading and correcting a member's date
|
|
221
|
+
//of birth. Registering people with a partner is this role's job.
|
|
222
|
+
permission_1.PermissionActions.READ_PARTNER_MEMBERSHIP,
|
|
223
|
+
permission_1.PermissionActions.MANAGE_PARTNER_MEMBERSHIP,
|
|
224
|
+
//Billing: which packages a partnership registers subscribers of.
|
|
225
|
+
//Read-only - this role configures partnerships, not the packages.
|
|
226
|
+
permission_1.PermissionActions.READ_PACKAGE,
|
|
227
|
+
//Incident Category Type: which incident types and categories a
|
|
228
|
+
//partnership's coverage rules route to that partner. Read-only, and
|
|
229
|
+
//the taxonomy only - not the incidents themselves.
|
|
230
|
+
permission_1.PermissionActions.READ_INCIDENT_CATEGORY_TYPE
|
|
231
|
+
]
|
|
232
|
+
},
|
|
203
233
|
{
|
|
204
234
|
name: role_enum_1.Roles.CONTROL_CENTRE_ADMIN,
|
|
205
235
|
description: 'Control Centre Admin: Manage Control Centre',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles.data.js","sourceRoot":"","sources":["../../../../../src/modules/role/data/roles.data.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"roles.data.js","sourceRoot":"","sources":["../../../../../src/modules/role/data/roles.data.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ var Roles;
|
|
|
9
9
|
Roles["ORGANIZATION_USER"] = "Organization:User";
|
|
10
10
|
Roles["ORGANIZATION_BILLING_ADMIN"] = "Organization:Billing-Admin";
|
|
11
11
|
Roles["ORGANIZATION_NEWSFEED_ADMIN"] = "Organization:Newsfeed-Admin";
|
|
12
|
+
Roles["ORGANIZATION_PARTNERSHIPS_ADMIN"] = "Organization:Partnerships-Admin";
|
|
12
13
|
Roles["CONTROL_CENTRE_ADMIN"] = "Control-Centre:Admin";
|
|
13
14
|
Roles["CONTROL_CENTRE_USER"] = "Control-Centre:User";
|
|
14
15
|
Roles["RESPONDER"] = "Responder";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.enum.js","sourceRoot":"","sources":["../../../../../src/modules/role/enums/role.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"role.enum.js","sourceRoot":"","sources":["../../../../../src/modules/role/enums/role.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,KAYX;AAZD,WAAY,KAAK;IACb,oCAA2B,CAAA;IAC3B,kDAAyC,CAAA;IACzC,kDAAyC,CAAA;IACzC,gDAAuC,CAAA;IACvC,kEAAyD,CAAA;IACzD,oEAA2D,CAAA;IAC3D,4EAAmE,CAAA;IACnE,sDAA6C,CAAA;IAC7C,oDAA2C,CAAA;IAC3C,gCAAuB,CAAA;IACvB,oCAA2B,CAAA;AAC/B,CAAC,EAZW,KAAK,qBAAL,KAAK,QAYhB;AAED;;GAEG"}
|
|
@@ -8,15 +8,18 @@ exports.TrackingProviderCode = void 0;
|
|
|
8
8
|
* per-provider adapter inside clarion-response-tracking understands the raw
|
|
9
9
|
* wire format.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
* remaining values are reserved so future adapters can be
|
|
13
|
-
* the shared contracts, database columns or Kafka events.
|
|
11
|
+
* {@link TrackingProviderCode.TELOX} and {@link TrackingProviderCode.WIALON} have
|
|
12
|
+
* working adapters. The remaining values are reserved so future adapters can be
|
|
13
|
+
* added without changing the shared contracts, database columns or Kafka events.
|
|
14
|
+
*
|
|
15
|
+
* A value here does NOT mean the provider can be connected — ask the service
|
|
16
|
+
* (`GET /tracking/providers`, see TrackingProviderDescriptor) which adapters exist.
|
|
14
17
|
*/
|
|
15
18
|
var TrackingProviderCode;
|
|
16
19
|
(function (TrackingProviderCode) {
|
|
17
20
|
/** Telox WebSocket platform (G4S Phase 1 integration). */
|
|
18
21
|
TrackingProviderCode["TELOX"] = "TELOX";
|
|
19
|
-
/** Wialon
|
|
22
|
+
/** Wialon Hosting / Wialon Local, polled over the Remote API. */
|
|
20
23
|
TrackingProviderCode["WIALON"] = "WIALON";
|
|
21
24
|
/** Teltonika direct device ingestion (reserved — not implemented in Phase 1). */
|
|
22
25
|
TrackingProviderCode["TELTONIKA"] = "TELTONIKA";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking-provider-code.enum.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/enums/tracking-provider-code.enum.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"tracking-provider-code.enum.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/enums/tracking-provider-code.enum.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;GAaG;AACH,IAAY,oBAWX;AAXD,WAAY,oBAAoB;IAC5B,0DAA0D;IAC1D,uCAAe,CAAA;IACf,iEAAiE;IACjE,yCAAiB,CAAA;IACjB,iFAAiF;IACjF,+CAAuB,CAAA;IACvB,4CAA4C;IAC5C,+DAAuC,CAAA;IACvC,+CAA+C;IAC/C,qEAA6C,CAAA;AACjD,CAAC,EAXW,oBAAoB,oCAApB,oBAAoB,QAW/B"}
|
|
@@ -3,14 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.TrackingTransportType = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* How a provider connection physically transports telemetry into
|
|
6
|
-
* clarion-response-tracking.
|
|
7
|
-
* the remaining values are reserved for future adapters.
|
|
6
|
+
* clarion-response-tracking. {@link WEBSOCKET} (Telox) and {@link HTTP_POLLING}
|
|
7
|
+
* (Wialon) are implemented; the remaining values are reserved for future adapters.
|
|
8
8
|
*/
|
|
9
9
|
var TrackingTransportType;
|
|
10
10
|
(function (TrackingTransportType) {
|
|
11
11
|
/** Outbound WebSocket client maintained by the connector worker (Telox). */
|
|
12
12
|
TrackingTransportType["WEBSOCKET"] = "WEBSOCKET";
|
|
13
|
-
/** Outbound HTTP polling loop. */
|
|
13
|
+
/** Outbound HTTP polling loop maintained by the connector worker (Wialon). */
|
|
14
14
|
TrackingTransportType["HTTP_POLLING"] = "HTTP_POLLING";
|
|
15
15
|
/** Inbound TCP listener (direct device ingestion). */
|
|
16
16
|
TrackingTransportType["TCP"] = "TCP";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking-transport-type.enum.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/enums/tracking-transport-type.enum.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,IAAY,qBAWX;AAXD,WAAY,qBAAqB;IAC7B,4EAA4E;IAC5E,gDAAuB,CAAA;IACvB,
|
|
1
|
+
{"version":3,"file":"tracking-transport-type.enum.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/enums/tracking-transport-type.enum.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,IAAY,qBAWX;AAXD,WAAY,qBAAqB;IAC7B,4EAA4E;IAC5E,gDAAuB,CAAA;IACvB,8EAA8E;IAC9E,sDAA6B,CAAA;IAC7B,sDAAsD;IACtD,oCAAW,CAAA;IACX,sDAAsD;IACtD,oCAAW,CAAA;IACX,yBAAyB;IACzB,sCAAa,CAAA;AACjB,CAAC,EAXW,qBAAqB,qCAArB,qBAAqB,QAWhC"}
|
|
@@ -32,6 +32,8 @@ __exportStar(require("./interfaces/response-unit-lifecycle-events"), exports);
|
|
|
32
32
|
__exportStar(require("./interfaces/tracking-unit-current-state"), exports);
|
|
33
33
|
__exportStar(require("./interfaces/tracking-socket-payloads"), exports);
|
|
34
34
|
__exportStar(require("./interfaces/tracking-realtime-envelope"), exports);
|
|
35
|
+
// Interfaces — provider catalog (what each adapter needs from an operator)
|
|
36
|
+
__exportStar(require("./interfaces/tracking-provider-descriptor"), exports);
|
|
35
37
|
// Constants
|
|
36
38
|
__exportStar(require("./constants/tracking-kafka.const"), exports);
|
|
37
39
|
// Utilities
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/tracking/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,QAAQ;AACR,sEAAoD;AACpD,uEAAqD;AACrD,0EAAwD;AACxD,2EAAyD;AACzD,sEAAoD;AAEpD,+CAA+C;AAC/C,+EAA6D;AAC7D,+EAA6D;AAC7D,6EAA2D;AAC3D,iFAA+D;AAC/D,iFAA+D;AAC/D,iFAA+D;AAC/D,8EAA4D;AAE5D,+CAA+C;AAC/C,2EAAyD;AACzD,wEAAsD;AACtD,0EAAwD;AAExD,YAAY;AACZ,mEAAiD;AAEjD,YAAY;AACZ,iEAA+C;AAC/C,mEAAiD"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/tracking/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,QAAQ;AACR,sEAAoD;AACpD,uEAAqD;AACrD,0EAAwD;AACxD,2EAAyD;AACzD,sEAAoD;AAEpD,+CAA+C;AAC/C,+EAA6D;AAC7D,+EAA6D;AAC7D,6EAA2D;AAC3D,iFAA+D;AAC/D,iFAA+D;AAC/D,iFAA+D;AAC/D,8EAA4D;AAE5D,+CAA+C;AAC/C,2EAAyD;AACzD,wEAAsD;AACtD,0EAAwD;AAExD,2EAA2E;AAC3E,4EAA0D;AAE1D,YAAY;AACZ,mEAAiD;AAEjD,YAAY;AACZ,iEAA+C;AAC/C,mEAAiD"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildDefaultTrackingProviderConfiguration = buildDefaultTrackingProviderConfiguration;
|
|
4
|
+
exports.validateTrackingProviderSettings = validateTrackingProviderSettings;
|
|
5
|
+
/**
|
|
6
|
+
* The `configuration` a connection gets when the operator supplies none: every
|
|
7
|
+
* setting at its default. Stored explicitly on the connection so that readers
|
|
8
|
+
* which know nothing about adapters (the status evaluator, ingestion guards) see
|
|
9
|
+
* the provider's thresholds rather than the service-wide fallbacks.
|
|
10
|
+
*/
|
|
11
|
+
function buildDefaultTrackingProviderConfiguration(descriptor) {
|
|
12
|
+
const configuration = {};
|
|
13
|
+
for (const setting of descriptor.settings) {
|
|
14
|
+
configuration[setting.key] = setting.defaultValue;
|
|
15
|
+
}
|
|
16
|
+
return configuration;
|
|
17
|
+
}
|
|
18
|
+
function isBlank(value) {
|
|
19
|
+
return value === undefined || value === null || value === '';
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Validate a raw `configuration` blob against a provider's setting descriptors.
|
|
23
|
+
* Returns human-readable errors (empty ⇒ valid). Absent keys are valid — they
|
|
24
|
+
* take their default. Keys the descriptor does not know are ignored, not
|
|
25
|
+
* rejected: a connection saved before a setting was retired must stay editable.
|
|
26
|
+
*
|
|
27
|
+
* Cross-field rules (e.g. "offline must not precede stale") are the adapter's.
|
|
28
|
+
*/
|
|
29
|
+
function validateTrackingProviderSettings(settings, configuration) {
|
|
30
|
+
var _a;
|
|
31
|
+
const errors = [];
|
|
32
|
+
const config = configuration !== null && configuration !== void 0 ? configuration : {};
|
|
33
|
+
for (const setting of settings) {
|
|
34
|
+
const raw = config[setting.key];
|
|
35
|
+
if (isBlank(raw))
|
|
36
|
+
continue;
|
|
37
|
+
switch (setting.type) {
|
|
38
|
+
case 'number': {
|
|
39
|
+
const value = typeof raw === 'string' ? Number(raw) : raw;
|
|
40
|
+
if (typeof value !== 'number' || !Number.isFinite(value)) {
|
|
41
|
+
errors.push(`${setting.key} must be a finite number`);
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
if (setting.integer && !Number.isInteger(value)) {
|
|
45
|
+
errors.push(`${setting.key} must be a whole number`);
|
|
46
|
+
}
|
|
47
|
+
if (setting.min !== undefined && value < setting.min) {
|
|
48
|
+
errors.push(`${setting.key} must be at least ${setting.min}`);
|
|
49
|
+
}
|
|
50
|
+
if (setting.max !== undefined && value > setting.max) {
|
|
51
|
+
errors.push(`${setting.key} must be at most ${setting.max}`);
|
|
52
|
+
}
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
case 'boolean':
|
|
56
|
+
if (typeof raw !== 'boolean' && raw !== 'true' && raw !== 'false') {
|
|
57
|
+
errors.push(`${setting.key} must be a boolean`);
|
|
58
|
+
}
|
|
59
|
+
break;
|
|
60
|
+
case 'select': {
|
|
61
|
+
const allowed = ((_a = setting.options) !== null && _a !== void 0 ? _a : []).map((option) => option.value);
|
|
62
|
+
if (!allowed.includes(String(raw))) {
|
|
63
|
+
errors.push(`${setting.key} must be one of ${allowed.join(', ')}`);
|
|
64
|
+
}
|
|
65
|
+
break;
|
|
66
|
+
}
|
|
67
|
+
case 'text':
|
|
68
|
+
if (typeof raw !== 'string') {
|
|
69
|
+
errors.push(`${setting.key} must be text`);
|
|
70
|
+
}
|
|
71
|
+
else if (setting.maxLength !== undefined && raw.length > setting.maxLength) {
|
|
72
|
+
errors.push(`${setting.key} must be at most ${setting.maxLength} characters`);
|
|
73
|
+
}
|
|
74
|
+
break;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return errors;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=tracking-provider-descriptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracking-provider-descriptor.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/interfaces/tracking-provider-descriptor.ts"],"names":[],"mappings":";;AAqHA,8FAQC;AAcD,4EAmDC;AA/ED;;;;;GAKG;AACH,SAAgB,yCAAyC,CACrD,UAAwD;IAExD,MAAM,aAAa,GAA8C,EAAE,CAAC;IACpE,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;QACxC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IACtD,CAAC;IACD,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,SAAS,OAAO,CAAC,KAAc;IAC3B,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;AACjE,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,gCAAgC,CAC5C,QAAsD,EACtD,aAAyD;;IAEzD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAG,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,EAAE,CAAC;IAEnC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,OAAO,CAAC,GAAG,CAAC;YAAE,SAAS;QAE3B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACZ,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvD,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,0BAA0B,CAAC,CAAC;oBACtD,MAAM;gBACV,CAAC;gBACD,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC9C,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,yBAAyB,CAAC,CAAC;gBACzD,CAAC;gBACD,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;oBACnD,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,qBAAqB,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClE,CAAC;gBACD,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;oBACnD,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,oBAAoB,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBACjE,CAAC;gBACD,MAAM;YACV,CAAC;YACD,KAAK,SAAS;gBACV,IAAI,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;oBAChE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,oBAAoB,CAAC,CAAC;gBACpD,CAAC;gBACD,MAAM;YACV,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACZ,MAAM,OAAO,GAAG,CAAC,MAAA,OAAO,CAAC,OAAO,mCAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBACjC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,mBAAmB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACvE,CAAC;gBACD,MAAM;YACV,CAAC;YACD,KAAK,MAAM;gBACP,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,eAAe,CAAC,CAAC;gBAC/C,CAAC;qBAAM,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;oBAC3E,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,oBAAoB,OAAO,CAAC,SAAS,aAAa,CAAC,CAAC;gBAClF,CAAC;gBACD,MAAM;QACd,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC"}
|
|
@@ -4,7 +4,8 @@ export const ORGANIZATION_ROLES = [
|
|
|
4
4
|
Roles.ORGANIZATION_ADMIN,
|
|
5
5
|
Roles.ORGANIZATION_USER,
|
|
6
6
|
Roles.ORGANIZATION_BILLING_ADMIN,
|
|
7
|
-
Roles.ORGANIZATION_NEWSFEED_ADMIN
|
|
7
|
+
Roles.ORGANIZATION_NEWSFEED_ADMIN,
|
|
8
|
+
Roles.ORGANIZATION_PARTNERSHIPS_ADMIN
|
|
8
9
|
];
|
|
9
10
|
export const CONTROL_CENTRE_ROLES = [
|
|
10
11
|
Roles.CONTROL_CENTRE_ADMIN,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles-by-scope.js","sourceRoot":"","sources":["../../../../../src/modules/role/constants/roles-by-scope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,CAAC,MAAM,kBAAkB,GAAa;IACxC,KAAK,CAAC,kBAAkB;IACxB,KAAK,CAAC,kBAAkB;IACxB,KAAK,CAAC,iBAAiB;IACvB,KAAK,CAAC,0BAA0B;IAChC,KAAK,CAAC,2BAA2B;
|
|
1
|
+
{"version":3,"file":"roles-by-scope.js","sourceRoot":"","sources":["../../../../../src/modules/role/constants/roles-by-scope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,CAAC,MAAM,kBAAkB,GAAa;IACxC,KAAK,CAAC,kBAAkB;IACxB,KAAK,CAAC,kBAAkB;IACxB,KAAK,CAAC,iBAAiB;IACvB,KAAK,CAAC,0BAA0B;IAChC,KAAK,CAAC,2BAA2B;IACjC,KAAK,CAAC,+BAA+B;CACxC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAa;IAC1C,KAAK,CAAC,oBAAoB;IAC1B,KAAK,CAAC,mBAAmB;IACzB,KAAK,CAAC,SAAS;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAa;IAClC,KAAK,CAAC,WAAW;CACpB,CAAC"}
|
|
@@ -197,6 +197,36 @@ export const ROLES_DATA = [
|
|
|
197
197
|
PermissionActions.READ_RESPONSE_UNIT
|
|
198
198
|
]
|
|
199
199
|
},
|
|
200
|
+
{
|
|
201
|
+
name: Roles.ORGANIZATION_PARTNERSHIPS_ADMIN,
|
|
202
|
+
description: 'Organization Partnerships Admin: Manage partnerships with third-party responders - their configuration, coverage, dispatches and member registration',
|
|
203
|
+
permissions: [
|
|
204
|
+
//Partner: every action in the Partner permission module. Pinned by
|
|
205
|
+
//roles.spec.ts, so an action added to that module later has to be
|
|
206
|
+
//granted here - or deliberately withheld - rather than silently missed.
|
|
207
|
+
PermissionActions.CREATE_PARTNER,
|
|
208
|
+
PermissionActions.READ_PARTNER,
|
|
209
|
+
PermissionActions.UPDATE_PARTNER,
|
|
210
|
+
PermissionActions.DELETE_PARTNER,
|
|
211
|
+
//Partner dispatch
|
|
212
|
+
PermissionActions.READ_PARTNER_DISPATCH,
|
|
213
|
+
PermissionActions.APPROVE_PARTNER_DISPATCH,
|
|
214
|
+
PermissionActions.UPDATE_PARTNER_DISPATCH,
|
|
215
|
+
PermissionActions.CANCEL_PARTNER_DISPATCH,
|
|
216
|
+
PermissionActions.RESEND_PARTNER_DISPATCH,
|
|
217
|
+
//Partner membership: includes reading and correcting a member's date
|
|
218
|
+
//of birth. Registering people with a partner is this role's job.
|
|
219
|
+
PermissionActions.READ_PARTNER_MEMBERSHIP,
|
|
220
|
+
PermissionActions.MANAGE_PARTNER_MEMBERSHIP,
|
|
221
|
+
//Billing: which packages a partnership registers subscribers of.
|
|
222
|
+
//Read-only - this role configures partnerships, not the packages.
|
|
223
|
+
PermissionActions.READ_PACKAGE,
|
|
224
|
+
//Incident Category Type: which incident types and categories a
|
|
225
|
+
//partnership's coverage rules route to that partner. Read-only, and
|
|
226
|
+
//the taxonomy only - not the incidents themselves.
|
|
227
|
+
PermissionActions.READ_INCIDENT_CATEGORY_TYPE
|
|
228
|
+
]
|
|
229
|
+
},
|
|
200
230
|
{
|
|
201
231
|
name: Roles.CONTROL_CENTRE_ADMIN,
|
|
202
232
|
description: 'Control Centre Admin: Manage Control Centre',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles.data.js","sourceRoot":"","sources":["../../../../../src/modules/role/data/roles.data.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"roles.data.js","sourceRoot":"","sources":["../../../../../src/modules/role/data/roles.data.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export var Roles;
|
|
|
6
6
|
Roles["ORGANIZATION_USER"] = "Organization:User";
|
|
7
7
|
Roles["ORGANIZATION_BILLING_ADMIN"] = "Organization:Billing-Admin";
|
|
8
8
|
Roles["ORGANIZATION_NEWSFEED_ADMIN"] = "Organization:Newsfeed-Admin";
|
|
9
|
+
Roles["ORGANIZATION_PARTNERSHIPS_ADMIN"] = "Organization:Partnerships-Admin";
|
|
9
10
|
Roles["CONTROL_CENTRE_ADMIN"] = "Control-Centre:Admin";
|
|
10
11
|
Roles["CONTROL_CENTRE_USER"] = "Control-Centre:User";
|
|
11
12
|
Roles["RESPONDER"] = "Responder";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.enum.js","sourceRoot":"","sources":["../../../../../src/modules/role/enums/role.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"role.enum.js","sourceRoot":"","sources":["../../../../../src/modules/role/enums/role.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,KAYX;AAZD,WAAY,KAAK;IACb,oCAA2B,CAAA;IAC3B,kDAAyC,CAAA;IACzC,kDAAyC,CAAA;IACzC,gDAAuC,CAAA;IACvC,kEAAyD,CAAA;IACzD,oEAA2D,CAAA;IAC3D,4EAAmE,CAAA;IACnE,sDAA6C,CAAA;IAC7C,oDAA2C,CAAA;IAC3C,gCAAuB,CAAA;IACvB,oCAA2B,CAAA;AAC/B,CAAC,EAZW,KAAK,KAAL,KAAK,QAYhB;AAED;;GAEG"}
|
|
@@ -5,15 +5,18 @@
|
|
|
5
5
|
* per-provider adapter inside clarion-response-tracking understands the raw
|
|
6
6
|
* wire format.
|
|
7
7
|
*
|
|
8
|
-
*
|
|
9
|
-
* remaining values are reserved so future adapters can be
|
|
10
|
-
* the shared contracts, database columns or Kafka events.
|
|
8
|
+
* {@link TrackingProviderCode.TELOX} and {@link TrackingProviderCode.WIALON} have
|
|
9
|
+
* working adapters. The remaining values are reserved so future adapters can be
|
|
10
|
+
* added without changing the shared contracts, database columns or Kafka events.
|
|
11
|
+
*
|
|
12
|
+
* A value here does NOT mean the provider can be connected — ask the service
|
|
13
|
+
* (`GET /tracking/providers`, see TrackingProviderDescriptor) which adapters exist.
|
|
11
14
|
*/
|
|
12
15
|
export var TrackingProviderCode;
|
|
13
16
|
(function (TrackingProviderCode) {
|
|
14
17
|
/** Telox WebSocket platform (G4S Phase 1 integration). */
|
|
15
18
|
TrackingProviderCode["TELOX"] = "TELOX";
|
|
16
|
-
/** Wialon
|
|
19
|
+
/** Wialon Hosting / Wialon Local, polled over the Remote API. */
|
|
17
20
|
TrackingProviderCode["WIALON"] = "WIALON";
|
|
18
21
|
/** Teltonika direct device ingestion (reserved — not implemented in Phase 1). */
|
|
19
22
|
TrackingProviderCode["TELTONIKA"] = "TELTONIKA";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking-provider-code.enum.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/enums/tracking-provider-code.enum.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"tracking-provider-code.enum.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/enums/tracking-provider-code.enum.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAN,IAAY,oBAWX;AAXD,WAAY,oBAAoB;IAC5B,0DAA0D;IAC1D,uCAAe,CAAA;IACf,iEAAiE;IACjE,yCAAiB,CAAA;IACjB,iFAAiF;IACjF,+CAAuB,CAAA;IACvB,4CAA4C;IAC5C,+DAAuC,CAAA;IACvC,+CAA+C;IAC/C,qEAA6C,CAAA;AACjD,CAAC,EAXW,oBAAoB,KAApB,oBAAoB,QAW/B"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* How a provider connection physically transports telemetry into
|
|
3
|
-
* clarion-response-tracking.
|
|
4
|
-
* the remaining values are reserved for future adapters.
|
|
3
|
+
* clarion-response-tracking. {@link WEBSOCKET} (Telox) and {@link HTTP_POLLING}
|
|
4
|
+
* (Wialon) are implemented; the remaining values are reserved for future adapters.
|
|
5
5
|
*/
|
|
6
6
|
export var TrackingTransportType;
|
|
7
7
|
(function (TrackingTransportType) {
|
|
8
8
|
/** Outbound WebSocket client maintained by the connector worker (Telox). */
|
|
9
9
|
TrackingTransportType["WEBSOCKET"] = "WEBSOCKET";
|
|
10
|
-
/** Outbound HTTP polling loop. */
|
|
10
|
+
/** Outbound HTTP polling loop maintained by the connector worker (Wialon). */
|
|
11
11
|
TrackingTransportType["HTTP_POLLING"] = "HTTP_POLLING";
|
|
12
12
|
/** Inbound TCP listener (direct device ingestion). */
|
|
13
13
|
TrackingTransportType["TCP"] = "TCP";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking-transport-type.enum.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/enums/tracking-transport-type.enum.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,qBAWX;AAXD,WAAY,qBAAqB;IAC7B,4EAA4E;IAC5E,gDAAuB,CAAA;IACvB,
|
|
1
|
+
{"version":3,"file":"tracking-transport-type.enum.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/enums/tracking-transport-type.enum.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,qBAWX;AAXD,WAAY,qBAAqB;IAC7B,4EAA4E;IAC5E,gDAAuB,CAAA;IACvB,8EAA8E;IAC9E,sDAA6B,CAAA;IAC7B,sDAAsD;IACtD,oCAAW,CAAA;IACX,sDAAsD;IACtD,oCAAW,CAAA;IACX,yBAAyB;IACzB,sCAAa,CAAA;AACjB,CAAC,EAXW,qBAAqB,KAArB,qBAAqB,QAWhC"}
|
|
@@ -16,6 +16,8 @@ export * from './interfaces/response-unit-lifecycle-events';
|
|
|
16
16
|
export * from './interfaces/tracking-unit-current-state';
|
|
17
17
|
export * from './interfaces/tracking-socket-payloads';
|
|
18
18
|
export * from './interfaces/tracking-realtime-envelope';
|
|
19
|
+
// Interfaces — provider catalog (what each adapter needs from an operator)
|
|
20
|
+
export * from './interfaces/tracking-provider-descriptor';
|
|
19
21
|
// Constants
|
|
20
22
|
export * from './constants/tracking-kafka.const';
|
|
21
23
|
// Utilities
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/tracking/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,yCAAyC,CAAC;AACxD,cAAc,0CAA0C,CAAC;AACzD,cAAc,qCAAqC,CAAC;AAEpD,+CAA+C;AAC/C,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,6CAA6C,CAAC;AAE5D,+CAA+C;AAC/C,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AAExD,YAAY;AACZ,cAAc,kCAAkC,CAAC;AAEjD,YAAY;AACZ,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/tracking/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,yCAAyC,CAAC;AACxD,cAAc,0CAA0C,CAAC;AACzD,cAAc,qCAAqC,CAAC;AAEpD,+CAA+C;AAC/C,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,6CAA6C,CAAC;AAE5D,+CAA+C;AAC/C,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AAExD,2EAA2E;AAC3E,cAAc,2CAA2C,CAAC;AAE1D,YAAY;AACZ,cAAc,kCAAkC,CAAC;AAEjD,YAAY;AACZ,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `configuration` a connection gets when the operator supplies none: every
|
|
3
|
+
* setting at its default. Stored explicitly on the connection so that readers
|
|
4
|
+
* which know nothing about adapters (the status evaluator, ingestion guards) see
|
|
5
|
+
* the provider's thresholds rather than the service-wide fallbacks.
|
|
6
|
+
*/
|
|
7
|
+
export function buildDefaultTrackingProviderConfiguration(descriptor) {
|
|
8
|
+
const configuration = {};
|
|
9
|
+
for (const setting of descriptor.settings) {
|
|
10
|
+
configuration[setting.key] = setting.defaultValue;
|
|
11
|
+
}
|
|
12
|
+
return configuration;
|
|
13
|
+
}
|
|
14
|
+
function isBlank(value) {
|
|
15
|
+
return value === undefined || value === null || value === '';
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Validate a raw `configuration` blob against a provider's setting descriptors.
|
|
19
|
+
* Returns human-readable errors (empty ⇒ valid). Absent keys are valid — they
|
|
20
|
+
* take their default. Keys the descriptor does not know are ignored, not
|
|
21
|
+
* rejected: a connection saved before a setting was retired must stay editable.
|
|
22
|
+
*
|
|
23
|
+
* Cross-field rules (e.g. "offline must not precede stale") are the adapter's.
|
|
24
|
+
*/
|
|
25
|
+
export function validateTrackingProviderSettings(settings, configuration) {
|
|
26
|
+
var _a;
|
|
27
|
+
const errors = [];
|
|
28
|
+
const config = configuration !== null && configuration !== void 0 ? configuration : {};
|
|
29
|
+
for (const setting of settings) {
|
|
30
|
+
const raw = config[setting.key];
|
|
31
|
+
if (isBlank(raw))
|
|
32
|
+
continue;
|
|
33
|
+
switch (setting.type) {
|
|
34
|
+
case 'number': {
|
|
35
|
+
const value = typeof raw === 'string' ? Number(raw) : raw;
|
|
36
|
+
if (typeof value !== 'number' || !Number.isFinite(value)) {
|
|
37
|
+
errors.push(`${setting.key} must be a finite number`);
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
if (setting.integer && !Number.isInteger(value)) {
|
|
41
|
+
errors.push(`${setting.key} must be a whole number`);
|
|
42
|
+
}
|
|
43
|
+
if (setting.min !== undefined && value < setting.min) {
|
|
44
|
+
errors.push(`${setting.key} must be at least ${setting.min}`);
|
|
45
|
+
}
|
|
46
|
+
if (setting.max !== undefined && value > setting.max) {
|
|
47
|
+
errors.push(`${setting.key} must be at most ${setting.max}`);
|
|
48
|
+
}
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
case 'boolean':
|
|
52
|
+
if (typeof raw !== 'boolean' && raw !== 'true' && raw !== 'false') {
|
|
53
|
+
errors.push(`${setting.key} must be a boolean`);
|
|
54
|
+
}
|
|
55
|
+
break;
|
|
56
|
+
case 'select': {
|
|
57
|
+
const allowed = ((_a = setting.options) !== null && _a !== void 0 ? _a : []).map((option) => option.value);
|
|
58
|
+
if (!allowed.includes(String(raw))) {
|
|
59
|
+
errors.push(`${setting.key} must be one of ${allowed.join(', ')}`);
|
|
60
|
+
}
|
|
61
|
+
break;
|
|
62
|
+
}
|
|
63
|
+
case 'text':
|
|
64
|
+
if (typeof raw !== 'string') {
|
|
65
|
+
errors.push(`${setting.key} must be text`);
|
|
66
|
+
}
|
|
67
|
+
else if (setting.maxLength !== undefined && raw.length > setting.maxLength) {
|
|
68
|
+
errors.push(`${setting.key} must be at most ${setting.maxLength} characters`);
|
|
69
|
+
}
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return errors;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=tracking-provider-descriptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracking-provider-descriptor.js","sourceRoot":"","sources":["../../../../../src/modules/tracking/interfaces/tracking-provider-descriptor.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ export declare enum Roles {
|
|
|
5
5
|
ORGANIZATION_USER = "Organization:User",
|
|
6
6
|
ORGANIZATION_BILLING_ADMIN = "Organization:Billing-Admin",
|
|
7
7
|
ORGANIZATION_NEWSFEED_ADMIN = "Organization:Newsfeed-Admin",
|
|
8
|
+
ORGANIZATION_PARTNERSHIPS_ADMIN = "Organization:Partnerships-Admin",
|
|
8
9
|
CONTROL_CENTRE_ADMIN = "Control-Centre:Admin",
|
|
9
10
|
CONTROL_CENTRE_USER = "Control-Centre:User",
|
|
10
11
|
RESPONDER = "Responder",
|
|
@@ -5,14 +5,17 @@
|
|
|
5
5
|
* per-provider adapter inside clarion-response-tracking understands the raw
|
|
6
6
|
* wire format.
|
|
7
7
|
*
|
|
8
|
-
*
|
|
9
|
-
* remaining values are reserved so future adapters can be
|
|
10
|
-
* the shared contracts, database columns or Kafka events.
|
|
8
|
+
* {@link TrackingProviderCode.TELOX} and {@link TrackingProviderCode.WIALON} have
|
|
9
|
+
* working adapters. The remaining values are reserved so future adapters can be
|
|
10
|
+
* added without changing the shared contracts, database columns or Kafka events.
|
|
11
|
+
*
|
|
12
|
+
* A value here does NOT mean the provider can be connected — ask the service
|
|
13
|
+
* (`GET /tracking/providers`, see TrackingProviderDescriptor) which adapters exist.
|
|
11
14
|
*/
|
|
12
15
|
export declare enum TrackingProviderCode {
|
|
13
16
|
/** Telox WebSocket platform (G4S Phase 1 integration). */
|
|
14
17
|
TELOX = "TELOX",
|
|
15
|
-
/** Wialon
|
|
18
|
+
/** Wialon Hosting / Wialon Local, polled over the Remote API. */
|
|
16
19
|
WIALON = "WIALON",
|
|
17
20
|
/** Teltonika direct device ingestion (reserved — not implemented in Phase 1). */
|
|
18
21
|
TELTONIKA = "TELTONIKA",
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* How a provider connection physically transports telemetry into
|
|
3
|
-
* clarion-response-tracking.
|
|
4
|
-
* the remaining values are reserved for future adapters.
|
|
3
|
+
* clarion-response-tracking. {@link WEBSOCKET} (Telox) and {@link HTTP_POLLING}
|
|
4
|
+
* (Wialon) are implemented; the remaining values are reserved for future adapters.
|
|
5
5
|
*/
|
|
6
6
|
export declare enum TrackingTransportType {
|
|
7
7
|
/** Outbound WebSocket client maintained by the connector worker (Telox). */
|
|
8
8
|
WEBSOCKET = "WEBSOCKET",
|
|
9
|
-
/** Outbound HTTP polling loop. */
|
|
9
|
+
/** Outbound HTTP polling loop maintained by the connector worker (Wialon). */
|
|
10
10
|
HTTP_POLLING = "HTTP_POLLING",
|
|
11
11
|
/** Inbound TCP listener (direct device ingestion). */
|
|
12
12
|
TCP = "TCP",
|
|
@@ -13,6 +13,7 @@ export * from './interfaces/response-unit-lifecycle-events';
|
|
|
13
13
|
export * from './interfaces/tracking-unit-current-state';
|
|
14
14
|
export * from './interfaces/tracking-socket-payloads';
|
|
15
15
|
export * from './interfaces/tracking-realtime-envelope';
|
|
16
|
+
export * from './interfaces/tracking-provider-descriptor';
|
|
16
17
|
export * from './constants/tracking-kafka.const';
|
|
17
18
|
export * from './utils/tracking-event-id.util';
|
|
18
19
|
export * from './utils/tracking-validation.util';
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { TrackingProviderCode } from '../enums/tracking-provider-code.enum';
|
|
2
|
+
import { TrackingTransportType } from '../enums/tracking-transport-type.enum';
|
|
3
|
+
/**
|
|
4
|
+
* Self-description of a tracking provider, published by clarion-response-tracking
|
|
5
|
+
* (`GET /tracking/providers`) and rendered by the admin client.
|
|
6
|
+
*
|
|
7
|
+
* Why it exists: every provider needs different things from an operator. Telox
|
|
8
|
+
* wants a WebSocket URL, a username, a domain and a password; Wialon wants an
|
|
9
|
+
* HTTPS host and an API token and has no domain at all; and each scales its raw
|
|
10
|
+
* telemetry differently. Encoding that in the client meant a form that only fit
|
|
11
|
+
* one provider and defaults that had to be kept in step with the service by hand.
|
|
12
|
+
* With a descriptor the service that owns the adapter is the single source of
|
|
13
|
+
* truth: adding a provider changes no client code, and a default can never drift.
|
|
14
|
+
*
|
|
15
|
+
* Only providers with a registered adapter are described, so the catalog also
|
|
16
|
+
* answers "which providers can I actually connect?" — the enum alone cannot,
|
|
17
|
+
* because it reserves codes for adapters that do not exist yet.
|
|
18
|
+
*
|
|
19
|
+
* SECURITY: a descriptor is static metadata. It never carries a secret, a secret
|
|
20
|
+
* reference, or anything tenant-specific.
|
|
21
|
+
*/
|
|
22
|
+
export type TrackingProviderSettingType = 'number' | 'boolean' | 'select' | 'text';
|
|
23
|
+
export interface TrackingProviderSettingOption {
|
|
24
|
+
value: string;
|
|
25
|
+
label: string;
|
|
26
|
+
}
|
|
27
|
+
/** One key of a provider connection's `configuration` blob. */
|
|
28
|
+
export interface TrackingProviderSettingDescriptor {
|
|
29
|
+
/** The `configuration` key this setting is stored under. */
|
|
30
|
+
key: string;
|
|
31
|
+
label: string;
|
|
32
|
+
type: TrackingProviderSettingType;
|
|
33
|
+
/** Key of the {@link TrackingProviderSettingGroupDescriptor} it is shown under. */
|
|
34
|
+
group: string;
|
|
35
|
+
/** Applied by the service when the key is absent, and pre-filled by the client. */
|
|
36
|
+
defaultValue: number | boolean | string;
|
|
37
|
+
description?: string;
|
|
38
|
+
/** Display unit, e.g. `s`, `m`, `km/h`. */
|
|
39
|
+
unit?: string;
|
|
40
|
+
/** `number` settings only. Bounds are inclusive and enforced by the service. */
|
|
41
|
+
min?: number;
|
|
42
|
+
max?: number;
|
|
43
|
+
step?: number;
|
|
44
|
+
/** `number` settings only: reject fractional values. */
|
|
45
|
+
integer?: boolean;
|
|
46
|
+
/** `text` settings only. */
|
|
47
|
+
maxLength?: number;
|
|
48
|
+
/** `select` settings only: the closed set of accepted values. */
|
|
49
|
+
options?: TrackingProviderSettingOption[];
|
|
50
|
+
}
|
|
51
|
+
export interface TrackingProviderSettingGroupDescriptor {
|
|
52
|
+
key: string;
|
|
53
|
+
label: string;
|
|
54
|
+
description?: string;
|
|
55
|
+
}
|
|
56
|
+
/** An optional connection field whose meaning (or existence) depends on the provider. */
|
|
57
|
+
export interface TrackingProviderFieldDescriptor {
|
|
58
|
+
/** false ⇒ the provider has no such concept: hide the field and send nothing. */
|
|
59
|
+
used: boolean;
|
|
60
|
+
required: boolean;
|
|
61
|
+
label: string;
|
|
62
|
+
placeholder?: string;
|
|
63
|
+
description?: string;
|
|
64
|
+
}
|
|
65
|
+
export interface TrackingProviderEndpointDescriptor {
|
|
66
|
+
label: string;
|
|
67
|
+
placeholder: string;
|
|
68
|
+
description?: string;
|
|
69
|
+
/** Pre-filled for providers with one well-known public endpoint. */
|
|
70
|
+
defaultValue?: string;
|
|
71
|
+
/** Accepted URL schemes, with the trailing colon: `wss:`, `https:`… */
|
|
72
|
+
protocols: string[];
|
|
73
|
+
}
|
|
74
|
+
/** What the referenced secret must contain. Describes the secret; never holds it. */
|
|
75
|
+
export interface TrackingProviderSecretDescriptor {
|
|
76
|
+
label: string;
|
|
77
|
+
description: string;
|
|
78
|
+
placeholder?: string;
|
|
79
|
+
}
|
|
80
|
+
/** How the provider identifies a unit — what an operator binds to a response unit. */
|
|
81
|
+
export interface TrackingProviderExternalUnitDescriptor {
|
|
82
|
+
label: string;
|
|
83
|
+
description: string;
|
|
84
|
+
placeholder?: string;
|
|
85
|
+
}
|
|
86
|
+
export interface TrackingProviderDescriptor {
|
|
87
|
+
providerCode: TrackingProviderCode;
|
|
88
|
+
displayName: string;
|
|
89
|
+
description: string;
|
|
90
|
+
/** Supported transports; the first is the default. */
|
|
91
|
+
transportTypes: TrackingTransportType[];
|
|
92
|
+
endpoint: TrackingProviderEndpointDescriptor;
|
|
93
|
+
externalUsername: TrackingProviderFieldDescriptor;
|
|
94
|
+
externalDomain: TrackingProviderFieldDescriptor;
|
|
95
|
+
secret: TrackingProviderSecretDescriptor;
|
|
96
|
+
externalUnitId: TrackingProviderExternalUnitDescriptor;
|
|
97
|
+
/** Display order of the setting groups. */
|
|
98
|
+
settingGroups: TrackingProviderSettingGroupDescriptor[];
|
|
99
|
+
settings: TrackingProviderSettingDescriptor[];
|
|
100
|
+
documentationUrl?: string;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* The `configuration` a connection gets when the operator supplies none: every
|
|
104
|
+
* setting at its default. Stored explicitly on the connection so that readers
|
|
105
|
+
* which know nothing about adapters (the status evaluator, ingestion guards) see
|
|
106
|
+
* the provider's thresholds rather than the service-wide fallbacks.
|
|
107
|
+
*/
|
|
108
|
+
export declare function buildDefaultTrackingProviderConfiguration(descriptor: Pick<TrackingProviderDescriptor, 'settings'>): Record<string, number | boolean | string>;
|
|
109
|
+
/**
|
|
110
|
+
* Validate a raw `configuration` blob against a provider's setting descriptors.
|
|
111
|
+
* Returns human-readable errors (empty ⇒ valid). Absent keys are valid — they
|
|
112
|
+
* take their default. Keys the descriptor does not know are ignored, not
|
|
113
|
+
* rejected: a connection saved before a setting was retired must stay editable.
|
|
114
|
+
*
|
|
115
|
+
* Cross-field rules (e.g. "offline must not precede stale") are the adapter's.
|
|
116
|
+
*/
|
|
117
|
+
export declare function validateTrackingProviderSettings(settings: readonly TrackingProviderSettingDescriptor[], configuration: Record<string, unknown> | null | undefined): string[];
|