@steedos-widgets/amis-lib 3.6.0-beta.7 → 3.6.1
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/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/index.cjs.js +121 -38
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +121 -38
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +20 -19
- package/dist/index.umd.js.map +1 -1
- package/dist/types/lib/converter/amis/fields/lookup.d.ts +1 -1
- package/dist/types/lib/converter/amis/index.d.ts +8 -0
- package/dist/types/lib/objects.d.ts +8 -0
- package/package.json +2 -2
package/dist/index.cjs.js
CHANGED
|
@@ -1636,11 +1636,11 @@ async function getQuickEditSchema(field, options){
|
|
|
1636
1636
|
if(event.data.isBatchEdit){
|
|
1637
1637
|
selectedItems.forEach(function(selectedItem){
|
|
1638
1638
|
selectedItem._display.${field.name} = event.data._display.${field.name};
|
|
1639
|
-
doAction({actionType: 'setValue', "args": {"value": selectedItem._display},componentId: "_display_" + selectedItem._index});
|
|
1639
|
+
doAction({actionType: 'setValue', "args": {"value": selectedItem._display},componentId: ${options.objectName} + "_display_" + selectedItem._index});
|
|
1640
1640
|
doAction({actionType: 'setValue', "args": {"value": event.data.${field.name}},componentId: "${options.objectName + "_" + field.name + "_"}" + selectedItem._index});
|
|
1641
1641
|
})
|
|
1642
1642
|
}else{
|
|
1643
|
-
doAction({actionType: 'setValue', "args": {"value": event.data._display},componentId: "_display_" + event.data._index});
|
|
1643
|
+
doAction({actionType: 'setValue', "args": {"value": event.data._display},componentId: ${options.objectName} + "_display_" + event.data._index});
|
|
1644
1644
|
doAction({actionType: 'setValue', "args": {"value": event.data.${field.name}},componentId: "${options.objectName + "_" + field.name + "_"}" + event.data._index});
|
|
1645
1645
|
}
|
|
1646
1646
|
`
|
|
@@ -1670,7 +1670,6 @@ async function getQuickEditSchema(field, options){
|
|
|
1670
1670
|
{
|
|
1671
1671
|
"actionType": "custom",
|
|
1672
1672
|
"script": `
|
|
1673
|
-
|
|
1674
1673
|
var _display = _.cloneDeep(event.data._display);
|
|
1675
1674
|
${displayField}
|
|
1676
1675
|
doAction({actionType: 'setValue', "args": {"value": {_display}},componentId: "${quickEditId}"});
|
|
@@ -1841,6 +1840,23 @@ async function getQuickEditSchema(field, options){
|
|
|
1841
1840
|
"onEvent":{
|
|
1842
1841
|
"init":{
|
|
1843
1842
|
"actions":[
|
|
1843
|
+
//amis3.6无法从数据域中直接拿到正确的selectitems,需要通过crud组件的getSelected()函数获取
|
|
1844
|
+
{
|
|
1845
|
+
"actionType": "custom",
|
|
1846
|
+
"script": `
|
|
1847
|
+
crudScoped = event.context.scoped.getComponentById('${options.crudId}');
|
|
1848
|
+
const selectedItems = crudScoped && crudScoped.control.getSelected();
|
|
1849
|
+
doAction({
|
|
1850
|
+
"componentId": "${quickEditId}",
|
|
1851
|
+
"actionType": "setValue",
|
|
1852
|
+
"args": {
|
|
1853
|
+
"value": {
|
|
1854
|
+
selectedItems
|
|
1855
|
+
}
|
|
1856
|
+
}
|
|
1857
|
+
});
|
|
1858
|
+
`
|
|
1859
|
+
},
|
|
1844
1860
|
{
|
|
1845
1861
|
"actionType": "setValue",
|
|
1846
1862
|
"componentId": quickEditId,
|
|
@@ -5771,12 +5787,16 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
5771
5787
|
// }
|
|
5772
5788
|
// listView.handleFilterSubmit(Object.assign({}, removedValues, filterFormValues));
|
|
5773
5789
|
// 点击搜索的时候自动收起搜索栏
|
|
5774
|
-
|
|
5775
|
-
|
|
5776
|
-
|
|
5777
|
-
|
|
5778
|
-
|
|
5779
|
-
|
|
5790
|
+
//触发amis crud 高度重算
|
|
5791
|
+
doAction({
|
|
5792
|
+
"actionType": "broadcast",
|
|
5793
|
+
"args": {
|
|
5794
|
+
"eventName": "@height.changed.${objectSchema.name}"
|
|
5795
|
+
},
|
|
5796
|
+
"data": {
|
|
5797
|
+
"timeOut": 500
|
|
5798
|
+
}
|
|
5799
|
+
});
|
|
5780
5800
|
const filterService = filterForm.context.getComponents().find(function(n){
|
|
5781
5801
|
return n.props.type === "service";
|
|
5782
5802
|
});
|
|
@@ -5878,9 +5898,16 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
5878
5898
|
let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");
|
|
5879
5899
|
filterFormService.setData({showFieldsFilter: !!!filterFormService.props.data.showFieldsFilter});
|
|
5880
5900
|
//触发amis crud 高度重算
|
|
5881
|
-
|
|
5882
|
-
|
|
5883
|
-
|
|
5901
|
+
doAction({
|
|
5902
|
+
"actionType": "broadcast",
|
|
5903
|
+
"args": {
|
|
5904
|
+
"eventName": "@height.changed.${objectSchema.name}"
|
|
5905
|
+
},
|
|
5906
|
+
"data": {
|
|
5907
|
+
"timeOut": 100
|
|
5908
|
+
}
|
|
5909
|
+
});
|
|
5910
|
+
|
|
5884
5911
|
// 移除搜索按钮上的红点
|
|
5885
5912
|
// let crudService = scope.getComponentById("service_listview_" + event.data.objectName);
|
|
5886
5913
|
let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service");
|
|
@@ -6037,9 +6064,15 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
6037
6064
|
sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));
|
|
6038
6065
|
}
|
|
6039
6066
|
//触发amis crud 高度重算
|
|
6040
|
-
|
|
6041
|
-
|
|
6042
|
-
|
|
6067
|
+
doAction({
|
|
6068
|
+
"actionType": "broadcast",
|
|
6069
|
+
"args": {
|
|
6070
|
+
"eventName": "@height.changed.${objectSchema.name}"
|
|
6071
|
+
},
|
|
6072
|
+
"data": {
|
|
6073
|
+
"timeOut": 100
|
|
6074
|
+
}
|
|
6075
|
+
});
|
|
6043
6076
|
// ===END===
|
|
6044
6077
|
`;
|
|
6045
6078
|
return {
|
|
@@ -7745,13 +7778,16 @@ const filterService = filterForm.context.getComponents().find(function(n){
|
|
|
7745
7778
|
});
|
|
7746
7779
|
let toShowFieldsFilter = !!!filterService.props.data.showFieldsFilter;
|
|
7747
7780
|
filterService.setData({showFieldsFilter: toShowFieldsFilter});
|
|
7748
|
-
|
|
7749
|
-
|
|
7750
|
-
|
|
7751
|
-
|
|
7752
|
-
|
|
7753
|
-
}
|
|
7754
|
-
|
|
7781
|
+
//触发amis crud 高度重算
|
|
7782
|
+
doAction({
|
|
7783
|
+
"actionType": "broadcast",
|
|
7784
|
+
"args": {
|
|
7785
|
+
"eventName": "@height.changed." + event.data.objectName
|
|
7786
|
+
},
|
|
7787
|
+
"data": {
|
|
7788
|
+
"timeOut": 1000
|
|
7789
|
+
}
|
|
7790
|
+
});
|
|
7755
7791
|
// 手机端在显示搜索栏时隐藏crud上的刷新按钮,因为点击后crud高度显示有问题
|
|
7756
7792
|
let crudService = scope.getComponentById("service_listview_" + event.data.objectName);
|
|
7757
7793
|
crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
|
|
@@ -8115,12 +8151,16 @@ async function getObjectFilter(objectSchema, fields, options) {
|
|
|
8115
8151
|
return;
|
|
8116
8152
|
}
|
|
8117
8153
|
// 列表搜索栏字段值变更后立刻触发提交表单执行crud搜索,所以这里需要额外重算crud高度及筛选按钮红色星号图标显示隐藏
|
|
8118
|
-
|
|
8119
|
-
|
|
8120
|
-
|
|
8121
|
-
|
|
8122
|
-
|
|
8123
|
-
|
|
8154
|
+
//触发amis crud 高度重算
|
|
8155
|
+
doAction({
|
|
8156
|
+
"actionType": "broadcast",
|
|
8157
|
+
"args": {
|
|
8158
|
+
"eventName": "@height.changed.${objectSchema.name}"
|
|
8159
|
+
},
|
|
8160
|
+
"data": {
|
|
8161
|
+
"timeOut": 1000
|
|
8162
|
+
}
|
|
8163
|
+
});
|
|
8124
8164
|
resizeWindow();
|
|
8125
8165
|
const scope = event.context.scoped;
|
|
8126
8166
|
// let filterFormValues = event.data;
|
|
@@ -8432,7 +8472,7 @@ async function getObjectCRUD(objectSchema, fields, options){
|
|
|
8432
8472
|
|
|
8433
8473
|
if(body.columns && options.formFactor != 'SMALL'){
|
|
8434
8474
|
//将_display放入crud的columns的倒数第二列中(最后一列会影响固定列),可以通过setvalue修改行内数据域的_display,而不影响上层items的_display,用于批量编辑
|
|
8435
|
-
body.columns.splice(body.columns.length - 1, 0, {name: '_display',type: 'static', width: 32, placeholder: "",id: "_display_${_index}", className: "hidden"});
|
|
8475
|
+
body.columns.splice(body.columns.length - 1, 0, {name: '_display',type: 'static', width: 32, placeholder: "",id: objectSchema.name + "_display_${_index}", className: "hidden"});
|
|
8436
8476
|
}
|
|
8437
8477
|
|
|
8438
8478
|
if (defaults) {
|
|
@@ -8469,7 +8509,24 @@ async function getObjectCRUD(objectSchema, fields, options){
|
|
|
8469
8509
|
id: `service_${id}`,
|
|
8470
8510
|
name: `page`,
|
|
8471
8511
|
data: options.amisData,
|
|
8472
|
-
body: body
|
|
8512
|
+
body: body,
|
|
8513
|
+
//监听广播事件,重算crud高度
|
|
8514
|
+
onEvent: {
|
|
8515
|
+
[`@height.changed.${objectSchema.name}`]: {
|
|
8516
|
+
"actions": [
|
|
8517
|
+
{
|
|
8518
|
+
"actionType": "custom",
|
|
8519
|
+
"script": `
|
|
8520
|
+
var crudScoped = event.context.scoped.getComponentById('${body.id}');
|
|
8521
|
+
var timeOut = event.data.timeOut || 500;
|
|
8522
|
+
setTimeout(()=>{
|
|
8523
|
+
crudScoped && crudScoped.control.updateAutoFillHeight();
|
|
8524
|
+
}, timeOut);
|
|
8525
|
+
`
|
|
8526
|
+
}
|
|
8527
|
+
]
|
|
8528
|
+
}
|
|
8529
|
+
}
|
|
8473
8530
|
}
|
|
8474
8531
|
}
|
|
8475
8532
|
|
|
@@ -10368,6 +10425,8 @@ function getLookupSapceUserTreeSchema(isMobile){
|
|
|
10368
10425
|
_.each(children, (item) => {
|
|
10369
10426
|
if (item.children) {
|
|
10370
10427
|
item.children = getChildren(records, item.children)
|
|
10428
|
+
}else{
|
|
10429
|
+
item.children = [];
|
|
10371
10430
|
}
|
|
10372
10431
|
})
|
|
10373
10432
|
return children;
|
|
@@ -10722,6 +10781,14 @@ async function lookupToAmisPicker(field, readonly, ctx){
|
|
|
10722
10781
|
})
|
|
10723
10782
|
payload.data.rows = rows;
|
|
10724
10783
|
*/
|
|
10784
|
+
if(enable_tree){
|
|
10785
|
+
const rows = _.map(payload.data.rows, (item)=>{
|
|
10786
|
+
delete item.children;
|
|
10787
|
+
delete item.parent;
|
|
10788
|
+
return item;
|
|
10789
|
+
})
|
|
10790
|
+
payload.data.rows = rows;
|
|
10791
|
+
}
|
|
10725
10792
|
return payload;
|
|
10726
10793
|
}
|
|
10727
10794
|
if(!payload.data.rows){
|
|
@@ -10753,6 +10820,8 @@ async function lookupToAmisPicker(field, readonly, ctx){
|
|
|
10753
10820
|
_.each(children, (item)=>{
|
|
10754
10821
|
if(item.children){
|
|
10755
10822
|
item.children = getChildren(records, item.children)
|
|
10823
|
+
}else{
|
|
10824
|
+
item.children = [];
|
|
10756
10825
|
}
|
|
10757
10826
|
})
|
|
10758
10827
|
return children;
|
|
@@ -10807,7 +10876,7 @@ async function lookupToAmisPicker(field, readonly, ctx){
|
|
|
10807
10876
|
const isAllowCreate = refObjectConfig.permissions.allowCreate;
|
|
10808
10877
|
const isCreate = ___namespace.isBoolean(field.create) ? field.create : true;
|
|
10809
10878
|
// lookup字段配置过滤条件就强制不显示新建按钮
|
|
10810
|
-
let isHasFilters = (field.filters || field._filtersFunction) ? true : false;
|
|
10879
|
+
let isHasFilters = (field.filters || field.filtersFunction || field._filtersFunction) ? true : false;
|
|
10811
10880
|
if (isAllowCreate && isCreate && !isHasFilters) {
|
|
10812
10881
|
const new_button = await getSchema$5(refObjectConfig, { appId: ctx.appId, objectName: refObjectConfig.name, formFactor: ctx.formFactor });
|
|
10813
10882
|
new_button.align = "right";
|
|
@@ -11210,18 +11279,30 @@ async function lookupToAmis(field, readonly, ctx){
|
|
|
11210
11279
|
enableEnhancedLookup = true;
|
|
11211
11280
|
}
|
|
11212
11281
|
}
|
|
11282
|
+
let amisSchema;
|
|
11213
11283
|
// 默认使用下拉框模式显示lookup选项,只能配置了enable_enhanced_lookup才使用弹出增强模式
|
|
11214
11284
|
if(enableEnhancedLookup == true){
|
|
11215
|
-
|
|
11285
|
+
amisSchema = await lookupToAmisPicker(field, readonly, ctx);
|
|
11216
11286
|
}else if(refObject.enable_tree) {
|
|
11217
|
-
|
|
11287
|
+
amisSchema = await lookupToAmisTreeSelect(field, readonly, Object.assign({}, ctx, {
|
|
11218
11288
|
labelField: referenceTo.labelField?.name || 'name',
|
|
11219
11289
|
valueField: referenceTo.valueField?.name || '_id',
|
|
11220
11290
|
objectName: referenceTo.objectName
|
|
11221
11291
|
}));
|
|
11222
11292
|
}else {
|
|
11223
|
-
|
|
11293
|
+
amisSchema = await lookupToAmisSelect(field, readonly, ctx);
|
|
11294
|
+
}
|
|
11295
|
+
let refLookupPage = refObject.pages && refObject.pages.lookup;
|
|
11296
|
+
if(refLookupPage){
|
|
11297
|
+
if(refLookupPage.is_enable){
|
|
11298
|
+
let pageAmisSchema = refLookupPage.amis_schema;
|
|
11299
|
+
if(typeof pageAmisSchema == 'string'){
|
|
11300
|
+
pageAmisSchema = JSON.parse(pageAmisSchema);
|
|
11301
|
+
}
|
|
11302
|
+
amisSchema = ___namespace.defaultsDeep({}, pageAmisSchema, amisSchema);
|
|
11303
|
+
}
|
|
11224
11304
|
}
|
|
11305
|
+
return amisSchema;
|
|
11225
11306
|
}
|
|
11226
11307
|
|
|
11227
11308
|
async function lookupToAmisSelectUser(field, readonly, ctx){
|
|
@@ -11970,7 +12051,8 @@ async function convertSFieldToAmisField(field, readonly, ctx) {
|
|
|
11970
12051
|
},
|
|
11971
12052
|
pipeOut: (value, oldValue, data) => {
|
|
11972
12053
|
if(value){
|
|
11973
|
-
|
|
12054
|
+
const result = value/100;
|
|
12055
|
+
return Number(result.toFixed(field.scale+2));
|
|
11974
12056
|
}
|
|
11975
12057
|
return value;
|
|
11976
12058
|
},
|
|
@@ -12204,7 +12286,7 @@ async function convertSFieldToAmisField(field, readonly, ctx) {
|
|
|
12204
12286
|
if(field.is_wide || convertData.type === 'group'){
|
|
12205
12287
|
convertData.className = 'col-span-2 m-0';
|
|
12206
12288
|
}else {
|
|
12207
|
-
convertData.className = 'm-
|
|
12289
|
+
convertData.className = 'm-1';
|
|
12208
12290
|
}
|
|
12209
12291
|
if(readonly){
|
|
12210
12292
|
convertData.className = `${convertData.className} border-b`;
|
|
@@ -12609,8 +12691,8 @@ async function getFormBody(permissionFields, formFields, ctx){
|
|
|
12609
12691
|
/*
|
|
12610
12692
|
* @Author: 殷亮辉 yinlianghui@hotoa.com
|
|
12611
12693
|
* @Date: 2023-11-15 09:50:22
|
|
12612
|
-
* @LastEditors:
|
|
12613
|
-
* @LastEditTime: 2024-01-
|
|
12694
|
+
* @LastEditors: liaodaxue
|
|
12695
|
+
* @LastEditTime: 2024-01-09 18:12:28
|
|
12614
12696
|
*/
|
|
12615
12697
|
|
|
12616
12698
|
/**
|
|
@@ -12650,6 +12732,7 @@ function getInputTableCell(field, showAsInlineEditMode) {
|
|
|
12650
12732
|
"config": Object.assign({}, field, {
|
|
12651
12733
|
label: false
|
|
12652
12734
|
}),
|
|
12735
|
+
inInputTable: true,
|
|
12653
12736
|
"static": true,
|
|
12654
12737
|
"readonly": true,
|
|
12655
12738
|
label: field.label,
|