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

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