clarion-shared-types 1.0.93 → 1.0.95
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/dist/cjs/modules/permission/enums/permission-actions.enum.js +16 -0
- package/dist/cjs/modules/permission/enums/permission-actions.enum.js.map +1 -1
- package/dist/cjs/modules/permission/enums/permissions-moudule.enum.js +1 -0
- package/dist/cjs/modules/permission/enums/permissions-moudule.enum.js.map +1 -1
- package/dist/cjs/modules/role/constants/roles-by-scope.js +7 -2
- package/dist/cjs/modules/role/constants/roles-by-scope.js.map +1 -1
- package/dist/cjs/modules/role/enums/role.enum.js +14 -0
- package/dist/cjs/modules/role/enums/role.enum.js.map +1 -1
- package/dist/cjs/modules/tracking/index.js +1 -0
- package/dist/cjs/modules/tracking/index.js.map +1 -1
- package/dist/cjs/modules/tracking/interfaces/tracking-provider-descriptor.js +17 -0
- package/dist/cjs/modules/tracking/interfaces/tracking-provider-descriptor.js.map +1 -0
- package/dist/esm/modules/permission/enums/permission-actions.enum.js +16 -0
- package/dist/esm/modules/permission/enums/permission-actions.enum.js.map +1 -1
- package/dist/esm/modules/permission/enums/permissions-moudule.enum.js +1 -0
- package/dist/esm/modules/permission/enums/permissions-moudule.enum.js.map +1 -1
- package/dist/esm/modules/role/constants/roles-by-scope.js +7 -2
- package/dist/esm/modules/role/constants/roles-by-scope.js.map +1 -1
- package/dist/esm/modules/role/enums/role.enum.js +14 -0
- package/dist/esm/modules/role/enums/role.enum.js.map +1 -1
- package/dist/esm/modules/tracking/index.js +1 -0
- package/dist/esm/modules/tracking/index.js.map +1 -1
- package/dist/esm/modules/tracking/interfaces/tracking-provider-descriptor.js +14 -0
- package/dist/esm/modules/tracking/interfaces/tracking-provider-descriptor.js.map +1 -0
- package/dist/types/modules/permission/enums/permission-actions.enum.d.ts +12 -0
- package/dist/types/modules/permission/enums/permissions-moudule.enum.d.ts +1 -0
- package/dist/types/modules/role/enums/role.enum.d.ts +14 -0
- package/dist/types/modules/tracking/index.d.ts +1 -0
- package/dist/types/modules/tracking/interfaces/tracking-provider-descriptor.d.ts +111 -0
- package/package.json +1 -1
|
@@ -55,6 +55,22 @@ var PermissionActions;
|
|
|
55
55
|
PermissionActions["READ_RESPONSE_UNIT"] = "read:response-unit";
|
|
56
56
|
PermissionActions["UPDATE_RESPONSE_UNIT"] = "update:response-unit";
|
|
57
57
|
PermissionActions["DELETE_RESPONSE_UNIT"] = "delete:response-unit";
|
|
58
|
+
// Module: Tracking (clarion-response-tracking). Mirrors grm-shared-library.
|
|
59
|
+
// UPDATE of a provider connection also covers test / enable / disable /
|
|
60
|
+
// reconnect; READ / UPDATE of a device binding also cover the unmapped-units
|
|
61
|
+
// worklist and resolving / reopening an entry on it.
|
|
62
|
+
PermissionActions["CREATE_TRACKING_PROVIDER_CONNECTION"] = "create:tracking-provider-connection";
|
|
63
|
+
PermissionActions["READ_TRACKING_PROVIDER_CONNECTION"] = "read:tracking-provider-connection";
|
|
64
|
+
PermissionActions["UPDATE_TRACKING_PROVIDER_CONNECTION"] = "update:tracking-provider-connection";
|
|
65
|
+
PermissionActions["DELETE_TRACKING_PROVIDER_CONNECTION"] = "delete:tracking-provider-connection";
|
|
66
|
+
PermissionActions["CREATE_TRACKING_DEVICE_BINDING"] = "create:tracking-device-binding";
|
|
67
|
+
PermissionActions["READ_TRACKING_DEVICE_BINDING"] = "read:tracking-device-binding";
|
|
68
|
+
PermissionActions["UPDATE_TRACKING_DEVICE_BINDING"] = "update:tracking-device-binding";
|
|
69
|
+
PermissionActions["DELETE_TRACKING_DEVICE_BINDING"] = "delete:tracking-device-binding";
|
|
70
|
+
PermissionActions["READ_TRACKING_POSITION"] = "read:tracking-position";
|
|
71
|
+
PermissionActions["READ_TRACKING_HISTORY"] = "read:tracking-history";
|
|
72
|
+
PermissionActions["READ_TRACKING_OPERATIONS"] = "read:tracking-operations";
|
|
73
|
+
PermissionActions["MANAGE_TRACKING_OPERATIONS"] = "manage:tracking-operations";
|
|
58
74
|
// Module: Support
|
|
59
75
|
//
|
|
60
76
|
// Mirrors grm-shared-library exactly, values included: the admin gates its
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAwGX;AAxGD,WAAY,iBAAiB;IACzB,uBAAuB;IACvB,gEAA2C,CAAA;IAC3C,4DAAuC,CAAA;IACvC,gEAA2C,CAAA;IAC3C,gEAA2C,CAAA;IAE3C,kBAAkB;IAClB,sDAAiC,CAAA;IACjC,kDAA6B,CAAA;IAC7B,sDAAiC,CAAA;IACjC,sDAAiC,CAAA;IACjC,wEAAwE;IACxE,mEAAmE;IACnE,oEAA+C,CAAA;IAC/C,0EAAqD,CAAA;IACrD,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IACnD,2EAA2E;IAC3E,4EAA4E;IAC5E,qEAAqE;IACrE,uDAAuD;IACvD,wEAAmD,CAAA;IACnD,4EAAuD,CAAA;IAEvD,wBAAwB;IACxB,oEAA+C,CAAA;IAC/C,gEAA2C,CAAA;IAC3C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAE/C,eAAe;IACf,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAE3B,eAAe;IACf,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAE3B,mBAAmB;IACnB,wDAAmC,CAAA;IACnC,oDAA+B,CAAA;IAC/B,wDAAmC,CAAA;IACnC,wDAAmC,CAAA;IACnC,oFAA+D,CAAA;IAC/D,gFAA2D,CAAA;IAC3D,oFAA+D,CAAA;IAC/D,oFAA+D,CAAA;IAE/D,uBAAuB;IACvB,kEAA6C,CAAA;IAC7C,8DAAyC,CAAA;IACzC,kEAA6C,CAAA;IAC7C,kEAA6C,CAAA;IAE7C,4EAA4E;IAC5E,wEAAwE;IACxE,6EAA6E;IAC7E,qDAAqD;IACrD,gGAA2E,CAAA;IAC3E,4FAAuE,CAAA;IACvE,gGAA2E,CAAA;IAC3E,gGAA2E,CAAA;IAC3E,sFAAiE,CAAA;IACjE,kFAA6D,CAAA;IAC7D,sFAAiE,CAAA;IACjE,sFAAiE,CAAA;IACjE,sEAAiD,CAAA;IACjD,oEAA+C,CAAA;IAC/C,0EAAqD,CAAA;IACrD,8EAAyD,CAAA;IAEzD,kBAAkB;IAClB,EAAE;IACF,2EAA2E;IAC3E,0EAA0E;IAC1E,uEAAuE;IACvE,+BAA+B;IAC/B,oEAA+C,CAAA;IAC/C,gEAA2C,CAAA;IAC3C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAC/C,kEAA6C,CAAA;IAC7C,gEAA2C,CAAA;IAC3C,kFAA6D,CAAA;IAC7D,sFAAiE,CAAA;IACjE,kEAA6C,CAAA;IAC7C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAC/C,wEAAmD,CAAA;IACnD,0EAAqD,CAAA;IACrD,0EAAqD,CAAA;IACrD,kEAA6C,CAAA;IAC7C,gEAA2C,CAAA;IAC3C,8DAAyC,CAAA;IACzC,kFAA6D,CAAA;IAC7D,gEAA2C,CAAA;IAC3C,4DAAuC,CAAA;IACvC,gEAA2C,CAAA;AAC/C,CAAC,EAxGW,iBAAiB,iCAAjB,iBAAiB,QAwG5B"}
|
|
@@ -10,6 +10,7 @@ var PermissionsModule;
|
|
|
10
10
|
PermissionsModule["ROLE"] = "Role";
|
|
11
11
|
PermissionsModule["INCIDENT"] = "Grievance";
|
|
12
12
|
PermissionsModule["RESPONSE_UNIT"] = "Response Unit";
|
|
13
|
+
PermissionsModule["TRACKING"] = "Tracking";
|
|
13
14
|
PermissionsModule["SUPPORT"] = "Support";
|
|
14
15
|
})(PermissionsModule || (exports.PermissionsModule = PermissionsModule = {}));
|
|
15
16
|
//# sourceMappingURL=permissions-moudule.enum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions-moudule.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permissions-moudule.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"permissions-moudule.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permissions-moudule.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAUX;AAVD,WAAY,iBAAiB;IACzB,kDAA6B,CAAA;IAC7B,wCAAmB,CAAA;IACnB,sDAAiC,CAAA;IACjC,kCAAa,CAAA;IACb,kCAAa,CAAA;IACb,2CAAsB,CAAA;IACtB,oDAA+B,CAAA;IAC/B,0CAAqB,CAAA;IACrB,wCAAmB,CAAA;AACvB,CAAC,EAVW,iBAAiB,iCAAjB,iBAAiB,QAU5B"}
|
|
@@ -5,12 +5,17 @@ const role_enum_1 = require("../enums/role.enum");
|
|
|
5
5
|
exports.ORGANIZATION_ROLES = [
|
|
6
6
|
role_enum_1.Roles.ORGANIZATION_OWNER,
|
|
7
7
|
role_enum_1.Roles.ORGANIZATION_ADMIN,
|
|
8
|
-
role_enum_1.Roles.ORGANIZATION_USER
|
|
8
|
+
role_enum_1.Roles.ORGANIZATION_USER,
|
|
9
|
+
role_enum_1.Roles.ORGANIZATION_BILLING_ADMIN,
|
|
10
|
+
role_enum_1.Roles.ORGANIZATION_NEWSFEED_ADMIN,
|
|
11
|
+
role_enum_1.Roles.ORGANIZATION_PARTNERSHIPS_ADMIN,
|
|
12
|
+
role_enum_1.Roles.ORGANIZATION_RESPONSE_UNITS_ADMIN
|
|
9
13
|
];
|
|
10
14
|
exports.CONTROL_CENTRE_ROLES = [
|
|
11
15
|
role_enum_1.Roles.CONTROL_CENTRE_ADMIN,
|
|
12
16
|
role_enum_1.Roles.CONTROL_CENTRE_USER,
|
|
13
|
-
role_enum_1.Roles.RESPONDER
|
|
17
|
+
role_enum_1.Roles.RESPONDER,
|
|
18
|
+
role_enum_1.Roles.CONTROL_CENTRE_RESPONSE_UNITS_ADMIN
|
|
14
19
|
];
|
|
15
20
|
exports.MOBILE_ROLES = [
|
|
16
21
|
role_enum_1.Roles.MOBILE_USER
|
|
@@ -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;
|
|
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;IACrC,iBAAK,CAAC,iCAAiC;CAC1C,CAAC;AAEW,QAAA,oBAAoB,GAAa;IAC1C,iBAAK,CAAC,oBAAoB;IAC1B,iBAAK,CAAC,mBAAmB;IACzB,iBAAK,CAAC,SAAS;IACf,iBAAK,CAAC,mCAAmC;CAC5C,CAAC;AAEW,QAAA,YAAY,GAAa;IAClC,iBAAK,CAAC,WAAW;CACpB,CAAC"}
|
|
@@ -7,12 +7,26 @@ var Roles;
|
|
|
7
7
|
Roles["ORGANIZATION_OWNER"] = "Organization:Owner";
|
|
8
8
|
Roles["ORGANIZATION_ADMIN"] = "Organization:Admin";
|
|
9
9
|
Roles["ORGANIZATION_USER"] = "Organization:User";
|
|
10
|
+
Roles["ORGANIZATION_BILLING_ADMIN"] = "Organization:Billing-Admin";
|
|
11
|
+
Roles["ORGANIZATION_NEWSFEED_ADMIN"] = "Organization:Newsfeed-Admin";
|
|
12
|
+
/** Handles partnerships with third-party responders, and nothing else. */
|
|
13
|
+
Roles["ORGANIZATION_PARTNERSHIPS_ADMIN"] = "Organization:Partnerships-Admin";
|
|
14
|
+
/** Manages response units and how they are tracked, across the organization. */
|
|
15
|
+
Roles["ORGANIZATION_RESPONSE_UNITS_ADMIN"] = "Organization:Response-Units-Admin";
|
|
10
16
|
Roles["CONTROL_CENTRE_ADMIN"] = "Control-Centre:Admin";
|
|
11
17
|
Roles["CONTROL_CENTRE_USER"] = "Control-Centre:User";
|
|
18
|
+
/** The same job, confined to one control centre. */
|
|
19
|
+
Roles["CONTROL_CENTRE_RESPONSE_UNITS_ADMIN"] = "Control-Centre:Response-Units-Admin";
|
|
12
20
|
Roles["RESPONDER"] = "Responder";
|
|
13
21
|
Roles["MOBILE_USER"] = "Mobile-User";
|
|
14
22
|
})(Roles || (exports.Roles = Roles = {}));
|
|
15
23
|
/**
|
|
16
24
|
* When defining a new role, also update the roles-by-scope.ts file
|
|
25
|
+
*
|
|
26
|
+
* A MIRROR of grm-shared-library's Roles, which is the authority: the backend
|
|
27
|
+
* declares roles and clarion-authentication seeds them. The admin client only
|
|
28
|
+
* compares role NAMES (to decide what to show), so a name missing here cannot be
|
|
29
|
+
* gated on at all. roles.spec.ts pins the values so the mirror cannot go stale
|
|
30
|
+
* silently again.
|
|
17
31
|
*/
|
|
18
32
|
//# sourceMappingURL=role.enum.js.map
|
|
@@ -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,KAiBX;AAjBD,WAAY,KAAK;IACb,oCAA2B,CAAA;IAC3B,kDAAyC,CAAA;IACzC,kDAAyC,CAAA;IACzC,gDAAuC,CAAA;IACvC,kEAAyD,CAAA;IACzD,oEAA2D,CAAA;IAC3D,0EAA0E;IAC1E,4EAAmE,CAAA;IACnE,gFAAgF;IAChF,gFAAuE,CAAA;IACvE,sDAA6C,CAAA;IAC7C,oDAA2C,CAAA;IAC3C,oDAAoD;IACpD,oFAA2E,CAAA;IAC3E,gCAAuB,CAAA;IACvB,oCAA2B,CAAA;AAC/B,CAAC,EAjBW,KAAK,qBAAL,KAAK,QAiBhB;AAED;;;;;;;;GAQG"}
|
|
@@ -21,6 +21,7 @@ __exportStar(require("./enums/tracking-connection-status.enum"), exports);
|
|
|
21
21
|
__exportStar(require("./enums/tracking-unit-online-status.enum"), exports);
|
|
22
22
|
// Interfaces / DTOs
|
|
23
23
|
__exportStar(require("./interfaces/tracking-provider-connection.dto"), exports);
|
|
24
|
+
__exportStar(require("./interfaces/tracking-provider-descriptor"), exports);
|
|
24
25
|
__exportStar(require("./interfaces/tracking-device-binding.dto"), exports);
|
|
25
26
|
__exportStar(require("./interfaces/tracking-position.dto"), exports);
|
|
26
27
|
__exportStar(require("./interfaces/tracking-socket-events"), exports);
|
|
@@ -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;AAEzD,oBAAoB;AACpB,gFAA8D;AAC9D,2EAAyD;AACzD,qEAAmD;AACnD,sEAAoD;AACpD,uEAAqD;AACrD,qEAAmD"}
|
|
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;AAEzD,oBAAoB;AACpB,gFAA8D;AAC9D,4EAA0D;AAC1D,2EAAyD;AACzD,qEAAmD;AACnD,sEAAoD;AACpD,uEAAqD;AACrD,qEAAmD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildDefaultTrackingProviderConfiguration = buildDefaultTrackingProviderConfiguration;
|
|
4
|
+
/**
|
|
5
|
+
* The `configuration` a connection gets when the operator supplies none: every
|
|
6
|
+
* setting at its default. Stored explicitly on the connection so that readers
|
|
7
|
+
* which know nothing about adapters (the status evaluator, ingestion guards) see
|
|
8
|
+
* the provider's thresholds rather than the service-wide fallbacks.
|
|
9
|
+
*/
|
|
10
|
+
function buildDefaultTrackingProviderConfiguration(descriptor) {
|
|
11
|
+
const configuration = {};
|
|
12
|
+
for (const setting of descriptor.settings) {
|
|
13
|
+
configuration[setting.key] = setting.defaultValue;
|
|
14
|
+
}
|
|
15
|
+
return configuration;
|
|
16
|
+
}
|
|
17
|
+
//# 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":";;AAwHA,8FAQC;AAdD;;;;;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"}
|
|
@@ -52,6 +52,22 @@ export var PermissionActions;
|
|
|
52
52
|
PermissionActions["READ_RESPONSE_UNIT"] = "read:response-unit";
|
|
53
53
|
PermissionActions["UPDATE_RESPONSE_UNIT"] = "update:response-unit";
|
|
54
54
|
PermissionActions["DELETE_RESPONSE_UNIT"] = "delete:response-unit";
|
|
55
|
+
// Module: Tracking (clarion-response-tracking). Mirrors grm-shared-library.
|
|
56
|
+
// UPDATE of a provider connection also covers test / enable / disable /
|
|
57
|
+
// reconnect; READ / UPDATE of a device binding also cover the unmapped-units
|
|
58
|
+
// worklist and resolving / reopening an entry on it.
|
|
59
|
+
PermissionActions["CREATE_TRACKING_PROVIDER_CONNECTION"] = "create:tracking-provider-connection";
|
|
60
|
+
PermissionActions["READ_TRACKING_PROVIDER_CONNECTION"] = "read:tracking-provider-connection";
|
|
61
|
+
PermissionActions["UPDATE_TRACKING_PROVIDER_CONNECTION"] = "update:tracking-provider-connection";
|
|
62
|
+
PermissionActions["DELETE_TRACKING_PROVIDER_CONNECTION"] = "delete:tracking-provider-connection";
|
|
63
|
+
PermissionActions["CREATE_TRACKING_DEVICE_BINDING"] = "create:tracking-device-binding";
|
|
64
|
+
PermissionActions["READ_TRACKING_DEVICE_BINDING"] = "read:tracking-device-binding";
|
|
65
|
+
PermissionActions["UPDATE_TRACKING_DEVICE_BINDING"] = "update:tracking-device-binding";
|
|
66
|
+
PermissionActions["DELETE_TRACKING_DEVICE_BINDING"] = "delete:tracking-device-binding";
|
|
67
|
+
PermissionActions["READ_TRACKING_POSITION"] = "read:tracking-position";
|
|
68
|
+
PermissionActions["READ_TRACKING_HISTORY"] = "read:tracking-history";
|
|
69
|
+
PermissionActions["READ_TRACKING_OPERATIONS"] = "read:tracking-operations";
|
|
70
|
+
PermissionActions["MANAGE_TRACKING_OPERATIONS"] = "manage:tracking-operations";
|
|
55
71
|
// Module: Support
|
|
56
72
|
//
|
|
57
73
|
// Mirrors grm-shared-library exactly, values included: the admin gates its
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBAwGX;AAxGD,WAAY,iBAAiB;IACzB,uBAAuB;IACvB,gEAA2C,CAAA;IAC3C,4DAAuC,CAAA;IACvC,gEAA2C,CAAA;IAC3C,gEAA2C,CAAA;IAE3C,kBAAkB;IAClB,sDAAiC,CAAA;IACjC,kDAA6B,CAAA;IAC7B,sDAAiC,CAAA;IACjC,sDAAiC,CAAA;IACjC,wEAAwE;IACxE,mEAAmE;IACnE,oEAA+C,CAAA;IAC/C,0EAAqD,CAAA;IACrD,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IACnD,2EAA2E;IAC3E,4EAA4E;IAC5E,qEAAqE;IACrE,uDAAuD;IACvD,wEAAmD,CAAA;IACnD,4EAAuD,CAAA;IAEvD,wBAAwB;IACxB,oEAA+C,CAAA;IAC/C,gEAA2C,CAAA;IAC3C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAE/C,eAAe;IACf,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAE3B,eAAe;IACf,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAE3B,mBAAmB;IACnB,wDAAmC,CAAA;IACnC,oDAA+B,CAAA;IAC/B,wDAAmC,CAAA;IACnC,wDAAmC,CAAA;IACnC,oFAA+D,CAAA;IAC/D,gFAA2D,CAAA;IAC3D,oFAA+D,CAAA;IAC/D,oFAA+D,CAAA;IAE/D,uBAAuB;IACvB,kEAA6C,CAAA;IAC7C,8DAAyC,CAAA;IACzC,kEAA6C,CAAA;IAC7C,kEAA6C,CAAA;IAE7C,4EAA4E;IAC5E,wEAAwE;IACxE,6EAA6E;IAC7E,qDAAqD;IACrD,gGAA2E,CAAA;IAC3E,4FAAuE,CAAA;IACvE,gGAA2E,CAAA;IAC3E,gGAA2E,CAAA;IAC3E,sFAAiE,CAAA;IACjE,kFAA6D,CAAA;IAC7D,sFAAiE,CAAA;IACjE,sFAAiE,CAAA;IACjE,sEAAiD,CAAA;IACjD,oEAA+C,CAAA;IAC/C,0EAAqD,CAAA;IACrD,8EAAyD,CAAA;IAEzD,kBAAkB;IAClB,EAAE;IACF,2EAA2E;IAC3E,0EAA0E;IAC1E,uEAAuE;IACvE,+BAA+B;IAC/B,oEAA+C,CAAA;IAC/C,gEAA2C,CAAA;IAC3C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAC/C,kEAA6C,CAAA;IAC7C,gEAA2C,CAAA;IAC3C,kFAA6D,CAAA;IAC7D,sFAAiE,CAAA;IACjE,kEAA6C,CAAA;IAC7C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAC/C,wEAAmD,CAAA;IACnD,0EAAqD,CAAA;IACrD,0EAAqD,CAAA;IACrD,kEAA6C,CAAA;IAC7C,gEAA2C,CAAA;IAC3C,8DAAyC,CAAA;IACzC,kFAA6D,CAAA;IAC7D,gEAA2C,CAAA;IAC3C,4DAAuC,CAAA;IACvC,gEAA2C,CAAA;AAC/C,CAAC,EAxGW,iBAAiB,KAAjB,iBAAiB,QAwG5B"}
|
|
@@ -7,6 +7,7 @@ export var PermissionsModule;
|
|
|
7
7
|
PermissionsModule["ROLE"] = "Role";
|
|
8
8
|
PermissionsModule["INCIDENT"] = "Grievance";
|
|
9
9
|
PermissionsModule["RESPONSE_UNIT"] = "Response Unit";
|
|
10
|
+
PermissionsModule["TRACKING"] = "Tracking";
|
|
10
11
|
PermissionsModule["SUPPORT"] = "Support";
|
|
11
12
|
})(PermissionsModule || (PermissionsModule = {}));
|
|
12
13
|
//# sourceMappingURL=permissions-moudule.enum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions-moudule.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permissions-moudule.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"permissions-moudule.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permissions-moudule.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBAUX;AAVD,WAAY,iBAAiB;IACzB,kDAA6B,CAAA;IAC7B,wCAAmB,CAAA;IACnB,sDAAiC,CAAA;IACjC,kCAAa,CAAA;IACb,kCAAa,CAAA;IACb,2CAAsB,CAAA;IACtB,oDAA+B,CAAA;IAC/B,0CAAqB,CAAA;IACrB,wCAAmB,CAAA;AACvB,CAAC,EAVW,iBAAiB,KAAjB,iBAAiB,QAU5B"}
|
|
@@ -2,12 +2,17 @@ import { Roles } from "../enums/role.enum";
|
|
|
2
2
|
export const ORGANIZATION_ROLES = [
|
|
3
3
|
Roles.ORGANIZATION_OWNER,
|
|
4
4
|
Roles.ORGANIZATION_ADMIN,
|
|
5
|
-
Roles.ORGANIZATION_USER
|
|
5
|
+
Roles.ORGANIZATION_USER,
|
|
6
|
+
Roles.ORGANIZATION_BILLING_ADMIN,
|
|
7
|
+
Roles.ORGANIZATION_NEWSFEED_ADMIN,
|
|
8
|
+
Roles.ORGANIZATION_PARTNERSHIPS_ADMIN,
|
|
9
|
+
Roles.ORGANIZATION_RESPONSE_UNITS_ADMIN
|
|
6
10
|
];
|
|
7
11
|
export const CONTROL_CENTRE_ROLES = [
|
|
8
12
|
Roles.CONTROL_CENTRE_ADMIN,
|
|
9
13
|
Roles.CONTROL_CENTRE_USER,
|
|
10
|
-
Roles.RESPONDER
|
|
14
|
+
Roles.RESPONDER,
|
|
15
|
+
Roles.CONTROL_CENTRE_RESPONSE_UNITS_ADMIN
|
|
11
16
|
];
|
|
12
17
|
export const MOBILE_ROLES = [
|
|
13
18
|
Roles.MOBILE_USER
|
|
@@ -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;
|
|
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;IACrC,KAAK,CAAC,iCAAiC;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAa;IAC1C,KAAK,CAAC,oBAAoB;IAC1B,KAAK,CAAC,mBAAmB;IACzB,KAAK,CAAC,SAAS;IACf,KAAK,CAAC,mCAAmC;CAC5C,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAa;IAClC,KAAK,CAAC,WAAW;CACpB,CAAC"}
|
|
@@ -4,12 +4,26 @@ export var Roles;
|
|
|
4
4
|
Roles["ORGANIZATION_OWNER"] = "Organization:Owner";
|
|
5
5
|
Roles["ORGANIZATION_ADMIN"] = "Organization:Admin";
|
|
6
6
|
Roles["ORGANIZATION_USER"] = "Organization:User";
|
|
7
|
+
Roles["ORGANIZATION_BILLING_ADMIN"] = "Organization:Billing-Admin";
|
|
8
|
+
Roles["ORGANIZATION_NEWSFEED_ADMIN"] = "Organization:Newsfeed-Admin";
|
|
9
|
+
/** Handles partnerships with third-party responders, and nothing else. */
|
|
10
|
+
Roles["ORGANIZATION_PARTNERSHIPS_ADMIN"] = "Organization:Partnerships-Admin";
|
|
11
|
+
/** Manages response units and how they are tracked, across the organization. */
|
|
12
|
+
Roles["ORGANIZATION_RESPONSE_UNITS_ADMIN"] = "Organization:Response-Units-Admin";
|
|
7
13
|
Roles["CONTROL_CENTRE_ADMIN"] = "Control-Centre:Admin";
|
|
8
14
|
Roles["CONTROL_CENTRE_USER"] = "Control-Centre:User";
|
|
15
|
+
/** The same job, confined to one control centre. */
|
|
16
|
+
Roles["CONTROL_CENTRE_RESPONSE_UNITS_ADMIN"] = "Control-Centre:Response-Units-Admin";
|
|
9
17
|
Roles["RESPONDER"] = "Responder";
|
|
10
18
|
Roles["MOBILE_USER"] = "Mobile-User";
|
|
11
19
|
})(Roles || (Roles = {}));
|
|
12
20
|
/**
|
|
13
21
|
* When defining a new role, also update the roles-by-scope.ts file
|
|
22
|
+
*
|
|
23
|
+
* A MIRROR of grm-shared-library's Roles, which is the authority: the backend
|
|
24
|
+
* declares roles and clarion-authentication seeds them. The admin client only
|
|
25
|
+
* compares role NAMES (to decide what to show), so a name missing here cannot be
|
|
26
|
+
* gated on at all. roles.spec.ts pins the values so the mirror cannot go stale
|
|
27
|
+
* silently again.
|
|
14
28
|
*/
|
|
15
29
|
//# sourceMappingURL=role.enum.js.map
|
|
@@ -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,KAiBX;AAjBD,WAAY,KAAK;IACb,oCAA2B,CAAA;IAC3B,kDAAyC,CAAA;IACzC,kDAAyC,CAAA;IACzC,gDAAuC,CAAA;IACvC,kEAAyD,CAAA;IACzD,oEAA2D,CAAA;IAC3D,0EAA0E;IAC1E,4EAAmE,CAAA;IACnE,gFAAgF;IAChF,gFAAuE,CAAA;IACvE,sDAA6C,CAAA;IAC7C,oDAA2C,CAAA;IAC3C,oDAAoD;IACpD,oFAA2E,CAAA;IAC3E,gCAAuB,CAAA;IACvB,oCAA2B,CAAA;AAC/B,CAAC,EAjBW,KAAK,KAAL,KAAK,QAiBhB;AAED;;;;;;;;GAQG"}
|
|
@@ -5,6 +5,7 @@ export * from './enums/tracking-connection-status.enum';
|
|
|
5
5
|
export * from './enums/tracking-unit-online-status.enum';
|
|
6
6
|
// Interfaces / DTOs
|
|
7
7
|
export * from './interfaces/tracking-provider-connection.dto';
|
|
8
|
+
export * from './interfaces/tracking-provider-descriptor';
|
|
8
9
|
export * from './interfaces/tracking-device-binding.dto';
|
|
9
10
|
export * from './interfaces/tracking-position.dto';
|
|
10
11
|
export * from './interfaces/tracking-socket-events';
|
|
@@ -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;AAEzD,oBAAoB;AACpB,cAAc,+CAA+C,CAAC;AAC9D,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,oCAAoC,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;AAEzD,oBAAoB;AACpB,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,oCAAoC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
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
|
+
//# 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":"AAkHA;;;;;GAKG;AACH,MAAM,UAAU,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"}
|
|
@@ -38,6 +38,18 @@ export declare enum PermissionActions {
|
|
|
38
38
|
READ_RESPONSE_UNIT = "read:response-unit",
|
|
39
39
|
UPDATE_RESPONSE_UNIT = "update:response-unit",
|
|
40
40
|
DELETE_RESPONSE_UNIT = "delete:response-unit",
|
|
41
|
+
CREATE_TRACKING_PROVIDER_CONNECTION = "create:tracking-provider-connection",
|
|
42
|
+
READ_TRACKING_PROVIDER_CONNECTION = "read:tracking-provider-connection",
|
|
43
|
+
UPDATE_TRACKING_PROVIDER_CONNECTION = "update:tracking-provider-connection",
|
|
44
|
+
DELETE_TRACKING_PROVIDER_CONNECTION = "delete:tracking-provider-connection",
|
|
45
|
+
CREATE_TRACKING_DEVICE_BINDING = "create:tracking-device-binding",
|
|
46
|
+
READ_TRACKING_DEVICE_BINDING = "read:tracking-device-binding",
|
|
47
|
+
UPDATE_TRACKING_DEVICE_BINDING = "update:tracking-device-binding",
|
|
48
|
+
DELETE_TRACKING_DEVICE_BINDING = "delete:tracking-device-binding",
|
|
49
|
+
READ_TRACKING_POSITION = "read:tracking-position",
|
|
50
|
+
READ_TRACKING_HISTORY = "read:tracking-history",
|
|
51
|
+
READ_TRACKING_OPERATIONS = "read:tracking-operations",
|
|
52
|
+
MANAGE_TRACKING_OPERATIONS = "manage:tracking-operations",
|
|
41
53
|
CREATE_SUPPORT_TICKET = "create:support-ticket",
|
|
42
54
|
READ_SUPPORT_TICKET = "read:support-ticket",
|
|
43
55
|
UPDATE_SUPPORT_TICKET = "update:support-ticket",
|
|
@@ -3,11 +3,25 @@ export declare enum Roles {
|
|
|
3
3
|
ORGANIZATION_OWNER = "Organization:Owner",
|
|
4
4
|
ORGANIZATION_ADMIN = "Organization:Admin",
|
|
5
5
|
ORGANIZATION_USER = "Organization:User",
|
|
6
|
+
ORGANIZATION_BILLING_ADMIN = "Organization:Billing-Admin",
|
|
7
|
+
ORGANIZATION_NEWSFEED_ADMIN = "Organization:Newsfeed-Admin",
|
|
8
|
+
/** Handles partnerships with third-party responders, and nothing else. */
|
|
9
|
+
ORGANIZATION_PARTNERSHIPS_ADMIN = "Organization:Partnerships-Admin",
|
|
10
|
+
/** Manages response units and how they are tracked, across the organization. */
|
|
11
|
+
ORGANIZATION_RESPONSE_UNITS_ADMIN = "Organization:Response-Units-Admin",
|
|
6
12
|
CONTROL_CENTRE_ADMIN = "Control-Centre:Admin",
|
|
7
13
|
CONTROL_CENTRE_USER = "Control-Centre:User",
|
|
14
|
+
/** The same job, confined to one control centre. */
|
|
15
|
+
CONTROL_CENTRE_RESPONSE_UNITS_ADMIN = "Control-Centre:Response-Units-Admin",
|
|
8
16
|
RESPONDER = "Responder",
|
|
9
17
|
MOBILE_USER = "Mobile-User"
|
|
10
18
|
}
|
|
11
19
|
/**
|
|
12
20
|
* When defining a new role, also update the roles-by-scope.ts file
|
|
21
|
+
*
|
|
22
|
+
* A MIRROR of grm-shared-library's Roles, which is the authority: the backend
|
|
23
|
+
* declares roles and clarion-authentication seeds them. The admin client only
|
|
24
|
+
* compares role NAMES (to decide what to show), so a name missing here cannot be
|
|
25
|
+
* gated on at all. roles.spec.ts pins the values so the mirror cannot go stale
|
|
26
|
+
* silently again.
|
|
13
27
|
*/
|
|
@@ -3,6 +3,7 @@ export * from './enums/tracking-transport-type.enum';
|
|
|
3
3
|
export * from './enums/tracking-connection-status.enum';
|
|
4
4
|
export * from './enums/tracking-unit-online-status.enum';
|
|
5
5
|
export * from './interfaces/tracking-provider-connection.dto';
|
|
6
|
+
export * from './interfaces/tracking-provider-descriptor';
|
|
6
7
|
export * from './interfaces/tracking-device-binding.dto';
|
|
7
8
|
export * from './interfaces/tracking-position.dto';
|
|
8
9
|
export * from './interfaces/tracking-socket-events';
|
|
@@ -0,0 +1,111 @@
|
|
|
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
|
+
* Mirrors `grm-shared-library`'s TrackingProviderDescriptor (the backend copy also
|
|
20
|
+
* carries the validator the service enforces these bounds with).
|
|
21
|
+
*
|
|
22
|
+
* SECURITY: a descriptor is static metadata. It never carries a secret, a secret
|
|
23
|
+
* reference, or anything tenant-specific.
|
|
24
|
+
*/
|
|
25
|
+
export type TrackingProviderSettingType = 'number' | 'boolean' | 'select' | 'text';
|
|
26
|
+
export interface TrackingProviderSettingOption {
|
|
27
|
+
value: string;
|
|
28
|
+
label: string;
|
|
29
|
+
}
|
|
30
|
+
/** One key of a provider connection's `configuration` blob. */
|
|
31
|
+
export interface TrackingProviderSettingDescriptor {
|
|
32
|
+
/** The `configuration` key this setting is stored under. */
|
|
33
|
+
key: string;
|
|
34
|
+
label: string;
|
|
35
|
+
type: TrackingProviderSettingType;
|
|
36
|
+
/** Key of the {@link TrackingProviderSettingGroupDescriptor} it is shown under. */
|
|
37
|
+
group: string;
|
|
38
|
+
/** Applied by the service when the key is absent, and pre-filled by the client. */
|
|
39
|
+
defaultValue: number | boolean | string;
|
|
40
|
+
description?: string;
|
|
41
|
+
/** Display unit, e.g. `s`, `m`, `km/h`. */
|
|
42
|
+
unit?: string;
|
|
43
|
+
/** `number` settings only. Bounds are inclusive and enforced by the service. */
|
|
44
|
+
min?: number;
|
|
45
|
+
max?: number;
|
|
46
|
+
step?: number;
|
|
47
|
+
/** `number` settings only: reject fractional values. */
|
|
48
|
+
integer?: boolean;
|
|
49
|
+
/** `text` settings only. */
|
|
50
|
+
maxLength?: number;
|
|
51
|
+
/** `select` settings only: the closed set of accepted values. */
|
|
52
|
+
options?: TrackingProviderSettingOption[];
|
|
53
|
+
}
|
|
54
|
+
export interface TrackingProviderSettingGroupDescriptor {
|
|
55
|
+
key: string;
|
|
56
|
+
label: string;
|
|
57
|
+
description?: string;
|
|
58
|
+
}
|
|
59
|
+
/** An optional connection field whose meaning (or existence) depends on the provider. */
|
|
60
|
+
export interface TrackingProviderFieldDescriptor {
|
|
61
|
+
/** false ⇒ the provider has no such concept: hide the field and send nothing. */
|
|
62
|
+
used: boolean;
|
|
63
|
+
required: boolean;
|
|
64
|
+
label: string;
|
|
65
|
+
placeholder?: string;
|
|
66
|
+
description?: string;
|
|
67
|
+
}
|
|
68
|
+
export interface TrackingProviderEndpointDescriptor {
|
|
69
|
+
label: string;
|
|
70
|
+
placeholder: string;
|
|
71
|
+
description?: string;
|
|
72
|
+
/** Pre-filled for providers with one well-known public endpoint. */
|
|
73
|
+
defaultValue?: string;
|
|
74
|
+
/** Accepted URL schemes, with the trailing colon: `wss:`, `https:`… */
|
|
75
|
+
protocols: string[];
|
|
76
|
+
}
|
|
77
|
+
/** What the referenced secret must contain. Describes the secret; never holds it. */
|
|
78
|
+
export interface TrackingProviderSecretDescriptor {
|
|
79
|
+
label: string;
|
|
80
|
+
description: string;
|
|
81
|
+
placeholder?: string;
|
|
82
|
+
}
|
|
83
|
+
/** How the provider identifies a unit — what an operator binds to a response unit. */
|
|
84
|
+
export interface TrackingProviderExternalUnitDescriptor {
|
|
85
|
+
label: string;
|
|
86
|
+
description: string;
|
|
87
|
+
placeholder?: string;
|
|
88
|
+
}
|
|
89
|
+
export interface TrackingProviderDescriptor {
|
|
90
|
+
providerCode: TrackingProviderCode;
|
|
91
|
+
displayName: string;
|
|
92
|
+
description: string;
|
|
93
|
+
/** Supported transports; the first is the default. */
|
|
94
|
+
transportTypes: TrackingTransportType[];
|
|
95
|
+
endpoint: TrackingProviderEndpointDescriptor;
|
|
96
|
+
externalUsername: TrackingProviderFieldDescriptor;
|
|
97
|
+
externalDomain: TrackingProviderFieldDescriptor;
|
|
98
|
+
secret: TrackingProviderSecretDescriptor;
|
|
99
|
+
externalUnitId: TrackingProviderExternalUnitDescriptor;
|
|
100
|
+
/** Display order of the setting groups. */
|
|
101
|
+
settingGroups: TrackingProviderSettingGroupDescriptor[];
|
|
102
|
+
settings: TrackingProviderSettingDescriptor[];
|
|
103
|
+
documentationUrl?: string;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* The `configuration` a connection gets when the operator supplies none: every
|
|
107
|
+
* setting at its default. Stored explicitly on the connection so that readers
|
|
108
|
+
* which know nothing about adapters (the status evaluator, ingestion guards) see
|
|
109
|
+
* the provider's thresholds rather than the service-wide fallbacks.
|
|
110
|
+
*/
|
|
111
|
+
export declare function buildDefaultTrackingProviderConfiguration(descriptor: Pick<TrackingProviderDescriptor, 'settings'>): Record<string, number | boolean | string>;
|