remult 2.7.27 → 2.7.29

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.
@@ -37,57 +37,63 @@ function buildEntityInfo(options) {
37
37
  var _loop_1 = function (x) {
38
38
  if (!x.includedInApi(undefined))
39
39
  return "continue";
40
- var relation = void 0;
41
- var valFieldKey = x.key;
42
- var info = (0, relationInfoMember_js_1.getRelationFieldInfo)(x);
43
- if (info) {
44
- var relInfo = info.getFields();
45
- var relRepo = options.remult.repo(info.toEntity);
46
- var where = typeof info.options.findOptions === 'object' &&
47
- info.options.findOptions.where
48
- ? filter_interfaces_js_1.Filter.entityFilterToJson(relRepo.metadata, info.options.findOptions.where)
49
- : undefined;
50
- var idField_1 = relRepo.metadata.idMetadata.field.key;
51
- if (info.type === 'reference' || info.type === 'toOne') {
52
- if (info.type == 'toOne') {
53
- for (var key in relInfo.fields) {
54
- if (Object.prototype.hasOwnProperty.call(relInfo.fields, key)) {
55
- var element = relInfo.fields[key];
56
- valFieldKey = element;
40
+ try {
41
+ var relation = void 0;
42
+ var valFieldKey = x.key;
43
+ var info = (0, relationInfoMember_js_1.getRelationFieldInfo)(x);
44
+ if (info) {
45
+ var relInfo = info.getFields();
46
+ var relRepo = options.remult.repo(info.toEntity);
47
+ var where = typeof info.options.findOptions === 'object' &&
48
+ info.options.findOptions.where
49
+ ? filter_interfaces_js_1.Filter.entityFilterToJson(relRepo.metadata, info.options.findOptions.where)
50
+ : undefined;
51
+ var idField_1 = relRepo.metadata.idMetadata.field.key;
52
+ if (info.type === 'reference' || info.type === 'toOne') {
53
+ if (info.type == 'toOne') {
54
+ for (var key in relInfo.fields) {
55
+ if (Object.prototype.hasOwnProperty.call(relInfo.fields, key)) {
56
+ var element = relInfo.fields[key];
57
+ valFieldKey = element;
58
+ }
57
59
  }
58
60
  }
61
+ if (relRepo.metadata.apiReadAllowed) {
62
+ relation = tslib_1.__assign(tslib_1.__assign({}, relInfo), { where: where, entityKey: relRepo.metadata.key, idField: idField_1, captionField: (_d = relRepo.metadata.fields
63
+ .toArray()
64
+ .find(function (x) { return x.key != idField_1 && x.valueType == String; })) === null || _d === void 0 ? void 0 : _d.key });
65
+ }
59
66
  }
60
- if (relRepo.metadata.apiReadAllowed) {
61
- relation = tslib_1.__assign(tslib_1.__assign({}, relInfo), { where: where, entityKey: relRepo.metadata.key, idField: idField_1, captionField: (_d = relRepo.metadata.fields
62
- .toArray()
63
- .find(function (x) { return x.key != idField_1 && x.valueType == String; })) === null || _d === void 0 ? void 0 : _d.key });
64
- }
65
- }
66
- else if (info.type === 'toMany') {
67
- if (relRepo.metadata.apiReadAllowed) {
68
- relations.push(tslib_1.__assign(tslib_1.__assign({}, relInfo), { where: where, entityKey: relRepo.metadata.key }));
67
+ else if (info.type === 'toMany') {
68
+ if (relRepo.metadata.apiReadAllowed) {
69
+ relations.push(tslib_1.__assign(tslib_1.__assign({}, relInfo), { where: where, entityKey: relRepo.metadata.key }));
70
+ }
71
+ return "continue";
69
72
  }
70
- return "continue";
71
73
  }
74
+ fields.push({
75
+ key: x.key,
76
+ readOnly: !x.apiUpdateAllowed(),
77
+ values: (0, RepositoryImplementation_js_1.getValueList)(x),
78
+ valFieldKey: valFieldKey,
79
+ caption: x.caption,
80
+ relationToOne: relation,
81
+ inputType: x.inputType,
82
+ type: x.valueConverter.fieldTypeInDb == 'json'
83
+ ? 'json'
84
+ : x.valueType === Number
85
+ ? 'number'
86
+ : x.valueType === Boolean
87
+ ? 'boolean'
88
+ : x.valueType === Date
89
+ ? 'date'
90
+ : 'string',
91
+ });
92
+ }
93
+ catch (error) {
94
+ console.error("[remult-admin] Error with ".concat(metadata.key, ".").concat(x.key, " field."));
95
+ console.error("[remult-admin]", error);
72
96
  }
73
- fields.push({
74
- key: x.key,
75
- readOnly: !x.apiUpdateAllowed(),
76
- values: (0, RepositoryImplementation_js_1.getValueList)(x),
77
- valFieldKey: valFieldKey,
78
- caption: x.caption,
79
- relationToOne: relation,
80
- inputType: x.inputType,
81
- type: x.valueConverter.fieldTypeInDb == 'json'
82
- ? 'json'
83
- : x.valueType === Number
84
- ? 'number'
85
- : x.valueType === Boolean
86
- ? 'boolean'
87
- : x.valueType === Date
88
- ? 'date'
89
- : 'string',
90
- });
91
97
  };
92
98
  try {
93
99
  for (var _k = (e_3 = void 0, tslib_1.__values(metadata.fields.toArray())), _l = _k.next(); !_l.done; _l = _k.next()) {
@@ -16,6 +16,8 @@ exports.getEntityKey = getEntityKey;
16
16
  function getEntityRef(entity, throwException) {
17
17
  var _a;
18
18
  if (throwException === void 0) { throwException = true; }
19
+ if (entity === undefined)
20
+ throw new Error('entity is undefined');
19
21
  var x = entity[exports.entityMember];
20
22
  if (!x && throwException)
21
23
  throw new Error('item ' +