@steedos/objectql 2.2.52-beta.7 → 2.2.53-beta.3
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/LICENSE.txt +2 -5
- package/lib/actions/field_updates.js +7 -7
- package/lib/actions/field_updates.js.map +1 -1
- package/lib/actions/index.js +3 -3
- package/lib/actions/index.js.map +1 -1
- package/lib/actions/workflow_notifications.js +6 -6
- package/lib/actions/workflow_notifications.js.map +1 -1
- package/lib/actions/workflow_rule.js +9 -9
- package/lib/actions/workflow_rule.js.map +1 -1
- package/lib/broker.d.ts +7 -0
- package/lib/broker.js +41 -0
- package/lib/broker.js.map +1 -0
- package/lib/driver/field-encrytion/index.js +1 -1
- package/lib/driver/field-encrytion/index.js.map +1 -1
- package/lib/driver/field-encrytion/mongosharedconst.d.ts +2 -1
- package/lib/driver/index.js +2 -2
- package/lib/driver/index.js.map +1 -1
- package/lib/driver/metadata.js +1 -1
- package/lib/driver/metadata.js.map +1 -1
- package/lib/driver/meteorMongo.d.ts +1 -1
- package/lib/driver/meteorMongo.js +36 -35
- package/lib/driver/meteorMongo.js.map +1 -1
- package/lib/driver/mongo.d.ts +1 -1
- package/lib/driver/mongo.js +42 -41
- package/lib/driver/mongo.js.map +1 -1
- package/lib/driver/mysql.d.ts +1 -1
- package/lib/driver/mysql.js +9 -2
- package/lib/driver/mysql.js.map +1 -1
- package/lib/driver/oracle.d.ts +1 -1
- package/lib/driver/oracle.js +11 -4
- package/lib/driver/oracle.js.map +1 -1
- package/lib/driver/postgres.d.ts +1 -1
- package/lib/driver/postgres.js +9 -2
- package/lib/driver/postgres.js.map +1 -1
- package/lib/driver/sqlite3.d.ts +1 -1
- package/lib/driver/sqlite3.js +9 -2
- package/lib/driver/sqlite3.js.map +1 -1
- package/lib/driver/sqlserver.d.ts +1 -1
- package/lib/driver/sqlserver.js +11 -4
- package/lib/driver/sqlserver.js.map +1 -1
- package/lib/dynamic-load/actions.js +7 -7
- package/lib/dynamic-load/actions.js.map +1 -1
- package/lib/dynamic-load/approval_process.js +1 -1
- package/lib/dynamic-load/approval_process.js.map +1 -1
- package/lib/dynamic-load/button.js +5 -7
- package/lib/dynamic-load/button.js.map +1 -1
- package/lib/dynamic-load/chart.js +2 -2
- package/lib/dynamic-load/client_script.js +19 -18
- package/lib/dynamic-load/client_script.js.map +1 -1
- package/lib/dynamic-load/field.js +5 -7
- package/lib/dynamic-load/field.js.map +1 -1
- package/lib/dynamic-load/index.js +21 -21
- package/lib/dynamic-load/index.js.map +1 -1
- package/lib/dynamic-load/layout.js +6 -7
- package/lib/dynamic-load/layout.js.map +1 -1
- package/lib/dynamic-load/listview.js +4 -5
- package/lib/dynamic-load/listview.js.map +1 -1
- package/lib/dynamic-load/method.js +1 -1
- package/lib/dynamic-load/method.js.map +1 -1
- package/lib/dynamic-load/object_translations.js +7 -7
- package/lib/dynamic-load/object_translations.js.map +1 -1
- package/lib/dynamic-load/package.js +21 -15
- package/lib/dynamic-load/package.js.map +1 -1
- package/lib/dynamic-load/page.js +2 -2
- package/lib/dynamic-load/permission.js +4 -4
- package/lib/dynamic-load/permission.js.map +1 -1
- package/lib/dynamic-load/permissionset.js +20 -20
- package/lib/dynamic-load/permissionset.js.map +1 -1
- package/lib/dynamic-load/preload_data.js +21 -21
- package/lib/dynamic-load/preload_data.js.map +1 -1
- package/lib/dynamic-load/profile.js +23 -23
- package/lib/dynamic-load/profile.js.map +1 -1
- package/lib/dynamic-load/query.js +2 -2
- package/lib/dynamic-load/restrictionRules.js +2 -2
- package/lib/dynamic-load/shareRules.js +2 -2
- package/lib/dynamic-load/tab.js +2 -2
- package/lib/dynamic-load/tabs.js +4 -4
- package/lib/dynamic-load/translations.js +9 -9
- package/lib/dynamic-load/translations.js.map +1 -1
- package/lib/dynamic-load/trigger.js +2 -2
- package/lib/dynamic-load/trigger.js.map +1 -1
- package/lib/dynamic-load/workflow.js +3 -3
- package/lib/dynamic-load/workflow.js.map +1 -1
- package/lib/formula/core.d.ts +1 -1
- package/lib/formula/core.js +87 -54
- package/lib/formula/core.js.map +1 -1
- package/lib/formula/field_formula.js +12 -12
- package/lib/formula/index.js +13 -13
- package/lib/formula/index.js.map +1 -1
- package/lib/formula/recompute.js +13 -13
- package/lib/formula/recompute.js.map +1 -1
- package/lib/formula/type.d.ts +1 -0
- package/lib/formula/type.js.map +1 -1
- package/lib/formula/util.d.ts +1 -1
- package/lib/formula/util.js +4 -3
- package/lib/formula/util.js.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.js +22 -20
- package/lib/index.js.map +1 -1
- package/lib/metadata-register/_base.js +12 -12
- package/lib/metadata-register/app.js +8 -8
- package/lib/metadata-register/chart.js +1 -1
- package/lib/metadata-register/chart.js.map +1 -1
- package/lib/metadata-register/index.js +48 -48
- package/lib/metadata-register/layout.js +10 -10
- package/lib/metadata-register/object.js +10 -10
- package/lib/metadata-register/page.js +1 -1
- package/lib/metadata-register/page.js.map +1 -1
- package/lib/metadata-register/permissionFields.js +1 -1
- package/lib/metadata-register/permissionFields.js.map +1 -1
- package/lib/metadata-register/permissionset.js +6 -6
- package/lib/metadata-register/process.js +1 -1
- package/lib/metadata-register/process.js.map +1 -1
- package/lib/metadata-register/processTrigger.js +1 -1
- package/lib/metadata-register/processTrigger.js.map +1 -1
- package/lib/metadata-register/profile.js +6 -6
- package/lib/metadata-register/query.js +1 -1
- package/lib/metadata-register/query.js.map +1 -1
- package/lib/metadata-register/restrictionRules.js +1 -1
- package/lib/metadata-register/restrictionRules.js.map +1 -1
- package/lib/metadata-register/shareRules.js +1 -1
- package/lib/metadata-register/shareRules.js.map +1 -1
- package/lib/metadata-register/tab.js +1 -1
- package/lib/metadata-register/tab.js.map +1 -1
- package/lib/metadata-register/tabs.js +10 -10
- package/lib/services/datasourceServiceFactory.js +2 -2
- package/lib/services/helpers/graphql/index.js +160 -112
- package/lib/services/helpers/graphql/index.js.map +1 -1
- package/lib/services/index.js +4 -4
- package/lib/services/index.js.map +1 -1
- package/lib/services/objectService.js +142 -142
- package/lib/services/objectService.js.map +1 -1
- package/lib/services/objectServiceDispatcher.js +89 -89
- package/lib/services/objectServiceDispatcher.js.map +1 -1
- package/lib/services/objectServiceFactory.js +2 -2
- package/lib/summary/core.d.ts +2 -2
- package/lib/summary/core.js +34 -22
- package/lib/summary/core.js.map +1 -1
- package/lib/summary/field_summary.js +10 -10
- package/lib/summary/index.js +16 -8
- package/lib/summary/index.js.map +1 -1
- package/lib/summary/recompute.js +17 -9
- package/lib/summary/recompute.js.map +1 -1
- package/lib/summary/type.d.ts +1 -0
- package/lib/summary/type.js.map +1 -1
- package/lib/ts-types/index.js +3 -3
- package/lib/ts-types/index.js.map +1 -1
- package/lib/typeorm/driver.d.ts +1 -1
- package/lib/typeorm/driver.js +42 -69
- package/lib/typeorm/driver.js.map +1 -1
- package/lib/typeorm/index.js +1 -1
- package/lib/typeorm/index.js.map +1 -1
- package/lib/typeorm/util.js +5 -5
- package/lib/typeorm/util.js.map +1 -1
- package/lib/types/app.js +21 -21
- package/lib/types/app.js.map +1 -1
- package/lib/types/config.js +2 -2
- package/lib/types/connection.js +10 -10
- package/lib/types/datasource.js +64 -64
- package/lib/types/datasource.js.map +1 -1
- package/lib/types/field.js +1 -1
- package/lib/types/field.js.map +1 -1
- package/lib/types/field_permission.js +6 -6
- package/lib/types/index.js +10 -10
- package/lib/types/index.js.map +1 -1
- package/lib/types/list_view.js +1 -1
- package/lib/types/list_view.js.map +1 -1
- package/lib/types/object.js +167 -153
- package/lib/types/object.js.map +1 -1
- package/lib/types/object_dynamic_load.js +10 -10
- package/lib/types/object_events.js +2 -2
- package/lib/types/object_layouts.js +4 -4
- package/lib/types/object_permission.js +1 -1
- package/lib/types/object_permission.js.map +1 -1
- package/lib/types/restrictionRule.js +4 -4
- package/lib/types/schema.js +8 -8
- package/lib/types/shareRule.js +4 -4
- package/lib/types/validation_rules.js +3 -3
- package/lib/types/validation_rules.js.map +1 -1
- package/lib/util/convert.js +2 -3
- package/lib/util/convert.js.map +1 -1
- package/lib/util/index.js +19 -17
- package/lib/util/index.js.map +1 -1
- package/package.json +23 -37
- package/lib/edition/index.d.ts +0 -1
- package/lib/edition/index.js +0 -12
- package/lib/edition/index.js.map +0 -1
- package/lib/edition/isPlatformEnterPrise.d.ts +0 -1
- package/lib/edition/isPlatformEnterPrise.js +0 -28
- package/lib/edition/isPlatformEnterPrise.js.map +0 -1
|
@@ -7,10 +7,10 @@ var convert_1 = require("../util/convert");
|
|
|
7
7
|
var datasource_1 = require("../types/datasource");
|
|
8
8
|
var LocalDataSourceServices = {};
|
|
9
9
|
function createDataSourceService(broker, dataSource) {
|
|
10
|
-
return
|
|
10
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
11
11
|
var dataSourceName, serviceName, service;
|
|
12
12
|
var _a;
|
|
13
|
-
return
|
|
13
|
+
return tslib_1.__generator(this, function (_b) {
|
|
14
14
|
switch (_b.label) {
|
|
15
15
|
case 0:
|
|
16
16
|
dataSourceName = dataSource.name;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @Author: sunhaolin@hotoa.com
|
|
4
4
|
* @Date: 2022-06-15 15:49:44
|
|
5
5
|
* @LastEditors: sunhaolin@hotoa.com
|
|
6
|
-
* @LastEditTime: 2022-
|
|
6
|
+
* @LastEditTime: 2022-07-07 16:53:26
|
|
7
7
|
* @Description:
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -27,22 +27,22 @@ function generateActionGraphqlProp(actionName, objectConfig) {
|
|
|
27
27
|
}
|
|
28
28
|
switch (actionName) {
|
|
29
29
|
case 'graphqlCount':
|
|
30
|
-
gplObj.query = gql(templateObject_1 || (templateObject_1 =
|
|
30
|
+
gplObj.query = gql(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject(["\n type Query {\n ", "__count(fields: JSON, filters: JSON, top: Int, skip: Int, sort: String): Int\n }\n "], ["\n type Query {\n ", "__count(fields: JSON, filters: JSON, top: Int, skip: Int, sort: String): Int\n }\n "])), objectName);
|
|
31
31
|
break;
|
|
32
32
|
case 'graphqlFind':
|
|
33
|
-
gplObj.query = gql(templateObject_2 || (templateObject_2 =
|
|
33
|
+
gplObj.query = gql(templateObject_2 || (templateObject_2 = tslib_1.__makeTemplateObject(["\n type Query {\n ", "(fields: JSON, filters: JSON, top: Int, skip: Int, sort: String): [", "]\n }\n "], ["\n type Query {\n ", "(fields: JSON, filters: JSON, top: Int, skip: Int, sort: String): [", "]\n }\n "])), objectName, objectName);
|
|
34
34
|
break;
|
|
35
35
|
case 'findOne':
|
|
36
|
-
gplObj.query = gql(templateObject_3 || (templateObject_3 =
|
|
36
|
+
gplObj.query = gql(templateObject_3 || (templateObject_3 = tslib_1.__makeTemplateObject(["\n type Query {\n ", "__", "(id: JSON): ", "\n }\n "], ["\n type Query {\n ", "__", "(id: JSON): ", "\n }\n "])), objectName, actionName, objectName);
|
|
37
37
|
break;
|
|
38
38
|
case 'insert':
|
|
39
|
-
gplObj.mutation = gql(templateObject_4 || (templateObject_4 =
|
|
39
|
+
gplObj.mutation = gql(templateObject_4 || (templateObject_4 = tslib_1.__makeTemplateObject(["\n type Mutation {\n ", "__", "(doc: JSON): ", "\n }\n "], ["\n type Mutation {\n ", "__", "(doc: JSON): ", "\n }\n "])), objectName, actionName, objectName);
|
|
40
40
|
break;
|
|
41
41
|
case 'update':
|
|
42
|
-
gplObj.mutation = gql(templateObject_5 || (templateObject_5 =
|
|
42
|
+
gplObj.mutation = gql(templateObject_5 || (templateObject_5 = tslib_1.__makeTemplateObject(["\n type Mutation {\n ", "__", "(id: JSON, doc: JSON): ", "\n }\n "], ["\n type Mutation {\n ", "__", "(id: JSON, doc: JSON): ", "\n }\n "])), objectName, actionName, objectName);
|
|
43
43
|
break;
|
|
44
44
|
case 'delete':
|
|
45
|
-
gplObj.mutation = gql(templateObject_6 || (templateObject_6 =
|
|
45
|
+
gplObj.mutation = gql(templateObject_6 || (templateObject_6 = tslib_1.__makeTemplateObject(["\n type Mutation {\n ", "__", "(id: JSON): JSON\n }\n "], ["\n type Mutation {\n ", "__", "(id: JSON): JSON\n }\n "])), objectName, actionName);
|
|
46
46
|
break;
|
|
47
47
|
default:
|
|
48
48
|
// console.error(`need to handle action: ${actionName}`);
|
|
@@ -69,20 +69,25 @@ function generateSettingsGraphql(objectConfig) {
|
|
|
69
69
|
type += "".concat(name, ": JSON ");
|
|
70
70
|
return;
|
|
71
71
|
}
|
|
72
|
+
var isLookup = (field.type == "lookup" || field.type == "master_detail") &&
|
|
73
|
+
field.reference_to && _.isString(field.reference_to);
|
|
74
|
+
var isFile = field.type == "image" || field.type == "file";
|
|
72
75
|
if (consts_1.BASIC_TYPE_MAPPING[field.type]) {
|
|
73
76
|
type += "".concat(name, ": ").concat(consts_1.BASIC_TYPE_MAPPING[field.type], " ");
|
|
74
77
|
}
|
|
75
|
-
else if (
|
|
76
|
-
field.reference_to &&
|
|
77
|
-
_.isString(field.reference_to)) {
|
|
78
|
+
else if (isLookup || isFile) {
|
|
78
79
|
var refTo = field.reference_to;
|
|
79
|
-
|
|
80
|
+
var referenceToField = field.reference_to_field;
|
|
81
|
+
if (isFile) {
|
|
82
|
+
// TODO: cfs_images_filerecord对象不存在,需要额外处理
|
|
83
|
+
refTo = field.type == "image" ? "cfs_images_filerecord" : "cfs_files_filerecord";
|
|
84
|
+
}
|
|
80
85
|
var objMetaData = getLocalService(refTo);
|
|
81
86
|
if (refTo != objectName && (!objMetaData || objMetaData.settings.deleted)) {
|
|
82
87
|
return;
|
|
83
88
|
}
|
|
84
89
|
if (field.multiple) {
|
|
85
|
-
type += "".concat(name, ": [
|
|
90
|
+
type += "".concat(name, ": [JSON] ");
|
|
86
91
|
type += "".concat(name).concat(consts_1.EXPAND_SUFFIX, ": [").concat(refTo, "] ");
|
|
87
92
|
resolvers[objectName]["".concat(name).concat(consts_1.EXPAND_SUFFIX)] = {
|
|
88
93
|
action: "".concat((0, __1.getObjectServiceName)(refTo), ".").concat(consts_1.GRAPHQL_ACTION_PREFIX).concat(consts_1.EXPAND_SUFFIX, "_multiple"),
|
|
@@ -91,11 +96,12 @@ function generateSettingsGraphql(objectConfig) {
|
|
|
91
96
|
_a),
|
|
92
97
|
params: {
|
|
93
98
|
objectName: refTo,
|
|
99
|
+
referenceToField: referenceToField
|
|
94
100
|
},
|
|
95
101
|
};
|
|
96
102
|
}
|
|
97
103
|
else {
|
|
98
|
-
type += "".concat(name, ":
|
|
104
|
+
type += "".concat(name, ": JSON ");
|
|
99
105
|
type += "".concat(name).concat(consts_1.EXPAND_SUFFIX, ": ").concat(refTo, " ");
|
|
100
106
|
resolvers[objectName]["".concat(name).concat(consts_1.EXPAND_SUFFIX)] = {
|
|
101
107
|
action: "".concat((0, __1.getObjectServiceName)(refTo), ".").concat(consts_1.GRAPHQL_ACTION_PREFIX).concat(consts_1.EXPAND_SUFFIX),
|
|
@@ -104,6 +110,7 @@ function generateSettingsGraphql(objectConfig) {
|
|
|
104
110
|
_b),
|
|
105
111
|
params: {
|
|
106
112
|
objectName: refTo,
|
|
113
|
+
referenceToField: referenceToField
|
|
107
114
|
},
|
|
108
115
|
};
|
|
109
116
|
}
|
|
@@ -130,7 +137,7 @@ function generateSettingsGraphql(objectConfig) {
|
|
|
130
137
|
};
|
|
131
138
|
// define _display type
|
|
132
139
|
var _display_type = _getDisplayType(_display_type_name, fields);
|
|
133
|
-
type = gql(templateObject_7 || (templateObject_7 =
|
|
140
|
+
type = gql(templateObject_7 || (templateObject_7 = tslib_1.__makeTemplateObject(["\n ", "\n ", "\n "], ["\n ", "\n ", "\n "])), _display_type, type);
|
|
134
141
|
// _related
|
|
135
142
|
if (objectConfig.enable_files) {
|
|
136
143
|
var relatedObjName = "cms_files";
|
|
@@ -182,10 +189,10 @@ function generateSettingsGraphql(objectConfig) {
|
|
|
182
189
|
}
|
|
183
190
|
exports.generateSettingsGraphql = generateSettingsGraphql;
|
|
184
191
|
function dealWithRelatedFields(objectConfig, graphql) {
|
|
185
|
-
return
|
|
192
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
186
193
|
var steedosSchema, objectName, obj, relationsInfo, detailsInfo, lookupsInfo, relatedInfos, relatedInfos_1, relatedInfos_1_1, info, infos, detailObjectApiName, detailFieldName, relatedFieldName, relatedType;
|
|
187
194
|
var e_1, _a;
|
|
188
|
-
return
|
|
195
|
+
return tslib_1.__generator(this, function (_b) {
|
|
189
196
|
switch (_b.label) {
|
|
190
197
|
case 0:
|
|
191
198
|
steedosSchema = (0, __2.getSteedosSchema)();
|
|
@@ -198,7 +205,7 @@ function dealWithRelatedFields(objectConfig, graphql) {
|
|
|
198
205
|
lookupsInfo = relationsInfo.lookup_details || [];
|
|
199
206
|
relatedInfos = detailsInfo.concat(lookupsInfo);
|
|
200
207
|
try {
|
|
201
|
-
for (relatedInfos_1 =
|
|
208
|
+
for (relatedInfos_1 = tslib_1.__values(relatedInfos), relatedInfos_1_1 = relatedInfos_1.next(); !relatedInfos_1_1.done; relatedInfos_1_1 = relatedInfos_1.next()) {
|
|
202
209
|
info = relatedInfos_1_1.value;
|
|
203
210
|
if (!info.startsWith("__")) {
|
|
204
211
|
infos = info.split(".");
|
|
@@ -242,14 +249,14 @@ function getGraphqlActions(objectConfig) {
|
|
|
242
249
|
var objName = objectConfig.name;
|
|
243
250
|
actions["".concat(consts_1.GRAPHQL_ACTION_PREFIX).concat(consts_1.EXPAND_SUFFIX, "_multiple")] = {
|
|
244
251
|
handler: function (ctx) {
|
|
245
|
-
return
|
|
246
|
-
var _a, ids, objectName, filters, selector, steedosSchema, obj, resolveInfo, fieldNames;
|
|
247
|
-
return
|
|
248
|
-
_a = ctx.params, ids = _a.ids, objectName = _a.objectName;
|
|
252
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
253
|
+
var _a, ids, objectName, referenceToField, filters, selector, steedosSchema, obj, resolveInfo, fieldNames;
|
|
254
|
+
return tslib_1.__generator(this, function (_b) {
|
|
255
|
+
_a = ctx.params, ids = _a.ids, objectName = _a.objectName, referenceToField = _a.referenceToField;
|
|
249
256
|
if (_.isEmpty(ids)) {
|
|
250
257
|
return [2 /*return*/, null];
|
|
251
258
|
}
|
|
252
|
-
filters = [["_id", "in", ids]];
|
|
259
|
+
filters = [[referenceToField || "_id", "in", ids]];
|
|
253
260
|
selector = { filters: filters };
|
|
254
261
|
steedosSchema = (0, __2.getSteedosSchema)();
|
|
255
262
|
obj = steedosSchema.getObject(objectName);
|
|
@@ -265,18 +272,18 @@ function getGraphqlActions(objectConfig) {
|
|
|
265
272
|
};
|
|
266
273
|
actions["".concat(consts_1.GRAPHQL_ACTION_PREFIX).concat(consts_1.EXPAND_SUFFIX)] = {
|
|
267
274
|
handler: function (ctx) {
|
|
268
|
-
return
|
|
269
|
-
var _a, id, objectName, steedosSchema, obj, selector, resolveInfo, fieldNames;
|
|
270
|
-
return
|
|
275
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
276
|
+
var _a, id, objectName, referenceToField, steedosSchema, obj, selector, resolveInfo, fieldNames;
|
|
277
|
+
return tslib_1.__generator(this, function (_b) {
|
|
271
278
|
switch (_b.label) {
|
|
272
279
|
case 0:
|
|
273
|
-
_a = ctx.params, id = _a.id, objectName = _a.objectName;
|
|
280
|
+
_a = ctx.params, id = _a.id, objectName = _a.objectName, referenceToField = _a.referenceToField;
|
|
274
281
|
if (!id) {
|
|
275
282
|
return [2 /*return*/];
|
|
276
283
|
}
|
|
277
284
|
steedosSchema = (0, __2.getSteedosSchema)();
|
|
278
285
|
obj = steedosSchema.getObject(objectName);
|
|
279
|
-
selector = { filters: [["_id", "=", id]] };
|
|
286
|
+
selector = { filters: [[referenceToField || "_id", "=", id]] };
|
|
280
287
|
resolveInfo = ctx.meta.resolveInfo;
|
|
281
288
|
fieldNames = (0, getQueryFields_1.getQueryFields)(resolveInfo);
|
|
282
289
|
if (!_.isEmpty(fieldNames)) {
|
|
@@ -300,9 +307,9 @@ function getGraphqlActions(objectConfig) {
|
|
|
300
307
|
].includes(objName)) {
|
|
301
308
|
actions["".concat(consts_1.GRAPHQL_ACTION_PREFIX).concat(consts_1.RELATED_PREFIX, "_enabled")] = {
|
|
302
309
|
handler: function (ctx) {
|
|
303
|
-
return
|
|
310
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
304
311
|
var params, _parentId, _related_params, objectName, parentObjectName, foreignKey, userSession, steedosSchema, object, filters;
|
|
305
|
-
return
|
|
312
|
+
return tslib_1.__generator(this, function (_a) {
|
|
306
313
|
switch (_a.label) {
|
|
307
314
|
case 0:
|
|
308
315
|
params = ctx.params;
|
|
@@ -330,9 +337,9 @@ function getGraphqlActions(objectConfig) {
|
|
|
330
337
|
}
|
|
331
338
|
actions["".concat(consts_1.GRAPHQL_ACTION_PREFIX).concat(consts_1.RELATED_PREFIX)] = {
|
|
332
339
|
handler: function (ctx) {
|
|
333
|
-
return
|
|
340
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
334
341
|
var params, _parentId, _related_params, objectName, parentObjectName, fieldName, referenceToParentFieldName, userSession, steedosSchema, object, parentObj, parent, filters, _idValue, resolveInfo, fieldNames;
|
|
335
|
-
return
|
|
342
|
+
return tslib_1.__generator(this, function (_a) {
|
|
336
343
|
switch (_a.label) {
|
|
337
344
|
case 0:
|
|
338
345
|
params = ctx.params;
|
|
@@ -369,9 +376,9 @@ function getGraphqlActions(objectConfig) {
|
|
|
369
376
|
};
|
|
370
377
|
actions["".concat(consts_1.GRAPHQL_ACTION_PREFIX).concat(consts_1.DISPLAY_PREFIX)] = {
|
|
371
378
|
handler: function (ctx) {
|
|
372
|
-
return
|
|
379
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
373
380
|
var params, _id, objectName, fields, userSession, steedosSchema, obj, selector, resolveInfo, fieldNames, doc, result;
|
|
374
|
-
return
|
|
381
|
+
return tslib_1.__generator(this, function (_a) {
|
|
375
382
|
switch (_a.label) {
|
|
376
383
|
case 0:
|
|
377
384
|
params = ctx.params;
|
|
@@ -441,9 +448,9 @@ function getTranslatedFieldConfig(translatedObject, name) {
|
|
|
441
448
|
return translatedObject.fields[name.replace(/__label$/, "")];
|
|
442
449
|
}
|
|
443
450
|
function translateToDisplay(objectName, doc, userSession) {
|
|
444
|
-
return
|
|
451
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
445
452
|
var lng, steedosSchema, object, objConfig, fields, displayObj, utcOffset, _loop_1, _a, _b, _i, name;
|
|
446
|
-
return
|
|
453
|
+
return tslib_1.__generator(this, function (_c) {
|
|
447
454
|
switch (_c.label) {
|
|
448
455
|
case 0:
|
|
449
456
|
lng = (0, __2.getUserLocale)(userSession);
|
|
@@ -458,29 +465,29 @@ function translateToDisplay(objectName, doc, userSession) {
|
|
|
458
465
|
displayObj = { _id: doc._id };
|
|
459
466
|
utcOffset = userSession.utcOffset;
|
|
460
467
|
_loop_1 = function (name) {
|
|
461
|
-
var field, fType, label, map_1, value, translatedField, translatedFieldOptions, labels_1, i, lookupLabel, refTo, refValue, refObj, nameFieldKey, refRecords, refRecord, masterDetailLabel, refTo, refValue, refObj, nameFieldKey, refRecords, refRecord;
|
|
462
|
-
return
|
|
468
|
+
var field, fType, label, map_1, value, translatedField, translatedFieldOptions, labels_1, i, lookupLabel, refTo, refValue, refObj, nameFieldKey, refRecords, refRecord, masterDetailLabel, refTo, refValue, refObj, nameFieldKey, refRecords, refRecord, fileLabel, value, fileObjectName, fileObject, fileNameFieldKey, fileRecords, fileRecord;
|
|
469
|
+
return tslib_1.__generator(this, function (_d) {
|
|
463
470
|
switch (_d.label) {
|
|
464
471
|
case 0:
|
|
465
|
-
if (!Object.prototype.hasOwnProperty.call(fields, name)) return [3 /*break*/,
|
|
472
|
+
if (!Object.prototype.hasOwnProperty.call(fields, name)) return [3 /*break*/, 38];
|
|
466
473
|
field = fields[name];
|
|
467
|
-
if (!_.has(doc, name)) return [3 /*break*/,
|
|
474
|
+
if (!_.has(doc, name)) return [3 /*break*/, 37];
|
|
468
475
|
fType = field.type;
|
|
469
476
|
if (!(fType == "text")) return [3 /*break*/, 1];
|
|
470
477
|
displayObj[name] = doc[name] || "";
|
|
471
|
-
return [3 /*break*/,
|
|
478
|
+
return [3 /*break*/, 36];
|
|
472
479
|
case 1:
|
|
473
480
|
if (!(fType == "textarea")) return [3 /*break*/, 2];
|
|
474
481
|
displayObj[name] = doc[name] || "";
|
|
475
|
-
return [3 /*break*/,
|
|
482
|
+
return [3 /*break*/, 36];
|
|
476
483
|
case 2:
|
|
477
484
|
if (!(fType == "html_text")) return [3 /*break*/, 3];
|
|
478
485
|
displayObj[name] = doc[name] || "";
|
|
479
|
-
return [3 /*break*/,
|
|
486
|
+
return [3 /*break*/, 36];
|
|
480
487
|
case 3:
|
|
481
488
|
if (!(fType == "html")) return [3 /*break*/, 4];
|
|
482
489
|
displayObj[name] = doc[name] || "";
|
|
483
|
-
return [3 /*break*/,
|
|
490
|
+
return [3 /*break*/, 36];
|
|
484
491
|
case 4:
|
|
485
492
|
if (!(fType == "select")) return [3 /*break*/, 5];
|
|
486
493
|
label = "";
|
|
@@ -502,7 +509,7 @@ function translateToDisplay(objectName, doc, userSession) {
|
|
|
502
509
|
label = map_1[value];
|
|
503
510
|
}
|
|
504
511
|
displayObj[name] = label;
|
|
505
|
-
return [3 /*break*/,
|
|
512
|
+
return [3 /*break*/, 36];
|
|
506
513
|
case 5:
|
|
507
514
|
if (!(fType == "boolean")) return [3 /*break*/, 6];
|
|
508
515
|
if (doc[name]) {
|
|
@@ -511,42 +518,48 @@ function translateToDisplay(objectName, doc, userSession) {
|
|
|
511
518
|
else {
|
|
512
519
|
displayObj[name] = "";
|
|
513
520
|
}
|
|
514
|
-
return [3 /*break*/,
|
|
521
|
+
return [3 /*break*/, 36];
|
|
515
522
|
case 6:
|
|
516
523
|
if (!(fType == "date")) return [3 /*break*/, 7];
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
.format("YYYY-MM-DD");
|
|
520
|
-
return [3 /*break*/,
|
|
524
|
+
// 注意日期类型存的是utc0点,不需要执行utcOffset
|
|
525
|
+
displayObj[name] = doc[name] ? moment.utc(doc[name])
|
|
526
|
+
.format("YYYY-MM-DD") : '';
|
|
527
|
+
return [3 /*break*/, 36];
|
|
521
528
|
case 7:
|
|
522
529
|
if (!(fType == "datetime")) return [3 /*break*/, 8];
|
|
523
|
-
displayObj[name] = moment(doc[name])
|
|
530
|
+
displayObj[name] = doc[name] ? moment(doc[name])
|
|
524
531
|
.utcOffset(utcOffset)
|
|
525
|
-
.format("YYYY-MM-DD
|
|
526
|
-
return [3 /*break*/,
|
|
532
|
+
.format("YYYY-MM-DD HH:mm") : '';
|
|
533
|
+
return [3 /*break*/, 36];
|
|
527
534
|
case 8:
|
|
528
|
-
if (!(fType == "
|
|
529
|
-
|
|
530
|
-
|
|
535
|
+
if (!(fType == "time")) return [3 /*break*/, 9];
|
|
536
|
+
// 注意时间类型走的是utc时间,不需要执行utcOffset
|
|
537
|
+
displayObj[name] = doc[name] ? moment.utc(doc[name])
|
|
538
|
+
.format("HH:mm") : '';
|
|
539
|
+
return [3 /*break*/, 36];
|
|
531
540
|
case 9:
|
|
532
|
-
if (!(fType == "
|
|
541
|
+
if (!(fType == "number")) return [3 /*break*/, 10];
|
|
533
542
|
displayObj[name] = doc[name] || "";
|
|
534
|
-
return [3 /*break*/,
|
|
543
|
+
return [3 /*break*/, 36];
|
|
535
544
|
case 10:
|
|
536
|
-
if (!(fType == "
|
|
537
|
-
displayObj[name] =
|
|
538
|
-
return [3 /*break*/,
|
|
545
|
+
if (!(fType == "currency")) return [3 /*break*/, 11];
|
|
546
|
+
displayObj[name] = doc[name] || "";
|
|
547
|
+
return [3 /*break*/, 36];
|
|
539
548
|
case 11:
|
|
540
|
-
if (!(fType == "
|
|
549
|
+
if (!(fType == "percent")) return [3 /*break*/, 12];
|
|
550
|
+
displayObj[name] = "".concat(doc[name] * 100, "%");
|
|
551
|
+
return [3 /*break*/, 36];
|
|
552
|
+
case 12:
|
|
553
|
+
if (!(fType == "password")) return [3 /*break*/, 13];
|
|
541
554
|
displayObj[name] = "";
|
|
542
555
|
if (_.isString(doc[name])) {
|
|
543
556
|
for (i = 0; i < doc[name].length; i++) {
|
|
544
557
|
displayObj[name] += "*";
|
|
545
558
|
}
|
|
546
559
|
}
|
|
547
|
-
return [3 /*break*/,
|
|
548
|
-
case
|
|
549
|
-
if (!(fType == "lookup" && _.isString(field.reference_to))) return [3 /*break*/,
|
|
560
|
+
return [3 /*break*/, 36];
|
|
561
|
+
case 13:
|
|
562
|
+
if (!(fType == "lookup" && _.isString(field.reference_to))) return [3 /*break*/, 19];
|
|
550
563
|
lookupLabel = "";
|
|
551
564
|
refTo = field.reference_to;
|
|
552
565
|
refValue = doc[name];
|
|
@@ -555,32 +568,32 @@ function translateToDisplay(objectName, doc, userSession) {
|
|
|
555
568
|
}
|
|
556
569
|
refObj = steedosSchema.getObject(refTo);
|
|
557
570
|
return [4 /*yield*/, refObj.getNameFieldKey()];
|
|
558
|
-
case
|
|
571
|
+
case 14:
|
|
559
572
|
nameFieldKey = _d.sent();
|
|
560
|
-
if (!field.multiple) return [3 /*break*/,
|
|
573
|
+
if (!field.multiple) return [3 /*break*/, 16];
|
|
561
574
|
return [4 /*yield*/, refObj.find({
|
|
562
575
|
filters: ["_id", "in", refValue],
|
|
563
576
|
fields: [nameFieldKey],
|
|
564
577
|
})];
|
|
565
|
-
case
|
|
578
|
+
case 15:
|
|
566
579
|
refRecords = _d.sent();
|
|
567
580
|
lookupLabel = _.pluck(refRecords, nameFieldKey).join(",");
|
|
568
|
-
return [3 /*break*/,
|
|
569
|
-
case
|
|
581
|
+
return [3 /*break*/, 18];
|
|
582
|
+
case 16: return [4 /*yield*/, refObj.find({
|
|
570
583
|
filters: ["_id", "=", refValue],
|
|
571
584
|
fields: [nameFieldKey],
|
|
572
585
|
})];
|
|
573
|
-
case
|
|
586
|
+
case 17:
|
|
574
587
|
refRecord = (_d.sent())[0];
|
|
575
588
|
if (refRecord) {
|
|
576
589
|
lookupLabel = refRecord[nameFieldKey];
|
|
577
590
|
}
|
|
578
|
-
_d.label =
|
|
579
|
-
case 17:
|
|
580
|
-
displayObj[name] = lookupLabel;
|
|
581
|
-
return [3 /*break*/, 25];
|
|
591
|
+
_d.label = 18;
|
|
582
592
|
case 18:
|
|
583
|
-
|
|
593
|
+
displayObj[name] = lookupLabel;
|
|
594
|
+
return [3 /*break*/, 36];
|
|
595
|
+
case 19:
|
|
596
|
+
if (!(fType == "master_detail" && _.isString(field.reference_to))) return [3 /*break*/, 25];
|
|
584
597
|
masterDetailLabel = "";
|
|
585
598
|
refTo = field.reference_to;
|
|
586
599
|
refValue = doc[name];
|
|
@@ -589,59 +602,94 @@ function translateToDisplay(objectName, doc, userSession) {
|
|
|
589
602
|
}
|
|
590
603
|
refObj = steedosSchema.getObject(refTo);
|
|
591
604
|
return [4 /*yield*/, refObj.getNameFieldKey()];
|
|
592
|
-
case
|
|
605
|
+
case 20:
|
|
593
606
|
nameFieldKey = _d.sent();
|
|
594
|
-
if (!field.multiple) return [3 /*break*/,
|
|
607
|
+
if (!field.multiple) return [3 /*break*/, 22];
|
|
595
608
|
return [4 /*yield*/, refObj.find({
|
|
596
609
|
filters: ["_id", "in", refValue],
|
|
597
610
|
fields: [nameFieldKey],
|
|
598
611
|
})];
|
|
599
|
-
case
|
|
612
|
+
case 21:
|
|
600
613
|
refRecords = _d.sent();
|
|
601
614
|
masterDetailLabel = _.pluck(refRecords, nameFieldKey).join(",");
|
|
602
|
-
return [3 /*break*/,
|
|
603
|
-
case
|
|
615
|
+
return [3 /*break*/, 24];
|
|
616
|
+
case 22: return [4 /*yield*/, refObj.find({
|
|
604
617
|
filters: ["_id", "=", refValue],
|
|
605
618
|
fields: [nameFieldKey],
|
|
606
619
|
})];
|
|
607
|
-
case
|
|
620
|
+
case 23:
|
|
608
621
|
refRecord = (_d.sent())[0];
|
|
609
622
|
if (refRecord) {
|
|
610
623
|
masterDetailLabel = refRecord[nameFieldKey];
|
|
611
624
|
}
|
|
612
|
-
_d.label =
|
|
613
|
-
case 23:
|
|
614
|
-
displayObj[name] = masterDetailLabel;
|
|
615
|
-
return [3 /*break*/, 25];
|
|
625
|
+
_d.label = 24;
|
|
616
626
|
case 24:
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
627
|
+
displayObj[name] = masterDetailLabel;
|
|
628
|
+
return [3 /*break*/, 36];
|
|
629
|
+
case 25:
|
|
630
|
+
if (!(fType == "autonumber")) return [3 /*break*/, 26];
|
|
631
|
+
displayObj[name] = doc[name] || "";
|
|
632
|
+
return [3 /*break*/, 36];
|
|
633
|
+
case 26:
|
|
634
|
+
if (!(fType == "url")) return [3 /*break*/, 27];
|
|
635
|
+
displayObj[name] = doc[name] || "";
|
|
636
|
+
return [3 /*break*/, 36];
|
|
637
|
+
case 27:
|
|
638
|
+
if (!(fType == "email")) return [3 /*break*/, 28];
|
|
639
|
+
displayObj[name] = doc[name] || "";
|
|
640
|
+
return [3 /*break*/, 36];
|
|
641
|
+
case 28:
|
|
642
|
+
if (!(fType == "formula")) return [3 /*break*/, 29];
|
|
643
|
+
displayObj[name] = doc[name] || "";
|
|
644
|
+
return [3 /*break*/, 36];
|
|
645
|
+
case 29:
|
|
646
|
+
if (!(fType == "summary")) return [3 /*break*/, 30];
|
|
647
|
+
displayObj[name] = doc[name] || "";
|
|
648
|
+
return [3 /*break*/, 36];
|
|
649
|
+
case 30:
|
|
650
|
+
if (!(fType == "image" || fType == "file")) return [3 /*break*/, 35];
|
|
651
|
+
fileLabel = "";
|
|
652
|
+
value = doc[name];
|
|
653
|
+
if (!value) {
|
|
654
|
+
return [2 /*return*/, "continue"];
|
|
634
655
|
}
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
656
|
+
fileObjectName = fType == "image" ? "cfs_images_filerecord" : "cfs_files_filerecord";
|
|
657
|
+
fileObject = steedosSchema.getObject(fileObjectName);
|
|
658
|
+
fileNameFieldKey = "original.name";
|
|
659
|
+
if (!field.multiple) return [3 /*break*/, 32];
|
|
660
|
+
return [4 /*yield*/, fileObject.find({
|
|
661
|
+
filters: ["_id", "in", value],
|
|
662
|
+
fields: [fileNameFieldKey],
|
|
663
|
+
})];
|
|
664
|
+
case 31:
|
|
665
|
+
fileRecords = _d.sent();
|
|
666
|
+
fileLabel = _.map(fileRecords, function (fileRecord) {
|
|
667
|
+
var _a;
|
|
668
|
+
return (_a = fileRecord.original) === null || _a === void 0 ? void 0 : _a.name;
|
|
669
|
+
}).join(",");
|
|
670
|
+
return [3 /*break*/, 34];
|
|
671
|
+
case 32: return [4 /*yield*/, fileObject.find({
|
|
672
|
+
filters: ["_id", "=", value],
|
|
673
|
+
fields: [fileNameFieldKey],
|
|
674
|
+
})];
|
|
675
|
+
case 33:
|
|
676
|
+
fileRecord = (_d.sent())[0];
|
|
677
|
+
if (fileRecord) {
|
|
678
|
+
fileLabel = fileRecord["original"]["name"];
|
|
638
679
|
}
|
|
639
|
-
_d.label =
|
|
640
|
-
case
|
|
641
|
-
|
|
680
|
+
_d.label = 34;
|
|
681
|
+
case 34:
|
|
682
|
+
displayObj[name] = fileLabel;
|
|
683
|
+
return [3 /*break*/, 36];
|
|
684
|
+
case 35:
|
|
685
|
+
console.error("Graphql Display: need to handle new field type ".concat(field.type, " for ").concat(objectName, "."));
|
|
686
|
+
displayObj[name] = doc[name] || "";
|
|
687
|
+
_d.label = 36;
|
|
688
|
+
case 36: return [3 /*break*/, 38];
|
|
689
|
+
case 37:
|
|
642
690
|
displayObj[name] = ""; // 如果值为空,均返回空字符串
|
|
643
|
-
_d.label =
|
|
644
|
-
case
|
|
691
|
+
_d.label = 38;
|
|
692
|
+
case 38: return [2 /*return*/];
|
|
645
693
|
}
|
|
646
694
|
});
|
|
647
695
|
};
|
|
@@ -685,7 +733,7 @@ function getLocalService(objectApiName) {
|
|
|
685
733
|
return steedosSchema.broker.getLocalService((0, __1.getObjectServiceName)(objectApiName));
|
|
686
734
|
}
|
|
687
735
|
exports.getLocalService = getLocalService;
|
|
688
|
-
|
|
689
|
-
|
|
736
|
+
tslib_1.__exportStar(require("./getQueryFields"), exports);
|
|
737
|
+
tslib_1.__exportStar(require("./consts"), exports);
|
|
690
738
|
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7;
|
|
691
739
|
//# sourceMappingURL=index.js.map
|