Skip to content

Commit

Permalink
Merge tag 'v0.1.0' into develop
Browse files Browse the repository at this point in the history
chore(release): bump to v0.1.0
  • Loading branch information
lykmapipo committed Dec 18, 2019
2 parents d5a95e9 + f805326 commit 0c81f42
Show file tree
Hide file tree
Showing 3 changed files with 505 additions and 20 deletions.
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#### 0.1.0 (2019-12-18)

##### New Features

* setup predefine environment ([d5a95e9e](https://github.com/CodeTanzania/ewea-internals/commit/d5a95e9e9764a6d38547a5e6399ebdfa9f666c77))
* expose population options ([c2911f84](https://github.com/CodeTanzania/ewea-internals/commit/c2911f84d8bf85bbf8c058258483c2cd6f51e35a))
* expose event changelog relation definition ([abf0dd2e](https://github.com/CodeTanzania/ewea-internals/commit/abf0dd2ed86a0418a461c85d4b4a7245027cfb34))
* expose event relations ([a990b220](https://github.com/CodeTanzania/ewea-internals/commit/a990b220159bfcee3ee7a93b4a70ce7cad90a286))
* expose pedefine relations ([e30f8a9e](https://github.com/CodeTanzania/ewea-internals/commit/e30f8a9e5913dbde12fae3d2a32ee056c7335d28))
* expose path names ([6b57339d](https://github.com/CodeTanzania/ewea-internals/commit/6b57339d62ccca8af4db1954d3e7a80cd2270d8d))
* expose predefine buckets ([f5fa38ef](https://github.com/CodeTanzania/ewea-internals/commit/f5fa38efec01761fd78d096cf6d1cb847c4741cb))
* expose predefine namespaces ([877ae27c](https://github.com/CodeTanzania/ewea-internals/commit/877ae27c0875fb42d84b3c14388983556bc04f58))
* expose collection names ([fe77d563](https://github.com/CodeTanzania/ewea-internals/commit/fe77d563a0bf6f92af7a563ee76b6cd51cf5a7b7))
* expose model names ([3185c5cc](https://github.com/CodeTanzania/ewea-internals/commit/3185c5cc1abbe892699c91e303a4b1fa3ab684dc))
* initialize & setup ([46c75184](https://github.com/CodeTanzania/ewea-internals/commit/46c75184a2c6069b656f446d59a61a5436cf022f))

206 changes: 196 additions & 10 deletions es/index.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import { join, stringify } from '@lykmapipo/common';

// model names
const MODEL_NAME_PREDEFINE = 'Predefine';
const MODEL_NAME_UNIT = 'Predefine';
const MODEL_NAME_ADMINISTRATIVELEVEL = 'Predefine';
const MODEL_NAME_FEATURETYPE = 'Predefine';
Expand All @@ -12,29 +15,212 @@ const MODEL_NAME_EVENTTYPE = 'Predefine';
const MODEL_NAME_EVENTFUNCTION = 'Predefine';
const MODEL_NAME_EVENTACTION = 'Predefine';
const MODEL_NAME_EVENTQUESTION = 'Predefine';
const MODEL_NAME_EVENTCATALOGUE = 'Predefine';
const MODEL_NAME_NOTIFICATIONTEMPLATE = 'Predefine';
const MODEL_NAME_PARTY = 'Party';
const MODEL_NAME_PERMISSION = 'Permission';
const MODEL_NAME_PREDEFINE = 'Predefine';
const MODEL_NAME_ROLE = 'Predefine';
const MODEL_NAME_ADMINISTRATIVEAREA = 'Predefine';
const MODEL_NAME_PARTY = 'Party';
const MODEL_NAME_FEATURE = 'Predefine';
const MODEL_NAME_EVENTCATALOGUE = 'Predefine';
const MODEL_NAME_NOTIFICATIONTEMPLATE = 'Predefine';
const MODEL_NAME_EVENT = 'Event';
const MODEL_NAME_EVENT_CHANGELOG = 'EventChangeLog';
const MODEL_NAME_EVENTCHANGELOG = 'EventChangeLog';

// collection names
const COLLECTION_NAME_PREDEFINE = 'predefines';
const COLLECTION_NAME_UNIT = 'predefines';
const COLLECTION_NAME_ADMINISTRATIVELEVEL = 'predefines';
const COLLECTION_NAME_FEATURETYPE = 'predefines';
const COLLECTION_NAME_EVENTINDICATOR = 'predefines';
const COLLECTION_NAME_EVENTSEVERITY = 'predefines';
const COLLECTION_NAME_EVENTCERTAINTY = 'predefines';
const COLLECTION_NAME_PARTYGROUP = 'predefines';
const COLLECTION_NAME_PARTYROLE = '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_ROLE = 'predefines';
const COLLECTION_NAME_ADMINISTRATIVEAREA = 'predefines';
const COLLECTION_NAME_PARTY = 'parties';
const COLLECTION_NAME_FEATURE = 'predefines';
const COLLECTION_NAME_EVENTCATALOGUE = 'predefines';
const COLLECTION_NAME_NOTIFICATIONTEMPLATE = 'predefines';
const COLLECTION_NAME_EVENT = 'events';
const COLLECTION_NAME_EVENTCHANGELOG = 'eventchangelogs';

// path names
const PATH_NAME_EVENT = 'event';

// pedefine namespaces
// predefine namespaces
const PREDEFINE_NAMESPACE_UNIT = 'Unit';
const PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL = 'AdministrativeLevel';
const PREDEFINE_NAMESPACE_FEATURETYPE = 'FeatureType';
const PREDEFINE_NAMESPACE_EVENTINDICATOR = 'EventIndicator';
const PREDEFINE_NAMESPACE_EVENTSEVERITY = 'EventSeverity';
const PREDEFINE_NAMESPACE_EVENTCERTAINTY = 'EventCertainty';
const PREDEFINE_NAMESPACE_PARTYGROUP = 'PartyGroup';
const PREDEFINE_NAMESPACE_PARTYROLE = 'PartyRole';
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_ROLE = 'Role';
const PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA = 'AdministrativeArea';
const PREDEFINE_NAMESPACE_FEATURE = 'Feature';
const PREDEFINE_NAMESPACE_EVENTCATALOGUE = 'EventCatalogue';
const PREDEFINE_NAMESPACE_NOTIFICATIONTEMPLATE = 'NotificationTemplate';
const PREDEFINE_NAMESPACES = [
PREDEFINE_NAMESPACE_UNIT,
PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL,
PREDEFINE_NAMESPACE_FEATURETYPE,
PREDEFINE_NAMESPACE_EVENTINDICATOR,
PREDEFINE_NAMESPACE_EVENTSEVERITY,
PREDEFINE_NAMESPACE_EVENTCERTAINTY,
PREDEFINE_NAMESPACE_PARTYGROUP,
PREDEFINE_NAMESPACE_PARTYROLE,
PREDEFINE_NAMESPACE_EVENTGROUP,
PREDEFINE_NAMESPACE_EVENTTYPE,
PREDEFINE_NAMESPACE_EVENTFUNCTION,
PREDEFINE_NAMESPACE_EVENTACTION,
PREDEFINE_NAMESPACE_EVENTQUESTION,
PREDEFINE_NAMESPACE_ROLE,
PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA,
PREDEFINE_NAMESPACE_FEATURE,
PREDEFINE_NAMESPACE_EVENTCATALOGUE,
PREDEFINE_NAMESPACE_NOTIFICATIONTEMPLATE,
];

// predefine buckets
const PREDEFINE_BUCKET_UNIT = 'units';
const PREDEFINE_BUCKET_ADMINISTRATIVELEVEL = 'administrativelevels';
const PREDEFINE_BUCKET_FEATURETYPE = 'featuretypes';
const PREDEFINE_BUCKET_EVENTINDICATOR = 'eventindicators';
const PREDEFINE_BUCKET_EVENTSEVERITY = 'eventseverities';
const PREDEFINE_BUCKET_EVENTCERTAINTY = 'eventcertainties';
const PREDEFINE_BUCKET_PARTYGROUP = 'partygroups';
const PREDEFINE_BUCKET_PARTYROLE = 'partyroles';
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_ROLE = 'role';
const PREDEFINE_BUCKET_ADMINISTRATIVEAREA = 'administrativeareas';
const PREDEFINE_BUCKET_FEATURE = 'features';
const PREDEFINE_BUCKET_EVENTCATALOGUE = 'eventcatalogues';
const PREDEFINE_BUCKET_NOTIFICATIONTEMPLATE = 'notificationtemplates';
const PREDEFINE_BUCKETS = [
PREDEFINE_BUCKET_UNIT,
PREDEFINE_BUCKET_ADMINISTRATIVELEVEL,
PREDEFINE_BUCKET_FEATURETYPE,
PREDEFINE_BUCKET_EVENTINDICATOR,
PREDEFINE_BUCKET_EVENTSEVERITY,
PREDEFINE_BUCKET_EVENTCERTAINTY,
PREDEFINE_BUCKET_PARTYGROUP,
PREDEFINE_BUCKET_PARTYROLE,
PREDEFINE_BUCKET_EVENTGROUP,
PREDEFINE_BUCKET_EVENTTYPE,
PREDEFINE_BUCKET_EVENTFUNCTION,
PREDEFINE_BUCKET_EVENTACTION,
PREDEFINE_BUCKET_EVENTQUESTION,
PREDEFINE_BUCKET_ROLE,
PREDEFINE_BUCKET_ADMINISTRATIVEAREA,
PREDEFINE_BUCKET_FEATURE,
PREDEFINE_BUCKET_EVENTCATALOGUE,
PREDEFINE_BUCKET_NOTIFICATIONTEMPLATE,
];

// path names
const PATH_NAME_UNIT = 'unit';
const PATH_NAME_ADMINISTRATIVELEVEL = 'level';
const PATH_NAME_FEATURETYPE = 'type';
const PATH_NAME_EVENTINDICATOR = 'indicator';
const PATH_NAME_EVENTSEVERITY = 'severity';
const PATH_NAME_EVENTCERTAINTY = 'certainty';
const PATH_NAME_PARTYGROUP = 'group';
const PATH_NAME_PARTYGROUPS = 'groups';
const PATH_NAME_PARTYROLE = 'role';
const PATH_NAME_PARTYROLES = 'roles';
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_NOTIFICATIONTEMPLATE = 'template';
const PATH_NAME_EVENT = 'event';
const PATH_NAME_EVENTCHANGELOG = 'changelog';
const PATH_NAME_EVENTCHANGELOGS = 'changelogs';

// predefine relations
const PREDEFINE_RELATIONS = {
permissions: { ref: 'Permission', array: true },
roles: { ref: 'Predefine', namespace: 'PartyRole', array: true },
groups: { ref: 'Predefine', namespace: 'PartyGroup', array: true },
group: { ref: 'Predefine', namespace: 'EventGroup' },
type: { ref: 'Predefine', namespace: ['EventType', 'FeatureType'] },
function: { ref: 'Predefine', namespace: 'EventFunction' },
action: { ref: 'Predefine', namespace: 'EventAction' },
level: { ref: 'Predefine', namespace: 'AdministrativeLevel' },
area: { ref: 'Predefine', namespace: 'AdministrativeArea' },
indicator: { ref: 'Predefine', namespace: 'EventIndicator' },
unit: { ref: 'Predefine', namespace: 'Unit' },
agencies: { ref: 'Party', array: true },
focals: { ref: 'Party', array: true },
custodians: { ref: 'Party', array: true },
};

// event relations
const EVENT_RELATIONS = {
group: { ref: 'Predefine', namespace: 'EventGroup' },
type: { ref: 'Predefine', namespace: 'EventType' },
certainty: { ref: 'Predefine', namespace: 'EventCertainty' },
severity: { ref: 'Predefine', namespace: 'EventSeverity' },
areas: { ref: 'Predefine', namespace: 'AdministrativeArea', array: true },
};

// event changelog relations
const EVENT_CHANGELOG_RELATIONS = {
initiator: { ref: 'Party' },
verifier: { ref: 'Party' },
group: { ref: 'Predefine', namespace: 'EventGroup' },
type: { ref: 'Predefine', namespace: 'EventType' },
event: { ref: 'Event' },
function: { ref: 'Predefine', namespace: 'EventFunction' },
action: { ref: 'Predefine', namespace: 'EventAction' },
indicator: { ref: 'Predefine', namespace: 'EventAction' },
need: { ref: 'Predefine', namespace: 'EventQuestion' },
effect: { ref: 'Predefine', namespace: 'EventQuestion' },
areas: { ref: 'Predefine', namespace: 'AdministrativeArea', array: true },
groups: { ref: 'Predefine', namespace: 'PartyGroup', array: true },
roles: { ref: 'Predefine', namespace: 'PartyRole', array: true },
agencies: { ref: 'Party', array: true },
focals: { ref: 'Party', array: true },
template: { ref: 'Predefine', namespace: 'NotificationTemplate' },
};

// population options
const POPULATION_MAX_DEPTH = 1;
const POPULATION_DEFAULT = { maxDepth: POPULATION_MAX_DEPTH };

export { COLLECTION_NAME_EVENT, MODEL_NAME_ADMINISTRATIVELEVEL, MODEL_NAME_EVENT, MODEL_NAME_EVENTACTION, MODEL_NAME_EVENTCATALOGUE, MODEL_NAME_EVENTCERTAINTY, MODEL_NAME_EVENTFUNCTION, MODEL_NAME_EVENTGROUP, MODEL_NAME_EVENTINDICATOR, MODEL_NAME_EVENTQUESTION, MODEL_NAME_EVENTSEVERITY, MODEL_NAME_EVENTTYPE, MODEL_NAME_EVENT_CHANGELOG, MODEL_NAME_FEATURETYPE, MODEL_NAME_NOTIFICATIONTEMPLATE, MODEL_NAME_PARTY, MODEL_NAME_PARTYGROUP, MODEL_NAME_PARTYROLE, MODEL_NAME_PERMISSION, MODEL_NAME_PREDEFINE, MODEL_NAME_ROLE, MODEL_NAME_UNIT, PATH_NAME_EVENT, POPULATION_DEFAULT, POPULATION_MAX_DEPTH, PREDEFINE_BUCKET_UNIT, PREDEFINE_NAMESPACE_UNIT };
// setup env
process.env.PREDEFINE_NAMESPACES = join(PREDEFINE_NAMESPACES, ',');
process.env.PREDEFINE_RELATIONS_IGNORED = join(PREDEFINE_NAMESPACES, ',');
process.env.PREDEFINE_RELATIONS = stringify(PREDEFINE_RELATIONS);

export { COLLECTION_NAME_ADMINISTRATIVEAREA, COLLECTION_NAME_ADMINISTRATIVELEVEL, COLLECTION_NAME_EVENT, COLLECTION_NAME_EVENTACTION, COLLECTION_NAME_EVENTCATALOGUE, COLLECTION_NAME_EVENTCERTAINTY, COLLECTION_NAME_EVENTCHANGELOG, COLLECTION_NAME_EVENTFUNCTION, COLLECTION_NAME_EVENTGROUP, COLLECTION_NAME_EVENTINDICATOR, COLLECTION_NAME_EVENTQUESTION, COLLECTION_NAME_EVENTSEVERITY, COLLECTION_NAME_EVENTTYPE, COLLECTION_NAME_FEATURE, COLLECTION_NAME_FEATURETYPE, COLLECTION_NAME_NOTIFICATIONTEMPLATE, COLLECTION_NAME_PARTY, COLLECTION_NAME_PARTYGROUP, COLLECTION_NAME_PARTYROLE, COLLECTION_NAME_PERMISSION, COLLECTION_NAME_PREDEFINE, COLLECTION_NAME_ROLE, COLLECTION_NAME_UNIT, EVENT_CHANGELOG_RELATIONS, EVENT_RELATIONS, MODEL_NAME_ADMINISTRATIVEAREA, MODEL_NAME_ADMINISTRATIVELEVEL, MODEL_NAME_EVENT, MODEL_NAME_EVENTACTION, MODEL_NAME_EVENTCATALOGUE, MODEL_NAME_EVENTCERTAINTY, MODEL_NAME_EVENTCHANGELOG, MODEL_NAME_EVENTFUNCTION, MODEL_NAME_EVENTGROUP, MODEL_NAME_EVENTINDICATOR, MODEL_NAME_EVENTQUESTION, MODEL_NAME_EVENTSEVERITY, MODEL_NAME_EVENTTYPE, MODEL_NAME_FEATURE, MODEL_NAME_FEATURETYPE, MODEL_NAME_NOTIFICATIONTEMPLATE, MODEL_NAME_PARTY, MODEL_NAME_PARTYGROUP, MODEL_NAME_PARTYROLE, MODEL_NAME_PERMISSION, MODEL_NAME_PREDEFINE, MODEL_NAME_ROLE, MODEL_NAME_UNIT, PATH_NAME_ADMINISTRATIVEAREA, PATH_NAME_ADMINISTRATIVEAREAS, PATH_NAME_ADMINISTRATIVELEVEL, 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_EVENTQUESTION, PATH_NAME_EVENTQUESTION_EFFECT, PATH_NAME_EVENTQUESTION_NEED, PATH_NAME_EVENTSEVERITY, PATH_NAME_EVENTTYPE, PATH_NAME_FEATURE, PATH_NAME_FEATURETYPE, PATH_NAME_NOTIFICATIONTEMPLATE, PATH_NAME_PARTY, PATH_NAME_PARTYGROUP, PATH_NAME_PARTYGROUPS, 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_ROLE, PATH_NAME_ROLES, PATH_NAME_UNIT, POPULATION_DEFAULT, POPULATION_MAX_DEPTH, PREDEFINE_BUCKETS, PREDEFINE_BUCKET_ADMINISTRATIVEAREA, PREDEFINE_BUCKET_ADMINISTRATIVELEVEL, PREDEFINE_BUCKET_EVENTACTION, PREDEFINE_BUCKET_EVENTCATALOGUE, PREDEFINE_BUCKET_EVENTCERTAINTY, PREDEFINE_BUCKET_EVENTFUNCTION, PREDEFINE_BUCKET_EVENTGROUP, PREDEFINE_BUCKET_EVENTINDICATOR, PREDEFINE_BUCKET_EVENTQUESTION, PREDEFINE_BUCKET_EVENTSEVERITY, PREDEFINE_BUCKET_EVENTTYPE, PREDEFINE_BUCKET_FEATURE, PREDEFINE_BUCKET_FEATURETYPE, PREDEFINE_BUCKET_NOTIFICATIONTEMPLATE, PREDEFINE_BUCKET_PARTYGROUP, PREDEFINE_BUCKET_PARTYROLE, PREDEFINE_BUCKET_ROLE, PREDEFINE_BUCKET_UNIT, PREDEFINE_NAMESPACES, PREDEFINE_NAMESPACE_ADMINISTRATIVEAREA, PREDEFINE_NAMESPACE_ADMINISTRATIVELEVEL, PREDEFINE_NAMESPACE_EVENTACTION, PREDEFINE_NAMESPACE_EVENTCATALOGUE, PREDEFINE_NAMESPACE_EVENTCERTAINTY, PREDEFINE_NAMESPACE_EVENTFUNCTION, PREDEFINE_NAMESPACE_EVENTGROUP, PREDEFINE_NAMESPACE_EVENTINDICATOR, PREDEFINE_NAMESPACE_EVENTQUESTION, PREDEFINE_NAMESPACE_EVENTSEVERITY, PREDEFINE_NAMESPACE_EVENTTYPE, PREDEFINE_NAMESPACE_FEATURE, PREDEFINE_NAMESPACE_FEATURETYPE, PREDEFINE_NAMESPACE_NOTIFICATIONTEMPLATE, PREDEFINE_NAMESPACE_PARTYGROUP, PREDEFINE_NAMESPACE_PARTYROLE, PREDEFINE_NAMESPACE_ROLE, PREDEFINE_NAMESPACE_UNIT, PREDEFINE_RELATIONS };
Loading

0 comments on commit 0c81f42

Please sign in to comment.