tabletcommand-backend-models 5.39.7 → 7.0.1

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 (576) hide show
  1. package/build/constants.js +24 -1
  2. package/build/constants.js.map +1 -1
  3. package/build/helpers.js +21 -22
  4. package/build/helpers.js.map +1 -1
  5. package/build/index.js +4 -3
  6. package/build/index.js.map +1 -1
  7. package/build/models/action-log.js +5 -8
  8. package/build/models/action-log.js.map +1 -1
  9. package/build/models/agency.js +9 -11
  10. package/build/models/agency.js.map +1 -1
  11. package/build/models/arcgis-group.js +8 -12
  12. package/build/models/arcgis-group.js.map +1 -1
  13. package/build/models/assignment.js +8 -10
  14. package/build/models/assignment.js.map +1 -1
  15. package/build/models/battalion.js +25 -25
  16. package/build/models/battalion.js.map +1 -1
  17. package/build/models/beacon-log.js +5 -8
  18. package/build/models/beacon-log.js.map +1 -1
  19. package/build/models/cad-incident-block.js +4 -8
  20. package/build/models/cad-incident-block.js.map +1 -1
  21. package/build/models/cad-incident-stream.js +4 -7
  22. package/build/models/cad-incident-stream.js.map +1 -1
  23. package/build/models/cad-incident.js +1 -5
  24. package/build/models/cad-incident.js.map +1 -1
  25. package/build/models/cad-simulation.js +11 -15
  26. package/build/models/cad-simulation.js.map +1 -1
  27. package/build/models/cad-status-map.js +4 -8
  28. package/build/models/cad-status-map.js.map +1 -1
  29. package/build/models/cad-status.js +5 -9
  30. package/build/models/cad-status.js.map +1 -1
  31. package/build/models/cad-vehicle-status-history.js +3 -8
  32. package/build/models/cad-vehicle-status-history.js.map +1 -1
  33. package/build/models/cad-vehicle-status.js +4 -9
  34. package/build/models/cad-vehicle-status.js.map +1 -1
  35. package/build/models/cad-vehicle.js +4 -8
  36. package/build/models/cad-vehicle.js.map +1 -1
  37. package/build/models/chart-device-stats.js +6 -11
  38. package/build/models/chart-device-stats.js.map +1 -1
  39. package/build/models/chart-incident.js +6 -11
  40. package/build/models/chart-incident.js.map +1 -1
  41. package/build/models/chart-managed-incident.js +6 -11
  42. package/build/models/chart-managed-incident.js.map +1 -1
  43. package/build/models/chart-user.js +5 -10
  44. package/build/models/chart-user.js.map +1 -1
  45. package/build/models/checklist-item.js +10 -16
  46. package/build/models/checklist-item.js.map +1 -1
  47. package/build/models/checklist.js +11 -17
  48. package/build/models/checklist.js.map +1 -1
  49. package/build/models/csv-import.js +5 -9
  50. package/build/models/csv-import.js.map +1 -1
  51. package/build/models/department.js +200 -207
  52. package/build/models/department.js.map +1 -1
  53. package/build/models/device-mapping.js +5 -9
  54. package/build/models/device-mapping.js.map +1 -1
  55. package/build/models/esri.js +12 -21
  56. package/build/models/esri.js.map +1 -1
  57. package/build/models/gst-mapping.js +5 -9
  58. package/build/models/gst-mapping.js.map +1 -1
  59. package/build/models/incident-event.js +10 -13
  60. package/build/models/incident-event.js.map +1 -1
  61. package/build/models/incident-notified.js +7 -11
  62. package/build/models/incident-notified.js.map +1 -1
  63. package/build/models/incident-takeover.js +5 -10
  64. package/build/models/incident-takeover.js.map +1 -1
  65. package/build/models/job-log.js +5 -9
  66. package/build/models/job-log.js.map +1 -1
  67. package/build/models/location.js +5 -10
  68. package/build/models/location.js.map +1 -1
  69. package/build/models/mail-log.js +5 -9
  70. package/build/models/mail-log.js.map +1 -1
  71. package/build/models/managed-incident.js +15 -23
  72. package/build/models/managed-incident.js.map +1 -1
  73. package/build/models/mark43-incident-retry.js +5 -9
  74. package/build/models/mark43-incident-retry.js.map +1 -1
  75. package/build/models/message.js +6 -10
  76. package/build/models/message.js.map +1 -1
  77. package/build/models/monitor.js +5 -9
  78. package/build/models/monitor.js.map +1 -1
  79. package/build/models/personnel-import.js +10 -13
  80. package/build/models/personnel-import.js.map +1 -1
  81. package/build/models/personnel-known.js +7 -9
  82. package/build/models/personnel-known.js.map +1 -1
  83. package/build/models/personnel-roster.js +5 -7
  84. package/build/models/personnel-roster.js.map +1 -1
  85. package/build/models/rate-limit.js +5 -9
  86. package/build/models/rate-limit.js.map +1 -1
  87. package/build/models/release-note.js +5 -10
  88. package/build/models/release-note.js.map +1 -1
  89. package/build/models/remote-log-stream.js +4 -8
  90. package/build/models/remote-log-stream.js.map +1 -1
  91. package/build/models/remote-log.js +4 -8
  92. package/build/models/remote-log.js.map +1 -1
  93. package/build/models/schema/agency-cron-config.js +6 -7
  94. package/build/models/schema/agency-cron-config.js.map +1 -1
  95. package/build/models/schema/agency-saml.js +1 -2
  96. package/build/models/schema/agency-saml.js.map +1 -1
  97. package/build/models/schema/cad-incident.js +72 -30
  98. package/build/models/schema/cad-incident.js.map +1 -1
  99. package/build/models/schema/cad-status-option-selected.js +1 -2
  100. package/build/models/schema/cad-status-option-selected.js.map +1 -1
  101. package/build/models/schema/color.js +1 -2
  102. package/build/models/schema/color.js.map +1 -1
  103. package/build/models/schema/esri-auth.js +2 -3
  104. package/build/models/schema/esri-auth.js.map +1 -1
  105. package/build/models/schema/esri-error.js +1 -2
  106. package/build/models/schema/esri-error.js.map +1 -1
  107. package/build/models/schema/esri-map.js +4 -5
  108. package/build/models/schema/esri-map.js.map +1 -1
  109. package/build/models/schema/firemapper-auth.js +2 -3
  110. package/build/models/schema/firemapper-auth.js.map +1 -1
  111. package/build/models/schema/geojson-point.js +1 -2
  112. package/build/models/schema/geojson-point.js.map +1 -1
  113. package/build/models/schema/oauth.js +1 -2
  114. package/build/models/schema/oauth.js.map +1 -1
  115. package/build/models/schema/pubnub-token.js +2 -2
  116. package/build/models/schema/pubnub-token.js.map +1 -1
  117. package/build/models/schema/remote-file.js +1 -1
  118. package/build/models/schema/remote-file.js.map +1 -1
  119. package/build/models/schema/shared-incident.js +7 -7
  120. package/build/models/schema/shared-incident.js.map +1 -1
  121. package/build/models/schema/validation-error-item.js +1 -1
  122. package/build/models/schema/validation-error-item.js.map +1 -1
  123. package/build/models/session.js +7 -15
  124. package/build/models/session.js.map +1 -1
  125. package/build/models/smtp-unhandled.js +5 -10
  126. package/build/models/smtp-unhandled.js.map +1 -1
  127. package/build/models/template.js +12 -16
  128. package/build/models/template.js.map +1 -1
  129. package/build/models/user-device.js +10 -14
  130. package/build/models/user-device.js.map +1 -1
  131. package/build/models/user-registration.js +3 -6
  132. package/build/models/user-registration.js.map +1 -1
  133. package/build/models/user.js +13 -16
  134. package/build/models/user.js.map +1 -1
  135. package/build/models/validation-report.js +7 -10
  136. package/build/models/validation-report.js.map +1 -1
  137. package/build/test/arcgis-group.js +7 -3
  138. package/build/test/arcgis-group.js.map +1 -1
  139. package/build/test/mock.js +7 -1
  140. package/build/test/mock.js.map +1 -1
  141. package/build/types/action-log.js +3 -0
  142. package/build/types/action-log.js.map +1 -0
  143. package/build/types/agency.js +3 -0
  144. package/build/types/agency.js.map +1 -0
  145. package/build/types/arcgis-group.js +3 -0
  146. package/build/types/arcgis-group.js.map +1 -0
  147. package/build/types/assignment.js +3 -0
  148. package/build/types/assignment.js.map +1 -0
  149. package/build/types/battalion.js +3 -0
  150. package/build/types/battalion.js.map +1 -0
  151. package/build/types/beacon-log.js +3 -0
  152. package/build/types/beacon-log.js.map +1 -0
  153. package/build/types/cad-incident.js +3 -0
  154. package/build/types/cad-incident.js.map +1 -0
  155. package/build/types/cad.js +3 -0
  156. package/build/types/cad.js.map +1 -0
  157. package/build/types/chart.js +3 -0
  158. package/build/types/chart.js.map +1 -0
  159. package/build/types/checklist.js +3 -0
  160. package/build/types/checklist.js.map +1 -0
  161. package/build/types/color.js +3 -0
  162. package/build/types/color.js.map +1 -0
  163. package/build/types/csv-import.js +3 -0
  164. package/build/types/csv-import.js.map +1 -0
  165. package/build/types/department.js +3 -0
  166. package/build/types/department.js.map +1 -0
  167. package/build/types/device-mapping.js +3 -0
  168. package/build/types/device-mapping.js.map +1 -0
  169. package/build/types/esri.js +3 -0
  170. package/build/types/esri.js.map +1 -0
  171. package/build/types/firemapper-auth.js +3 -0
  172. package/build/types/firemapper-auth.js.map +1 -0
  173. package/build/types/geojson-point.js +3 -0
  174. package/build/types/geojson-point.js.map +1 -0
  175. package/build/types/gst-mapping.js +3 -0
  176. package/build/types/gst-mapping.js.map +1 -0
  177. package/build/types/incident-events.js +3 -0
  178. package/build/types/incident-events.js.map +1 -0
  179. package/build/types/job-log.js +3 -0
  180. package/build/types/job-log.js.map +1 -0
  181. package/build/types/location.js +3 -0
  182. package/build/types/location.js.map +1 -0
  183. package/build/types/mail-log.js +3 -0
  184. package/build/types/mail-log.js.map +1 -0
  185. package/build/types/managed-incident.js +3 -0
  186. package/build/types/managed-incident.js.map +1 -0
  187. package/build/types/mark43-incident-retry.js +3 -0
  188. package/build/types/mark43-incident-retry.js.map +1 -0
  189. package/build/types/message.js +3 -0
  190. package/build/types/message.js.map +1 -0
  191. package/build/types/monitor.js +3 -0
  192. package/build/types/monitor.js.map +1 -0
  193. package/build/types/oauth.js +3 -0
  194. package/build/types/oauth.js.map +1 -0
  195. package/build/types/personnel.js +3 -0
  196. package/build/types/personnel.js.map +1 -0
  197. package/build/types/pubnub-token.js +3 -0
  198. package/build/types/pubnub-token.js.map +1 -0
  199. package/build/types/rate-limit.js +3 -0
  200. package/build/types/rate-limit.js.map +1 -0
  201. package/build/types/release-note.js +3 -0
  202. package/build/types/release-note.js.map +1 -0
  203. package/build/types/remote-file.js +3 -0
  204. package/build/types/remote-file.js.map +1 -0
  205. package/build/types/remote-log.js +3 -0
  206. package/build/types/remote-log.js.map +1 -0
  207. package/build/types/session.js +3 -0
  208. package/build/types/session.js.map +1 -0
  209. package/build/types/shared-incident.js +3 -0
  210. package/build/types/shared-incident.js.map +1 -0
  211. package/build/types/smtp-unhandled.js +3 -0
  212. package/build/types/smtp-unhandled.js.map +1 -0
  213. package/build/types/template.js +3 -0
  214. package/build/types/template.js.map +1 -0
  215. package/build/types/user.js +3 -0
  216. package/build/types/user.js.map +1 -0
  217. package/build/types/validation.js +3 -0
  218. package/build/types/validation.js.map +1 -0
  219. package/cspell.json +9 -13
  220. package/definitions/constants.d.ts +21 -2
  221. package/definitions/constants.d.ts.map +1 -1
  222. package/definitions/helpers.d.ts +4 -12
  223. package/definitions/helpers.d.ts.map +1 -1
  224. package/definitions/index.d.ts +178 -52
  225. package/definitions/index.d.ts.map +1 -1
  226. package/definitions/models/action-log.d.ts +32 -22
  227. package/definitions/models/action-log.d.ts.map +1 -1
  228. package/definitions/models/agency.d.ts +37 -633
  229. package/definitions/models/agency.d.ts.map +1 -1
  230. package/definitions/models/arcgis-group.d.ts +32 -126
  231. package/definitions/models/arcgis-group.d.ts.map +1 -1
  232. package/definitions/models/assignment.d.ts +32 -23
  233. package/definitions/models/assignment.d.ts.map +1 -1
  234. package/definitions/models/battalion.d.ts +37 -201
  235. package/definitions/models/battalion.d.ts.map +1 -1
  236. package/definitions/models/beacon-log.d.ts +32 -16
  237. package/definitions/models/beacon-log.d.ts.map +1 -1
  238. package/definitions/models/cad-incident-block.d.ts +32 -27
  239. package/definitions/models/cad-incident-block.d.ts.map +1 -1
  240. package/definitions/models/cad-incident-stream.d.ts +32 -17
  241. package/definitions/models/cad-incident-stream.d.ts.map +1 -1
  242. package/definitions/models/cad-incident.d.ts +32 -441
  243. package/definitions/models/cad-incident.d.ts.map +1 -1
  244. package/definitions/models/cad-simulation.d.ts +32 -142
  245. package/definitions/models/cad-simulation.d.ts.map +1 -1
  246. package/definitions/models/cad-status-map.d.ts +32 -30
  247. package/definitions/models/cad-status-map.d.ts.map +1 -1
  248. package/definitions/models/cad-status.d.ts +32 -96
  249. package/definitions/models/cad-status.d.ts.map +1 -1
  250. package/definitions/models/cad-vehicle-status-history.d.ts +32 -41
  251. package/definitions/models/cad-vehicle-status-history.d.ts.map +1 -1
  252. package/definitions/models/cad-vehicle-status.d.ts +32 -58
  253. package/definitions/models/cad-vehicle-status.d.ts.map +1 -1
  254. package/definitions/models/cad-vehicle.d.ts +32 -30
  255. package/definitions/models/cad-vehicle.d.ts.map +1 -1
  256. package/definitions/models/chart-device-stats.d.ts +32 -39
  257. package/definitions/models/chart-device-stats.d.ts.map +1 -1
  258. package/definitions/models/chart-incident.d.ts +32 -24
  259. package/definitions/models/chart-incident.d.ts.map +1 -1
  260. package/definitions/models/chart-managed-incident.d.ts +32 -25
  261. package/definitions/models/chart-managed-incident.d.ts.map +1 -1
  262. package/definitions/models/chart-user.d.ts +32 -15
  263. package/definitions/models/chart-user.d.ts.map +1 -1
  264. package/definitions/models/checklist-item.d.ts +37 -76
  265. package/definitions/models/checklist-item.d.ts.map +1 -1
  266. package/definitions/models/checklist.d.ts +37 -181
  267. package/definitions/models/checklist.d.ts.map +1 -1
  268. package/definitions/models/csv-import.d.ts +32 -26
  269. package/definitions/models/csv-import.d.ts.map +1 -1
  270. package/definitions/models/department.d.ts +32 -855
  271. package/definitions/models/department.d.ts.map +1 -1
  272. package/definitions/models/device-mapping.d.ts +32 -27
  273. package/definitions/models/device-mapping.d.ts.map +1 -1
  274. package/definitions/models/esri.d.ts +37 -686
  275. package/definitions/models/esri.d.ts.map +1 -1
  276. package/definitions/models/gst-mapping.d.ts +32 -26
  277. package/definitions/models/gst-mapping.d.ts.map +1 -1
  278. package/definitions/models/incident-event.d.ts +37 -143
  279. package/definitions/models/incident-event.d.ts.map +1 -1
  280. package/definitions/models/incident-notified.d.ts +32 -40
  281. package/definitions/models/incident-notified.d.ts.map +1 -1
  282. package/definitions/models/incident-takeover.d.ts +32 -23
  283. package/definitions/models/incident-takeover.d.ts.map +1 -1
  284. package/definitions/models/job-log.d.ts +32 -18
  285. package/definitions/models/job-log.d.ts.map +1 -1
  286. package/definitions/models/location.d.ts +32 -61
  287. package/definitions/models/location.d.ts.map +1 -1
  288. package/definitions/models/mail-log.d.ts +32 -26
  289. package/definitions/models/mail-log.d.ts.map +1 -1
  290. package/definitions/models/managed-incident.d.ts +32 -690
  291. package/definitions/models/managed-incident.d.ts.map +1 -1
  292. package/definitions/models/mark43-incident-retry.d.ts +32 -44
  293. package/definitions/models/mark43-incident-retry.d.ts.map +1 -1
  294. package/definitions/models/message.d.ts +32 -44
  295. package/definitions/models/message.d.ts.map +1 -1
  296. package/definitions/models/monitor.d.ts +32 -19
  297. package/definitions/models/monitor.d.ts.map +1 -1
  298. package/definitions/models/personnel-import.d.ts +37 -142
  299. package/definitions/models/personnel-import.d.ts.map +1 -1
  300. package/definitions/models/personnel-known.d.ts +37 -100
  301. package/definitions/models/personnel-known.d.ts.map +1 -1
  302. package/definitions/models/personnel-roster.d.ts +37 -79
  303. package/definitions/models/personnel-roster.d.ts.map +1 -1
  304. package/definitions/models/rate-limit.d.ts +32 -16
  305. package/definitions/models/rate-limit.d.ts.map +1 -1
  306. package/definitions/models/release-note.d.ts +32 -17
  307. package/definitions/models/release-note.d.ts.map +1 -1
  308. package/definitions/models/remote-log-stream.d.ts +32 -66
  309. package/definitions/models/remote-log-stream.d.ts.map +1 -1
  310. package/definitions/models/remote-log.d.ts +32 -65
  311. package/definitions/models/remote-log.d.ts.map +1 -1
  312. package/definitions/models/schema/agency-cron-config.d.ts +30 -213
  313. package/definitions/models/schema/agency-cron-config.d.ts.map +1 -1
  314. package/definitions/models/schema/agency-saml.d.ts +30 -30
  315. package/definitions/models/schema/agency-saml.d.ts.map +1 -1
  316. package/definitions/models/schema/cad-incident.d.ts +31 -651
  317. package/definitions/models/schema/cad-incident.d.ts.map +1 -1
  318. package/definitions/models/schema/cad-status-option-selected.d.ts +30 -21
  319. package/definitions/models/schema/cad-status-option-selected.d.ts.map +1 -1
  320. package/definitions/models/schema/color.d.ts +30 -13
  321. package/definitions/models/schema/color.d.ts.map +1 -1
  322. package/definitions/models/schema/esri-auth.d.ts +30 -25
  323. package/definitions/models/schema/esri-auth.d.ts.map +1 -1
  324. package/definitions/models/schema/esri-error.d.ts +30 -21
  325. package/definitions/models/schema/esri-error.d.ts.map +1 -1
  326. package/definitions/models/schema/esri-map.d.ts +30 -190
  327. package/definitions/models/schema/esri-map.d.ts.map +1 -1
  328. package/definitions/models/schema/firemapper-auth.d.ts +30 -41
  329. package/definitions/models/schema/firemapper-auth.d.ts.map +1 -1
  330. package/definitions/models/schema/geojson-point.d.ts +30 -16
  331. package/definitions/models/schema/geojson-point.d.ts.map +1 -1
  332. package/definitions/models/schema/oauth.d.ts +30 -17
  333. package/definitions/models/schema/oauth.d.ts.map +1 -1
  334. package/definitions/models/schema/pubnub-token.d.ts +31 -18
  335. package/definitions/models/schema/pubnub-token.d.ts.map +1 -1
  336. package/definitions/models/schema/remote-file.d.ts +31 -42
  337. package/definitions/models/schema/remote-file.d.ts.map +1 -1
  338. package/definitions/models/schema/shared-incident.d.ts +61 -160
  339. package/definitions/models/schema/shared-incident.d.ts.map +1 -1
  340. package/definitions/models/schema/validation-error-item.d.ts +31 -26
  341. package/definitions/models/schema/validation-error-item.d.ts.map +1 -1
  342. package/definitions/models/session.d.ts +32 -39
  343. package/definitions/models/session.d.ts.map +1 -1
  344. package/definitions/models/smtp-unhandled.d.ts +32 -13
  345. package/definitions/models/smtp-unhandled.d.ts.map +1 -1
  346. package/definitions/models/template.d.ts +37 -138
  347. package/definitions/models/template.d.ts.map +1 -1
  348. package/definitions/models/user-device.d.ts +32 -140
  349. package/definitions/models/user-device.d.ts.map +1 -1
  350. package/definitions/models/user-registration.d.ts +32 -27
  351. package/definitions/models/user-registration.d.ts.map +1 -1
  352. package/definitions/models/user.d.ts +37 -469
  353. package/definitions/models/user.d.ts.map +1 -1
  354. package/definitions/models/validation-report.d.ts +37 -382
  355. package/definitions/models/validation-report.d.ts.map +1 -1
  356. package/definitions/test/mock.d.ts +1 -3
  357. package/definitions/test/mock.d.ts.map +1 -1
  358. package/definitions/types/action-log.d.ts +16 -0
  359. package/definitions/types/action-log.d.ts.map +1 -0
  360. package/definitions/types/agency.d.ts +95 -0
  361. package/definitions/types/agency.d.ts.map +1 -0
  362. package/definitions/types/arcgis-group.d.ts +41 -0
  363. package/definitions/types/arcgis-group.d.ts.map +1 -0
  364. package/definitions/types/assignment.d.ts +18 -0
  365. package/definitions/types/assignment.d.ts.map +1 -0
  366. package/definitions/types/battalion.d.ts +36 -0
  367. package/definitions/types/battalion.d.ts.map +1 -0
  368. package/definitions/types/beacon-log.d.ts +10 -0
  369. package/definitions/types/beacon-log.d.ts.map +1 -0
  370. package/definitions/types/cad-incident.d.ts +127 -0
  371. package/definitions/types/cad-incident.d.ts.map +1 -0
  372. package/definitions/types/cad.d.ts +209 -0
  373. package/definitions/types/cad.d.ts.map +1 -0
  374. package/definitions/types/chart.d.ts +50 -0
  375. package/definitions/types/chart.d.ts.map +1 -0
  376. package/definitions/types/checklist.d.ts +34 -0
  377. package/definitions/types/checklist.d.ts.map +1 -0
  378. package/definitions/types/color.d.ts +5 -0
  379. package/definitions/types/color.d.ts.map +1 -0
  380. package/definitions/types/csv-import.d.ts +20 -0
  381. package/definitions/types/csv-import.d.ts.map +1 -0
  382. package/definitions/types/department.d.ts +308 -0
  383. package/definitions/types/department.d.ts.map +1 -0
  384. package/definitions/types/device-mapping.d.ts +21 -0
  385. package/definitions/types/device-mapping.d.ts.map +1 -0
  386. package/definitions/types/esri.d.ts +74 -0
  387. package/definitions/types/esri.d.ts.map +1 -0
  388. package/definitions/types/firemapper-auth.d.ts +10 -0
  389. package/definitions/types/firemapper-auth.d.ts.map +1 -0
  390. package/definitions/types/geojson-point.d.ts +5 -0
  391. package/definitions/types/geojson-point.d.ts.map +1 -0
  392. package/definitions/types/gst-mapping.d.ts +20 -0
  393. package/definitions/types/gst-mapping.d.ts.map +1 -0
  394. package/definitions/types/incident-events.d.ts +63 -0
  395. package/definitions/types/incident-events.d.ts.map +1 -0
  396. package/definitions/types/job-log.d.ts +13 -0
  397. package/definitions/types/job-log.d.ts.map +1 -0
  398. package/definitions/types/location.d.ts +37 -0
  399. package/definitions/types/location.d.ts.map +1 -0
  400. package/definitions/types/mail-log.d.ts +20 -0
  401. package/definitions/types/mail-log.d.ts.map +1 -0
  402. package/definitions/types/managed-incident.d.ts +151 -0
  403. package/definitions/types/managed-incident.d.ts.map +1 -0
  404. package/definitions/types/mark43-incident-retry.d.ts +22 -0
  405. package/definitions/types/mark43-incident-retry.d.ts.map +1 -0
  406. package/definitions/types/message.d.ts +25 -0
  407. package/definitions/types/message.d.ts.map +1 -0
  408. package/definitions/types/monitor.d.ts +13 -0
  409. package/definitions/types/monitor.d.ts.map +1 -0
  410. package/definitions/types/oauth.d.ts +6 -0
  411. package/definitions/types/oauth.d.ts.map +1 -0
  412. package/definitions/types/personnel.d.ts +63 -0
  413. package/definitions/types/personnel.d.ts.map +1 -0
  414. package/definitions/types/pubnub-token.d.ts +6 -0
  415. package/definitions/types/pubnub-token.d.ts.map +1 -0
  416. package/definitions/types/rate-limit.d.ts +10 -0
  417. package/definitions/types/rate-limit.d.ts.map +1 -0
  418. package/definitions/types/release-note.d.ts +11 -0
  419. package/definitions/types/release-note.d.ts.map +1 -0
  420. package/definitions/types/remote-file.d.ts +13 -0
  421. package/definitions/types/remote-file.d.ts.map +1 -0
  422. package/definitions/types/remote-log.d.ts +47 -0
  423. package/definitions/types/remote-log.d.ts.map +1 -0
  424. package/definitions/types/session.d.ts +21 -0
  425. package/definitions/types/session.d.ts.map +1 -0
  426. package/definitions/types/shared-incident.d.ts +41 -0
  427. package/definitions/types/shared-incident.d.ts.map +1 -0
  428. package/definitions/types/smtp-unhandled.d.ts +8 -0
  429. package/definitions/types/smtp-unhandled.d.ts.map +1 -0
  430. package/definitions/types/template.d.ts +28 -0
  431. package/definitions/types/template.d.ts.map +1 -0
  432. package/definitions/types/user.d.ts +132 -0
  433. package/definitions/types/user.d.ts.map +1 -0
  434. package/definitions/types/validation.d.ts +21 -0
  435. package/definitions/types/validation.d.ts.map +1 -0
  436. package/package.json +2 -4
  437. package/src/constants.ts +21 -7
  438. package/src/helpers.ts +20 -22
  439. package/src/index.ts +5 -7
  440. package/src/models/action-log.ts +10 -15
  441. package/src/models/agency.ts +14 -19
  442. package/src/models/arcgis-group.ts +20 -18
  443. package/src/models/assignment.ts +14 -20
  444. package/src/models/battalion.ts +34 -38
  445. package/src/models/beacon-log.ts +11 -15
  446. package/src/models/cad-incident-block.ts +10 -14
  447. package/src/models/cad-incident-stream.ts +10 -14
  448. package/src/models/cad-incident.ts +8 -10
  449. package/src/models/cad-simulation.ts +23 -30
  450. package/src/models/cad-status-map.ts +9 -13
  451. package/src/models/cad-status.ts +10 -14
  452. package/src/models/cad-vehicle-status-history.ts +9 -16
  453. package/src/models/cad-vehicle-status.ts +16 -17
  454. package/src/models/cad-vehicle.ts +9 -13
  455. package/src/models/chart-device-stats.ts +11 -15
  456. package/src/models/chart-incident.ts +11 -15
  457. package/src/models/chart-managed-incident.ts +11 -15
  458. package/src/models/chart-user.ts +10 -14
  459. package/src/models/checklist-item.ts +15 -26
  460. package/src/models/checklist.ts +16 -24
  461. package/src/models/csv-import.ts +10 -14
  462. package/src/models/department.ts +255 -220
  463. package/src/models/device-mapping.ts +10 -14
  464. package/src/models/esri.ts +17 -26
  465. package/src/models/gst-mapping.ts +12 -16
  466. package/src/models/incident-event.ts +13 -17
  467. package/src/models/incident-notified.ts +13 -17
  468. package/src/models/incident-takeover.ts +10 -14
  469. package/src/models/job-log.ts +10 -14
  470. package/src/models/location.ts +12 -18
  471. package/src/models/mail-log.ts +10 -14
  472. package/src/models/managed-incident.ts +30 -32
  473. package/src/models/mark43-incident-retry.ts +11 -15
  474. package/src/models/message.ts +11 -15
  475. package/src/models/monitor.ts +10 -14
  476. package/src/models/personnel-import.ts +14 -18
  477. package/src/models/personnel-known.ts +12 -16
  478. package/src/models/personnel-roster.ts +10 -14
  479. package/src/models/rate-limit.ts +10 -14
  480. package/src/models/release-note.ts +11 -17
  481. package/src/models/remote-log-stream.ts +10 -16
  482. package/src/models/remote-log.ts +10 -16
  483. package/src/models/schema/agency-cron-config.ts +7 -7
  484. package/src/models/schema/agency-saml.ts +2 -2
  485. package/src/models/schema/cad-incident.ts +76 -38
  486. package/src/models/schema/cad-status-option-selected.ts +2 -2
  487. package/src/models/schema/color.ts +2 -2
  488. package/src/models/schema/esri-auth.ts +3 -3
  489. package/src/models/schema/esri-error.ts +2 -2
  490. package/src/models/schema/esri-map.ts +5 -5
  491. package/src/models/schema/firemapper-auth.ts +3 -3
  492. package/src/models/schema/geojson-point.ts +2 -2
  493. package/src/models/schema/oauth.ts +3 -3
  494. package/src/models/schema/pubnub-token.ts +4 -4
  495. package/src/models/schema/remote-file.ts +2 -2
  496. package/src/models/schema/shared-incident.ts +17 -8
  497. package/src/models/schema/validation-error-item.ts +2 -2
  498. package/src/models/session.ts +14 -23
  499. package/src/models/smtp-unhandled.ts +10 -14
  500. package/src/models/template.ts +19 -26
  501. package/src/models/user-device.ts +15 -19
  502. package/src/models/user-registration.ts +9 -13
  503. package/src/models/user.ts +17 -24
  504. package/src/models/validation-report.ts +11 -15
  505. package/src/test/arcgis-group.ts +10 -10
  506. package/src/test/mock.ts +6 -4
  507. package/src/tsconfig.json +1 -0
  508. package/src/types/action-log.ts +17 -0
  509. package/src/types/agency.ts +104 -0
  510. package/src/types/arcgis-group.ts +49 -0
  511. package/src/types/assignment.ts +20 -0
  512. package/src/types/battalion.ts +37 -0
  513. package/src/types/beacon-log.ts +10 -0
  514. package/src/types/cad-incident.ts +131 -0
  515. package/src/types/cad.ts +224 -0
  516. package/src/types/chart.ts +53 -0
  517. package/src/types/checklist.ts +35 -0
  518. package/src/types/color.ts +4 -0
  519. package/src/types/csv-import.ts +20 -0
  520. package/src/types/department.ts +336 -0
  521. package/src/types/device-mapping.ts +21 -0
  522. package/src/types/esri.ts +82 -0
  523. package/src/types/firemapper-auth.ts +10 -0
  524. package/src/types/geojson-point.ts +4 -0
  525. package/src/types/gst-mapping.ts +20 -0
  526. package/src/types/incident-events.ts +68 -0
  527. package/src/types/job-log.ts +13 -0
  528. package/src/types/location.ts +37 -0
  529. package/src/types/mail-log.ts +20 -0
  530. package/src/types/managed-incident.ts +157 -0
  531. package/src/types/mark43-incident-retry.ts +22 -0
  532. package/src/types/message.ts +25 -0
  533. package/src/types/monitor.ts +13 -0
  534. package/src/types/oauth.ts +5 -0
  535. package/src/types/personnel.ts +66 -0
  536. package/src/types/pubnub-token.ts +5 -0
  537. package/src/types/rate-limit.ts +10 -0
  538. package/src/types/release-note.ts +11 -0
  539. package/src/types/remote-file.ts +12 -0
  540. package/src/types/remote-log.ts +48 -0
  541. package/src/types/session.ts +21 -0
  542. package/src/types/shared-incident.ts +46 -0
  543. package/src/types/smtp-unhandled.ts +8 -0
  544. package/src/types/template.ts +30 -0
  545. package/src/types/user.ts +140 -0
  546. package/src/types/validation.ts +23 -0
  547. package/test/action-log.js +15 -18
  548. package/test/agency.js +15 -18
  549. package/test/battalion.js +16 -19
  550. package/test/cad-incident.js +1 -1
  551. package/test/cad-simulation.js +8 -11
  552. package/test/cad-status-map.js +9 -13
  553. package/test/cad-status.js +26 -30
  554. package/test/cad-vehicle-status-history.js +10 -14
  555. package/test/cad-vehicle-status.js +16 -19
  556. package/test/cad-vehicle.js +11 -15
  557. package/test/checklist-item.js +17 -20
  558. package/test/department.js +1 -1
  559. package/test/device-mapping.js +13 -17
  560. package/test/esri.js +1 -1
  561. package/test/gst-mapping.js +12 -16
  562. package/test/incident-notified.js +10 -14
  563. package/test/incident-takeover.js +13 -17
  564. package/test/job-log.js +11 -14
  565. package/test/location.js +1 -1
  566. package/test/mail-log.js +21 -24
  567. package/test/managed-incident.js +81 -84
  568. package/test/mark43-incident-retry.js +9 -11
  569. package/test/message.js +13 -16
  570. package/test/mock.js +20 -20
  571. package/test/rate-limit.js +7 -11
  572. package/test/release-note.js +9 -13
  573. package/test/session.js +18 -22
  574. package/test/template.js +18 -21
  575. package/test/user-registration.js +18 -22
  576. package/test/user.js +26 -29
@@ -0,0 +1,132 @@
1
+ import { Types } from "mongoose";
2
+ import { EsriAuthSchemaType, EsriErrorSchemaType } from "./esri";
3
+ import { PubNubTokenSchemaType } from "./pubnub-token";
4
+ export interface UnitSettingType {
5
+ radioName: string;
6
+ notificationType: string;
7
+ notificationMode: string;
8
+ }
9
+ export interface IncidentSettingType {
10
+ incidentType: string;
11
+ notificationType: string;
12
+ notificationMode: string;
13
+ }
14
+ export interface DeviceSchemaType {
15
+ token: string;
16
+ env: string;
17
+ ver: string;
18
+ ua: string;
19
+ time: number;
20
+ t: Date;
21
+ drift: number;
22
+ channelId: string;
23
+ bundleIdentifier: string;
24
+ silentEnabled: boolean;
25
+ criticalAlertsEnabled: boolean;
26
+ session: string;
27
+ active: boolean;
28
+ offDuty: boolean;
29
+ }
30
+ export interface SoundSchemaItemType {
31
+ sound: string;
32
+ soundType: string;
33
+ os: string;
34
+ }
35
+ export interface SoundSchemaType {
36
+ ios: SoundSchemaItemType;
37
+ android: SoundSchemaItemType;
38
+ }
39
+ export interface UserDeviceType {
40
+ _id: Types.ObjectId;
41
+ userId: string;
42
+ departmentId: string;
43
+ devices: DeviceSchemaType[];
44
+ notificationCount: number;
45
+ notificationUnitSettings: UnitSettingType[];
46
+ notificationIncidentSettings: IncidentSettingType[];
47
+ notificationSounds: SoundSchemaType;
48
+ offDuty: boolean;
49
+ criticalAlertsVolume: string;
50
+ allowInStaging: boolean;
51
+ restrictedCommentsEnabled: boolean;
52
+ }
53
+ export interface UserRegistrationType {
54
+ email: string;
55
+ name: string;
56
+ firstName: string;
57
+ lastName: string;
58
+ department: string;
59
+ title: string;
60
+ status: string;
61
+ modifiedDate: number;
62
+ modified: Date;
63
+ presentedAt: number;
64
+ managedIncidentsCount: number;
65
+ checklistsCount: number;
66
+ stage: string;
67
+ firstIncidentUnixTime: number;
68
+ lastIncidentLocation: string;
69
+ lastIncidentUnixTime: number;
70
+ syncedToHubSpot: boolean;
71
+ }
72
+ export interface VehicleSchemaType {
73
+ radioName: string;
74
+ vehicleId: string;
75
+ }
76
+ export interface UserType {
77
+ _id: Types.ObjectId;
78
+ id?: string;
79
+ nick: string;
80
+ email: string;
81
+ name: string;
82
+ uuid: string;
83
+ departmentId: string;
84
+ modified_date: Date;
85
+ when: Date;
86
+ agencyId: Types.ObjectId;
87
+ managedAgencies: Types.ObjectId[];
88
+ active: boolean;
89
+ admin: boolean;
90
+ superuser: boolean;
91
+ isPro: boolean;
92
+ isIncidentManager: boolean;
93
+ mobileAccess: boolean;
94
+ webAccess: boolean;
95
+ cadSimulatorAccess: boolean;
96
+ canAddRemoveVehicle: boolean;
97
+ beaconEnabled: boolean;
98
+ userContributionEnabled: boolean;
99
+ syncLoggingExpireDate: Date;
100
+ beacons: string[];
101
+ salt: string;
102
+ pass: string;
103
+ auth: string[];
104
+ mapHidden: boolean;
105
+ mapId: string;
106
+ vehicle: VehicleSchemaType;
107
+ sessionCountiPhone: number;
108
+ sessionCountiPad: number;
109
+ rtsAuthKey: string;
110
+ pubNubV2: PubNubTokenSchemaType;
111
+ pubNubV3: PubNubTokenSchemaType;
112
+ socketIO: PubNubTokenSchemaType;
113
+ token: string;
114
+ tokenExpireAt: Date;
115
+ shareLocationPhone: boolean;
116
+ shareLocationTablet: boolean;
117
+ offlineMapsEnabled: boolean;
118
+ fireMapperProEnabled: boolean;
119
+ arcGISAuth: EsriAuthSchemaType;
120
+ arcGISAuthError: EsriErrorSchemaType;
121
+ offDutyEnabled: boolean;
122
+ webMapSettings: {
123
+ defaultZoomLevel: number;
124
+ defaultCenter: number[];
125
+ defaultMap: string;
126
+ };
127
+ locationToCAD: boolean;
128
+ logOffEnabled: boolean;
129
+ restrictedCommentsEnabled: boolean;
130
+ superUserReadOnly: boolean;
131
+ }
132
+ //# sourceMappingURL=user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/types/user.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Types } from "mongoose";
2
+ export interface ValidationErrorItemSchemaType {
3
+ message: string;
4
+ firstSeenAt: Date;
5
+ lastSeenAt: Date;
6
+ clearedAt: Date;
7
+ payload: object;
8
+ }
9
+ export interface ValidationReportType {
10
+ _id: Types.ObjectId;
11
+ departmentId: Types.ObjectId;
12
+ location: ValidationErrorItemSchemaType[];
13
+ statusMap: ValidationErrorItemSchemaType[];
14
+ status: ValidationErrorItemSchemaType[];
15
+ vehicleStatus: ValidationErrorItemSchemaType[];
16
+ vehicle: ValidationErrorItemSchemaType[];
17
+ incident: ValidationErrorItemSchemaType[];
18
+ personnel: ValidationErrorItemSchemaType[];
19
+ modified: Date;
20
+ }
21
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/types/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,IAAI,CAAC;IAClB,UAAU,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC;IACpB,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC7B,QAAQ,EAAE,6BAA6B,EAAE,CAAC;IAC1C,SAAS,EAAE,6BAA6B,EAAE,CAAC;IAC3C,MAAM,EAAE,6BAA6B,EAAE,CAAC;IACxC,aAAa,EAAE,6BAA6B,EAAE,CAAC;IAC/C,OAAO,EAAE,6BAA6B,EAAE,CAAC;IACzC,QAAQ,EAAE,6BAA6B,EAAE,CAAC;IAC1C,SAAS,EAAE,6BAA6B,EAAE,CAAC;IAC3C,QAAQ,EAAE,IAAI,CAAC;CAChB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tabletcommand-backend-models",
3
- "version": "5.39.7",
3
+ "version": "7.0.1",
4
4
  "description": "Tablet Command Backend Models",
5
5
  "scripts": {
6
6
  "build": "gulp build",
@@ -21,7 +21,7 @@
21
21
  "debug": "^4.3.5",
22
22
  "lodash": "^4.17.21",
23
23
  "moment-timezone": "^0.5.45",
24
- "mongoose": "=5.10.19",
24
+ "mongoose": "^7.7.0",
25
25
  "mongoose-lean-virtuals": "^0.7.6",
26
26
  "uuid": "~10.0.0"
27
27
  },
@@ -30,8 +30,6 @@
30
30
  "@types/chai": "^4.3.16",
31
31
  "@types/lodash": "^4.14.202",
32
32
  "@types/mocha": "^10.0.7",
33
- "@types/mongodb": "^3.6.20",
34
- "@types/mongoose": "~5.10.5",
35
33
  "@types/uuid": "~10.0.0",
36
34
  "@typescript-eslint/eslint-plugin": "~6.20.0",
37
35
  "@typescript-eslint/parser": "~6.20.0",
package/src/constants.ts CHANGED
@@ -1,8 +1,22 @@
1
- // These should be converted to Typescript Enum after upgrading mongoose to 6.x or newer
1
+ export enum LocationSource {
2
+ CAD = "CAD",
3
+ FleetComplete = "FleetComplete",
4
+ GST = "GST",
5
+ Samsara = "Samsara",
6
+ Skymira = "Skymira",
7
+ SKYTRAC = "SKYTRAC",
8
+ Somewear = "Somewear",
9
+ TCAndroid = "TC-Android",
10
+ TCIOS = "TC-iOS",
11
+ TCMobileAndroid = "TCMobile-Android",
12
+ TCMobileIOS = "TCMobile-iOS",
13
+ VehicleModem = "VehicleModem"
14
+ }
2
15
 
3
- export type LocationSource =
4
- "CAD" | "FleetComplete" | "GST" |
5
- "Samsara" | "Skymira" | "SKYTRAC" | "Somewear" |
6
- "TC-Android" | "TC-iOS" | "TCMobile-Android" | "TCMobile-iOS" |
7
- "VehicleModem";
8
- export type LocationKindType = "fixed-wing" | "helicopter" | "marine" | "person" | "vehicle";
16
+ export enum LocationKindType {
17
+ FixedWing = "fixed-wing",
18
+ Helicopter = "helicopter",
19
+ Marine = "marine",
20
+ Person = "person",
21
+ Vehicle = "vehicle"
22
+ }
package/src/helpers.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { SchemaDefinition, SchemaOptions, Schema, Document, Model, Types } from "mongoose";
1
+ import mongoose, { SchemaDefinition, Schema, Document, Model, Types } from "mongoose";
2
2
 
3
3
  export type MongooseModule = typeof import("mongoose");
4
4
  export type MongooseModel<T extends Document, QueryHelpers = Record<string, unknown>> = Model<T, QueryHelpers>;
@@ -49,27 +49,6 @@ export type TypedDocument<T extends TypedSchema<any>> = Document & (
49
49
  T extends { _interface: infer U } ? U : never
50
50
  );
51
51
 
52
- export function createSchemaDefinition<T extends SchemaDefinition>(c: T) {
53
- return c;
54
- }
55
-
56
- export function createSchema
57
- <T extends SchemaDefinition, TMethods>(schemaCtor: typeof Schema, p: T, o: SchemaOptions, methods?: TMethods & ThisType<DocumentFromSchemaDefinition<T>>)
58
- : Schema & { _interface: MongooseInterface<T>, _methods: TMethods } {
59
- const schema = new schemaCtor(p, o);
60
- if (methods) {
61
- schema.methods = methods;
62
- }
63
- return schema as unknown as Schema & { _interface: MongooseInterface<T>, _methods: TMethods };
64
- }
65
-
66
- export function createModel<T, TMethods>(mongoose: MongooseModule, name: string, schema: Schema & { _interface: T, _methods?: TMethods }) {
67
- if (mongoose.models[name]) {
68
- return mongoose.model<Document & T & TMethods>(name) as Model<Document & T & TMethods> & { __methods?: TMethods };
69
- } else {
70
- return mongoose.model<Document & T & TMethods>(name, schema) as Model<Document & T & TMethods> & { __methods?: TMethods };
71
- }
72
- }
73
52
 
74
53
  export type ModelFromSchemaDefinition<T extends SchemaDefinition> = ModelFromSchema<Schema & { _interface: MongooseInterface<T> }>;
75
54
  export type ModelFromSchema<T extends Schema> = Model<DocumentTypeFromSchema<T>>;
@@ -125,3 +104,22 @@ type Conditions<T> = {
125
104
  export function conditions<T extends import("mongoose").Document>(items: import("mongoose").Model<T>, c: Or<Conditions<T>>) {
126
105
  return c;
127
106
  }
107
+
108
+ export function convertToObjectId(id: string): Types.ObjectId {
109
+ if (id) {
110
+ return new Types.ObjectId(id);
111
+ }
112
+ return new Types.ObjectId(); // fal;back if user provides empty string
113
+ }
114
+
115
+ export async function disconnectMongoose() {
116
+ return mongoose.disconnect();
117
+ }
118
+
119
+ export async function closeAllMongooseConnections() {
120
+ if (mongoose.connections.length) {
121
+ for (const connection of mongoose.connections) {
122
+ await connection.close();
123
+ }
124
+ }
125
+ }
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _ from "lodash";
2
- import { ConnectionOptions } from "mongoose";
2
+ import { ConnectOptions } from "mongoose";
3
3
  import { MongooseModule } from "./helpers";
4
4
  import {
5
5
  LocationKindType,
@@ -125,19 +125,16 @@ export { ValidationReport, ValidationReportModel } from "./models/validation-rep
125
125
 
126
126
  export * from "./helpers";
127
127
 
128
- export async function connect(url: string, overwriteOpts?: ConnectionOptions) {
128
+ export async function connect(url: string, overwriteOpts?: ConnectOptions) {
129
129
  const mongoose = await import("mongoose");
130
130
  mongoose.Promise = await import("bluebird");
131
-
132
131
  const models = await wireModels(mongoose);
133
- const defaultOpts: ConnectionOptions = {
132
+ const defaultOpts: ConnectOptions = {
134
133
  autoIndex: false,
135
134
  readPreference: "primaryPreferred",
136
- useNewUrlParser: true,
137
- useUnifiedTopology: true,
138
135
  };
139
136
  // If present, overwrite options
140
- const opts: ConnectionOptions = _.assign({}, defaultOpts, overwriteOpts);
137
+ const opts: ConnectOptions = _.assign({}, defaultOpts, overwriteOpts);
141
138
  const connection = await mongoose.connect(url, opts);
142
139
 
143
140
  return { mongoose, connection, models };
@@ -145,4 +142,5 @@ export async function connect(url: string, overwriteOpts?: ConnectionOptions) {
145
142
 
146
143
  type UnboxPromise<T extends Promise<unknown>> = T extends Promise<infer U> ? U : never;
147
144
  export type BackendModels = UnboxPromise<ReturnType<typeof connect>>["models"];
145
+ export type MongooseTypes = MongooseModule;
148
146
  export default connect;
@@ -1,20 +1,18 @@
1
1
  import {
2
2
  MongooseModule,
3
- createSchema,
4
- createModel,
5
3
  currentDate,
6
4
  retrieveCurrentUnixTime,
7
- ModelTypeFromTypeSchemaFunction,
8
- ItemTypeFromTypeSchemaFunction,
9
- ReplaceModelReturnType,
10
5
  } from "../helpers";
6
+ import { Model } from "mongoose";
7
+ import { ActionLogType } from "../types/action-log";
11
8
 
12
- export async function ActionLogModule(mongoose: MongooseModule) {
13
- const { Schema, Types } = mongoose;
9
+ export interface ActionLog extends ActionLogType { }
14
10
 
15
- const modelSchema = createSchema(Schema, {
11
+ export default async function ActionLogModule(mongoose: MongooseModule) {
12
+ const { Schema } = mongoose;
13
+ const modelSchema = new Schema<ActionLogType>({
16
14
  _id: {
17
- type: Types.ObjectId,
15
+ type: Schema.Types.ObjectId,
18
16
  auto: true,
19
17
  },
20
18
  departmentId: {
@@ -62,12 +60,9 @@ export async function ActionLogModule(mongoose: MongooseModule) {
62
60
  default: retrieveCurrentUnixTime,
63
61
  },
64
62
  }, {
65
- collection: "massive_action_log",
63
+ autoIndex: false
66
64
  });
67
- modelSchema.set("autoIndex", false);
68
- return createModel(mongoose, "ActionLog", modelSchema);
65
+ return mongoose.model<ActionLog>("ActionLog", modelSchema, "massive_action_log", { overwriteModels: true });
69
66
  }
70
67
 
71
- export interface ActionLog extends ItemTypeFromTypeSchemaFunction<typeof ActionLogModule> { }
72
- export interface ActionLogModel extends ModelTypeFromTypeSchemaFunction<ActionLog> { }
73
- export default ActionLogModule as ReplaceModelReturnType<typeof ActionLogModule, ActionLogModel>;
68
+ export interface ActionLogModel extends Model<ActionLog> { }
@@ -1,23 +1,22 @@
1
1
  import * as uuid from "uuid";
2
2
  import {
3
- createModel,
4
- createSchema,
5
3
  currentDate,
6
- ItemTypeFromTypeSchemaFunction,
7
- ModelTypeFromTypeSchemaFunction,
8
4
  MongooseModule,
9
- ReplaceModelReturnType,
10
5
  retrieveCurrentUnixTime,
11
6
  } from "../helpers";
12
7
  import AgencyCronConfigModule from "./schema/agency-cron-config";
13
8
  import AgencySAMLModule from "./schema/agency-saml";
9
+ import { Model } from "mongoose";
10
+ import { CrossStaffedUnitType, AgencyType } from "../types/agency";
11
+
12
+ export interface Agency extends AgencyType, Record<string, unknown> { }
14
13
 
15
14
  export function AgencySchema(mongoose: MongooseModule) {
16
- const { Schema, Types } = mongoose;
15
+ const { Schema } = mongoose;
17
16
  const AgencyCronConfig = AgencyCronConfigModule(mongoose);
18
17
  const AgencySAML = AgencySAMLModule(mongoose);
19
18
 
20
- const CrossStaffedUnit = createSchema(Schema, {
19
+ const CrossStaffedUnit = new Schema<CrossStaffedUnitType>({
21
20
  radioName: {
22
21
  type: String,
23
22
  default: "",
@@ -45,9 +44,9 @@ export function AgencySchema(mongoose: MongooseModule) {
45
44
  locationToCAD: 0
46
45
  };
47
46
 
48
- const modelSchema = createSchema(Schema, {
47
+ const modelSchema = new Schema<AgencyType>({
49
48
  _id: {
50
- type: Types.ObjectId,
49
+ type: Schema.Types.ObjectId,
51
50
  auto: true,
52
51
  },
53
52
  code: {
@@ -89,12 +88,12 @@ export function AgencySchema(mongoose: MongooseModule) {
89
88
  default: false,
90
89
  },
91
90
  departmentId: {
92
- type: Types.ObjectId,
91
+ type: Schema.Types.ObjectId,
93
92
  ref: "Department",
94
93
  required: true
95
94
  },
96
95
  administrators: {
97
- type: [Types.ObjectId],
96
+ type: [Schema.Types.ObjectId],
98
97
  ref: "User",
99
98
  default: []
100
99
  },
@@ -128,18 +127,14 @@ export function AgencySchema(mongoose: MongooseModule) {
128
127
  default: 0,
129
128
  },
130
129
  }, {
131
- collection: "massive_agency",
130
+ autoIndex: false,
132
131
  });
133
- modelSchema.set("autoIndex", false);
134
-
135
132
  return modelSchema;
136
133
  }
137
134
 
138
- export async function AgencyModule(mongoose: MongooseModule) {
135
+ export default async function AgencyModule(mongoose: MongooseModule) {
139
136
  const modelSchema = AgencySchema(mongoose);
140
- return createModel(mongoose, "Agency", modelSchema);
137
+ return mongoose.model<Agency>("Agency", modelSchema, "massive_agency", { overwriteModels: true });
141
138
  }
142
139
 
143
- export interface Agency extends ItemTypeFromTypeSchemaFunction<typeof AgencyModule> { }
144
- export interface AgencyModel extends ModelTypeFromTypeSchemaFunction<Agency> { }
145
- export default AgencyModule as ReplaceModelReturnType<typeof AgencyModule, AgencyModel>;
140
+ export interface AgencyModel extends Model<Agency> { }
@@ -1,18 +1,23 @@
1
1
  // import * as uuid from "uuid";
2
+ import { Model } from "mongoose";
2
3
  import {
3
- createModel,
4
- createSchema,
5
4
  currentDate,
6
- ItemTypeFromTypeSchemaFunction,
7
- ModelTypeFromTypeSchemaFunction,
8
5
  MongooseModule,
9
- ReplaceModelReturnType,
10
6
  } from "../helpers";
7
+ import {
8
+ ArcGISGroupUserType,
9
+ ArcGISUserInvitationType,
10
+ ArcGISDepartmentUserType,
11
+ ArcGISDepartmentType,
12
+ ArcGISGroupType
13
+ } from "../types/arcgis-group";
14
+
15
+ export interface ArcGISGroup extends ArcGISGroupType { }
11
16
 
12
- export async function ArcGISGroupModule(mongoose: MongooseModule) {
17
+ export default async function ArcGISGroupModule(mongoose: MongooseModule) {
13
18
  const { Schema } = mongoose;
14
19
 
15
- const ArcGISGroupUser = createSchema(Schema, {
20
+ const ArcGISGroupUser = new Schema<ArcGISGroupUserType>({
16
21
  username: {
17
22
  type: String,
18
23
  default: "",
@@ -34,7 +39,7 @@ export async function ArcGISGroupModule(mongoose: MongooseModule) {
34
39
  id: false,
35
40
  });
36
41
 
37
- const ArcGISUserInvitation = createSchema(Schema, {
42
+ const ArcGISUserInvitation = new Schema<ArcGISUserInvitationType>({
38
43
  username: {
39
44
  type: String,
40
45
  default: "",
@@ -52,7 +57,7 @@ export async function ArcGISGroupModule(mongoose: MongooseModule) {
52
57
  id: false,
53
58
  });
54
59
 
55
- const ArcGISDepartmentUser = createSchema(Schema, {
60
+ const ArcGISDepartmentUser = new Schema<ArcGISDepartmentUserType>({
56
61
  // ArcGIS username
57
62
  username: {
58
63
  type: String,
@@ -73,7 +78,7 @@ export async function ArcGISGroupModule(mongoose: MongooseModule) {
73
78
  id: false,
74
79
  });
75
80
 
76
- const ArcGISDepartment = createSchema(Schema, {
81
+ const ArcGISDepartment = new Schema<ArcGISDepartmentType>({
77
82
  department: {
78
83
  type: String,
79
84
  default: "",
@@ -99,7 +104,7 @@ export async function ArcGISGroupModule(mongoose: MongooseModule) {
99
104
  id: false,
100
105
  });
101
106
 
102
- const modelSchema = createSchema(Schema, {
107
+ const modelSchema = new Schema<ArcGISGroupType>({
103
108
  // Unique, to be able to use replaceInto
104
109
  groupId: {
105
110
  type: String,
@@ -166,17 +171,14 @@ export async function ArcGISGroupModule(mongoose: MongooseModule) {
166
171
  // if date is in the past, we should refresh this
167
172
  // at run success, update this date to a date in the future
168
173
  runAt: {
169
- type: Date,
174
+ type: Date || String,
170
175
  default: "",
171
176
  },
172
177
  }, {
173
- collection: "massive_arcgis_group",
178
+ autoIndex: false,
174
179
  });
175
- modelSchema.set("autoIndex", false);
176
180
 
177
- return createModel(mongoose, "ArcGISGroup", modelSchema);
181
+ return mongoose.model<ArcGISGroup>("ArcGISGroup", modelSchema, "massive_arcgis_group", { overwriteModels: true });
178
182
  }
179
183
 
180
- export interface ArcGISGroup extends ItemTypeFromTypeSchemaFunction<typeof ArcGISGroupModule> { }
181
- export interface ArcGISGroupModel extends ModelTypeFromTypeSchemaFunction<ArcGISGroup> { }
182
- export default ArcGISGroupModule as ReplaceModelReturnType<typeof ArcGISGroupModule, ArcGISGroupModel>;
184
+ export interface ArcGISGroupModel extends Model<ArcGISGroup> { }
@@ -1,24 +1,21 @@
1
1
  import * as uuid from "uuid";
2
2
 
3
3
  import {
4
- createModel,
5
- createSchema,
6
4
  currentDate,
7
- DocumentTypeFromSchema,
8
- ItemTypeFromTypeSchemaFunction,
9
- ModelFromSchema,
10
- ModelTypeFromTypeSchemaFunction,
11
5
  MongooseModule,
12
- ReplaceModelReturnType,
13
6
  retrieveCurrentUnixTime,
14
7
  } from "../helpers";
8
+ import { Model } from "mongoose";
9
+ import { AssignmentType } from "../types/assignment";
15
10
 
16
- export async function AssignmentModule(mongoose: MongooseModule) {
17
- const { Schema, Types } = mongoose;
11
+ export interface Assignment extends AssignmentType, Record<string, unknown> { }
18
12
 
19
- const modelSchema = createSchema(Schema, {
13
+ export default async function AssignmentModule(mongoose: MongooseModule) {
14
+ const { Schema } = mongoose;
15
+
16
+ const modelSchema = new Schema<AssignmentType>({
20
17
  _id: {
21
- type: Types.ObjectId,
18
+ type: Schema.Types.ObjectId,
22
19
  auto: true,
23
20
  },
24
21
  uuid: {
@@ -52,7 +49,6 @@ export async function AssignmentModule(mongoose: MongooseModule) {
52
49
  type: Number,
53
50
  default: retrieveCurrentUnixTime,
54
51
  },
55
-
56
52
  //
57
53
  position: {
58
54
  type: Number,
@@ -71,20 +67,18 @@ export async function AssignmentModule(mongoose: MongooseModule) {
71
67
  default: "",
72
68
  },
73
69
  }, {
74
- collection: "massive_assignment",
70
+ autoIndex: false,
75
71
  });
76
72
  modelSchema.set("autoIndex", false);
73
+ modelSchema.virtual("id").get(function(this: AssignmentType) {
74
+ return this._id.toString();
75
+ });
77
76
  modelSchema.set("toJSON", {
78
77
  virtuals: true,
79
78
  versionKey: false,
80
- transform(doc: ModelFromSchema<typeof modelSchema>, ret: DocumentTypeFromSchema<typeof modelSchema>) {
81
- ret.id = ret._id.toString();
82
- },
83
79
  });
84
80
 
85
- return createModel(mongoose, "Assignment", modelSchema);
81
+ return mongoose.model<Assignment>("Assignment", modelSchema, "massive_assignment", { overwriteModels: true });
86
82
  }
87
83
 
88
- export interface Assignment extends ItemTypeFromTypeSchemaFunction<typeof AssignmentModule> { }
89
- export interface AssignmentModel extends ModelTypeFromTypeSchemaFunction<Assignment> { }
90
- export default AssignmentModule as ReplaceModelReturnType<typeof AssignmentModule, AssignmentModel>;
84
+ export interface AssignmentModel extends Model<Assignment> { }