@steedos/standard-object-database 2.7.1-beta.3 → 2.7.1-beta.31
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/objectTranslations/object_functions.en/object_functions.en.objectTranslation.yml +47 -0
- package/main/default/objectTranslations/object_functions.zh-CN/object_functions.zh-CN.objectTranslation.yml +44 -0
- package/main/default/objectTranslations/objects.en/objects.en.objectTranslation.yml +4 -0
- package/main/default/objectTranslations/objects.zh-CN/objects.zh-CN.objectTranslation.yml +4 -0
- package/main/default/objects/datasources/fields/driver.field.yml +1 -0
- package/main/default/objects/datasources/fields/is_enable.field.yml +1 -0
- package/main/default/objects/datasources/fields/label.field.yml +2 -0
- package/main/default/objects/datasources/fields/name.field.yml +1 -0
- package/main/default/objects/object_fields/fields/auto_fill_mapping.$.from.field.yml +8 -6
- package/main/default/objects/object_fields/fields/auto_fill_mapping.$.to.field.yml +15 -0
- package/main/default/objects/object_fields/fields/auto_fill_mapping.field.yml +1 -1
- package/main/default/objects/object_fields/fields/is_name.field.yml +1 -0
- package/main/default/objects/object_fields/fields/sortable.field.yml +1 -1
- package/main/default/objects/object_fields/fields/summary_filters.field.yml +1 -1
- package/main/default/objects/object_functions/buttons/standard_new.button.js +16 -0
- package/main/default/objects/object_functions/fields/_name.field.yml +7 -0
- package/main/default/objects/object_functions/fields/description.field.yml +5 -0
- package/main/default/objects/object_functions/fields/isEnabled.field.yml +5 -0
- package/main/default/objects/object_functions/fields/is_rest.field.yml +5 -0
- package/main/default/objects/object_functions/fields/is_system.field.yml +7 -0
- package/main/default/objects/object_functions/fields/name.field.yml +8 -0
- package/main/default/objects/object_functions/fields/objectApiName.field.yml +7 -0
- package/main/default/objects/object_functions/fields/record_permissions.field.yml +4 -0
- package/main/default/objects/object_functions/fields/script.field.yml +24 -0
- package/main/default/objects/object_functions/listviews/all.listview.yml +9 -0
- package/main/default/objects/object_functions/listviews/customize.listview.yml +13 -0
- package/main/default/objects/object_functions/object_functions.object.yml +8 -0
- package/main/default/objects/object_functions/permissions/admin.permission.yml +7 -0
- package/main/default/objects/object_functions/permissions/user.permission.yml +7 -0
- package/main/default/objects/object_listviews/buttons/customize.button.js +1 -1
- package/main/default/objects/object_triggers/fields/_name.field.yml +1 -0
- package/main/default/objects/object_triggers/fields/isEnabled.field.yml +1 -0
- package/main/default/objects/object_triggers/fields/listenTo.field.yml +1 -0
- package/main/default/objects/object_triggers/fields/name.field.yml +1 -0
- package/main/default/objects/object_triggers/fields/when.field.yml +1 -0
- package/main/default/objects/object_validation_rules/fields/active.field.yml +1 -0
- package/main/default/objects/object_validation_rules/fields/description.field.yml +1 -0
- package/main/default/objects/object_validation_rules/fields/name.field.yml +2 -0
- package/main/default/objects/object_validation_rules/fields/object_name.field.yml +1 -0
- package/main/default/objects/object_webhooks/fields/event.field.yml +2 -1
- package/main/default/objects/object_webhooks/fields/execute_when.field.yml +2 -1
- package/main/default/objects/object_webhooks/fields/fields.field.yml +1 -0
- package/main/default/objects/object_webhooks/fields/name.field.yml +3 -1
- package/main/default/objects/object_webhooks/fields/object_name.field.yml +3 -1
- package/main/default/objects/object_webhooks/fields/payload_url.field.yml +3 -1
- package/main/default/objects/objects/fields/description.field.yml +1 -0
- package/main/default/objects/objects/fields/enable_form_tabs.field.yml +7 -0
- package/main/default/objects/objects/fields/in_development.field.yml +2 -0
- package/main/default/objects/objects/fields/is_customize.field.yml +1 -0
- package/main/default/objects/objects/fields/is_system.field.yml +1 -0
- package/main/default/objects/objects/listviews/customize.listview.yml +1 -1
- package/main/default/pages/design_field_layout.page.amis.json +285 -215
- package/main/default/pages/object_detail.page.amis.json +13 -0
- package/main/default/pages/object_fields_form.page.amis.json +38 -10
- package/main/default/pages/object_webhooks_form.page.amis.json +1 -1
- package/main/default/server/object_fields.object.js +4 -2
- package/main/default/server/objects.core.js +4 -0
- package/main/default/server/objects.object.js +2 -1
- package/main/default/services/object_webhooks.service.js +12 -7
- package/main/default/services/suggestions.service.js +92 -0
- package/main/default/triggers/datasources.trigger.js +9 -2
- package/main/default/triggers/object_actions.trigger.js +6 -4
- package/main/default/triggers/object_fields.trigger.js +3 -25
- package/main/default/triggers/object_functions.trigger.js +104 -0
- package/main/default/triggers/object_triggers.trigger.js +2 -2
- package/main/default/triggers/object_validation_rules.trigger.js +4 -5
- package/main/default/triggers/objects.trigger.js +20 -3
- package/package.json +6 -5
- package/package.service.js +3 -2
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
name: object_functions
|
|
2
|
+
label: Object Functions
|
|
3
|
+
description:
|
|
4
|
+
fields:
|
|
5
|
+
_name:
|
|
6
|
+
label: API Name
|
|
7
|
+
help: >-
|
|
8
|
+
Can only contain lowercase letters and numbers, must start with a letter,
|
|
9
|
+
cannot end with an underscore character or contain two consecutive
|
|
10
|
+
underscore characters
|
|
11
|
+
description:
|
|
12
|
+
is_rest:
|
|
13
|
+
label: Enable API
|
|
14
|
+
help:
|
|
15
|
+
description: allow the use of api interface access:{POST/GET} /api/v1/:objectName/functions/:functionApiName
|
|
16
|
+
is_system:
|
|
17
|
+
label: System
|
|
18
|
+
help:
|
|
19
|
+
description:
|
|
20
|
+
isEnabled:
|
|
21
|
+
label: Enable
|
|
22
|
+
help:
|
|
23
|
+
description:
|
|
24
|
+
name:
|
|
25
|
+
label: Name
|
|
26
|
+
help:
|
|
27
|
+
description:
|
|
28
|
+
objectApiName:
|
|
29
|
+
label: Object
|
|
30
|
+
help:
|
|
31
|
+
description:
|
|
32
|
+
script:
|
|
33
|
+
label: Script
|
|
34
|
+
help:
|
|
35
|
+
description: |
|
|
36
|
+
async function run(ctx) {
|
|
37
|
+
// ...
|
|
38
|
+
}
|
|
39
|
+
description:
|
|
40
|
+
label: Description
|
|
41
|
+
help:
|
|
42
|
+
description:
|
|
43
|
+
listviews:
|
|
44
|
+
all:
|
|
45
|
+
label: All
|
|
46
|
+
customize:
|
|
47
|
+
label: Customize
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
name: object_functions
|
|
2
|
+
label: 对象函数
|
|
3
|
+
description:
|
|
4
|
+
fields:
|
|
5
|
+
_name:
|
|
6
|
+
label: API 名称
|
|
7
|
+
help: API 名称只能包含小写字母、数字,必须以字母开头,不能以下划线字符结尾或包含两个连续的下划线字符
|
|
8
|
+
description:
|
|
9
|
+
is_rest:
|
|
10
|
+
label: 启用API
|
|
11
|
+
help:
|
|
12
|
+
description: 允许使用API接口访问:{POST/GET} /api/v1/:objectName/functions/:functionApiName
|
|
13
|
+
is_system:
|
|
14
|
+
label: 系统
|
|
15
|
+
help:
|
|
16
|
+
description:
|
|
17
|
+
isEnabled:
|
|
18
|
+
label: 已启用
|
|
19
|
+
help:
|
|
20
|
+
description:
|
|
21
|
+
name:
|
|
22
|
+
label: 名称
|
|
23
|
+
help:
|
|
24
|
+
description:
|
|
25
|
+
objectApiName:
|
|
26
|
+
label: 所属对象
|
|
27
|
+
help:
|
|
28
|
+
description:
|
|
29
|
+
script:
|
|
30
|
+
label: 代码
|
|
31
|
+
help:
|
|
32
|
+
description: |
|
|
33
|
+
async function run(ctx) {
|
|
34
|
+
// ...
|
|
35
|
+
}
|
|
36
|
+
description:
|
|
37
|
+
label: 备注
|
|
38
|
+
help:
|
|
39
|
+
description:
|
|
40
|
+
listviews:
|
|
41
|
+
all:
|
|
42
|
+
label: 所有
|
|
43
|
+
customize:
|
|
44
|
+
label: 自定义
|
|
@@ -54,6 +54,10 @@ fields:
|
|
|
54
54
|
label: Enable Notes
|
|
55
55
|
help:
|
|
56
56
|
description:
|
|
57
|
+
enable_form_tabs:
|
|
58
|
+
label: Enable Form Tabs
|
|
59
|
+
help: Displays groups in tabbed mode in the form, recognizing this property only when editing mode.
|
|
60
|
+
description:
|
|
57
61
|
enable_events:
|
|
58
62
|
label: Enable Events
|
|
59
63
|
help:
|
|
@@ -4,17 +4,19 @@ depend_on:
|
|
|
4
4
|
filtersFunction: !<tag:yaml.org,2002:js/function> |-
|
|
5
5
|
function(filters,values
|
|
6
6
|
) {
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
var currentFilter = [];
|
|
8
|
+
//当前字段为多选时,from的字段不能选择multiple为true的
|
|
9
|
+
if (values.multiple) {
|
|
10
|
+
currentFilter.push(['multiple', '!=', true]);
|
|
11
|
+
}
|
|
9
12
|
|
|
10
13
|
if(values && values.reference_to){
|
|
11
|
-
|
|
14
|
+
currentFilter.push(['object', '=', values.reference_to]);
|
|
12
15
|
}else{
|
|
13
|
-
|
|
16
|
+
currentFilter.push(['_id', '=', 'no']);
|
|
14
17
|
}
|
|
15
18
|
|
|
16
|
-
|
|
17
|
-
|
|
19
|
+
return currentFilter;
|
|
18
20
|
}
|
|
19
21
|
group: auto_fill
|
|
20
22
|
hidden: false
|
|
@@ -24,6 +24,19 @@ filtersFunction: !<tag:yaml.org,2002:js/function> |-
|
|
|
24
24
|
var referenceObject = BuilderAmisObject && BuilderAmisObject.AmisLib && BuilderAmisObject.AmisLib.getUISchemaSync(values.reference_to);
|
|
25
25
|
var fromField = referenceObject && referenceObject.fields[values.from];
|
|
26
26
|
|
|
27
|
+
if (values.multiple) {
|
|
28
|
+
//当前字段为多选时,若from的字段类型为lookup、master_detail、select时,to的字段则必须选择multiple为true的
|
|
29
|
+
if (_.includes(["lookup","master_detail","select"], fromField.type)) {
|
|
30
|
+
currentFilter.push(['multiple', '=', true]);
|
|
31
|
+
}
|
|
32
|
+
}else {
|
|
33
|
+
//当前字段为单选时,若from的字段多选,to的字段则也必须多选;若from不是多选,则to也不能是多选
|
|
34
|
+
if (fromField.multiple){
|
|
35
|
+
currentFilter.push(['multiple', '=', true]);
|
|
36
|
+
} else {
|
|
37
|
+
currentFilter.push(['multiple', '!=', true]);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
27
40
|
if (fromField && fromField.data_type) {
|
|
28
41
|
currentFilter.push(['type', 'in', fieldFilters[fromField.data_type] || fromField.data_type.split()]);
|
|
29
42
|
}else if (fromField) {
|
|
@@ -60,3 +73,5 @@ reference_to_field: name
|
|
|
60
73
|
required: true
|
|
61
74
|
sort_no: 530
|
|
62
75
|
type: lookup
|
|
76
|
+
amis:
|
|
77
|
+
disabledOn: ${!from}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @Author: 孙浩林 sunhaolin@steedos.com
|
|
3
|
+
* @Date: 2024-05-14 17:04:31
|
|
4
|
+
* @LastEditors: 孙浩林 sunhaolin@steedos.com
|
|
5
|
+
* @LastEditTime: 2024-05-14 17:04:36
|
|
6
|
+
* @FilePath: /steedos-platform-2.3/services/standard-object-database/main/default/objects/object_functions/buttons/standard_new.button.js
|
|
7
|
+
* @Description:
|
|
8
|
+
*/
|
|
9
|
+
module.exports = {
|
|
10
|
+
standard_newVisible: function (object_name, record_id, record_permissions, data) {
|
|
11
|
+
if(Meteor.settings.public.enable_saas){
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
return Creator.baseObject.actions.standard_new.visible.apply(this, arguments);
|
|
15
|
+
},
|
|
16
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
name: script
|
|
2
|
+
label: Script
|
|
3
|
+
type: code
|
|
4
|
+
language: javascript
|
|
5
|
+
is_wide: true
|
|
6
|
+
required: true
|
|
7
|
+
defaultValue: |-
|
|
8
|
+
// global: {_:lodash, moment, validator, filters}
|
|
9
|
+
// objects
|
|
10
|
+
// ctx: {input, params, broker, getObject, getUser}
|
|
11
|
+
editorDidMount: >-
|
|
12
|
+
if(window._registerCompletionItemProviderFunction){
|
|
13
|
+
return ;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
window._registerCompletionItemProviderFunction = true;
|
|
17
|
+
|
|
18
|
+
const result = Steedos.authRequest("/service/api/suggestions/function.d.ts",
|
|
19
|
+
{async: false});
|
|
20
|
+
|
|
21
|
+
monaco.languages.typescript.javascriptDefaults.addExtraLib(
|
|
22
|
+
result
|
|
23
|
+
);
|
|
24
|
+
sort_no: 150
|
|
@@ -26,6 +26,6 @@ customize:function (object_name, record_id, fields) {
|
|
|
26
26
|
},
|
|
27
27
|
customizeVisible:function(object_name, record_id, record_permissions, data){
|
|
28
28
|
var record = data && data.record;
|
|
29
|
-
return Creator.baseObject.actions.standard_new.visible() && record.is_system;
|
|
29
|
+
return Creator.baseObject.actions.standard_new.visible(object_name) && record.is_system;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -4,4 +4,6 @@ type: text
|
|
|
4
4
|
is_wide: true
|
|
5
5
|
# regEx: /^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/i
|
|
6
6
|
required: true
|
|
7
|
-
sort_no: 70
|
|
7
|
+
sort_no: 70
|
|
8
|
+
filterable: true
|
|
9
|
+
searchable: true
|