@steedos-widgets/sortable 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.
@@ -54948,11 +54948,11 @@ async function getQuickEditSchema(field, options){
54948
54948
  if(event.data.isBatchEdit){
54949
54949
  selectedItems.forEach(function(selectedItem){
54950
54950
  selectedItem._display.${field.name} = event.data._display.${field.name};
54951
- doAction({actionType: 'setValue', "args": {"value": selectedItem._display},componentId: "_display_" + selectedItem._index});
54951
+ doAction({actionType: 'setValue', "args": {"value": selectedItem._display},componentId: ${options.objectName} + "_display_" + selectedItem._index});
54952
54952
  doAction({actionType: 'setValue', "args": {"value": event.data.${field.name}},componentId: "${options.objectName + "_" + field.name + "_"}" + selectedItem._index});
54953
54953
  })
54954
54954
  }else{
54955
- doAction({actionType: 'setValue', "args": {"value": event.data._display},componentId: "_display_" + event.data._index});
54955
+ doAction({actionType: 'setValue', "args": {"value": event.data._display},componentId: ${options.objectName} + "_display_" + event.data._index});
54956
54956
  doAction({actionType: 'setValue', "args": {"value": event.data.${field.name}},componentId: "${options.objectName + "_" + field.name + "_"}" + event.data._index});
54957
54957
  }
54958
54958
  `
@@ -54982,7 +54982,6 @@ async function getQuickEditSchema(field, options){
54982
54982
  {
54983
54983
  "actionType": "custom",
54984
54984
  "script": `
54985
-
54986
54985
  var _display = _.cloneDeep(event.data._display);
54987
54986
  ${displayField}
54988
54987
  doAction({actionType: 'setValue', "args": {"value": {_display}},componentId: "${quickEditId}"});
@@ -55153,6 +55152,23 @@ async function getQuickEditSchema(field, options){
55153
55152
  "onEvent":{
55154
55153
  "init":{
55155
55154
  "actions":[
55155
+ //amis3.6无法从数据域中直接拿到正确的selectitems,需要通过crud组件的getSelected()函数获取
55156
+ {
55157
+ "actionType": "custom",
55158
+ "script": `
55159
+ crudScoped = event.context.scoped.getComponentById('${options.crudId}');
55160
+ const selectedItems = crudScoped && crudScoped.control.getSelected();
55161
+ doAction({
55162
+ "componentId": "${quickEditId}",
55163
+ "actionType": "setValue",
55164
+ "args": {
55165
+ "value": {
55166
+ selectedItems
55167
+ }
55168
+ }
55169
+ });
55170
+ `
55171
+ },
55156
55172
  {
55157
55173
  "actionType": "setValue",
55158
55174
  "componentId": quickEditId,
@@ -56404,12 +56420,16 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
56404
56420
  // }
56405
56421
  // listView.handleFilterSubmit(Object.assign({}, removedValues, filterFormValues));
56406
56422
  // 点击搜索的时候自动收起搜索栏
56407
- let resizeWindow = function(){
56408
- //触发amis crud 高度重算
56409
- setTimeout(()=>{
56410
- window.dispatchEvent(new Event("resize"))
56411
- }, 500);
56412
- }
56423
+ //触发amis crud 高度重算
56424
+ doAction({
56425
+ "actionType": "broadcast",
56426
+ "args": {
56427
+ "eventName": "@height.changed.${objectSchema.name}"
56428
+ },
56429
+ "data": {
56430
+ "timeOut": 500
56431
+ }
56432
+ });
56413
56433
  const filterService = filterForm.context.getComponents().find(function(n){
56414
56434
  return n.props.type === "service";
56415
56435
  });
@@ -56511,9 +56531,16 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
56511
56531
  let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");
56512
56532
  filterFormService.setData({showFieldsFilter: !!!filterFormService.props.data.showFieldsFilter});
56513
56533
  //触发amis crud 高度重算
56514
- setTimeout(()=>{
56515
- window.dispatchEvent(new Event("resize"))
56516
- }, 100);
56534
+ doAction({
56535
+ "actionType": "broadcast",
56536
+ "args": {
56537
+ "eventName": "@height.changed.${objectSchema.name}"
56538
+ },
56539
+ "data": {
56540
+ "timeOut": 100
56541
+ }
56542
+ });
56543
+
56517
56544
  // 移除搜索按钮上的红点
56518
56545
  // let crudService = scope.getComponentById("service_listview_" + event.data.objectName);
56519
56546
  let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service");
@@ -56670,9 +56697,15 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
56670
56697
  sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));
56671
56698
  }
56672
56699
  //触发amis crud 高度重算
56673
- setTimeout(()=>{
56674
- window.dispatchEvent(new Event("resize"))
56675
- }, 100)
56700
+ doAction({
56701
+ "actionType": "broadcast",
56702
+ "args": {
56703
+ "eventName": "@height.changed.${objectSchema.name}"
56704
+ },
56705
+ "data": {
56706
+ "timeOut": 100
56707
+ }
56708
+ });
56676
56709
  // ===END===
56677
56710
  `;
56678
56711
  return {
@@ -57914,13 +57947,16 @@ const filterService = filterForm.context.getComponents().find(function(n){
57914
57947
  });
57915
57948
  let toShowFieldsFilter = !!!filterService.props.data.showFieldsFilter;
57916
57949
  filterService.setData({showFieldsFilter: toShowFieldsFilter});
57917
- let resizeWindow = function(){
57918
- //触发amis crud 高度重算
57919
- setTimeout(()=>{
57920
- window.dispatchEvent(new Event("resize"))
57921
- }, 1000);
57922
- }
57923
- resizeWindow();
57950
+ //触发amis crud 高度重算
57951
+ doAction({
57952
+ "actionType": "broadcast",
57953
+ "args": {
57954
+ "eventName": "@height.changed." + event.data.objectName
57955
+ },
57956
+ "data": {
57957
+ "timeOut": 1000
57958
+ }
57959
+ });
57924
57960
  // 手机端在显示搜索栏时隐藏crud上的刷新按钮,因为点击后crud高度显示有问题
57925
57961
  let crudService = scope.getComponentById("service_listview_" + event.data.objectName);
57926
57962
  crudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});
@@ -58284,12 +58320,16 @@ async function getObjectFilter(objectSchema, fields, options) {
58284
58320
  return;
58285
58321
  }
58286
58322
  // 列表搜索栏字段值变更后立刻触发提交表单执行crud搜索,所以这里需要额外重算crud高度及筛选按钮红色星号图标显示隐藏
58287
- let resizeWindow = function(){
58288
- //触发amis crud 高度重算
58289
- setTimeout(()=>{
58290
- window.dispatchEvent(new Event("resize"))
58291
- }, 1000);
58292
- }
58323
+ //触发amis crud 高度重算
58324
+ doAction({
58325
+ "actionType": "broadcast",
58326
+ "args": {
58327
+ "eventName": "@height.changed.${objectSchema.name}"
58328
+ },
58329
+ "data": {
58330
+ "timeOut": 1000
58331
+ }
58332
+ });
58293
58333
  resizeWindow();
58294
58334
  const scope = event.context.scoped;
58295
58335
  // let filterFormValues = event.data;
@@ -58954,6 +58994,8 @@ function getLookupSapceUserTreeSchema(isMobile){
58954
58994
  _.each(children, (item) => {
58955
58995
  if (item.children) {
58956
58996
  item.children = getChildren(records, item.children)
58997
+ }else{
58998
+ item.children = [];
58957
58999
  }
58958
59000
  })
58959
59001
  return children;
@@ -59308,6 +59350,14 @@ async function lookupToAmisPicker(field, readonly, ctx){
59308
59350
  })
59309
59351
  payload.data.rows = rows;
59310
59352
  */
59353
+ if(enable_tree){
59354
+ const rows = _.map(payload.data.rows, (item)=>{
59355
+ delete item.children;
59356
+ delete item.parent;
59357
+ return item;
59358
+ })
59359
+ payload.data.rows = rows;
59360
+ }
59311
59361
  return payload;
59312
59362
  }
59313
59363
  if(!payload.data.rows){
@@ -59339,6 +59389,8 @@ async function lookupToAmisPicker(field, readonly, ctx){
59339
59389
  _.each(children, (item)=>{
59340
59390
  if(item.children){
59341
59391
  item.children = getChildren(records, item.children)
59392
+ }else{
59393
+ item.children = [];
59342
59394
  }
59343
59395
  })
59344
59396
  return children;
@@ -59393,7 +59445,7 @@ async function lookupToAmisPicker(field, readonly, ctx){
59393
59445
  const isAllowCreate = refObjectConfig.permissions.allowCreate;
59394
59446
  const isCreate = lodash.exports.isBoolean(field.create) ? field.create : true;
59395
59447
  // lookup字段配置过滤条件就强制不显示新建按钮
59396
- let isHasFilters = (field.filters || field._filtersFunction) ? true : false;
59448
+ let isHasFilters = (field.filters || field.filtersFunction || field._filtersFunction) ? true : false;
59397
59449
  if (isAllowCreate && isCreate && !isHasFilters) {
59398
59450
  const new_button = await getSchema$5(refObjectConfig, { appId: ctx.appId, objectName: refObjectConfig.name, formFactor: ctx.formFactor });
59399
59451
  new_button.align = "right";
@@ -59796,18 +59848,30 @@ async function lookupToAmis(field, readonly, ctx){
59796
59848
  enableEnhancedLookup = true;
59797
59849
  }
59798
59850
  }
59851
+ let amisSchema;
59799
59852
  // 默认使用下拉框模式显示lookup选项,只能配置了enable_enhanced_lookup才使用弹出增强模式
59800
59853
  if(enableEnhancedLookup == true){
59801
- return await lookupToAmisPicker(field, readonly, ctx);
59854
+ amisSchema = await lookupToAmisPicker(field, readonly, ctx);
59802
59855
  }else if(refObject.enable_tree) {
59803
- return await lookupToAmisTreeSelect(field, readonly, Object.assign({}, ctx, {
59856
+ amisSchema = await lookupToAmisTreeSelect(field, readonly, Object.assign({}, ctx, {
59804
59857
  labelField: referenceTo.labelField?.name || 'name',
59805
59858
  valueField: referenceTo.valueField?.name || '_id',
59806
59859
  objectName: referenceTo.objectName
59807
59860
  }));
59808
59861
  }else {
59809
- return await lookupToAmisSelect(field, readonly, ctx);
59862
+ amisSchema = await lookupToAmisSelect(field, readonly, ctx);
59810
59863
  }
59864
+ let refLookupPage = refObject.pages && refObject.pages.lookup;
59865
+ if(refLookupPage){
59866
+ if(refLookupPage.is_enable){
59867
+ let pageAmisSchema = refLookupPage.amis_schema;
59868
+ if(typeof pageAmisSchema == 'string'){
59869
+ pageAmisSchema = JSON.parse(pageAmisSchema);
59870
+ }
59871
+ amisSchema = lodash.exports.defaultsDeep({}, pageAmisSchema, amisSchema);
59872
+ }
59873
+ }
59874
+ return amisSchema;
59811
59875
  }
59812
59876
 
59813
59877
  async function lookupToAmisIdsPicker(field, readonly, ctx){
@@ -60445,7 +60509,8 @@ async function convertSFieldToAmisField(field, readonly, ctx) {
60445
60509
  },
60446
60510
  pipeOut: (value, oldValue, data) => {
60447
60511
  if(value){
60448
- return value/100;
60512
+ const result = value/100;
60513
+ return Number(result.toFixed(field.scale+2));
60449
60514
  }
60450
60515
  return value;
60451
60516
  },
@@ -60679,7 +60744,7 @@ async function convertSFieldToAmisField(field, readonly, ctx) {
60679
60744
  if(field.is_wide || convertData.type === 'group'){
60680
60745
  convertData.className = 'col-span-2 m-0';
60681
60746
  }else {
60682
- convertData.className = 'm-0';
60747
+ convertData.className = 'm-1';
60683
60748
  }
60684
60749
  if(readonly){
60685
60750
  convertData.className = `${convertData.className} border-b`;