@steedos-widgets/amis-lib 6.3.12-beta.13 → 6.3.12-beta.15
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 +58 -6
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +58 -6
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +14 -13
- package/dist/index.umd.js.map +1 -1
- package/package.json +2 -2
package/dist/index.esm.js
CHANGED
|
@@ -1868,7 +1868,6 @@ async function getQuickEditSchema(object, columnField, options){
|
|
|
1868
1868
|
{
|
|
1869
1869
|
actionType: "custom",
|
|
1870
1870
|
script: `
|
|
1871
|
-
console.log("asdasd");
|
|
1872
1871
|
let items = _.cloneDeep(event.data.items);
|
|
1873
1872
|
let selectedItems = _.cloneDeep(event.data.selectedItems);
|
|
1874
1873
|
if(event.data.isBatchEdit){
|
|
@@ -3409,6 +3408,11 @@ async function getTableApi(mainObject, fields, options){
|
|
|
3409
3408
|
}, 600);
|
|
3410
3409
|
}
|
|
3411
3410
|
}
|
|
3411
|
+
|
|
3412
|
+
// 列表搜索和快速搜索,有时在某些操作情况下还是会造成crud接口请求使用的过滤条件是上次的,这里强制把正确的过滤条件返回到crud,详细规则见:https://github.com/steedos/steedos-platform/issues/7112
|
|
3413
|
+
// lookup字段的弹出列表搜索不受这里影响,因为lookup字段的弹出列表搜索是单独的接口请求
|
|
3414
|
+
payload.data.__changedFilterFormValues = api.context.__changedFilterFormValues;
|
|
3415
|
+
payload.data.__changedSearchBoxValues = api.context.__changedSearchBoxValues;
|
|
3412
3416
|
${options.adaptor || ''}
|
|
3413
3417
|
return payload;
|
|
3414
3418
|
`;
|
|
@@ -6140,6 +6144,8 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
6140
6144
|
if (!ctx) {
|
|
6141
6145
|
ctx = {};
|
|
6142
6146
|
}
|
|
6147
|
+
const searchableFields = ctx.searchable_fields;
|
|
6148
|
+
const autoOpenFilter = !!ctx.auto_open_filter;
|
|
6143
6149
|
const btnSearchId = "btn_filter_form_search_" + new Date().getTime();
|
|
6144
6150
|
const filterFormSchema = await getObjectFieldsFilterFormSchema(ctx);
|
|
6145
6151
|
const keywordsSearchBoxName = ctx.keywordsSearchBoxName || "__keywords";
|
|
@@ -6153,6 +6159,8 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
6153
6159
|
});
|
|
6154
6160
|
// 使用filterForm.getValues()的话,并不能拿到本地存储中的过滤条件,所以需要从event.data中取,因为本地存储中的过滤条件自动填充到表单上时filterForm.getValues()拿不到。
|
|
6155
6161
|
let filterFormValues = event.data;
|
|
6162
|
+
filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据
|
|
6163
|
+
const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});
|
|
6156
6164
|
// 同步__changedFilterFormValues中的值
|
|
6157
6165
|
// crud && crud.setData({__changedFilterFormValues: {}});
|
|
6158
6166
|
let __changedFilterFormValuesKey = "__changedFilterFormValues";
|
|
@@ -6165,7 +6173,7 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
6165
6173
|
}
|
|
6166
6174
|
if(crud){
|
|
6167
6175
|
let crudData = crud.getData();
|
|
6168
|
-
crudData[__changedFilterFormValuesKey] =
|
|
6176
|
+
crudData[__changedFilterFormValuesKey] = changedFilterFormValues;
|
|
6169
6177
|
crud.setData(crudData);
|
|
6170
6178
|
}
|
|
6171
6179
|
filterForm.handleFormSubmit(event);
|
|
@@ -6307,6 +6315,8 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
6307
6315
|
crudService && crudService.setData({isFieldsFilterEmpty: true, showFieldsFilter: false});
|
|
6308
6316
|
`;
|
|
6309
6317
|
const dataProviderInited = `
|
|
6318
|
+
const searchableFields = ${JSON.stringify(searchableFields)};
|
|
6319
|
+
const autoOpenFilter = ${autoOpenFilter};
|
|
6310
6320
|
const objectName = data.objectName;
|
|
6311
6321
|
const isLookup = data.isLookup;
|
|
6312
6322
|
const listName = data.listName;
|
|
@@ -6319,6 +6329,11 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
6319
6329
|
if(defaultSearchableFields){
|
|
6320
6330
|
defaultSearchableFields = defaultSearchableFields.split(",");
|
|
6321
6331
|
}
|
|
6332
|
+
if(_.isEmpty(defaultSearchableFields) && searchableFields){
|
|
6333
|
+
if(searchableFields.length){
|
|
6334
|
+
defaultSearchableFields = _.map(searchableFields, 'field');
|
|
6335
|
+
}
|
|
6336
|
+
}
|
|
6322
6337
|
if(_.isEmpty(defaultSearchableFields) && data.uiSchema){
|
|
6323
6338
|
let listView = data.uiSchema.list_views[data.listName];
|
|
6324
6339
|
const sFields = listView && listView.searchable_fields;
|
|
@@ -6337,7 +6352,7 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
|
|
|
6337
6352
|
setData({ filterFormSearchableFields: defaultSearchableFields });
|
|
6338
6353
|
if(isLookup){
|
|
6339
6354
|
// looup字段过滤器不在本地缓存记住过滤条件,所以初始始终隐藏过滤器
|
|
6340
|
-
setData({ showFieldsFilter:
|
|
6355
|
+
setData({ showFieldsFilter: autoOpenFilter });
|
|
6341
6356
|
}
|
|
6342
6357
|
else{
|
|
6343
6358
|
const listViewPropsStoreKey = location.pathname + "/crud";
|
|
@@ -8928,7 +8943,6 @@ function getObjectHeaderQuickSearchBox(mainObject, fields, formFactor, { isLooku
|
|
|
8928
8943
|
}
|
|
8929
8944
|
|
|
8930
8945
|
const onChangeScript = `
|
|
8931
|
-
// console.log("==search=onChangeScript===");
|
|
8932
8946
|
const scope = event.context.scoped;
|
|
8933
8947
|
let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");
|
|
8934
8948
|
// let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});
|
|
@@ -9299,8 +9313,26 @@ async function getObjectFilter(objectSchema, fields, options) {
|
|
|
9299
9313
|
let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");
|
|
9300
9314
|
// 使用event.data的话,并不能拿到本地存储中的过滤条件,所以需要从filterFormService中取。
|
|
9301
9315
|
let filterFormValues = filterFormService.getData();
|
|
9316
|
+
filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据
|
|
9302
9317
|
let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);
|
|
9303
9318
|
let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");
|
|
9319
|
+
const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});
|
|
9320
|
+
// 这里不用crudService而用crud是因为lookup字段弹出的列表中的crudService中的变量无法传入crud的发送适配器中
|
|
9321
|
+
// crud && crud.setData({__changedFilterFormValues: changedFilterFormValues});
|
|
9322
|
+
let __changedFilterFormValuesKey = "__changedFilterFormValues";
|
|
9323
|
+
if(isLookup && __lookupField){
|
|
9324
|
+
let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;
|
|
9325
|
+
if(__lookupField.reference_to_field){
|
|
9326
|
+
lookupTag += "__" + __lookupField.reference_to_field;
|
|
9327
|
+
}
|
|
9328
|
+
__changedFilterFormValuesKey += lookupTag;
|
|
9329
|
+
}
|
|
9330
|
+
if(crud){
|
|
9331
|
+
let crudData = crud.getData();
|
|
9332
|
+
crudData[__changedFilterFormValuesKey] = changedFilterFormValues;
|
|
9333
|
+
crud.setData(crudData);
|
|
9334
|
+
}
|
|
9335
|
+
|
|
9304
9336
|
let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});
|
|
9305
9337
|
crudService && crudService.setData({isFieldsFilterEmpty});
|
|
9306
9338
|
`;
|
|
@@ -11881,6 +11913,9 @@ async function lookupToAmisPicker(field, readonly, ctx){
|
|
|
11881
11913
|
ctx.idFieldName = refObjectConfig.idFieldName;
|
|
11882
11914
|
ctx.objectName = refObjectConfig.name;
|
|
11883
11915
|
|
|
11916
|
+
// 是否显示lookup字段左侧的过滤器(如果有的话),默认为true,目前只有lookup选人字段有左侧树过滤器
|
|
11917
|
+
const showLeftFilter = field.show_left_filter !== false;
|
|
11918
|
+
|
|
11884
11919
|
let tableFields = [];
|
|
11885
11920
|
const searchableFields = [];
|
|
11886
11921
|
|
|
@@ -12212,6 +12247,20 @@ async function lookupToAmisPicker(field, readonly, ctx){
|
|
|
12212
12247
|
});
|
|
12213
12248
|
payload.data.rows = updatedResult;
|
|
12214
12249
|
}
|
|
12250
|
+
let __changedFilterFormValuesKey = "__changedFilterFormValues";
|
|
12251
|
+
let __lookupField = api.data.$self.__lookupField;
|
|
12252
|
+
if(__lookupField){
|
|
12253
|
+
let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;
|
|
12254
|
+
if(__lookupField.reference_to_field){
|
|
12255
|
+
lookupTag += "__" + __lookupField.reference_to_field;
|
|
12256
|
+
}
|
|
12257
|
+
__changedFilterFormValuesKey += lookupTag;
|
|
12258
|
+
}
|
|
12259
|
+
let __changedFilterFormValues = api.context[__changedFilterFormValuesKey] || {};
|
|
12260
|
+
let __changedSearchBoxValues = api.context.__changedSearchBoxValues || {};
|
|
12261
|
+
// 列表搜索和快速搜索,有时在某些操作情况下还是会造成crud接口请求使用的过滤条件是上次的,这里强制把正确的过滤条件返回到crud,详细规则见:https://github.com/steedos/steedos-platform/issues/7112
|
|
12262
|
+
payload.data[__changedFilterFormValuesKey] = __changedFilterFormValues;
|
|
12263
|
+
payload.data.__changedSearchBoxValues = __changedSearchBoxValues;
|
|
12215
12264
|
return payload;
|
|
12216
12265
|
`;
|
|
12217
12266
|
if(field.optionsFunction || field._optionsFunction){
|
|
@@ -12247,7 +12296,7 @@ async function lookupToAmisPicker(field, readonly, ctx){
|
|
|
12247
12296
|
|
|
12248
12297
|
pickerSchema.headerToolbar = getObjectHeaderToolbar(refObjectConfig, fieldsArr, ctx.formFactor, { isLookup: true, keywordsSearchBoxName });
|
|
12249
12298
|
|
|
12250
|
-
if(referenceTo.objectName === "space_users" && field.reference_to_field === "user"){
|
|
12299
|
+
if(referenceTo.objectName === "space_users" && field.reference_to_field === "user" && showLeftFilter){
|
|
12251
12300
|
pickerSchema.headerToolbar.push(getLookupSapceUserTreeSchema(isMobile));
|
|
12252
12301
|
pickerSchema.className = pickerSchema.className || "" + " steedos-select-user";
|
|
12253
12302
|
}
|
|
@@ -12267,7 +12316,10 @@ async function lookupToAmisPicker(field, readonly, ctx){
|
|
|
12267
12316
|
pickerSchema.filter = await getObjectFilter(refObjectConfig, fields, {
|
|
12268
12317
|
...ctx,
|
|
12269
12318
|
isLookup: true,
|
|
12270
|
-
keywordsSearchBoxName
|
|
12319
|
+
keywordsSearchBoxName,
|
|
12320
|
+
searchable_fields: field.searchable_fields,
|
|
12321
|
+
auto_open_filter: field.auto_open_filter,
|
|
12322
|
+
show_left_filter: field.show_left_filter
|
|
12271
12323
|
});
|
|
12272
12324
|
}
|
|
12273
12325
|
pickerSchema.data = Object.assign({}, pickerSchema.data, {
|