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