@steedos-widgets/amis-lib 6.3.12-beta.14 → 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/index.esm.js CHANGED
@@ -6144,6 +6144,8 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
6144
6144
  if (!ctx) {
6145
6145
  ctx = {};
6146
6146
  }
6147
+ const searchableFields = ctx.searchable_fields;
6148
+ const autoOpenFilter = !!ctx.auto_open_filter;
6147
6149
  const btnSearchId = "btn_filter_form_search_" + new Date().getTime();
6148
6150
  const filterFormSchema = await getObjectFieldsFilterFormSchema(ctx);
6149
6151
  const keywordsSearchBoxName = ctx.keywordsSearchBoxName || "__keywords";
@@ -6313,6 +6315,8 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
6313
6315
  crudService && crudService.setData({isFieldsFilterEmpty: true, showFieldsFilter: false});
6314
6316
  `;
6315
6317
  const dataProviderInited = `
6318
+ const searchableFields = ${JSON.stringify(searchableFields)};
6319
+ const autoOpenFilter = ${autoOpenFilter};
6316
6320
  const objectName = data.objectName;
6317
6321
  const isLookup = data.isLookup;
6318
6322
  const listName = data.listName;
@@ -6325,6 +6329,11 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
6325
6329
  if(defaultSearchableFields){
6326
6330
  defaultSearchableFields = defaultSearchableFields.split(",");
6327
6331
  }
6332
+ if(_.isEmpty(defaultSearchableFields) && searchableFields){
6333
+ if(searchableFields.length){
6334
+ defaultSearchableFields = _.map(searchableFields, 'field');
6335
+ }
6336
+ }
6328
6337
  if(_.isEmpty(defaultSearchableFields) && data.uiSchema){
6329
6338
  let listView = data.uiSchema.list_views[data.listName];
6330
6339
  const sFields = listView && listView.searchable_fields;
@@ -6343,7 +6352,7 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
6343
6352
  setData({ filterFormSearchableFields: defaultSearchableFields });
6344
6353
  if(isLookup){
6345
6354
  // looup字段过滤器不在本地缓存记住过滤条件,所以初始始终隐藏过滤器
6346
- setData({ showFieldsFilter: false });
6355
+ setData({ showFieldsFilter: autoOpenFilter });
6347
6356
  }
6348
6357
  else{
6349
6358
  const listViewPropsStoreKey = location.pathname + "/crud";
@@ -11904,6 +11913,9 @@ async function lookupToAmisPicker(field, readonly, ctx){
11904
11913
  ctx.idFieldName = refObjectConfig.idFieldName;
11905
11914
  ctx.objectName = refObjectConfig.name;
11906
11915
 
11916
+ // 是否显示lookup字段左侧的过滤器(如果有的话),默认为true,目前只有lookup选人字段有左侧树过滤器
11917
+ const showLeftFilter = field.show_left_filter !== false;
11918
+
11907
11919
  let tableFields = [];
11908
11920
  const searchableFields = [];
11909
11921
 
@@ -12284,7 +12296,7 @@ async function lookupToAmisPicker(field, readonly, ctx){
12284
12296
 
12285
12297
  pickerSchema.headerToolbar = getObjectHeaderToolbar(refObjectConfig, fieldsArr, ctx.formFactor, { isLookup: true, keywordsSearchBoxName });
12286
12298
 
12287
- if(referenceTo.objectName === "space_users" && field.reference_to_field === "user"){
12299
+ if(referenceTo.objectName === "space_users" && field.reference_to_field === "user" && showLeftFilter){
12288
12300
  pickerSchema.headerToolbar.push(getLookupSapceUserTreeSchema(isMobile));
12289
12301
  pickerSchema.className = pickerSchema.className || "" + " steedos-select-user";
12290
12302
  }
@@ -12304,7 +12316,10 @@ async function lookupToAmisPicker(field, readonly, ctx){
12304
12316
  pickerSchema.filter = await getObjectFilter(refObjectConfig, fields, {
12305
12317
  ...ctx,
12306
12318
  isLookup: true,
12307
- 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
12308
12323
  });
12309
12324
  }
12310
12325
  pickerSchema.data = Object.assign({}, pickerSchema.data, {