grm-shared-library 1.1.236 → 1.1.238

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 (407) hide show
  1. package/README.md +369 -345
  2. package/dist/cjs/index.js +2 -0
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/kafka/topics.js +21 -0
  5. package/dist/cjs/kafka/topics.js.map +1 -1
  6. package/dist/cjs/modules/dispatch/constants/response-unit-dispatch-defaults.const.js +56 -0
  7. package/dist/cjs/modules/dispatch/constants/response-unit-dispatch-defaults.const.js.map +1 -0
  8. package/dist/cjs/modules/dispatch/constants/response-unit-dispatch-kafka.const.js +21 -0
  9. package/dist/cjs/modules/dispatch/constants/response-unit-dispatch-kafka.const.js.map +1 -0
  10. package/dist/cjs/modules/dispatch/dtos/dispatch-response-unit.dto.js +58 -0
  11. package/dist/cjs/modules/dispatch/dtos/dispatch-response-unit.dto.js.map +1 -0
  12. package/dist/cjs/modules/dispatch/dtos/response-unit-dispatch-notification.dto.js +235 -0
  13. package/dist/cjs/modules/dispatch/dtos/response-unit-dispatch-notification.dto.js.map +1 -0
  14. package/dist/cjs/modules/dispatch/dtos/response-unit-dispatch-profile-query.dto.js +61 -0
  15. package/dist/cjs/modules/dispatch/dtos/response-unit-dispatch-profile-query.dto.js.map +1 -0
  16. package/dist/cjs/modules/dispatch/dtos/response-unit-nearby-query.dto.js +66 -0
  17. package/dist/cjs/modules/dispatch/dtos/response-unit-nearby-query.dto.js.map +1 -0
  18. package/dist/cjs/modules/dispatch/dtos/update-response-unit-dispatch-status.dto.js +42 -0
  19. package/dist/cjs/modules/dispatch/dtos/update-response-unit-dispatch-status.dto.js.map +1 -0
  20. package/dist/cjs/modules/dispatch/enums/incident-dispatch-blocker.enum.js +21 -0
  21. package/dist/cjs/modules/dispatch/enums/incident-dispatch-blocker.enum.js.map +1 -0
  22. package/dist/cjs/modules/dispatch/enums/response-capability-requirement-source.enum.js +12 -0
  23. package/dist/cjs/modules/dispatch/enums/response-capability-requirement-source.enum.js.map +1 -0
  24. package/dist/cjs/modules/dispatch/enums/response-unit-capability-match.enum.js +24 -0
  25. package/dist/cjs/modules/dispatch/enums/response-unit-capability-match.enum.js.map +1 -0
  26. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-constraint.enum.js +34 -0
  27. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-constraint.enum.js.map +1 -0
  28. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-error-code.enum.js +26 -0
  29. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-error-code.enum.js.map +1 -0
  30. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-notification-failure.enum.js +18 -0
  31. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-notification-failure.enum.js.map +1 -0
  32. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-notification-status.enum.js +16 -0
  33. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-notification-status.enum.js.map +1 -0
  34. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-status.enum.js +39 -0
  35. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-status.enum.js.map +1 -0
  36. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-transition-source.enum.js +18 -0
  37. package/dist/cjs/modules/dispatch/enums/response-unit-dispatch-transition-source.enum.js.map +1 -0
  38. package/dist/cjs/modules/dispatch/enums/response-unit-distance-basis.enum.js +12 -0
  39. package/dist/cjs/modules/dispatch/enums/response-unit-distance-basis.enum.js.map +1 -0
  40. package/dist/cjs/modules/dispatch/enums/response-unit-location-freshness.enum.js +21 -0
  41. package/dist/cjs/modules/dispatch/enums/response-unit-location-freshness.enum.js.map +1 -0
  42. package/dist/cjs/modules/dispatch/enums/response-unit-location-source.enum.js +17 -0
  43. package/dist/cjs/modules/dispatch/enums/response-unit-location-source.enum.js.map +1 -0
  44. package/dist/cjs/modules/dispatch/enums/response-unit-recommendation-reason.enum.js +25 -0
  45. package/dist/cjs/modules/dispatch/enums/response-unit-recommendation-reason.enum.js.map +1 -0
  46. package/dist/cjs/modules/dispatch/enums/response-unit-recommendation-status.enum.js +23 -0
  47. package/dist/cjs/modules/dispatch/enums/response-unit-recommendation-status.enum.js.map +1 -0
  48. package/dist/cjs/modules/dispatch/index.js +53 -0
  49. package/dist/cjs/modules/dispatch/index.js.map +1 -0
  50. package/dist/cjs/modules/dispatch/interfaces/incident-response-unit-dispatch.js +3 -0
  51. package/dist/cjs/modules/dispatch/interfaces/incident-response-unit-dispatch.js.map +1 -0
  52. package/dist/cjs/modules/dispatch/interfaces/response-unit-dispatch-events.js +3 -0
  53. package/dist/cjs/modules/dispatch/interfaces/response-unit-dispatch-events.js.map +1 -0
  54. package/dist/cjs/modules/dispatch/interfaces/response-unit-dispatch-profile.js +3 -0
  55. package/dist/cjs/modules/dispatch/interfaces/response-unit-dispatch-profile.js.map +1 -0
  56. package/dist/cjs/modules/dispatch/interfaces/response-unit-proximity.js +3 -0
  57. package/dist/cjs/modules/dispatch/interfaces/response-unit-proximity.js.map +1 -0
  58. package/dist/cjs/modules/dispatch/interfaces/response-unit-recommendation.js +3 -0
  59. package/dist/cjs/modules/dispatch/interfaces/response-unit-recommendation.js.map +1 -0
  60. package/dist/cjs/modules/dispatch/utils/dispatch-geo.util.js +44 -0
  61. package/dist/cjs/modules/dispatch/utils/dispatch-geo.util.js.map +1 -0
  62. package/dist/cjs/modules/dispatch/utils/incident-dispatchability.util.js +42 -0
  63. package/dist/cjs/modules/dispatch/utils/incident-dispatchability.util.js.map +1 -0
  64. package/dist/cjs/modules/dispatch/utils/response-capability-match.util.js +44 -0
  65. package/dist/cjs/modules/dispatch/utils/response-capability-match.util.js.map +1 -0
  66. package/dist/cjs/modules/dispatch/utils/response-unit-dispatch-event.util.js +19 -0
  67. package/dist/cjs/modules/dispatch/utils/response-unit-dispatch-event.util.js.map +1 -0
  68. package/dist/cjs/modules/dispatch/utils/response-unit-dispatch-status.util.js +53 -0
  69. package/dist/cjs/modules/dispatch/utils/response-unit-dispatch-status.util.js.map +1 -0
  70. package/dist/cjs/modules/incident/dtos/category/create-incident-category.dto.js +9 -0
  71. package/dist/cjs/modules/incident/dtos/category/create-incident-category.dto.js.map +1 -1
  72. package/dist/cjs/modules/incident/dtos/type/create-incident-type.dto.js +9 -0
  73. package/dist/cjs/modules/incident/dtos/type/create-incident-type.dto.js.map +1 -1
  74. package/dist/cjs/modules/incident/enums/incident-actions.enum.js +8 -0
  75. package/dist/cjs/modules/incident/enums/incident-actions.enum.js.map +1 -1
  76. package/dist/cjs/modules/incident-sla/constants/emergency-incident-workflow.const.js +53 -0
  77. package/dist/cjs/modules/incident-sla/constants/emergency-incident-workflow.const.js.map +1 -0
  78. package/dist/cjs/modules/incident-sla/constants/incident-sla-defaults.const.js +258 -0
  79. package/dist/cjs/modules/incident-sla/constants/incident-sla-defaults.const.js.map +1 -0
  80. package/dist/cjs/modules/incident-sla/constants/incident-sla-kafka.const.js +27 -0
  81. package/dist/cjs/modules/incident-sla/constants/incident-sla-kafka.const.js.map +1 -0
  82. package/dist/cjs/modules/incident-sla/dtos/emergency-notification.dto.js +419 -0
  83. package/dist/cjs/modules/incident-sla/dtos/emergency-notification.dto.js.map +1 -0
  84. package/dist/cjs/modules/incident-sla/dtos/emergency-operations.dto.js +155 -0
  85. package/dist/cjs/modules/incident-sla/dtos/emergency-operations.dto.js.map +1 -0
  86. package/dist/cjs/modules/incident-sla/dtos/emergency-workflow.dto.js +216 -0
  87. package/dist/cjs/modules/incident-sla/dtos/emergency-workflow.dto.js.map +1 -0
  88. package/dist/cjs/modules/incident-sla/dtos/incident-sla-analytics-query.dto.js +86 -0
  89. package/dist/cjs/modules/incident-sla/dtos/incident-sla-analytics-query.dto.js.map +1 -0
  90. package/dist/cjs/modules/incident-sla/dtos/incident-sla-policy.dto.js +509 -0
  91. package/dist/cjs/modules/incident-sla/dtos/incident-sla-policy.dto.js.map +1 -0
  92. package/dist/cjs/modules/incident-sla/enums/emergency-incident-stage.enum.js +32 -0
  93. package/dist/cjs/modules/incident-sla/enums/emergency-incident-stage.enum.js.map +1 -0
  94. package/dist/cjs/modules/incident-sla/enums/emergency-notification.enum.js +44 -0
  95. package/dist/cjs/modules/incident-sla/enums/emergency-notification.enum.js.map +1 -0
  96. package/dist/cjs/modules/incident-sla/enums/eta-status.enum.js +32 -0
  97. package/dist/cjs/modules/incident-sla/enums/eta-status.enum.js.map +1 -0
  98. package/dist/cjs/modules/incident-sla/enums/incident-closure.enum.js +23 -0
  99. package/dist/cjs/modules/incident-sla/enums/incident-closure.enum.js.map +1 -0
  100. package/dist/cjs/modules/incident-sla/enums/incident-sla-actor.enum.js +46 -0
  101. package/dist/cjs/modules/incident-sla/enums/incident-sla-actor.enum.js.map +1 -0
  102. package/dist/cjs/modules/incident-sla/enums/incident-sla-error-code.enum.js +26 -0
  103. package/dist/cjs/modules/incident-sla/enums/incident-sla-error-code.enum.js.map +1 -0
  104. package/dist/cjs/modules/incident-sla/enums/incident-sla-event-type.enum.js +45 -0
  105. package/dist/cjs/modules/incident-sla/enums/incident-sla-event-type.enum.js.map +1 -0
  106. package/dist/cjs/modules/incident-sla/enums/incident-sla-stage.enum.js +26 -0
  107. package/dist/cjs/modules/incident-sla/enums/incident-sla-stage.enum.js.map +1 -0
  108. package/dist/cjs/modules/incident-sla/enums/incident-sla-status.enum.js +38 -0
  109. package/dist/cjs/modules/incident-sla/enums/incident-sla-status.enum.js.map +1 -0
  110. package/dist/cjs/modules/incident-sla/enums/sla-escalation.enum.js +50 -0
  111. package/dist/cjs/modules/incident-sla/enums/sla-escalation.enum.js.map +1 -0
  112. package/dist/cjs/modules/incident-sla/enums/sla-exception.enum.js +27 -0
  113. package/dist/cjs/modules/incident-sla/enums/sla-exception.enum.js.map +1 -0
  114. package/dist/cjs/modules/incident-sla/enums/sla-overall-state.enum.js +28 -0
  115. package/dist/cjs/modules/incident-sla/enums/sla-overall-state.enum.js.map +1 -0
  116. package/dist/cjs/modules/incident-sla/enums/sla-pause.enum.js +28 -0
  117. package/dist/cjs/modules/incident-sla/enums/sla-pause.enum.js.map +1 -0
  118. package/dist/cjs/modules/incident-sla/enums/sla-policy-scope.enum.js +19 -0
  119. package/dist/cjs/modules/incident-sla/enums/sla-policy-scope.enum.js.map +1 -0
  120. package/dist/cjs/modules/incident-sla/index.js +53 -0
  121. package/dist/cjs/modules/incident-sla/index.js.map +1 -0
  122. package/dist/cjs/modules/incident-sla/interfaces/emergency-workflow.js +3 -0
  123. package/dist/cjs/modules/incident-sla/interfaces/emergency-workflow.js.map +1 -0
  124. package/dist/cjs/modules/incident-sla/interfaces/incident-sla-analytics.js +3 -0
  125. package/dist/cjs/modules/incident-sla/interfaces/incident-sla-analytics.js.map +1 -0
  126. package/dist/cjs/modules/incident-sla/interfaces/incident-sla-events.js +3 -0
  127. package/dist/cjs/modules/incident-sla/interfaces/incident-sla-events.js.map +1 -0
  128. package/dist/cjs/modules/incident-sla/interfaces/incident-sla-policy.js +3 -0
  129. package/dist/cjs/modules/incident-sla/interfaces/incident-sla-policy.js.map +1 -0
  130. package/dist/cjs/modules/incident-sla/interfaces/incident-sla-views.js +3 -0
  131. package/dist/cjs/modules/incident-sla/interfaces/incident-sla-views.js.map +1 -0
  132. package/dist/cjs/modules/incident-sla/utils/incident-sla-eta.util.js +40 -0
  133. package/dist/cjs/modules/incident-sla/utils/incident-sla-eta.util.js.map +1 -0
  134. package/dist/cjs/modules/incident-sla/utils/incident-sla-event-id.util.js +18 -0
  135. package/dist/cjs/modules/incident-sla/utils/incident-sla-event-id.util.js.map +1 -0
  136. package/dist/cjs/modules/incident-sla/utils/incident-sla-priority.util.js +31 -0
  137. package/dist/cjs/modules/incident-sla/utils/incident-sla-priority.util.js.map +1 -0
  138. package/dist/cjs/modules/incident-sla/utils/incident-sla-time.util.js +129 -0
  139. package/dist/cjs/modules/incident-sla/utils/incident-sla-time.util.js.map +1 -0
  140. package/dist/cjs/modules/permission/data/permissions.data.js +19 -0
  141. package/dist/cjs/modules/permission/data/permissions.data.js.map +1 -1
  142. package/dist/cjs/modules/permission/enums/permission-actions.enum.js +34 -0
  143. package/dist/cjs/modules/permission/enums/permission-actions.enum.js.map +1 -1
  144. package/dist/cjs/modules/permission/enums/permissions-module.enum.js +2 -0
  145. package/dist/cjs/modules/permission/enums/permissions-module.enum.js.map +1 -1
  146. package/dist/cjs/modules/response-unit/dtos/response-unit/base-response-unit.dto.js +9 -0
  147. package/dist/cjs/modules/response-unit/dtos/response-unit/base-response-unit.dto.js.map +1 -1
  148. package/dist/cjs/modules/response-unit/enums/response-unit/response-capability.enum.js +29 -0
  149. package/dist/cjs/modules/response-unit/enums/response-unit/response-capability.enum.js.map +1 -0
  150. package/dist/cjs/modules/response-unit/enums/response-unit/response-unit-availability.enum.js +27 -0
  151. package/dist/cjs/modules/response-unit/enums/response-unit/response-unit-availability.enum.js.map +1 -0
  152. package/dist/cjs/modules/response-unit/index.js +5 -0
  153. package/dist/cjs/modules/response-unit/index.js.map +1 -1
  154. package/dist/cjs/modules/response-unit/utils/response-capability.util.js +74 -0
  155. package/dist/cjs/modules/response-unit/utils/response-capability.util.js.map +1 -0
  156. package/dist/cjs/modules/response-unit/utils/response-unit-availability.util.js +46 -0
  157. package/dist/cjs/modules/response-unit/utils/response-unit-availability.util.js.map +1 -0
  158. package/dist/cjs/modules/role/data/roles.data.js +61 -0
  159. package/dist/cjs/modules/role/data/roles.data.js.map +1 -1
  160. package/dist/cjs/modules/sms/constants/sms-templates.config.js +44 -0
  161. package/dist/cjs/modules/sms/constants/sms-templates.config.js.map +1 -1
  162. package/dist/cjs/modules/sms/enums/sms-template.enum.js +3 -0
  163. package/dist/cjs/modules/sms/enums/sms-template.enum.js.map +1 -1
  164. package/dist/esm/index.js +2 -0
  165. package/dist/esm/index.js.map +1 -1
  166. package/dist/esm/kafka/topics.js +21 -0
  167. package/dist/esm/kafka/topics.js.map +1 -1
  168. package/dist/esm/modules/dispatch/constants/response-unit-dispatch-defaults.const.js +53 -0
  169. package/dist/esm/modules/dispatch/constants/response-unit-dispatch-defaults.const.js.map +1 -0
  170. package/dist/esm/modules/dispatch/constants/response-unit-dispatch-kafka.const.js +18 -0
  171. package/dist/esm/modules/dispatch/constants/response-unit-dispatch-kafka.const.js.map +1 -0
  172. package/dist/esm/modules/dispatch/dtos/dispatch-response-unit.dto.js +54 -0
  173. package/dist/esm/modules/dispatch/dtos/dispatch-response-unit.dto.js.map +1 -0
  174. package/dist/esm/modules/dispatch/dtos/response-unit-dispatch-notification.dto.js +228 -0
  175. package/dist/esm/modules/dispatch/dtos/response-unit-dispatch-notification.dto.js.map +1 -0
  176. package/dist/esm/modules/dispatch/dtos/response-unit-dispatch-profile-query.dto.js +57 -0
  177. package/dist/esm/modules/dispatch/dtos/response-unit-dispatch-profile-query.dto.js.map +1 -0
  178. package/dist/esm/modules/dispatch/dtos/response-unit-nearby-query.dto.js +62 -0
  179. package/dist/esm/modules/dispatch/dtos/response-unit-nearby-query.dto.js.map +1 -0
  180. package/dist/esm/modules/dispatch/dtos/update-response-unit-dispatch-status.dto.js +38 -0
  181. package/dist/esm/modules/dispatch/dtos/update-response-unit-dispatch-status.dto.js.map +1 -0
  182. package/dist/esm/modules/dispatch/enums/incident-dispatch-blocker.enum.js +18 -0
  183. package/dist/esm/modules/dispatch/enums/incident-dispatch-blocker.enum.js.map +1 -0
  184. package/dist/esm/modules/dispatch/enums/response-capability-requirement-source.enum.js +9 -0
  185. package/dist/esm/modules/dispatch/enums/response-capability-requirement-source.enum.js.map +1 -0
  186. package/dist/esm/modules/dispatch/enums/response-unit-capability-match.enum.js +21 -0
  187. package/dist/esm/modules/dispatch/enums/response-unit-capability-match.enum.js.map +1 -0
  188. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-constraint.enum.js +31 -0
  189. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-constraint.enum.js.map +1 -0
  190. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-error-code.enum.js +23 -0
  191. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-error-code.enum.js.map +1 -0
  192. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-notification-failure.enum.js +15 -0
  193. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-notification-failure.enum.js.map +1 -0
  194. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-notification-status.enum.js +13 -0
  195. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-notification-status.enum.js.map +1 -0
  196. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-status.enum.js +36 -0
  197. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-status.enum.js.map +1 -0
  198. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-transition-source.enum.js +15 -0
  199. package/dist/esm/modules/dispatch/enums/response-unit-dispatch-transition-source.enum.js.map +1 -0
  200. package/dist/esm/modules/dispatch/enums/response-unit-distance-basis.enum.js +9 -0
  201. package/dist/esm/modules/dispatch/enums/response-unit-distance-basis.enum.js.map +1 -0
  202. package/dist/esm/modules/dispatch/enums/response-unit-location-freshness.enum.js +18 -0
  203. package/dist/esm/modules/dispatch/enums/response-unit-location-freshness.enum.js.map +1 -0
  204. package/dist/esm/modules/dispatch/enums/response-unit-location-source.enum.js +14 -0
  205. package/dist/esm/modules/dispatch/enums/response-unit-location-source.enum.js.map +1 -0
  206. package/dist/esm/modules/dispatch/enums/response-unit-recommendation-reason.enum.js +22 -0
  207. package/dist/esm/modules/dispatch/enums/response-unit-recommendation-reason.enum.js.map +1 -0
  208. package/dist/esm/modules/dispatch/enums/response-unit-recommendation-status.enum.js +20 -0
  209. package/dist/esm/modules/dispatch/enums/response-unit-recommendation-status.enum.js.map +1 -0
  210. package/dist/esm/modules/dispatch/index.js +37 -0
  211. package/dist/esm/modules/dispatch/index.js.map +1 -0
  212. package/dist/esm/modules/dispatch/interfaces/incident-response-unit-dispatch.js +2 -0
  213. package/dist/esm/modules/dispatch/interfaces/incident-response-unit-dispatch.js.map +1 -0
  214. package/dist/esm/modules/dispatch/interfaces/response-unit-dispatch-events.js +2 -0
  215. package/dist/esm/modules/dispatch/interfaces/response-unit-dispatch-events.js.map +1 -0
  216. package/dist/esm/modules/dispatch/interfaces/response-unit-dispatch-profile.js +2 -0
  217. package/dist/esm/modules/dispatch/interfaces/response-unit-dispatch-profile.js.map +1 -0
  218. package/dist/esm/modules/dispatch/interfaces/response-unit-proximity.js +2 -0
  219. package/dist/esm/modules/dispatch/interfaces/response-unit-proximity.js.map +1 -0
  220. package/dist/esm/modules/dispatch/interfaces/response-unit-recommendation.js +2 -0
  221. package/dist/esm/modules/dispatch/interfaces/response-unit-recommendation.js.map +1 -0
  222. package/dist/esm/modules/dispatch/utils/dispatch-geo.util.js +39 -0
  223. package/dist/esm/modules/dispatch/utils/dispatch-geo.util.js.map +1 -0
  224. package/dist/esm/modules/dispatch/utils/incident-dispatchability.util.js +37 -0
  225. package/dist/esm/modules/dispatch/utils/incident-dispatchability.util.js.map +1 -0
  226. package/dist/esm/modules/dispatch/utils/response-capability-match.util.js +40 -0
  227. package/dist/esm/modules/dispatch/utils/response-capability-match.util.js.map +1 -0
  228. package/dist/esm/modules/dispatch/utils/response-unit-dispatch-event.util.js +15 -0
  229. package/dist/esm/modules/dispatch/utils/response-unit-dispatch-event.util.js.map +1 -0
  230. package/dist/esm/modules/dispatch/utils/response-unit-dispatch-status.util.js +46 -0
  231. package/dist/esm/modules/dispatch/utils/response-unit-dispatch-status.util.js.map +1 -0
  232. package/dist/esm/modules/incident/dtos/category/create-incident-category.dto.js +10 -1
  233. package/dist/esm/modules/incident/dtos/category/create-incident-category.dto.js.map +1 -1
  234. package/dist/esm/modules/incident/dtos/type/create-incident-type.dto.js +10 -1
  235. package/dist/esm/modules/incident/dtos/type/create-incident-type.dto.js.map +1 -1
  236. package/dist/esm/modules/incident/enums/incident-actions.enum.js +8 -0
  237. package/dist/esm/modules/incident/enums/incident-actions.enum.js.map +1 -1
  238. package/dist/esm/modules/incident-sla/constants/emergency-incident-workflow.const.js +49 -0
  239. package/dist/esm/modules/incident-sla/constants/emergency-incident-workflow.const.js.map +1 -0
  240. package/dist/esm/modules/incident-sla/constants/incident-sla-defaults.const.js +255 -0
  241. package/dist/esm/modules/incident-sla/constants/incident-sla-defaults.const.js.map +1 -0
  242. package/dist/esm/modules/incident-sla/constants/incident-sla-kafka.const.js +24 -0
  243. package/dist/esm/modules/incident-sla/constants/incident-sla-kafka.const.js.map +1 -0
  244. package/dist/esm/modules/incident-sla/dtos/emergency-notification.dto.js +405 -0
  245. package/dist/esm/modules/incident-sla/dtos/emergency-notification.dto.js.map +1 -0
  246. package/dist/esm/modules/incident-sla/dtos/emergency-operations.dto.js +144 -0
  247. package/dist/esm/modules/incident-sla/dtos/emergency-operations.dto.js.map +1 -0
  248. package/dist/esm/modules/incident-sla/dtos/emergency-workflow.dto.js +206 -0
  249. package/dist/esm/modules/incident-sla/dtos/emergency-workflow.dto.js.map +1 -0
  250. package/dist/esm/modules/incident-sla/dtos/incident-sla-analytics-query.dto.js +82 -0
  251. package/dist/esm/modules/incident-sla/dtos/incident-sla-analytics-query.dto.js.map +1 -0
  252. package/dist/esm/modules/incident-sla/dtos/incident-sla-policy.dto.js +495 -0
  253. package/dist/esm/modules/incident-sla/dtos/incident-sla-policy.dto.js.map +1 -0
  254. package/dist/esm/modules/incident-sla/enums/emergency-incident-stage.enum.js +29 -0
  255. package/dist/esm/modules/incident-sla/enums/emergency-incident-stage.enum.js.map +1 -0
  256. package/dist/esm/modules/incident-sla/enums/emergency-notification.enum.js +41 -0
  257. package/dist/esm/modules/incident-sla/enums/emergency-notification.enum.js.map +1 -0
  258. package/dist/esm/modules/incident-sla/enums/eta-status.enum.js +29 -0
  259. package/dist/esm/modules/incident-sla/enums/eta-status.enum.js.map +1 -0
  260. package/dist/esm/modules/incident-sla/enums/incident-closure.enum.js +20 -0
  261. package/dist/esm/modules/incident-sla/enums/incident-closure.enum.js.map +1 -0
  262. package/dist/esm/modules/incident-sla/enums/incident-sla-actor.enum.js +43 -0
  263. package/dist/esm/modules/incident-sla/enums/incident-sla-actor.enum.js.map +1 -0
  264. package/dist/esm/modules/incident-sla/enums/incident-sla-error-code.enum.js +23 -0
  265. package/dist/esm/modules/incident-sla/enums/incident-sla-error-code.enum.js.map +1 -0
  266. package/dist/esm/modules/incident-sla/enums/incident-sla-event-type.enum.js +42 -0
  267. package/dist/esm/modules/incident-sla/enums/incident-sla-event-type.enum.js.map +1 -0
  268. package/dist/esm/modules/incident-sla/enums/incident-sla-stage.enum.js +23 -0
  269. package/dist/esm/modules/incident-sla/enums/incident-sla-stage.enum.js.map +1 -0
  270. package/dist/esm/modules/incident-sla/enums/incident-sla-status.enum.js +35 -0
  271. package/dist/esm/modules/incident-sla/enums/incident-sla-status.enum.js.map +1 -0
  272. package/dist/esm/modules/incident-sla/enums/sla-escalation.enum.js +47 -0
  273. package/dist/esm/modules/incident-sla/enums/sla-escalation.enum.js.map +1 -0
  274. package/dist/esm/modules/incident-sla/enums/sla-exception.enum.js +24 -0
  275. package/dist/esm/modules/incident-sla/enums/sla-exception.enum.js.map +1 -0
  276. package/dist/esm/modules/incident-sla/enums/sla-overall-state.enum.js +25 -0
  277. package/dist/esm/modules/incident-sla/enums/sla-overall-state.enum.js.map +1 -0
  278. package/dist/esm/modules/incident-sla/enums/sla-pause.enum.js +25 -0
  279. package/dist/esm/modules/incident-sla/enums/sla-pause.enum.js.map +1 -0
  280. package/dist/esm/modules/incident-sla/enums/sla-policy-scope.enum.js +16 -0
  281. package/dist/esm/modules/incident-sla/enums/sla-policy-scope.enum.js.map +1 -0
  282. package/dist/esm/modules/incident-sla/index.js +37 -0
  283. package/dist/esm/modules/incident-sla/index.js.map +1 -0
  284. package/dist/esm/modules/incident-sla/interfaces/emergency-workflow.js +2 -0
  285. package/dist/esm/modules/incident-sla/interfaces/emergency-workflow.js.map +1 -0
  286. package/dist/esm/modules/incident-sla/interfaces/incident-sla-analytics.js +2 -0
  287. package/dist/esm/modules/incident-sla/interfaces/incident-sla-analytics.js.map +1 -0
  288. package/dist/esm/modules/incident-sla/interfaces/incident-sla-events.js +2 -0
  289. package/dist/esm/modules/incident-sla/interfaces/incident-sla-events.js.map +1 -0
  290. package/dist/esm/modules/incident-sla/interfaces/incident-sla-policy.js +2 -0
  291. package/dist/esm/modules/incident-sla/interfaces/incident-sla-policy.js.map +1 -0
  292. package/dist/esm/modules/incident-sla/interfaces/incident-sla-views.js +2 -0
  293. package/dist/esm/modules/incident-sla/interfaces/incident-sla-views.js.map +1 -0
  294. package/dist/esm/modules/incident-sla/utils/incident-sla-eta.util.js +35 -0
  295. package/dist/esm/modules/incident-sla/utils/incident-sla-eta.util.js.map +1 -0
  296. package/dist/esm/modules/incident-sla/utils/incident-sla-event-id.util.js +14 -0
  297. package/dist/esm/modules/incident-sla/utils/incident-sla-event-id.util.js.map +1 -0
  298. package/dist/esm/modules/incident-sla/utils/incident-sla-priority.util.js +25 -0
  299. package/dist/esm/modules/incident-sla/utils/incident-sla-priority.util.js.map +1 -0
  300. package/dist/esm/modules/incident-sla/utils/incident-sla-time.util.js +119 -0
  301. package/dist/esm/modules/incident-sla/utils/incident-sla-time.util.js.map +1 -0
  302. package/dist/esm/modules/permission/data/permissions.data.js +19 -0
  303. package/dist/esm/modules/permission/data/permissions.data.js.map +1 -1
  304. package/dist/esm/modules/permission/enums/permission-actions.enum.js +34 -0
  305. package/dist/esm/modules/permission/enums/permission-actions.enum.js.map +1 -1
  306. package/dist/esm/modules/permission/enums/permissions-module.enum.js +2 -0
  307. package/dist/esm/modules/permission/enums/permissions-module.enum.js.map +1 -1
  308. package/dist/esm/modules/response-unit/dtos/response-unit/base-response-unit.dto.js +10 -1
  309. package/dist/esm/modules/response-unit/dtos/response-unit/base-response-unit.dto.js.map +1 -1
  310. package/dist/esm/modules/response-unit/enums/response-unit/response-capability.enum.js +26 -0
  311. package/dist/esm/modules/response-unit/enums/response-unit/response-capability.enum.js.map +1 -0
  312. package/dist/esm/modules/response-unit/enums/response-unit/response-unit-availability.enum.js +24 -0
  313. package/dist/esm/modules/response-unit/enums/response-unit/response-unit-availability.enum.js.map +1 -0
  314. package/dist/esm/modules/response-unit/index.js +5 -0
  315. package/dist/esm/modules/response-unit/index.js.map +1 -1
  316. package/dist/esm/modules/response-unit/utils/response-capability.util.js +68 -0
  317. package/dist/esm/modules/response-unit/utils/response-capability.util.js.map +1 -0
  318. package/dist/esm/modules/response-unit/utils/response-unit-availability.util.js +42 -0
  319. package/dist/esm/modules/response-unit/utils/response-unit-availability.util.js.map +1 -0
  320. package/dist/esm/modules/role/data/roles.data.js +61 -0
  321. package/dist/esm/modules/role/data/roles.data.js.map +1 -1
  322. package/dist/esm/modules/sms/constants/sms-templates.config.js +44 -0
  323. package/dist/esm/modules/sms/constants/sms-templates.config.js.map +1 -1
  324. package/dist/esm/modules/sms/enums/sms-template.enum.js +3 -0
  325. package/dist/esm/modules/sms/enums/sms-template.enum.js.map +1 -1
  326. package/dist/types/index.d.ts +2 -0
  327. package/dist/types/kafka/topics.d.ts +9 -0
  328. package/dist/types/modules/dispatch/constants/response-unit-dispatch-defaults.const.d.ts +43 -0
  329. package/dist/types/modules/dispatch/constants/response-unit-dispatch-kafka.const.d.ts +16 -0
  330. package/dist/types/modules/dispatch/dtos/dispatch-response-unit.dto.d.ts +20 -0
  331. package/dist/types/modules/dispatch/dtos/response-unit-dispatch-notification.dto.d.ts +48 -0
  332. package/dist/types/modules/dispatch/dtos/response-unit-dispatch-profile-query.dto.d.ts +13 -0
  333. package/dist/types/modules/dispatch/dtos/response-unit-nearby-query.dto.d.ts +15 -0
  334. package/dist/types/modules/dispatch/dtos/update-response-unit-dispatch-status.dto.d.ts +9 -0
  335. package/dist/types/modules/dispatch/enums/incident-dispatch-blocker.enum.d.ts +16 -0
  336. package/dist/types/modules/dispatch/enums/response-capability-requirement-source.enum.d.ts +7 -0
  337. package/dist/types/modules/dispatch/enums/response-unit-capability-match.enum.d.ts +19 -0
  338. package/dist/types/modules/dispatch/enums/response-unit-dispatch-constraint.enum.d.ts +27 -0
  339. package/dist/types/modules/dispatch/enums/response-unit-dispatch-error-code.enum.d.ts +21 -0
  340. package/dist/types/modules/dispatch/enums/response-unit-dispatch-notification-failure.enum.d.ts +13 -0
  341. package/dist/types/modules/dispatch/enums/response-unit-dispatch-notification-status.enum.d.ts +11 -0
  342. package/dist/types/modules/dispatch/enums/response-unit-dispatch-status.enum.d.ts +34 -0
  343. package/dist/types/modules/dispatch/enums/response-unit-dispatch-transition-source.enum.d.ts +13 -0
  344. package/dist/types/modules/dispatch/enums/response-unit-distance-basis.enum.d.ts +7 -0
  345. package/dist/types/modules/dispatch/enums/response-unit-location-freshness.enum.d.ts +16 -0
  346. package/dist/types/modules/dispatch/enums/response-unit-location-source.enum.d.ts +12 -0
  347. package/dist/types/modules/dispatch/enums/response-unit-recommendation-reason.enum.d.ts +20 -0
  348. package/dist/types/modules/dispatch/enums/response-unit-recommendation-status.enum.d.ts +18 -0
  349. package/dist/types/modules/dispatch/index.d.ts +31 -0
  350. package/dist/types/modules/dispatch/interfaces/incident-response-unit-dispatch.d.ts +126 -0
  351. package/dist/types/modules/dispatch/interfaces/response-unit-dispatch-events.d.ts +105 -0
  352. package/dist/types/modules/dispatch/interfaces/response-unit-dispatch-profile.d.ts +52 -0
  353. package/dist/types/modules/dispatch/interfaces/response-unit-proximity.d.ts +45 -0
  354. package/dist/types/modules/dispatch/interfaces/response-unit-recommendation.d.ts +130 -0
  355. package/dist/types/modules/dispatch/utils/dispatch-geo.util.d.ts +16 -0
  356. package/dist/types/modules/dispatch/utils/incident-dispatchability.util.d.ts +18 -0
  357. package/dist/types/modules/dispatch/utils/response-capability-match.util.d.ts +26 -0
  358. package/dist/types/modules/dispatch/utils/response-unit-dispatch-event.util.d.ts +9 -0
  359. package/dist/types/modules/dispatch/utils/response-unit-dispatch-status.util.d.ts +16 -0
  360. package/dist/types/modules/incident/dtos/category/create-incident-category.dto.d.ts +6 -0
  361. package/dist/types/modules/incident/dtos/type/create-incident-type.dto.d.ts +6 -0
  362. package/dist/types/modules/incident/enums/incident-actions.enum.d.ts +8 -0
  363. package/dist/types/modules/incident/intefaces/incident-category.d.ts +6 -0
  364. package/dist/types/modules/incident/intefaces/incident-type.d.ts +6 -0
  365. package/dist/types/modules/incident-sla/constants/emergency-incident-workflow.const.d.ts +46 -0
  366. package/dist/types/modules/incident-sla/constants/incident-sla-defaults.const.d.ts +81 -0
  367. package/dist/types/modules/incident-sla/constants/incident-sla-kafka.const.d.ts +22 -0
  368. package/dist/types/modules/incident-sla/dtos/emergency-notification.dto.d.ts +99 -0
  369. package/dist/types/modules/incident-sla/dtos/emergency-operations.dto.d.ts +52 -0
  370. package/dist/types/modules/incident-sla/dtos/emergency-workflow.dto.d.ts +55 -0
  371. package/dist/types/modules/incident-sla/dtos/incident-sla-analytics-query.dto.d.ts +15 -0
  372. package/dist/types/modules/incident-sla/dtos/incident-sla-policy.dto.d.ts +104 -0
  373. package/dist/types/modules/incident-sla/enums/emergency-incident-stage.enum.d.ts +27 -0
  374. package/dist/types/modules/incident-sla/enums/emergency-notification.enum.d.ts +37 -0
  375. package/dist/types/modules/incident-sla/enums/eta-status.enum.d.ts +26 -0
  376. package/dist/types/modules/incident-sla/enums/incident-closure.enum.d.ts +17 -0
  377. package/dist/types/modules/incident-sla/enums/incident-sla-actor.enum.d.ts +40 -0
  378. package/dist/types/modules/incident-sla/enums/incident-sla-error-code.enum.d.ts +21 -0
  379. package/dist/types/modules/incident-sla/enums/incident-sla-event-type.enum.d.ts +36 -0
  380. package/dist/types/modules/incident-sla/enums/incident-sla-stage.enum.d.ts +21 -0
  381. package/dist/types/modules/incident-sla/enums/incident-sla-status.enum.d.ts +33 -0
  382. package/dist/types/modules/incident-sla/enums/sla-escalation.enum.d.ts +42 -0
  383. package/dist/types/modules/incident-sla/enums/sla-exception.enum.d.ts +21 -0
  384. package/dist/types/modules/incident-sla/enums/sla-overall-state.enum.d.ts +22 -0
  385. package/dist/types/modules/incident-sla/enums/sla-pause.enum.d.ts +22 -0
  386. package/dist/types/modules/incident-sla/enums/sla-policy-scope.enum.d.ts +14 -0
  387. package/dist/types/modules/incident-sla/index.d.ts +31 -0
  388. package/dist/types/modules/incident-sla/interfaces/emergency-workflow.d.ts +131 -0
  389. package/dist/types/modules/incident-sla/interfaces/incident-sla-analytics.d.ts +35 -0
  390. package/dist/types/modules/incident-sla/interfaces/incident-sla-events.d.ts +173 -0
  391. package/dist/types/modules/incident-sla/interfaces/incident-sla-policy.d.ts +147 -0
  392. package/dist/types/modules/incident-sla/interfaces/incident-sla-views.d.ts +224 -0
  393. package/dist/types/modules/incident-sla/utils/incident-sla-eta.util.d.ts +15 -0
  394. package/dist/types/modules/incident-sla/utils/incident-sla-event-id.util.d.ts +8 -0
  395. package/dist/types/modules/incident-sla/utils/incident-sla-priority.util.d.ts +14 -0
  396. package/dist/types/modules/incident-sla/utils/incident-sla-time.util.d.ts +65 -0
  397. package/dist/types/modules/permission/enums/permission-actions.enum.d.ts +9 -0
  398. package/dist/types/modules/permission/enums/permissions-module.enum.d.ts +3 -1
  399. package/dist/types/modules/response-unit/dtos/response-unit/base-response-unit.dto.d.ts +7 -0
  400. package/dist/types/modules/response-unit/enums/response-unit/response-capability.enum.d.ts +24 -0
  401. package/dist/types/modules/response-unit/enums/response-unit/response-unit-availability.enum.d.ts +22 -0
  402. package/dist/types/modules/response-unit/index.d.ts +4 -0
  403. package/dist/types/modules/response-unit/interfaces/response-unit/response-unit.d.ts +3 -0
  404. package/dist/types/modules/response-unit/utils/response-capability.util.d.ts +31 -0
  405. package/dist/types/modules/response-unit/utils/response-unit-availability.util.d.ts +21 -0
  406. package/dist/types/modules/sms/enums/sms-template.enum.d.ts +3 -0
  407. package/package.json +72 -72
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-dispatch-transition-source.enum.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/enums/response-unit-dispatch-transition-source.enum.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,MAAM,CAAN,IAAY,oCAWX;AAXD,WAAY,oCAAoC;IAC5C,yDAAyD;IACzD,iEAAyB,CAAA;IACzB,yFAAyF;IACzF,iFAAyC,CAAA;IACzC,sCAAsC;IACtC,+DAAuB,CAAA;IACvB,+FAA+F;IAC/F,6DAAqB,CAAA;IACrB,2FAA2F;IAC3F,6DAAqB,CAAA;AACzB,CAAC,EAXW,oCAAoC,KAApC,oCAAoC,QAW/C"}
@@ -0,0 +1,9 @@
1
+ /** What a candidate's distance (and duration, when present) measures. */
2
+ export var ResponseUnitDistanceBasis;
3
+ (function (ResponseUnitDistanceBasis) {
4
+ /** Great-circle distance. Always available, never a duration. */
5
+ ResponseUnitDistanceBasis["STRAIGHT_LINE"] = "STRAIGHT_LINE";
6
+ /** A road route from clarion-gis (Google Routes), with a travel time. */
7
+ ResponseUnitDistanceBasis["ROAD_ROUTE"] = "ROAD_ROUTE";
8
+ })(ResponseUnitDistanceBasis || (ResponseUnitDistanceBasis = {}));
9
+ //# sourceMappingURL=response-unit-distance-basis.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-distance-basis.enum.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/enums/response-unit-distance-basis.enum.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,CAAN,IAAY,yBAKX;AALD,WAAY,yBAAyB;IACjC,iEAAiE;IACjE,4DAA+B,CAAA;IAC/B,yEAAyE;IACzE,sDAAyB,CAAA;AAC7B,CAAC,EALW,yBAAyB,KAAzB,yBAAyB,QAKpC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * How far a candidate's position can be trusted.
3
+ *
4
+ * Not a new set of thresholds: CURRENT and STALE are clarion-response-tracking's
5
+ * own ONLINE / STALE status, which it evaluates against each provider
6
+ * connection's configured staleAfterSeconds / offlineAfterSeconds. A unit the
7
+ * tracking service calls OFFLINE has no usable position here (UNKNOWN).
8
+ */
9
+ export var ResponseUnitLocationFreshness;
10
+ (function (ResponseUnitLocationFreshness) {
11
+ /** A live fix within the provider's stale threshold. */
12
+ ResponseUnitLocationFreshness["CURRENT"] = "CURRENT";
13
+ /** A live fix older than the stale threshold but not yet offline. */
14
+ ResponseUnitLocationFreshness["STALE"] = "STALE";
15
+ /** No live fix that can be relied on: offline, never tracked, or base-only. */
16
+ ResponseUnitLocationFreshness["UNKNOWN"] = "UNKNOWN";
17
+ })(ResponseUnitLocationFreshness || (ResponseUnitLocationFreshness = {}));
18
+ //# sourceMappingURL=response-unit-location-freshness.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-location-freshness.enum.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/enums/response-unit-location-freshness.enum.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAN,IAAY,6BAOX;AAPD,WAAY,6BAA6B;IACrC,wDAAwD;IACxD,oDAAmB,CAAA;IACnB,qEAAqE;IACrE,gDAAe,CAAA;IACf,+EAA+E;IAC/E,oDAAmB,CAAA;AACvB,CAAC,EAPW,6BAA6B,KAA7B,6BAA6B,QAOxC"}
@@ -0,0 +1,14 @@
1
+ /** Where a candidate's position came from. */
2
+ export var ResponseUnitLocationSource;
3
+ (function (ResponseUnitLocationSource) {
4
+ /** A GPS fix from clarion-response-tracking. */
5
+ ResponseUnitLocationSource["LIVE"] = "LIVE";
6
+ /**
7
+ * The unit's configured base location in clarion-organization - used only
8
+ * for a unit that is not live-tracked at all, and always labelled as such.
9
+ */
10
+ ResponseUnitLocationSource["BASE"] = "BASE";
11
+ /** No usable position. */
12
+ ResponseUnitLocationSource["NONE"] = "NONE";
13
+ })(ResponseUnitLocationSource || (ResponseUnitLocationSource = {}));
14
+ //# sourceMappingURL=response-unit-location-source.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-location-source.enum.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/enums/response-unit-location-source.enum.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,MAAM,CAAN,IAAY,0BAUX;AAVD,WAAY,0BAA0B;IAClC,gDAAgD;IAChD,2CAAa,CAAA;IACb;;;OAGG;IACH,2CAAa,CAAA;IACb,0BAA0B;IAC1B,2CAAa,CAAA;AACjB,CAAC,EAVW,0BAA0B,KAA1B,0BAA0B,QAUrC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * The facts a recommendation rests on, in the order the ranking weighs them.
3
+ * The admin turns these into the "Recommended because:" lines; the numbers
4
+ * behind them (distance, age) travel on the candidate itself.
5
+ */
6
+ export var ResponseUnitRecommendationReason;
7
+ (function (ResponseUnitRecommendationReason) {
8
+ ResponseUnitRecommendationReason["AVAILABLE"] = "AVAILABLE";
9
+ ResponseUnitRecommendationReason["CAPABILITY_MATCH"] = "CAPABILITY_MATCH";
10
+ ResponseUnitRecommendationReason["NO_CAPABILITY_REQUIREMENT"] = "NO_CAPABILITY_REQUIREMENT";
11
+ ResponseUnitRecommendationReason["CAPABILITY_UNKNOWN"] = "CAPABILITY_UNKNOWN";
12
+ ResponseUnitRecommendationReason["SAME_CONTROL_CENTRE"] = "SAME_CONTROL_CENTRE";
13
+ ResponseUnitRecommendationReason["OTHER_CONTROL_CENTRE"] = "OTHER_CONTROL_CENTRE";
14
+ ResponseUnitRecommendationReason["LIVE_LOCATION_CURRENT"] = "LIVE_LOCATION_CURRENT";
15
+ ResponseUnitRecommendationReason["LIVE_LOCATION_STALE"] = "LIVE_LOCATION_STALE";
16
+ ResponseUnitRecommendationReason["BASE_LOCATION"] = "BASE_LOCATION";
17
+ /** Closest of the units that tie on everything above. */
18
+ ResponseUnitRecommendationReason["NEAREST"] = "NEAREST";
19
+ /** Quickest by road of the units that tie on everything above. */
20
+ ResponseUnitRecommendationReason["QUICKEST"] = "QUICKEST";
21
+ })(ResponseUnitRecommendationReason || (ResponseUnitRecommendationReason = {}));
22
+ //# sourceMappingURL=response-unit-recommendation-reason.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-recommendation-reason.enum.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/enums/response-unit-recommendation-reason.enum.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,gCAcX;AAdD,WAAY,gCAAgC;IACxC,2DAAuB,CAAA;IACvB,yEAAqC,CAAA;IACrC,2FAAuD,CAAA;IACvD,6EAAyC,CAAA;IACzC,+EAA2C,CAAA;IAC3C,iFAA6C,CAAA;IAC7C,mFAA+C,CAAA;IAC/C,+EAA2C,CAAA;IAC3C,mEAA+B,CAAA;IAC/B,yDAAyD;IACzD,uDAAmB,CAAA;IACnB,kEAAkE;IAClE,yDAAqB,CAAA;AACzB,CAAC,EAdW,gCAAgC,KAAhC,gCAAgC,QAc3C"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * The overall answer. NO_UNITS_CONFIGURED and NO_ELIGIBLE_UNITS are different
3
+ * operational facts and the admin treats them differently: the first hides the
4
+ * whole dispatch panel (this control room simply has no units), the second is
5
+ * an alarm (it has units and none can go).
6
+ */
7
+ export var ResponseUnitRecommendationStatus;
8
+ (function (ResponseUnitRecommendationStatus) {
9
+ /** A unit is recommended. */
10
+ ResponseUnitRecommendationStatus["RECOMMENDED"] = "RECOMMENDED";
11
+ /** Some units can be dispatched by hand, but none qualifies for a recommendation. */
12
+ ResponseUnitRecommendationStatus["NO_RECOMMENDATION"] = "NO_RECOMMENDATION";
13
+ /** Units exist and none of them can be dispatched. */
14
+ ResponseUnitRecommendationStatus["NO_ELIGIBLE_UNITS"] = "NO_ELIGIBLE_UNITS";
15
+ /** The caller's scope holds no response units at all. */
16
+ ResponseUnitRecommendationStatus["NO_UNITS_CONFIGURED"] = "NO_UNITS_CONFIGURED";
17
+ /** The incident itself cannot take a dispatch (see the blockers). */
18
+ ResponseUnitRecommendationStatus["NOT_DISPATCHABLE"] = "NOT_DISPATCHABLE";
19
+ })(ResponseUnitRecommendationStatus || (ResponseUnitRecommendationStatus = {}));
20
+ //# sourceMappingURL=response-unit-recommendation-status.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-recommendation-status.enum.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/enums/response-unit-recommendation-status.enum.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAN,IAAY,gCAWX;AAXD,WAAY,gCAAgC;IACxC,6BAA6B;IAC7B,+DAA2B,CAAA;IAC3B,qFAAqF;IACrF,2EAAuC,CAAA;IACvC,sDAAsD;IACtD,2EAAuC,CAAA;IACvC,yDAAyD;IACzD,+EAA2C,CAAA;IAC3C,qEAAqE;IACrE,yEAAqC,CAAA;AACzC,CAAC,EAXW,gCAAgC,KAAhC,gCAAgC,QAW3C"}
@@ -0,0 +1,37 @@
1
+ // Enums
2
+ export * from './enums/response-unit-dispatch-status.enum';
3
+ export * from './enums/response-unit-dispatch-transition-source.enum';
4
+ export * from './enums/response-unit-capability-match.enum';
5
+ export * from './enums/response-capability-requirement-source.enum';
6
+ export * from './enums/response-unit-location-source.enum';
7
+ export * from './enums/response-unit-location-freshness.enum';
8
+ export * from './enums/response-unit-distance-basis.enum';
9
+ export * from './enums/response-unit-dispatch-constraint.enum';
10
+ export * from './enums/response-unit-recommendation-reason.enum';
11
+ export * from './enums/response-unit-recommendation-status.enum';
12
+ export * from './enums/incident-dispatch-blocker.enum';
13
+ export * from './enums/response-unit-dispatch-notification-status.enum';
14
+ export * from './enums/response-unit-dispatch-notification-failure.enum';
15
+ export * from './enums/response-unit-dispatch-error-code.enum';
16
+ // Interfaces
17
+ export * from './interfaces/response-unit-dispatch-profile';
18
+ export * from './interfaces/response-unit-proximity';
19
+ export * from './interfaces/response-unit-recommendation';
20
+ export * from './interfaces/incident-response-unit-dispatch';
21
+ export * from './interfaces/response-unit-dispatch-events';
22
+ // Constants
23
+ export * from './constants/response-unit-dispatch-kafka.const';
24
+ export * from './constants/response-unit-dispatch-defaults.const';
25
+ // DTOs
26
+ export * from './dtos/dispatch-response-unit.dto';
27
+ export * from './dtos/update-response-unit-dispatch-status.dto';
28
+ export * from './dtos/response-unit-nearby-query.dto';
29
+ export * from './dtos/response-unit-dispatch-profile-query.dto';
30
+ export * from './dtos/response-unit-dispatch-notification.dto';
31
+ // Utilities
32
+ export * from './utils/response-unit-dispatch-status.util';
33
+ export * from './utils/response-capability-match.util';
34
+ export * from './utils/incident-dispatchability.util';
35
+ export * from './utils/dispatch-geo.util';
36
+ export * from './utils/response-unit-dispatch-event.util';
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/dispatch/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,cAAc,4CAA4C,CAAC;AAC3D,cAAc,uDAAuD,CAAC;AACtE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,qDAAqD,CAAC;AACpE,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,wCAAwC,CAAC;AACvD,cAAc,yDAAyD,CAAC;AACxE,cAAc,0DAA0D,CAAC;AACzE,cAAc,gDAAgD,CAAC;AAE/D,aAAa;AACb,cAAc,6CAA6C,CAAC;AAC5D,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAE3D,YAAY;AACZ,cAAc,gDAAgD,CAAC;AAC/D,cAAc,mDAAmD,CAAC;AAElE,OAAO;AACP,cAAc,mCAAmC,CAAC;AAClD,cAAc,iDAAiD,CAAC;AAChE,cAAc,uCAAuC,CAAC;AACtD,cAAc,iDAAiD,CAAC;AAChE,cAAc,gDAAgD,CAAC;AAE/D,YAAY;AACZ,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC;AACvD,cAAc,uCAAuC,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=incident-response-unit-dispatch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incident-response-unit-dispatch.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/interfaces/incident-response-unit-dispatch.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=response-unit-dispatch-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-dispatch-events.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/interfaces/response-unit-dispatch-events.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=response-unit-dispatch-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-dispatch-profile.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/interfaces/response-unit-dispatch-profile.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=response-unit-proximity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-proximity.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/interfaces/response-unit-proximity.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=response-unit-recommendation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-recommendation.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/interfaces/response-unit-recommendation.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ /** Mean Earth radius (IUGG), the value clarion-response-tracking uses too. */
2
+ const EARTH_RADIUS_METRES = 6371008.8;
3
+ const toRadians = (degrees) => (degrees * Math.PI) / 180;
4
+ /** Great-circle distance in metres. */
5
+ export function haversineMetres(lat1, lng1, lat2, lng2) {
6
+ const dLat = toRadians(lat2 - lat1);
7
+ const dLng = toRadians(lng2 - lng1);
8
+ const a = Math.sin(dLat / 2) ** 2 +
9
+ Math.cos(toRadians(lat1)) * Math.cos(toRadians(lat2)) * Math.sin(dLng / 2) ** 2;
10
+ return 2 * EARTH_RADIUS_METRES * Math.asin(Math.min(1, Math.sqrt(a)));
11
+ }
12
+ /**
13
+ * A coordinate worth computing a distance from: finite, in range, and not the
14
+ * (0,0) a form leaves behind when nobody picked a point (Null Island, in the
15
+ * Gulf of Guinea, is where every unset location in the world quietly sits).
16
+ */
17
+ export function isUsableCoordinate(latitude, longitude) {
18
+ if (typeof latitude !== 'number' || typeof longitude !== 'number')
19
+ return false;
20
+ if (!Number.isFinite(latitude) || !Number.isFinite(longitude))
21
+ return false;
22
+ if (latitude < -90 || latitude > 90 || longitude < -180 || longitude > 180)
23
+ return false;
24
+ return !(latitude === 0 && longitude === 0);
25
+ }
26
+ /**
27
+ * Read a {lat,lng} / {latitude,longitude} / {lat,lon} shaped location - the
28
+ * platform stores all three - as a usable coordinate, or null.
29
+ */
30
+ export function readCoordinate(location) {
31
+ var _a, _b, _c;
32
+ if (!location || typeof location !== 'object')
33
+ return null;
34
+ const value = location;
35
+ const latitude = Number((_a = value['latitude']) !== null && _a !== void 0 ? _a : value['lat']);
36
+ const longitude = Number((_c = (_b = value['longitude']) !== null && _b !== void 0 ? _b : value['lng']) !== null && _c !== void 0 ? _c : value['lon']);
37
+ return isUsableCoordinate(latitude, longitude) ? { latitude, longitude } : null;
38
+ }
39
+ //# sourceMappingURL=dispatch-geo.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatch-geo.util.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/utils/dispatch-geo.util.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,MAAM,mBAAmB,GAAG,SAAW,CAAC;AAExC,MAAM,SAAS,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;AAEzE,uCAAuC;AACvC,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY,EAAE,IAAY;IAClF,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACpC,MAAM,CAAC,GACH,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAiB,EAAE,SAAkB;IACpE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5E,IAAI,QAAQ,GAAG,CAAC,EAAE,IAAI,QAAQ,GAAG,EAAE,IAAI,SAAS,GAAG,CAAC,GAAG,IAAI,SAAS,GAAG,GAAG;QAAE,OAAO,KAAK,CAAC;IACzF,OAAO,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,CAAC,CAAC;AAChD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC1B,QAAiB;;IAEjB,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3D,MAAM,KAAK,GAAG,QAAmC,CAAC;IAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAA,KAAK,CAAC,UAAU,CAAC,mCAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAA,MAAA,KAAK,CAAC,WAAW,CAAC,mCAAI,KAAK,CAAC,KAAK,CAAC,mCAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,OAAO,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACpF,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { reachesControlRoom } from '../../alert-dispatch/utils/alert-dispatch.util';
2
+ import { IncidentClass } from '../../incident/enums/incident-class.enum';
3
+ import { IncidentStatus } from '../../incident/enums/incident-status.enum';
4
+ import { IncidentDispatchBlocker } from '../enums/incident-dispatch-blocker.enum';
5
+ /** Incident statuses after which nothing is sent to it. */
6
+ export const INCIDENT_STATUSES_ENDING_DISPATCH = [
7
+ IncidentStatus.RESOLVED,
8
+ IncidentStatus.CLOSED,
9
+ IncidentStatus.UNRESOLVED,
10
+ IncidentStatus.ARCHIVED,
11
+ ];
12
+ /**
13
+ * Why this incident cannot take a dispatch - empty when it can. Every reason is
14
+ * returned, not just the first, so the admin can say all of it at once.
15
+ */
16
+ export function resolveIncidentDispatchBlockers(incident) {
17
+ var _a, _b;
18
+ const blockers = [];
19
+ if (incident.class && incident.class !== IncidentClass.INCIDENT) {
20
+ blockers.push(IncidentDispatchBlocker.NOT_AN_EMERGENCY_INCIDENT);
21
+ }
22
+ if (incident.status && INCIDENT_STATUSES_ENDING_DISPATCH.includes(incident.status)) {
23
+ blockers.push(IncidentDispatchBlocker.INCIDENT_ENDED);
24
+ }
25
+ if (!reachesControlRoom({
26
+ notifyServiceProvider: (_a = incident.notifyServiceProvider) !== null && _a !== void 0 ? _a : undefined,
27
+ entitlementTier: (_b = incident.entitlementTier) !== null && _b !== void 0 ? _b : undefined,
28
+ })) {
29
+ blockers.push(IncidentDispatchBlocker.PROVIDER_RESPONSE_NOT_REQUESTED);
30
+ }
31
+ return blockers;
32
+ }
33
+ /** Whether an incident status ends every dispatch still active on it. */
34
+ export function incidentStatusEndsDispatch(status) {
35
+ return !!status && INCIDENT_STATUSES_ENDING_DISPATCH.includes(status);
36
+ }
37
+ //# sourceMappingURL=incident-dispatchability.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incident-dispatchability.util.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/utils/incident-dispatchability.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF,2DAA2D;AAC3D,MAAM,CAAC,MAAM,iCAAiC,GAA8B;IACxE,cAAc,CAAC,QAAQ;IACvB,cAAc,CAAC,MAAM;IACrB,cAAc,CAAC,UAAU;IACzB,cAAc,CAAC,QAAQ;CAC1B,CAAC;AAUF;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAAC,QAAmC;;IAC/E,MAAM,QAAQ,GAA8B,EAAE,CAAC;IAC/C,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,KAAK,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC9D,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,yBAAyB,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,IAAK,iCAAuD,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACxG,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,CAAC,kBAAkB,CAAC;QACpB,qBAAqB,EAAE,MAAA,QAAQ,CAAC,qBAAqB,mCAAI,SAAS;QAClE,eAAe,EAAE,MAAA,QAAQ,CAAC,eAAe,mCAAI,SAAS;KACb,CAAC,EAAE,CAAC;QAC7C,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,+BAA+B,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,0BAA0B,CAAC,MAAiC;IACxE,OAAO,CAAC,CAAC,MAAM,IAAK,iCAAuD,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACjG,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { normalizeResponseCapabilities } from '../../response-unit/utils/response-capability.util';
2
+ import { ResponseCapabilityRequirementSource } from '../enums/response-capability-requirement-source.enum';
3
+ import { ResponseUnitCapabilityMatch } from '../enums/response-unit-capability-match.enum';
4
+ /**
5
+ * What an incident needs: its TYPE's list when the type names one, otherwise
6
+ * its CATEGORY's, otherwise nothing. A type's list replaces the category's
7
+ * rather than adding to it - "Road accident with casualties" under a "Traffic"
8
+ * category that asks for roadside assistance must be able to ask for an
9
+ * ambulance instead.
10
+ */
11
+ export function resolveResponseCapabilityRequirement(type, category) {
12
+ const fromType = normalizeResponseCapabilities(type === null || type === void 0 ? void 0 : type.responseCapabilities);
13
+ if (fromType.length > 0) {
14
+ return { capabilities: fromType, source: ResponseCapabilityRequirementSource.INCIDENT_TYPE };
15
+ }
16
+ const fromCategory = normalizeResponseCapabilities(category === null || category === void 0 ? void 0 : category.responseCapabilities);
17
+ if (fromCategory.length > 0) {
18
+ return { capabilities: fromCategory, source: ResponseCapabilityRequirementSource.INCIDENT_CATEGORY };
19
+ }
20
+ return { capabilities: [], source: ResponseCapabilityRequirementSource.NONE };
21
+ }
22
+ /**
23
+ * Compare a unit with a requirement. A unit qualifies with ANY required
24
+ * capability - a requirement is the set of services that would do, not a
25
+ * checklist one vehicle must tick.
26
+ */
27
+ export function matchResponseCapabilities(required, unitCapabilities) {
28
+ if (required.length === 0) {
29
+ return { match: ResponseUnitCapabilityMatch.NOT_REQUIRED, matched: [] };
30
+ }
31
+ if (unitCapabilities.length === 0) {
32
+ return { match: ResponseUnitCapabilityMatch.UNKNOWN, matched: [] };
33
+ }
34
+ const have = new Set(unitCapabilities);
35
+ const matched = required.filter((capability) => have.has(capability));
36
+ return matched.length > 0
37
+ ? { match: ResponseUnitCapabilityMatch.MATCH, matched: [...matched].sort() }
38
+ : { match: ResponseUnitCapabilityMatch.NOT_SUITED, matched: [] };
39
+ }
40
+ //# sourceMappingURL=response-capability-match.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-capability-match.util.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/utils/response-capability-match.util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,EAAE,mCAAmC,EAAE,MAAM,sDAAsD,CAAC;AAC3G,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAG3F;;;;;;GAMG;AACH,MAAM,UAAU,oCAAoC,CAChD,IAA2D,EAC3D,QAA+D;IAE/D,MAAM,QAAQ,GAAG,6BAA6B,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,oBAAoB,CAAC,CAAC;IAC3E,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,mCAAmC,CAAC,aAAa,EAAE,CAAC;IACjG,CAAC;IACD,MAAM,YAAY,GAAG,6BAA6B,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,oBAAoB,CAAC,CAAC;IACnF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,mCAAmC,CAAC,iBAAiB,EAAE,CAAC;IACzG,CAAC;IACD,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,mCAAmC,CAAC,IAAI,EAAE,CAAC;AAClF,CAAC;AAQD;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACrC,QAAuC,EACvC,gBAA+C;IAE/C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,KAAK,EAAE,2BAA2B,CAAC,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,KAAK,EAAE,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IACtE,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC;QACrB,CAAC,CAAC,EAAE,KAAK,EAAE,2BAA2B,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5E,CAAC,CAAC,EAAE,KAAK,EAAE,2BAA2B,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;AACzE,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Deterministic event id: the same change always produces the same id, so a
3
+ * consumer that sees one twice (an outbox re-publish, a Kafka redelivery) knows
4
+ * it already handled it. `discriminator` separates changes of the same kind on
5
+ * one dispatch (the target status, the notification attempt number).
6
+ */
7
+ export function buildResponseUnitDispatchEventId(kind, dispatchId, discriminator) {
8
+ const suffix = discriminator === undefined || discriminator === null || discriminator === '' ? '' : `:${discriminator}`;
9
+ return `response-unit-dispatch:${dispatchId}:${kind}${suffix}`;
10
+ }
11
+ /** An incident as a control room quotes it: `#1234`. */
12
+ export function formatIncidentReference(incidentId) {
13
+ return `#${incidentId}`;
14
+ }
15
+ //# sourceMappingURL=response-unit-dispatch-event.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-dispatch-event.util.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/utils/response-unit-dispatch-event.util.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,gCAAgC,CAC5C,IAAqF,EACrF,UAAkB,EAClB,aAA+B;IAE/B,MAAM,MAAM,GAAG,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,IAAI,IAAI,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,aAAa,EAAE,CAAC;IACxH,OAAO,0BAA0B,UAAU,IAAI,IAAI,GAAG,MAAM,EAAE,CAAC;AACnE,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,uBAAuB,CAAC,UAAkB;IACtD,OAAO,IAAI,UAAU,EAAE,CAAC;AAC5B,CAAC"}
@@ -0,0 +1,46 @@
1
+ import { ACTIVE_RESPONSE_UNIT_DISPATCH_STATUSES, TERMINAL_RESPONSE_UNIT_DISPATCH_STATUSES, } from '../constants/response-unit-dispatch-defaults.const';
2
+ import { ResponseUnitDispatchStatus } from '../enums/response-unit-dispatch-status.enum';
3
+ const S = ResponseUnitDispatchStatus;
4
+ /**
5
+ * Where a dispatch may go next. Forward only, and steps may be skipped: a crew
6
+ * that radios in "on scene" never said "en route", and refusing to record the
7
+ * truth because a step was missed would leave the record wrong. Nothing leaves
8
+ * COMPLETED or CANCELLED - a unit sent again is a new dispatch, with its own
9
+ * audit trail, not a resurrected one.
10
+ */
11
+ export const RESPONSE_UNIT_DISPATCH_TRANSITIONS = {
12
+ [S.DISPATCHED]: [S.ACKNOWLEDGED, S.EN_ROUTE, S.ON_SCENE, S.COMPLETED, S.CANCELLED, S.REJECTED],
13
+ // A unit may still decline after acknowledging (it turns out it cannot go);
14
+ // once it is moving it is stood down instead.
15
+ [S.ACKNOWLEDGED]: [S.EN_ROUTE, S.ON_SCENE, S.COMPLETED, S.CANCELLED, S.REJECTED],
16
+ [S.EN_ROUTE]: [S.ON_SCENE, S.COMPLETED, S.CANCELLED],
17
+ [S.ON_SCENE]: [S.COMPLETED, S.CANCELLED],
18
+ [S.COMPLETED]: [],
19
+ [S.CANCELLED]: [],
20
+ [S.REJECTED]: [],
21
+ };
22
+ export function isActiveResponseUnitDispatchStatus(status) {
23
+ return !!status && ACTIVE_RESPONSE_UNIT_DISPATCH_STATUSES.includes(status);
24
+ }
25
+ export function isTerminalResponseUnitDispatchStatus(status) {
26
+ return !!status && TERMINAL_RESPONSE_UNIT_DISPATCH_STATUSES.includes(status);
27
+ }
28
+ export function canTransitionResponseUnitDispatch(from, to) {
29
+ var _a;
30
+ return ((_a = RESPONSE_UNIT_DISPATCH_TRANSITIONS[from]) !== null && _a !== void 0 ? _a : []).includes(to);
31
+ }
32
+ /** The statuses a dispatch in `from` may be moved to. */
33
+ export function nextResponseUnitDispatchStatuses(from) {
34
+ var _a;
35
+ return [...((_a = RESPONSE_UNIT_DISPATCH_TRANSITIONS[from]) !== null && _a !== void 0 ? _a : [])];
36
+ }
37
+ /** The milestone column each status stamps, for the statuses that have one. */
38
+ export const RESPONSE_UNIT_DISPATCH_MILESTONE_FIELD = {
39
+ [S.ACKNOWLEDGED]: 'acknowledgedAt',
40
+ [S.EN_ROUTE]: 'enRouteAt',
41
+ [S.ON_SCENE]: 'onSceneAt',
42
+ [S.COMPLETED]: 'completedAt',
43
+ [S.CANCELLED]: 'cancelledAt',
44
+ [S.REJECTED]: 'rejectedAt',
45
+ };
46
+ //# sourceMappingURL=response-unit-dispatch-status.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-unit-dispatch-status.util.js","sourceRoot":"","sources":["../../../../../src/modules/dispatch/utils/response-unit-dispatch-status.util.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,sCAAsC,EACtC,wCAAwC,GAC3C,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAEzF,MAAM,CAAC,GAAG,0BAA0B,CAAC;AAErC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAwF;IACnI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC;IAC9F,4EAA4E;IAC5E,8CAA8C;IAC9C,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC;IAChF,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC;IACpD,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC;IACxC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE;IACjB,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE;IACjB,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE;CACnB,CAAC;AAEF,MAAM,UAAU,kCAAkC,CAAC,MAAiC;IAChF,OAAO,CAAC,CAAC,MAAM,IAAK,sCAA4D,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACtG,CAAC;AAED,MAAM,UAAU,oCAAoC,CAAC,MAAiC;IAClF,OAAO,CAAC,CAAC,MAAM,IAAK,wCAA8D,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACxG,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC7C,IAAgC,EAChC,EAA8B;;IAE9B,OAAO,CAAC,MAAA,kCAAkC,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACzE,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,gCAAgC,CAAC,IAAgC;;IAC7E,OAAO,CAAC,GAAG,CAAC,MAAA,kCAAkC,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,+EAA+E;AAC/E,MAAM,CAAC,MAAM,sCAAsC,GAAuJ;IACtM,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,gBAAgB;IAClC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,WAAW;IACzB,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,WAAW;IACzB,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,aAAa;IAC5B,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,aAAa;IAC5B,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,YAAY;CAC7B,CAAC"}
@@ -7,7 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { IsNotEmpty, IsNumber, IsOptional, IsString, MaxLength } from "class-validator";
10
+ import { ArrayMaxSize, IsArray, IsEnum, IsNotEmpty, IsNumber, IsOptional, IsString, MaxLength } from "class-validator";
11
+ import { ResponseCapability } from "../../../response-unit/enums/response-unit/response-capability.enum";
12
+ import { MAX_RESPONSE_CAPABILITIES } from "../../../response-unit/utils/response-capability.util";
11
13
  import { ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
12
14
  export class CreateIncidentCategoryDto {
13
15
  }
@@ -42,4 +44,11 @@ __decorate([
42
44
  IsNotEmpty(),
43
45
  __metadata("design:type", Number)
44
46
  ], CreateIncidentCategoryDto.prototype, "organizationId", void 0);
47
+ __decorate([
48
+ IsOptional(),
49
+ IsArray(),
50
+ ArrayMaxSize(MAX_RESPONSE_CAPABILITIES),
51
+ IsEnum(ResponseCapability, { each: true }),
52
+ __metadata("design:type", Array)
53
+ ], CreateIncidentCategoryDto.prototype, "responseCapabilities", void 0);
45
54
  //# sourceMappingURL=create-incident-category.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-incident-category.dto.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/category/create-incident-category.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEnE,MAAM,OAAO,yBAAyB;CA4BrC;AAnBG;IARC,WAAW,CAAC;QACT,WAAW,EAAE,+BAA+B;QAC5C,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,gBAAgB;KAC5B,CAAC;IACD,QAAQ,EAAE;IACV,UAAU,EAAE;IACZ,SAAS,CAAC,EAAE,CAAC;;uDACA;AAUd;IARC,mBAAmB,CAAC;QACjB,WAAW,EAAE,+CAA+C;QAC5D,SAAS,EAAE,GAAG;QACd,OAAO,EAAE,mDAAmD;KAC/D,CAAC;IACD,QAAQ,EAAE;IACV,UAAU,EAAE;IACZ,SAAS,CAAC,GAAG,CAAC;;8DACM;AAQrB;IANC,WAAW,CAAC;QACT,WAAW,EAAE,iDAAiD;QAC9D,OAAO,EAAE,CAAC;KACb,CAAC;IACD,QAAQ,EAAE;IACV,UAAU,EAAE;;iEACW"}
1
+ {"version":3,"file":"create-incident-category.dto.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/category/create-incident-category.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvH,OAAO,EAAE,kBAAkB,EAAE,MAAM,qEAAqE,CAAC;AACzG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEnE,MAAM,OAAO,yBAAyB;CAsCrC;AA7BG;IARC,WAAW,CAAC;QACT,WAAW,EAAE,+BAA+B;QAC5C,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,gBAAgB;KAC5B,CAAC;IACD,QAAQ,EAAE;IACV,UAAU,EAAE;IACZ,SAAS,CAAC,EAAE,CAAC;;uDACA;AAUd;IARC,mBAAmB,CAAC;QACjB,WAAW,EAAE,+CAA+C;QAC5D,SAAS,EAAE,GAAG;QACd,OAAO,EAAE,mDAAmD;KAC/D,CAAC;IACD,QAAQ,EAAE;IACV,UAAU,EAAE;IACZ,SAAS,CAAC,GAAG,CAAC;;8DACM;AAQrB;IANC,WAAW,CAAC;QACT,WAAW,EAAE,iDAAiD;QAC9D,OAAO,EAAE,CAAC;KACb,CAAC;IACD,QAAQ,EAAE;IACV,UAAU,EAAE;;iEACW;AAUxB;IAJC,UAAU,EAAE;IACZ,OAAO,EAAE;IACT,YAAY,CAAC,yBAAyB,CAAC;IACvC,MAAM,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;uEACC"}
@@ -7,7 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { IsNotEmpty, IsNumber, IsOptional, IsString, MaxLength } from "class-validator";
10
+ import { ArrayMaxSize, IsArray, IsEnum, IsNotEmpty, IsNumber, IsOptional, IsString, MaxLength } from "class-validator";
11
+ import { ResponseCapability } from "../../../response-unit/enums/response-unit/response-capability.enum";
12
+ import { MAX_RESPONSE_CAPABILITIES } from "../../../response-unit/utils/response-capability.util";
11
13
  export class CreateIncidentTypeDto {
12
14
  }
13
15
  __decorate([
@@ -32,4 +34,11 @@ __decorate([
32
34
  IsNotEmpty(),
33
35
  __metadata("design:type", Number)
34
36
  ], CreateIncidentTypeDto.prototype, "organizationId", void 0);
37
+ __decorate([
38
+ IsOptional(),
39
+ IsArray(),
40
+ ArrayMaxSize(MAX_RESPONSE_CAPABILITIES),
41
+ IsEnum(ResponseCapability, { each: true }),
42
+ __metadata("design:type", Array)
43
+ ], CreateIncidentTypeDto.prototype, "responseCapabilities", void 0);
35
44
  //# sourceMappingURL=create-incident-type.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-incident-type.dto.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/type/create-incident-type.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAExF,MAAM,OAAO,qBAAqB;CAkBjC;AAdG;IAHC,QAAQ,EAAE;IACV,UAAU,EAAE;IACZ,SAAS,CAAC,EAAE,CAAC;;mDACA;AAKd;IAHC,QAAQ,EAAE;IACV,UAAU,EAAE;IACZ,SAAS,CAAC,GAAG,CAAC;;0DACM;AAIrB;IAFC,QAAQ,EAAE;IACV,UAAU,EAAE;;yDACO;AAIpB;IAFC,QAAQ,EAAE;IACV,UAAU,EAAE;;6DACW"}
1
+ {"version":3,"file":"create-incident-type.dto.js","sourceRoot":"","sources":["../../../../../../src/modules/incident/dtos/type/create-incident-type.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvH,OAAO,EAAE,kBAAkB,EAAE,MAAM,qEAAqE,CAAC;AACzG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAElG,MAAM,OAAO,qBAAqB;CA4BjC;AAxBG;IAHC,QAAQ,EAAE;IACV,UAAU,EAAE;IACZ,SAAS,CAAC,EAAE,CAAC;;mDACA;AAKd;IAHC,QAAQ,EAAE;IACV,UAAU,EAAE;IACZ,SAAS,CAAC,GAAG,CAAC;;0DACM;AAIrB;IAFC,QAAQ,EAAE;IACV,UAAU,EAAE;;yDACO;AAIpB;IAFC,QAAQ,EAAE;IACV,UAAU,EAAE;;6DACW;AAUxB;IAJC,UAAU,EAAE;IACZ,OAAO,EAAE;IACT,YAAY,CAAC,yBAAyB,CAAC;IACvC,MAAM,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;mEACC"}
@@ -9,6 +9,14 @@ export var IncidentActions;
9
9
  IncidentActions["AUTO_STOPPED"] = "Auto-Stopped";
10
10
  IncidentActions["ASSIGNED"] = "Assigned";
11
11
  IncidentActions["RESPONSE_UNIT_ASSIGNED"] = "Response Unit Assigned";
12
+ /** A unit was dispatched through the dispatch command (recommend + dispatch). */
13
+ IncidentActions["RESPONSE_UNIT_DISPATCHED"] = "Response Unit Dispatched";
14
+ /** A dispatch moved on (acknowledged, en route, on scene, completed, stood down) or its message was reported on. */
15
+ IncidentActions["RESPONSE_UNIT_DISPATCH_UPDATED"] = "Response Unit Dispatch Updated";
16
+ /** The emergency response reached a milestone (acknowledged, triaged, arrival inferred, assessed...). */
17
+ IncidentActions["EMERGENCY_MILESTONE"] = "Emergency Milestone";
18
+ /** The emergency SLA changed (a clock warned, breached, paused, was excused...) or escalated. */
19
+ IncidentActions["SLA_UPDATED"] = "SLA Updated";
12
20
  IncidentActions["REOPENED"] = "Reopened";
13
21
  IncidentActions["REPORT_CREATED"] = "Report Created";
14
22
  IncidentActions["COMMENTED"] = "Commented";
@@ -1 +1 @@
1
- {"version":3,"file":"incident-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/incident/enums/incident-actions.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,eAiBX;AAjBD,WAAY,eAAe;IACvB,sCAAmB,CAAA;IACnB,sCAAmB,CAAA;IACnB,oDAAiC,CAAA;IACjC,0CAAuB,CAAA;IACvB,wCAAqB,CAAA;IACrB,sCAAmB,CAAA;IACnB,gDAA6B,CAAA;IAC7B,wCAAqB,CAAA;IACrB,oEAAiD,CAAA;IACjD,wCAAqB,CAAA;IACrB,oDAAiC,CAAA;IACjC,0CAAuB,CAAA;IACvB,wDAAqC,CAAA;IACrC,gDAA6B,CAAA;IAC7B,iEAA8C,CAAA;IAC9C,0CAAuB,CAAA;AAC3B,CAAC,EAjBW,eAAe,KAAf,eAAe,QAiB1B"}
1
+ {"version":3,"file":"incident-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/incident/enums/incident-actions.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,eAyBX;AAzBD,WAAY,eAAe;IACvB,sCAAmB,CAAA;IACnB,sCAAmB,CAAA;IACnB,oDAAiC,CAAA;IACjC,0CAAuB,CAAA;IACvB,wCAAqB,CAAA;IACrB,sCAAmB,CAAA;IACnB,gDAA6B,CAAA;IAC7B,wCAAqB,CAAA;IACrB,oEAAiD,CAAA;IACjD,iFAAiF;IACjF,wEAAqD,CAAA;IACrD,oHAAoH;IACpH,oFAAiE,CAAA;IACjE,yGAAyG;IACzG,8DAA2C,CAAA;IAC3C,iGAAiG;IACjG,8CAA2B,CAAA;IAC3B,wCAAqB,CAAA;IACrB,oDAAiC,CAAA;IACjC,0CAAuB,CAAA;IACvB,wDAAqC,CAAA;IACrC,gDAA6B,CAAA;IAC7B,iEAA8C,CAAA;IAC9C,0CAAuB,CAAA;AAC3B,CAAC,EAzBW,eAAe,KAAf,eAAe,QAyB1B"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * The emergency incident workflow's names, shared by clarion-workflow-manager
3
+ * (which runs it) and anything that signals it. Workflow code cannot import this
4
+ * library (the Temporal sandbox), so workflow-manager keeps a local copy and a
5
+ * drift test pins it to these values.
6
+ */
7
+ export const EMERGENCY_INCIDENT_WORKFLOW = {
8
+ type: 'emergencyIncidentWorkflow',
9
+ /** One workflow per incident: `emergency-incident-{incidentId}`. */
10
+ idPrefix: 'emergency-incident-',
11
+ /** The existing incident queue (IncidentWorkflowTaskQueueName.INCIDENT_QUEUE). */
12
+ defaultTaskQueue: 'incident-task-queue',
13
+ query: 'emergencyIncidentState',
14
+ reconciliationWorkflowType: 'emergencyIncidentReconciliationWorkflow',
15
+ reconciliationScheduleId: 'emergency-incident-reconciliation',
16
+ signals: {
17
+ acknowledgeIncident: 'acknowledgeIncident',
18
+ triageIncident: 'triageIncident',
19
+ assignResponseUnit: 'assignResponseUnit',
20
+ acceptDispatch: 'acceptDispatch',
21
+ rejectDispatch: 'rejectDispatch',
22
+ startTravel: 'startTravel',
23
+ reportArrival: 'reportArrival',
24
+ reportAssessment: 'reportAssessment',
25
+ updateIncidentStatus: 'updateIncidentStatus',
26
+ reportResolution: 'reportResolution',
27
+ pauseSla: 'pauseSla',
28
+ resumeSla: 'resumeSla',
29
+ requestSlaException: 'requestSlaException',
30
+ etaChanged: 'etaChanged',
31
+ slaChanged: 'slaChanged',
32
+ dispatchCancelled: 'dispatchCancelled',
33
+ },
34
+ };
35
+ export function emergencyIncidentWorkflowId(incidentId) {
36
+ return `${EMERGENCY_INCIDENT_WORKFLOW.idPrefix}${incidentId}`;
37
+ }
38
+ /** Internal routes clarion-incident serves to the workflow (token-protected, never proxied). */
39
+ export const EMERGENCY_INCIDENT_INTERNAL_PATHS = {
40
+ plan: (incidentId) => `/incidents/internal/emergency/${incidentId}/plan`,
41
+ threshold: (incidentId) => `/incidents/internal/emergency/${incidentId}/sla/thresholds`,
42
+ milestone: (incidentId) => `/incidents/internal/emergency/${incidentId}/milestones`,
43
+ escalation: (incidentId) => `/incidents/internal/emergency/${incidentId}/escalations`,
44
+ reassignment: (incidentId) => `/incidents/internal/emergency/${incidentId}/reassignments`,
45
+ trackingFreshness: (incidentId) => `/incidents/internal/emergency/${incidentId}/tracking-freshness`,
46
+ autoClose: (incidentId) => `/incidents/internal/emergency/${incidentId}/auto-close`,
47
+ open: '/incidents/internal/emergency/open',
48
+ };
49
+ //# sourceMappingURL=emergency-incident-workflow.const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emergency-incident-workflow.const.js","sourceRoot":"","sources":["../../../../../src/modules/incident-sla/constants/emergency-incident-workflow.const.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACvC,IAAI,EAAE,2BAA2B;IACjC,oEAAoE;IACpE,QAAQ,EAAE,qBAAqB;IAC/B,kFAAkF;IAClF,gBAAgB,EAAE,qBAAqB;IACvC,KAAK,EAAE,wBAAwB;IAC/B,0BAA0B,EAAE,yCAAyC;IACrE,wBAAwB,EAAE,mCAAmC;IAC7D,OAAO,EAAE;QACL,mBAAmB,EAAE,qBAAqB;QAC1C,cAAc,EAAE,gBAAgB;QAChC,kBAAkB,EAAE,oBAAoB;QACxC,cAAc,EAAE,gBAAgB;QAChC,cAAc,EAAE,gBAAgB;QAChC,WAAW,EAAE,aAAa;QAC1B,aAAa,EAAE,eAAe;QAC9B,gBAAgB,EAAE,kBAAkB;QACpC,oBAAoB,EAAE,sBAAsB;QAC5C,gBAAgB,EAAE,kBAAkB;QACpC,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,WAAW;QACtB,mBAAmB,EAAE,qBAAqB;QAC1C,UAAU,EAAE,YAAY;QACxB,UAAU,EAAE,YAAY;QACxB,iBAAiB,EAAE,mBAAmB;KACzC;CACK,CAAC;AAEX,MAAM,UAAU,2BAA2B,CAAC,UAAkB;IAC1D,OAAO,GAAG,2BAA2B,CAAC,QAAQ,GAAG,UAAU,EAAE,CAAC;AAClE,CAAC;AAED,gGAAgG;AAChG,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC7C,IAAI,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iCAAiC,UAAU,OAAO;IAChF,SAAS,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iCAAiC,UAAU,iBAAiB;IAC/F,SAAS,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iCAAiC,UAAU,aAAa;IAC3F,UAAU,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iCAAiC,UAAU,cAAc;IAC7F,YAAY,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iCAAiC,UAAU,gBAAgB;IACjG,iBAAiB,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iCAAiC,UAAU,qBAAqB;IAC3G,SAAS,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,iCAAiC,UAAU,aAAa;IAC3F,IAAI,EAAE,oCAAoC;CACpC,CAAC"}