UNPKG

@codetanzania/ewea-internals

Version:
820 lines (796 loc) 36.8 kB
import { join, stringify } from '@lykmapipo/common'; // population options const POPULATION_MAX_DEPTH = 1; const POPULATION_DEFAULT = { maxDepth: POPULATION_MAX_DEPTH }; const OPTION_PARTY_AUTOPOPULATE = { select: { name: 1, email: 1, mobile: 1, abbreviation: 1 }, maxDepth: POPULATION_MAX_DEPTH, }; const OPTION_PERMISSION_AUTOPOPULATE = { select: { resource: 1, action: 1, wildcard: 1 }, maxDepth: POPULATION_MAX_DEPTH, }; // model names const MODEL_NAME_PREDEFINE = 'Predefine'; const MODEL_NAME_UNIT = 'Predefine'; const MODEL_NAME_PRIORITY = 'Predefine'; const MODEL_NAME_ADMINISTRATIVELEVEL = 'Predefine'; const MODEL_NAME_FEATURETYPE = 'Predefine'; const MODEL_NAME_EVENTINDICATOR = 'Predefine'; const MODEL_NAME_EVENTTOPIC = 'Predefine'; const MODEL_NAME_EVENTLEVEL = 'Predefine'; const MODEL_NAME_EVENTSEVERITY = 'Predefine'; const MODEL_NAME_EVENTCERTAINTY = 'Predefine'; const MODEL_NAME_EVENTSTATUS = 'Predefine'; const MODEL_NAME_EVENTURGENCY = 'Predefine'; const MODEL_NAME_EVENTRESPONSE = 'Predefine'; const MODEL_NAME_CASESEVERITY = 'Predefine'; const MODEL_NAME_CASESTAGE = 'Predefine'; const MODEL_NAME_PARTYOWNERSHIP = 'Predefine'; const MODEL_NAME_PARTYGROUP = 'Predefine'; const MODEL_NAME_PARTYROLE = 'Predefine'; const MODEL_NAME_PARTYGENDER = 'Predefine'; const MODEL_NAME_PARTYOCCUPATION = 'Predefine'; const MODEL_NAME_PARTYNATIONALITY = 'Predefine'; const MODEL_NAME_VEHICLETYPE = 'Predefine'; const MODEL_NAME_VEHICLEMODEL = 'Predefine'; const MODEL_NAME_VEHICLEMAKE = 'Predefine'; const MODEL_NAME_VEHICLESTATUS = 'Predefine'; const MODEL_NAME_VEHICLE = 'Predefine'; const MODEL_NAME_EVENTGROUP = 'Predefine'; const MODEL_NAME_EVENTTYPE = 'Predefine'; const MODEL_NAME_EVENTFUNCTION = 'Predefine'; const MODEL_NAME_EVENTACTION = 'Predefine'; const MODEL_NAME_EVENTQUESTION = 'Predefine'; const MODEL_NAME_PERMISSION = 'Permission'; const MODEL_NAME_ROLE = 'Predefine'; const MODEL_NAME_ADMINISTRATIVEAREA = 'Predefine'; const MODEL_NAME_PARTY = 'Party'; const MODEL_NAME_FEATURE = 'Predefine'; const MODEL_NAME_HEALTHFACILITY = 'Predefine'; const MODEL_NAME_EVENTACTIONCATALOGUE = 'Predefine'; const MODEL_NAME_NOTIFICATIONTEMPLATE = 'Predefine'; const MODEL_NAME_EVENT = 'Event'; const MODEL_NAME_EVENTCHANGELOG = 'EventChangeLog'; const MODEL_NAME_VEHICLEDISPATCH = 'VehicleDispatch'; const MODEL_NAME_CASE = 'Case'; // collection names const COLLECTION_NAME_PREDEFINE = 'predefines'; const COLLECTION_NAME_UNIT = 'predefines'; const COLLECTION_NAME_PRIORITY = 'predefines'; const COLLECTION_NAME_ADMINISTRATIVELEVEL = 'predefines'; const COLLECTION_NAME_FEATURETYPE = 'predefines'; const COLLECTION_NAME_EVENTINDICATOR = 'predefines'; const COLLECTION_NAME_EVENTTOPIC = 'predefines'; const COLLECTION_NAME_EVENTLEVEL = 'predefines'; const COLLECTION_NAME_EVENTSEVERITY = 'predefines'; const COLLECTION_NAME_EVENTCERTAINTY = 'predefines'; const COLLECTION_NAME_EVENTSTATUS = 'predefines'; const COLLECTION_NAME_EVENTURGENCY = 'predefines'; const COLLECTION_NAME_EVENTRESPONSE = 'predefines'; const COLLECTION_NAME_CASESEVERITY = 'predefines'; const COLLECTION_NAME_CASESTAGE = 'predefines'; const COLLECTION_NAME_PARTYOWNERSHIP = 'predefines'; const COLLECTION_NAME_PARTYGROUP = 'predefines'; const COLLECTION_NAME_PARTYROLE = 'predefines'; const COLLECTION_NAME_PARTYGENDER = 'predefines'; const COLLECTION_NAME_PARTYOCCUPATION = 'predefines'; const COLLECTION_NAME_PARTYNATIONALITY = 'predefines'; const COLLECTION_NAME_VEHICLETYPE = 'predefines'; const COLLECTION_NAME_VEHICLEMODEL = 'predefines'; const COLLECTION_NAME_VEHICLEMAKE = 'predefines'; const COLLECTION_NAME_VEHICLESTATUS = 'predefines'; const COLLECTION_NAME_VEHICLE = 'predefines'; const COLLECTION_NAME_EVENTGROUP = 'predefines'; const COLLECTION_NAME_EVENTTYPE = 'predefines'; const COLLECTION_NAME_EVENTFUNCTION = 'predefines'; const COLLECTION_NAME_EVENTACTION = 'predefines'; const COLLECTION_NAME_EVENTQUESTION = 'predefines'; const COLLECTION_NAME_PERMISSION = 'permissions'; const COLLECTION_NAME_ADMINISTRATIVEAREA = 'predefines'; const COLLECTION_NAME_PARTY = 'parties'; const COLLECTION_NAME_FEATURE = 'predefines'; const COLLECTION_NAME_HEALTHFACILITY = 'predefines'; const COLLECTION_NAME_EVENTACTIONCATALOGUE = 'predefines'; const COLLECTION_NAME_NOTIFICATIONTEMPLATE = 'predefines'; const COLLECTION_NAME_EVENT = 'events'; const COLLECTION_NAME_EVENTCHANGELOG = 'eventchangelogs'; const COLLECTION_NAME_VEHICLEDISPATCH = 'vehicledispatches'; const COLLECTION_NAME_CASE = 'cases'; // predefine namespaces const PREDEFINE_NAMESPACE_UNIT = 'Unit'; const PREDEFINE_NAMESPACE_PRIORITY = 'Priority'; const PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL = 'AdministrativeLevel'; const PREDEFINE_NAMESPACE_FEATURETYPE = 'FeatureType'; const PREDEFINE_NAMESPACE_EVENTINDICATOR = 'EventIndicator'; const PREDEFINE_NAMESPACE_EVENTTOPIC = 'EventTopic'; const PREDEFINE_NAMESPACE_EVENTLEVEL = 'EventLevel'; const PREDEFINE_NAMESPACE_EVENTSEVERITY = 'EventSeverity'; const PREDEFINE_NAMESPACE_EVENTCERTAINTY = 'EventCertainty'; const PREDEFINE_NAMESPACE_EVENTSTATUS = 'EventStatus'; const PREDEFINE_NAMESPACE_EVENTURGENCY = 'EventUrgency'; const PREDEFINE_NAMESPACE_EVENTRESPONSE = 'EventResponse'; const PREDEFINE_NAMESPACE_CASESEVERITY = 'CaseSeverity'; const PREDEFINE_NAMESPACE_CASESTAGE = 'CaseStage'; const PREDEFINE_NAMESPACE_PARTYOWNERSHIP = 'PartyOwnership'; const PREDEFINE_NAMESPACE_PARTYGROUP = 'PartyGroup'; const PREDEFINE_NAMESPACE_PARTYROLE = 'PartyRole'; const PREDEFINE_NAMESPACE_PARTYGENDER = 'PartyGender'; const PREDEFINE_NAMESPACE_PARTYOCCUPATION = 'PartyOccupation'; const PREDEFINE_NAMESPACE_PARTYNATIONALITY = 'PartyNationality'; const PREDEFINE_NAMESPACE_VEHICLETYPE = 'VehicleType'; const PREDEFINE_NAMESPACE_VEHICLEMODEL = 'VehicleModel'; const PREDEFINE_NAMESPACE_VEHICLEMAKE = 'VehicleMake'; const PREDEFINE_NAMESPACE_VEHICLESTATUS = 'VehicleStatus'; const PREDEFINE_NAMESPACE_VEHICLE = 'Vehicle'; const PREDEFINE_NAMESPACE_EVENTGROUP = 'EventGroup'; const PREDEFINE_NAMESPACE_EVENTTYPE = 'EventType'; const PREDEFINE_NAMESPACE_EVENTFUNCTION = 'EventFunction'; const PREDEFINE_NAMESPACE_EVENTACTION = 'EventAction'; const PREDEFINE_NAMESPACE_EVENTQUESTION = 'EventQuestion'; const PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA = 'AdministrativeArea'; const PREDEFINE_NAMESPACE_FEATURE = 'Feature'; const PREDEFINE_NAMESPACE_HEALTHFACILITY = 'HealthFacility'; const PREDEFINE_NAMESPACE_EVENTACTIONCATALOGUE = 'EventActionCatalogue'; const PREDEFINE_NAMESPACE_NOTIFICATIONTEMPLATE = 'NotificationTemplate'; const PREDEFINE_NAMESPACES = [ PREDEFINE_NAMESPACE_UNIT, PREDEFINE_NAMESPACE_PRIORITY, PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL, PREDEFINE_NAMESPACE_FEATURETYPE, PREDEFINE_NAMESPACE_EVENTINDICATOR, PREDEFINE_NAMESPACE_EVENTTOPIC, PREDEFINE_NAMESPACE_EVENTLEVEL, PREDEFINE_NAMESPACE_EVENTSEVERITY, PREDEFINE_NAMESPACE_EVENTCERTAINTY, PREDEFINE_NAMESPACE_EVENTSTATUS, PREDEFINE_NAMESPACE_EVENTURGENCY, PREDEFINE_NAMESPACE_EVENTRESPONSE, PREDEFINE_NAMESPACE_CASESEVERITY, PREDEFINE_NAMESPACE_CASESTAGE, PREDEFINE_NAMESPACE_PARTYOWNERSHIP, PREDEFINE_NAMESPACE_PARTYGROUP, PREDEFINE_NAMESPACE_PARTYROLE, PREDEFINE_NAMESPACE_PARTYGENDER, PREDEFINE_NAMESPACE_PARTYOCCUPATION, PREDEFINE_NAMESPACE_PARTYNATIONALITY, PREDEFINE_NAMESPACE_VEHICLETYPE, PREDEFINE_NAMESPACE_VEHICLEMODEL, PREDEFINE_NAMESPACE_VEHICLEMAKE, PREDEFINE_NAMESPACE_VEHICLESTATUS, PREDEFINE_NAMESPACE_VEHICLE, PREDEFINE_NAMESPACE_EVENTGROUP, PREDEFINE_NAMESPACE_EVENTTYPE, PREDEFINE_NAMESPACE_EVENTFUNCTION, PREDEFINE_NAMESPACE_EVENTACTION, PREDEFINE_NAMESPACE_EVENTQUESTION, PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, PREDEFINE_NAMESPACE_FEATURE, PREDEFINE_NAMESPACE_HEALTHFACILITY, PREDEFINE_NAMESPACE_EVENTACTIONCATALOGUE, PREDEFINE_NAMESPACE_NOTIFICATIONTEMPLATE, ]; // predefine buckets const PREDEFINE_BUCKET_UNIT = 'units'; const PREDEFINE_BUCKET_PRIORITY = 'priorities'; const PREDEFINE_BUCKET_ADMINISTRATIVELEVEL = 'administrativelevels'; const PREDEFINE_BUCKET_FEATURETYPE = 'featuretypes'; const PREDEFINE_BUCKET_EVENTINDICATOR = 'eventindicators'; const PREDEFINE_BUCKET_EVENTTOPIC = 'eventtopics'; const PREDEFINE_BUCKET_EVENTLEVEL = 'eventlevels'; const PREDEFINE_BUCKET_EVENTSEVERITY = 'eventseverities'; const PREDEFINE_BUCKET_EVENTCERTAINTY = 'eventcertainties'; const PREDEFINE_BUCKET_EVENTSTATUS = 'eventstatuses'; const PREDEFINE_BUCKET_EVENTURGENCY = 'eventurgencies'; const PREDEFINE_BUCKET_EVENTRESPONSE = 'eventresponses'; const PREDEFINE_BUCKET_CASESEVERITY = 'caseseverities'; const PREDEFINE_BUCKET_CASESTAGE = 'casestages'; const PREDEFINE_BUCKET_PARTYOWNERSHIP = 'partyownerships'; const PREDEFINE_BUCKET_PARTYGROUP = 'partygroups'; const PREDEFINE_BUCKET_PARTYROLE = 'partyroles'; const PREDEFINE_BUCKET_PARTYGENDER = 'partygenders'; const PREDEFINE_BUCKET_PARTYOCCUPATION = 'partyoccupations'; const PREDEFINE_BUCKET_PARTYNATIONALITY = 'partynationalities'; const PREDEFINE_BUCKET_VEHICLETYPE = 'vehicletypes'; const PREDEFINE_BUCKET_VEHICLEMODEL = 'vehiclemodels'; const PREDEFINE_BUCKET_VEHICLEMAKE = 'vehiclemakes'; const PREDEFINE_BUCKET_VEHICLESTATUS = 'vehiclestatuses'; const PREDEFINE_BUCKET_VEHICLE = 'vehicles'; const PREDEFINE_BUCKET_EVENTGROUP = 'eventgroups'; const PREDEFINE_BUCKET_EVENTTYPE = 'eventtypes'; const PREDEFINE_BUCKET_EVENTFUNCTION = 'eventfunctions'; const PREDEFINE_BUCKET_EVENTACTION = 'eventactions'; const PREDEFINE_BUCKET_EVENTQUESTION = 'eventquestions'; const PREDEFINE_BUCKET_ADMINISTRATIVEAREA = 'administrativeareas'; const PREDEFINE_BUCKET_FEATURE = 'features'; const PREDEFINE_BUCKET_HEALTHFACILITY = 'healthfacilities'; const PREDEFINE_BUCKET_EVENTACTIONCATALOGUE = 'eventcatalogues'; const PREDEFINE_BUCKET_NOTIFICATIONTEMPLATE = 'notificationtemplates'; const PREDEFINE_BUCKETS = [ PREDEFINE_BUCKET_UNIT, PREDEFINE_BUCKET_PRIORITY, PREDEFINE_BUCKET_ADMINISTRATIVELEVEL, PREDEFINE_BUCKET_FEATURETYPE, PREDEFINE_BUCKET_EVENTINDICATOR, PREDEFINE_BUCKET_EVENTTOPIC, PREDEFINE_BUCKET_EVENTLEVEL, PREDEFINE_BUCKET_EVENTSEVERITY, PREDEFINE_BUCKET_EVENTCERTAINTY, PREDEFINE_BUCKET_EVENTSTATUS, PREDEFINE_BUCKET_EVENTURGENCY, PREDEFINE_BUCKET_EVENTRESPONSE, PREDEFINE_BUCKET_CASESEVERITY, PREDEFINE_BUCKET_CASESTAGE, PREDEFINE_BUCKET_PARTYOWNERSHIP, PREDEFINE_BUCKET_PARTYGROUP, PREDEFINE_BUCKET_PARTYROLE, PREDEFINE_BUCKET_PARTYGENDER, PREDEFINE_BUCKET_PARTYOCCUPATION, PREDEFINE_BUCKET_PARTYNATIONALITY, PREDEFINE_BUCKET_VEHICLETYPE, PREDEFINE_BUCKET_VEHICLEMODEL, PREDEFINE_BUCKET_VEHICLEMAKE, PREDEFINE_BUCKET_VEHICLESTATUS, PREDEFINE_BUCKET_VEHICLE, PREDEFINE_BUCKET_EVENTGROUP, PREDEFINE_BUCKET_EVENTTYPE, PREDEFINE_BUCKET_EVENTFUNCTION, PREDEFINE_BUCKET_EVENTACTION, PREDEFINE_BUCKET_EVENTQUESTION, PREDEFINE_BUCKET_ADMINISTRATIVEAREA, PREDEFINE_BUCKET_FEATURE, PREDEFINE_BUCKET_HEALTHFACILITY, PREDEFINE_BUCKET_EVENTACTIONCATALOGUE, PREDEFINE_BUCKET_NOTIFICATIONTEMPLATE, ]; // predefine domains // feature types const PREDEFINE_DOMAIN_DRAINAGE = 'Drainage'; const PREDEFINE_DOMAIN_BUILDING = 'Building'; const PREDEFINE_DOMAIN_BUSINESS = 'Business'; const PREDEFINE_DOMAIN_SCHOOL = 'School'; const PREDEFINE_DOMAIN_GOVERNMENTINSTITUTION = 'GovernmentInstitution'; const PREDEFINE_DOMAIN_RELIGIOUSINSTITUTION = 'ReligiousInstitution'; const PREDEFINE_DOMAIN_SHOP = 'Shop'; const PREDEFINE_DOMAIN_TOURISMAREA = 'TourismArea'; const PREDEFINE_DOMAIN_PUBLICTOILET = 'PublicToilet'; const PREDEFINE_DOMAIN_WATERPOINT = 'WaterPoint'; const PREDEFINE_DOMAIN_ROAD = 'Road'; const PREDEFINE_DOMAIN_OPENAREA = 'OpenArea'; const PREDEFINE_DOMAIN_OFFICE = 'Office'; const PREDEFINE_DOMAIN_MARKET = 'Market'; const PREDEFINE_DOMAIN_EVACUATIONCENTER = 'EvacuationCenter'; const PREDEFINE_DOMAIN_EVACUATIONROUTE = 'EvacuationRoute'; // TODO: Bus Station, Fire Station, Emergency Center, // TODO: Blood Bank, Ambulance Station // TODO: Evacuation Areas, Mortuary and Morgues // health facilities const PREDEFINE_DOMAIN_CLINIC = 'Clinic'; const PREDEFINE_DOMAIN_DISPENSARY = 'Dispensary'; const PREDEFINE_DOMAIN_HEALTHCENTER = 'HealthCenter'; const PREDEFINE_DOMAIN_HOSPITAL = 'Hospital'; const PREDEFINE_DOMAINS_HEALTHFACILITY = [ PREDEFINE_DOMAIN_CLINIC, PREDEFINE_DOMAIN_DISPENSARY, PREDEFINE_DOMAIN_HEALTHCENTER, PREDEFINE_DOMAIN_HOSPITAL, ]; const PREDEFINE_DOMAINS = [ ...PREDEFINE_DOMAINS_HEALTHFACILITY, ...PREDEFINE_NAMESPACES, ]; // path names const PATH_NAME_UNIT = 'unit'; const PATH_NAME_PRIORITY = 'priority'; const PATH_NAME_ADMINISTRATIVELEVEL = 'level'; const PATH_NAME_FEATURETYPE = 'type'; const PATH_NAME_EVENTINDICATOR = 'indicator'; const PATH_NAME_EVENTTOPIC = 'topic'; const PATH_NAME_EVENTLEVEL = 'level'; const PATH_NAME_EVENTSEVERITY = 'severity'; const PATH_NAME_EVENTCERTAINTY = 'certainty'; const PATH_NAME_EVENTSTATUS = 'status'; const PATH_NAME_EVENTURGENCY = 'urgency'; const PATH_NAME_CASESEVERITY = 'severity'; const PATH_NAME_CASESTAGE = 'stage'; const PATH_NAME_EVENTRESPONSE = 'response'; const PATH_NAME_PARTYGROUP = 'group'; const PATH_NAME_PARTYGROUPS = 'groups'; const PATH_NAME_PARTYOWNERSHIP = 'ownership'; const PATH_NAME_PARTYROLE = 'role'; const PATH_NAME_PARTYROLES = 'roles'; const PATH_NAME_PARTYGENDER = 'gender'; const PATH_NAME_PARTYOCCUPATION = 'occupation'; const PATH_NAME_PARTYNATIONALITY = 'nationality'; const PATH_NAME_VEHICLETYPE = 'type'; const PATH_NAME_VEHICLEMODEL = 'model'; const PATH_NAME_VEHICLEMAKE = 'make'; const PATH_NAME_VEHICLESTATUS = 'status'; const PATH_NAME_VEHICLE = 'vehicle'; const PATH_NAME_EVENTGROUP = 'group'; const PATH_NAME_EVENTGROUPS = 'groups'; const PATH_NAME_EVENTTYPE = 'type'; const PATH_NAME_EVENTFUNCTION = 'function'; const PATH_NAME_EVENTACTION = 'action'; const PATH_NAME_EVENTQUESTION = 'question'; const PATH_NAME_EVENTQUESTION_NEED = 'need'; const PATH_NAME_EVENTQUESTION_EFFECT = 'effect'; const PATH_NAME_PERMISSIONS = 'permissions'; const PATH_NAME_ROLE = 'role'; const PATH_NAME_ROLES = 'roles'; const PATH_NAME_ADMINISTRATIVEAREA = 'area'; const PATH_NAME_ADMINISTRATIVEAREAS = 'areas'; const PATH_NAME_PARTY = 'party'; const PATH_NAME_PARTY_FOCAL = 'focal'; const PATH_NAME_PARTY_FOCALS = 'focals'; const PATH_NAME_PARTY_AGENCY = 'agency'; const PATH_NAME_PARTY_AGENCIES = 'agencies'; const PATH_NAME_PARTY_CUSTODIAN = 'custodian'; const PATH_NAME_PARTY_CUSTODIANS = 'custodians'; const PATH_NAME_FEATURE = 'feature'; const PATH_NAME_HEALTHFACILITY = 'facility'; const PATH_NAME_NOTIFICATIONTEMPLATE = 'template'; const PATH_NAME_EVENT = 'event'; const PATH_NAME_EVENTCHANGELOG = 'changelog'; const PATH_NAME_EVENTCHANGELOGS = 'changelogs'; // predefine defaults(name, number etc) const PREDEFINE_UNIT_NAME = 'Unknown'; const PREDEFINE_PRIORITY_NAME = 'Unknown'; const PREDEFINE_ADMINISTRATIVELEVEL_NAME = 'Unknown'; const PREDEFINE_FEATURETYPE_NAME = 'Unknown'; const PREDEFINE_EVENTINDICATOR_NAME = 'Unknown'; const PREDEFINE_EVENTTOPIC_NAME = 'Unknown'; const PREDEFINE_EVENTLEVEL_NAME = 'White'; const PREDEFINE_EVENTSEVERITY_NAME = 'Unknown'; const PREDEFINE_EVENTCERTAINTY_NAME = 'Unknown'; const PREDEFINE_EVENTSTATUS_NAME = 'Actual'; const PREDEFINE_EVENTURGENCY_NAME = 'Unknown'; const PREDEFINE_EVENTRESPONSE_NAME = 'None'; const PREDEFINE_CASESEVERITY_NAME = 'Unknown'; const PREDEFINE_CASESTAGE_NAME = 'Unknown'; const PREDEFINE_PARTYOWNERSHIP_NAME = 'Unknown'; const PREDEFINE_PARTYGROUP_NAME = 'Unknown'; const PREDEFINE_PARTYROLE_NAME = 'Unknown'; const PREDEFINE_PARTYGENDER_NAME = 'Unknown'; const PREDEFINE_PARTYOCCUPATION_NAME = 'Unknown'; const PREDEFINE_PARTYNATIONALITY_NAME = 'Unknown'; const PREDEFINE_VEHICLETYPE_NAME = 'Unknown'; const PREDEFINE_VEHICLEMODEL_NAME = 'Unknown'; const PREDEFINE_VEHICLEMAKE_NAME = 'Unknown'; const PREDEFINE_VEHICLESTATUS_NAME = 'Unknown'; const PREDEFINE_VEHICLE_NAME = 'Unknown'; const PREDEFINE_EVENTGROUP_NAME = 'Unknown'; const PREDEFINE_EVENTTYPE_NAME = 'Unknown'; const PREDEFINE_EVENTFUNCTION_NAME = 'Unknown'; const PREDEFINE_EVENTACTION_NAME = 'Unknown'; const PREDEFINE_EVENTQUESTION_NAME = 'Unknown'; const PREDEFINE_ADMINISTRATIVEAREA_NAME = 'Unknown'; const PREDEFINE_FEATURE_NAME = 'Unknown'; const PREDEFINE_HEALTHFACILITY_NAME = 'Unknown'; const PREDEFINE_EVENTACTIONCATALOGUE_NAME = 'Unknown'; const PREDEFINE_NOTIFICATIONTEMPLATE_NAME = 'Unknown'; const PREDEFINE_DEFAULTS = { [PREDEFINE_NAMESPACE_UNIT]: PREDEFINE_UNIT_NAME, [PREDEFINE_NAMESPACE_PRIORITY]: PREDEFINE_PRIORITY_NAME, [PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL]: PREDEFINE_ADMINISTRATIVELEVEL_NAME, [PREDEFINE_NAMESPACE_FEATURETYPE]: PREDEFINE_FEATURETYPE_NAME, [PREDEFINE_NAMESPACE_EVENTINDICATOR]: PREDEFINE_EVENTINDICATOR_NAME, [PREDEFINE_NAMESPACE_EVENTTOPIC]: PREDEFINE_EVENTTOPIC_NAME, [PREDEFINE_NAMESPACE_EVENTLEVEL]: PREDEFINE_EVENTLEVEL_NAME, [PREDEFINE_NAMESPACE_EVENTSEVERITY]: PREDEFINE_EVENTSEVERITY_NAME, [PREDEFINE_NAMESPACE_EVENTCERTAINTY]: PREDEFINE_EVENTCERTAINTY_NAME, [PREDEFINE_NAMESPACE_EVENTSTATUS]: PREDEFINE_EVENTSTATUS_NAME, [PREDEFINE_NAMESPACE_EVENTURGENCY]: PREDEFINE_EVENTURGENCY_NAME, [PREDEFINE_NAMESPACE_EVENTRESPONSE]: PREDEFINE_EVENTRESPONSE_NAME, [PREDEFINE_NAMESPACE_CASESEVERITY]: PREDEFINE_CASESEVERITY_NAME, [PREDEFINE_NAMESPACE_CASESTAGE]: PREDEFINE_CASESTAGE_NAME, [PREDEFINE_NAMESPACE_PARTYOWNERSHIP]: PREDEFINE_PARTYOWNERSHIP_NAME, [PREDEFINE_NAMESPACE_PARTYGROUP]: PREDEFINE_PARTYGROUP_NAME, [PREDEFINE_NAMESPACE_PARTYROLE]: PREDEFINE_PARTYROLE_NAME, [PREDEFINE_NAMESPACE_PARTYGENDER]: PREDEFINE_PARTYGENDER_NAME, [PREDEFINE_NAMESPACE_PARTYNATIONALITY]: PREDEFINE_PARTYNATIONALITY_NAME, [PREDEFINE_NAMESPACE_PARTYOCCUPATION]: PREDEFINE_PARTYOCCUPATION_NAME, [PREDEFINE_NAMESPACE_VEHICLETYPE]: PREDEFINE_VEHICLETYPE_NAME, [PREDEFINE_NAMESPACE_VEHICLEMODEL]: PREDEFINE_VEHICLEMODEL_NAME, [PREDEFINE_NAMESPACE_VEHICLEMAKE]: PREDEFINE_VEHICLEMAKE_NAME, [PREDEFINE_NAMESPACE_VEHICLESTATUS]: PREDEFINE_VEHICLESTATUS_NAME, [PREDEFINE_NAMESPACE_VEHICLE]: PREDEFINE_VEHICLE_NAME, [PREDEFINE_NAMESPACE_EVENTGROUP]: PREDEFINE_EVENTGROUP_NAME, [PREDEFINE_NAMESPACE_EVENTTYPE]: PREDEFINE_EVENTTYPE_NAME, [PREDEFINE_NAMESPACE_EVENTFUNCTION]: PREDEFINE_EVENTFUNCTION_NAME, [PREDEFINE_NAMESPACE_EVENTACTION]: PREDEFINE_EVENTACTION_NAME, [PREDEFINE_NAMESPACE_EVENTQUESTION]: PREDEFINE_EVENTQUESTION_NAME, [PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA]: PREDEFINE_ADMINISTRATIVEAREA_NAME, [PREDEFINE_NAMESPACE_FEATURE]: PREDEFINE_FEATURE_NAME, [PREDEFINE_NAMESPACE_HEALTHFACILITY]: PREDEFINE_HEALTHFACILITY_NAME, [PREDEFINE_NAMESPACE_EVENTACTIONCATALOGUE]: PREDEFINE_EVENTACTIONCATALOGUE_NAME, [PREDEFINE_NAMESPACE_NOTIFICATIONTEMPLATE]: PREDEFINE_NOTIFICATIONTEMPLATE_NAME, }; // predefine relations const PREDEFINE_RELATIONS = { parent: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACES }, permissions: { ref: MODEL_NAME_PERMISSION, array: true, autopopulate: OPTION_PERMISSION_AUTOPOPULATE, }, roles: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYROLE, array: true, }, groups: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYGROUP, array: true, }, group: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTGROUP, }, type: { ref: MODEL_NAME_PREDEFINE, namespace: [ PREDEFINE_NAMESPACE_EVENTTYPE, PREDEFINE_NAMESPACE_VEHICLETYPE, PREDEFINE_NAMESPACE_FEATURETYPE, ], }, function: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTFUNCTION, }, action: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTACTION, }, level: { ref: MODEL_NAME_PREDEFINE, namespace: [ PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL, PREDEFINE_NAMESPACE_EVENTLEVEL, ], }, area: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, }, indicator: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTINDICATOR, }, topic: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTTOPIC, }, unit: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_UNIT }, model: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_VEHICLEMODEL, }, make: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_VEHICLEMAKE, }, status: { ref: MODEL_NAME_PREDEFINE, namespace: [ PREDEFINE_NAMESPACE_EVENTSTATUS, PREDEFINE_NAMESPACE_VEHICLESTATUS, ], }, priority: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PRIORITY, }, ownership: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYOWNERSHIP, }, owner: { ref: MODEL_NAME_PARTY, autopopulate: OPTION_PARTY_AUTOPOPULATE, }, agencies: { ref: MODEL_NAME_PARTY, array: true, autopopulate: OPTION_PARTY_AUTOPOPULATE, }, focals: { ref: MODEL_NAME_PARTY, array: true, autopopulate: OPTION_PARTY_AUTOPOPULATE, }, custodians: { ref: MODEL_NAME_PARTY, array: true, autopopulate: OPTION_PARTY_AUTOPOPULATE, }, facility: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_HEALTHFACILITY, }, }; // party relations const PARTY_RELATIONS = { party: { ref: MODEL_NAME_PARTY }, agency: { ref: MODEL_NAME_PARTY, path: 'party' }, group: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYGROUP, }, level: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL, }, area: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, }, ownership: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYOWNERSHIP, }, role: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYROLE }, gender: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYGENDER, }, nationality: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYNATIONALITY, }, facility: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_HEALTHFACILITY, }, }; // event relations const EVENT_RELATIONS = { group: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTGROUP, }, type: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTTYPE }, level: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTLEVEL, }, severity: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTSEVERITY, }, certainty: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTCERTAINTY, }, status: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTSTATUS, }, urgency: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTURGENCY, }, response: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTRESPONSE, }, areas: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, array: true, }, agencies: { ref: MODEL_NAME_PARTY, array: true }, focals: { ref: MODEL_NAME_PARTY, array: true }, }; // event changelog relations const EVENT_CHANGELOG_RELATIONS = { initiator: { ref: MODEL_NAME_PARTY }, verifier: { ref: MODEL_NAME_PARTY }, group: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTGROUP, }, type: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTTYPE }, level: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTLEVEL, }, severity: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTSEVERITY, }, certainty: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTCERTAINTY, }, status: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTSTATUS, }, urgency: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTURGENCY, }, response: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTRESPONSE, }, event: { ref: MODEL_NAME_EVENT }, function: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTFUNCTION, }, action: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTACTION, }, catalogue: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTACTIONCATALOGUE, }, indicator: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTINDICATOR, }, topic: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTTOPIC, }, question: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTQUESTION, }, need: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTQUESTION, }, effect: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTQUESTION, }, unit: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_UNIT }, areas: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, array: true, }, groups: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYGROUP, array: true, }, roles: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYROLE, array: true, }, agencies: { ref: MODEL_NAME_PARTY, array: true }, focals: { ref: MODEL_NAME_PARTY, array: true }, template: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_NOTIFICATIONTEMPLATE, }, }; // vehicle dispatch relations const VEHICLE_DISPATCH_RELATIONS = { group: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTGROUP, }, type: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_EVENTTYPE }, event: { ref: MODEL_NAME_EVENT }, 'requester.facility': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_FEATURE, }, 'requester.area': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, }, 'victim.gender': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYGENDER, }, 'victim.area': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, }, 'pickup.facility': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_HEALTHFACILITY, }, 'pickup.area': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, }, 'dropoff.facility': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_HEALTHFACILITY, }, 'dropoff.area': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, }, 'carrier.type': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_VEHICLETYPE, }, 'carrier.owner': { ref: MODEL_NAME_PARTY, }, 'carrier.ownership': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYOWNERSHIP, }, 'carrier.vehicle': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_VEHICLE, }, crew: { ref: MODEL_NAME_PARTY, array: true }, status: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_VEHICLESTATUS, }, priority: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PRIORITY, }, reporter: { ref: MODEL_NAME_PARTY }, dispatcher: { ref: MODEL_NAME_PARTY }, canceler: { ref: MODEL_NAME_PARTY }, resolver: { ref: MODEL_NAME_PARTY }, }; // case relations const CASE_RELATIONS = { severity: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_CASESEVERITY, }, stage: { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_CASESTAGE, }, 'victim.gender': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYGENDER, }, 'victim.occupation': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYOCCUPATION, }, 'victim.nationality': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_PARTYNATIONALITY, }, 'victim.area': { ref: MODEL_NAME_PREDEFINE, namespace: PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, }, }; // TODO: permission per predefine domains const PERMISSION_SEED_RESOURCES = ['Agency', 'FocalPeople']; const PERMISSION_SEED_IGNORE = [ 'Audio', 'Campaign', 'Counter', 'Document', 'EventChangeLog', 'Image', 'File', 'Message', 'Party', 'Permission', 'Predefine', 'Role', 'Video', ]; // setup env process.env.PERMISSION_SEED_RESOURCES = join(PERMISSION_SEED_RESOURCES, ','); process.env.PERMISSION_SEED_IGNORE = join(PERMISSION_SEED_IGNORE, ','); process.env.PREDEFINE_NAMESPACES = join(PREDEFINE_NAMESPACES, ','); process.env.PREDEFINE_DOMAINS = join(PREDEFINE_DOMAINS, ','); process.env.PREDEFINE_RELATIONS_IGNORED = join(PREDEFINE_NAMESPACES, ','); process.env.PREDEFINE_RELATIONS = stringify(PREDEFINE_RELATIONS); export { CASE_RELATIONS, COLLECTION_NAME_ADMINISTRATIVEAREA, COLLECTION_NAME_ADMINISTRATIVELEVEL, COLLECTION_NAME_CASE, COLLECTION_NAME_CASESEVERITY, COLLECTION_NAME_CASESTAGE, COLLECTION_NAME_EVENT, COLLECTION_NAME_EVENTACTION, COLLECTION_NAME_EVENTACTIONCATALOGUE, COLLECTION_NAME_EVENTCERTAINTY, COLLECTION_NAME_EVENTCHANGELOG, COLLECTION_NAME_EVENTFUNCTION, COLLECTION_NAME_EVENTGROUP, COLLECTION_NAME_EVENTINDICATOR, COLLECTION_NAME_EVENTLEVEL, COLLECTION_NAME_EVENTQUESTION, COLLECTION_NAME_EVENTRESPONSE, COLLECTION_NAME_EVENTSEVERITY, COLLECTION_NAME_EVENTSTATUS, COLLECTION_NAME_EVENTTOPIC, COLLECTION_NAME_EVENTTYPE, COLLECTION_NAME_EVENTURGENCY, COLLECTION_NAME_FEATURE, COLLECTION_NAME_FEATURETYPE, COLLECTION_NAME_HEALTHFACILITY, COLLECTION_NAME_NOTIFICATIONTEMPLATE, COLLECTION_NAME_PARTY, COLLECTION_NAME_PARTYGENDER, COLLECTION_NAME_PARTYGROUP, COLLECTION_NAME_PARTYNATIONALITY, COLLECTION_NAME_PARTYOCCUPATION, COLLECTION_NAME_PARTYOWNERSHIP, COLLECTION_NAME_PARTYROLE, COLLECTION_NAME_PERMISSION, COLLECTION_NAME_PREDEFINE, COLLECTION_NAME_PRIORITY, COLLECTION_NAME_UNIT, COLLECTION_NAME_VEHICLE, COLLECTION_NAME_VEHICLEDISPATCH, COLLECTION_NAME_VEHICLEMAKE, COLLECTION_NAME_VEHICLEMODEL, COLLECTION_NAME_VEHICLESTATUS, COLLECTION_NAME_VEHICLETYPE, EVENT_CHANGELOG_RELATIONS, EVENT_RELATIONS, MODEL_NAME_ADMINISTRATIVEAREA, MODEL_NAME_ADMINISTRATIVELEVEL, MODEL_NAME_CASE, MODEL_NAME_CASESEVERITY, MODEL_NAME_CASESTAGE, MODEL_NAME_EVENT, MODEL_NAME_EVENTACTION, MODEL_NAME_EVENTACTIONCATALOGUE, MODEL_NAME_EVENTCERTAINTY, MODEL_NAME_EVENTCHANGELOG, MODEL_NAME_EVENTFUNCTION, MODEL_NAME_EVENTGROUP, MODEL_NAME_EVENTINDICATOR, MODEL_NAME_EVENTLEVEL, MODEL_NAME_EVENTQUESTION, MODEL_NAME_EVENTRESPONSE, MODEL_NAME_EVENTSEVERITY, MODEL_NAME_EVENTSTATUS, MODEL_NAME_EVENTTOPIC, MODEL_NAME_EVENTTYPE, MODEL_NAME_EVENTURGENCY, MODEL_NAME_FEATURE, MODEL_NAME_FEATURETYPE, MODEL_NAME_HEALTHFACILITY, MODEL_NAME_NOTIFICATIONTEMPLATE, MODEL_NAME_PARTY, MODEL_NAME_PARTYGENDER, MODEL_NAME_PARTYGROUP, MODEL_NAME_PARTYNATIONALITY, MODEL_NAME_PARTYOCCUPATION, MODEL_NAME_PARTYOWNERSHIP, MODEL_NAME_PARTYROLE, MODEL_NAME_PERMISSION, MODEL_NAME_PREDEFINE, MODEL_NAME_PRIORITY, MODEL_NAME_ROLE, MODEL_NAME_UNIT, MODEL_NAME_VEHICLE, MODEL_NAME_VEHICLEDISPATCH, MODEL_NAME_VEHICLEMAKE, MODEL_NAME_VEHICLEMODEL, MODEL_NAME_VEHICLESTATUS, MODEL_NAME_VEHICLETYPE, OPTION_PARTY_AUTOPOPULATE, OPTION_PERMISSION_AUTOPOPULATE, PARTY_RELATIONS, PATH_NAME_ADMINISTRATIVEAREA, PATH_NAME_ADMINISTRATIVEAREAS, PATH_NAME_ADMINISTRATIVELEVEL, PATH_NAME_CASESEVERITY, PATH_NAME_CASESTAGE, PATH_NAME_EVENT, PATH_NAME_EVENTACTION, PATH_NAME_EVENTCERTAINTY, PATH_NAME_EVENTCHANGELOG, PATH_NAME_EVENTCHANGELOGS, PATH_NAME_EVENTFUNCTION, PATH_NAME_EVENTGROUP, PATH_NAME_EVENTGROUPS, PATH_NAME_EVENTINDICATOR, PATH_NAME_EVENTLEVEL, PATH_NAME_EVENTQUESTION, PATH_NAME_EVENTQUESTION_EFFECT, PATH_NAME_EVENTQUESTION_NEED, PATH_NAME_EVENTRESPONSE, PATH_NAME_EVENTSEVERITY, PATH_NAME_EVENTSTATUS, PATH_NAME_EVENTTOPIC, PATH_NAME_EVENTTYPE, PATH_NAME_EVENTURGENCY, PATH_NAME_FEATURE, PATH_NAME_FEATURETYPE, PATH_NAME_HEALTHFACILITY, PATH_NAME_NOTIFICATIONTEMPLATE, PATH_NAME_PARTY, PATH_NAME_PARTYGENDER, PATH_NAME_PARTYGROUP, PATH_NAME_PARTYGROUPS, PATH_NAME_PARTYNATIONALITY, PATH_NAME_PARTYOCCUPATION, PATH_NAME_PARTYOWNERSHIP, PATH_NAME_PARTYROLE, PATH_NAME_PARTYROLES, PATH_NAME_PARTY_AGENCIES, PATH_NAME_PARTY_AGENCY, PATH_NAME_PARTY_CUSTODIAN, PATH_NAME_PARTY_CUSTODIANS, PATH_NAME_PARTY_FOCAL, PATH_NAME_PARTY_FOCALS, PATH_NAME_PERMISSIONS, PATH_NAME_PRIORITY, PATH_NAME_ROLE, PATH_NAME_ROLES, PATH_NAME_UNIT, PATH_NAME_VEHICLE, PATH_NAME_VEHICLEMAKE, PATH_NAME_VEHICLEMODEL, PATH_NAME_VEHICLESTATUS, PATH_NAME_VEHICLETYPE, PERMISSION_SEED_IGNORE, PERMISSION_SEED_RESOURCES, POPULATION_DEFAULT, POPULATION_MAX_DEPTH, PREDEFINE_ADMINISTRATIVEAREA_NAME, PREDEFINE_ADMINISTRATIVELEVEL_NAME, PREDEFINE_BUCKETS, PREDEFINE_BUCKET_ADMINISTRATIVEAREA, PREDEFINE_BUCKET_ADMINISTRATIVELEVEL, PREDEFINE_BUCKET_CASESEVERITY, PREDEFINE_BUCKET_CASESTAGE, PREDEFINE_BUCKET_EVENTACTION, PREDEFINE_BUCKET_EVENTACTIONCATALOGUE, PREDEFINE_BUCKET_EVENTCERTAINTY, PREDEFINE_BUCKET_EVENTFUNCTION, PREDEFINE_BUCKET_EVENTGROUP, PREDEFINE_BUCKET_EVENTINDICATOR, PREDEFINE_BUCKET_EVENTLEVEL, PREDEFINE_BUCKET_EVENTQUESTION, PREDEFINE_BUCKET_EVENTRESPONSE, PREDEFINE_BUCKET_EVENTSEVERITY, PREDEFINE_BUCKET_EVENTSTATUS, PREDEFINE_BUCKET_EVENTTOPIC, PREDEFINE_BUCKET_EVENTTYPE, PREDEFINE_BUCKET_EVENTURGENCY, PREDEFINE_BUCKET_FEATURE, PREDEFINE_BUCKET_FEATURETYPE, PREDEFINE_BUCKET_HEALTHFACILITY, PREDEFINE_BUCKET_NOTIFICATIONTEMPLATE, PREDEFINE_BUCKET_PARTYGENDER, PREDEFINE_BUCKET_PARTYGROUP, PREDEFINE_BUCKET_PARTYNATIONALITY, PREDEFINE_BUCKET_PARTYOCCUPATION, PREDEFINE_BUCKET_PARTYOWNERSHIP, PREDEFINE_BUCKET_PARTYROLE, PREDEFINE_BUCKET_PRIORITY, PREDEFINE_BUCKET_UNIT, PREDEFINE_BUCKET_VEHICLE, PREDEFINE_BUCKET_VEHICLEMAKE, PREDEFINE_BUCKET_VEHICLEMODEL, PREDEFINE_BUCKET_VEHICLESTATUS, PREDEFINE_BUCKET_VEHICLETYPE, PREDEFINE_CASESEVERITY_NAME, PREDEFINE_CASESTAGE_NAME, PREDEFINE_DEFAULTS, PREDEFINE_DOMAINS, PREDEFINE_DOMAINS_HEALTHFACILITY, PREDEFINE_DOMAIN_BUILDING, PREDEFINE_DOMAIN_BUSINESS, PREDEFINE_DOMAIN_CLINIC, PREDEFINE_DOMAIN_DISPENSARY, PREDEFINE_DOMAIN_DRAINAGE, PREDEFINE_DOMAIN_EVACUATIONCENTER, PREDEFINE_DOMAIN_EVACUATIONROUTE, PREDEFINE_DOMAIN_GOVERNMENTINSTITUTION, PREDEFINE_DOMAIN_HEALTHCENTER, PREDEFINE_DOMAIN_HOSPITAL, PREDEFINE_DOMAIN_MARKET, PREDEFINE_DOMAIN_OFFICE, PREDEFINE_DOMAIN_OPENAREA, PREDEFINE_DOMAIN_PUBLICTOILET, PREDEFINE_DOMAIN_RELIGIOUSINSTITUTION, PREDEFINE_DOMAIN_ROAD, PREDEFINE_DOMAIN_SCHOOL, PREDEFINE_DOMAIN_SHOP, PREDEFINE_DOMAIN_TOURISMAREA, PREDEFINE_DOMAIN_WATERPOINT, PREDEFINE_EVENTACTIONCATALOGUE_NAME, PREDEFINE_EVENTACTION_NAME, PREDEFINE_EVENTCERTAINTY_NAME, PREDEFINE_EVENTFUNCTION_NAME, PREDEFINE_EVENTGROUP_NAME, PREDEFINE_EVENTINDICATOR_NAME, PREDEFINE_EVENTLEVEL_NAME, PREDEFINE_EVENTQUESTION_NAME, PREDEFINE_EVENTRESPONSE_NAME, PREDEFINE_EVENTSEVERITY_NAME, PREDEFINE_EVENTSTATUS_NAME, PREDEFINE_EVENTTOPIC_NAME, PREDEFINE_EVENTTYPE_NAME, PREDEFINE_EVENTURGENCY_NAME, PREDEFINE_FEATURETYPE_NAME, PREDEFINE_FEATURE_NAME, PREDEFINE_HEALTHFACILITY_NAME, PREDEFINE_NAMESPACES, PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL, PREDEFINE_NAMESPACE_CASESEVERITY, PREDEFINE_NAMESPACE_CASESTAGE, PREDEFINE_NAMESPACE_EVENTACTION, PREDEFINE_NAMESPACE_EVENTACTIONCATALOGUE, PREDEFINE_NAMESPACE_EVENTCERTAINTY, PREDEFINE_NAMESPACE_EVENTFUNCTION, PREDEFINE_NAMESPACE_EVENTGROUP, PREDEFINE_NAMESPACE_EVENTINDICATOR, PREDEFINE_NAMESPACE_EVENTLEVEL, PREDEFINE_NAMESPACE_EVENTQUESTION, PREDEFINE_NAMESPACE_EVENTRESPONSE, PREDEFINE_NAMESPACE_EVENTSEVERITY, PREDEFINE_NAMESPACE_EVENTSTATUS, PREDEFINE_NAMESPACE_EVENTTOPIC, PREDEFINE_NAMESPACE_EVENTTYPE, PREDEFINE_NAMESPACE_EVENTURGENCY, PREDEFINE_NAMESPACE_FEATURE, PREDEFINE_NAMESPACE_FEATURETYPE, PREDEFINE_NAMESPACE_HEALTHFACILITY, PREDEFINE_NAMESPACE_NOTIFICATIONTEMPLATE, PREDEFINE_NAMESPACE_PARTYGENDER, PREDEFINE_NAMESPACE_PARTYGROUP, PREDEFINE_NAMESPACE_PARTYNATIONALITY, PREDEFINE_NAMESPACE_PARTYOCCUPATION, PREDEFINE_NAMESPACE_PARTYOWNERSHIP, PREDEFINE_NAMESPACE_PARTYROLE, PREDEFINE_NAMESPACE_PRIORITY, PREDEFINE_NAMESPACE_UNIT, PREDEFINE_NAMESPACE_VEHICLE, PREDEFINE_NAMESPACE_VEHICLEMAKE, PREDEFINE_NAMESPACE_VEHICLEMODEL, PREDEFINE_NAMESPACE_VEHICLESTATUS, PREDEFINE_NAMESPACE_VEHICLETYPE, PREDEFINE_NOTIFICATIONTEMPLATE_NAME, PREDEFINE_PARTYGENDER_NAME, PREDEFINE_PARTYGROUP_NAME, PREDEFINE_PARTYNATIONALITY_NAME, PREDEFINE_PARTYOCCUPATION_NAME, PREDEFINE_PARTYOWNERSHIP_NAME, PREDEFINE_PARTYROLE_NAME, PREDEFINE_PRIORITY_NAME, PREDEFINE_RELATIONS, PREDEFINE_UNIT_NAME, PREDEFINE_VEHICLEMAKE_NAME, PREDEFINE_VEHICLEMODEL_NAME, PREDEFINE_VEHICLESTATUS_NAME, PREDEFINE_VEHICLETYPE_NAME, PREDEFINE_VEHICLE_NAME, VEHICLE_DISPATCH_RELATIONS };