tabletcommand-incident 0.4.11 → 0.4.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cspell/project-words.txt +5 -0
- package/build/incidentProcessor.js +5 -1
- package/build/incidentProcessor.js.map +1 -1
- package/build/ruleLegacy/cleanupCommentsFilters.js +0 -21
- package/build/ruleLegacy/cleanupCommentsFilters.js.map +1 -1
- package/build/ruleProcessorLegacy.js +0 -73
- package/build/ruleProcessorLegacy.js.map +1 -1
- package/build/rules/index.js +81 -57
- package/build/rules/index.js.map +1 -1
- package/build/rules/join-call-type-priority.js +23 -3
- package/build/rules/join-call-type-priority.js.map +1 -1
- package/build/rules/set-fire-alarm-at-dispatch-from-alarm-level.js +65 -0
- package/build/rules/set-fire-alarm-at-dispatch-from-alarm-level.js.map +1 -0
- package/build/rules/set-fire-map-santa-clara-city copy.js +51 -0
- package/build/rules/set-fire-map-santa-clara-city copy.js.map +1 -0
- package/build/test/domain.js +61 -55
- package/build/test/domain.js.map +1 -1
- package/build/test/index.js +279 -98
- package/build/test/index.js.map +1 -1
- package/build/test/mock.js +288 -3
- package/build/test/mock.js.map +1 -1
- package/build/test/rules/clean-up-comments.js +4 -8
- package/build/test/rules/clean-up-comments.js.map +1 -1
- package/build/test/rules/clean-up-lat-long.js +5 -9
- package/build/test/rules/clean-up-lat-long.js.map +1 -1
- package/build/test/rules/clear-field.js +4 -8
- package/build/test/rules/clear-field.js.map +1 -1
- package/build/test/rules/close-incident-after-hours.js +8 -12
- package/build/test/rules/close-incident-after-hours.js.map +1 -1
- package/build/test/rules/close-incident-matching-incident-number.js +28 -29
- package/build/test/rules/close-incident-matching-incident-number.js.map +1 -1
- package/build/test/rules/close-incident-of-certain-type.js +8 -12
- package/build/test/rules/close-incident-of-certain-type.js.map +1 -1
- package/build/test/rules/join-call-type-priority.js +20 -11
- package/build/test/rules/join-call-type-priority.js.map +1 -1
- package/build/test/rules/map-unit-dates-verdugo.js +8 -9
- package/build/test/rules/map-unit-dates-verdugo.js.map +1 -1
- package/build/test/rules/remove-person-from-unit.js +6 -7
- package/build/test/rules/remove-person-from-unit.js.map +1 -1
- package/build/test/rules/set-address.js +5 -9
- package/build/test/rules/set-address.js.map +1 -1
- package/build/test/rules/set-channels-from-radio-channels.js +19 -13
- package/build/test/rules/set-channels-from-radio-channels.js.map +1 -1
- package/build/test/rules/set-city-alameda.js +5 -9
- package/build/test/rules/set-city-alameda.js.map +1 -1
- package/build/test/rules/set-city-calfire-lnu.js +5 -9
- package/build/test/rules/set-city-calfire-lnu.js.map +1 -1
- package/build/test/rules/set-city-cleanup.js +7 -11
- package/build/test/rules/set-city-cleanup.js.map +1 -1
- package/build/test/rules/set-city-southern-marin.js +5 -9
- package/build/test/rules/set-city-southern-marin.js.map +1 -1
- package/build/test/rules/set-city-verdugo.js +4 -8
- package/build/test/rules/set-city-verdugo.js.map +1 -1
- package/build/test/rules/set-comment-opts-ack-type.js +7 -8
- package/build/test/rules/set-comment-opts-ack-type.js.map +1 -1
- package/build/test/rules/set-common-place-name.js +4 -8
- package/build/test/rules/set-common-place-name.js.map +1 -1
- package/build/test/rules/set-communication-channels-from-radio-names.js +6 -10
- package/build/test/rules/set-communication-channels-from-radio-names.js.map +1 -1
- package/build/test/rules/set-cross-streets.js +16 -20
- package/build/test/rules/set-cross-streets.js.map +1 -1
- package/build/test/rules/set-fire-map-from-map-pages-southern-marin.js +4 -8
- package/build/test/rules/set-fire-map-from-map-pages-southern-marin.js.map +1 -1
- package/build/test/rules/set-fire-map-pages-ontario.js +5 -9
- package/build/test/rules/set-fire-map-pages-ontario.js.map +1 -1
- package/build/test/rules/set-fire-map-santa-clara-city.js +4 -8
- package/build/test/rules/set-fire-map-santa-clara-city.js.map +1 -1
- package/build/test/rules/set-format-units-pulsepoint.js +6 -7
- package/build/test/rules/set-format-units-pulsepoint.js.map +1 -1
- package/build/test/rules/set-incident-type-ontario.js +4 -8
- package/build/test/rules/set-incident-type-ontario.js.map +1 -1
- package/build/test/rules/set-location-preference-derry.js +10 -14
- package/build/test/rules/set-location-preference-derry.js.map +1 -1
- package/build/test/rules/set-location-preference.js +10 -14
- package/build/test/rules/set-location-preference.js.map +1 -1
- package/build/test/rules/set-map-incident-type-pulsepoint.js +4 -8
- package/build/test/rules/set-map-incident-type-pulsepoint.js.map +1 -1
- package/build/test/rules/set-prior-incident-comment-field.js +5 -6
- package/build/test/rules/set-prior-incident-comment-field.js.map +1 -1
- package/build/test/rules/set-street-number.js +5 -9
- package/build/test/rules/set-street-number.js.map +1 -1
- package/build/test/rulesLegacy.js +0 -245
- package/build/test/rulesLegacy.js.map +1 -1
- package/build/test/rulesLegacyCleanupCommentsFilters.js +0 -19
- package/build/test/rulesLegacyCleanupCommentsFilters.js.map +1 -1
- package/build/test/setIncidentType.js +5 -6
- package/build/test/setIncidentType.js.map +1 -1
- package/build/verify/correction.js +62 -0
- package/build/verify/correction.js.map +1 -0
- package/definitions/incidentProcessor.d.ts.map +1 -1
- package/definitions/ruleLegacy/cleanupCommentsFilters.d.ts +0 -1
- package/definitions/ruleLegacy/cleanupCommentsFilters.d.ts.map +1 -1
- package/definitions/ruleProcessorLegacy.d.ts.map +1 -1
- package/definitions/rules/index.d.ts.map +1 -1
- package/definitions/rules/join-call-type-priority.d.ts +4 -1
- package/definitions/rules/join-call-type-priority.d.ts.map +1 -1
- package/definitions/rules/set-fire-alarm-at-dispatch-from-alarm-level.d.ts +11 -0
- package/definitions/rules/set-fire-alarm-at-dispatch-from-alarm-level.d.ts.map +1 -0
- package/definitions/rules/set-fire-map-santa-clara-city copy.d.ts +11 -0
- package/definitions/rules/set-fire-map-santa-clara-city copy.d.ts.map +1 -0
- package/definitions/test/mock.d.ts +6 -1
- package/definitions/test/mock.d.ts.map +1 -1
- package/definitions/types.d.ts +1 -0
- package/definitions/types.d.ts.map +1 -1
- package/definitions/verify/correction.d.ts +2 -0
- package/definitions/verify/correction.d.ts.map +1 -0
- package/package.json +8 -8
- package/src/incidentProcessor.ts +5 -1
- package/src/ruleLegacy/cleanupCommentsFilters.js +0 -26
- package/src/ruleProcessorLegacy.js +0 -88
- package/src/rules/index.ts +92 -65
- package/src/rules/join-call-type-priority.ts +28 -3
- package/src/rules/set-fire-alarm-at-dispatch-from-alarm-level.ts +67 -0
- package/src/test/domain.ts +9 -4
- package/src/test/index.ts +295 -62
- package/src/test/mock.ts +293 -3
- package/src/test/rules/clean-up-comments.ts +1 -2
- package/src/test/rules/clean-up-lat-long.ts +1 -2
- package/src/test/rules/clear-field.ts +1 -2
- package/src/test/rules/close-incident-after-hours.ts +1 -2
- package/src/test/rules/close-incident-matching-incident-number.ts +2 -2
- package/src/test/rules/close-incident-of-certain-type.ts +1 -2
- package/src/test/rules/join-call-type-priority.ts +19 -5
- package/src/test/rules/map-unit-dates-verdugo.ts +1 -3
- package/src/test/rules/remove-person-from-unit.ts +1 -2
- package/src/test/rules/set-address.ts +1 -2
- package/src/test/rules/set-channels-from-radio-channels.ts +11 -2
- package/src/test/rules/set-city-alameda.ts +1 -2
- package/src/test/rules/set-city-calfire-lnu.ts +1 -2
- package/src/test/rules/set-city-cleanup.ts +1 -2
- package/src/test/rules/set-city-southern-marin.ts +1 -2
- package/src/test/rules/set-city-verdugo.ts +1 -2
- package/src/test/rules/set-comment-opts-ack-type.ts +1 -2
- package/src/test/rules/set-common-place-name.ts +1 -2
- package/src/test/rules/set-communication-channels-from-radio-names.ts +1 -2
- package/src/test/rules/set-cross-streets.ts +1 -2
- package/src/test/rules/set-fire-map-from-map-pages-southern-marin.ts +1 -2
- package/src/test/rules/set-fire-map-pages-ontario.ts +1 -2
- package/src/test/rules/set-fire-map-santa-clara-city.ts +1 -2
- package/src/test/rules/set-format-units-pulsepoint.ts +1 -2
- package/src/test/rules/set-incident-type-ontario.ts +1 -2
- package/src/test/rules/set-location-preference-derry.ts +1 -2
- package/src/test/rules/set-location-preference.ts +1 -2
- package/src/test/rules/set-map-incident-type-pulsepoint.ts +1 -2
- package/src/test/rules/set-prior-incident-comment-field.ts +2 -3
- package/src/test/rules/set-street-number.ts +1 -2
- package/src/test/rulesLegacy.js +1 -272
- package/src/test/rulesLegacyCleanupCommentsFilters.js +0 -22
- package/src/test/setIncidentType.ts +1 -3
- package/src/types.ts +1 -0
- package/src/verify/correction.ts +55 -0
- package/build/ruleLegacy/removePersonFromUnit.js +0 -35
- package/build/ruleLegacy/removePersonFromUnit.js.map +0 -1
- package/build/ruleLegacy/setAgencyCallTypeClarkCounty.js +0 -18
- package/build/ruleLegacy/setAgencyCallTypeClarkCounty.js.map +0 -1
- package/build/ruleLegacy/setCommunicationChannelsFromRadioNames.js +0 -50
- package/build/ruleLegacy/setCommunicationChannelsFromRadioNames.js.map +0 -1
- package/build/ruleLegacy/setFireMapEmptyString.js +0 -15
- package/build/ruleLegacy/setFireMapEmptyString.js.map +0 -1
- package/definitions/location.d.ts +0 -10
- package/definitions/location.d.ts.map +0 -1
- package/definitions/rule/cleanupComments.d.ts +0 -3
- package/definitions/rule/cleanupComments.d.ts.map +0 -1
- package/definitions/rule/cleanupCommentsFilters.d.ts +0 -8
- package/definitions/rule/cleanupCommentsFilters.d.ts.map +0 -1
- package/definitions/rule/cleanupLatLongSantaClaraCity.d.ts +0 -3
- package/definitions/rule/cleanupLatLongSantaClaraCity.d.ts.map +0 -1
- package/definitions/rule/cleanupNull.d.ts +0 -3
- package/definitions/rule/cleanupNull.d.ts.map +0 -1
- package/definitions/rule/cleanupReportNumber.d.ts +0 -3
- package/definitions/rule/cleanupReportNumber.d.ts.map +0 -1
- package/definitions/rule/closeIncidentAfterHours.d.ts +0 -3
- package/definitions/rule/closeIncidentAfterHours.d.ts.map +0 -1
- package/definitions/rule/closeIncidentMatchingIncidentNumber.d.ts +0 -3
- package/definitions/rule/closeIncidentMatchingIncidentNumber.d.ts.map +0 -1
- package/definitions/rule/closeIncidentOfCertainType.d.ts +0 -3
- package/definitions/rule/closeIncidentOfCertainType.d.ts.map +0 -1
- package/definitions/rule/copyCommandName.d.ts +0 -3
- package/definitions/rule/copyCommandName.d.ts.map +0 -1
- package/definitions/rule/copyIncidentNumber.d.ts +0 -3
- package/definitions/rule/copyIncidentNumber.d.ts.map +0 -1
- package/definitions/rule/copyLocationComment.d.ts +0 -3
- package/definitions/rule/copyLocationComment.d.ts.map +0 -1
- package/definitions/rule/mapUnitDatesVerdugo.d.ts +0 -3
- package/definitions/rule/mapUnitDatesVerdugo.d.ts.map +0 -1
- package/definitions/rule/rebuildUnitDispatchNumber.d.ts +0 -3
- package/definitions/rule/rebuildUnitDispatchNumber.d.ts.map +0 -1
- package/definitions/rule/removeEmptyPersonFromUnit.d.ts +0 -3
- package/definitions/rule/removeEmptyPersonFromUnit.d.ts.map +0 -1
- package/definitions/rule/removeField.d.ts +0 -3
- package/definitions/rule/removeField.d.ts.map +0 -1
- package/definitions/rule/removePersonFromUnit.d.ts +0 -3
- package/definitions/rule/removePersonFromUnit.d.ts.map +0 -1
- package/definitions/rule/setAgencyCallTypeClarkCounty.d.ts +0 -3
- package/definitions/rule/setAgencyCallTypeClarkCounty.d.ts.map +0 -1
- package/definitions/rule/setChannelUrlForDepartment.d.ts +0 -3
- package/definitions/rule/setChannelUrlForDepartment.d.ts.map +0 -1
- package/definitions/rule/setChannelsFromRadioChannels.d.ts +0 -3
- package/definitions/rule/setChannelsFromRadioChannels.d.ts.map +0 -1
- package/definitions/rule/setCityAlameda.d.ts +0 -3
- package/definitions/rule/setCityAlameda.d.ts.map +0 -1
- package/definitions/rule/setCityCalfireLNU.d.ts +0 -3
- package/definitions/rule/setCityCalfireLNU.d.ts.map +0 -1
- package/definitions/rule/setCitySouthernMarin.d.ts +0 -3
- package/definitions/rule/setCitySouthernMarin.d.ts.map +0 -1
- package/definitions/rule/setCommonPlaceName.d.ts +0 -3
- package/definitions/rule/setCommonPlaceName.d.ts.map +0 -1
- package/definitions/rule/setCommunicationChannelsFromRadioNames.d.ts +0 -3
- package/definitions/rule/setCommunicationChannelsFromRadioNames.d.ts.map +0 -1
- package/definitions/rule/setCrossStreets.d.ts +0 -3
- package/definitions/rule/setCrossStreets.d.ts.map +0 -1
- package/definitions/rule/setFireMapEmptyString.d.ts +0 -3
- package/definitions/rule/setFireMapEmptyString.d.ts.map +0 -1
- package/definitions/rule/setFireMapFromMapPagesSouthernMarin.d.ts +0 -3
- package/definitions/rule/setFireMapFromMapPagesSouthernMarin.d.ts.map +0 -1
- package/definitions/rule/setFireMapSantaClaraCity.d.ts +0 -3
- package/definitions/rule/setFireMapSantaClaraCity.d.ts.map +0 -1
- package/definitions/rule/setFormatUnitsPulsepoint.d.ts +0 -3
- package/definitions/rule/setFormatUnitsPulsepoint.d.ts.map +0 -1
- package/definitions/rule/setFullAddress.d.ts +0 -3
- package/definitions/rule/setFullAddress.d.ts.map +0 -1
- package/definitions/rule/setLatitudeLongitude.d.ts +0 -3
- package/definitions/rule/setLatitudeLongitude.d.ts.map +0 -1
- package/definitions/rule/setLegacyPriorIncidentChanged.d.ts +0 -3
- package/definitions/rule/setLegacyPriorIncidentChanged.d.ts.map +0 -1
- package/definitions/rule/setLegacyRenameUnit.d.ts +0 -3
- package/definitions/rule/setLegacyRenameUnit.d.ts.map +0 -1
- package/definitions/rule/setLocationPreferenceDerry.d.ts +0 -3
- package/definitions/rule/setLocationPreferenceDerry.d.ts.map +0 -1
- package/definitions/rule/setLocationPreferenceTorrance.d.ts +0 -3
- package/definitions/rule/setLocationPreferenceTorrance.d.ts.map +0 -1
- package/definitions/rule/setMapIncidentTypePulsepoint.d.ts +0 -3
- package/definitions/rule/setMapIncidentTypePulsepoint.d.ts.map +0 -1
- package/definitions/rule/setPriorIncidentCommentField.d.ts +0 -3
- package/definitions/rule/setPriorIncidentCommentField.d.ts.map +0 -1
- package/definitions/rule/setRadioChannelsFromLegacyChannels.d.ts +0 -3
- package/definitions/rule/setRadioChannelsFromLegacyChannels.d.ts.map +0 -1
- package/definitions/rule/setRadioChannelsFromRadioNames.d.ts +0 -3
- package/definitions/rule/setRadioChannelsFromRadioNames.d.ts.map +0 -1
- package/definitions/rule/setStreetNumber.d.ts +0 -3
- package/definitions/rule/setStreetNumber.d.ts.map +0 -1
- package/definitions/rule/setUnitDispatchNumberAsString.d.ts +0 -3
- package/definitions/rule/setUnitDispatchNumberAsString.d.ts.map +0 -1
- package/definitions/rule/setUnitUUID.d.ts +0 -3
- package/definitions/rule/setUnitUUID.d.ts.map +0 -1
- package/definitions/rule/translateCityVerdugo.d.ts +0 -3
- package/definitions/rule/translateCityVerdugo.d.ts.map +0 -1
- package/definitions/rule-processor.d.ts +0 -2
- package/definitions/rule-processor.d.ts.map +0 -1
- package/definitions/ruleLegacy/copyIncidentNumber.d.ts +0 -3
- package/definitions/ruleLegacy/copyIncidentNumber.d.ts.map +0 -1
- package/definitions/ruleLegacy/copyLocationComment.d.ts +0 -3
- package/definitions/ruleLegacy/copyLocationComment.d.ts.map +0 -1
- package/definitions/ruleLegacy/removePersonFromUnit.d.ts +0 -3
- package/definitions/ruleLegacy/removePersonFromUnit.d.ts.map +0 -1
- package/definitions/ruleLegacy/setAgencyCallTypeClarkCounty.d.ts +0 -3
- package/definitions/ruleLegacy/setAgencyCallTypeClarkCounty.d.ts.map +0 -1
- package/definitions/ruleLegacy/setCityAlameda.d.ts +0 -3
- package/definitions/ruleLegacy/setCityAlameda.d.ts.map +0 -1
- package/definitions/ruleLegacy/setCityCalfireLNU.d.ts +0 -3
- package/definitions/ruleLegacy/setCityCalfireLNU.d.ts.map +0 -1
- package/definitions/ruleLegacy/setCitySouthernMarin.d.ts +0 -3
- package/definitions/ruleLegacy/setCitySouthernMarin.d.ts.map +0 -1
- package/definitions/ruleLegacy/setCommonPlaceName.d.ts +0 -3
- package/definitions/ruleLegacy/setCommonPlaceName.d.ts.map +0 -1
- package/definitions/ruleLegacy/setCommunicationChannelsFromRadioNames.d.ts +0 -3
- package/definitions/ruleLegacy/setCommunicationChannelsFromRadioNames.d.ts.map +0 -1
- package/definitions/ruleLegacy/setCrossStreets.d.ts +0 -3
- package/definitions/ruleLegacy/setCrossStreets.d.ts.map +0 -1
- package/definitions/ruleLegacy/setFireMapEmptyString.d.ts +0 -3
- package/definitions/ruleLegacy/setFireMapEmptyString.d.ts.map +0 -1
- package/definitions/ruleLegacy/setFireMapFromMapPagesSouthernMarin.d.ts +0 -3
- package/definitions/ruleLegacy/setFireMapFromMapPagesSouthernMarin.d.ts.map +0 -1
- package/definitions/ruleLegacy/setFullAddress.d.ts +0 -3
- package/definitions/ruleLegacy/setFullAddress.d.ts.map +0 -1
- package/definitions/ruleLegacy/setPriorIncidentCommentField.d.ts +0 -3
- package/definitions/ruleLegacy/setPriorIncidentCommentField.d.ts.map +0 -1
- package/definitions/ruleLegacy/translateCityVerdugo.d.ts +0 -3
- package/definitions/ruleLegacy/translateCityVerdugo.d.ts.map +0 -1
- package/definitions/set-incident-type.d.ts +0 -20
- package/definitions/set-incident-type.d.ts.map +0 -1
- package/definitions/test/rules.d.ts +0 -2
- package/definitions/test/rules.d.ts.map +0 -1
- package/definitions/test/rulesCleanupCommentsFilters.d.ts +0 -2
- package/definitions/test/rulesCleanupCommentsFilters.d.ts.map +0 -1
- package/definitions/test/set-incident-type.d.ts +0 -2
- package/definitions/test/set-incident-type.d.ts.map +0 -1
- package/src/ruleLegacy/removePersonFromUnit.js +0 -37
- package/src/ruleLegacy/setAgencyCallTypeClarkCounty.js +0 -20
- package/src/ruleLegacy/setCommunicationChannelsFromRadioNames.js +0 -58
- package/src/ruleLegacy/setFireMapEmptyString.js +0 -15
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { assert } from "chai";
|
|
2
2
|
import "mocha";
|
|
3
|
-
import { CADIncident } from "tabletcommand-backend-models";
|
|
4
3
|
import _ from "lodash";
|
|
5
|
-
|
|
4
|
+
import { CADIncident } from "tabletcommand-backend-models";
|
|
6
5
|
|
|
7
6
|
import {
|
|
8
7
|
IncidentRuleSetPriorIncidentCommentField,
|
package/src/test/rulesLegacy.js
CHANGED
|
@@ -15,11 +15,9 @@ const closeIncidentMatchingIncidentNumber = require("../ruleLegacy/closeIncident
|
|
|
15
15
|
const closeIncidentOfCertainType = require("../ruleLegacy/closeIncidentOfCertainType");
|
|
16
16
|
const rebuildUnitDispatchNumber = require("../ruleLegacy/rebuildUnitDispatchNumber");
|
|
17
17
|
const removeField = require("../ruleLegacy/removeField");
|
|
18
|
-
const setAgencyCallTypeClarkCounty = require("../ruleLegacy/setAgencyCallTypeClarkCounty");
|
|
19
18
|
const setMapIncidentTypePulsepoint = require("../ruleLegacy/setMapIncidentTypePulsepoint");
|
|
20
19
|
const setFormatUnitsPulsepoint = require("../ruleLegacy/setFormatUnitsPulsepoint");
|
|
21
20
|
const mapUnitDatesVerdugo = require("../ruleLegacy/mapUnitDatesVerdugo");
|
|
22
|
-
const setCommunicationChannelsFromRadioNamesMod = require("../ruleLegacy/setCommunicationChannelsFromRadioNames");
|
|
23
21
|
const setRadioChannelsFromRadioNamesMod = require("../ruleLegacy/setRadioChannelsFromRadioNames");
|
|
24
22
|
const setChannelsFromRadioChannels = require("../ruleLegacy/setChannelsFromRadioChannels");
|
|
25
23
|
const setLatitudeLongitude = require("../ruleLegacy/setLatitudeLongitude");
|
|
@@ -86,21 +84,6 @@ const testDeptSanDiego = {
|
|
|
86
84
|
apikey: "sdKey"
|
|
87
85
|
};
|
|
88
86
|
|
|
89
|
-
const testDeptSMC = {
|
|
90
|
-
_id: "5238fb0228dd530000000132",
|
|
91
|
-
apikey: "smcKey"
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
const testDeptAlameda = {
|
|
95
|
-
_id: "63695b86cd105785080ef488",
|
|
96
|
-
apikey: "alaKey"
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
const testDeptLNU = {
|
|
100
|
-
_id: "57292e6a396b8faa39000019",
|
|
101
|
-
apikey: "lnuKey"
|
|
102
|
-
};
|
|
103
|
-
|
|
104
87
|
const testDeptSonoma = {
|
|
105
88
|
_id: "602ef016b63b6f29d83a91d2",
|
|
106
89
|
apikey: "sonomaKey"
|
|
@@ -184,6 +167,7 @@ const testMatchIncidentWithNull = {
|
|
|
184
167
|
}],
|
|
185
168
|
departmentId: "515"
|
|
186
169
|
};
|
|
170
|
+
|
|
187
171
|
const testNotMatchIncidentWithNull = {
|
|
188
172
|
IncidentNumber: "i1239",
|
|
189
173
|
CityOrLocality: "Main St",
|
|
@@ -292,16 +276,6 @@ const testMatchClarkCounty = {
|
|
|
292
276
|
departmentId: "515"
|
|
293
277
|
};
|
|
294
278
|
|
|
295
|
-
const testMatchSanMateoCountyIncidentSample = {
|
|
296
|
-
IncidentNumber: "i1236",
|
|
297
|
-
StreetName: "Main St",
|
|
298
|
-
StreetNumber: "123",
|
|
299
|
-
CityOrLocality: "Main St",
|
|
300
|
-
Longitude: "-122.3118",
|
|
301
|
-
Latitude: "37.577",
|
|
302
|
-
FireMap: "12C"
|
|
303
|
-
};
|
|
304
|
-
|
|
305
279
|
const testMatchAlamedaIncidentRadioChannels = {
|
|
306
280
|
IncidentNumber: "i1237",
|
|
307
281
|
Unit: [
|
|
@@ -371,33 +345,6 @@ const testMatchAlamedaIncidentRadioChannels3 = {
|
|
|
371
345
|
}]
|
|
372
346
|
};
|
|
373
347
|
|
|
374
|
-
const testMatchSanMateoCountyIncidentCommChannels = {
|
|
375
|
-
IncidentNumber: "i1237",
|
|
376
|
-
Unit: [
|
|
377
|
-
//
|
|
378
|
-
{
|
|
379
|
-
UnitDispatchNumber: "TAC15",
|
|
380
|
-
UnitID: "TAC15"
|
|
381
|
-
},
|
|
382
|
-
{
|
|
383
|
-
UnitDispatchNumber: "tac8",
|
|
384
|
-
UnitID: "tac8"
|
|
385
|
-
},
|
|
386
|
-
{
|
|
387
|
-
UnitDispatchNumber: "taC9",
|
|
388
|
-
UnitID: "taC9"
|
|
389
|
-
},
|
|
390
|
-
{
|
|
391
|
-
UnitDispatchNumber: "CM41X3",
|
|
392
|
-
UnitID: "CM41X3"
|
|
393
|
-
},
|
|
394
|
-
{
|
|
395
|
-
UnitDispatchNumber: "E3",
|
|
396
|
-
UnitID: "E3"
|
|
397
|
-
}
|
|
398
|
-
]
|
|
399
|
-
};
|
|
400
|
-
|
|
401
348
|
const testMatchMVURadioChannels = {
|
|
402
349
|
IncidentNumber: "i1237",
|
|
403
350
|
radioChannels: [
|
|
@@ -455,33 +402,6 @@ const testMatchCalFireFKU = {
|
|
|
455
402
|
CommandName: "Move Up, Left, Down, Right"
|
|
456
403
|
};
|
|
457
404
|
|
|
458
|
-
const testMatchSantaCruzIncidentCommChannels = {
|
|
459
|
-
IncidentNumber: "1234",
|
|
460
|
-
Unit: [
|
|
461
|
-
//
|
|
462
|
-
{
|
|
463
|
-
UnitDispatchNumber: "FRED",
|
|
464
|
-
UnitID: "FRED"
|
|
465
|
-
},
|
|
466
|
-
{
|
|
467
|
-
UnitDispatchNumber: "tac8",
|
|
468
|
-
UnitID: "tac8"
|
|
469
|
-
},
|
|
470
|
-
{
|
|
471
|
-
UnitDispatchNumber: "taC9",
|
|
472
|
-
UnitID: "taC9"
|
|
473
|
-
},
|
|
474
|
-
{
|
|
475
|
-
UnitDispatchNumber: "FBLK", // cSpell: disable-line
|
|
476
|
-
UnitID: "FBLK" // cSpell: disable-line
|
|
477
|
-
},
|
|
478
|
-
{
|
|
479
|
-
UnitDispatchNumber: "FRED1",
|
|
480
|
-
UnitID: "FRED1"
|
|
481
|
-
}
|
|
482
|
-
]
|
|
483
|
-
};
|
|
484
|
-
|
|
485
405
|
const testMatchIncidentPulsePoint = {
|
|
486
406
|
"AgencyID": "11111",
|
|
487
407
|
"IncidentNumber": "F1111111",
|
|
@@ -523,57 +443,6 @@ const testMatchIncidentVerdugo = {
|
|
|
523
443
|
"CityOrLocality": "PAS"
|
|
524
444
|
};
|
|
525
445
|
|
|
526
|
-
const testMatchSanMateoCountyPersonnel = {
|
|
527
|
-
IncidentNumber: "i1237",
|
|
528
|
-
"Unit": [
|
|
529
|
-
{
|
|
530
|
-
"AlarmAtDispatch": "1",
|
|
531
|
-
"Personnel": [
|
|
532
|
-
{
|
|
533
|
-
"PersonnelID": "R295",
|
|
534
|
-
"PersonnelName": "SMITH,BOB FF/P"
|
|
535
|
-
},
|
|
536
|
-
{
|
|
537
|
-
"PersonnelID": "R261",
|
|
538
|
-
"PersonnelName": "SMITH, ROB FF/P"
|
|
539
|
-
},
|
|
540
|
-
{
|
|
541
|
-
"PersonnelID": "R267",
|
|
542
|
-
"PersonnelName": "SMITH, KYLE FF"
|
|
543
|
-
},
|
|
544
|
-
{
|
|
545
|
-
"PersonnelID": "R216",
|
|
546
|
-
"PersonnelName": "CID, JOHN CAPT"
|
|
547
|
-
},
|
|
548
|
-
{
|
|
549
|
-
"PersonnelID": "T9",
|
|
550
|
-
"PersonnelName": "Truck 9"
|
|
551
|
-
},
|
|
552
|
-
{
|
|
553
|
-
"PersonnelID": "KM-TALL",
|
|
554
|
-
"PersonnelName": "KINGS MTN VOLUNTEER ALL"
|
|
555
|
-
},
|
|
556
|
-
{
|
|
557
|
-
"PersonnelID": "A0051",
|
|
558
|
-
"PersonnelName": "RON SWANSON CAPT S/O"
|
|
559
|
-
},
|
|
560
|
-
{
|
|
561
|
-
"PersonnelID": "E52",
|
|
562
|
-
"PersonnelName": "E52"
|
|
563
|
-
},
|
|
564
|
-
{
|
|
565
|
-
"PersonnelID": "BC5",
|
|
566
|
-
"PersonnelName": "BC5 PAGER"
|
|
567
|
-
}
|
|
568
|
-
],
|
|
569
|
-
"PersonnelCount": 9,
|
|
570
|
-
"TimeDispatched": "2021-03-18T20:45:15-0700",
|
|
571
|
-
"UnitDispatchNumber": "T9.1616125515",
|
|
572
|
-
"UnitID": "T9"
|
|
573
|
-
}
|
|
574
|
-
]
|
|
575
|
-
};
|
|
576
|
-
|
|
577
446
|
const testMatchSanFrancisco = {
|
|
578
447
|
IncidentNumber: "f123",
|
|
579
448
|
TacticalChannel: "B53",
|
|
@@ -597,46 +466,6 @@ const testMatchSantaClaraCityLatLong = {
|
|
|
597
466
|
Longitude: "field:-121.98726"
|
|
598
467
|
};
|
|
599
468
|
|
|
600
|
-
const testMatchSouthernMarinCityLocation = {
|
|
601
|
-
departmentId: testDeptSouthernMarin.id,
|
|
602
|
-
IncidentNumber: "i1238",
|
|
603
|
-
TransactionID: 123,
|
|
604
|
-
StreetNumber: "15",
|
|
605
|
-
StreetName: "WOODBRIDGE",
|
|
606
|
-
StreetSuffix: "WAY",
|
|
607
|
-
CityOrLocality: "NOV",
|
|
608
|
-
CrossStreet1: "ALCONBURY WAY", // cSpell: disable-line
|
|
609
|
-
CrossStreet2: "LACONHEATH AVE", // cSpell: disable-line
|
|
610
|
-
LocationComment: "RAFAEL CONVALESCENT",
|
|
611
|
-
MapPages: "5159"
|
|
612
|
-
};
|
|
613
|
-
|
|
614
|
-
const testMatchAlamedaCityLocation = {
|
|
615
|
-
departmentId: testDeptAlameda.id,
|
|
616
|
-
IncidentNumber: "i1238",
|
|
617
|
-
TransactionID: 123,
|
|
618
|
-
StreetNumber: "15",
|
|
619
|
-
StreetName: "Delta",
|
|
620
|
-
StreetSuffix: "Way",
|
|
621
|
-
CityOrLocality: "AA",
|
|
622
|
-
CrossStreet1: "Delta WAY", // cSpell: disable-line
|
|
623
|
-
CrossStreet2: "Beta AVE", // cSpell: disable-line
|
|
624
|
-
LocationComment: "TEST",
|
|
625
|
-
};
|
|
626
|
-
|
|
627
|
-
const testMatchLNUCityLocation = {
|
|
628
|
-
departmentId: testDeptLNU.id,
|
|
629
|
-
IncidentNumber: "i1238",
|
|
630
|
-
TransactionID: 123,
|
|
631
|
-
StreetNumber: "15",
|
|
632
|
-
StreetName: "Delta",
|
|
633
|
-
StreetSuffix: "Way",
|
|
634
|
-
CityOrLocality: "ST_HELENA",
|
|
635
|
-
CrossStreet1: "Delta WAY",
|
|
636
|
-
CrossStreet2: "Beta AVE",
|
|
637
|
-
LocationComment: "TEST",
|
|
638
|
-
};
|
|
639
|
-
|
|
640
469
|
const testMatchTorranceClearComment = {
|
|
641
470
|
departmentId: testDeptTorrance.id,
|
|
642
471
|
IncidentNumber: "i1238",
|
|
@@ -663,12 +492,6 @@ const testMatchTorranceClearComment = {
|
|
|
663
492
|
]
|
|
664
493
|
};
|
|
665
494
|
|
|
666
|
-
const testSouthernMarinCloseIncidentOfType = {
|
|
667
|
-
IncidentNumber: "i1239",
|
|
668
|
-
AgencyIncidentCallTypeDescription: "ALARM/SPRINKLER TEST INFORMATION",
|
|
669
|
-
departmentId: "515"
|
|
670
|
-
};
|
|
671
|
-
|
|
672
495
|
const testMatchWhitbyCleanupComments = {
|
|
673
496
|
departmentId: testDeptWhitby.id,
|
|
674
497
|
IncidentNumber: "i1238",
|
|
@@ -1065,22 +888,6 @@ describe("rule", function() {
|
|
|
1065
888
|
return done(null);
|
|
1066
889
|
});
|
|
1067
890
|
|
|
1068
|
-
it("should set agency call type for Clark County", function(done) {
|
|
1069
|
-
const shouldResolveTo = "setAgencyCallTypeClarkCounty";
|
|
1070
|
-
const rule = {
|
|
1071
|
-
setAgencyCallTypeClarkCounty: [{
|
|
1072
|
-
is: shouldResolveTo,
|
|
1073
|
-
use: setAgencyCallTypeClarkCounty
|
|
1074
|
-
}]
|
|
1075
|
-
};
|
|
1076
|
-
|
|
1077
|
-
const resolver = karka.create(rule);
|
|
1078
|
-
const testMatchIncident = _.clone(testMatchClarkCounty);
|
|
1079
|
-
const resolvedValue = resolver.resolve("setAgencyCallTypeClarkCounty", testMatchIncident);
|
|
1080
|
-
assert.strictEqual(resolvedValue, shouldResolveTo, "Should resolve");
|
|
1081
|
-
assert.strictEqual(testMatchIncident.AgencyIncidentCallTypeDescription, "P2 High F3H-Building Fire");
|
|
1082
|
-
return done(null);
|
|
1083
|
-
});
|
|
1084
891
|
/* cSpell:disable */
|
|
1085
892
|
it("should set radio channels - ALCO", function(done) {
|
|
1086
893
|
const shouldResolveTo = "setRadioChannelsFromRadioNames";
|
|
@@ -1198,58 +1005,6 @@ describe("rule", function() {
|
|
|
1198
1005
|
});
|
|
1199
1006
|
/* cSpell:enable */
|
|
1200
1007
|
|
|
1201
|
-
it("should set communication channels - SMC", function(done) {
|
|
1202
|
-
const shouldResolveTo = "setCommunicationChannelsFromRadioNames";
|
|
1203
|
-
const setCommunicationChannelsFromRadioNamesSMC = setCommunicationChannelsFromRadioNamesMod(
|
|
1204
|
-
["Tac15"],
|
|
1205
|
-
["TAC8", "tac9"],
|
|
1206
|
-
["CM41x3"]
|
|
1207
|
-
);
|
|
1208
|
-
|
|
1209
|
-
const rule = {
|
|
1210
|
-
setCommunicationChannelsFromRadioNames: [{
|
|
1211
|
-
is: shouldResolveTo,
|
|
1212
|
-
use: setCommunicationChannelsFromRadioNamesSMC
|
|
1213
|
-
}]
|
|
1214
|
-
};
|
|
1215
|
-
|
|
1216
|
-
const resolver = karka.create(rule);
|
|
1217
|
-
const testMatchIncident = _.clone(testMatchSanMateoCountyIncidentCommChannels);
|
|
1218
|
-
const resolvedValue = resolver.resolve("setCommunicationChannelsFromRadioNames", testMatchIncident);
|
|
1219
|
-
assert.strictEqual(resolvedValue, shouldResolveTo, "Should resolve");
|
|
1220
|
-
assert.strictEqual(testMatchIncident.TacticalChannel, "TAC15");
|
|
1221
|
-
assert.strictEqual(testMatchIncident.TacticalAltChannel, "TAC8/TAC9");
|
|
1222
|
-
assert.strictEqual(testMatchIncident.CommandChannel, "CM41X3");
|
|
1223
|
-
return done(null);
|
|
1224
|
-
});
|
|
1225
|
-
|
|
1226
|
-
it("should set communication channels - Santa Cruz", function(done) {
|
|
1227
|
-
const shouldResolveTo = "setCommunicationChannelsFromRadioNames";
|
|
1228
|
-
/* cSpell:disable */
|
|
1229
|
-
const setCommunicationChannelsFromRadioNamesSCRC = setCommunicationChannelsFromRadioNamesMod(
|
|
1230
|
-
["FBLK", "FBLK1", "FBLK2"], // tactical
|
|
1231
|
-
["FBLK", "TAC8", "TAC9"], // tactical alt
|
|
1232
|
-
["FRED", "FRED1", "FRED2"] // command
|
|
1233
|
-
);
|
|
1234
|
-
|
|
1235
|
-
const rule = {
|
|
1236
|
-
setCommunicationChannelsFromRadioNames: [{
|
|
1237
|
-
is: shouldResolveTo,
|
|
1238
|
-
use: setCommunicationChannelsFromRadioNamesSCRC
|
|
1239
|
-
}]
|
|
1240
|
-
};
|
|
1241
|
-
|
|
1242
|
-
const resolver = karka.create(rule);
|
|
1243
|
-
const testMatchIncident = _.clone(testMatchSantaCruzIncidentCommChannels);
|
|
1244
|
-
const resolvedValue = resolver.resolve("setCommunicationChannelsFromRadioNames", testMatchIncident);
|
|
1245
|
-
assert.strictEqual(resolvedValue, shouldResolveTo, "Should resolve");
|
|
1246
|
-
assert.strictEqual(testMatchIncident.TacticalChannel, "FBLK");
|
|
1247
|
-
assert.strictEqual(testMatchIncident.TacticalAltChannel, "FBLK/TAC8/TAC9");
|
|
1248
|
-
assert.strictEqual(testMatchIncident.CommandChannel, "FRED/FRED1");
|
|
1249
|
-
/* cSpell:enable */
|
|
1250
|
-
return done(null);
|
|
1251
|
-
});
|
|
1252
|
-
|
|
1253
1008
|
it("should set channels from radio channels - MVU", function(done) {
|
|
1254
1009
|
const shouldResolveTo = "setChannelsFromRadioChannels";
|
|
1255
1010
|
const rule = {
|
|
@@ -1288,12 +1043,6 @@ describe("rule", function() {
|
|
|
1288
1043
|
});
|
|
1289
1044
|
|
|
1290
1045
|
describe("rule processor", function() {
|
|
1291
|
-
it("Should set agency type for Clark County", function() {
|
|
1292
|
-
const testMatchIncident = _.clone(testMatchClarkCounty);
|
|
1293
|
-
ruleProcessor.ruleProcessor(testMatchIncident, testDeptClarkCounty);
|
|
1294
|
-
assert.strictEqual(testMatchIncident.AgencyIncidentCallTypeDescription, "P2 High F3H-Building Fire");
|
|
1295
|
-
});
|
|
1296
|
-
|
|
1297
1046
|
it("Should close incident of certain type for Stockton", function() {
|
|
1298
1047
|
const testMatchIncident = _.clone(testMatchIncidentSample);
|
|
1299
1048
|
ruleProcessor.ruleProcessor(testMatchIncident, testDepartment);
|
|
@@ -1342,26 +1091,6 @@ describe("rule processor", function() {
|
|
|
1342
1091
|
assert.ok(testMatchIncident.expiration_date.valueOf() / 1000.0 > 110, "expiration_date should not be 0");
|
|
1343
1092
|
});
|
|
1344
1093
|
|
|
1345
|
-
it("should set comm channels for San Mateo County", function() {
|
|
1346
|
-
const testMatchIncident = _.clone(testMatchSanMateoCountyIncidentCommChannels);
|
|
1347
|
-
ruleProcessor.ruleProcessor(testMatchIncident, testDeptSMC);
|
|
1348
|
-
assert.strictEqual(testMatchIncident.TacticalChannel, "TAC15");
|
|
1349
|
-
assert.strictEqual(testMatchIncident.CommandChannel, "CM41X3");
|
|
1350
|
-
});
|
|
1351
|
-
|
|
1352
|
-
it("should remove unit based personnel - San Mateo County", function() {
|
|
1353
|
-
const testMatchIncident = _.clone(testMatchSanMateoCountyPersonnel);
|
|
1354
|
-
ruleProcessor.ruleProcessor(testMatchIncident, testDeptSMC);
|
|
1355
|
-
assert.strictEqual(testMatchIncident.units[0].Personnel.length, 6);
|
|
1356
|
-
assert.strictEqual(testMatchIncident.units[0].PersonnelCount, 6);
|
|
1357
|
-
});
|
|
1358
|
-
|
|
1359
|
-
it("should set FireMap empty string- San Mateo County", function() {
|
|
1360
|
-
const testMatchIncident = _.clone(testMatchSanMateoCountyIncidentSample);
|
|
1361
|
-
ruleProcessor.ruleProcessor(testMatchIncident, testDeptSMC);
|
|
1362
|
-
assert.strictEqual(testMatchIncident.FireMap, "");
|
|
1363
|
-
});
|
|
1364
|
-
|
|
1365
1094
|
it("should remove empty person: empty person for Southern Marin", function() {
|
|
1366
1095
|
const testMatchIncident = _.clone(testRemoveEmptyPersonFieldSouthernMarin);
|
|
1367
1096
|
ruleProcessor.ruleProcessor(testMatchIncident, testDeptSouthernMarin);
|
|
@@ -6,28 +6,6 @@ const _ = require("lodash");
|
|
|
6
6
|
const cleanupCommentsFilters = require("../ruleLegacy/cleanupCommentsFilters")();
|
|
7
7
|
|
|
8
8
|
describe("filters", function() {
|
|
9
|
-
it("missingDate", function() {
|
|
10
|
-
const comments = [
|
|
11
|
-
{
|
|
12
|
-
Comment: "State Response: Mark Was Here",
|
|
13
|
-
CommentSource: "DeGauss",
|
|
14
|
-
CommentDateTime: null
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
Comment: "(PG) PG&E : 888-743-4911 - CHOOSE OPTION 1 FOR SAN MATEO COUNTY",
|
|
18
|
-
CommentSource: "Special Service"
|
|
19
|
-
},
|
|
20
|
-
];
|
|
21
|
-
const filtered = cleanupCommentsFilters.missingDate(comments);
|
|
22
|
-
assert.strictEqual(filtered.length, 2);
|
|
23
|
-
|
|
24
|
-
const cSpecServer = _.first(filtered.filter((c) => { return c.CommentSource === "Special Service"; }));
|
|
25
|
-
assert.strictEqual(cSpecServer.CommentDateTime, "2000-01-01T19:04:05-0800");
|
|
26
|
-
|
|
27
|
-
const cDeGauss = _.first(filtered.filter((c) => { return c.CommentSource === "DeGauss"; }));
|
|
28
|
-
assert.strictEqual(cDeGauss.CommentDateTime, "2000-01-01T19:04:05-0800");
|
|
29
|
-
});
|
|
30
|
-
|
|
31
9
|
it("Torrance", function() {
|
|
32
10
|
const comments = [
|
|
33
11
|
{
|
package/src/types.ts
CHANGED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
// npx ts-node src/verify/correction.ts
|
|
2
|
+
|
|
3
|
+
import * as modelsModule from "tabletcommand-backend-models";
|
|
4
|
+
import { BackendModels } from "tabletcommand-backend-models";
|
|
5
|
+
|
|
6
|
+
import main from "../index";
|
|
7
|
+
|
|
8
|
+
const departmentId = "602ef016b63b6f29d83a91d2";
|
|
9
|
+
const incidentNumber = "SCY241400030";
|
|
10
|
+
const atDate = new Date("2024-05-20T03:54:23.730+0000");
|
|
11
|
+
|
|
12
|
+
async function runCorrection(models: BackendModels) {
|
|
13
|
+
const mainItem = main({
|
|
14
|
+
models,
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
const processor = mainItem.incidentProcessor;
|
|
18
|
+
const department = await models.Department.findById(departmentId);
|
|
19
|
+
if (!department) {
|
|
20
|
+
console.log(`Could not find department for ${departmentId}.`);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const result = await processor.handleProcessIncidentRequestCorrection(incidentNumber, department, atDate);
|
|
25
|
+
if ("error" in result) {
|
|
26
|
+
console.log("Error", result.error);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const {
|
|
31
|
+
incident
|
|
32
|
+
} = result;
|
|
33
|
+
console.log(
|
|
34
|
+
"p", incident?.AgencyIncidentCallTypeDescription,
|
|
35
|
+
"u", (incident?.units ?? []).length,
|
|
36
|
+
"c", (incident?.Comment ?? []).length,
|
|
37
|
+
"st", (incident?.EntryDateTime),
|
|
38
|
+
"cl", (incident?.ClosedDateTime),
|
|
39
|
+
"z"
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
async function run() {
|
|
44
|
+
const {
|
|
45
|
+
mongoose,
|
|
46
|
+
models
|
|
47
|
+
} = await modelsModule.connect(process.env.NODE_MONGO_URL || "");
|
|
48
|
+
|
|
49
|
+
console.log("here we go");
|
|
50
|
+
await runCorrection(models);
|
|
51
|
+
await mongoose.connection.close();
|
|
52
|
+
console.log("done");
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
run().catch(console.error);
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = function removePersonFromUnitModule() {
|
|
3
|
-
"use strict";
|
|
4
|
-
const _ = require("lodash");
|
|
5
|
-
function removePersonFromUnit(config, incident) {
|
|
6
|
-
let ruleMatched = false;
|
|
7
|
-
const regexHasDigits = /\d/g;
|
|
8
|
-
if (_.has(incident, "Unit") && _.isArray(incident.Unit)) {
|
|
9
|
-
_.each(incident.Unit, function (unit) {
|
|
10
|
-
if (_.isArray(unit.Personnel)) {
|
|
11
|
-
const revisedPersons = [];
|
|
12
|
-
_.each(unit.Personnel, function (person) {
|
|
13
|
-
if (_.isObject(person) && _.isString(person.PersonnelName) && person.PersonnelName.indexOf(",") === -1 &&
|
|
14
|
-
(person.PersonnelName.toUpperCase().indexOf("ENGINE") !== -1 ||
|
|
15
|
-
person.PersonnelName.toUpperCase().indexOf("TRUCK") !== -1 ||
|
|
16
|
-
person.PersonnelName.toUpperCase().indexOf("RESCUE") !== -1 ||
|
|
17
|
-
person.PersonnelName.toUpperCase().indexOf("BC") !== -1 ||
|
|
18
|
-
person.PersonnelName.toUpperCase().indexOf("BATTALION") !== -1 ||
|
|
19
|
-
regexHasDigits.test(person.PersonnelName))) {
|
|
20
|
-
unit.PersonnelCount += -1;
|
|
21
|
-
ruleMatched = true;
|
|
22
|
-
}
|
|
23
|
-
else if (_.isObject(person) && _.isString(person.PersonnelName)) {
|
|
24
|
-
revisedPersons.push(person);
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
unit.Personnel = revisedPersons;
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
return ruleMatched;
|
|
32
|
-
}
|
|
33
|
-
return removePersonFromUnit;
|
|
34
|
-
};
|
|
35
|
-
//# sourceMappingURL=removePersonFromUnit.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"removePersonFromUnit.js","sourceRoot":"","sources":["../../src/ruleLegacy/removePersonFromUnit.js"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,GAAG,SAAS,0BAA0B;IAClD,YAAY,CAAC;IAEb,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE5B,SAAS,oBAAoB,CAAC,MAAM,EAAE,QAAQ;QAC5C,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,MAAM,cAAc,GAAG,KAAK,CAAC;QAE7B,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACtD,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAS,IAAI;gBACjC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;oBAC7B,MAAM,cAAc,GAAG,EAAE,CAAC;oBAC1B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAS,MAAM;wBACpC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;4BACnG,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gCAC3D,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gCAC1D,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gCAC3D,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gCACvD,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gCAC9D,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE;4BAC9C,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC;4BAC1B,WAAW,GAAG,IAAI,CAAC;yBACpB;6BAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;4BACjE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;yBAC7B;oBACH,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;iBACjC;YACH,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,OAAO,oBAAoB,CAAC;AAC9B,CAAC,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = function setAgencyCallTypeClarkCounty(config, incident) {
|
|
3
|
-
const _ = require("lodash");
|
|
4
|
-
let ruleMatched = true;
|
|
5
|
-
const hasCallTypeDescription = _.isString(incident.AgencyIncidentCallTypeDescription) && _.trim(incident.AgencyIncidentCallTypeDescription) !== "";
|
|
6
|
-
const hasPriorityDescription = _.isString(incident.AgencyIncidentPriorityDescription) && _.trim(incident.AgencyIncidentPriorityDescription) !== "";
|
|
7
|
-
const canProcess = hasCallTypeDescription && hasPriorityDescription;
|
|
8
|
-
if (!canProcess) {
|
|
9
|
-
return ruleMatched;
|
|
10
|
-
}
|
|
11
|
-
const priorityDescription = _.trim(incident.AgencyIncidentPriorityDescription);
|
|
12
|
-
const callTypeDescription = _.trim(incident.AgencyIncidentCallTypeDescription);
|
|
13
|
-
const nextCallType = `${priorityDescription} ${callTypeDescription}`;
|
|
14
|
-
incident.AgencyIncidentCallTypeDescription = nextCallType;
|
|
15
|
-
ruleMatched = true;
|
|
16
|
-
return ruleMatched;
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=setAgencyCallTypeClarkCounty.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setAgencyCallTypeClarkCounty.js","sourceRoot":"","sources":["../../src/ruleLegacy/setAgencyCallTypeClarkCounty.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AACb,MAAM,CAAC,OAAO,GAAG,SAAS,4BAA4B,CAAC,MAAM,EAAE,QAAQ;IACrE,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5B,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,MAAM,sBAAsB,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,iCAAiC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,KAAK,EAAE,CAAC;IACnJ,MAAM,sBAAsB,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,iCAAiC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,KAAK,EAAE,CAAC;IACnJ,MAAM,UAAU,GAAG,sBAAsB,IAAI,sBAAsB,CAAC;IACpE,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,WAAW,CAAC;KACpB;IAED,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;IAC/E,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;IAC/E,MAAM,YAAY,GAAG,GAAG,mBAAmB,IAAI,mBAAmB,EAAE,CAAC;IACrE,QAAQ,CAAC,iCAAiC,GAAG,YAAY,CAAC;IAC1D,WAAW,GAAG,IAAI,CAAC;IAEnB,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
module.exports = function setCommunicationChannelsFromRadioNamesModule(tacRadioNames, tacAltRadioNames, cmdRadioNames) {
|
|
3
|
-
const _ = require("lodash");
|
|
4
|
-
function channelsForPurpose(incoming, purpose) {
|
|
5
|
-
const foundRadioNames = [];
|
|
6
|
-
for (let index = 0; index < purpose.length; index++) {
|
|
7
|
-
const element = purpose[index].toUpperCase();
|
|
8
|
-
if (incoming.indexOf(element) >= 0) {
|
|
9
|
-
foundRadioNames.push(element);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
return foundRadioNames;
|
|
13
|
-
}
|
|
14
|
-
function setCommunicationChannels(config, incident) {
|
|
15
|
-
let ruleMatched = false;
|
|
16
|
-
if (!_.isArray(incident.Unit)) {
|
|
17
|
-
return ruleMatched;
|
|
18
|
-
}
|
|
19
|
-
if (!_.isArray(tacRadioNames) || !_.isArray(tacAltRadioNames) || !_.isArray(cmdRadioNames)) {
|
|
20
|
-
return ruleMatched;
|
|
21
|
-
}
|
|
22
|
-
const incomingRadioNames = _.map(incident.Unit, (item) => {
|
|
23
|
-
if (!_.isString(item.UnitID)) {
|
|
24
|
-
return "";
|
|
25
|
-
}
|
|
26
|
-
return item.UnitID.toUpperCase();
|
|
27
|
-
});
|
|
28
|
-
if (incomingRadioNames.length === 0) {
|
|
29
|
-
return ruleMatched;
|
|
30
|
-
}
|
|
31
|
-
const foundTac = channelsForPurpose(incomingRadioNames, tacRadioNames);
|
|
32
|
-
if (foundTac.length > 0) {
|
|
33
|
-
ruleMatched = true;
|
|
34
|
-
incident.TacticalChannel = foundTac.join("/");
|
|
35
|
-
}
|
|
36
|
-
const foundTacAlt = channelsForPurpose(incomingRadioNames, tacAltRadioNames);
|
|
37
|
-
if (foundTacAlt.length > 0) {
|
|
38
|
-
ruleMatched = true;
|
|
39
|
-
incident.TacticalAltChannel = foundTacAlt.join("/");
|
|
40
|
-
}
|
|
41
|
-
const foundCmd = channelsForPurpose(incomingRadioNames, cmdRadioNames);
|
|
42
|
-
if (foundCmd.length > 0) {
|
|
43
|
-
ruleMatched = true;
|
|
44
|
-
incident.CommandChannel = foundCmd.join("/");
|
|
45
|
-
}
|
|
46
|
-
return ruleMatched;
|
|
47
|
-
}
|
|
48
|
-
return setCommunicationChannels;
|
|
49
|
-
};
|
|
50
|
-
//# sourceMappingURL=setCommunicationChannelsFromRadioNames.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setCommunicationChannelsFromRadioNames.js","sourceRoot":"","sources":["../../src/ruleLegacy/setCommunicationChannelsFromRadioNames.js"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,GAAG,SAAS,4CAA4C,CAAC,aAAa,EAAE,gBAAgB,EAAE,aAAa;IACnH,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE5B,SAAS,kBAAkB,CAAC,QAAQ,EAAE,OAAO;QAC3C,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACnD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7C,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAClC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC/B;SACF;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,SAAS,wBAAwB,CAAC,MAAM,EAAE,QAAQ;QAChD,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC7B,OAAO,WAAW,CAAC;SACpB;QAED,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YAC1F,OAAO,WAAW,CAAC;SACpB;QAED,MAAM,kBAAkB,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;YACvD,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBAC5B,OAAO,EAAE,CAAC;aACX;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;YACnC,OAAO,WAAW,CAAC;SACpB;QAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;QACvE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,WAAW,GAAG,IAAI,CAAC;YACnB,QAAQ,CAAC,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC/C;QAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;QAC7E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,WAAW,GAAG,IAAI,CAAC;YACnB,QAAQ,CAAC,kBAAkB,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACrD;QAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;QACvE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,WAAW,GAAG,IAAI,CAAC;YACnB,QAAQ,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC9C;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,OAAO,wBAAwB,CAAC;AAClC,CAAC,CAAC"}
|