@steedos-widgets/sortable 3.6.0-beta.5 → 3.6.0-beta.6

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.
@@ -22790,7 +22790,7 @@
22790
22790
  // crud && crud.setData({__changedFilterFormValues: {}});
22791
22791
  let __changedFilterFormValuesKey = "__changedFilterFormValues";
22792
22792
  if(isLookup && __lookupField){
22793
- let lookupTag = "__" + __lookupField.name + "__" + __lookupField.reference_to;
22793
+ let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;
22794
22794
  if(__lookupField.reference_to_field){
22795
22795
  lookupTag += "__" + __lookupField.reference_to_field;
22796
22796
  }
@@ -24289,7 +24289,7 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
24289
24289
  let __lookupField = event.data.__lookupField;
24290
24290
  let __changedFilterFormValuesKey = "__changedFilterFormValues";
24291
24291
  if(isLookup && __lookupField){
24292
- let lookupTag = "__" + __lookupField.name + "__" + __lookupField.reference_to;
24292
+ let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;
24293
24293
  if(__lookupField.reference_to_field){
24294
24294
  lookupTag += "__" + __lookupField.reference_to_field;
24295
24295
  }
@@ -24601,13 +24601,13 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
24601
24601
  let onChangeScript = `
24602
24602
  let isLookup = event.data.isLookup;
24603
24603
  let __lookupField = event.data.__lookupField;
24604
- console.log("==onChangeScript=isLookup===", isLookup);
24605
24604
  const scope = event.context.scoped;
24606
24605
  // let filterFormValues = event.data;
24607
24606
  let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");
24608
24607
  let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");
24609
24608
  // 使用event.data的话,并不能拿到本地存储中的过滤条件,所以需要从filterFormService中取。
24610
24609
  let filterFormValues = filterFormService.getData();
24610
+ filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据
24611
24611
  let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");
24612
24612
  const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});;
24613
24613
  // let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service");
@@ -24616,7 +24616,7 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
24616
24616
  // crud && crud.setData({__changedFilterFormValues: changedFilterFormValues});
24617
24617
  let __changedFilterFormValuesKey = "__changedFilterFormValues";
24618
24618
  if(isLookup && __lookupField){
24619
- let lookupTag = "__" + __lookupField.name + "__" + __lookupField.reference_to;
24619
+ let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;
24620
24620
  if(__lookupField.reference_to_field){
24621
24621
  lookupTag += "__" + __lookupField.reference_to_field;
24622
24622
  }
@@ -25229,6 +25229,58 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
25229
25229
  }
25230
25230
 
25231
25231
  function getLookupSapceUserTreeSchema(isMobile){
25232
+ let apiAdaptor = `
25233
+ // console.log("===getLookupSapceUserTreeSchema===", JSON.stringify(payload));
25234
+ const records = payload.data.options;
25235
+ let isTreeOptionsComputed = false;
25236
+ if(records.length === 1 && records[0].children){
25237
+ isTreeOptionsComputed = true;
25238
+ }
25239
+ if(isTreeOptionsComputed){
25240
+ return payload;
25241
+ }
25242
+ const treeRecords = [];
25243
+ const getChildren = (records, childrenIds) => {
25244
+ if (!childrenIds) {
25245
+ return;
25246
+ }
25247
+ const children = _.filter(records, (record) => {
25248
+ return _.includes(childrenIds, record.value)
25249
+ });
25250
+ _.each(children, (item) => {
25251
+ if (item.children) {
25252
+ item.children = getChildren(records, item.children)
25253
+ }
25254
+ })
25255
+ return children;
25256
+ }
25257
+
25258
+ const getRoot = (records) => {
25259
+ for (var i = 0; i < records.length; i++) {
25260
+ records[i].noParent = 0;
25261
+ if (!!records[i].parent) {
25262
+ biaozhi = 1
25263
+ for (var j = 0; j < records.length; j++) {
25264
+ if (records[i].parent == records[j].value)
25265
+ biaozhi = 0;
25266
+ }
25267
+ if (biaozhi == 1) records[i].noParent = 1;
25268
+ } else records[i].noParent = 1;
25269
+ }
25270
+ }
25271
+ getRoot(records);
25272
+ console.log(records)
25273
+
25274
+ _.each(records, (record) => {
25275
+ if (record.noParent == 1) {
25276
+ treeRecords.push(Object.assign({}, record, { children: getChildren(records, record.children) }));
25277
+ }
25278
+ });
25279
+ console.log(treeRecords)
25280
+
25281
+ payload.data.options = treeRecords;
25282
+ return payload;
25283
+ `;
25232
25284
  const treeSchema = {
25233
25285
  "type": "input-tree",
25234
25286
  "className":"steedos-select-user-tree",
@@ -25239,8 +25291,7 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
25239
25291
  "headers": {
25240
25292
  "Authorization": "Bearer ${context.tenantId},${context.authToken}"
25241
25293
  },
25242
- "adaptor": "if (payload.data.treeCache == true) {\n return payload;\n }\n const records = payload.data.options;\n const treeRecords = [];\n const getChildren = (records, childrenIds) => {\n if (!childrenIds) {\n return;\n }\n const children = _.filter(records, (record) => {\n return _.includes(childrenIds, record.value)\n });\n _.each(children, (item) => {\n if (item.children) {\n item.children = getChildren(records, item.children)\n }\n })\n return children;\n }\n\n const getRoot = (records) => {\n for (var i = 0; i < records.length; i++){\n records[i].noParent = 0;\n if (!!records[i].parent) {\n biaozhi = 1\n for (var j = 0; j < records.length; j++){\n if (records[i].parent == records[j].value)\n biaozhi = 0;\n }\n if (biaozhi == 1) records[i].noParent = 1;\n } else records[i].noParent = 1;\n }\n }\n getRoot(records);\n console.log(records)\n\n _.each(records, (record) => {\n if (record.noParent ==1) {\n treeRecords.push(Object.assign({}, record, { children: getChildren(records, record.children) }));\n }\n });\n console.log(treeRecords)\n\n payload.data.options = treeRecords;\n payload.data.treeCache = true;\n return payload;\n ",
25243
- "requestAdaptor": "\n ",
25294
+ "adaptor": apiAdaptor,
25244
25295
  "data": {
25245
25296
  "query": "{options:organizations(filters:[\"hidden\", \"!=\", true],sort:\"sort_no desc\"){value:_id label:name,parent,children}}"
25246
25297
  },
@@ -25444,7 +25495,7 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
25444
25495
  let __changedFilterFormValuesKey = "__changedFilterFormValues";
25445
25496
  let __lookupField = api.data.$self.__lookupField;
25446
25497
  if(__lookupField){
25447
- let lookupTag = "__" + __lookupField.name + "__" + __lookupField.reference_to;
25498
+ let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;
25448
25499
  if(__lookupField.reference_to_field){
25449
25500
  lookupTag += "__" + __lookupField.reference_to_field;
25450
25501
  }
@@ -26041,10 +26092,11 @@ crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
26041
26092
  let enableEnhancedLookup = lodash.exports.isBoolean(field.enable_enhanced_lookup) ? field.enable_enhanced_lookup : refObject.enable_enhanced_lookup;
26042
26093
  let amisVersion = getComparableAmisVersion();
26043
26094
  if(amisVersion >= 3.6){
26044
- // amis 3.6.3单选的树picker有严重bug(https://github.com/baidu/amis/issues/9279),先强制使用下拉方式显示
26045
- // amis 3.6.3多选的树会自动把下层节点,及下下层等所有子节点自动选中,跟amis 3.2不一样,而且目前没有开关,这不适合目前的业务场景,也先强制使用下拉方式显示
26046
- if(enableEnhancedLookup && refObject.enable_tree){
26047
- enableEnhancedLookup = false;
26095
+ // amis 3.6.3单选和多选的树picker都有bug(https://github.com/baidu/amis/issues/9279,https://github.com/baidu/amis/issues/9295),我们改amis源码修正了
26096
+ // amis 3.6.3多选的下拉树组件有bug,多选树字段的选中值在编辑模式展开树时不会自动勾选树里面的节点,而是始终勾选显示在最外面的选中值选项(即defaultValueOptions),amis 3.2没有这个问题
26097
+ // 这里强制禁用多选下拉树,统一改为弹出树,如果以后需要下拉树功能,可以把下拉树组件改为一次性加载所有树节点数据模式来跳过这个问题
26098
+ if(!enableEnhancedLookup && refObject.enable_tree && field.multiple){
26099
+ enableEnhancedLookup = true;
26048
26100
  }
26049
26101
  }
26050
26102
  // 默认使用下拉框模式显示lookup选项,只能配置了enable_enhanced_lookup才使用弹出增强模式
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steedos-widgets/sortable",
3
- "version": "3.6.0-beta.5",
3
+ "version": "3.6.0-beta.6",
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": "3.6.0-beta.5"
48
+ "@steedos-widgets/amis-lib": "3.6.0-beta.6"
49
49
  },
50
- "gitHead": "7babba3c01fe0aa4410cdc834c862774d4c59824"
50
+ "gitHead": "11c3240e1faf4d5ae87634df9b6777268bd08c6f"
51
51
  }