openchs-models 1.31.25 → 1.31.27

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.
@@ -146,7 +146,7 @@ _defineProperty(ChecklistItemDetail, "schema", {
146
146
  concept: "Concept",
147
147
  stateConfig: {
148
148
  type: "list",
149
- objectType: "ChecklistItemStatus"
149
+ objectType: _SchemaNames.default.ChecklistItemStatus
150
150
  },
151
151
  form: {
152
152
  type: "Form",
@@ -129,8 +129,8 @@ _defineProperty(ChecklistItemStatus, "schema", {
129
129
  embedded: true,
130
130
  properties: {
131
131
  state: "string",
132
- from: "StringKeyNumericValue",
133
- to: "StringKeyNumericValue",
132
+ from: _SchemaNames.default.StringKeyNumericValue,
133
+ to: _SchemaNames.default.StringKeyNumericValue,
134
134
  color: {
135
135
  type: "string",
136
136
  default: "yellow"
package/dist/Concept.js CHANGED
@@ -375,7 +375,7 @@ _defineProperty(Concept, "schema", {
375
375
  },
376
376
  keyValues: {
377
377
  type: "list",
378
- objectType: "KeyValue"
378
+ objectType: _SchemaNames.default.KeyValue
379
379
  },
380
380
  voided: {
381
381
  type: "bool",
package/dist/Decision.js CHANGED
@@ -52,7 +52,6 @@ class Decision extends _PersistedObject.default {
52
52
 
53
53
  _defineProperty(Decision, "schema", {
54
54
  name: "Decision",
55
- embedded: true,
56
55
  properties: {
57
56
  name: "string",
58
57
  code: "string",
@@ -96,6 +96,14 @@ class ReportCard extends _BaseEntity.default {
96
96
  get textColor() {
97
97
  return _lodash.default.isNil(this.standardReportCardType) ? '#ffffff' : this.standardReportCardType.textColor;
98
98
  }
99
+ /**
100
+ * Helper method used to generate unique key value for Nested Report Cards using UUID and Index of the Report Card.
101
+ * The Nested Report Card's query responses would be mapped to the corresponding Dashboard Report cards using the UUID and Index.
102
+ *
103
+ * @param index
104
+ * @returns {string}
105
+ */
106
+
99
107
 
100
108
  getCardId(index = 0) {
101
109
  return this.uuid + '#' + index;
package/dist/Schema.js CHANGED
@@ -71,10 +71,6 @@ var _UserInfo = _interopRequireDefault(require("./UserInfo"));
71
71
 
72
72
  var _StringKeyNumericValue = _interopRequireDefault(require("./application/StringKeyNumericValue"));
73
73
 
74
- var _VisitScheduleInterval = _interopRequireDefault(require("./VisitScheduleInterval"));
75
-
76
- var _VisitScheduleConfig = _interopRequireDefault(require("./VisitScheduleConfig"));
77
-
78
74
  var _IndividualRelation = _interopRequireDefault(require("./relationship/IndividualRelation"));
79
75
 
80
76
  var _IndividualRelationship = _interopRequireDefault(require("./relationship/IndividualRelationship"));
@@ -199,40 +195,100 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
199
195
 
200
196
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
201
197
 
202
- const entities = [_DashboardFilter.default, _LocaleMapping.default, _Settings.default, _ConceptAnswer.default, _Concept.default, _EncounterType.default, _Gender.default, _UserDefinedIndividualProperty.default, _AddressLevel.LocationMapping, _AddressLevel.default, _KeyValue.default, _Form.default, _FormMapping.default, _FormElementGroup.default, _FormElement.default, _SubjectType.default, _Individual.default, _ProgramOutcome.default, _Program.default, _ProgramEnrolment.default, _Observation.default, _ProgramEncounter.default, _Encounter.default, _EntitySyncStatus.default, _EntityQueue.default, _ConfigFile.default, _Checklist.default, _ChecklistItem.default, _Format.default, _UserInfo.default, _StringKeyNumericValue.default, _VisitScheduleInterval.default, _VisitScheduleConfig.default, _Family.default, _IndividualRelation.default, _IndividualRelationGenderMapping.default, _IndividualRelationshipType.default, _IndividualRelationship.default, _RuleDependency.default, _Rule.default, _ChecklistItemStatus.default, _ChecklistDetail.default, _ChecklistItemDetail.default, _VideoTelemetric.default, _Video.default, _MediaQueue.default, _Point.default, _SyncTelemetry.default, _IdentifierSource.default, _IdentifierAssignment.default, _RuleFailureTelemetry.default, _BeneficiaryModePin.default, _OrganisationConfig.default, _PlatformTranslation.default, _Translation.default, _Groups.default, _MyGroups.default, _GroupPrivileges.default, _Privilege.default, _GroupRole.default, _GroupSubject.default, _DashboardCache.default, _CustomDashboardCache.default, _LocationHierarchy.default, _ReportCard.default, _Dashboard.default, _DashboardSectionCardMapping.default, _DraftSubject.default, _StandardReportCardType.default, _ApprovalStatus.default, _EntityApprovalStatus.default, _GroupDashboard.default, _DashboardSection.default, _News.default, _Comment.default, _CommentThread.default, _Extension.default, _SubjectMigration.default, _ResetSync.default, _Documentation.default, _DocumentationItem.default, _TaskType.default, _TaskStatus.default, _Task.default, _TaskUnAssignment.default, _DraftEncounter.default, _SubjectProgramEligibility.default, _MenuItem.default, _UserSubjectAssignment.default];
198
+ const entities = [_DashboardFilter.default, _LocaleMapping.default, _Settings.default, _ConceptAnswer.default, _Concept.default, _EncounterType.default, _Gender.default, _UserDefinedIndividualProperty.default, _AddressLevel.LocationMapping, _AddressLevel.default, _KeyValue.default, _Form.default, _FormMapping.default, _FormElementGroup.default, _FormElement.default, _SubjectType.default, _Individual.default, _ProgramOutcome.default, _Program.default, _ProgramEnrolment.default, _Observation.default, _ProgramEncounter.default, _Encounter.default, _EntitySyncStatus.default, _EntityQueue.default, _ConfigFile.default, _Checklist.default, _ChecklistItem.default, _Format.default, _UserInfo.default, _StringKeyNumericValue.default, _Family.default, _IndividualRelation.default, _IndividualRelationGenderMapping.default, _IndividualRelationshipType.default, _IndividualRelationship.default, _RuleDependency.default, _Rule.default, _ChecklistItemStatus.default, _ChecklistDetail.default, _ChecklistItemDetail.default, _VideoTelemetric.default, _Video.default, _MediaQueue.default, _Point.default, _SyncTelemetry.default, _IdentifierSource.default, _IdentifierAssignment.default, _RuleFailureTelemetry.default, _BeneficiaryModePin.default, _OrganisationConfig.default, _PlatformTranslation.default, _Translation.default, _Groups.default, _MyGroups.default, _GroupPrivileges.default, _Privilege.default, _GroupRole.default, _GroupSubject.default, _DashboardCache.default, _CustomDashboardCache.default, _LocationHierarchy.default, _ReportCard.default, _Dashboard.default, _DashboardSectionCardMapping.default, _DraftSubject.default, _StandardReportCardType.default, _ApprovalStatus.default, _EntityApprovalStatus.default, _GroupDashboard.default, _DashboardSection.default, _News.default, _Comment.default, _CommentThread.default, _Extension.default, _SubjectMigration.default, _ResetSync.default, _Documentation.default, _DocumentationItem.default, _TaskType.default, _TaskStatus.default, _Task.default, _TaskUnAssignment.default, _DraftEncounter.default, _SubjectProgramEligibility.default, _MenuItem.default, _UserSubjectAssignment.default];
199
+
200
+ function migrateObjectTypeFieldToEmbedded(newDB, oldDB, schemaName, field, creatorFn) {
201
+ console.log(`schema: ${schemaName}, field: ${field}`);
202
+ newDB.objects(schemaName).forEach(newDbParentEntity => {
203
+ const oldFieldValue = oldDB.objects(schemaName).filtered(`uuid = "${newDbParentEntity.uuid}"`)[0][field];
204
+
205
+ if (!_lodash.default.isNil(oldFieldValue)) {
206
+ newDbParentEntity[field] = creatorFn(oldFieldValue);
207
+ }
208
+ });
209
+ }
210
+
211
+ function migrateListTypeFieldToEmbedded(newDB, oldDB, schemaName, field, creatorFn) {
212
+ console.log(`schema: ${schemaName}, field: ${field}`);
213
+ newDB.objects(schemaName).forEach(newDbParentEntity => {
214
+ const newList = [];
215
+ const oldFieldValues = oldDB.objects(schemaName).filtered(`uuid = "${newDbParentEntity.uuid}"`)[0][field];
216
+ oldFieldValues.forEach(oldFieldValue => {
217
+ newList.push(creatorFn(oldFieldValue));
218
+ });
219
+ newDbParentEntity[field] = newList;
220
+ });
221
+ }
203
222
 
204
223
  function migrateEmbeddedObjects(oldDB, newDB) {
205
224
  _MetaDataService.default.forEachObservationField((observationField, schemaName) => {
206
- newDB.objects(schemaName).forEach(newDbParentEntity => {
207
- const newObservations = [];
208
- const oldObservations = oldDB.objects(schemaName).filtered(`uuid = "${newDbParentEntity.uuid}"`)[0][observationField];
209
- oldObservations.forEach(oldObservation => {
210
- const newConcept = newDB.objects("Concept").filtered(`uuid = "${oldObservation.concept.uuid}"`)[0];
211
- console.log(`Schema: ${schemaName}, newDbParentEntity: ${newDbParentEntity.uuid}, newConcept: ${newConcept.uuid}`);
212
- newObservations.push({
213
- concept: newConcept,
214
- valueJSON: oldObservation.valueJSON
215
- });
216
- });
217
- newDbParentEntity[observationField] = newObservations;
225
+ migrateListTypeFieldToEmbedded(newDB, oldDB, schemaName, observationField, old => {
226
+ const newConcept = newDB.objects("Concept").filtered(`uuid = "${old.concept.uuid}"`)[0];
227
+ return {
228
+ concept: newConcept,
229
+ valueJSON: old.valueJSON
230
+ };
218
231
  });
219
232
  });
220
233
 
221
234
  newDB.deleteModel("Observation");
222
235
 
223
- _MetaDataService.default.forEachPointField((pointField, schemaName) => {
224
- newDB.objects(schemaName).forEach(newDbParentEntity => {
225
- const oldPoint = oldDB.objects(schemaName).filtered(`uuid = "${newDbParentEntity.uuid}"`)[0][pointField];
226
- const newPoint = {
227
- x: oldPoint.x,
228
- y: oldPoint.y
236
+ _MetaDataService.default.forEachPointField((field, schemaName) => {
237
+ migrateObjectTypeFieldToEmbedded(newDB, oldDB, schemaName, field, old => {
238
+ return {
239
+ x: old.x,
240
+ y: old.y
229
241
  };
230
- console.log(`Schema: ${schemaName}, newDbParentEntity: ${newDbParentEntity.uuid}`);
231
- newDbParentEntity[pointField] = newPoint;
232
242
  });
233
243
  });
234
244
 
235
245
  newDB.deleteModel("Point");
246
+
247
+ _MetaDataService.default.forEachFormatField((field, schemaName) => {
248
+ migrateObjectTypeFieldToEmbedded(newDB, oldDB, schemaName, field, old => {
249
+ return {
250
+ regex: old.regex,
251
+ descriptionKey: old.descriptionKey
252
+ };
253
+ });
254
+ });
255
+
256
+ newDB.deleteModel("Format");
257
+
258
+ _MetaDataService.default.forEachKeyValueField((field, schemaName) => {
259
+ migrateListTypeFieldToEmbedded(newDB, oldDB, schemaName, field, old => {
260
+ return {
261
+ key: old.key,
262
+ value: old.value
263
+ };
264
+ });
265
+ });
266
+
267
+ newDB.deleteModel("KeyValue");
268
+
269
+ _MetaDataService.default.forEachChecklistItemStatusField((field, schemaName) => {
270
+ migrateListTypeFieldToEmbedded(newDB, oldDB, schemaName, field, old => {
271
+ return {
272
+ state: old.state,
273
+ from: {
274
+ key: old.from.key,
275
+ value: old.from.value
276
+ },
277
+ to: {
278
+ key: old.to.key,
279
+ value: old.to.value
280
+ },
281
+ color: old.color,
282
+ displayOrder: old.displayOrder,
283
+ start: old.start,
284
+ end: old.end
285
+ };
286
+ });
287
+ });
288
+
289
+ console.log(`deleting model: ChecklistItemStatus`);
290
+ newDB.deleteModel("ChecklistItemStatus"); // console.log(`deleting model: StringKeyNumericValue`);
291
+ // newDB.deleteModel("StringKeyNumericValue");
236
292
  }
237
293
 
238
294
  function createRealmConfig() {
@@ -242,10 +298,6 @@ function createRealmConfig() {
242
298
  onMigration: function (oldDB, newDB) {
243
299
  console.log("[AvniModels.Schema]", `Running migration with old schema version: ${oldDB.schemaVersion} and new schema version: ${newDB.schemaVersion}`);
244
300
 
245
- if (oldDB.schemaVersion < 184) {
246
- migrateEmbeddedObjects(oldDB, newDB);
247
- }
248
-
249
301
  if (oldDB.schemaVersion < 10) {
250
302
  const oldObjects = oldDB.objects("DecisionConfig");
251
303
  oldObjects.forEach(decisionConfig => {
@@ -850,6 +902,10 @@ function createRealmConfig() {
850
902
  const newObjects = newDB.objects("DashboardCache");
851
903
  newDB.delete(newObjects);
852
904
  }
905
+
906
+ if (oldDB.schemaVersion < 184) {
907
+ migrateEmbeddedObjects(oldDB, newDB);
908
+ }
853
909
  }
854
910
  };
855
911
  }
@@ -33,7 +33,7 @@ _defineProperty(SchemaNames, "Identifier", "Identifier");
33
33
 
34
34
  _defineProperty(SchemaNames, "Form", "Form");
35
35
 
36
- _defineProperty(SchemaNames, "Format", "Format");
36
+ _defineProperty(SchemaNames, "Format", "EmbeddedFormat");
37
37
 
38
38
  _defineProperty(SchemaNames, "FormElement", "FormElement");
39
39
 
@@ -41,11 +41,11 @@ _defineProperty(SchemaNames, "FormElementGroup", "FormElementGroup");
41
41
 
42
42
  _defineProperty(SchemaNames, "FormMapping", "FormMapping");
43
43
 
44
- _defineProperty(SchemaNames, "KeyValue", "KeyValue");
44
+ _defineProperty(SchemaNames, "KeyValue", "EmbeddedKeyValue");
45
45
 
46
46
  _defineProperty(SchemaNames, "MenuItem", "MenuItem");
47
47
 
48
- _defineProperty(SchemaNames, "StringKeyNumericValue", "StringKeyNumericValue");
48
+ _defineProperty(SchemaNames, "StringKeyNumericValue", "EmbeddedStringKeyNumericValue");
49
49
 
50
50
  _defineProperty(SchemaNames, "UserSubjectAssignment", "UserSubjectAssignment");
51
51
 
@@ -83,7 +83,7 @@ _defineProperty(SchemaNames, "ChecklistDetail", "ChecklistDetail");
83
83
 
84
84
  _defineProperty(SchemaNames, "ChecklistItemDetail", "ChecklistItemDetail");
85
85
 
86
- _defineProperty(SchemaNames, "ChecklistItemStatus", "ChecklistItemStatus");
86
+ _defineProperty(SchemaNames, "ChecklistItemStatus", "EmbeddedChecklistItemStatus");
87
87
 
88
88
  _defineProperty(SchemaNames, "Comment", "Comment");
89
89
 
@@ -13,6 +13,8 @@ var _Format = _interopRequireDefault(require("./application/Format"));
13
13
 
14
14
  var _ResourceUtil = _interopRequireDefault(require("./utility/ResourceUtil"));
15
15
 
16
+ var _SchemaNames = _interopRequireDefault(require("./SchemaNames"));
17
+
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
 
18
20
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -300,15 +302,15 @@ _defineProperty(SubjectType, "schema", {
300
302
  default: false
301
303
  },
302
304
  validFirstNameFormat: {
303
- type: "Format",
305
+ type: _SchemaNames.default.Format,
304
306
  optional: true
305
307
  },
306
308
  validMiddleNameFormat: {
307
- type: "Format",
309
+ type: _SchemaNames.default.Format,
308
310
  optional: true
309
311
  },
310
312
  validLastNameFormat: {
311
- type: "Format",
313
+ type: _SchemaNames.default.Format,
312
314
  optional: true
313
315
  },
314
316
  iconFileS3Key: {
@@ -418,7 +418,7 @@ _defineProperty(FormElement, "schema", {
418
418
  mandatory: "bool",
419
419
  keyValues: {
420
420
  type: "list",
421
- objectType: "KeyValue"
421
+ objectType: _SchemaNames.default.KeyValue
422
422
  },
423
423
  concept: "Concept",
424
424
  type: {
@@ -427,7 +427,7 @@ _defineProperty(FormElement, "schema", {
427
427
  },
428
428
  formElementGroup: "FormElementGroup",
429
429
  validFormat: {
430
- type: "Format",
430
+ type: _SchemaNames.default.Format,
431
431
  optional: true
432
432
  },
433
433
  voided: {
package/dist/index.js CHANGED
@@ -387,18 +387,6 @@ Object.defineProperty(exports, "VideoTelemetric", {
387
387
  return _VideoTelemetric.default;
388
388
  }
389
389
  });
390
- Object.defineProperty(exports, "VisitScheduleConfig", {
391
- enumerable: true,
392
- get: function () {
393
- return _VisitScheduleConfig.default;
394
- }
395
- });
396
- Object.defineProperty(exports, "VisitScheduleInterval", {
397
- enumerable: true,
398
- get: function () {
399
- return _VisitScheduleInterval.default;
400
- }
401
- });
402
390
  Object.defineProperty(exports, "MediaQueue", {
403
391
  enumerable: true,
404
392
  get: function () {
@@ -940,10 +928,6 @@ var _Video = _interopRequireDefault(require("./videos/Video"));
940
928
 
941
929
  var _VideoTelemetric = _interopRequireDefault(require("./videos/VideoTelemetric"));
942
930
 
943
- var _VisitScheduleConfig = _interopRequireDefault(require("./VisitScheduleConfig"));
944
-
945
- var _VisitScheduleInterval = _interopRequireDefault(require("./VisitScheduleInterval"));
946
-
947
931
  var _MediaQueue = _interopRequireDefault(require("./MediaQueue"));
948
932
 
949
933
  var _Point = _interopRequireDefault(require("./geo/Point"));
@@ -34,22 +34,42 @@ pointHolders.set(_SchemaNames.default.Encounter, ["encounterLocation", "cancelLo
34
34
  pointHolders.set(_SchemaNames.default.Individual, ["registrationLocation"]);
35
35
  pointHolders.set(_SchemaNames.default.ProgramEncounter, ["encounterLocation", "cancelLocation"]);
36
36
  pointHolders.set(_SchemaNames.default.ProgramEnrolment, ["enrolmentLocation", "exitLocation"]);
37
+ const formatHolders = new Map();
38
+ formatHolders.set("SubjectType", ["validFirstNameFormat", "validMiddleNameFormat", "validLastNameFormat"]);
39
+ formatHolders.set(_SchemaNames.default.FormElement, ["validFormat"]);
40
+ const keyValueHolders = new Map();
41
+ keyValueHolders.set(_SchemaNames.default.FormElement, ["keyValues"]);
42
+ keyValueHolders.set(_SchemaNames.default.Concept, ["keyValues"]);
43
+ const checklistItemStatusHolders = new Map();
44
+ checklistItemStatusHolders.set(_SchemaNames.default.ChecklistItemDetail, ["stateConfig"]);
45
+
46
+ function forEachField(fn, holders) {
47
+ holders.forEach((fields, schemaName) => {
48
+ fields.forEach(field => {
49
+ fn(field, schemaName);
50
+ });
51
+ });
52
+ }
37
53
 
38
54
  class MetaDataService {
39
55
  static forEachPointField(fn) {
40
- pointHolders.forEach((pointFields, schemaName) => {
41
- pointFields.forEach(observationField => {
42
- fn(observationField, schemaName);
43
- });
44
- });
56
+ forEachField(fn, pointHolders);
45
57
  }
46
58
 
47
59
  static forEachObservationField(fn) {
48
- observationHolders.forEach((observationFields, schemaName) => {
49
- observationFields.forEach(observationField => {
50
- fn(observationField, schemaName);
51
- });
52
- });
60
+ forEachField(fn, observationHolders);
61
+ }
62
+
63
+ static forEachFormatField(fn) {
64
+ forEachField(fn, formatHolders);
65
+ }
66
+
67
+ static forEachKeyValueField(fn) {
68
+ forEachField(fn, keyValueHolders);
69
+ }
70
+
71
+ static forEachChecklistItemStatusField(fn) {
72
+ forEachField(fn, checklistItemStatusHolders);
53
73
  }
54
74
 
55
75
  static everyObservationField(fn) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "openchs-models",
3
3
  "description": "OpenCHS data model to be used by front end clients",
4
- "version": "1.31.25",
4
+ "version": "1.31.27",
5
5
  "private": false,
6
6
  "repository": {
7
7
  "type": "git",
@@ -1,73 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _ReferenceEntity = _interopRequireDefault(require("./ReferenceEntity"));
9
-
10
- var _General = _interopRequireDefault(require("./utility/General"));
11
-
12
- var _EncounterType = _interopRequireDefault(require("./EncounterType"));
13
-
14
- var _VisitScheduleInterval = _interopRequireDefault(require("./VisitScheduleInterval"));
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
-
20
- class VisitScheduleConfig extends _ReferenceEntity.default {
21
- constructor(that = null) {
22
- super(that);
23
- }
24
-
25
- get name() {
26
- return this.that.name;
27
- }
28
-
29
- set name(x) {
30
- this.that.name = x;
31
- }
32
-
33
- get encounterType() {
34
- return this.toEntity("encounterType", _EncounterType.default);
35
- }
36
-
37
- set encounterType(x) {
38
- this.that.encounterType = this.fromObject(x);
39
- }
40
-
41
- get interval() {
42
- return this.toEntity("interval", _VisitScheduleInterval.default);
43
- }
44
-
45
- set interval(x) {
46
- this.that.interval = this.fromObject(x);
47
- }
48
-
49
- static fromResource(resource, entityService) {
50
- const visitScheduleConfig = _General.default.assignFields(resource, new VisitScheduleConfig(), ["uuid", "name"]);
51
-
52
- visitScheduleConfig.encounterType = entityService.findByKey("name", resource.encounterType, _EncounterType.default.schema.name);
53
- visitScheduleConfig.interval = _VisitScheduleInterval.default.fromResource(resource.interval, entityService);
54
- return visitScheduleConfig;
55
- }
56
-
57
- clone() {
58
- return super.clone(new VisitScheduleConfig());
59
- }
60
-
61
- }
62
-
63
- _defineProperty(VisitScheduleConfig, "schema", {
64
- name: "VisitScheduleConfig",
65
- properties: {
66
- name: "string",
67
- encounterType: "EncounterType",
68
- interval: "VisitScheduleInterval"
69
- }
70
- });
71
-
72
- var _default = VisitScheduleConfig;
73
- exports.default = _default;
@@ -1,72 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _ReferenceEntity = _interopRequireDefault(require("./ReferenceEntity"));
9
-
10
- var _StringKeyNumericValue = _interopRequireDefault(require("./application/StringKeyNumericValue"));
11
-
12
- var _General = _interopRequireDefault(require("./utility/General"));
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
-
18
- class VisitScheduleInterval extends _ReferenceEntity.default {
19
- constructor(that = null) {
20
- super(that);
21
- }
22
-
23
- get from() {
24
- return this.that.from;
25
- }
26
-
27
- set from(x) {
28
- this.that.from = x;
29
- }
30
-
31
- get min() {
32
- return this.toEntity("min", _StringKeyNumericValue.default);
33
- }
34
-
35
- set min(x) {
36
- this.that.min = this.fromObject(x);
37
- }
38
-
39
- get max() {
40
- return this.toEntity("max", _StringKeyNumericValue.default);
41
- }
42
-
43
- set max(x) {
44
- this.that.max = this.fromObject(x);
45
- }
46
-
47
- static fromResource(resource) {
48
- const visitScheduleInterval = _General.default.assignFields(resource, new VisitScheduleInterval(), ["uuid", "from"]);
49
-
50
- visitScheduleInterval.min = _StringKeyNumericValue.default.fromResource(resource.min.unit, resource.min.value);
51
- visitScheduleInterval.max = _StringKeyNumericValue.default.fromResource(resource.max.unit, resource.max.value);
52
- return visitScheduleInterval;
53
- }
54
-
55
- clone() {
56
- return super.clone(new VisitScheduleInterval());
57
- }
58
-
59
- }
60
-
61
- _defineProperty(VisitScheduleInterval, "schema", {
62
- name: "VisitScheduleInterval",
63
- embedded: true,
64
- properties: {
65
- from: "string",
66
- min: "StringKeyNumericValue",
67
- max: "StringKeyNumericValue"
68
- }
69
- });
70
-
71
- var _default = VisitScheduleInterval;
72
- exports.default = _default;