grm-shared-library 1.1.195 → 1.1.196

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 (199) hide show
  1. package/dist/cjs/index.js +1 -0
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/kafka/topics.js +3 -0
  4. package/dist/cjs/kafka/topics.js.map +1 -1
  5. package/dist/cjs/modules/common/constants/service.const.js +1 -0
  6. package/dist/cjs/modules/common/constants/service.const.js.map +1 -1
  7. package/dist/cjs/modules/partner/constants/partner-defaults.const.js +74 -0
  8. package/dist/cjs/modules/partner/constants/partner-defaults.const.js.map +1 -0
  9. package/dist/cjs/modules/partner/constants/partner-kafka.const.js +20 -0
  10. package/dist/cjs/modules/partner/constants/partner-kafka.const.js.map +1 -0
  11. package/dist/cjs/modules/partner/dtos/create-partner-coverage-rule.dto.js +101 -0
  12. package/dist/cjs/modules/partner/dtos/create-partner-coverage-rule.dto.js.map +1 -0
  13. package/dist/cjs/modules/partner/dtos/create-partner-integration.dto.js +178 -0
  14. package/dist/cjs/modules/partner/dtos/create-partner-integration.dto.js.map +1 -0
  15. package/dist/cjs/modules/partner/dtos/partner-dispatch-decision.dto.js +36 -0
  16. package/dist/cjs/modules/partner/dtos/partner-dispatch-decision.dto.js.map +1 -0
  17. package/dist/cjs/modules/partner/dtos/route-incident-to-partners.dto.js +230 -0
  18. package/dist/cjs/modules/partner/dtos/route-incident-to-partners.dto.js.map +1 -0
  19. package/dist/cjs/modules/partner/dtos/update-incident-partner-routing.dto.js +132 -0
  20. package/dist/cjs/modules/partner/dtos/update-incident-partner-routing.dto.js.map +1 -0
  21. package/dist/cjs/modules/partner/dtos/update-partner-coverage-rule.dto.js +9 -0
  22. package/dist/cjs/modules/partner/dtos/update-partner-coverage-rule.dto.js.map +1 -0
  23. package/dist/cjs/modules/partner/dtos/update-partner-integration.dto.js +15 -0
  24. package/dist/cjs/modules/partner/dtos/update-partner-integration.dto.js.map +1 -0
  25. package/dist/cjs/modules/partner/enums/incident-partner-routing-status.enum.js +30 -0
  26. package/dist/cjs/modules/partner/enums/incident-partner-routing-status.enum.js.map +1 -0
  27. package/dist/cjs/modules/partner/enums/partner-adapter-operation.enum.js +18 -0
  28. package/dist/cjs/modules/partner/enums/partner-adapter-operation.enum.js.map +1 -0
  29. package/dist/cjs/modules/partner/enums/partner-coverage-match-type.enum.js +23 -0
  30. package/dist/cjs/modules/partner/enums/partner-coverage-match-type.enum.js.map +1 -0
  31. package/dist/cjs/modules/partner/enums/partner-dispatch-failure-reason.enum.js +51 -0
  32. package/dist/cjs/modules/partner/enums/partner-dispatch-failure-reason.enum.js.map +1 -0
  33. package/dist/cjs/modules/partner/enums/partner-dispatch-scope.enum.js +21 -0
  34. package/dist/cjs/modules/partner/enums/partner-dispatch-scope.enum.js.map +1 -0
  35. package/dist/cjs/modules/partner/enums/partner-dispatch-status.enum.js +52 -0
  36. package/dist/cjs/modules/partner/enums/partner-dispatch-status.enum.js.map +1 -0
  37. package/dist/cjs/modules/partner/enums/partner-integration-environment.enum.js +17 -0
  38. package/dist/cjs/modules/partner/enums/partner-integration-environment.enum.js.map +1 -0
  39. package/dist/cjs/modules/partner/enums/partner-integration-status.enum.js +23 -0
  40. package/dist/cjs/modules/partner/enums/partner-integration-status.enum.js.map +1 -0
  41. package/dist/cjs/modules/partner/enums/partner-location-provider.enum.js +20 -0
  42. package/dist/cjs/modules/partner/enums/partner-location-provider.enum.js.map +1 -0
  43. package/dist/cjs/modules/partner/enums/partner-provider-code.enum.js +28 -0
  44. package/dist/cjs/modules/partner/enums/partner-provider-code.enum.js.map +1 -0
  45. package/dist/cjs/modules/partner/enums/partner-routing-mode.enum.js +25 -0
  46. package/dist/cjs/modules/partner/enums/partner-routing-mode.enum.js.map +1 -0
  47. package/dist/cjs/modules/partner/enums/partner-service-capability.enum.js +29 -0
  48. package/dist/cjs/modules/partner/enums/partner-service-capability.enum.js.map +1 -0
  49. package/dist/cjs/modules/partner/index.js +55 -0
  50. package/dist/cjs/modules/partner/index.js.map +1 -0
  51. package/dist/cjs/modules/partner/interfaces/incident-partner-routing.js +3 -0
  52. package/dist/cjs/modules/partner/interfaces/incident-partner-routing.js.map +1 -0
  53. package/dist/cjs/modules/partner/interfaces/partner-connection-test-result.js +3 -0
  54. package/dist/cjs/modules/partner/interfaces/partner-connection-test-result.js.map +1 -0
  55. package/dist/cjs/modules/partner/interfaces/partner-coverage-rule.js +3 -0
  56. package/dist/cjs/modules/partner/interfaces/partner-coverage-rule.js.map +1 -0
  57. package/dist/cjs/modules/partner/interfaces/partner-dispatch-events.js +3 -0
  58. package/dist/cjs/modules/partner/interfaces/partner-dispatch-events.js.map +1 -0
  59. package/dist/cjs/modules/partner/interfaces/partner-dispatch-location.js +3 -0
  60. package/dist/cjs/modules/partner/interfaces/partner-dispatch-location.js.map +1 -0
  61. package/dist/cjs/modules/partner/interfaces/partner-dispatch.js +3 -0
  62. package/dist/cjs/modules/partner/interfaces/partner-dispatch.js.map +1 -0
  63. package/dist/cjs/modules/partner/interfaces/partner-emergency-contact.js +3 -0
  64. package/dist/cjs/modules/partner/interfaces/partner-emergency-contact.js.map +1 -0
  65. package/dist/cjs/modules/partner/interfaces/partner-integration.js +3 -0
  66. package/dist/cjs/modules/partner/interfaces/partner-integration.js.map +1 -0
  67. package/dist/cjs/modules/partner/interfaces/partner-provider-descriptor.js +3 -0
  68. package/dist/cjs/modules/partner/interfaces/partner-provider-descriptor.js.map +1 -0
  69. package/dist/cjs/modules/partner/interfaces/partner-routing-result.js +3 -0
  70. package/dist/cjs/modules/partner/interfaces/partner-routing-result.js.map +1 -0
  71. package/dist/cjs/modules/partner/utils/partner-payload.util.js +116 -0
  72. package/dist/cjs/modules/partner/utils/partner-payload.util.js.map +1 -0
  73. package/dist/cjs/modules/partner/utils/partner-routing.util.js +137 -0
  74. package/dist/cjs/modules/partner/utils/partner-routing.util.js.map +1 -0
  75. package/dist/cjs/modules/permission/data/permissions.data.js +5 -1
  76. package/dist/cjs/modules/permission/data/permissions.data.js.map +1 -1
  77. package/dist/cjs/modules/permission/enums/permission-actions.enum.js +10 -0
  78. package/dist/cjs/modules/permission/enums/permission-actions.enum.js.map +1 -1
  79. package/dist/cjs/modules/role/data/roles.data.js +26 -0
  80. package/dist/cjs/modules/role/data/roles.data.js.map +1 -1
  81. package/dist/esm/index.js +1 -0
  82. package/dist/esm/index.js.map +1 -1
  83. package/dist/esm/kafka/topics.js +3 -0
  84. package/dist/esm/kafka/topics.js.map +1 -1
  85. package/dist/esm/modules/common/constants/service.const.js +1 -0
  86. package/dist/esm/modules/common/constants/service.const.js.map +1 -1
  87. package/dist/esm/modules/partner/constants/partner-defaults.const.js +71 -0
  88. package/dist/esm/modules/partner/constants/partner-defaults.const.js.map +1 -0
  89. package/dist/esm/modules/partner/constants/partner-kafka.const.js +17 -0
  90. package/dist/esm/modules/partner/constants/partner-kafka.const.js.map +1 -0
  91. package/dist/esm/modules/partner/dtos/create-partner-coverage-rule.dto.js +97 -0
  92. package/dist/esm/modules/partner/dtos/create-partner-coverage-rule.dto.js.map +1 -0
  93. package/dist/esm/modules/partner/dtos/create-partner-integration.dto.js +174 -0
  94. package/dist/esm/modules/partner/dtos/create-partner-integration.dto.js.map +1 -0
  95. package/dist/esm/modules/partner/dtos/partner-dispatch-decision.dto.js +32 -0
  96. package/dist/esm/modules/partner/dtos/partner-dispatch-decision.dto.js.map +1 -0
  97. package/dist/esm/modules/partner/dtos/route-incident-to-partners.dto.js +224 -0
  98. package/dist/esm/modules/partner/dtos/route-incident-to-partners.dto.js.map +1 -0
  99. package/dist/esm/modules/partner/dtos/update-incident-partner-routing.dto.js +127 -0
  100. package/dist/esm/modules/partner/dtos/update-incident-partner-routing.dto.js.map +1 -0
  101. package/dist/esm/modules/partner/dtos/update-partner-coverage-rule.dto.js +5 -0
  102. package/dist/esm/modules/partner/dtos/update-partner-coverage-rule.dto.js.map +1 -0
  103. package/dist/esm/modules/partner/dtos/update-partner-integration.dto.js +11 -0
  104. package/dist/esm/modules/partner/dtos/update-partner-integration.dto.js.map +1 -0
  105. package/dist/esm/modules/partner/enums/incident-partner-routing-status.enum.js +27 -0
  106. package/dist/esm/modules/partner/enums/incident-partner-routing-status.enum.js.map +1 -0
  107. package/dist/esm/modules/partner/enums/partner-adapter-operation.enum.js +15 -0
  108. package/dist/esm/modules/partner/enums/partner-adapter-operation.enum.js.map +1 -0
  109. package/dist/esm/modules/partner/enums/partner-coverage-match-type.enum.js +20 -0
  110. package/dist/esm/modules/partner/enums/partner-coverage-match-type.enum.js.map +1 -0
  111. package/dist/esm/modules/partner/enums/partner-dispatch-failure-reason.enum.js +48 -0
  112. package/dist/esm/modules/partner/enums/partner-dispatch-failure-reason.enum.js.map +1 -0
  113. package/dist/esm/modules/partner/enums/partner-dispatch-scope.enum.js +18 -0
  114. package/dist/esm/modules/partner/enums/partner-dispatch-scope.enum.js.map +1 -0
  115. package/dist/esm/modules/partner/enums/partner-dispatch-status.enum.js +49 -0
  116. package/dist/esm/modules/partner/enums/partner-dispatch-status.enum.js.map +1 -0
  117. package/dist/esm/modules/partner/enums/partner-integration-environment.enum.js +14 -0
  118. package/dist/esm/modules/partner/enums/partner-integration-environment.enum.js.map +1 -0
  119. package/dist/esm/modules/partner/enums/partner-integration-status.enum.js +20 -0
  120. package/dist/esm/modules/partner/enums/partner-integration-status.enum.js.map +1 -0
  121. package/dist/esm/modules/partner/enums/partner-location-provider.enum.js +17 -0
  122. package/dist/esm/modules/partner/enums/partner-location-provider.enum.js.map +1 -0
  123. package/dist/esm/modules/partner/enums/partner-provider-code.enum.js +25 -0
  124. package/dist/esm/modules/partner/enums/partner-provider-code.enum.js.map +1 -0
  125. package/dist/esm/modules/partner/enums/partner-routing-mode.enum.js +22 -0
  126. package/dist/esm/modules/partner/enums/partner-routing-mode.enum.js.map +1 -0
  127. package/dist/esm/modules/partner/enums/partner-service-capability.enum.js +26 -0
  128. package/dist/esm/modules/partner/enums/partner-service-capability.enum.js.map +1 -0
  129. package/dist/esm/modules/partner/index.js +39 -0
  130. package/dist/esm/modules/partner/index.js.map +1 -0
  131. package/dist/esm/modules/partner/interfaces/incident-partner-routing.js +2 -0
  132. package/dist/esm/modules/partner/interfaces/incident-partner-routing.js.map +1 -0
  133. package/dist/esm/modules/partner/interfaces/partner-connection-test-result.js +2 -0
  134. package/dist/esm/modules/partner/interfaces/partner-connection-test-result.js.map +1 -0
  135. package/dist/esm/modules/partner/interfaces/partner-coverage-rule.js +2 -0
  136. package/dist/esm/modules/partner/interfaces/partner-coverage-rule.js.map +1 -0
  137. package/dist/esm/modules/partner/interfaces/partner-dispatch-events.js +2 -0
  138. package/dist/esm/modules/partner/interfaces/partner-dispatch-events.js.map +1 -0
  139. package/dist/esm/modules/partner/interfaces/partner-dispatch-location.js +2 -0
  140. package/dist/esm/modules/partner/interfaces/partner-dispatch-location.js.map +1 -0
  141. package/dist/esm/modules/partner/interfaces/partner-dispatch.js +2 -0
  142. package/dist/esm/modules/partner/interfaces/partner-dispatch.js.map +1 -0
  143. package/dist/esm/modules/partner/interfaces/partner-emergency-contact.js +2 -0
  144. package/dist/esm/modules/partner/interfaces/partner-emergency-contact.js.map +1 -0
  145. package/dist/esm/modules/partner/interfaces/partner-integration.js +2 -0
  146. package/dist/esm/modules/partner/interfaces/partner-integration.js.map +1 -0
  147. package/dist/esm/modules/partner/interfaces/partner-provider-descriptor.js +2 -0
  148. package/dist/esm/modules/partner/interfaces/partner-provider-descriptor.js.map +1 -0
  149. package/dist/esm/modules/partner/interfaces/partner-routing-result.js +2 -0
  150. package/dist/esm/modules/partner/interfaces/partner-routing-result.js.map +1 -0
  151. package/dist/esm/modules/partner/utils/partner-payload.util.js +109 -0
  152. package/dist/esm/modules/partner/utils/partner-payload.util.js.map +1 -0
  153. package/dist/esm/modules/partner/utils/partner-routing.util.js +127 -0
  154. package/dist/esm/modules/partner/utils/partner-routing.util.js.map +1 -0
  155. package/dist/esm/modules/permission/data/permissions.data.js +5 -1
  156. package/dist/esm/modules/permission/data/permissions.data.js.map +1 -1
  157. package/dist/esm/modules/permission/enums/permission-actions.enum.js +10 -0
  158. package/dist/esm/modules/permission/enums/permission-actions.enum.js.map +1 -1
  159. package/dist/esm/modules/role/data/roles.data.js +26 -0
  160. package/dist/esm/modules/role/data/roles.data.js.map +1 -1
  161. package/dist/types/index.d.ts +1 -0
  162. package/dist/types/kafka/topics.d.ts +2 -0
  163. package/dist/types/modules/common/constants/service.const.d.ts +4 -0
  164. package/dist/types/modules/partner/constants/partner-defaults.const.d.ts +60 -0
  165. package/dist/types/modules/partner/constants/partner-kafka.const.d.ts +16 -0
  166. package/dist/types/modules/partner/dtos/create-partner-coverage-rule.dto.d.ts +24 -0
  167. package/dist/types/modules/partner/dtos/create-partner-integration.dto.d.ts +31 -0
  168. package/dist/types/modules/partner/dtos/partner-dispatch-decision.dto.d.ts +11 -0
  169. package/dist/types/modules/partner/dtos/route-incident-to-partners.dto.d.ts +52 -0
  170. package/dist/types/modules/partner/dtos/update-incident-partner-routing.dto.d.ts +34 -0
  171. package/dist/types/modules/partner/dtos/update-partner-coverage-rule.dto.d.ts +5 -0
  172. package/dist/types/modules/partner/dtos/update-partner-integration.dto.d.ts +11 -0
  173. package/dist/types/modules/partner/enums/incident-partner-routing-status.enum.d.ts +25 -0
  174. package/dist/types/modules/partner/enums/partner-adapter-operation.enum.d.ts +13 -0
  175. package/dist/types/modules/partner/enums/partner-coverage-match-type.enum.d.ts +18 -0
  176. package/dist/types/modules/partner/enums/partner-dispatch-failure-reason.enum.d.ts +37 -0
  177. package/dist/types/modules/partner/enums/partner-dispatch-scope.enum.d.ts +16 -0
  178. package/dist/types/modules/partner/enums/partner-dispatch-status.enum.d.ts +37 -0
  179. package/dist/types/modules/partner/enums/partner-integration-environment.enum.d.ts +12 -0
  180. package/dist/types/modules/partner/enums/partner-integration-status.enum.d.ts +18 -0
  181. package/dist/types/modules/partner/enums/partner-location-provider.enum.d.ts +15 -0
  182. package/dist/types/modules/partner/enums/partner-provider-code.enum.d.ts +23 -0
  183. package/dist/types/modules/partner/enums/partner-routing-mode.enum.d.ts +20 -0
  184. package/dist/types/modules/partner/enums/partner-service-capability.enum.d.ts +24 -0
  185. package/dist/types/modules/partner/index.d.ts +33 -0
  186. package/dist/types/modules/partner/interfaces/incident-partner-routing.d.ts +43 -0
  187. package/dist/types/modules/partner/interfaces/partner-connection-test-result.d.ts +22 -0
  188. package/dist/types/modules/partner/interfaces/partner-coverage-rule.d.ts +36 -0
  189. package/dist/types/modules/partner/interfaces/partner-dispatch-events.d.ts +40 -0
  190. package/dist/types/modules/partner/interfaces/partner-dispatch-location.d.ts +13 -0
  191. package/dist/types/modules/partner/interfaces/partner-dispatch.d.ts +119 -0
  192. package/dist/types/modules/partner/interfaces/partner-emergency-contact.d.ts +15 -0
  193. package/dist/types/modules/partner/interfaces/partner-integration.d.ts +63 -0
  194. package/dist/types/modules/partner/interfaces/partner-provider-descriptor.d.ts +56 -0
  195. package/dist/types/modules/partner/interfaces/partner-routing-result.d.ts +24 -0
  196. package/dist/types/modules/partner/utils/partner-payload.util.d.ts +49 -0
  197. package/dist/types/modules/partner/utils/partner-routing.util.d.ts +71 -0
  198. package/dist/types/modules/permission/enums/permission-actions.enum.d.ts +4 -0
  199. package/package.json +1 -1
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.coverageRuleMatches = coverageRuleMatches;
4
+ exports.resolveRoutingMode = resolveRoutingMode;
5
+ exports.mapChannelToLocationProvider = mapChannelToLocationProvider;
6
+ exports.isPartnerLocationProvider = isPartnerLocationProvider;
7
+ exports.isPermanentDispatchFailure = isPermanentDispatchFailure;
8
+ exports.isDeliveredDispatchStatus = isDeliveredDispatchStatus;
9
+ exports.retryDelaySeconds = retryDelaySeconds;
10
+ exports.summarizeIncidentRoutingStatus = summarizeIncidentRoutingStatus;
11
+ const partner_defaults_const_1 = require("../constants/partner-defaults.const");
12
+ const incident_partner_routing_status_enum_1 = require("../enums/incident-partner-routing-status.enum");
13
+ const partner_coverage_match_type_enum_1 = require("../enums/partner-coverage-match-type.enum");
14
+ const partner_dispatch_failure_reason_enum_1 = require("../enums/partner-dispatch-failure-reason.enum");
15
+ const partner_dispatch_status_enum_1 = require("../enums/partner-dispatch-status.enum");
16
+ const partner_location_provider_enum_1 = require("../enums/partner-location-provider.enum");
17
+ const partner_routing_mode_enum_1 = require("../enums/partner-routing-mode.enum");
18
+ /**
19
+ * Whether a coverage rule applies to an incident.
20
+ *
21
+ * Shared by clarion-partner-services (which routes on it) and the web admin
22
+ * (which previews "what would this rule catch?"), so the two can never disagree
23
+ * about whether an ambulance would have been called.
24
+ *
25
+ * A disabled rule never matches, and a rule whose match key is missing on either
26
+ * side never matches - a rule with no incident type cannot silently become a
27
+ * catch-all.
28
+ */
29
+ function coverageRuleMatches(rule, subject) {
30
+ if (rule.enabled === false)
31
+ return false;
32
+ switch (rule.matchType) {
33
+ case partner_coverage_match_type_enum_1.PartnerCoverageMatchType.ALL:
34
+ return true;
35
+ case partner_coverage_match_type_enum_1.PartnerCoverageMatchType.INCIDENT_TYPE:
36
+ return (rule.incidentTypeId != null &&
37
+ subject.incidentTypeId != null &&
38
+ rule.incidentTypeId === subject.incidentTypeId);
39
+ case partner_coverage_match_type_enum_1.PartnerCoverageMatchType.INCIDENT_CATEGORY:
40
+ return (rule.incidentCategoryId != null &&
41
+ subject.incidentCategoryId != null &&
42
+ rule.incidentCategoryId === subject.incidentCategoryId);
43
+ case partner_coverage_match_type_enum_1.PartnerCoverageMatchType.EMERGENCY_TYPE:
44
+ return (rule.emergencyType != null &&
45
+ subject.emergencyType != null &&
46
+ String(rule.emergencyType) === String(subject.emergencyType));
47
+ default:
48
+ return false;
49
+ }
50
+ }
51
+ /**
52
+ * The routing mode actually applied to a dispatch.
53
+ *
54
+ * A rule-level override wins over the partnership's default, and DISABLED at
55
+ * either level wins over everything - an organization that has switched routing
56
+ * off must not be overridden by a rule it forgot about.
57
+ */
58
+ function resolveRoutingMode(integrationMode, ruleOverride) {
59
+ if (integrationMode === partner_routing_mode_enum_1.PartnerRoutingMode.DISABLED)
60
+ return partner_routing_mode_enum_1.PartnerRoutingMode.DISABLED;
61
+ if (!ruleOverride)
62
+ return integrationMode;
63
+ return ruleOverride;
64
+ }
65
+ /**
66
+ * How a partner is told the incident's location was obtained, derived from the
67
+ * reporting channel.
68
+ *
69
+ * `overrides` accepts a partnership's `locationProviderByChannel` configuration
70
+ * verbatim; unknown channels and unknown provider values fall back to the
71
+ * platform default rather than being passed through to the partner.
72
+ */
73
+ function mapChannelToLocationProvider(channel, overrides) {
74
+ const fallback = partner_location_provider_enum_1.PartnerLocationProvider.NETWORK;
75
+ if (!channel)
76
+ return fallback;
77
+ const override = overrides === null || overrides === void 0 ? void 0 : overrides[String(channel)];
78
+ if (override && isPartnerLocationProvider(override)) {
79
+ return override;
80
+ }
81
+ const mapped = partner_defaults_const_1.PARTNER_CHANNEL_LOCATION_PROVIDER[channel];
82
+ return mapped !== null && mapped !== void 0 ? mapped : fallback;
83
+ }
84
+ /** Type guard for a value claiming to be a {@link PartnerLocationProvider}. */
85
+ function isPartnerLocationProvider(value) {
86
+ return (typeof value === 'string' &&
87
+ Object.values(partner_location_provider_enum_1.PartnerLocationProvider).includes(value));
88
+ }
89
+ /** Whether a failure should be retried, or has no chance of succeeding. */
90
+ function isPermanentDispatchFailure(reason) {
91
+ if (!reason)
92
+ return false;
93
+ return partner_dispatch_failure_reason_enum_1.PERMANENT_PARTNER_DISPATCH_FAILURE_REASONS.includes(reason);
94
+ }
95
+ /** Whether a dispatch status means the partner has the emergency. */
96
+ function isDeliveredDispatchStatus(status) {
97
+ return partner_dispatch_status_enum_1.DELIVERED_PARTNER_DISPATCH_STATUSES.includes(status);
98
+ }
99
+ /**
100
+ * Seconds to wait before retry number `attemptNumber` (1-based), as an
101
+ * exponential backoff clamped to the configured ceiling.
102
+ */
103
+ function retryDelaySeconds(attemptNumber, baseSeconds = partner_defaults_const_1.PARTNER_DISPATCH_DEFAULTS.RETRY_BASE_SECONDS, maxSeconds = partner_defaults_const_1.PARTNER_DISPATCH_DEFAULTS.RETRY_MAX_SECONDS) {
104
+ const safeAttempt = Number.isFinite(attemptNumber) && attemptNumber > 0 ? Math.floor(attemptNumber) : 1;
105
+ const delay = baseSeconds * Math.pow(2, safeAttempt - 1);
106
+ return Math.min(delay, maxSeconds);
107
+ }
108
+ /**
109
+ * Roll every dispatch on an incident up into the one status stored on the
110
+ * incident row.
111
+ *
112
+ * Order matters and encodes what an operator most needs to see first: anything
113
+ * still waiting on a human outranks a settled outcome, and a mix of delivered
114
+ * and failed is reported as PARTIALLY_ROUTED rather than rounded to either.
115
+ */
116
+ function summarizeIncidentRoutingStatus(statuses) {
117
+ if (!statuses || statuses.length === 0)
118
+ return incident_partner_routing_status_enum_1.IncidentPartnerRoutingStatus.NOT_ROUTED;
119
+ if (statuses.some((s) => s === partner_dispatch_status_enum_1.PartnerDispatchStatus.PENDING_APPROVAL)) {
120
+ return incident_partner_routing_status_enum_1.IncidentPartnerRoutingStatus.AWAITING_APPROVAL;
121
+ }
122
+ if (statuses.some((s) => s === partner_dispatch_status_enum_1.PartnerDispatchStatus.QUEUED || s === partner_dispatch_status_enum_1.PartnerDispatchStatus.SENDING)) {
123
+ return incident_partner_routing_status_enum_1.IncidentPartnerRoutingStatus.PENDING;
124
+ }
125
+ const delivered = statuses.filter(isDeliveredDispatchStatus).length;
126
+ if (delivered === statuses.length)
127
+ return incident_partner_routing_status_enum_1.IncidentPartnerRoutingStatus.ROUTED;
128
+ if (delivered > 0)
129
+ return incident_partner_routing_status_enum_1.IncidentPartnerRoutingStatus.PARTIALLY_ROUTED;
130
+ const declined = statuses.filter((s) => s === partner_dispatch_status_enum_1.PartnerDispatchStatus.REJECTED ||
131
+ s === partner_dispatch_status_enum_1.PartnerDispatchStatus.CANCELLED ||
132
+ s === partner_dispatch_status_enum_1.PartnerDispatchStatus.EXPIRED).length;
133
+ if (declined === statuses.length)
134
+ return incident_partner_routing_status_enum_1.IncidentPartnerRoutingStatus.DECLINED;
135
+ return incident_partner_routing_status_enum_1.IncidentPartnerRoutingStatus.FAILED;
136
+ }
137
+ //# sourceMappingURL=partner-routing.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-routing.util.js","sourceRoot":"","sources":["../../../../../src/modules/partner/utils/partner-routing.util.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,11 @@ exports.PERMISSIONS_DATA = [
19
19
  permission_actions_enum_1.PermissionActions.CREATE_PARTNER,
20
20
  permission_actions_enum_1.PermissionActions.READ_PARTNER,
21
21
  permission_actions_enum_1.PermissionActions.UPDATE_PARTNER,
22
- permission_actions_enum_1.PermissionActions.DELETE_PARTNER
22
+ permission_actions_enum_1.PermissionActions.DELETE_PARTNER,
23
+ permission_actions_enum_1.PermissionActions.READ_PARTNER_DISPATCH,
24
+ permission_actions_enum_1.PermissionActions.APPROVE_PARTNER_DISPATCH,
25
+ permission_actions_enum_1.PermissionActions.CANCEL_PARTNER_DISPATCH,
26
+ permission_actions_enum_1.PermissionActions.RESEND_PARTNER_DISPATCH
23
27
  ]
24
28
  },
25
29
  {
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.data.js","sourceRoot":"","sources":["../../../../../src/modules/permission/data/permissions.data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.data.js","sourceRoot":"","sources":["../../../../../src/modules/permission/data/permissions.data.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,20 @@ var PermissionActions;
9
9
  PermissionActions["UPDATE_ORGANIZATION"] = "update:organization";
10
10
  PermissionActions["DELETE_ORGANIZATION"] = "delete:organization";
11
11
  // Module: Partner
12
+ // Configuring an organization's third-party service partnerships
13
+ // (clarion-partner-services). These four already existed and were dormant;
14
+ // they now govern partnership and coverage-rule CRUD.
12
15
  PermissionActions["CREATE_PARTNER"] = "create:partner";
13
16
  PermissionActions["READ_PARTNER"] = "read:partner";
14
17
  PermissionActions["UPDATE_PARTNER"] = "update:partner";
15
18
  PermissionActions["DELETE_PARTNER"] = "delete:partner";
19
+ // Acting on an individual routed emergency. Kept apart from the CRUD
20
+ // actions above because the people who confirm an ambulance (control-room
21
+ // operators) are not the people who configure the partnership.
22
+ PermissionActions["READ_PARTNER_DISPATCH"] = "read:partner-dispatch";
23
+ PermissionActions["APPROVE_PARTNER_DISPATCH"] = "approve:partner-dispatch";
24
+ PermissionActions["CANCEL_PARTNER_DISPATCH"] = "cancel:partner-dispatch";
25
+ PermissionActions["RESEND_PARTNER_DISPATCH"] = "resend:partner-dispatch";
16
26
  // Module: ControlCentre
17
27
  PermissionActions["CREATE_CONTROL_CENTRE"] = "create:control-centre";
18
28
  PermissionActions["READ_CONTROL_CENTRE"] = "read:control-centre";
@@ -1 +1 @@
1
- {"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBA6HX;AA7HD,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;IAEjC,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,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,kBAAkB;IAClB,8DAAyC,CAAA;IACzC,0DAAqC,CAAA;IACrC,8DAAyC,CAAA;IACzC,8DAAyC,CAAA;IAEzC,oEAA+C,CAAA;IAC/C,gEAA2C,CAAA;IAC3C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAE/C,wEAAmD,CAAA;IACnD,oEAA+C,CAAA;IAC/C,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IAEnD,sFAAiE,CAAA;IACjE,kFAA6D,CAAA;IAC7D,sFAAiE,CAAA;IACjE,sFAAiE,CAAA;IAEjE,0EAAqD,CAAA;IACrD,sEAAiD,CAAA;IACjD,0EAAqD,CAAA;IACrD,0EAAqD,CAAA;IAErD,0DAAqC,CAAA;IAErC,sDAAiC,CAAA;IACjC,kDAA6B,CAAA;IAC7B,4DAAuC,CAAA;IAEvC,kDAA6B,CAAA;IAC7B,8CAAyB,CAAA;IACzB,oDAA+B,CAAA;IAE/B,sDAAiC,CAAA;IACjC,kDAA6B,CAAA;IAE7B,sDAAiC,CAAA;IACjC,kDAA6B,CAAA;IAC7B,sDAAiC,CAAA;IACjC,0DAAqC,CAAA;IACrC,8DAAyC,CAAA;IACzC,sDAAiC,CAAA;IAEjC,8DAAyC,CAAA;IACzC,sDAAiC,CAAA;IACjC,kDAA6B,CAAA;IAE7B,8FAAyE,CAAA;IACzE,kFAA6D,CAAA;IAC7D,0GAAqF,CAAA;IACrF,sFAAiE,CAAA;IAEjE,4FAAuE,CAAA;IACvE,gFAA2D,CAAA;IAC3D,wGAAmF,CAAA;IACnF,oFAA+D,CAAA;IAE/D,4DAAuC,CAAA;IACvC,wDAAmC,CAAA;IACnC,wEAAmD,CAAA;IACnD,kEAA6C,CAAA;IAE7C,mBAAmB;IACnB,kEAA6C,CAAA;IAC7C,8DAAyC,CAAA;IACzC,kEAA6C,CAAA;IAC7C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAC/C,kEAA6C,CAAA;AACjD,CAAC,EA7HW,iBAAiB,iCAAjB,iBAAiB,QA6H5B"}
1
+ {"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,11 @@ exports.ROLES_DATA = [
22
22
  permission_1.PermissionActions.READ_PARTNER,
23
23
  permission_1.PermissionActions.UPDATE_PARTNER,
24
24
  permission_1.PermissionActions.DELETE_PARTNER,
25
+ //Partner dispatch
26
+ permission_1.PermissionActions.READ_PARTNER_DISPATCH,
27
+ permission_1.PermissionActions.APPROVE_PARTNER_DISPATCH,
28
+ permission_1.PermissionActions.CANCEL_PARTNER_DISPATCH,
29
+ permission_1.PermissionActions.RESEND_PARTNER_DISPATCH,
25
30
  //control centre
26
31
  permission_1.PermissionActions.CREATE_CONTROL_CENTRE,
27
32
  permission_1.PermissionActions.READ_CONTROL_CENTRE,
@@ -68,6 +73,11 @@ exports.ROLES_DATA = [
68
73
  permission_1.PermissionActions.READ_PARTNER,
69
74
  permission_1.PermissionActions.UPDATE_PARTNER,
70
75
  permission_1.PermissionActions.DELETE_PARTNER,
76
+ //Partner dispatch
77
+ permission_1.PermissionActions.READ_PARTNER_DISPATCH,
78
+ permission_1.PermissionActions.APPROVE_PARTNER_DISPATCH,
79
+ permission_1.PermissionActions.CANCEL_PARTNER_DISPATCH,
80
+ permission_1.PermissionActions.RESEND_PARTNER_DISPATCH,
71
81
  //control centre
72
82
  permission_1.PermissionActions.CREATE_CONTROL_CENTRE,
73
83
  permission_1.PermissionActions.READ_CONTROL_CENTRE,
@@ -110,6 +120,8 @@ exports.ROLES_DATA = [
110
120
  permission_1.PermissionActions.READ_ORGANIZATION,
111
121
  //Partner
112
122
  permission_1.PermissionActions.READ_PARTNER,
123
+ //Partner dispatch
124
+ permission_1.PermissionActions.READ_PARTNER_DISPATCH,
113
125
  //control centre
114
126
  permission_1.PermissionActions.READ_CONTROL_CENTRE,
115
127
  //Zone
@@ -132,6 +144,13 @@ exports.ROLES_DATA = [
132
144
  permissions: [
133
145
  //Organization
134
146
  permission_1.PermissionActions.READ_ORGANIZATION,
147
+ //Partner dispatch: the control room confirms and withdraws a routed
148
+ //emergency, but does not configure the partnership behind it.
149
+ permission_1.PermissionActions.READ_PARTNER,
150
+ permission_1.PermissionActions.READ_PARTNER_DISPATCH,
151
+ permission_1.PermissionActions.APPROVE_PARTNER_DISPATCH,
152
+ permission_1.PermissionActions.CANCEL_PARTNER_DISPATCH,
153
+ permission_1.PermissionActions.RESEND_PARTNER_DISPATCH,
135
154
  //Control Centre
136
155
  permission_1.PermissionActions.READ_CONTROL_CENTRE,
137
156
  permission_1.PermissionActions.UPDATE_CONTROL_CENTRE,
@@ -166,6 +185,10 @@ exports.ROLES_DATA = [
166
185
  permissions: [
167
186
  //Organization
168
187
  permission_1.PermissionActions.READ_ORGANIZATION,
188
+ //Partner dispatch: an operator on the desk may confirm a routed
189
+ //emergency; withdrawing one and resending it stay with their admin.
190
+ permission_1.PermissionActions.READ_PARTNER_DISPATCH,
191
+ permission_1.PermissionActions.APPROVE_PARTNER_DISPATCH,
169
192
  //Control Centre
170
193
  permission_1.PermissionActions.READ_CONTROL_CENTRE,
171
194
  //Zone
@@ -190,6 +213,9 @@ exports.ROLES_DATA = [
190
213
  permissions: [
191
214
  //Organization
192
215
  permission_1.PermissionActions.READ_ORGANIZATION,
216
+ //Partner dispatch: a responder sees whether a partner is en route,
217
+ //and changes nothing about it.
218
+ permission_1.PermissionActions.READ_PARTNER_DISPATCH,
193
219
  //Control Centre
194
220
  permission_1.PermissionActions.READ_CONTROL_CENTRE,
195
221
  //Zone
@@ -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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"}
package/dist/esm/index.js CHANGED
@@ -23,6 +23,7 @@ export * from './modules/tracking/index';
23
23
  export * from './modules/entitlement/index';
24
24
  export * from './modules/alert-dispatch/index';
25
25
  export * from './modules/system-user/index';
26
+ export * from './modules/partner/index';
26
27
  // Interfaces
27
28
  export * from './interfaces/server-message';
28
29
  export * from './interfaces/i-request-with-user';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAE5C,aAAa;AACb,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AAExC,YAAY;AACZ,cAAc,0BAA0B,CAAC;AAEzC,QAAQ;AACR,cAAc,eAAe,CAAC;AAE9B,YAAY;AACZ,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uDAAuD,CAAC;AAEtE,aAAa;AACb,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AAExC,aAAa;AACb,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AAExC,YAAY;AACZ,cAAc,0BAA0B,CAAC;AAEzC,QAAQ;AACR,cAAc,eAAe,CAAC;AAE9B,YAAY;AACZ,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uDAAuD,CAAC;AAEtE,aAAa;AACb,cAAc,oBAAoB,CAAC"}
@@ -66,5 +66,8 @@ export const KAFKA_TOPICS = {
66
66
  ORG_RESPONSE_UNIT_DELETED: 'organization.response-unit.deleted.v1',
67
67
  ORG_RESPONSE_UNIT_CONTROL_CENTRE_CHANGED: 'organization.response-unit.control-centre-changed.v1',
68
68
  ORG_RESPONSE_UNIT_STATUS_CHANGED: 'organization.response-unit.status-changed.v1',
69
+ // Third-party partner dispatch (producer: clarion-partner-services) - versioned.
70
+ PARTNER_DISPATCH_CREATED: 'partner.dispatch.created.v1',
71
+ PARTNER_DISPATCH_STATUS_CHANGED: 'partner.dispatch.status-changed.v1',
69
72
  };
70
73
  //# sourceMappingURL=topics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"topics.js","sourceRoot":"","sources":["../../../src/kafka/topics.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,OAAO;IACP,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,eAAe,EAAE,iBAAiB;IAClC,6BAA6B,EAAE,+BAA+B;IAC9D,6BAA6B,EAAE,+BAA+B;IAC9D,OAAO;IACP,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,cAAc;IAC5B,MAAM;IACN,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,MAAM;IACN,YAAY,EAAE,eAAe;IAC7B,aAAa,EAAE,eAAe;IAC9B,WAAW;IACX,cAAc,EAAE,gBAAgB;IAChC,WAAW;IACX,gBAAgB,EAAE,kBAAkB;IACpC,gBAAgB,EAAE,kBAAkB;IACpC,uBAAuB,EAAE,yBAAyB;IAClD,sBAAsB,EAAE,wBAAwB;IAChD,yBAAyB,EAAE,2BAA2B;IACtD,wBAAwB,EAAE,0BAA0B;IACpD,0BAA0B,EAAE,4BAA4B;IACxD,sBAAsB,EAAE,wBAAwB;IAChD,iBAAiB,EAAE,mBAAmB;IACtC,2BAA2B,EAAE,6BAA6B;IAC1D,yCAAyC,EAAE,2CAA2C;IACtF,OAAO;IACP,oBAAoB,EAAE,sBAAsB;IAC5C,yBAAyB,EAAE,2BAA2B;IACtD,qBAAqB,EAAE,uBAAuB;IAC9C,OAAO;IACP,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,OAAO;IACP,iBAAiB,EAAE,mBAAmB;IACtC,oBAAoB,EAAE,sBAAsB;IAC5C,WAAW;IACX,qBAAqB,EAAE,uBAAuB;IAC9C,uBAAuB,EAAE,yBAAyB;IAClD,qBAAqB,EAAE,uBAAuB;IAC9C,sBAAsB,EAAE,wBAAwB;IAChD,qBAAqB,EAAE,uBAAuB;IAC9C,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;IAC9C,oBAAoB,EAAE,sBAAsB;IAC5C,wBAAwB,EAAE,0BAA0B;IACpD,wBAAwB,EAAE,0BAA0B;IACpD,wBAAwB,EAAE,0BAA0B;IACpD,iEAAiE;IACjE,iBAAiB,EAAE,oCAAoC;IACvD,eAAe,EAAE,kCAAkC;IACnD,wBAAwB,EAAE,6BAA6B;IACvD,wBAAwB,EAAE,6BAA6B;IACvD,wBAAwB,EAAE,6BAA6B;IACvD,wEAAwE;IACxE,+DAA+D;IAC/D,yBAAyB,EAAE,uCAAuC;IAClE,yBAAyB,EAAE,uCAAuC;IAClE,yBAAyB,EAAE,uCAAuC;IAClE,wCAAwC,EACpC,sDAAsD;IAC1D,gCAAgC,EAAE,8CAA8C;CACnF,CAAC"}
1
+ {"version":3,"file":"topics.js","sourceRoot":"","sources":["../../../src/kafka/topics.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,OAAO;IACP,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,eAAe,EAAE,iBAAiB;IAClC,6BAA6B,EAAE,+BAA+B;IAC9D,6BAA6B,EAAE,+BAA+B;IAC9D,OAAO;IACP,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,cAAc;IAC5B,MAAM;IACN,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,MAAM;IACN,YAAY,EAAE,eAAe;IAC7B,aAAa,EAAE,eAAe;IAC9B,WAAW;IACX,cAAc,EAAE,gBAAgB;IAChC,WAAW;IACX,gBAAgB,EAAE,kBAAkB;IACpC,gBAAgB,EAAE,kBAAkB;IACpC,uBAAuB,EAAE,yBAAyB;IAClD,sBAAsB,EAAE,wBAAwB;IAChD,yBAAyB,EAAE,2BAA2B;IACtD,wBAAwB,EAAE,0BAA0B;IACpD,0BAA0B,EAAE,4BAA4B;IACxD,sBAAsB,EAAE,wBAAwB;IAChD,iBAAiB,EAAE,mBAAmB;IACtC,2BAA2B,EAAE,6BAA6B;IAC1D,yCAAyC,EAAE,2CAA2C;IACtF,OAAO;IACP,oBAAoB,EAAE,sBAAsB;IAC5C,yBAAyB,EAAE,2BAA2B;IACtD,qBAAqB,EAAE,uBAAuB;IAC9C,OAAO;IACP,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,OAAO;IACP,iBAAiB,EAAE,mBAAmB;IACtC,oBAAoB,EAAE,sBAAsB;IAC5C,WAAW;IACX,qBAAqB,EAAE,uBAAuB;IAC9C,uBAAuB,EAAE,yBAAyB;IAClD,qBAAqB,EAAE,uBAAuB;IAC9C,sBAAsB,EAAE,wBAAwB;IAChD,qBAAqB,EAAE,uBAAuB;IAC9C,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;IAC9C,oBAAoB,EAAE,sBAAsB;IAC5C,wBAAwB,EAAE,0BAA0B;IACpD,wBAAwB,EAAE,0BAA0B;IACpD,wBAAwB,EAAE,0BAA0B;IACpD,iEAAiE;IACjE,iBAAiB,EAAE,oCAAoC;IACvD,eAAe,EAAE,kCAAkC;IACnD,wBAAwB,EAAE,6BAA6B;IACvD,wBAAwB,EAAE,6BAA6B;IACvD,wBAAwB,EAAE,6BAA6B;IACvD,wEAAwE;IACxE,+DAA+D;IAC/D,yBAAyB,EAAE,uCAAuC;IAClE,yBAAyB,EAAE,uCAAuC;IAClE,yBAAyB,EAAE,uCAAuC;IAClE,wCAAwC,EACpC,sDAAsD;IAC1D,gCAAgC,EAAE,8CAA8C;IAChF,iFAAiF;IACjF,wBAAwB,EAAE,6BAA6B;IACvD,+BAA+B,EAAE,oCAAoC;CACxE,CAAC"}
@@ -14,5 +14,6 @@ export const SERVICE_CONSTS = {
14
14
  BILLING_SERVICE: { name: 'billing-service', port: 3012 },
15
15
  NEWSFEED_SERVICE: { name: 'newsfeed-service', port: 3015 },
16
16
  RESPONSE_TRACKING_SERVICE: { name: 'response-tracking-service', port: 3016 },
17
+ PARTNER_SERVICE: { name: 'partner-service', port: 3017 },
17
18
  };
18
19
  //# sourceMappingURL=service.const.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.const.js","sourceRoot":"","sources":["../../../../../src/modules/common/constants/service.const.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE;IAChD,YAAY,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE;IAClD,oBAAoB,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,IAAI,EAAE;IAClE,gBAAgB,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1D,oBAAoB,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,IAAI,EAAE;IAClE,wBAAwB,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1E,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE;IAChD,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE;IAChD,eAAe,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE;IACxD,cAAc,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE;IACtD,YAAY,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE;IAClD,YAAY,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE;IAClD,eAAe,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE;IACxD,gBAAgB,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1D,yBAAyB,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,IAAI,EAAE;CAC/E,CAAC"}
1
+ {"version":3,"file":"service.const.js","sourceRoot":"","sources":["../../../../../src/modules/common/constants/service.const.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE;IAChD,YAAY,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE;IAClD,oBAAoB,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,IAAI,EAAE;IAClE,gBAAgB,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1D,oBAAoB,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,IAAI,EAAE;IAClE,wBAAwB,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1E,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE;IAChD,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE;IAChD,eAAe,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE;IACxD,cAAc,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE;IACtD,YAAY,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE;IAClD,YAAY,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE;IAClD,eAAe,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE;IACxD,gBAAgB,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1D,yBAAyB,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,IAAI,EAAE;IAC5E,eAAe,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE;CAC3D,CAAC"}
@@ -0,0 +1,71 @@
1
+ import { IncidentChannel } from '../../incident/enums/incident-channel.enum';
2
+ import { PartnerLocationProvider } from '../enums/partner-location-provider.enum';
3
+ /**
4
+ * Platform defaults for third-party partner routing. A deployment overrides
5
+ * these with `PARTNER_*` environment variables and a partnership can override
6
+ * some of them again in its own configuration, so these are the last fallback,
7
+ * not policy.
8
+ */
9
+ export const PARTNER_DISPATCH_DEFAULTS = {
10
+ /** Send attempts, including the first, before a transient failure becomes terminal. */
11
+ MAX_ATTEMPTS: 5,
12
+ /** Base of the exponential retry backoff, in seconds: 15s, 30s, 60s, 120s. */
13
+ RETRY_BASE_SECONDS: 15,
14
+ /** Ceiling for the exponential backoff, in seconds. */
15
+ RETRY_MAX_SECONDS: 300,
16
+ /** Per-request timeout for an outbound partner call, in milliseconds. */
17
+ REQUEST_TIMEOUT_MS: 10000,
18
+ /** Timeout for the partner authentication exchange, in milliseconds. */
19
+ AUTH_TIMEOUT_MS: 8000,
20
+ /**
21
+ * How long a MANUAL dispatch waits for a decision before it expires, in
22
+ * minutes. An hour is deliberately generous: an expired ambulance request is
23
+ * a worse outcome than a stale one, and an operator can always cancel.
24
+ */
25
+ APPROVAL_WINDOW_MINUTES: 60,
26
+ /** Order used when a partnership does not set its own. */
27
+ PRIORITY: 100,
28
+ /**
29
+ * Seconds subtracted from a partner token's advertised lifetime before it is
30
+ * treated as expired, so a token can never expire mid-request.
31
+ */
32
+ TOKEN_EXPIRY_SKEW_SECONDS: 60,
33
+ /** Longest a partner access token is cached, whatever lifetime the partner advertises. */
34
+ TOKEN_MAX_CACHE_SECONDS: 24 * 60 * 60,
35
+ };
36
+ /**
37
+ * How an incident's reporting channel is described to a partner.
38
+ *
39
+ * The mobile app takes a platform fused-location fix (GPS plus network and
40
+ * sensors), so APP maps to FUSED rather than the narrower GPS. Every other
41
+ * channel is either a browser geolocation or a location an operator typed in,
42
+ * and NETWORK is the closest honest description of both. A partnership can
43
+ * override the whole map through `locationProviderByChannel` in its
44
+ * configuration.
45
+ */
46
+ export const PARTNER_CHANNEL_LOCATION_PROVIDER = {
47
+ [IncidentChannel.APP]: PartnerLocationProvider.FUSED,
48
+ [IncidentChannel.WEB]: PartnerLocationProvider.NETWORK,
49
+ [IncidentChannel.EMAIL]: PartnerLocationProvider.NETWORK,
50
+ [IncidentChannel.SMS]: PartnerLocationProvider.NETWORK,
51
+ [IncidentChannel.PHONE]: PartnerLocationProvider.NETWORK,
52
+ [IncidentChannel.CHAT]: PartnerLocationProvider.NETWORK,
53
+ [IncidentChannel.SOCIAL_MEDIA]: PartnerLocationProvider.NETWORK,
54
+ [IncidentChannel.IN_PERSON]: PartnerLocationProvider.NETWORK,
55
+ [IncidentChannel.OTHER]: PartnerLocationProvider.NETWORK,
56
+ };
57
+ /** Field limits partner APIs impose, applied before a payload is built. */
58
+ export const PARTNER_FIELD_LIMITS = {
59
+ ADDRESS_MAX_LENGTH: 500,
60
+ ISSUE_MAX_LENGTH: 1000,
61
+ CONTACT_NAME_MAX_LENGTH: 250,
62
+ RELATIONSHIP_MAX_LENGTH: 50,
63
+ /** Emergency-contact numbers offered to a partner, primary guardian first. */
64
+ MAX_EMERGENCY_CONTACT_PHONE_NUMBERS: 5,
65
+ };
66
+ /**
67
+ * Header carrying a caller-supplied idempotency key on routing requests. Kept
68
+ * here so producer and consumer cannot drift.
69
+ */
70
+ export const PARTNER_ROUTING_IDEMPOTENCY_HEADER = 'x-partner-routing-idempotency-key';
71
+ //# sourceMappingURL=partner-defaults.const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-defaults.const.js","sourceRoot":"","sources":["../../../../../src/modules/partner/constants/partner-defaults.const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACrC,uFAAuF;IACvF,YAAY,EAAE,CAAC;IACf,8EAA8E;IAC9E,kBAAkB,EAAE,EAAE;IACtB,uDAAuD;IACvD,iBAAiB,EAAE,GAAG;IACtB,yEAAyE;IACzE,kBAAkB,EAAE,KAAK;IACzB,wEAAwE;IACxE,eAAe,EAAE,IAAI;IACrB;;;;OAIG;IACH,uBAAuB,EAAE,EAAE;IAC3B,0DAA0D;IAC1D,QAAQ,EAAE,GAAG;IACb;;;OAGG;IACH,yBAAyB,EAAE,EAAE;IAC7B,0FAA0F;IAC1F,uBAAuB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;CAC/B,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAA+D;IACzG,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,KAAK;IACpD,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACtD,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACxD,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACtD,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACxD,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACvD,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,uBAAuB,CAAC,OAAO;IAC/D,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,uBAAuB,CAAC,OAAO;IAC5D,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;CAC3D,CAAC;AAEF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,kBAAkB,EAAE,GAAG;IACvB,gBAAgB,EAAE,IAAI;IACtB,uBAAuB,EAAE,GAAG;IAC5B,uBAAuB,EAAE,EAAE;IAC3B,8EAA8E;IAC9E,mCAAmC,EAAE,CAAC;CAChC,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,mCAAmC,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Consumer groups for the partner dispatch topics. One group per logical
3
+ * consumer, so adding a consumer never steals another's messages.
4
+ */
5
+ export const PARTNER_CONSUMER_GROUPS = {
6
+ /** clarion-notification: tells an operator a manual dispatch needs a decision. */
7
+ NOTIFICATION: 'partner-dispatch-notification',
8
+ /** clarion-socket: pushes dispatch state to the live admin views. */
9
+ REALTIME: 'partner-dispatch-realtime',
10
+ };
11
+ /**
12
+ * Redis channel clarion-partner-services publishes live dispatch updates on,
13
+ * mirroring the tracking realtime bridge that clarion-socket already subscribes
14
+ * to.
15
+ */
16
+ export const PARTNER_REALTIME_CHANNEL = 'partner:dispatch:events';
17
+ //# sourceMappingURL=partner-kafka.const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-kafka.const.js","sourceRoot":"","sources":["../../../../../src/modules/partner/constants/partner-kafka.const.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,kFAAkF;IAClF,YAAY,EAAE,+BAA+B;IAC7C,qEAAqE;IACrE,QAAQ,EAAE,2BAA2B;CAC/B,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,yBAAyB,CAAC"}
@@ -0,0 +1,97 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
11
+ import { Type } from 'class-transformer';
12
+ import { IsBoolean, IsEnum, IsInt, IsOptional, IsPositive, IsString, MaxLength, Min, } from 'class-validator';
13
+ import { IncidentEmergencyType } from '../../incident/enums/incident-emergency-type.enum';
14
+ import { PartnerCoverageMatchType } from '../enums/partner-coverage-match-type.enum';
15
+ import { PartnerRoutingMode } from '../enums/partner-routing-mode.enum';
16
+ import { PartnerServiceCapability } from '../enums/partner-service-capability.enum';
17
+ /**
18
+ * Declare that a kind of incident is covered by a partnership.
19
+ *
20
+ * The match key must agree with `matchType` - INCIDENT_TYPE needs
21
+ * `incidentTypeId`, INCIDENT_CATEGORY needs `incidentCategoryId`,
22
+ * EMERGENCY_TYPE needs `emergencyType`, ALL needs none. That cross-field rule is
23
+ * enforced by clarion-partner-services, which also checks the referenced type or
24
+ * category actually belongs to the tenant.
25
+ */
26
+ export class CreatePartnerCoverageRuleDto {
27
+ }
28
+ __decorate([
29
+ ApiProperty({ enum: PartnerCoverageMatchType, description: 'What the rule matches incidents on.' }),
30
+ IsEnum(PartnerCoverageMatchType),
31
+ __metadata("design:type", String)
32
+ ], CreatePartnerCoverageRuleDto.prototype, "matchType", void 0);
33
+ __decorate([
34
+ ApiPropertyOptional({ description: 'Incident type id, when matchType is INCIDENT_TYPE.', example: 7 }),
35
+ Type(() => Number),
36
+ IsInt(),
37
+ IsPositive(),
38
+ IsOptional(),
39
+ __metadata("design:type", Number)
40
+ ], CreatePartnerCoverageRuleDto.prototype, "incidentTypeId", void 0);
41
+ __decorate([
42
+ ApiPropertyOptional({ description: 'Incident category id, when matchType is INCIDENT_CATEGORY.', example: 3 }),
43
+ Type(() => Number),
44
+ IsInt(),
45
+ IsPositive(),
46
+ IsOptional(),
47
+ __metadata("design:type", Number)
48
+ ], CreatePartnerCoverageRuleDto.prototype, "incidentCategoryId", void 0);
49
+ __decorate([
50
+ ApiPropertyOptional({
51
+ enum: IncidentEmergencyType,
52
+ description: 'Emergency classification, when matchType is EMERGENCY_TYPE.',
53
+ }),
54
+ IsEnum(IncidentEmergencyType),
55
+ IsOptional(),
56
+ __metadata("design:type", String)
57
+ ], CreatePartnerCoverageRuleDto.prototype, "emergencyType", void 0);
58
+ __decorate([
59
+ ApiProperty({
60
+ enum: PartnerServiceCapability,
61
+ description: 'Service the partner is asked for when this rule matches. Must be one the partnership declares.',
62
+ example: PartnerServiceCapability.AMBULANCE,
63
+ }),
64
+ IsEnum(PartnerServiceCapability),
65
+ __metadata("design:type", String)
66
+ ], CreatePartnerCoverageRuleDto.prototype, "capability", void 0);
67
+ __decorate([
68
+ ApiPropertyOptional({
69
+ enum: PartnerRoutingMode,
70
+ description: 'Overrides the partnership routing mode for incidents this rule matches.',
71
+ }),
72
+ IsEnum(PartnerRoutingMode),
73
+ IsOptional(),
74
+ __metadata("design:type", String)
75
+ ], CreatePartnerCoverageRuleDto.prototype, "routingModeOverride", void 0);
76
+ __decorate([
77
+ ApiPropertyOptional({ description: 'Evaluation order. Lower goes first.', example: 100 }),
78
+ Type(() => Number),
79
+ IsInt(),
80
+ Min(0),
81
+ IsOptional(),
82
+ __metadata("design:type", Number)
83
+ ], CreatePartnerCoverageRuleDto.prototype, "priority", void 0);
84
+ __decorate([
85
+ ApiPropertyOptional({ description: 'Whether the rule is active. Defaults to true.', example: true }),
86
+ IsBoolean(),
87
+ IsOptional(),
88
+ __metadata("design:type", Boolean)
89
+ ], CreatePartnerCoverageRuleDto.prototype, "enabled", void 0);
90
+ __decorate([
91
+ ApiPropertyOptional({ description: 'Free-text note for whoever configured it.' }),
92
+ IsString(),
93
+ MaxLength(500),
94
+ IsOptional(),
95
+ __metadata("design:type", String)
96
+ ], CreatePartnerCoverageRuleDto.prototype, "notes", void 0);
97
+ //# sourceMappingURL=create-partner-coverage-rule.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-partner-coverage-rule.dto.js","sourceRoot":"","sources":["../../../../../src/modules/partner/dtos/create-partner-coverage-rule.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EACH,SAAS,EACT,MAAM,EACN,KAAK,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,SAAS,EACT,GAAG,GACN,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAEpF;;;;;;;;GAQG;AACH,MAAM,OAAO,4BAA4B;CA4DxC;AAzDG;IAFC,WAAW,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,WAAW,EAAE,qCAAqC,EAAE,CAAC;IACnG,MAAM,CAAC,wBAAwB,CAAC;;+DACI;AAOrC;IALC,mBAAmB,CAAC,EAAE,WAAW,EAAE,oDAAoD,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACtG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,KAAK,EAAE;IACP,UAAU,EAAE;IACZ,UAAU,EAAE;;oEACW;AAOxB;IALC,mBAAmB,CAAC,EAAE,WAAW,EAAE,4DAA4D,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IAC9G,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,KAAK,EAAE;IACP,UAAU,EAAE;IACZ,UAAU,EAAE;;wEACe;AAQ5B;IANC,mBAAmB,CAAC;QACjB,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,6DAA6D;KAC7E,CAAC;IACD,MAAM,CAAC,qBAAqB,CAAC;IAC7B,UAAU,EAAE;;mEACyB;AAQtC;IANC,WAAW,CAAC;QACT,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,gGAAgG;QAC7G,OAAO,EAAE,wBAAwB,CAAC,SAAS;KAC9C,CAAC;IACD,MAAM,CAAC,wBAAwB,CAAC;;gEACK;AAQtC;IANC,mBAAmB,CAAC;QACjB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,yEAAyE;KACzF,CAAC;IACD,MAAM,CAAC,kBAAkB,CAAC;IAC1B,UAAU,EAAE;;yEAC4B;AAOzC;IALC,mBAAmB,CAAC,EAAE,WAAW,EAAE,qCAAqC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IACzF,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,KAAK,EAAE;IACP,GAAG,CAAC,CAAC,CAAC;IACN,UAAU,EAAE;;8DACK;AAKlB;IAHC,mBAAmB,CAAC,EAAE,WAAW,EAAE,+CAA+C,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACpG,SAAS,EAAE;IACX,UAAU,EAAE;;6DACK;AAMlB;IAJC,mBAAmB,CAAC,EAAE,WAAW,EAAE,2CAA2C,EAAE,CAAC;IACjF,QAAQ,EAAE;IACV,SAAS,CAAC,GAAG,CAAC;IACd,UAAU,EAAE;;2DACE"}