@steedos-widgets/sortable 1.3.4-beta.18 → 1.3.4-beta.20

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.
@@ -21518,7 +21518,8 @@
21518
21518
  if(isLookup){
21519
21519
  searchableFieldsStoreKey += "/lookup/" + objectName;
21520
21520
  }
21521
- let defaultSearchableFields = sessionStorage.getItem(searchableFieldsStoreKey);
21521
+ searchableFieldsStoreKey = searchableFieldsStoreKey + "/" + (data.context && data.context.userId);
21522
+ let defaultSearchableFields = localStorage.getItem(searchableFieldsStoreKey);
21522
21523
  if(defaultSearchableFields){
21523
21524
  defaultSearchableFields = defaultSearchableFields.split(",");
21524
21525
  }
@@ -21587,7 +21588,8 @@
21587
21588
  if(isLookup){
21588
21589
  searchableFieldsStoreKey += "/lookup/" + objectName;
21589
21590
  }
21590
- sessionStorage.setItem(searchableFieldsStoreKey, value);
21591
+ searchableFieldsStoreKey = searchableFieldsStoreKey + "/" + (data.context && data.context.userId);
21592
+ localStorage.setItem(searchableFieldsStoreKey, value);
21591
21593
 
21592
21594
  // ===START===:当变更可搜索字段时,如果被移除的可搜索字段在本地存储中已经存入过滤条件中则应该清除本地存储中相关字段的过滤条件。
21593
21595
  const searchableFields = data.fields;
@@ -24178,10 +24180,10 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
24178
24180
 
24179
24181
  const refObject = await getUISchema(referenceTo.objectName);
24180
24182
 
24181
- // 此处不参考 steedos 的 enable_enhanced_lookup 规则. 如果默认是开启弹出选择,用户选择过程操作太繁琐, 所以默认是关闭弹出选择.
24182
- // 由于amis picker 目前不支持联动, 配置了depend_on时, 使用使用select ,以支持联动
24183
- // TODO: 确认 amis picker 支持联动时, 清理field.depend_on判断
24184
- if(refObject.enable_enhanced_lookup == true){
24183
+ // 优先取字段中配置的enable_enhanced_lookup,字段上没配置时,才从对象上取enable_enhanced_lookup属性
24184
+ let enableEnhancedLookup = lodash.exports.isBoolean(field.enable_enhanced_lookup) ? field.enable_enhanced_lookup : refObject.enable_enhanced_lookup;
24185
+ // 默认使用下拉框模式显示lookup选项,只能配置了enable_enhanced_lookup才使用弹出增强模式
24186
+ if(enableEnhancedLookup == true){
24185
24187
  return await lookupToAmisPicker(field, readonly, ctx);
24186
24188
  }else if(refObject.enable_tree) {
24187
24189
  return await lookupToAmisTreeSelect(field, readonly, Object.assign({}, ctx, {
@@ -25307,8 +25309,44 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
25307
25309
  };
25308
25310
 
25309
25311
  async function getQuickEditSchema(field, options){
25312
+ //判断在amis3.2以上环境下,放开批量编辑
25313
+ const isAmisVersionforBatchEdit = amisRequire('amis').version[0] >= 3 && amisRequire('amis').version[2] >= 2;
25310
25314
  const quickEditId = options.objectName + "_" + field.name + "QuickEdit";//定义快速编辑的表单id,用于setvalue传值
25311
25315
  var quickEditSchema = { body: [], id: quickEditId };
25316
+ //select,avatar,image,file等组件无法行记录字段赋值,暂不支持批量编辑;
25317
+ if(field.type != 'avatar' && field.type != 'image' && field.type != 'file' && isAmisVersionforBatchEdit){
25318
+ const submitEvent = {
25319
+ submit: {
25320
+ actions: [
25321
+ {
25322
+ actionType: "custom",
25323
+ script: `
25324
+ const items = event.data.items;
25325
+ const selectedItems = event.data.selectedItems;
25326
+ if(event.data.isBatchEdit){
25327
+ selectedItems.forEach(function(selectedItem){
25328
+ items[selectedItem._index-1]._display.${field.name} = event.data._display.${field.name};
25329
+ })
25330
+ doAction({actionType: 'setValue', "args": {"value": {items}},componentId: "${options.crudId}","dataMergeMode": "override"});
25331
+ selectedItems.forEach(function(selectedItem){
25332
+ doAction({actionType: 'setValue', "args": {"value": event.data.${field.name}},componentId: "${options.objectName + "_" + field.name + "_"}" + selectedItem._index});
25333
+ })
25334
+ }else{
25335
+ items[event.data._index-1]._display.${field.name} = event.data._display.${field.name};
25336
+ doAction({actionType: 'setValue', "args": {"value": {items}},componentId: "${options.crudId}","dataMergeMode": "override"});
25337
+ doAction({actionType: 'setValue', "args": {"value": event.data.${field.name}},componentId: "${options.objectName + "_" + field.name + "_"}" + event.data._index});
25338
+ }
25339
+ `
25340
+ },
25341
+ {
25342
+ "actionType": "closeDialog"
25343
+ }
25344
+ ]
25345
+ }
25346
+ };
25347
+ quickEditSchema.onEvent = submitEvent;
25348
+ }
25349
+
25312
25350
  if (field.disabled) {
25313
25351
  quickEditSchema = false;
25314
25352
  } else {
@@ -25542,6 +25580,14 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
25542
25580
  }
25543
25581
 
25544
25582
  });
25583
+ if(field.type != 'avatar' && field.type != 'image' && field.type != 'file' && isAmisVersionforBatchEdit){
25584
+ quickEditSchema.body.push({
25585
+ "name": "isBatchEdit",
25586
+ "type": "checkbox",
25587
+ "option": "更新${COUNT(selectedItems)}个选定记录",
25588
+ "visibleOn": "${ARRAYSOME(selectedItems, item => item._id === _id) && COUNT(selectedItems)>1}"
25589
+ });
25590
+ }
25545
25591
  } else {
25546
25592
  quickEditSchema = false;
25547
25593
  }
@@ -25654,7 +25700,7 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
25654
25700
  else if(field.type === 'select'){
25655
25701
  const map = getSelectMap(field.options);
25656
25702
  columnItem = Object.assign({}, {
25657
- type: "mapping",
25703
+ type: "static-mapping",
25658
25704
  name: field.name,
25659
25705
  label: field.label,
25660
25706
  map: map,
@@ -25669,7 +25715,7 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
25669
25715
  const tpl = await getFieldTpl(field, options);
25670
25716
  let type = 'text';
25671
25717
  if(tpl){
25672
- type = 'tpl';
25718
+ type = 'static';
25673
25719
  }else if(field.type === 'html'){
25674
25720
  type = 'markdown';
25675
25721
  }else if(field.type === 'url'){
@@ -25710,6 +25756,7 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
25710
25756
  columnItem.quickEdit = quickEditSchema;
25711
25757
  columnItem.quickEditEnabledOn = "${is_system !== true}";
25712
25758
  }
25759
+ columnItem.id = `${options.objectName}_${field.name}_\${_index}`;
25713
25760
  columns.push(columnItem);
25714
25761
  }
25715
25762
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steedos-widgets/sortable",
3
- "version": "1.3.4-beta.18",
3
+ "version": "1.3.4-beta.20",
4
4
  "main": "dist/sortable.cjs.js",
5
5
  "module": "dist/sortable.esm.js",
6
6
  "unpkg": "dist/sortable.umd.js",
@@ -45,7 +45,7 @@
45
45
  "dependencies": {
46
46
  "@dnd-kit/core": "^6.0.5",
47
47
  "@dnd-kit/sortable": "^7.0.1",
48
- "@steedos-widgets/amis-lib": "1.3.4-beta.18"
48
+ "@steedos-widgets/amis-lib": "1.3.4-beta.20"
49
49
  },
50
- "gitHead": "8c6b4e9d5fd3c92df4d077cd3d1f781004a36031"
50
+ "gitHead": "c334418a3b026295a5e9eaf0f1ba89485b8b3efd"
51
51
  }