@steedos/objectql 2.2.50 → 2.2.51-beta.4

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.
Files changed (143) hide show
  1. package/lib/services/helpers/graphql/consts.d.ts +17 -0
  2. package/lib/services/helpers/graphql/consts.js +28 -0
  3. package/lib/services/helpers/graphql/consts.js.map +1 -0
  4. package/lib/services/helpers/graphql/getQueryFields.js +17 -2
  5. package/lib/services/helpers/graphql/getQueryFields.js.map +1 -1
  6. package/lib/services/helpers/graphql/index.d.ts +1 -1
  7. package/lib/services/helpers/graphql/index.js +31 -46
  8. package/lib/services/helpers/graphql/index.js.map +1 -1
  9. package/lib/util/index.js +7 -0
  10. package/lib/util/index.js.map +1 -1
  11. package/package.json +11 -12
  12. package/src/actions/field_updates.ts +0 -118
  13. package/src/actions/index.ts +0 -3
  14. package/src/actions/types/field_update_target.ts +0 -7
  15. package/src/actions/types/workflow_notification.ts +0 -9
  16. package/src/actions/types/workflow_rule.ts +0 -11
  17. package/src/actions/workflow_notifications.ts +0 -81
  18. package/src/actions/workflow_rule.ts +0 -136
  19. package/src/driver/driver.ts +0 -102
  20. package/src/driver/field-encrytion/index.ts +0 -8
  21. package/src/driver/field-encrytion/sharedconst.ts +0 -34
  22. package/src/driver/fieldDBType.ts +0 -14
  23. package/src/driver/format.ts +0 -36
  24. package/src/driver/index.ts +0 -20
  25. package/src/driver/metadata.ts +0 -226
  26. package/src/driver/meteorMongo.ts +0 -639
  27. package/src/driver/mongo.ts +0 -416
  28. package/src/driver/mysql.ts +0 -47
  29. package/src/driver/oracle.ts +0 -60
  30. package/src/driver/postgres.ts +0 -46
  31. package/src/driver/sqlite3.ts +0 -40
  32. package/src/driver/sqlserver.ts +0 -52
  33. package/src/dynamic-load/actions.ts +0 -146
  34. package/src/dynamic-load/approval_process.ts +0 -73
  35. package/src/dynamic-load/button.ts +0 -75
  36. package/src/dynamic-load/chart.ts +0 -22
  37. package/src/dynamic-load/client_script.ts +0 -65
  38. package/src/dynamic-load/field.ts +0 -77
  39. package/src/dynamic-load/flow_role.ts +0 -46
  40. package/src/dynamic-load/index.ts +0 -21
  41. package/src/dynamic-load/layout.ts +0 -53
  42. package/src/dynamic-load/listview.ts +0 -57
  43. package/src/dynamic-load/method.ts +0 -63
  44. package/src/dynamic-load/object_translations.ts +0 -61
  45. package/src/dynamic-load/originalObject.ts +0 -8
  46. package/src/dynamic-load/package.ts +0 -312
  47. package/src/dynamic-load/page.ts +0 -23
  48. package/src/dynamic-load/permission.ts +0 -71
  49. package/src/dynamic-load/permissionset.ts +0 -78
  50. package/src/dynamic-load/preload_data.ts +0 -104
  51. package/src/dynamic-load/profile.ts +0 -90
  52. package/src/dynamic-load/query.ts +0 -22
  53. package/src/dynamic-load/restrictionRules.ts +0 -23
  54. package/src/dynamic-load/role.ts +0 -46
  55. package/src/dynamic-load/shareRules.ts +0 -23
  56. package/src/dynamic-load/tab.ts +0 -17
  57. package/src/dynamic-load/tabs.ts +0 -13
  58. package/src/dynamic-load/translations.ts +0 -54
  59. package/src/dynamic-load/trigger.ts +0 -236
  60. package/src/dynamic-load/validation_rule.ts +0 -77
  61. package/src/dynamic-load/workflow.ts +0 -114
  62. package/src/errors/index.ts +0 -111
  63. package/src/formula/core.ts +0 -490
  64. package/src/formula/field_formula.ts +0 -107
  65. package/src/formula/index.ts +0 -81
  66. package/src/formula/params.ts +0 -197
  67. package/src/formula/recompute.ts +0 -65
  68. package/src/formula/simple_params.ts +0 -92
  69. package/src/formula/type.ts +0 -107
  70. package/src/formula/util.ts +0 -207
  71. package/src/index.ts +0 -24
  72. package/src/metadata-register/_base.ts +0 -85
  73. package/src/metadata-register/app.ts +0 -30
  74. package/src/metadata-register/chart.ts +0 -9
  75. package/src/metadata-register/index.ts +0 -123
  76. package/src/metadata-register/layout.ts +0 -38
  77. package/src/metadata-register/object.ts +0 -68
  78. package/src/metadata-register/page.ts +0 -9
  79. package/src/metadata-register/permissionFields.ts +0 -13
  80. package/src/metadata-register/permissionset.ts +0 -25
  81. package/src/metadata-register/process.ts +0 -16
  82. package/src/metadata-register/processTrigger.ts +0 -24
  83. package/src/metadata-register/profile.ts +0 -25
  84. package/src/metadata-register/query.ts +0 -9
  85. package/src/metadata-register/restrictionRules.ts +0 -12
  86. package/src/metadata-register/shareRules.ts +0 -13
  87. package/src/metadata-register/tab.ts +0 -9
  88. package/src/metadata-register/tabs.ts +0 -43
  89. package/src/services/datasourceServiceFactory.ts +0 -55
  90. package/src/services/helpers/graphql/getPrimaryFieldType.ts +0 -48
  91. package/src/services/helpers/graphql/getQueryFields.ts +0 -36
  92. package/src/services/helpers/graphql/index.ts +0 -681
  93. package/src/services/helpers/rest.ts +0 -57
  94. package/src/services/index.ts +0 -13
  95. package/src/services/objectService.ts +0 -846
  96. package/src/services/objectServiceDispatcher.ts +0 -209
  97. package/src/services/objectServiceFactory.ts +0 -29
  98. package/src/summary/core.ts +0 -263
  99. package/src/summary/field_summary.ts +0 -71
  100. package/src/summary/index.ts +0 -96
  101. package/src/summary/recompute.ts +0 -31
  102. package/src/summary/type.ts +0 -60
  103. package/src/ts-types/index.ts +0 -3
  104. package/src/ts-types/permissionset.ts +0 -8
  105. package/src/ts-types/profile.ts +0 -11
  106. package/src/ts-types/triggerActionParams.ts +0 -22
  107. package/src/typeorm/driver.ts +0 -379
  108. package/src/typeorm/index.ts +0 -3
  109. package/src/typeorm/util.ts +0 -147
  110. package/src/types/action.ts +0 -52
  111. package/src/types/app.ts +0 -280
  112. package/src/types/config.ts +0 -152
  113. package/src/types/connection.ts +0 -87
  114. package/src/types/dashboard.ts +0 -91
  115. package/src/types/datasource.ts +0 -570
  116. package/src/types/field.ts +0 -370
  117. package/src/types/field_permission.ts +0 -42
  118. package/src/types/field_types.ts +0 -1
  119. package/src/types/index.ts +0 -21
  120. package/src/types/list_view.ts +0 -56
  121. package/src/types/listeners.ts +0 -18
  122. package/src/types/object.ts +0 -2076
  123. package/src/types/object_dynamic_load.ts +0 -426
  124. package/src/types/object_events.ts +0 -43
  125. package/src/types/object_layouts.ts +0 -20
  126. package/src/types/object_permission.ts +0 -134
  127. package/src/types/query.ts +0 -28
  128. package/src/types/report.ts +0 -128
  129. package/src/types/restrictionRule.ts +0 -57
  130. package/src/types/schema.ts +0 -273
  131. package/src/types/shareRule.ts +0 -57
  132. package/src/types/trigger.ts +0 -88
  133. package/src/types/userSession.ts +0 -45
  134. package/src/types/validation_rules.ts +0 -29
  135. package/src/util/convert.ts +0 -131
  136. package/src/util/field.ts +0 -93
  137. package/src/util/function_expression.ts +0 -63
  138. package/src/util/index.ts +0 -1058
  139. package/src/util/locale.ts +0 -24
  140. package/src/util/permission_shares.ts +0 -25
  141. package/src/util/suffix.ts +0 -78
  142. package/src/util/transform.ts +0 -239
  143. package/src/validators/index.ts +0 -36
@@ -1,25 +0,0 @@
1
- const clone = require('clone');
2
- export async function registerProfile(broker, serviceName, profileConfig) {
3
- const metadata = clone(profileConfig);
4
- delete metadata.triggers
5
- const res = await broker.call("permissionsets.addProfile", {profileApiName: metadata._id || metadata.name ,data: metadata}, {meta: {
6
- metadataServiceName: serviceName,
7
- caller: {
8
- nodeID: broker.nodeID,
9
- service: {
10
- name: serviceName,
11
- }
12
- }
13
- }});
14
- return res;
15
- }
16
-
17
- export async function getProfile(broker, profileApiName) {
18
- const res = await broker.call("permissionsets.getProfile", {profileApiName: profileApiName});
19
- return res;
20
- }
21
-
22
- export async function getProfiles(broker) {
23
- const res = await broker.call("permissionsets.getProfiles");
24
- return res;
25
- }
@@ -1,9 +0,0 @@
1
- import { RegisterBase } from "./_base";
2
- const SERVICE_NAME = 'queries';
3
- class RegisterQuery extends RegisterBase{
4
- constructor(){
5
- super(SERVICE_NAME);
6
- }
7
- }
8
-
9
- export const registerQuery = new RegisterQuery();
@@ -1,12 +0,0 @@
1
- import { RegisterBase } from "./_base";
2
- const SERVICE_NAME = 'restriction_rules';
3
- class RegisterRestrictionRules extends RegisterBase {
4
- constructor() {
5
- super(SERVICE_NAME);
6
- }
7
-
8
- getApiName(config) {
9
- return `${config.object_name}.${config.name}`
10
- }
11
- }
12
- export const registerRestrictionRules = new RegisterRestrictionRules();
@@ -1,13 +0,0 @@
1
- import { RegisterBase } from "./_base";
2
- const SERVICE_NAME = 'share_rules';
3
- class RegisterShareRules extends RegisterBase {
4
- constructor() {
5
- super(SERVICE_NAME);
6
- }
7
-
8
- getApiName(config) {
9
- return `${config.object_name}.${config.name}`
10
- }
11
- }
12
-
13
- export const registerShareRules = new RegisterShareRules();
@@ -1,9 +0,0 @@
1
- import { RegisterBase } from "./_base";
2
- const SERVICE_NAME = 'tabs';
3
- class RegisterTab extends RegisterBase{
4
- constructor(){
5
- super(SERVICE_NAME);
6
- }
7
- }
8
-
9
- export const registerTab = new RegisterTab();
@@ -1,43 +0,0 @@
1
- const clone = require('clone');
2
- const SERVICE_NAME = 'tabs';
3
-
4
- /***
5
- * 此文件内容不再维护,迁移到tab.ts
6
- */
7
-
8
- export async function registerTab(broker, serviceName, config) {
9
- const metadata = clone(config);
10
- delete metadata.triggers
11
- const res = await broker.call(`${SERVICE_NAME}.add`, {tabApiName: metadata.name ,data: metadata}, {meta: {
12
- metadataServiceName: serviceName,
13
- caller: {
14
- nodeID: broker.nodeID,
15
- service: {
16
- name: serviceName,
17
- }
18
- }
19
- }});
20
- return res;
21
- }
22
-
23
- export async function removeTab(broker, tabApiName) {
24
- const res = await broker.call(`${SERVICE_NAME}.delete`, {tabApiName: tabApiName});
25
- return res;
26
- }
27
-
28
- export async function getTab(broker, tabApiName) {
29
- const res = await broker.call(`${SERVICE_NAME}.get`, {tabApiName: tabApiName});
30
- return res;
31
- }
32
-
33
- export async function getTabs(broker) {
34
- const res = await broker.call(`${SERVICE_NAME}.getAll`);
35
- return res;
36
- }
37
-
38
- export async function filterTabs(broker, tabApiName, spaceId?, objectApiName?){
39
- const res = await broker.call(`${SERVICE_NAME}.filter`, {
40
- objectApiName, spaceId, tabApiName
41
- });
42
- return res;
43
- }
@@ -1,55 +0,0 @@
1
- import * as _ from 'underscore';
2
- import { getDataSourceServiceName } from './index';
3
- import { jsonToObject } from '../util/convert';
4
- import { getDataSource } from '../types/datasource';
5
- const LocalDataSourceServices = {};
6
-
7
-
8
- export async function createDataSourceService(broker, dataSource) {
9
- const dataSourceName = dataSource.name;
10
- const serviceName = getDataSourceServiceName(dataSourceName);
11
-
12
- if (LocalDataSourceServices[serviceName]) {
13
- return;
14
- }
15
-
16
- let service = broker.createService({
17
- name: serviceName,
18
- events: {
19
- [`${dataSourceName}.*.metadata.objects.inserted`]: {
20
- handler(ctx) {
21
- let objectConfig = ctx.params.data;
22
- jsonToObject(objectConfig)
23
- dataSource.initObject(objectConfig)
24
- /**
25
- * 每次都需要初始化,TypeORM不适用于微服务模式
26
- */
27
- dataSource.initTypeORM();
28
- }
29
- },
30
- [`${dataSourceName}.*.metadata.objects.deleted`]: {
31
- handler(ctx) {
32
- if (this.timeoutId) {
33
- clearTimeout(this.timeoutId);
34
- }
35
- this.timeoutId = setTimeout(function(){
36
- try {
37
- const datasource = getDataSource(dataSourceName);
38
- if (datasource) {
39
- datasource.flushCacheObjects();
40
- }
41
- } catch (error) {
42
- console.error(error)
43
- }
44
- }, 1000 * 0.1);
45
- }
46
- },
47
- }
48
- })
49
- if (!broker.started) { //如果broker未启动则手动启动service
50
- await broker._restartService(service)
51
- }
52
- await broker.waitForServices(service.name, null, 10);
53
- LocalDataSourceServices[serviceName] = true;
54
- return service
55
- }
@@ -1,48 +0,0 @@
1
- /*
2
- * @Author: sunhaolin@hotoa.com
3
- * @Date: 2022-06-16 14:37:39
4
- * @LastEditors: sunhaolin@hotoa.com
5
- * @LastEditTime: 2022-06-16 16:28:20
6
- * @Description: 获取对象主键字段类型,用于生成对象的graphql schema,如 id: ID!
7
- */
8
-
9
- import { SteedosObjectTypeConfig, getDataSource, SteedosDatabaseDriverType } from "../../..";
10
- import _ = require("lodash");
11
-
12
- /**
13
- * 根据对象所属数据源的类型,生成grapqhl shcmea的主键字段定义
14
- * @param objectConfig 对象配置
15
- */
16
- export function getPrimaryFieldType(objectConfig: SteedosObjectTypeConfig) {
17
- let idType = '';
18
- let fields = objectConfig.fields;
19
- const datasource = getDataSource(objectConfig.datasource);
20
- if (datasource.driver === SteedosDatabaseDriverType.MeteorMongo || datasource.driver === SteedosDatabaseDriverType.Mongo) {
21
- if (!_.has(fields, "_id")) {
22
- idType = '_id: String'
23
- }
24
- } else {
25
- // 设置非默认数据源的主键字段,如mysql
26
- for (let fieldName in fields) {
27
- let field = fields[fieldName];
28
- if (field.primary) {
29
- let fieldType = ''
30
- switch (field.type) {
31
- case 'text' || 'textarea':
32
- fieldType = 'String';
33
- break;
34
- case 'number':
35
- fieldType = 'Float';
36
- break;
37
- default:
38
- fieldType = 'JSON'
39
- break;
40
- }
41
- idType = `_id: ${fieldType}`;
42
- break;
43
- }
44
- }
45
- }
46
-
47
- return idType;
48
- }
@@ -1,36 +0,0 @@
1
- /*
2
- * @Author: sunhaolin@hotoa.com
3
- * @Date: 2022-06-15 15:50:29
4
- * @LastEditors: sunhaolin@hotoa.com
5
- * @LastEditTime: 2022-06-17 15:19:47
6
- * @Description: 根据query的请求体解析出查询的字段
7
- */
8
- import { GraphQLResolveInfo } from 'graphql';
9
- import {
10
- parseResolveInfo,
11
- simplifyParsedResolveInfoFragmentWithType,
12
- ResolveTree,
13
- } from 'graphql-parse-resolve-info';
14
-
15
- import _ = require('lodash');
16
-
17
- export function getQueryFields(resolveInfo: GraphQLResolveInfo) {
18
- const fieldsName = []
19
- const parsedResolveInfoFragment: ResolveTree = <ResolveTree>parseResolveInfo(resolveInfo);
20
- const simplifiedFragment = simplifyParsedResolveInfoFragmentWithType(
21
- parsedResolveInfoFragment,
22
- resolveInfo.returnType
23
- );
24
-
25
- const fields = simplifiedFragment.fields;
26
- if (!_.isEmpty(fields)) {
27
- for (const key in fields) {
28
- if (Object.prototype.hasOwnProperty.call(fields, key)) {
29
- fieldsName.push(fields[key].name)
30
- }
31
- }
32
- }
33
-
34
- return fieldsName;
35
-
36
- }