@steedos-widgets/amis-object 1.3.5 → 1.3.7

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.
@@ -898,6 +898,9 @@ fieldset.antd-Collapse > legend{
898
898
  .pr-4 {
899
899
  padding-right: 1rem
900
900
  }
901
+ .pl-5 {
902
+ padding-left: 1.25rem
903
+ }
901
904
  .pb-0 {
902
905
  padding-bottom: 0px
903
906
  }
@@ -6476,7 +6476,7 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
6476
6476
  showFieldsFilter = true;
6477
6477
  }
6478
6478
  filterService.setData({showFieldsFilter});
6479
- resizeWindow();
6479
+ // resizeWindow();//已迁移到搜索栏表单提交事件中执行,因为表单项change后也会触发表单提交了
6480
6480
  // 使用filterForm.getValues()的话,并不能拿到本地存储中的过滤条件,所以需要从event.data中取。
6481
6481
  let filterFormValues = event.data;
6482
6482
  let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);
@@ -8428,7 +8428,8 @@ function getObjectHeaderQuickSearchBox(mainObject, fields, formFactor, { isLooku
8428
8428
  "placeholder": "搜索此列表",
8429
8429
  "value": crudKeywords,
8430
8430
  "clearable": true,
8431
- "clearAndSubmit": true
8431
+ "clearAndSubmit": true,
8432
+ "searchImediately": true
8432
8433
  }
8433
8434
  ]
8434
8435
  }
@@ -8663,16 +8664,50 @@ function getObjectFooterToolbar(mainObject, formFactor, options) {
8663
8664
 
8664
8665
  async function getObjectFilter(objectSchema, fields, options) {
8665
8666
  const fieldsFilterBarSchema = await getObjectListHeaderFieldsFilterBar(objectSchema, null, options);
8667
+ let onSubmitSuccScript = `
8668
+ let isLookup = event.data.isLookup;
8669
+ if(isLookup){
8670
+ return;
8671
+ }
8672
+ // 列表搜索栏字段值变更后立刻触发提交表单执行crud搜索,所以这里需要额外重算crud高度及筛选按钮红色星号图标显示隐藏
8673
+ let resizeWindow = function(){
8674
+ //触发amis crud 高度重算
8675
+ setTimeout(()=>{
8676
+ window.dispatchEvent(new Event("resize"))
8677
+ }, 1000);
8678
+ }
8679
+ resizeWindow();
8680
+ const scope = event.context.scoped;
8681
+ // let filterFormValues = event.data;
8682
+ let filterForm = SteedosUI.getClosestAmisComponentByType(scope, "form");
8683
+ let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, "service");
8684
+ // 使用event.data的话,并不能拿到本地存储中的过滤条件,所以需要从filterFormService中取。
8685
+ let filterFormValues = filterFormService.getData()
8686
+ let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);
8687
+ let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");
8688
+ let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service");
8689
+ crudService && crudService.setData({isFieldsFilterEmpty});
8690
+ `;
8666
8691
  return {
8667
8692
  "title": "",
8668
8693
  "submitText": "",
8669
8694
  "className": "",
8670
- // "debug": true,
8695
+ "debug": false,
8671
8696
  "mode": "normal",
8672
8697
  "wrapWithPanel": false,
8673
8698
  "body": [
8674
8699
  fieldsFilterBarSchema
8675
- ]
8700
+ ],
8701
+ "onEvent": {
8702
+ "submitSucc": {
8703
+ "actions": [
8704
+ {
8705
+ "actionType": "custom",
8706
+ "script": onSubmitSuccScript
8707
+ }
8708
+ ]
8709
+ }
8710
+ }
8676
8711
  }
8677
8712
  }
8678
8713
 
@@ -10867,7 +10902,9 @@ async function getFieldSearchable(perField, permissionFields, ctx){
10867
10902
 
10868
10903
  const amisField = await convertSFieldToAmisField(_field, false, Object.assign({}, ctx, {fieldNamePrefix: fieldNamePrefix, required: false, showSystemFields: true, inFilterForm: true}));
10869
10904
  if(amisField){
10870
- return amisField;
10905
+ return Object.assign({}, amisField,{
10906
+ submitOnChange: true
10907
+ });
10871
10908
  }
10872
10909
  }
10873
10910
  }
@@ -10946,7 +10983,12 @@ var config = {
10946
10983
 
10947
10984
  async function getQuickEditSchema(field, options){
10948
10985
  //判断在amis3.2以上环境下,放开批量编辑
10949
- const isAmisVersionforBatchEdit = amisRequire('amis').version[0] >= 3 && amisRequire('amis').version[2] >= 2;
10986
+ let isAmisVersionforBatchEdit = false;
10987
+ if(window.amisRequire && window.amisRequire('amis')){
10988
+ isAmisVersionforBatchEdit = window.amisRequire('amis').version[0] >= 3 && window.amisRequire('amis').version[2] >= 2;
10989
+ }else if(window.Amis){
10990
+ isAmisVersionforBatchEdit = window.Amis.version[0] >= 3 && window.Amis.version[2] >= 2;
10991
+ }
10950
10992
  const quickEditId = options.objectName + "_" + field.name + "_quickEdit";//定义快速编辑的表单id,用于setvalue传值
10951
10993
  var quickEditSchema = { body: [], id: quickEditId };
10952
10994
  //select,avatar,image,file等组件无法行记录字段赋值,暂不支持批量编辑;
@@ -14188,7 +14230,7 @@ const getRecordPermissions = async (objectName, recordId)=>{
14188
14230
  * @Author: baozhoutao@steedos.com
14189
14231
  * @Date: 2022-07-05 15:55:39
14190
14232
  * @LastEditors: liaodaxue
14191
- * @LastEditTime: 2023-10-23 15:55:46
14233
+ * @LastEditTime: 2023-11-14 15:55:32
14192
14234
  * @Description:
14193
14235
  */
14194
14236
 
@@ -14536,7 +14578,11 @@ async function getRelatedListSchema(
14536
14578
  if(setDataToComponentId){
14537
14579
  if(payload.data.count){
14538
14580
  setTimeout(function(){
14539
- window.$("." + setDataToComponentId + " .antd-Crud").removeClass("hidden");
14581
+ // 设计器中获取不到window.$从而导致报错, 所以用纯js替换下。
14582
+ // window.$("." + setDataToComponentId + " .antd-Crud").removeClass("hidden");
14583
+ document.querySelectorAll("." + setDataToComponentId + " .antd-Crud").forEach(function(element) {
14584
+ element.classList.remove("hidden");
14585
+ });
14540
14586
  }, 10);
14541
14587
  }
14542
14588
  };
@@ -18952,7 +18998,7 @@ var AmisRecordDetailRelatedList = function (props) { return __awaiter(void 0, vo
18952
18998
  return [2 /*return*/, {}];
18953
18999
  }
18954
19000
  schema.data = Object.assign(schema.data || {}, formData);
18955
- if (_$1.has(props, "recordId") && $schema.recordId !== "${recordId}") {
19001
+ if (_$1.has(props, "recordId") && ($schema.recordId !== "${recordId}" || (props.$$editor && props.recordId !== "${recordId}"))) {
18956
19002
  schema.data = Object.assign(schema.data, {
18957
19003
  _master: {
18958
19004
  record: (_b = data === null || data === void 0 ? void 0 : data._master) === null || _b === void 0 ? void 0 : _b.record,
@@ -18996,7 +19042,8 @@ var AmisRecordDetailRelatedLists = function (props) { return __awaiter(void 0, v
18996
19042
  }];
18997
19043
  }
18998
19044
  staticRecordId = '';
18999
- if (_$1.has(props, "recordId") && $schema.recordId !== "${recordId}") {
19045
+ // 在设计器中的设计状态,当上层有recordId具体值,相关表组件的$schema.recordId的默认值就是 "${recordId}" 会导致获取不到 _master, 进而导致组件显示不了数据。
19046
+ if (_$1.has(props, "recordId") && ($schema.recordId !== "${recordId}" || (props.$$editor && props.recordId !== "${recordId}"))) {
19000
19047
  staticRecordId = recordId;
19001
19048
  }
19002
19049
  return [2 /*return*/, {
@@ -20042,7 +20089,7 @@ var AmisGlobalHeader = function (props) { return __awaiter(void 0, void 0, void
20042
20089
  },
20043
20090
  {
20044
20091
  "type": "grid",
20045
- "className": 'steedos-context-bar flex flex-nowrap h-10 leading-5 pl-4 mb-[-3px] steedos-header-container-line-two',
20092
+ "className": 'steedos-context-bar flex flex-nowrap h-10 leading-5 pl-5 mb-[-3px] steedos-header-container-line-two',
20046
20093
  "hiddenOn": "${" + isMobile + "}",
20047
20094
  "columns": [
20048
20095
  {