grm-shared-library 1.1.126 → 1.1.129

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 (227) hide show
  1. package/dist/cjs/index.js +1 -0
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/modules/gis/dtos/batch-route-incidents.dto.js +62 -0
  4. package/dist/cjs/modules/gis/dtos/batch-route-incidents.dto.js.map +1 -0
  5. package/dist/cjs/modules/gis/dtos/batch-route-point.dto.js +28 -0
  6. package/dist/cjs/modules/gis/dtos/batch-route-point.dto.js.map +1 -0
  7. package/dist/cjs/modules/gis/dtos/batch-routing-result.dto.js +33 -0
  8. package/dist/cjs/modules/gis/dtos/batch-routing-result.dto.js.map +1 -0
  9. package/dist/cjs/modules/gis/dtos/bounding-box.dto.js +53 -0
  10. package/dist/cjs/modules/gis/dtos/bounding-box.dto.js.map +1 -0
  11. package/dist/cjs/modules/gis/dtos/bulk-point-query-result.dto.js +34 -0
  12. package/dist/cjs/modules/gis/dtos/bulk-point-query-result.dto.js.map +1 -0
  13. package/dist/cjs/modules/gis/dtos/bulk-point-query.dto.js +57 -0
  14. package/dist/cjs/modules/gis/dtos/bulk-point-query.dto.js.map +1 -0
  15. package/dist/cjs/modules/gis/dtos/control-centre-routing-result.dto.js +60 -0
  16. package/dist/cjs/modules/gis/dtos/control-centre-routing-result.dto.js.map +1 -0
  17. package/dist/cjs/modules/gis/dtos/coordinate.dto.js +42 -0
  18. package/dist/cjs/modules/gis/dtos/coordinate.dto.js.map +1 -0
  19. package/dist/cjs/modules/gis/dtos/create-buffer.dto.js +43 -0
  20. package/dist/cjs/modules/gis/dtos/create-buffer.dto.js.map +1 -0
  21. package/dist/cjs/modules/gis/dtos/create-zone.dto.js +138 -0
  22. package/dist/cjs/modules/gis/dtos/create-zone.dto.js.map +1 -0
  23. package/dist/cjs/modules/gis/dtos/find-zone-for-point.dto.js +51 -0
  24. package/dist/cjs/modules/gis/dtos/find-zone-for-point.dto.js.map +1 -0
  25. package/dist/cjs/modules/gis/dtos/find-zones-near-point.dto.js +31 -0
  26. package/dist/cjs/modules/gis/dtos/find-zones-near-point.dto.js.map +1 -0
  27. package/dist/cjs/modules/gis/dtos/geo-json-polygon.dto.js +41 -0
  28. package/dist/cjs/modules/gis/dtos/geo-json-polygon.dto.js.map +1 -0
  29. package/dist/cjs/modules/gis/dtos/incident-routing-result.dto.js +75 -0
  30. package/dist/cjs/modules/gis/dtos/incident-routing-result.dto.js.map +1 -0
  31. package/dist/cjs/modules/gis/dtos/point-containment-result.dto.js +24 -0
  32. package/dist/cjs/modules/gis/dtos/point-containment-result.dto.js.map +1 -0
  33. package/dist/cjs/modules/gis/dtos/point-location.dto.js +42 -0
  34. package/dist/cjs/modules/gis/dtos/point-location.dto.js.map +1 -0
  35. package/dist/cjs/modules/gis/dtos/post-gis-geometry.dto.js +45 -0
  36. package/dist/cjs/modules/gis/dtos/post-gis-geometry.dto.js.map +1 -0
  37. package/dist/cjs/modules/gis/dtos/route-incident.dto.js +55 -0
  38. package/dist/cjs/modules/gis/dtos/route-incident.dto.js.map +1 -0
  39. package/dist/cjs/modules/gis/dtos/routing-coverage-result.dto.js +38 -0
  40. package/dist/cjs/modules/gis/dtos/routing-coverage-result.dto.js.map +1 -0
  41. package/dist/cjs/modules/gis/dtos/simplify-polygon.dto.js +57 -0
  42. package/dist/cjs/modules/gis/dtos/simplify-polygon.dto.js.map +1 -0
  43. package/dist/cjs/modules/gis/dtos/update-zone.dto.js +9 -0
  44. package/dist/cjs/modules/gis/dtos/update-zone.dto.js.map +1 -0
  45. package/dist/cjs/modules/gis/dtos/zone-list-response.dto.js +59 -0
  46. package/dist/cjs/modules/gis/dtos/zone-list-response.dto.js.map +1 -0
  47. package/dist/cjs/modules/gis/dtos/zone-match-result.dto.js +66 -0
  48. package/dist/cjs/modules/gis/dtos/zone-match-result.dto.js.map +1 -0
  49. package/dist/cjs/modules/gis/dtos/zone-response.dto.js +153 -0
  50. package/dist/cjs/modules/gis/dtos/zone-response.dto.js.map +1 -0
  51. package/dist/cjs/modules/gis/dtos/zone-statistics-result.dto.js +45 -0
  52. package/dist/cjs/modules/gis/dtos/zone-statistics-result.dto.js.map +1 -0
  53. package/dist/cjs/modules/gis/dtos/zone-with-distance-result.dto.js +66 -0
  54. package/dist/cjs/modules/gis/dtos/zone-with-distance-result.dto.js.map +1 -0
  55. package/dist/cjs/modules/gis/enums/incident-routing-result-match-type.enum.js +11 -0
  56. package/dist/cjs/modules/gis/enums/incident-routing-result-match-type.enum.js.map +1 -0
  57. package/dist/cjs/modules/gis/enums/zone.enums.js +20 -0
  58. package/dist/cjs/modules/gis/enums/zone.enums.js.map +1 -0
  59. package/dist/cjs/modules/gis/index.js +54 -0
  60. package/dist/cjs/modules/gis/index.js.map +1 -0
  61. package/dist/cjs/modules/gis/interfaces/control-centre-routing-result.js +3 -0
  62. package/dist/cjs/modules/gis/interfaces/control-centre-routing-result.js.map +1 -0
  63. package/dist/cjs/modules/gis/interfaces/incident-routing-result.js +3 -0
  64. package/dist/cjs/modules/gis/interfaces/incident-routing-result.js.map +1 -0
  65. package/dist/cjs/modules/gis/interfaces/point-containment.js +3 -0
  66. package/dist/cjs/modules/gis/interfaces/point-containment.js.map +1 -0
  67. package/dist/cjs/modules/gis/interfaces/point-location.js +3 -0
  68. package/dist/cjs/modules/gis/interfaces/point-location.js.map +1 -0
  69. package/dist/cjs/modules/gis/interfaces/polygon-validation-result.js +3 -0
  70. package/dist/cjs/modules/gis/interfaces/polygon-validation-result.js.map +1 -0
  71. package/dist/cjs/modules/gis/interfaces/zone-for-point.js +3 -0
  72. package/dist/cjs/modules/gis/interfaces/zone-for-point.js.map +1 -0
  73. package/dist/cjs/modules/gis/interfaces/zone-match-result.js +3 -0
  74. package/dist/cjs/modules/gis/interfaces/zone-match-result.js.map +1 -0
  75. package/dist/cjs/modules/gis/interfaces/zone-near-point.js +3 -0
  76. package/dist/cjs/modules/gis/interfaces/zone-near-point.js.map +1 -0
  77. package/dist/cjs/modules/gis/interfaces/zone-statistics.js +3 -0
  78. package/dist/cjs/modules/gis/interfaces/zone-statistics.js.map +1 -0
  79. package/dist/cjs/modules/gis/interfaces/zone.js +7 -0
  80. package/dist/cjs/modules/gis/interfaces/zone.js.map +1 -0
  81. package/dist/cjs/modules/gis/validators/is-polygon.validator.js +34 -0
  82. package/dist/cjs/modules/gis/validators/is-polygon.validator.js.map +1 -0
  83. package/dist/cjs/modules/notification/enums/notification-priority.enum.js +11 -0
  84. package/dist/cjs/modules/notification/enums/notification-priority.enum.js.map +1 -0
  85. package/dist/cjs/modules/notification/enums/notification-type.enum.js +14 -0
  86. package/dist/cjs/modules/notification/enums/notification-type.enum.js.map +1 -0
  87. package/dist/cjs/modules/notification/index.js +19 -0
  88. package/dist/cjs/modules/notification/index.js.map +1 -0
  89. package/dist/cjs/modules/notification/interfaces/notification.js +3 -0
  90. package/dist/cjs/modules/notification/interfaces/notification.js.map +1 -0
  91. package/dist/esm/index.js +1 -0
  92. package/dist/esm/index.js.map +1 -1
  93. package/dist/esm/modules/gis/dtos/batch-route-incidents.dto.js +58 -0
  94. package/dist/esm/modules/gis/dtos/batch-route-incidents.dto.js.map +1 -0
  95. package/dist/esm/modules/gis/dtos/batch-route-point.dto.js +24 -0
  96. package/dist/esm/modules/gis/dtos/batch-route-point.dto.js.map +1 -0
  97. package/dist/esm/modules/gis/dtos/batch-routing-result.dto.js +29 -0
  98. package/dist/esm/modules/gis/dtos/batch-routing-result.dto.js.map +1 -0
  99. package/dist/esm/modules/gis/dtos/bounding-box.dto.js +49 -0
  100. package/dist/esm/modules/gis/dtos/bounding-box.dto.js.map +1 -0
  101. package/dist/esm/modules/gis/dtos/bulk-point-query-result.dto.js +30 -0
  102. package/dist/esm/modules/gis/dtos/bulk-point-query-result.dto.js.map +1 -0
  103. package/dist/esm/modules/gis/dtos/bulk-point-query.dto.js +53 -0
  104. package/dist/esm/modules/gis/dtos/bulk-point-query.dto.js.map +1 -0
  105. package/dist/esm/modules/gis/dtos/control-centre-routing-result.dto.js +56 -0
  106. package/dist/esm/modules/gis/dtos/control-centre-routing-result.dto.js.map +1 -0
  107. package/dist/esm/modules/gis/dtos/coordinate.dto.js +38 -0
  108. package/dist/esm/modules/gis/dtos/coordinate.dto.js.map +1 -0
  109. package/dist/esm/modules/gis/dtos/create-buffer.dto.js +39 -0
  110. package/dist/esm/modules/gis/dtos/create-buffer.dto.js.map +1 -0
  111. package/dist/esm/modules/gis/dtos/create-zone.dto.js +134 -0
  112. package/dist/esm/modules/gis/dtos/create-zone.dto.js.map +1 -0
  113. package/dist/esm/modules/gis/dtos/find-zone-for-point.dto.js +47 -0
  114. package/dist/esm/modules/gis/dtos/find-zone-for-point.dto.js.map +1 -0
  115. package/dist/esm/modules/gis/dtos/find-zones-near-point.dto.js +27 -0
  116. package/dist/esm/modules/gis/dtos/find-zones-near-point.dto.js.map +1 -0
  117. package/dist/esm/modules/gis/dtos/geo-json-polygon.dto.js +37 -0
  118. package/dist/esm/modules/gis/dtos/geo-json-polygon.dto.js.map +1 -0
  119. package/dist/esm/modules/gis/dtos/incident-routing-result.dto.js +71 -0
  120. package/dist/esm/modules/gis/dtos/incident-routing-result.dto.js.map +1 -0
  121. package/dist/esm/modules/gis/dtos/point-containment-result.dto.js +20 -0
  122. package/dist/esm/modules/gis/dtos/point-containment-result.dto.js.map +1 -0
  123. package/dist/esm/modules/gis/dtos/point-location.dto.js +38 -0
  124. package/dist/esm/modules/gis/dtos/point-location.dto.js.map +1 -0
  125. package/dist/esm/modules/gis/dtos/post-gis-geometry.dto.js +41 -0
  126. package/dist/esm/modules/gis/dtos/post-gis-geometry.dto.js.map +1 -0
  127. package/dist/esm/modules/gis/dtos/route-incident.dto.js +51 -0
  128. package/dist/esm/modules/gis/dtos/route-incident.dto.js.map +1 -0
  129. package/dist/esm/modules/gis/dtos/routing-coverage-result.dto.js +34 -0
  130. package/dist/esm/modules/gis/dtos/routing-coverage-result.dto.js.map +1 -0
  131. package/dist/esm/modules/gis/dtos/simplify-polygon.dto.js +53 -0
  132. package/dist/esm/modules/gis/dtos/simplify-polygon.dto.js.map +1 -0
  133. package/dist/esm/modules/gis/dtos/update-zone.dto.js +5 -0
  134. package/dist/esm/modules/gis/dtos/update-zone.dto.js.map +1 -0
  135. package/dist/esm/modules/gis/dtos/zone-list-response.dto.js +55 -0
  136. package/dist/esm/modules/gis/dtos/zone-list-response.dto.js.map +1 -0
  137. package/dist/esm/modules/gis/dtos/zone-match-result.dto.js +62 -0
  138. package/dist/esm/modules/gis/dtos/zone-match-result.dto.js.map +1 -0
  139. package/dist/esm/modules/gis/dtos/zone-response.dto.js +149 -0
  140. package/dist/esm/modules/gis/dtos/zone-response.dto.js.map +1 -0
  141. package/dist/esm/modules/gis/dtos/zone-statistics-result.dto.js +41 -0
  142. package/dist/esm/modules/gis/dtos/zone-statistics-result.dto.js.map +1 -0
  143. package/dist/esm/modules/gis/dtos/zone-with-distance-result.dto.js +62 -0
  144. package/dist/esm/modules/gis/dtos/zone-with-distance-result.dto.js.map +1 -0
  145. package/dist/esm/modules/gis/enums/incident-routing-result-match-type.enum.js +8 -0
  146. package/dist/esm/modules/gis/enums/incident-routing-result-match-type.enum.js.map +1 -0
  147. package/dist/esm/modules/gis/enums/zone.enums.js +17 -0
  148. package/dist/esm/modules/gis/enums/zone.enums.js.map +1 -0
  149. package/dist/esm/modules/gis/index.js +38 -0
  150. package/dist/esm/modules/gis/index.js.map +1 -0
  151. package/dist/esm/modules/gis/interfaces/control-centre-routing-result.js +2 -0
  152. package/dist/esm/modules/gis/interfaces/control-centre-routing-result.js.map +1 -0
  153. package/dist/esm/modules/gis/interfaces/incident-routing-result.js +2 -0
  154. package/dist/esm/modules/gis/interfaces/incident-routing-result.js.map +1 -0
  155. package/dist/esm/modules/gis/interfaces/point-containment.js +2 -0
  156. package/dist/esm/modules/gis/interfaces/point-containment.js.map +1 -0
  157. package/dist/esm/modules/gis/interfaces/point-location.js +2 -0
  158. package/dist/esm/modules/gis/interfaces/point-location.js.map +1 -0
  159. package/dist/esm/modules/gis/interfaces/polygon-validation-result.js +2 -0
  160. package/dist/esm/modules/gis/interfaces/polygon-validation-result.js.map +1 -0
  161. package/dist/esm/modules/gis/interfaces/zone-for-point.js +2 -0
  162. package/dist/esm/modules/gis/interfaces/zone-for-point.js.map +1 -0
  163. package/dist/esm/modules/gis/interfaces/zone-match-result.js +2 -0
  164. package/dist/esm/modules/gis/interfaces/zone-match-result.js.map +1 -0
  165. package/dist/esm/modules/gis/interfaces/zone-near-point.js +2 -0
  166. package/dist/esm/modules/gis/interfaces/zone-near-point.js.map +1 -0
  167. package/dist/esm/modules/gis/interfaces/zone-statistics.js +2 -0
  168. package/dist/esm/modules/gis/interfaces/zone-statistics.js.map +1 -0
  169. package/dist/esm/modules/gis/interfaces/zone.js +3 -0
  170. package/dist/esm/modules/gis/interfaces/zone.js.map +1 -0
  171. package/dist/esm/modules/gis/validators/is-polygon.validator.js +31 -0
  172. package/dist/esm/modules/gis/validators/is-polygon.validator.js.map +1 -0
  173. package/dist/esm/modules/notification/enums/notification-priority.enum.js +8 -0
  174. package/dist/esm/modules/notification/enums/notification-priority.enum.js.map +1 -0
  175. package/dist/esm/modules/notification/enums/notification-type.enum.js +11 -0
  176. package/dist/esm/modules/notification/enums/notification-type.enum.js.map +1 -0
  177. package/dist/esm/modules/notification/index.js +3 -0
  178. package/dist/esm/modules/notification/index.js.map +1 -0
  179. package/dist/esm/modules/notification/interfaces/notification.js +2 -0
  180. package/dist/esm/modules/notification/interfaces/notification.js.map +1 -0
  181. package/dist/types/index.d.ts +1 -0
  182. package/dist/types/interfaces/pagination.d.ts +3 -0
  183. package/dist/types/modules/gis/dtos/batch-route-incidents.dto.d.ts +7 -0
  184. package/dist/types/modules/gis/dtos/batch-route-point.dto.d.ts +4 -0
  185. package/dist/types/modules/gis/dtos/batch-routing-result.dto.d.ts +6 -0
  186. package/dist/types/modules/gis/dtos/bounding-box.dto.d.ts +6 -0
  187. package/dist/types/modules/gis/dtos/bulk-point-query-result.dto.d.ts +6 -0
  188. package/dist/types/modules/gis/dtos/bulk-point-query.dto.d.ts +6 -0
  189. package/dist/types/modules/gis/dtos/control-centre-routing-result.dto.d.ts +8 -0
  190. package/dist/types/modules/gis/dtos/coordinate.dto.d.ts +4 -0
  191. package/dist/types/modules/gis/dtos/create-buffer.dto.d.ts +5 -0
  192. package/dist/types/modules/gis/dtos/create-zone.dto.d.ts +15 -0
  193. package/dist/types/modules/gis/dtos/find-zone-for-point.dto.d.ts +6 -0
  194. package/dist/types/modules/gis/dtos/find-zones-near-point.dto.d.ts +4 -0
  195. package/dist/types/modules/gis/dtos/geo-json-polygon.dto.d.ts +11 -0
  196. package/dist/types/modules/gis/dtos/incident-routing-result.dto.d.ts +11 -0
  197. package/dist/types/modules/gis/dtos/point-containment-result.dto.d.ts +3 -0
  198. package/dist/types/modules/gis/dtos/point-location.dto.d.ts +4 -0
  199. package/dist/types/modules/gis/dtos/post-gis-geometry.dto.d.ts +5 -0
  200. package/dist/types/modules/gis/dtos/route-incident.dto.d.ts +6 -0
  201. package/dist/types/modules/gis/dtos/routing-coverage-result.dto.d.ts +5 -0
  202. package/dist/types/modules/gis/dtos/simplify-polygon.dto.d.ts +6 -0
  203. package/dist/types/modules/gis/dtos/update-zone.dto.d.ts +5 -0
  204. package/dist/types/modules/gis/dtos/zone-list-response.dto.d.ts +12 -0
  205. package/dist/types/modules/gis/dtos/zone-match-result.dto.d.ts +9 -0
  206. package/dist/types/modules/gis/dtos/zone-response.dto.d.ts +24 -0
  207. package/dist/types/modules/gis/dtos/zone-statistics-result.dto.d.ts +6 -0
  208. package/dist/types/modules/gis/dtos/zone-with-distance-result.dto.d.ts +9 -0
  209. package/dist/types/modules/gis/enums/incident-routing-result-match-type.enum.d.ts +6 -0
  210. package/dist/types/modules/gis/enums/zone.enums.d.ts +14 -0
  211. package/dist/types/modules/gis/index.d.ts +37 -0
  212. package/dist/types/modules/gis/interfaces/control-centre-routing-result.d.ts +8 -0
  213. package/dist/types/modules/gis/interfaces/incident-routing-result.d.ts +11 -0
  214. package/dist/types/modules/gis/interfaces/point-containment.d.ts +3 -0
  215. package/dist/types/modules/gis/interfaces/point-location.d.ts +4 -0
  216. package/dist/types/modules/gis/interfaces/polygon-validation-result.d.ts +9 -0
  217. package/dist/types/modules/gis/interfaces/zone-for-point.d.ts +7 -0
  218. package/dist/types/modules/gis/interfaces/zone-match-result.d.ts +9 -0
  219. package/dist/types/modules/gis/interfaces/zone-near-point.d.ts +8 -0
  220. package/dist/types/modules/gis/interfaces/zone-statistics.d.ts +6 -0
  221. package/dist/types/modules/gis/interfaces/zone.d.ts +24 -0
  222. package/dist/types/modules/gis/validators/is-polygon.validator.d.ts +2 -0
  223. package/dist/types/modules/notification/enums/notification-priority.enum.d.ts +6 -0
  224. package/dist/types/modules/notification/enums/notification-type.enum.d.ts +9 -0
  225. package/dist/types/modules/notification/index.d.ts +2 -0
  226. package/dist/types/modules/notification/interfaces/notification.d.ts +16 -0
  227. package/package.json +3 -1
@@ -0,0 +1,149 @@
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 { ZoneStatus, ZoneType } from "../enums/zone.enums";
11
+ import { ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
12
+ export class ZoneResponseDto {
13
+ }
14
+ __decorate([
15
+ ApiProperty({
16
+ description: 'Unique identifier for the zone',
17
+ example: 42
18
+ }),
19
+ __metadata("design:type", Number)
20
+ ], ZoneResponseDto.prototype, "id", void 0);
21
+ __decorate([
22
+ ApiProperty({
23
+ description: 'Name of the zone',
24
+ example: 'Downtown District'
25
+ }),
26
+ __metadata("design:type", String)
27
+ ], ZoneResponseDto.prototype, "name", void 0);
28
+ __decorate([
29
+ ApiPropertyOptional({
30
+ description: 'Detailed description of the zone',
31
+ example: 'Primary response zone for downtown emergency services'
32
+ }),
33
+ __metadata("design:type", String)
34
+ ], ZoneResponseDto.prototype, "description", void 0);
35
+ __decorate([
36
+ ApiProperty({
37
+ description: 'Type of zone',
38
+ enum: ZoneType,
39
+ example: ZoneType.PRIMARY
40
+ }),
41
+ __metadata("design:type", String)
42
+ ], ZoneResponseDto.prototype, "type", void 0);
43
+ __decorate([
44
+ ApiProperty({
45
+ description: 'Current status of the zone',
46
+ enum: ZoneStatus,
47
+ example: ZoneStatus.ACTIVE
48
+ }),
49
+ __metadata("design:type", String)
50
+ ], ZoneResponseDto.prototype, "status", void 0);
51
+ __decorate([
52
+ ApiProperty({
53
+ description: 'Priority level for zone routing (lower is higher priority)',
54
+ example: 1
55
+ }),
56
+ __metadata("design:type", Number)
57
+ ], ZoneResponseDto.prototype, "priority", void 0);
58
+ __decorate([
59
+ ApiProperty({
60
+ description: 'ID of the control centre that owns this zone',
61
+ example: 1
62
+ }),
63
+ __metadata("design:type", Number)
64
+ ], ZoneResponseDto.prototype, "controlCentreId", void 0);
65
+ __decorate([
66
+ ApiProperty({
67
+ description: 'ID of the organization that owns this zone',
68
+ example: 1
69
+ }),
70
+ __metadata("design:type", Number)
71
+ ], ZoneResponseDto.prototype, "organizationId", void 0);
72
+ __decorate([
73
+ ApiProperty({
74
+ description: 'GeoJSON polygon defining the zone boundary',
75
+ example: {
76
+ type: 'Polygon',
77
+ coordinates: [[[-74.0060, 40.7128], [-74.0050, 40.7128], [-74.0050, 40.7138], [-74.0060, 40.7138], [-74.0060, 40.7128]]]
78
+ }
79
+ }),
80
+ __metadata("design:type", Object)
81
+ ], ZoneResponseDto.prototype, "geoJson", void 0);
82
+ __decorate([
83
+ ApiPropertyOptional({
84
+ description: 'Calculated area of the zone in square meters',
85
+ example: 1500000.5
86
+ }),
87
+ __metadata("design:type", Number)
88
+ ], ZoneResponseDto.prototype, "areaSquareMeters", void 0);
89
+ __decorate([
90
+ ApiPropertyOptional({
91
+ description: 'Geographic center point of the zone',
92
+ example: { lat: 40.7128, lng: -74.0060 }
93
+ }),
94
+ __metadata("design:type", Object)
95
+ ], ZoneResponseDto.prototype, "centroid", void 0);
96
+ __decorate([
97
+ ApiPropertyOptional({
98
+ description: 'Custom attributes for the zone',
99
+ example: { color: '#FF0000', population: 50000 }
100
+ }),
101
+ __metadata("design:type", Object)
102
+ ], ZoneResponseDto.prototype, "attributes", void 0);
103
+ __decorate([
104
+ ApiPropertyOptional({
105
+ description: 'Date when the zone becomes effective',
106
+ type: Date,
107
+ example: '2026-01-01T00:00:00Z'
108
+ }),
109
+ __metadata("design:type", Date)
110
+ ], ZoneResponseDto.prototype, "effectiveFrom", void 0);
111
+ __decorate([
112
+ ApiPropertyOptional({
113
+ description: 'Date when the zone expires',
114
+ type: Date,
115
+ example: '2026-12-31T23:59:59Z'
116
+ }),
117
+ __metadata("design:type", Date)
118
+ ], ZoneResponseDto.prototype, "effectiveUntil", void 0);
119
+ __decorate([
120
+ ApiProperty({
121
+ description: 'Timestamp when the zone was created',
122
+ type: Date,
123
+ example: '2026-01-01T00:00:00Z'
124
+ }),
125
+ __metadata("design:type", Date)
126
+ ], ZoneResponseDto.prototype, "createdAt", void 0);
127
+ __decorate([
128
+ ApiProperty({
129
+ description: 'Timestamp when the zone was last updated',
130
+ type: Date,
131
+ example: '2026-01-08T10:30:00Z'
132
+ }),
133
+ __metadata("design:type", Date)
134
+ ], ZoneResponseDto.prototype, "updatedAt", void 0);
135
+ __decorate([
136
+ ApiPropertyOptional({
137
+ description: 'ID of the user who created the zone',
138
+ example: 123
139
+ }),
140
+ __metadata("design:type", Number)
141
+ ], ZoneResponseDto.prototype, "createdBy", void 0);
142
+ __decorate([
143
+ ApiPropertyOptional({
144
+ description: 'ID of the user who last updated the zone',
145
+ example: 456
146
+ }),
147
+ __metadata("design:type", Number)
148
+ ], ZoneResponseDto.prototype, "updatedBy", void 0);
149
+ //# sourceMappingURL=zone-response.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-response.dto.js","sourceRoot":"","sources":["../../../../../src/modules/gis/dtos/zone-response.dto.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
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 } from "@nestjs/swagger";
11
+ export class ZoneStatisticsResultDto {
12
+ }
13
+ __decorate([
14
+ ApiProperty({
15
+ description: 'Calculated area of the zone in square meters',
16
+ example: 1500000.5
17
+ }),
18
+ __metadata("design:type", Number)
19
+ ], ZoneStatisticsResultDto.prototype, "areaSquareMeters", void 0);
20
+ __decorate([
21
+ ApiProperty({
22
+ description: 'Calculated perimeter of the zone in meters',
23
+ example: 5000.25
24
+ }),
25
+ __metadata("design:type", Number)
26
+ ], ZoneStatisticsResultDto.prototype, "perimeterMeters", void 0);
27
+ __decorate([
28
+ ApiProperty({
29
+ description: 'Latitude of the zone centroid',
30
+ example: 40.7128
31
+ }),
32
+ __metadata("design:type", Number)
33
+ ], ZoneStatisticsResultDto.prototype, "centroidLat", void 0);
34
+ __decorate([
35
+ ApiProperty({
36
+ description: 'Longitude of the zone centroid',
37
+ example: -74.0060
38
+ }),
39
+ __metadata("design:type", Number)
40
+ ], ZoneStatisticsResultDto.prototype, "centroidLng", void 0);
41
+ //# sourceMappingURL=zone-statistics-result.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-statistics-result.dto.js","sourceRoot":"","sources":["../../../../../src/modules/gis/dtos/zone-statistics-result.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,OAAO,uBAAuB;CAwBnC;AAnBG;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,8CAA8C;QAC3D,OAAO,EAAE,SAAS;KACrB,CAAC;;iEACwB;AAM1B;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,4CAA4C;QACzD,OAAO,EAAE,OAAO;KACnB,CAAC;;gEACuB;AAMzB;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,+BAA+B;QAC5C,OAAO,EAAE,OAAO;KACnB,CAAC;;4DACmB;AAMrB;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,gCAAgC;QAC7C,OAAO,EAAE,CAAC,OAAO;KACpB,CAAC;;4DACmB"}
@@ -0,0 +1,62 @@
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 } from "@nestjs/swagger";
11
+ export class ZoneWithDistanceResultDto {
12
+ }
13
+ __decorate([
14
+ ApiProperty({
15
+ description: 'ID of the zone',
16
+ example: 42
17
+ }),
18
+ __metadata("design:type", Number)
19
+ ], ZoneWithDistanceResultDto.prototype, "zoneId", void 0);
20
+ __decorate([
21
+ ApiProperty({
22
+ description: 'Name of the zone',
23
+ example: 'Downtown District'
24
+ }),
25
+ __metadata("design:type", String)
26
+ ], ZoneWithDistanceResultDto.prototype, "zoneName", void 0);
27
+ __decorate([
28
+ ApiProperty({
29
+ description: 'ID of the control centre that owns the zone',
30
+ example: 1
31
+ }),
32
+ __metadata("design:type", Number)
33
+ ], ZoneWithDistanceResultDto.prototype, "controlCentreId", void 0);
34
+ __decorate([
35
+ ApiProperty({
36
+ description: 'ID of the organization that owns the control centre',
37
+ example: 1
38
+ }),
39
+ __metadata("design:type", Number)
40
+ ], ZoneWithDistanceResultDto.prototype, "organizationId", void 0);
41
+ __decorate([
42
+ ApiProperty({
43
+ description: 'Priority level of the zone',
44
+ example: 1
45
+ }),
46
+ __metadata("design:type", Number)
47
+ ], ZoneWithDistanceResultDto.prototype, "priority", void 0);
48
+ __decorate([
49
+ ApiProperty({
50
+ description: 'Type of zone (PRIMARY, SECONDARY, BACKUP)',
51
+ example: 'PRIMARY'
52
+ }),
53
+ __metadata("design:type", String)
54
+ ], ZoneWithDistanceResultDto.prototype, "zoneType", void 0);
55
+ __decorate([
56
+ ApiProperty({
57
+ description: 'Distance in meters from the query point to the zone',
58
+ example: 150.5
59
+ }),
60
+ __metadata("design:type", Number)
61
+ ], ZoneWithDistanceResultDto.prototype, "distance", void 0);
62
+ //# sourceMappingURL=zone-with-distance-result.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-with-distance-result.dto.js","sourceRoot":"","sources":["../../../../../src/modules/gis/dtos/zone-with-distance-result.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,OAAO,yBAAyB;CA0CrC;AArCG;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,EAAE;KACd,CAAC;;yDACc;AAMhB;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,kBAAkB;QAC/B,OAAO,EAAE,mBAAmB;KAC/B,CAAC;;2DACgB;AAMlB;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,6CAA6C;QAC1D,OAAO,EAAE,CAAC;KACb,CAAC;;kEACuB;AAMzB;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE,CAAC;KACb,CAAC;;iEACsB;AAMxB;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,4BAA4B;QACzC,OAAO,EAAE,CAAC;KACb,CAAC;;2DACgB;AAMlB;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,2CAA2C;QACxD,OAAO,EAAE,SAAS;KACrB,CAAC;;2DACgB;AAMlB;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE,KAAK;KACjB,CAAC;;2DACgB"}
@@ -0,0 +1,8 @@
1
+ export var IncidentRoutingResultMatchType;
2
+ (function (IncidentRoutingResultMatchType) {
3
+ IncidentRoutingResultMatchType["EXACT"] = "exact";
4
+ IncidentRoutingResultMatchType["NEAREST"] = "nearest";
5
+ IncidentRoutingResultMatchType["FALLBACK"] = "fallback";
6
+ IncidentRoutingResultMatchType["NONE"] = "none";
7
+ })(IncidentRoutingResultMatchType || (IncidentRoutingResultMatchType = {}));
8
+ //# sourceMappingURL=incident-routing-result-match-type.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incident-routing-result-match-type.enum.js","sourceRoot":"","sources":["../../../../../src/modules/gis/enums/incident-routing-result-match-type.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,8BAKX;AALD,WAAY,8BAA8B;IACtC,iDAAe,CAAA;IACf,qDAAmB,CAAA;IACnB,uDAAqB,CAAA;IACrB,+CAAa,CAAA;AACjB,CAAC,EALW,8BAA8B,KAA9B,8BAA8B,QAKzC"}
@@ -0,0 +1,17 @@
1
+ export var ZoneType;
2
+ (function (ZoneType) {
3
+ ZoneType["PRIMARY"] = "PRIMARY";
4
+ ZoneType["SECONDARY"] = "SECONDARY";
5
+ ZoneType["BACKUP"] = "BACKUP";
6
+ ZoneType["TEMPORARY"] = "TEMPORARY";
7
+ ZoneType["EXCLUSION"] = "EXCLUSION"; // Exclusion zone where incidents should NOT be routed
8
+ })(ZoneType || (ZoneType = {}));
9
+ export var ZoneStatus;
10
+ (function (ZoneStatus) {
11
+ ZoneStatus["ACTIVE"] = "ACTIVE";
12
+ ZoneStatus["INACTIVE"] = "INACTIVE";
13
+ ZoneStatus["DRAFT"] = "DRAFT";
14
+ ZoneStatus["ARCHIVED"] = "ARCHIVED";
15
+ ZoneStatus["PENDING_APPROVAL"] = "PENDING_APPROVAL"; // Zone is pending approval
16
+ })(ZoneStatus || (ZoneStatus = {}));
17
+ //# sourceMappingURL=zone.enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone.enums.js","sourceRoot":"","sources":["../../../../../src/modules/gis/enums/zone.enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAChB,+BAAmB,CAAA;IACnB,mCAAuB,CAAA;IACvB,6BAAiB,CAAA;IACjB,mCAAuB,CAAA;IACvB,mCAAuB,CAAA,CAAC,sDAAsD;AAClF,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAED,MAAM,CAAN,IAAY,UAMX;AAND,WAAY,UAAU;IAClB,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,6BAAe,CAAA;IACf,mCAAqB,CAAA;IACrB,mDAAqC,CAAA,CAAC,2BAA2B;AACrE,CAAC,EANW,UAAU,KAAV,UAAU,QAMrB"}
@@ -0,0 +1,38 @@
1
+ export * from './dtos/batch-route-incidents.dto';
2
+ export * from './dtos/batch-route-point.dto';
3
+ export * from './dtos/batch-routing-result.dto';
4
+ export * from './dtos/bounding-box.dto';
5
+ export * from './dtos/bulk-point-query.dto';
6
+ export * from './dtos/bulk-point-query-result.dto';
7
+ export * from './dtos/control-centre-routing-result.dto';
8
+ export * from './dtos/coordinate.dto';
9
+ export * from './dtos/create-buffer.dto';
10
+ export * from './dtos/create-zone.dto';
11
+ export * from './dtos/find-zone-for-point.dto';
12
+ export * from './dtos/find-zones-near-point.dto';
13
+ export * from './dtos/geo-json-polygon.dto';
14
+ export * from './dtos/point-containment-result.dto';
15
+ export * from './dtos/point-location.dto';
16
+ export * from './dtos/post-gis-geometry.dto';
17
+ export * from './dtos/route-incident.dto';
18
+ export * from './dtos/routing-coverage-result.dto';
19
+ export * from './dtos/simplify-polygon.dto';
20
+ export * from './dtos/update-zone.dto';
21
+ export * from './dtos/zone-list-response.dto';
22
+ export * from './dtos/zone-match-result.dto';
23
+ export * from './dtos/zone-response.dto';
24
+ export * from './dtos/zone-statistics-result.dto';
25
+ export * from './dtos/zone-with-distance-result.dto';
26
+ export * from './enums/incident-routing-result-match-type.enum';
27
+ export * from './enums/zone.enums';
28
+ export * from './interfaces/control-centre-routing-result';
29
+ export * from './interfaces/incident-routing-result';
30
+ export * from './interfaces/point-containment';
31
+ export * from './interfaces/point-location';
32
+ export * from './interfaces/polygon-validation-result';
33
+ export * from './interfaces/zone';
34
+ export * from './interfaces/zone-for-point';
35
+ export * from './interfaces/zone-match-result';
36
+ export * from './interfaces/zone-near-point';
37
+ export * from './interfaces/zone-statistics';
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/gis/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qCAAqC,CAAC;AACpD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AACrD,cAAc,iDAAiD,CAAC;AAChE,cAAc,oBAAoB,CAAC;AACnC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=control-centre-routing-result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-centre-routing-result.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/control-centre-routing-result.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=incident-routing-result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incident-routing-result.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/incident-routing-result.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=point-containment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"point-containment.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/point-containment.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=point-location.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"point-location.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/point-location.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=polygon-validation-result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"polygon-validation-result.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/polygon-validation-result.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=zone-for-point.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-for-point.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/zone-for-point.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=zone-match-result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-match-result.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/zone-match-result.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=zone-near-point.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-near-point.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/zone-near-point.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=zone-statistics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-statistics.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/zone-statistics.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export class Zone {
2
+ }
3
+ //# sourceMappingURL=zone.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone.js","sourceRoot":"","sources":["../../../../../src/modules/gis/interfaces/zone.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,IAAI;CAsBhB"}
@@ -0,0 +1,31 @@
1
+ import { registerDecorator } from 'class-validator';
2
+ export function IsPolygon(validationOptions) {
3
+ return function (object, propertyName) {
4
+ registerDecorator({
5
+ name: 'isPolygon',
6
+ target: object.constructor,
7
+ propertyName: propertyName,
8
+ options: validationOptions,
9
+ validator: {
10
+ validate(value, args) {
11
+ if (!value || typeof value !== 'object')
12
+ return false;
13
+ if (value.type !== 'Polygon')
14
+ return false;
15
+ if (!Array.isArray(value.coordinates))
16
+ return false;
17
+ if (value.coordinates.length === 0)
18
+ return false;
19
+ // Validate each ring is an array of coordinate pairs
20
+ return value.coordinates.every((ring) => Array.isArray(ring) &&
21
+ ring.length >= 4 && // Minimum 4 points for closed polygon
22
+ ring.every((coord) => Array.isArray(coord) && coord.length >= 2));
23
+ },
24
+ defaultMessage(args) {
25
+ return `${args.property} must be a valid GeoJSON Polygon`;
26
+ }
27
+ }
28
+ });
29
+ };
30
+ }
31
+ //# sourceMappingURL=is-polygon.validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-polygon.validator.js","sourceRoot":"","sources":["../../../../../src/modules/gis/validators/is-polygon.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAA0C,MAAM,iBAAiB,CAAC;AAE5F,MAAM,UAAU,SAAS,CAAC,iBAAqC;IAC3D,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,iBAAiB,CAAC;YACd,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE;gBACP,QAAQ,CAAC,KAAU,EAAE,IAAyB;oBAC1C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;wBAAE,OAAO,KAAK,CAAC;oBACtD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;wBAAE,OAAO,KAAK,CAAC;oBAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;wBAAE,OAAO,KAAK,CAAC;oBACpD,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAEjD,qDAAqD;oBACrD,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAS,EAAE,EAAE,CACzC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;wBACnB,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,sCAAsC;wBAC1D,IAAI,CAAC,KAAK,CAAC,CAAC,KAAU,EAAE,EAAE,CACtB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,CAC5C,CACJ,CAAC;gBACN,CAAC;gBACD,cAAc,CAAC,IAAyB;oBACpC,OAAO,GAAG,IAAI,CAAC,QAAQ,kCAAkC,CAAC;gBAC9D,CAAC;aACJ;SACJ,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,8 @@
1
+ export var NotificationPriority;
2
+ (function (NotificationPriority) {
3
+ NotificationPriority["LOW"] = "Low";
4
+ NotificationPriority["MEDIUM"] = "Medium";
5
+ NotificationPriority["HIGH"] = "High";
6
+ NotificationPriority["CRITICAL"] = "Critical";
7
+ })(NotificationPriority || (NotificationPriority = {}));
8
+ //# sourceMappingURL=notification-priority.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification-priority.enum.js","sourceRoot":"","sources":["../../../../../src/modules/notification/enums/notification-priority.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,mCAAW,CAAA;IACX,yCAAiB,CAAA;IACjB,qCAAa,CAAA;IACb,6CAAqB,CAAA;AACvB,CAAC,EALW,oBAAoB,KAApB,oBAAoB,QAK/B"}
@@ -0,0 +1,11 @@
1
+ export var NotificationType;
2
+ (function (NotificationType) {
3
+ NotificationType["INCIDENT_CREATED"] = "INCIDENT_CREATED";
4
+ NotificationType["INCIDENT_UPDATED"] = "INCIDENT_UPDATED";
5
+ NotificationType["INCIDENT_ASSIGNED"] = "INCIDENT_ASSIGNED";
6
+ NotificationType["INCIDENT_STATUS_CHANGED"] = "INCIDENT_STATUS_CHANGED";
7
+ NotificationType["INCIDENT_RESPONSE_UNIT_ASSIGNED"] = "INCIDENT_RESPONSE_UNIT_ASSIGNED";
8
+ NotificationType["INCIDENT_REPORT_CREATED"] = "INCIDENT_REPORT_CREATED";
9
+ NotificationType["INCIDENT_WITHDRAWN"] = "INCIDENT_WITHDRAWN";
10
+ })(NotificationType || (NotificationType = {}));
11
+ //# sourceMappingURL=notification-type.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification-type.enum.js","sourceRoot":"","sources":["../../../../../src/modules/notification/enums/notification-type.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,gBAQX;AARD,WAAY,gBAAgB;IAC1B,yDAAqC,CAAA;IACrC,yDAAqC,CAAA;IACrC,2DAAuC,CAAA;IACvC,uEAAmD,CAAA;IACnD,uFAAmE,CAAA;IACnE,uEAAmD,CAAA;IACnD,6DAAyC,CAAA;AAC3C,CAAC,EARW,gBAAgB,KAAhB,gBAAgB,QAQ3B"}
@@ -0,0 +1,3 @@
1
+ export * from './enums/notification-type.enum';
2
+ export * from './enums/notification-type.enum';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/notification/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=notification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification.js","sourceRoot":"","sources":["../../../../../src/modules/notification/interfaces/notification.ts"],"names":[],"mappings":""}
@@ -11,6 +11,7 @@ export * from './modules/incident/index';
11
11
  export * from './modules/workflow/index';
12
12
  export * from './modules/dms/index';
13
13
  export * from './modules/sms/index';
14
+ export * from './modules/gis/index';
14
15
  export * from './interfaces/server-message';
15
16
  export * from './interfaces/i-request-with-user';
16
17
  export * from './interfaces/validated-user';
@@ -1,4 +1,5 @@
1
1
  import { ControlCentre } from "../modules/control-centre";
2
+ import { Zone } from "../modules/gis/interfaces/zone";
2
3
  import { Incident, IncidentReport } from "../modules/incident";
3
4
  import { Organization } from "../modules/organization";
4
5
  import { ResponseUnit } from "../modules/response-unit";
@@ -33,3 +34,5 @@ export interface IncidentReportList extends PaginatedResponse<IncidentReport> {
33
34
  }
34
35
  export interface ResponseUnitList extends PaginatedResponse<ResponseUnit> {
35
36
  }
37
+ export interface ZoneList extends PaginatedResponse<Zone> {
38
+ }
@@ -0,0 +1,7 @@
1
+ import { BatchRoutePointDto } from "./batch-route-point.dto";
2
+ import { RouteIncidentDto } from "./route-incident.dto";
3
+ export declare class BatchRouteIncidentsDto {
4
+ points: BatchRoutePointDto[];
5
+ routingOptions?: Partial<RouteIncidentDto>;
6
+ concurrencyLimit: number;
7
+ }
@@ -0,0 +1,4 @@
1
+ import { PointLocationDto } from "./point-location.dto";
2
+ export declare class BatchRoutePointDto extends PointLocationDto {
3
+ id?: string;
4
+ }
@@ -0,0 +1,6 @@
1
+ import { BatchRoutePointDto } from "./batch-route-point.dto";
2
+ import { IncidentRoutingResultDto } from "./incident-routing-result.dto";
3
+ export declare class BatchRoutingResultDto {
4
+ point: BatchRoutePointDto;
5
+ result: IncidentRoutingResultDto;
6
+ }
@@ -0,0 +1,6 @@
1
+ export declare class BoundingBoxDto {
2
+ minLng: number;
3
+ minLat: number;
4
+ maxLng: number;
5
+ maxLat: number;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { PointLocationDto } from "./point-location.dto";
2
+ import { ZoneMatchResultDto } from "./zone-match-result.dto";
3
+ export declare class BulkPointQueryResultDto {
4
+ point: PointLocationDto;
5
+ zones: ZoneMatchResultDto[];
6
+ }
@@ -0,0 +1,6 @@
1
+ import { PointLocationDto } from "./point-location.dto";
2
+ export declare class BulkPointQueryDto {
3
+ points: PointLocationDto[];
4
+ organizationId?: number;
5
+ activeOnly: boolean;
6
+ }
@@ -0,0 +1,8 @@
1
+ export declare class ControlCentreRoutingResultDto {
2
+ controlCentreId: number;
3
+ organizationId: number;
4
+ zoneName: string;
5
+ zoneId: number;
6
+ priority: number;
7
+ matchedAt: Date;
8
+ }
@@ -0,0 +1,4 @@
1
+ export declare class CoordinateDto {
2
+ lng: number;
3
+ lat: number;
4
+ }
@@ -0,0 +1,5 @@
1
+ import { Polygon } from "geojson";
2
+ export declare class CreateBufferDto {
3
+ polygon: Polygon;
4
+ radiusMeters: number;
5
+ }
@@ -0,0 +1,15 @@
1
+ import { ZoneStatus, ZoneType } from "../enums/zone.enums";
2
+ import { GeoJsonPolygonDto } from "./geo-json-polygon.dto";
3
+ export declare class CreateZoneDto {
4
+ name: string;
5
+ description?: string;
6
+ type: ZoneType;
7
+ status: ZoneStatus;
8
+ priority?: number;
9
+ controlCentreId: number;
10
+ organizationId: number;
11
+ geoJson: GeoJsonPolygonDto;
12
+ attributes?: Record<string, any>;
13
+ effectiveFrom?: Date;
14
+ effectiveUntil?: Date;
15
+ }