@steedos/objectql 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/lib/driver/metadata.js +3 -1
- package/lib/driver/metadata.js.map +1 -1
- package/lib/driver/mongo.js +2 -2
- package/lib/driver/mongo.js.map +1 -1
- package/lib/formula/core.js +3 -3
- package/lib/formula/core.js.map +1 -1
- package/lib/formula/index.js +3 -2
- package/lib/formula/index.js.map +1 -1
- package/lib/index.d.ts +1 -10
- package/lib/index.js +1 -10
- package/lib/index.js.map +1 -1
- package/lib/services/datasourceServiceFactory.js +29 -5
- package/lib/services/datasourceServiceFactory.js.map +1 -1
- package/lib/summary/core.js +2 -1
- package/lib/summary/core.js.map +1 -1
- package/lib/summary/index.js +3 -9
- package/lib/summary/index.js.map +1 -1
- package/lib/types/app.d.ts +1 -1
- package/lib/types/app.js +7 -8
- package/lib/types/app.js.map +1 -1
- package/lib/types/dashboard.js +5 -6
- package/lib/types/dashboard.js.map +1 -1
- package/lib/types/datasource.js +6 -5
- package/lib/types/datasource.js.map +1 -1
- package/lib/types/field_permission.js +2 -2
- package/lib/types/field_permission.js.map +1 -1
- package/lib/types/index.d.ts +0 -2
- package/lib/types/index.js +0 -2
- package/lib/types/index.js.map +1 -1
- package/lib/types/object.js +21 -7
- package/lib/types/object.js.map +1 -1
- package/lib/types/report.js +5 -5
- package/lib/types/report.js.map +1 -1
- package/lib/types/restrictionRule.js +2 -2
- package/lib/types/restrictionRule.js.map +1 -1
- package/lib/types/schema.d.ts +1 -2
- package/lib/types/schema.js +3 -3
- package/lib/types/schema.js.map +1 -1
- package/lib/types/shareRule.js +2 -2
- package/lib/types/shareRule.js.map +1 -1
- package/lib/util/index.d.ts +0 -32
- package/lib/util/index.js +1 -586
- package/lib/util/index.js.map +1 -1
- package/lib/util/permission_shares.js +2 -2
- package/lib/util/permission_shares.js.map +1 -1
- package/lib/util/suffix.d.ts +2 -2
- package/lib/util/transform.js +1 -1
- package/lib/util/transform.js.map +1 -1
- package/package.json +15 -13
- package/lib/dynamic-load/actions.d.ts +0 -5
- package/lib/dynamic-load/actions.js +0 -217
- package/lib/dynamic-load/actions.js.map +0 -1
- package/lib/dynamic-load/approval_process.d.ts +0 -5
- package/lib/dynamic-load/approval_process.js +0 -79
- package/lib/dynamic-load/approval_process.js.map +0 -1
- package/lib/dynamic-load/button.d.ts +0 -8
- package/lib/dynamic-load/button.js +0 -116
- package/lib/dynamic-load/button.js.map +0 -1
- package/lib/dynamic-load/chart.d.ts +0 -1
- package/lib/dynamic-load/chart.js +0 -37
- package/lib/dynamic-load/chart.js.map +0 -1
- package/lib/dynamic-load/client_script.d.ts +0 -3
- package/lib/dynamic-load/client_script.js +0 -42
- package/lib/dynamic-load/client_script.js.map +0 -1
- package/lib/dynamic-load/field.d.ts +0 -6
- package/lib/dynamic-load/field.js +0 -117
- package/lib/dynamic-load/field.js.map +0 -1
- package/lib/dynamic-load/flow_role.d.ts +0 -4
- package/lib/dynamic-load/flow_role.js +0 -47
- package/lib/dynamic-load/flow_role.js.map +0 -1
- package/lib/dynamic-load/index.d.ts +0 -21
- package/lib/dynamic-load/index.js +0 -25
- package/lib/dynamic-load/index.js.map +0 -1
- package/lib/dynamic-load/layout.d.ts +0 -5
- package/lib/dynamic-load/layout.js +0 -103
- package/lib/dynamic-load/layout.js.map +0 -1
- package/lib/dynamic-load/listview.d.ts +0 -4
- package/lib/dynamic-load/listview.js +0 -98
- package/lib/dynamic-load/listview.js.map +0 -1
- package/lib/dynamic-load/method.d.ts +0 -4
- package/lib/dynamic-load/method.js +0 -57
- package/lib/dynamic-load/method.js.map +0 -1
- package/lib/dynamic-load/object_translations.d.ts +0 -2
- package/lib/dynamic-load/object_translations.js +0 -66
- package/lib/dynamic-load/object_translations.js.map +0 -1
- package/lib/dynamic-load/originalObject.d.ts +0 -1
- package/lib/dynamic-load/originalObject.js +0 -11
- package/lib/dynamic-load/originalObject.js.map +0 -1
- package/lib/dynamic-load/package.d.ts +0 -1
- package/lib/dynamic-load/package.js +0 -520
- package/lib/dynamic-load/package.js.map +0 -1
- package/lib/dynamic-load/page.d.ts +0 -1
- package/lib/dynamic-load/page.js +0 -37
- package/lib/dynamic-load/page.js.map +0 -1
- package/lib/dynamic-load/permission.d.ts +0 -5
- package/lib/dynamic-load/permission.js +0 -135
- package/lib/dynamic-load/permission.js.map +0 -1
- package/lib/dynamic-load/permissionset.d.ts +0 -5
- package/lib/dynamic-load/permissionset.js +0 -182
- package/lib/dynamic-load/permissionset.js.map +0 -1
- package/lib/dynamic-load/preload_data.d.ts +0 -9
- package/lib/dynamic-load/preload_data.js +0 -339
- package/lib/dynamic-load/preload_data.js.map +0 -1
- package/lib/dynamic-load/profile.d.ts +0 -5
- package/lib/dynamic-load/profile.js +0 -190
- package/lib/dynamic-load/profile.js.map +0 -1
- package/lib/dynamic-load/query.d.ts +0 -1
- package/lib/dynamic-load/query.js +0 -37
- package/lib/dynamic-load/query.js.map +0 -1
- package/lib/dynamic-load/restrictionRules.d.ts +0 -1
- package/lib/dynamic-load/restrictionRules.js +0 -37
- package/lib/dynamic-load/restrictionRules.js.map +0 -1
- package/lib/dynamic-load/role.d.ts +0 -4
- package/lib/dynamic-load/role.js +0 -47
- package/lib/dynamic-load/role.js.map +0 -1
- package/lib/dynamic-load/shareRules.d.ts +0 -1
- package/lib/dynamic-load/shareRules.js +0 -37
- package/lib/dynamic-load/shareRules.js.map +0 -1
- package/lib/dynamic-load/tab.d.ts +0 -1
- package/lib/dynamic-load/tab.js +0 -41
- package/lib/dynamic-load/tab.js.map +0 -1
- package/lib/dynamic-load/tabs.d.ts +0 -2
- package/lib/dynamic-load/tabs.js +0 -39
- package/lib/dynamic-load/tabs.js.map +0 -1
- package/lib/dynamic-load/translations.d.ts +0 -2
- package/lib/dynamic-load/translations.js +0 -104
- package/lib/dynamic-load/translations.js.map +0 -1
- package/lib/dynamic-load/trigger.d.ts +0 -7
- package/lib/dynamic-load/trigger.js +0 -219
- package/lib/dynamic-load/trigger.js.map +0 -1
- package/lib/dynamic-load/validation_rule.d.ts +0 -6
- package/lib/dynamic-load/validation_rule.js +0 -67
- package/lib/dynamic-load/validation_rule.js.map +0 -1
- package/lib/dynamic-load/workflow.d.ts +0 -17
- package/lib/dynamic-load/workflow.js +0 -182
- package/lib/dynamic-load/workflow.js.map +0 -1
- package/lib/metadata-register/_base.d.ts +0 -12
- package/lib/metadata-register/_base.js +0 -139
- package/lib/metadata-register/_base.js.map +0 -1
- package/lib/metadata-register/app.d.ts +0 -4
- package/lib/metadata-register/app.js +0 -73
- package/lib/metadata-register/app.js.map +0 -1
- package/lib/metadata-register/chart.d.ts +0 -6
- package/lib/metadata-register/chart.js +0 -15
- package/lib/metadata-register/chart.js.map +0 -1
- package/lib/metadata-register/index.d.ts +0 -35
- package/lib/metadata-register/index.js +0 -266
- package/lib/metadata-register/index.js.map +0 -1
- package/lib/metadata-register/layout.d.ts +0 -5
- package/lib/metadata-register/layout.js +0 -92
- package/lib/metadata-register/layout.js.map +0 -1
- package/lib/metadata-register/object.d.ts +0 -5
- package/lib/metadata-register/object.js +0 -113
- package/lib/metadata-register/object.js.map +0 -1
- package/lib/metadata-register/page.d.ts +0 -6
- package/lib/metadata-register/page.js +0 -15
- package/lib/metadata-register/page.js.map +0 -1
- package/lib/metadata-register/permissionFields.d.ts +0 -7
- package/lib/metadata-register/permissionFields.js +0 -18
- package/lib/metadata-register/permissionFields.js.map +0 -1
- package/lib/metadata-register/permissionset.d.ts +0 -3
- package/lib/metadata-register/permissionset.js +0 -59
- package/lib/metadata-register/permissionset.js.map +0 -1
- package/lib/metadata-register/process.d.ts +0 -6
- package/lib/metadata-register/process.js +0 -15
- package/lib/metadata-register/process.js.map +0 -1
- package/lib/metadata-register/processTrigger.d.ts +0 -7
- package/lib/metadata-register/processTrigger.js +0 -18
- package/lib/metadata-register/processTrigger.js.map +0 -1
- package/lib/metadata-register/profile.d.ts +0 -3
- package/lib/metadata-register/profile.js +0 -59
- package/lib/metadata-register/profile.js.map +0 -1
- package/lib/metadata-register/query.d.ts +0 -6
- package/lib/metadata-register/query.js +0 -15
- package/lib/metadata-register/query.js.map +0 -1
- package/lib/metadata-register/restrictionRules.d.ts +0 -7
- package/lib/metadata-register/restrictionRules.js +0 -18
- package/lib/metadata-register/restrictionRules.js.map +0 -1
- package/lib/metadata-register/shareRules.d.ts +0 -7
- package/lib/metadata-register/shareRules.js +0 -18
- package/lib/metadata-register/shareRules.js.map +0 -1
- package/lib/metadata-register/tab.d.ts +0 -6
- package/lib/metadata-register/tab.js +0 -15
- package/lib/metadata-register/tab.js.map +0 -1
- package/lib/metadata-register/tabs.d.ts +0 -5
- package/lib/metadata-register/tabs.js +0 -92
- package/lib/metadata-register/tabs.js.map +0 -1
- package/lib/types/config.d.ts +0 -11
- package/lib/types/config.js +0 -170
- package/lib/types/config.js.map +0 -1
- package/lib/types/object_dynamic_load.d.ts +0 -34
- package/lib/types/object_dynamic_load.js +0 -479
- package/lib/types/object_dynamic_load.js.map +0 -1
|
@@ -1,479 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.addObjectDataFiles = exports.setObjectData = exports.getObjectData = exports.getAllObjectData = exports.addObjectPermission = exports.addObjectAction = exports.addObjectMethod = exports.getRouterConfigs = exports.addRouterConfig = exports.loadStandardBaseObjects = exports.loadDbMetadatas = exports.loadStandardMetadata = exports.removeObjectListenerConfig = exports.removeObjectConfig = exports.addObjectConfig = exports.getClientScriptsFiles = exports.addClientScriptFiles = exports.getRouters = exports.addRouterFiles = exports.getObjectsI18n = exports.addObjectI18nFiles = exports.getServerScripts = exports.addServerScriptFiles = exports.addObjectConfigFiles = exports.getObjectConfig = exports.getObjectConfigs = exports.getOriginalObjectConfigs = exports.getOriginalObjectConfig = exports.addOriginalObjectConfigs = exports.SQL_BASE_OBJECT = exports.MONGO_BASE_OBJECT = exports.SYSTEM_DATASOURCE = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var _ = require("lodash");
|
|
6
|
-
var path = require("path");
|
|
7
|
-
var _1 = require(".");
|
|
8
|
-
var dynamic_load_1 = require("../dynamic-load");
|
|
9
|
-
var __1 = require("..");
|
|
10
|
-
var schema_1 = require("./schema");
|
|
11
|
-
var metadata_core_1 = require("@steedos/metadata-core");
|
|
12
|
-
var util = require('../util');
|
|
13
|
-
var clone = require('clone');
|
|
14
|
-
exports.SYSTEM_DATASOURCE = '__SYSTEM_DATASOURCE';
|
|
15
|
-
exports.MONGO_BASE_OBJECT = '__MONGO_BASE_OBJECT';
|
|
16
|
-
exports.SQL_BASE_OBJECT = '__SQL_BASE_OBJECT';
|
|
17
|
-
var _original_objectConfigs = [];
|
|
18
|
-
var _objectConfigs = [];
|
|
19
|
-
var _routerConfigs = [];
|
|
20
|
-
var _clientScripts = [];
|
|
21
|
-
var _serverScripts = [];
|
|
22
|
-
var _objectsI18n = [];
|
|
23
|
-
var _routers = [];
|
|
24
|
-
var _objectsData = {};
|
|
25
|
-
var delayLoadExtendObjectConfigQueue = {};
|
|
26
|
-
var standardObjectsLoaded = false;
|
|
27
|
-
var dbMetadataLoaing = false;
|
|
28
|
-
var addDelayLoadExtendObjectConfig = function (extend, config) {
|
|
29
|
-
if (!delayLoadExtendObjectConfigQueue[extend]) {
|
|
30
|
-
delayLoadExtendObjectConfigQueue[extend] = [];
|
|
31
|
-
}
|
|
32
|
-
delayLoadExtendObjectConfigQueue[extend].push(config);
|
|
33
|
-
};
|
|
34
|
-
var addOriginalObjectConfigs = function (objectName, datasource, config) {
|
|
35
|
-
if (objectName === exports.MONGO_BASE_OBJECT || objectName === exports.SQL_BASE_OBJECT) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
config.datasource = datasource;
|
|
39
|
-
_.remove(_original_objectConfigs, { name: objectName, datasource: datasource });
|
|
40
|
-
_original_objectConfigs.push(config);
|
|
41
|
-
};
|
|
42
|
-
exports.addOriginalObjectConfigs = addOriginalObjectConfigs;
|
|
43
|
-
var extendOriginalObjectConfig = function (objectName, datasource, objectConfig) {
|
|
44
|
-
if (objectName === exports.MONGO_BASE_OBJECT || objectName === exports.SQL_BASE_OBJECT) {
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
var parentOriginalObjectConfig = (0, exports.getOriginalObjectConfig)(objectName);
|
|
48
|
-
var originalObjectConfig = util.extend({
|
|
49
|
-
name: objectName,
|
|
50
|
-
fields: {}
|
|
51
|
-
}, clone(parentOriginalObjectConfig), objectConfig);
|
|
52
|
-
(0, exports.addOriginalObjectConfigs)(objectName, datasource, clone(originalObjectConfig));
|
|
53
|
-
};
|
|
54
|
-
var perfectObjectConfig = function (objectConfig) {
|
|
55
|
-
_.each(objectConfig.fields, function (field, key) {
|
|
56
|
-
if (!field.name) {
|
|
57
|
-
field.name = key;
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
};
|
|
61
|
-
var getOriginalObjectConfig = function (object_name) {
|
|
62
|
-
return _.find(_original_objectConfigs, { name: object_name });
|
|
63
|
-
};
|
|
64
|
-
exports.getOriginalObjectConfig = getOriginalObjectConfig;
|
|
65
|
-
var getOriginalObjectConfigs = function (datasource) {
|
|
66
|
-
if (datasource) {
|
|
67
|
-
return _.filter(_original_objectConfigs, { datasource: datasource });
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
return _original_objectConfigs;
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
exports.getOriginalObjectConfigs = getOriginalObjectConfigs;
|
|
74
|
-
var getObjectConfigs = function (datasource) {
|
|
75
|
-
if (datasource) {
|
|
76
|
-
return _.filter(_objectConfigs, { datasource: datasource });
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
return _objectConfigs;
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
|
-
exports.getObjectConfigs = getObjectConfigs;
|
|
83
|
-
var getObjectConfig = function (object_name) {
|
|
84
|
-
return _.find(_objectConfigs, { name: object_name });
|
|
85
|
-
};
|
|
86
|
-
exports.getObjectConfig = getObjectConfig;
|
|
87
|
-
var addObjectConfigFiles = function (filePath, datasource, serviceName) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
88
|
-
return tslib_1.__generator(this, function (_a) {
|
|
89
|
-
switch (_a.label) {
|
|
90
|
-
case 0:
|
|
91
|
-
if (!path.isAbsolute(filePath)) {
|
|
92
|
-
throw new Error("".concat(filePath, " must be an absolute path"));
|
|
93
|
-
}
|
|
94
|
-
if (!datasource)
|
|
95
|
-
datasource = 'meteor';
|
|
96
|
-
return [4, (0, dynamic_load_1.loadPackageMetadatas)(filePath, datasource, serviceName)];
|
|
97
|
-
case 1:
|
|
98
|
-
_a.sent();
|
|
99
|
-
return [4, (0, dynamic_load_1.loadObjectLayouts)(filePath, serviceName)];
|
|
100
|
-
case 2:
|
|
101
|
-
_a.sent();
|
|
102
|
-
return [4, (0, dynamic_load_1.loadSourceProfiles)(filePath, serviceName)];
|
|
103
|
-
case 3:
|
|
104
|
-
_a.sent();
|
|
105
|
-
return [4, (0, dynamic_load_1.loadSourcePermissionset)(filePath, serviceName)];
|
|
106
|
-
case 4:
|
|
107
|
-
_a.sent();
|
|
108
|
-
(0, dynamic_load_1.loadObjectValidationRules)(filePath, serviceName);
|
|
109
|
-
(0, dynamic_load_1.loadSourceRoles)(filePath);
|
|
110
|
-
(0, dynamic_load_1.loadSourceFlowRoles)(filePath);
|
|
111
|
-
(0, dynamic_load_1.loadSourceApprovalProcesses)(filePath);
|
|
112
|
-
(0, dynamic_load_1.loadSourceWorkflows)(filePath);
|
|
113
|
-
return [2];
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
}); };
|
|
117
|
-
exports.addObjectConfigFiles = addObjectConfigFiles;
|
|
118
|
-
var addServerScriptFiles = function (filePath) {
|
|
119
|
-
var filePatten = [
|
|
120
|
-
path.join(filePath, "*.object.js"),
|
|
121
|
-
"!" + path.join(filePath, "node_modules"),
|
|
122
|
-
];
|
|
123
|
-
var matchedPaths = (0, metadata_core_1.syncMatchFiles)(filePatten);
|
|
124
|
-
_.each(matchedPaths, function (matchedPath) {
|
|
125
|
-
_serverScripts.push(matchedPath);
|
|
126
|
-
});
|
|
127
|
-
};
|
|
128
|
-
exports.addServerScriptFiles = addServerScriptFiles;
|
|
129
|
-
var getServerScripts = function () {
|
|
130
|
-
return _serverScripts;
|
|
131
|
-
};
|
|
132
|
-
exports.getServerScripts = getServerScripts;
|
|
133
|
-
var addObjectI18nFiles = function (filePath) {
|
|
134
|
-
if (!path.isAbsolute(filePath)) {
|
|
135
|
-
throw new Error("".concat(filePath, " must be an absolute path"));
|
|
136
|
-
}
|
|
137
|
-
var i18nData = util.loadI18n(filePath);
|
|
138
|
-
i18nData.forEach(function (element) {
|
|
139
|
-
_objectsI18n.push(element);
|
|
140
|
-
});
|
|
141
|
-
};
|
|
142
|
-
exports.addObjectI18nFiles = addObjectI18nFiles;
|
|
143
|
-
var getObjectsI18n = function () {
|
|
144
|
-
return _objectsI18n;
|
|
145
|
-
};
|
|
146
|
-
exports.getObjectsI18n = getObjectsI18n;
|
|
147
|
-
var addRouterFiles = function (filePath) {
|
|
148
|
-
if (!path.isAbsolute(filePath)) {
|
|
149
|
-
throw new Error("".concat(filePath, " must be an absolute path"));
|
|
150
|
-
}
|
|
151
|
-
var routersData = util.loadRouters(filePath);
|
|
152
|
-
routersData.forEach(function (element) {
|
|
153
|
-
_routers.push(element);
|
|
154
|
-
});
|
|
155
|
-
};
|
|
156
|
-
exports.addRouterFiles = addRouterFiles;
|
|
157
|
-
var getRouters = function () {
|
|
158
|
-
return _routers;
|
|
159
|
-
};
|
|
160
|
-
exports.getRouters = getRouters;
|
|
161
|
-
var addClientScriptFiles = function (filePath) {
|
|
162
|
-
var filePatten = [
|
|
163
|
-
path.join(filePath, "*.client.js"),
|
|
164
|
-
"!" + path.join(filePath, "node_modules"),
|
|
165
|
-
];
|
|
166
|
-
var matchedPaths = (0, metadata_core_1.syncMatchFiles)(filePatten);
|
|
167
|
-
matchedPaths = _.sortBy(matchedPaths);
|
|
168
|
-
_.each(matchedPaths, function (matchedPath) {
|
|
169
|
-
_clientScripts.push(matchedPath);
|
|
170
|
-
});
|
|
171
|
-
};
|
|
172
|
-
exports.addClientScriptFiles = addClientScriptFiles;
|
|
173
|
-
var getClientScriptsFiles = function () {
|
|
174
|
-
return _.uniq(_clientScripts);
|
|
175
|
-
};
|
|
176
|
-
exports.getClientScriptsFiles = getClientScriptsFiles;
|
|
177
|
-
var addObjectConfig = function (objectConfig, datasource, serviceName) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
178
|
-
var object_name, config, parentObjectConfig, baseObjectConfig, _baseObjectConfig, coreObjectConfig, _coreObjectConfig, delayLoadQueue, _a, _b, _i, index, delayLoadConfig;
|
|
179
|
-
return tslib_1.__generator(this, function (_c) {
|
|
180
|
-
switch (_c.label) {
|
|
181
|
-
case 0:
|
|
182
|
-
object_name = objectConfig.name;
|
|
183
|
-
if (!(serviceName && (0, schema_1.getSteedosSchema)().metadataRegister)) return [3, 2];
|
|
184
|
-
if (datasource) {
|
|
185
|
-
objectConfig.datasource = datasource;
|
|
186
|
-
}
|
|
187
|
-
if (!objectConfig.extend) {
|
|
188
|
-
objectConfig.isMain = true;
|
|
189
|
-
}
|
|
190
|
-
return [4, (0, schema_1.getSteedosSchema)().metadataRegister.addObjectConfig(serviceName, objectConfig)];
|
|
191
|
-
case 1:
|
|
192
|
-
_c.sent();
|
|
193
|
-
_c.label = 2;
|
|
194
|
-
case 2:
|
|
195
|
-
config = {
|
|
196
|
-
name: object_name,
|
|
197
|
-
fields: {}
|
|
198
|
-
};
|
|
199
|
-
if (object_name === exports.MONGO_BASE_OBJECT || object_name === exports.SQL_BASE_OBJECT) {
|
|
200
|
-
config = clone(objectConfig);
|
|
201
|
-
}
|
|
202
|
-
else if (objectConfig.extend) {
|
|
203
|
-
object_name = objectConfig.extend;
|
|
204
|
-
parentObjectConfig = (0, exports.getObjectConfig)(object_name);
|
|
205
|
-
if (_.isEmpty(parentObjectConfig)) {
|
|
206
|
-
return [2, addDelayLoadExtendObjectConfig(objectConfig.extend, objectConfig)];
|
|
207
|
-
throw new Error("Object extend failed, object not exist: ".concat(objectConfig.extend));
|
|
208
|
-
}
|
|
209
|
-
config = util.extend(config, clone(parentObjectConfig), clone(objectConfig));
|
|
210
|
-
config.name = object_name;
|
|
211
|
-
delete config.extend;
|
|
212
|
-
datasource = parentObjectConfig.datasource;
|
|
213
|
-
extendOriginalObjectConfig(object_name, datasource, clone(objectConfig));
|
|
214
|
-
}
|
|
215
|
-
else {
|
|
216
|
-
(0, exports.addOriginalObjectConfigs)(object_name, datasource, clone(objectConfig));
|
|
217
|
-
if (datasource === 'default' || datasource === 'meteor') {
|
|
218
|
-
baseObjectConfig = (0, exports.getObjectConfig)(exports.MONGO_BASE_OBJECT);
|
|
219
|
-
config.fields = _.clone(objectConfig.fields);
|
|
220
|
-
_baseObjectConfig = clone(baseObjectConfig);
|
|
221
|
-
delete _baseObjectConfig.hidden;
|
|
222
|
-
if (datasource === 'meteor') {
|
|
223
|
-
_.each(_baseObjectConfig.listeners, function (license) {
|
|
224
|
-
var triggers = (0, __1.transformListenersToTriggers)(config, license);
|
|
225
|
-
util.extend(config, { triggers: triggers, _baseTriggers: triggers });
|
|
226
|
-
});
|
|
227
|
-
}
|
|
228
|
-
config = util.extend(config, _baseObjectConfig, clone(objectConfig));
|
|
229
|
-
}
|
|
230
|
-
else {
|
|
231
|
-
coreObjectConfig = (0, exports.getObjectConfig)(exports.SQL_BASE_OBJECT);
|
|
232
|
-
config.fields = _.clone(objectConfig.fields);
|
|
233
|
-
_coreObjectConfig = clone(coreObjectConfig);
|
|
234
|
-
delete _coreObjectConfig.hidden;
|
|
235
|
-
config = util.extend(config, _coreObjectConfig, clone(objectConfig));
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
config.datasource = datasource;
|
|
239
|
-
_.remove(_objectConfigs, { name: object_name, datasource: datasource });
|
|
240
|
-
delete config.__filename;
|
|
241
|
-
perfectObjectConfig(config);
|
|
242
|
-
_objectConfigs.push(config);
|
|
243
|
-
delayLoadQueue = clone(delayLoadExtendObjectConfigQueue[object_name]);
|
|
244
|
-
if (!(delayLoadQueue && delayLoadQueue.length > 0)) return [3, 6];
|
|
245
|
-
delayLoadExtendObjectConfigQueue[object_name] = [];
|
|
246
|
-
_a = [];
|
|
247
|
-
for (_b in delayLoadQueue)
|
|
248
|
-
_a.push(_b);
|
|
249
|
-
_i = 0;
|
|
250
|
-
_c.label = 3;
|
|
251
|
-
case 3:
|
|
252
|
-
if (!(_i < _a.length)) return [3, 6];
|
|
253
|
-
index = _a[_i];
|
|
254
|
-
delayLoadConfig = delayLoadQueue[index];
|
|
255
|
-
return [4, (0, exports.addObjectConfig)(delayLoadConfig, delayLoadConfig.datasource, null)];
|
|
256
|
-
case 4:
|
|
257
|
-
_c.sent();
|
|
258
|
-
_c.label = 5;
|
|
259
|
-
case 5:
|
|
260
|
-
_i++;
|
|
261
|
-
return [3, 3];
|
|
262
|
-
case 6: return [2];
|
|
263
|
-
}
|
|
264
|
-
});
|
|
265
|
-
}); };
|
|
266
|
-
exports.addObjectConfig = addObjectConfig;
|
|
267
|
-
var removeObjectConfig = function (object_name, datasource) {
|
|
268
|
-
_.remove(_objectConfigs, { name: object_name, datasource: datasource });
|
|
269
|
-
_.remove(_original_objectConfigs, { name: object_name, datasource: datasource });
|
|
270
|
-
};
|
|
271
|
-
exports.removeObjectConfig = removeObjectConfig;
|
|
272
|
-
var removeObjectListenerConfig = function (_id, listenTo, when) {
|
|
273
|
-
if (!_id) {
|
|
274
|
-
throw new Error('[config._id] Can not be empty. can not remove object listener.');
|
|
275
|
-
}
|
|
276
|
-
if (!listenTo) {
|
|
277
|
-
throw new Error('missing attribute listenTo');
|
|
278
|
-
}
|
|
279
|
-
if (!_.isString(listenTo)) {
|
|
280
|
-
throw new Error('listenTo must be a string');
|
|
281
|
-
}
|
|
282
|
-
var object_name = '';
|
|
283
|
-
if (_.isString(listenTo)) {
|
|
284
|
-
object_name = listenTo;
|
|
285
|
-
}
|
|
286
|
-
var object = (0, exports.getObjectConfig)(object_name);
|
|
287
|
-
if (object) {
|
|
288
|
-
if (object.listeners) {
|
|
289
|
-
delete object.listeners[_id];
|
|
290
|
-
}
|
|
291
|
-
if (object.triggers) {
|
|
292
|
-
delete object.triggers["".concat(_id, "_").concat(when)];
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
else {
|
|
296
|
-
throw new Error("Error remove listener, object not found: ".concat(object_name));
|
|
297
|
-
}
|
|
298
|
-
};
|
|
299
|
-
exports.removeObjectListenerConfig = removeObjectListenerConfig;
|
|
300
|
-
var loadStandardMetadata = function (serviceName, datasourceApiName) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
301
|
-
return tslib_1.__generator(this, function (_a) {
|
|
302
|
-
switch (_a.label) {
|
|
303
|
-
case 0: return [4, (0, exports.loadStandardBaseObjects)(serviceName)];
|
|
304
|
-
case 1:
|
|
305
|
-
_a.sent();
|
|
306
|
-
if (!(dbMetadataLoaing != true)) return [3, 5];
|
|
307
|
-
return [4, (0, dynamic_load_1.loadStandardProfiles)(serviceName)];
|
|
308
|
-
case 2:
|
|
309
|
-
_a.sent();
|
|
310
|
-
return [4, (0, dynamic_load_1.loadStandardPermissionsets)(serviceName)];
|
|
311
|
-
case 3:
|
|
312
|
-
_a.sent();
|
|
313
|
-
return [4, (0, exports.loadDbMetadatas)(datasourceApiName)];
|
|
314
|
-
case 4:
|
|
315
|
-
_a.sent();
|
|
316
|
-
dbMetadataLoaing = true;
|
|
317
|
-
_a.label = 5;
|
|
318
|
-
case 5: return [2];
|
|
319
|
-
}
|
|
320
|
-
});
|
|
321
|
-
}); };
|
|
322
|
-
exports.loadStandardMetadata = loadStandardMetadata;
|
|
323
|
-
var loadDbMetadatas = function (datasourceApiName) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
324
|
-
var datasource;
|
|
325
|
-
return tslib_1.__generator(this, function (_a) {
|
|
326
|
-
switch (_a.label) {
|
|
327
|
-
case 0:
|
|
328
|
-
if (!(datasourceApiName === 'default' || datasourceApiName === 'meteor')) return [3, 11];
|
|
329
|
-
datasource = (0, _1.getDataSource)(datasourceApiName);
|
|
330
|
-
if (!(datasource && datasourceApiName === 'default')) return [3, 2];
|
|
331
|
-
return [4, datasource.initTypeORM()];
|
|
332
|
-
case 1:
|
|
333
|
-
_a.sent();
|
|
334
|
-
_a.label = 2;
|
|
335
|
-
case 2:
|
|
336
|
-
if (!datasource) return [3, 11];
|
|
337
|
-
return [4, (0, dynamic_load_1.preloadDBApps)(datasource)];
|
|
338
|
-
case 3:
|
|
339
|
-
_a.sent();
|
|
340
|
-
return [4, (0, dynamic_load_1.preloadDBTabs)(datasource)];
|
|
341
|
-
case 4:
|
|
342
|
-
_a.sent();
|
|
343
|
-
return [4, (0, dynamic_load_1.preloadDBObjectLayouts)(datasource)];
|
|
344
|
-
case 5:
|
|
345
|
-
_a.sent();
|
|
346
|
-
return [4, (0, dynamic_load_1.preloadDBObjectFields)(datasource)];
|
|
347
|
-
case 6:
|
|
348
|
-
_a.sent();
|
|
349
|
-
return [4, (0, dynamic_load_1.preloadDBObjectButtons)(datasource)];
|
|
350
|
-
case 7:
|
|
351
|
-
_a.sent();
|
|
352
|
-
return [4, (0, dynamic_load_1.preloadDBShareRules)(datasource)];
|
|
353
|
-
case 8:
|
|
354
|
-
_a.sent();
|
|
355
|
-
return [4, (0, dynamic_load_1.preloadDBRestrictionRules)(datasource)];
|
|
356
|
-
case 9:
|
|
357
|
-
_a.sent();
|
|
358
|
-
return [4, (0, dynamic_load_1.preloadDBPermissionFields)(datasource)];
|
|
359
|
-
case 10:
|
|
360
|
-
_a.sent();
|
|
361
|
-
_a.label = 11;
|
|
362
|
-
case 11: return [2];
|
|
363
|
-
}
|
|
364
|
-
});
|
|
365
|
-
}); };
|
|
366
|
-
exports.loadDbMetadatas = loadDbMetadatas;
|
|
367
|
-
var loadStandardBaseObjects = function (serviceName) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
368
|
-
var standardObjectsDir, baseObject, baseObjectJs, baseTriggers, coreObject, coreTriggers;
|
|
369
|
-
return tslib_1.__generator(this, function (_a) {
|
|
370
|
-
switch (_a.label) {
|
|
371
|
-
case 0:
|
|
372
|
-
if (standardObjectsLoaded)
|
|
373
|
-
return [2];
|
|
374
|
-
standardObjectsLoaded = true;
|
|
375
|
-
standardObjectsDir = path.dirname(require.resolve("@steedos/standard-objects"));
|
|
376
|
-
baseObject = util.loadFile(path.join(standardObjectsDir, "base.object.yml"));
|
|
377
|
-
baseObject.name = exports.MONGO_BASE_OBJECT;
|
|
378
|
-
return [4, (0, exports.addObjectConfig)(baseObject, exports.SYSTEM_DATASOURCE, serviceName)];
|
|
379
|
-
case 1:
|
|
380
|
-
_a.sent();
|
|
381
|
-
baseObjectJs = util.loadFile(path.join(standardObjectsDir, "base.object.js"));
|
|
382
|
-
baseObjectJs.extend = exports.MONGO_BASE_OBJECT;
|
|
383
|
-
return [4, (0, exports.addObjectConfig)(baseObjectJs, exports.SYSTEM_DATASOURCE, serviceName)];
|
|
384
|
-
case 2:
|
|
385
|
-
_a.sent();
|
|
386
|
-
baseTriggers = ['base.trigger.js', 'base.autonumber.trigger.js', 'base.masterDetail.trigger.js', 'base.objectwebhooks.trigger.js', 'base.recordFieldAudit.trigger.js', 'base.recordRecentView.trigger.js', 'base.tree.trigger.js', 'base.calendar.trigger.js', 'base.defaultValue.trigger.js'];
|
|
387
|
-
_.forEach(baseTriggers, function (triggerFileName) {
|
|
388
|
-
var baseObjectTrigger = util.loadFile(path.join(standardObjectsDir, triggerFileName));
|
|
389
|
-
baseObjectTrigger.listenTo = exports.MONGO_BASE_OBJECT;
|
|
390
|
-
(0, dynamic_load_1.addObjectListenerConfig)(baseObjectTrigger);
|
|
391
|
-
});
|
|
392
|
-
coreObject = util.loadFile(path.join(standardObjectsDir, "core.object.yml"));
|
|
393
|
-
coreObject.name = exports.SQL_BASE_OBJECT;
|
|
394
|
-
return [4, (0, exports.addObjectConfig)(coreObject, exports.SYSTEM_DATASOURCE, serviceName)];
|
|
395
|
-
case 3:
|
|
396
|
-
_a.sent();
|
|
397
|
-
coreTriggers = ['core.objectwebhooks.trigger.js', 'core.defaultValue.trigger.js', 'core.autonumber.trigger.js'];
|
|
398
|
-
_.forEach(coreTriggers, function (triggerFileName) {
|
|
399
|
-
var coreObjectTrigger = util.loadFile(path.join(standardObjectsDir, triggerFileName));
|
|
400
|
-
coreObjectTrigger.listenTo = exports.SQL_BASE_OBJECT;
|
|
401
|
-
(0, dynamic_load_1.addObjectListenerConfig)(coreObjectTrigger);
|
|
402
|
-
});
|
|
403
|
-
return [2];
|
|
404
|
-
}
|
|
405
|
-
});
|
|
406
|
-
}); };
|
|
407
|
-
exports.loadStandardBaseObjects = loadStandardBaseObjects;
|
|
408
|
-
var addRouterConfig = function (prefix, router) {
|
|
409
|
-
if (!prefix)
|
|
410
|
-
throw new Error("Error add router, prefix required");
|
|
411
|
-
_.remove(_routerConfigs, { prefix: prefix });
|
|
412
|
-
_routerConfigs.push({ prefix: prefix, router: router });
|
|
413
|
-
};
|
|
414
|
-
exports.addRouterConfig = addRouterConfig;
|
|
415
|
-
var getRouterConfigs = function () {
|
|
416
|
-
return _routerConfigs;
|
|
417
|
-
};
|
|
418
|
-
exports.getRouterConfigs = getRouterConfigs;
|
|
419
|
-
function addObjectMethod(objectName, methodName, method) {
|
|
420
|
-
var object = (0, exports.getObjectConfig)(objectName);
|
|
421
|
-
if (!object)
|
|
422
|
-
throw new Error("Error add method ".concat(methodName, ", object not found: ").concat(objectName));
|
|
423
|
-
if (!object.methods) {
|
|
424
|
-
object.methods = {};
|
|
425
|
-
}
|
|
426
|
-
object.methods[methodName] = method;
|
|
427
|
-
}
|
|
428
|
-
exports.addObjectMethod = addObjectMethod;
|
|
429
|
-
function addObjectAction(objectName, actionConfig) {
|
|
430
|
-
if (!actionConfig.name)
|
|
431
|
-
throw new Error("Error add action, name required");
|
|
432
|
-
var object = (0, exports.getObjectConfig)(objectName);
|
|
433
|
-
if (!object)
|
|
434
|
-
throw new Error("Error add action ".concat(actionConfig.name, ", object not found: ").concat(objectName));
|
|
435
|
-
if (!object.actions) {
|
|
436
|
-
object.actions = {};
|
|
437
|
-
}
|
|
438
|
-
object.actions[actionConfig.name] = actionConfig;
|
|
439
|
-
}
|
|
440
|
-
exports.addObjectAction = addObjectAction;
|
|
441
|
-
function addObjectPermission(objectName, permissionConfig) {
|
|
442
|
-
if (!permissionConfig.name)
|
|
443
|
-
throw new Error("Error add permission, name required");
|
|
444
|
-
var object = (0, exports.getObjectConfig)(objectName);
|
|
445
|
-
if (!object)
|
|
446
|
-
throw new Error("Error add permission ".concat(permissionConfig.name, ", object not found: ").concat(objectName));
|
|
447
|
-
if (!object.permissions) {
|
|
448
|
-
object.permissions = {};
|
|
449
|
-
}
|
|
450
|
-
object.permissions[permissionConfig.name] = permissionConfig;
|
|
451
|
-
}
|
|
452
|
-
exports.addObjectPermission = addObjectPermission;
|
|
453
|
-
function getAllObjectData() {
|
|
454
|
-
return _objectsData;
|
|
455
|
-
}
|
|
456
|
-
exports.getAllObjectData = getAllObjectData;
|
|
457
|
-
function getObjectData(objectName) {
|
|
458
|
-
return _objectsData[objectName];
|
|
459
|
-
}
|
|
460
|
-
exports.getObjectData = getObjectData;
|
|
461
|
-
function setObjectData(objectName, records) {
|
|
462
|
-
if (_objectsData[objectName]) {
|
|
463
|
-
_objectsData[objectName].concat(records);
|
|
464
|
-
}
|
|
465
|
-
else {
|
|
466
|
-
_objectsData[objectName] = records;
|
|
467
|
-
}
|
|
468
|
-
}
|
|
469
|
-
exports.setObjectData = setObjectData;
|
|
470
|
-
function addObjectDataFiles(filePath) {
|
|
471
|
-
var result = util.loadObjectDataFiles(filePath);
|
|
472
|
-
_.each(result, function (item) {
|
|
473
|
-
if (item.objectName) {
|
|
474
|
-
setObjectData(item.objectName, item.records);
|
|
475
|
-
}
|
|
476
|
-
});
|
|
477
|
-
}
|
|
478
|
-
exports.addObjectDataFiles = addObjectDataFiles;
|
|
479
|
-
//# sourceMappingURL=object_dynamic_load.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"object_dynamic_load.js","sourceRoot":"","sources":["../../src/types/object_dynamic_load.ts"],"names":[],"mappings":"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"}
|