@steedos-widgets/amis-lib 3.6.4-beta.7 → 3.6.4

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
@@ -11968,6 +11968,7 @@ async function lookupToAmis(field, readonly, ctx){
11968
11968
  const autoFill = await getAutoFill(field);
11969
11969
  if(autoFill){
11970
11970
  amisSchema.autoFill = autoFill;
11971
+ amisSchema.initAutoFill = false;
11971
11972
  }
11972
11973
  return amisSchema;
11973
11974
  }
@@ -13436,11 +13437,9 @@ function uuidv4() {
13436
13437
  * @Author: 殷亮辉 yinlianghui@hotoa.com
13437
13438
  * @Date: 2023-11-15 09:50:22
13438
13439
  * @LastEditors: 殷亮辉 yinlianghui@hotoa.com
13439
- * @LastEditTime: 2024-02-29 18:36:58
13440
+ * @LastEditTime: 2024-03-02 16:07:17
13440
13441
  */
13441
13442
 
13442
- const fieldPrefixSplit = "__";
13443
-
13444
13443
  /**
13445
13444
  * 子表组件字段值中每行数据补上字段值为空的的字段值,把值统一设置为空字符串,是为了解决amis amis 3.6/6.0 input-table组件bug:行中字段值为空时会显示为父作用域中的同名变量值,见:https://github.com/baidu/amis/issues/9520
13446
13445
  * amis #9520修正后此函数及相关代码可以移除
@@ -13619,14 +13618,14 @@ function getTableFieldsWithoutFieldPrefix(fields, fieldPrefix) {
13619
13618
  * @param {*} fieldPrefix 字段前缀
13620
13619
  * @returns 转换后的子表组件字段值
13621
13620
  */
13622
- function getTableFieldsPrependFieldPrefix(fields, fieldPrefix) {
13623
- return (fields || []).map((item) => {
13624
- const newItem = clone(item);
13625
- newItem.name = `${fieldPrefix}${item.name}`;
13626
- newItem.__originalName = item.name;
13627
- return newItem;
13628
- });
13629
- }
13621
+ // function getTableFieldsPrependFieldPrefix(fields, fieldPrefix) {
13622
+ // return (fields || []).map((item) => {
13623
+ // const newItem = clone(item);
13624
+ // newItem.name = `${fieldPrefix}${item.name}`;
13625
+ // newItem.__originalName = item.name;
13626
+ // return newItem;
13627
+ // });
13628
+ // }
13630
13629
 
13631
13630
  /**
13632
13631
  * @param {*} props
@@ -13638,9 +13637,6 @@ function getFormFields(props, mode = "edit") {
13638
13637
  if (fieldPrefix) {
13639
13638
  fields = getTableFieldsWithoutFieldPrefix(fields, fieldPrefix);
13640
13639
  }
13641
- else {
13642
- fields = getTableFieldsPrependFieldPrefix(fields, props.name + fieldPrefixSplit);
13643
- }
13644
13640
  return (fields || []).map(function (item) {
13645
13641
  let formItem = {
13646
13642
  "type": "steedos-field",
@@ -13656,16 +13652,21 @@ function getFormFields(props, mode = "edit") {
13656
13652
 
13657
13653
  function getInputTableCell(field, showAsInlineEditMode) {
13658
13654
  if (showAsInlineEditMode) {
13655
+ // 这里不可以用quickEdit,因为amis存在bug:input-table内的字段在行编辑模式时会受到外层相同name的字段的影响 https://github.com/baidu/amis/issues/9653
13659
13656
  return {
13657
+ "type": "steedos-field",
13658
+ "config": Object.assign({}, field, {
13659
+ label: false
13660
+ }),
13661
+ // quickEdit: {
13662
+ // "type": "steedos-field",
13663
+ // "mode": "inline",
13664
+ // "config": Object.assign({}, field, {
13665
+ // label: false
13666
+ // })
13667
+ // },
13660
13668
  label: field.label,
13661
- name: field.name,
13662
- quickEdit: {
13663
- "type": "steedos-field",
13664
- "mode": "inline",
13665
- "config": Object.assign({}, field, {
13666
- label: false
13667
- })
13668
- }
13669
+ name: field.name
13669
13670
  }
13670
13671
  }
13671
13672
  else {
@@ -13720,12 +13721,6 @@ async function getInputTableColumns(props, buttonsForColumnOperations) {
13720
13721
  if (fieldPrefix) {
13721
13722
  fields = getTableFieldsWithoutFieldPrefix(fields, fieldPrefix);
13722
13723
  }
13723
- else {
13724
- fields = getTableFieldsPrependFieldPrefix(fields, props.name + fieldPrefixSplit);
13725
- columns = getTableFieldsPrependFieldPrefix(columns.map(function (item) {
13726
- return typeof item == "string" ? { name: item } : item;
13727
- }), props.name + fieldPrefixSplit);
13728
- }
13729
13724
  if (inlineEditMode == true) {
13730
13725
  let popOverContainerSelector = "";
13731
13726
  let popOverContainer = props.popOverContainer && props.popOverContainer();
@@ -14023,10 +14018,6 @@ function getFormPaginationWrapper(props, form, mode) {
14023
14018
  let getTableValueWithoutFieldPrefix = new Function('v', 'f', "return (" + ${getTableValueWithoutFieldPrefix.toString()} + ")(v, f)");
14024
14019
  lastestFieldValue = getTableValueWithoutFieldPrefix(lastestFieldValue, fieldPrefix);
14025
14020
  }
14026
- else{
14027
- let getTableValuePrependFieldPrefix = new Function('v', 'f', "return (" + ${getTableValuePrependFieldPrefix.toString()} + ")(v, f)");
14028
- lastestFieldValue = getTableValuePrependFieldPrefix(lastestFieldValue, "${props.name + fieldPrefixSplit}", "${primaryKey}");
14029
- }
14030
14021
  //不可以直接像event.data.__tableItems = lastestFieldValue; 这样整个赋值,否则作用域会断
14031
14022
  let mode = "${mode || ''}";
14032
14023
  if(mode === "new"){
@@ -14833,9 +14824,6 @@ const getAmisInputTableSchema = async (props) => {
14833
14824
  if (fieldPrefix) {
14834
14825
  fields = getTableFieldsWithoutFieldPrefix(fields, fieldPrefix);
14835
14826
  }
14836
- else {
14837
- fields = getTableFieldsPrependFieldPrefix(fields, props.name + fieldPrefixSplit);
14838
- }
14839
14827
  let serviceId = getComponentId("table_service", props.id);
14840
14828
  let buttonsForColumnOperations = [];
14841
14829
  let inlineEditMode = props.inlineEditMode;
@@ -14897,9 +14885,6 @@ const getAmisInputTableSchema = async (props) => {
14897
14885
  if (fieldPrefix) {
14898
14886
  value = getTableValueWithoutFieldPrefix(value, fieldPrefix);
14899
14887
  }
14900
- else {
14901
- value = getTableValuePrependFieldPrefix(value, props.name + fieldPrefixSplit, primaryKey);
14902
- }
14903
14888
  value = getTableValueWithEmptyValue(value, fields);
14904
14889
  if (primaryKey) {
14905
14890
  // 这里临时给每行数据补上primaryKey字段值,如果库里不需要保存这里补上的字段值,pipeOut中会识别autoGeneratePrimaryKeyValue属性选择最终移除这里补上的字段值
@@ -14922,9 +14907,6 @@ const getAmisInputTableSchema = async (props) => {
14922
14907
  if (fieldPrefix) {
14923
14908
  value = getTableValuePrependFieldPrefix(value, fieldPrefix, primaryKey);
14924
14909
  }
14925
- else {
14926
- value = getTableValueWithoutFieldPrefix(value, props.name + fieldPrefixSplit);
14927
- }
14928
14910
  value = getTableValueWithoutEmptyValue(value, fields);
14929
14911
  if (props.autoGeneratePrimaryKeyValue === true) {
14930
14912
  // 如果需要把自动生成的primaryKey值输出保存的库中,则补全所有行中的primaryKey值