@steedos/standard-object-database 2.5.3-beta.2 → 2.5.3-beta.21
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.
- package/main/default/client/object_fields.client.js +7 -149
- package/main/default/objectTranslations/datasources.en/datasources.en.objectTranslation.yml +1 -1
- package/main/default/objectTranslations/object_triggers.en/object_triggers.en.objectTranslation.yml +1 -1
- package/main/default/objectTranslations/object_validation_rules.en/object_validation_rules.en.objectTranslation.yml +1 -1
- package/main/default/objectTranslations/objects.en/objects.en.objectTranslation.yml +7 -7
- package/main/default/objects/object_fields.object.yml +6 -6
- package/main/default/objects/object_listviews.object.yml +1 -1
- package/main/default/objects/object_related_list.object.yml +1 -1
- package/main/default/objects/objects.core.js +20 -19
- package/main/default/objects/objects.object.yml +7 -0
- package/main/default/triggers/object_fields.trigger.js +2 -1
- package/main/default/triggers/object_validation_rules.trigger.js +4 -3
- package/package.json +2 -2
|
@@ -1,154 +1,12 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @Author: baozhoutao@steedos.com
|
|
3
|
+
* @Date: 2022-08-05 14:17:44
|
|
4
|
+
* @LastEditors: baozhoutao@steedos.com
|
|
5
|
+
* @LastEditTime: 2023-06-09 14:42:12
|
|
6
|
+
* @Description:
|
|
7
|
+
*/
|
|
1
8
|
Steedos.ObjectFieldManager = {};
|
|
2
9
|
|
|
3
|
-
// Steedos.ObjectFieldManager.__lastDoc = null;
|
|
4
|
-
|
|
5
|
-
// const baseFieldsName = [{ "name": "object", "required": true }, { "name": "label", "required": true }, {name: '_name', required: true}, { "name": "type", "required": true }, { "name": "defaultValue" }, { "name": "group" }, { "name": "sort_no" }, { "name": "is_name" }, { "name": "required" }, { "name": "is_wide" }, { "name": "readonly" }, { "name": "hidden" }, { "name": "omit" }, { "name": "index" }, { "name": "sortable" }, { "name": "searchable" }, { "name": "filterable" }, {"name":"inlineHelpText"},{"name":"description"}];
|
|
6
|
-
|
|
7
|
-
// function getFieldsByType(doc, type, dataType) {
|
|
8
|
-
// let fields = [];
|
|
9
|
-
// if(dataType){
|
|
10
|
-
// fields = fields.concat(getFieldsByType(doc, dataType))
|
|
11
|
-
// }
|
|
12
|
-
// switch (type) {
|
|
13
|
-
// case 'textarea':{
|
|
14
|
-
// fields.push({ name: 'rows', required: true });
|
|
15
|
-
// break;
|
|
16
|
-
// }
|
|
17
|
-
// case 'select':{
|
|
18
|
-
// fields.push({ name: 'options', required: true });
|
|
19
|
-
// fields.push({ name: 'options.$', required: true });
|
|
20
|
-
// fields.push({ name: 'options.$.label', required: true });
|
|
21
|
-
// fields.push({ name: 'options.$.value', required: true });
|
|
22
|
-
// fields.push({ name: 'options.$.color', required: false });
|
|
23
|
-
// fields.push({ name: 'options.$.description', required: false });
|
|
24
|
-
// fields.push({ name: 'multiple'});
|
|
25
|
-
// break;
|
|
26
|
-
// }
|
|
27
|
-
// case 'number':{
|
|
28
|
-
// fields.push({ name: 'precision', required: true });
|
|
29
|
-
// fields.push({ name: 'scale', required: true });
|
|
30
|
-
// break;
|
|
31
|
-
// }
|
|
32
|
-
// case 'currency':{
|
|
33
|
-
// fields.push({ name: 'precision', required: true });
|
|
34
|
-
// fields.push({ name: 'scale', required: true });
|
|
35
|
-
// break;
|
|
36
|
-
// }
|
|
37
|
-
// case 'percent':{
|
|
38
|
-
// fields.push({ name: 'precision', required: true });
|
|
39
|
-
// fields.push({ name: 'scale', required: true });
|
|
40
|
-
// break;
|
|
41
|
-
// }
|
|
42
|
-
// case 'lookup': {
|
|
43
|
-
// fields.push({ name: 'reference_to'});
|
|
44
|
-
// fields.push({ name: 'filtersFunction'});
|
|
45
|
-
// fields.push({ name: 'optionsFunction'});
|
|
46
|
-
// fields.push({ name: 'multiple'});
|
|
47
|
-
// break;
|
|
48
|
-
// }
|
|
49
|
-
// case 'master_detail': {
|
|
50
|
-
// fields.push({ name: 'reference_to'});
|
|
51
|
-
// fields.push({ name: 'filtersFunction'});
|
|
52
|
-
// fields.push({ name: 'optionsFunction'});
|
|
53
|
-
// fields.push({ name: 'write_requires_master_read'});
|
|
54
|
-
// break;
|
|
55
|
-
// }
|
|
56
|
-
// case 'autonumber': {
|
|
57
|
-
// fields.push({ name: 'formula', required: true });
|
|
58
|
-
// break;
|
|
59
|
-
// }
|
|
60
|
-
// case 'formula': {
|
|
61
|
-
// fields.push({ name: 'formula', required: true });
|
|
62
|
-
// fields.push({ name: 'data_type', required: true });
|
|
63
|
-
// fields.push({ name: 'formula_blank_value', required: true });
|
|
64
|
-
// break;
|
|
65
|
-
// }
|
|
66
|
-
// case 'summary': {
|
|
67
|
-
// fields.push({ name: 'summary_object', required: true });
|
|
68
|
-
// fields.push({ name: 'summary_type', required: true });
|
|
69
|
-
// if(doc.summary_type != 'count'){
|
|
70
|
-
// fields.push({ name: 'summary_field', required: true });
|
|
71
|
-
// }
|
|
72
|
-
// // fields.push({ name: 'data_type', required: true });
|
|
73
|
-
// fields.push({ name: 'precision', required: true });
|
|
74
|
-
// fields.push({ name: 'scale', required: true });
|
|
75
|
-
// fields.push({ name: 'summary_filters' });
|
|
76
|
-
// fields.push({ name: 'summary_filters.$' });
|
|
77
|
-
// fields.push({ name: 'summary_filters.$.field' });
|
|
78
|
-
// fields.push({ name: 'summary_filters.$.operation' });
|
|
79
|
-
// fields.push({ name: 'summary_filters.$.value' });
|
|
80
|
-
// break;
|
|
81
|
-
// }
|
|
82
|
-
// case 'image': {
|
|
83
|
-
// // fields.push({ name: 'multiple'}); image多选时,单个字段编辑窗口样式异常,暂时不支持
|
|
84
|
-
// break;
|
|
85
|
-
// }
|
|
86
|
-
// case 'url': {
|
|
87
|
-
// fields.push({ name: 'show_as_qr'});
|
|
88
|
-
// break;
|
|
89
|
-
// }
|
|
90
|
-
// default:
|
|
91
|
-
// break;
|
|
92
|
-
// }
|
|
93
|
-
// return fields;
|
|
94
|
-
// }
|
|
95
|
-
// Meteor.startup(function(){
|
|
96
|
-
// $('body').on('hidden.bs.modal', '#afModal', function(){
|
|
97
|
-
// Steedos.ObjectFieldManager.__lastDoc = null;
|
|
98
|
-
// });
|
|
99
|
-
// });
|
|
100
|
-
|
|
101
|
-
// Steedos.ObjectFieldManager.changeSchema = function (doc, schema, when) {
|
|
102
|
-
// var __lastDoc = Steedos.ObjectFieldManager.__lastDoc;
|
|
103
|
-
// var noChange = doc.type && __lastDoc && __lastDoc._id == doc._id && __lastDoc.type == doc.type && __lastDoc.data_type == doc.data_type;
|
|
104
|
-
// if(noChange && doc.type == "summary" && __lastDoc.summary_type != doc.summary_type){
|
|
105
|
-
// // 当字段类型为汇总时,汇总类型如果有变更,有可能“要聚合的字段”属性不一定必填,所以这里强制重新计算Schema
|
|
106
|
-
// noChange = false;
|
|
107
|
-
// }
|
|
108
|
-
// if(noChange){
|
|
109
|
-
// return false;
|
|
110
|
-
// }else{
|
|
111
|
-
// Steedos.ObjectFieldManager.__lastDoc = doc;
|
|
112
|
-
// }
|
|
113
|
-
|
|
114
|
-
// var clone = require('clone');
|
|
115
|
-
// var fields = clone(Creator.getObject("object_fields").fields);
|
|
116
|
-
// var showFields = baseFieldsName.concat(getFieldsByType(doc, doc.type, doc.data_type));
|
|
117
|
-
// if(when === 'view'){
|
|
118
|
-
// showFields.push({ "name": "name" })
|
|
119
|
-
// }else if(when === 'edit' && false){
|
|
120
|
-
// showFields.push({name: '_name', required: true})
|
|
121
|
-
// }
|
|
122
|
-
// var objectName = doc.object;
|
|
123
|
-
// if(_.isObject(objectName)){
|
|
124
|
-
// objectName = objectName.name
|
|
125
|
-
// }
|
|
126
|
-
// var _object = Creator.getObject(objectName);
|
|
127
|
-
// if(!_object){
|
|
128
|
-
// var _objects = Steedos.authRequest(`/api/v4/objects`, { type: 'get', async: false, data: { $filter: "name eq '"+objectName+"'" } });
|
|
129
|
-
// _object = _objects && _objects.value && _objects.value.length > 0 ? _objects.value[0] : null;
|
|
130
|
-
// }
|
|
131
|
-
// // 外部数据源对象必须启用后,才可正常显示对象字段属性
|
|
132
|
-
// if(_object && (_object.database_name || _object.datasource)){
|
|
133
|
-
// showFields.push({"name":"column_name"})
|
|
134
|
-
// showFields.push({"name":"primary"})
|
|
135
|
-
// showFields.push({"name":"generated"})
|
|
136
|
-
// }
|
|
137
|
-
// _.map(fields, function(field, fname){
|
|
138
|
-
// var showField = _.find(showFields, function(item){
|
|
139
|
-
// return item && item.name === fname;
|
|
140
|
-
// })
|
|
141
|
-
// if(showField){
|
|
142
|
-
// Object.assign(field, showField)
|
|
143
|
-
// }else{
|
|
144
|
-
// Object.assign(field, {omit: true, hidden: true})
|
|
145
|
-
// }
|
|
146
|
-
// })
|
|
147
|
-
|
|
148
|
-
// var objectSchema = Creator.getObjectSchema({fields: fields});
|
|
149
|
-
// Object.assign(schema, new SimpleSchema(objectSchema))
|
|
150
|
-
// }
|
|
151
|
-
|
|
152
10
|
Steedos.ObjectFieldManager.getSummaryFiltersOperation = function(field_type) {
|
|
153
11
|
var operations, optionals;
|
|
154
12
|
optionals = {
|
|
@@ -127,7 +127,7 @@ fields:
|
|
|
127
127
|
help:
|
|
128
128
|
description:
|
|
129
129
|
owner:
|
|
130
|
-
label:
|
|
130
|
+
label: Owner
|
|
131
131
|
help:
|
|
132
132
|
description:
|
|
133
133
|
app_unique_id:
|
|
@@ -147,7 +147,7 @@ fields:
|
|
|
147
147
|
help:
|
|
148
148
|
description:
|
|
149
149
|
is_deleted:
|
|
150
|
-
label:
|
|
150
|
+
label: Deleted
|
|
151
151
|
help:
|
|
152
152
|
description:
|
|
153
153
|
reload_time:
|
|
@@ -198,7 +198,7 @@ groups:
|
|
|
198
198
|
script: Script
|
|
199
199
|
listviews:
|
|
200
200
|
all:
|
|
201
|
-
label: All
|
|
201
|
+
label: All Objects
|
|
202
202
|
customize:
|
|
203
203
|
label: Customize
|
|
204
204
|
system:
|
|
@@ -215,7 +215,7 @@ actions:
|
|
|
215
215
|
CustomLabels:
|
|
216
216
|
objects_field_datasource_defaultValue: Default data source
|
|
217
217
|
objects_field_datasource_meteor: Meteor
|
|
218
|
-
objects_field_enable_approvals:
|
|
219
|
-
objects_field_enable_space_global:
|
|
220
|
-
objects_field_enable_web_forms:
|
|
221
|
-
object_object__error_name_invalid_format:
|
|
218
|
+
objects_field_enable_approvals: Display Request History Steps
|
|
219
|
+
objects_field_enable_space_global: Accessing Data Across Workspaces
|
|
220
|
+
objects_field_enable_web_forms: Allow Online Forms
|
|
221
|
+
object_object__error_name_invalid_format: Can only contain lowercase letters and numbers, must start with a letter, cannot end with an underscore character or contain two consecutive underscore characters
|
|
@@ -216,7 +216,7 @@ fields:
|
|
|
216
216
|
return ['_id', '=', 'no']
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
|
-
sort_no:
|
|
219
|
+
sort_no: 445
|
|
220
220
|
reference_to_field:
|
|
221
221
|
type: lookup
|
|
222
222
|
group: Advanced
|
|
@@ -615,13 +615,13 @@ fields:
|
|
|
615
615
|
required:
|
|
616
616
|
type: boolean
|
|
617
617
|
label: Required
|
|
618
|
-
group: Advanced
|
|
618
|
+
# group: Advanced
|
|
619
619
|
visible_on: "{{['autonumber','summary','formula'].indexOf(formData.type) > -1 ? false: true}}"
|
|
620
620
|
sort_no: 390
|
|
621
621
|
is_wide:
|
|
622
622
|
type: boolean
|
|
623
623
|
label: Is Wide
|
|
624
|
-
group: Advanced
|
|
624
|
+
# group: Advanced
|
|
625
625
|
# readonly:
|
|
626
626
|
# type: boolean
|
|
627
627
|
# label: Readonly
|
|
@@ -657,7 +657,7 @@ fields:
|
|
|
657
657
|
show_as_qr:
|
|
658
658
|
type: boolean
|
|
659
659
|
label: Show_as_qr
|
|
660
|
-
group: Advanced
|
|
660
|
+
# group: Advanced
|
|
661
661
|
visible_on: "{{formData.type === 'url' ? true: false}}"
|
|
662
662
|
sort_no: 440
|
|
663
663
|
visible_on:
|
|
@@ -670,13 +670,13 @@ fields:
|
|
|
670
670
|
label: Prompt text
|
|
671
671
|
type: textarea
|
|
672
672
|
is_wide: true
|
|
673
|
-
group: Advanced
|
|
673
|
+
# group: Advanced
|
|
674
674
|
sort_no: 460
|
|
675
675
|
description:
|
|
676
676
|
label: Description
|
|
677
677
|
type: textarea
|
|
678
678
|
is_wide: true
|
|
679
|
-
group: Advanced
|
|
679
|
+
# group: Advanced
|
|
680
680
|
sort_no: 470
|
|
681
681
|
amis:
|
|
682
682
|
label: Amis 属性
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
var objectql = require('@steedos/objectql');
|
|
2
|
+
const register = require('@steedos/metadata-registrar');
|
|
2
3
|
const clone = require('clone');
|
|
3
4
|
const defaultDatasourceName = 'default';
|
|
4
5
|
const defaultDatasourcesName = ['default','meteor'];
|
|
@@ -135,7 +136,7 @@ function loadDBObject(object){
|
|
|
135
136
|
objectql.extend(object, {fields: fields}, {actions: actions}, {relatedList: relatedList});
|
|
136
137
|
_.each(actions, function(action){
|
|
137
138
|
action._visible = action.visible;
|
|
138
|
-
|
|
139
|
+
register.addLazyLoadButtons(action.object, action);
|
|
139
140
|
})
|
|
140
141
|
}
|
|
141
142
|
|
|
@@ -189,17 +190,17 @@ function loadObject(doc, oldDoc) {
|
|
|
189
190
|
|
|
190
191
|
originalObject.isMain = true;
|
|
191
192
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
193
|
+
register.addObjectConfig(doc, datasourceName);
|
|
194
|
+
register.loadObjectLazyListViews(doc.name);
|
|
195
|
+
register.loadObjectLazyActions(doc.name);
|
|
196
|
+
register.loadActionScripts(doc.name);
|
|
197
|
+
register.loadObjectLazyMethods(doc.name);
|
|
198
|
+
register.loadObjectLazyListenners(doc.name);
|
|
199
|
+
register.loadObjectLazyButtons(doc.name);
|
|
199
200
|
//获取到继承后的对象
|
|
200
201
|
// const _doc = objectql.getObjectConfig(doc.name);
|
|
201
202
|
// console.log(`loadObject===>`, doc.name)
|
|
202
|
-
|
|
203
|
+
register.MetadataRegister.addObjectConfig(DB_OBJECT_SERVICE_NAME, originalObject).then(function(res){
|
|
203
204
|
if(res){
|
|
204
205
|
// datasource.setObject(doc.name, _doc);
|
|
205
206
|
// try {
|
|
@@ -215,7 +216,7 @@ function loadObject(doc, oldDoc) {
|
|
|
215
216
|
// loadObjectPermission(doc);
|
|
216
217
|
// }
|
|
217
218
|
|
|
218
|
-
|
|
219
|
+
broker.broadcast("$packages.statisticsActivatedPackages", {});
|
|
219
220
|
}
|
|
220
221
|
})
|
|
221
222
|
|
|
@@ -273,33 +274,33 @@ function reloadObject(changeLog){
|
|
|
273
274
|
case 'field':
|
|
274
275
|
if(data.event === 'remove'){
|
|
275
276
|
deleted.fields.push(data.value.name);
|
|
276
|
-
|
|
277
|
+
register.removeObjectFieldConfig(objectName, data.value);
|
|
277
278
|
}else{
|
|
278
279
|
if(data.event === 'update'){
|
|
279
280
|
if(data.value._previousName != data.value.name){
|
|
280
281
|
deleted.fields.push(data.value._previousName);
|
|
281
|
-
|
|
282
|
+
register.removeObjectFieldConfig(objectName, {name: data.value._previousName});
|
|
282
283
|
}
|
|
283
284
|
}
|
|
284
|
-
|
|
285
|
+
register.addObjectFieldConfig(objectName, data.value);
|
|
285
286
|
}
|
|
286
287
|
break;
|
|
287
288
|
case 'action':
|
|
288
289
|
if(data.event === 'remove'){
|
|
289
290
|
deleted.actions.push(data.value.name);
|
|
290
|
-
|
|
291
|
+
register.removeObjectButtonsConfig(objectName, data.value);
|
|
291
292
|
}else{
|
|
292
293
|
if(data.event === 'update'){
|
|
293
294
|
if(data.value._previousName != data.value.name){
|
|
294
295
|
deleted.actions.push(data.value._previousName);
|
|
295
|
-
|
|
296
|
+
register.removeObjectButtonsConfig(objectName, {name: data.value._previousName});
|
|
296
297
|
}
|
|
297
298
|
}
|
|
298
299
|
if(data.value.is_enable){
|
|
299
|
-
|
|
300
|
+
register.addObjectButtonsConfig(objectName, data.value);
|
|
300
301
|
}else{
|
|
301
302
|
deleted.actions.push(data.value.name);
|
|
302
|
-
|
|
303
|
+
register.removeObjectButtonsConfig(objectName, data.value);
|
|
303
304
|
}
|
|
304
305
|
}
|
|
305
306
|
break;
|
|
@@ -316,7 +317,7 @@ function reloadObject(changeLog){
|
|
|
316
317
|
return
|
|
317
318
|
}
|
|
318
319
|
//获取到最新的对象
|
|
319
|
-
const object =
|
|
320
|
+
const object = register.getOriginalObjectConfig(objectName);
|
|
320
321
|
|
|
321
322
|
let _mf = _.max(_.values(object.fields), function (field) { return field.sort_no; });
|
|
322
323
|
if(_mf && object.name){
|
|
@@ -341,7 +342,7 @@ function reloadObject(changeLog){
|
|
|
341
342
|
// } catch (error) {
|
|
342
343
|
// console.log('error', error);
|
|
343
344
|
// }
|
|
344
|
-
|
|
345
|
+
broker.broadcast("$packages.statisticsActivatedPackages", {});
|
|
345
346
|
}
|
|
346
347
|
})
|
|
347
348
|
}
|
|
@@ -28,10 +28,12 @@ fields:
|
|
|
28
28
|
required: true
|
|
29
29
|
is_name: true
|
|
30
30
|
searchable: true
|
|
31
|
+
filterable: true
|
|
31
32
|
name:
|
|
32
33
|
type: text
|
|
33
34
|
label: API Name
|
|
34
35
|
searchable: true
|
|
36
|
+
filterable: true
|
|
35
37
|
index: true
|
|
36
38
|
required: true
|
|
37
39
|
inlineHelpText: Can only contain lowercase letters and numbers, must start with a letter, cannot end with an underscore character or contain two consecutive underscore characters
|
|
@@ -131,6 +133,11 @@ fields:
|
|
|
131
133
|
inlineHelpText: When enabled, the lookup field associated with this object displays its options as a pop-up window.
|
|
132
134
|
group: Switch
|
|
133
135
|
defaultValue: false
|
|
136
|
+
# enable_audit:
|
|
137
|
+
# type: boolean
|
|
138
|
+
# label: Enable Audit
|
|
139
|
+
# group: Switch
|
|
140
|
+
# hidden: true
|
|
134
141
|
# enable_trash:
|
|
135
142
|
# type: boolean
|
|
136
143
|
# enable_space_global:
|
|
@@ -4,6 +4,7 @@ const odataMongodb = require("@steedos/odata-v4-mongodb");
|
|
|
4
4
|
const clone = require('clone');
|
|
5
5
|
var objectCore = require('../objects/objects.core.js');
|
|
6
6
|
const objectql = require('@steedos/objectql');
|
|
7
|
+
const register = require('@steedos/metadata-registrar');
|
|
7
8
|
const auth = require('@steedos/auth');
|
|
8
9
|
const MAX_MASTER_DETAIL_LEAVE = objectql.MAX_MASTER_DETAIL_LEAVE;
|
|
9
10
|
const validateOptionValue = (value)=>{
|
|
@@ -198,7 +199,7 @@ const initSummaryDoc = async (doc) => {
|
|
|
198
199
|
if (!doc.summary_object) {
|
|
199
200
|
throw new Error("object_fields_error_summary_object_required");
|
|
200
201
|
}
|
|
201
|
-
let summaryObject =
|
|
202
|
+
let summaryObject = register.getObjectConfig(doc.summary_object);
|
|
202
203
|
let summaryConfig = {
|
|
203
204
|
summary_object: doc.summary_object,
|
|
204
205
|
summary_type: doc.summary_type,
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
const _ = require("underscore");
|
|
7
7
|
const util = require('@steedos/standard-objects').util;
|
|
8
8
|
const objectql = require("@steedos/objectql");
|
|
9
|
+
const register = require('@steedos/metadata-registrar')
|
|
9
10
|
const auth = require('@steedos/auth');
|
|
10
11
|
|
|
11
12
|
module.exports = {
|
|
@@ -17,7 +18,7 @@ module.exports = {
|
|
|
17
18
|
},
|
|
18
19
|
afterFind: async function(){
|
|
19
20
|
const { spaceId } = this;
|
|
20
|
-
let dataList =
|
|
21
|
+
let dataList = register.getAllObjectValidationRules();
|
|
21
22
|
if (!_.isEmpty(dataList)) {
|
|
22
23
|
dataList.forEach((doc) => {
|
|
23
24
|
if (!_.find(this.data.values, (value) => {
|
|
@@ -37,7 +38,7 @@ module.exports = {
|
|
|
37
38
|
},
|
|
38
39
|
afterAggregate: async function(){
|
|
39
40
|
const { spaceId } = this;
|
|
40
|
-
let dataList =
|
|
41
|
+
let dataList = register.getAllObjectValidationRules();
|
|
41
42
|
if (!_.isEmpty(dataList)) {
|
|
42
43
|
dataList.forEach((doc) => {
|
|
43
44
|
if (!_.find(this.data.values, (value) => {
|
|
@@ -61,7 +62,7 @@ module.exports = {
|
|
|
61
62
|
},
|
|
62
63
|
afterFindOne: async function(){
|
|
63
64
|
if (_.isEmpty(this.data.values)) {
|
|
64
|
-
const all =
|
|
65
|
+
const all = register.getAllObjectValidationRules();
|
|
65
66
|
const id = this.id;
|
|
66
67
|
this.data.values = _.find(all, function (item) {
|
|
67
68
|
return item._id === id
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steedos/standard-object-database",
|
|
3
|
-
"version": "2.5.3-beta.
|
|
3
|
+
"version": "2.5.3-beta.21",
|
|
4
4
|
"main": "package.service.js",
|
|
5
5
|
"private": false,
|
|
6
6
|
"publishConfig": {
|
|
@@ -15,5 +15,5 @@
|
|
|
15
15
|
},
|
|
16
16
|
"repository": {},
|
|
17
17
|
"license": "MIT",
|
|
18
|
-
"gitHead": "
|
|
18
|
+
"gitHead": "b4313a2ef5d18ef1cf9271bd3c89b2d6fe52d65b"
|
|
19
19
|
}
|