@steedos-widgets/amis-lib 3.6.2-beta.17 → 3.6.2-beta.19

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
@@ -2127,7 +2127,7 @@ async function getTableColumns(fields, options){
2127
2127
  const previewFileScript = `
2128
2128
  var data = event.data;
2129
2129
  var file_name = data.versions ? data.name : "${field.label}";
2130
- var file_id = data._id;
2130
+ var file_id = data.versions && data.versions[0] && data.versions[0]._id;
2131
2131
  window.previewFile && window.previewFile({file_name, file_id});
2132
2132
  `;
2133
2133
  columnItem = {
@@ -2976,7 +2976,13 @@ async function getTableApi(mainObject, fields, options){
2976
2976
  value = [value]
2977
2977
  };
2978
2978
  if(field.type === 'file'){
2979
- item[key] = value
2979
+ // item[key] = value
2980
+ // PC客户端附件子表列表点击标题预览附件功能依赖了_id,所以这里拼出来
2981
+ let itemKeyValue = item[key];
2982
+ item[key] = value.map(function(item, index){
2983
+ item._id = itemKeyValue[index];
2984
+ return item;
2985
+ });
2980
2986
  }else{
2981
2987
  item[key] = _.map(value, (item)=>{
2982
2988
  if(field.type === 'image'){
@@ -6930,7 +6936,7 @@ async function getObjectRecordDetailRelatedListHeader(relatedObjectSchema, relat
6930
6936
  "className": "flex justify-between"
6931
6937
  }
6932
6938
  ],
6933
- "className": "steedos-record-related-header py-2 px-0"
6939
+ "className": "steedos-record-related-header py-2 px-3 bg-gray-50 border"
6934
6940
  };
6935
6941
  return recordRelatedListHeader;
6936
6942
  }
@@ -8343,7 +8349,6 @@ async function getObjectFilter(objectSchema, fields, options) {
8343
8349
  "timeOut": 1000
8344
8350
  }
8345
8351
  });
8346
- resizeWindow();
8347
8352
  const scope = event.context.scoped;
8348
8353
  // let filterFormValues = event.data;
8349
8354
  let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");
@@ -9230,7 +9235,7 @@ async function getRecordDetailRelatedListSchema(objectName, recordId, relatedObj
9230
9235
  setDataToComponentId: componentId,
9231
9236
  // tableHiddenOn: hiddenEmptyTable ? "this.$count === 0" : null,
9232
9237
  appId: appId,
9233
- crudClassName: 'steedos-record-related-crud hidden',
9238
+ crudClassName: 'steedos-record-related-crud border-l border-r hidden',
9234
9239
  refField,
9235
9240
  ...ctx
9236
9241
  };
@@ -9243,7 +9248,7 @@ async function getRecordDetailRelatedListSchema(objectName, recordId, relatedObj
9243
9248
  amisSchema: {
9244
9249
  type: "service",
9245
9250
  id: componentId,
9246
- className: `steedos-record-related-list py-2 first:pt-0 border-b-0 last:border-b-0 ${componentId} ${className}`,
9251
+ className: `steedos-record-related-list mb-4 last:mb-0 ${componentId} ${className}`,
9247
9252
  data: {
9248
9253
  relatedKey: relatedKey,
9249
9254
  listViewId: `amis-\${appId}-${relatedObjectName}-listview`,
@@ -9989,7 +9994,7 @@ async function getRecordDetailSchema(objectName, appId, props = {}){
9989
9994
  };
9990
9995
  const content = {
9991
9996
  "type": "tabs",
9992
- "className": "steedos-record-tabs bg-white p-4 m-0 border-b",
9997
+ "className": "steedos-record-tabs bg-white p-4 mt-3 border-y",
9993
9998
  "contentClassName": "bg-none",
9994
9999
  "tabs": [
9995
10000
  detailed
@@ -12206,13 +12211,31 @@ async function convertSFieldToAmisField(field, readonly, ctx) {
12206
12211
  };
12207
12212
  break;
12208
12213
  case 'input-datetime-range':
12214
+ // convertData = {
12215
+ // type: "input-datetime-range",
12216
+ // inputFormat: 'YYYY-MM-DD HH:mm',
12217
+ // format:'YYYY-MM-DDTHH:mm:ss.SSSZ',
12218
+ // tpl: readonly ? Tpl.getDateTimeTpl(field) : null,
12219
+ // utc: true,
12220
+ // joinValues: false
12221
+ // }
12222
+ // 日期时间字段,按日期方式展现显示控件,用户不用关心小时分钟
12209
12223
  convertData = {
12210
- type: "input-datetime-range",
12211
- inputFormat: 'YYYY-MM-DD HH:mm',
12224
+ type: "input-date-range",
12225
+ inputFormat: "YYYY-MM-DD HH:mm",
12212
12226
  format:'YYYY-MM-DDTHH:mm:ss.SSSZ',
12213
12227
  tpl: readonly ? getDateTimeTpl(field) : null,
12214
12228
  utc: true,
12215
- joinValues: false
12229
+ joinValues: false,
12230
+ "shortcuts": [
12231
+ "thismonth",
12232
+ "2monthsago",
12233
+ "3monthslater",
12234
+ "prevquarter",
12235
+ "thisquarter",
12236
+ "thisyear",
12237
+ "lastYear"
12238
+ ]
12216
12239
  };
12217
12240
  break;
12218
12241
  case 'datetime':
@@ -12729,8 +12752,9 @@ async function getFieldSearchable(perField, permissionFields, ctx){
12729
12752
  fieldNamePrefix = `${fieldNamePrefix}between__`;
12730
12753
  }
12731
12754
  if(_field.type === 'datetime'){
12732
- // 特意改为日期范围而不是日期时间范围,因为搜索时一般精确到日期就足够了,需要精确到日期时间范围需要在字段上配置amis属性来实现
12733
- _field.type = 'input-date-range';
12755
+ // 这里如果想把搜索范围展示效果改为日期范围,不可以直接改为input-date-range,因为它们规则不一样,包括时区规则和小时分秒的存值规则都不一样
12756
+ // 所以想改为展示日期范围效果,只能改input-datetime-range类型本身的属性来实现
12757
+ _field.type = 'input-datetime-range';
12734
12758
  _field.is_wide = true;
12735
12759
  fieldNamePrefix = `${fieldNamePrefix}between__`;
12736
12760
  }