@steedos-widgets/amis-object 6.10.33 → 6.10.34-beta.2

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.
@@ -1122,8 +1122,8 @@ sectionFieldsVisibleOn=_$1__namespace.map(_$1__namespace.compact(_$1__namespace.
1122
1122
  */function _getFormBody(){_getFormBody=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee133(permissionFields,formFields,ctx){return _regenerator().w(function(_context133){while(1)switch(_context133.n){case 0:_context133.n=1;return getSections(permissionFields,formFields,ctx);case 1:return _context133.a(2,_context133.v);}},_callee133);}));return _getFormBody.apply(this,arguments);}function uuidv4(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,function(c){return(c^window.crypto.getRandomValues(new Uint8Array(1))[0]&15>>c/4).toString(16);});}/*
1123
1123
  * @Author: 殷亮辉 yinlianghui@hotoa.com
1124
1124
  * @Date: 2023-11-15 09:50:22
1125
- * @LastEditors: 殷亮辉 yinlianghui@hotoa.com
1126
- * @LastEditTime: 2025-12-04 22:52:15
1125
+ * @LastEditors: yinlianghui yinlianghui@hotoa.com
1126
+ * @LastEditTime: 2025-12-10 17:04:58
1127
1127
  *//**
1128
1128
  * 子表组件字段值中每行数据补上字段值为空的的字段值,把值统一设置为空字符串,是为了解决amis amis 3.6/6.0 input-table组件bug:行中字段值为空时会显示为父作用域中的同名变量值,见:https://github.com/baidu/amis/issues/9520
1129
1129
  * amis #9520修正后此函数及相关代码可以移除
@@ -1242,7 +1242,7 @@ var serviceId=getComponentId("form_pagination",props.id);var tableServiceId=getC
1242
1242
  * @param {*} props
1243
1243
  * @param {*} mode edit/new/readonly/delete
1244
1244
  */function _getForm(){_getForm=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee135(props){var mode,formId,formFields,body,primaryKey,schema,onEditItemSubmitScript,_args135=arguments;return _regenerator().w(function(_context135){while(1)switch(_context135.n){case 0:mode=_args135.length>1&&_args135[1]!==undefined?_args135[1]:"edit";formId=_args135.length>2?_args135[2]:undefined;formFields=getFormFields(props,mode);_context135.n=1;return getFormBody(null,formFields);case 1:body=_context135.v;primaryKey=getTablePrimaryKey(props);if(!formId){formId=getComponentId("form",props.id);}schema={"type":"form","id":formId,"title":"表单","debug":false,"mode":"normal","body":body,"wrapWithPanel":false,"canAccessSuperData":false,"className":"steedos-object-form steedos-amis-form"};if(mode==="edit"||mode==="new"){// 新增行弹出编辑行表单,在弹出之前已经不用先增加一行,因为在翻页service初始化的时候会判断mode为new时自动新增一行
1245
- onEditItemSubmitScript="\n // let fieldValue = _.cloneDeep(event.data[\"".concat(props.name,"\"]);\n let removeEmptyItems = function(items){\n let i = _.findIndex(items, function(item){\n return item === undefined\n });\n if(i > -1){\n items.splice(i, 1);\n removeEmptyItems(items);\n }\n }\n // \u56E0\u4E3A\u5220\u9664\u65F6\u53EA\u662F\u628Ainput-table\u7EC4\u4EF6\u4E2D\u7684\u884C\u6570\u636E\u5220\u9664\u4E86\uFF0C\u5E76\u6CA1\u6709\u628A\u7236\u5C42service\u4E2D\u7684\u884C\u5220\u9664\uFF0C\u6240\u4EE5__tableItems\u4F1A\u6709\u503C\u4E3Aundefined\u7684\u6570\u636E\uFF0C\u9700\u8981\u79FB\u9664\u6389\n // \u4E0D\u7528event.data.__tableItems = _.compact(event.data.__tableItems)\u662F\u56E0\u4E3A\u4F1A\u628A__tableItems\u53D8\u91CF\u4FDD\u5B58\u5230\u8868\u5355\u4E2D\n removeEmptyItems(event.data.__tableItems);\n let fieldValue = event.data.__tableItems;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5_.cloneDeep\uFF0C\u56E0\u4E3A\u7FFB\u9875form\u4E2D\u7528\u7684\u662Fevent.data.__tableItems\uFF0C\u76F4\u63A5\u53D8\u66F4\u5176\u503C\u5373\u53EF\u6539\u53D8\u8868\u5355\u4E2D\u7684\u503C\n //\u8FD9\u91CC\u52A0__super.__super\u524D\u7F00\u662F\u56E0\u4E3A__parentForm\u53D8\u91CF\uFF08\u5373\u4E3B\u8868\u5355\uFF09\u4E2D\u53EF\u80FD\u4F1A\u6B63\u597D\u6709\u540D\u4E3Aindex\u7684\u5B57\u6BB5\n // \u6BD4\u5982\u201C\u5BF9\u8C61\u5B57\u6BB5\u201D\u5BF9\u8C61options\u5B57\u6BB5\u662F\u4E00\u4E2A\u5B50\u8868\u5B57\u6BB5\uFF0C\u4F46\u662F\u4E3B\u8868\uFF08\u5373\u201C\u5BF9\u8C61\u5B57\u6BB5\u201D\u5BF9\u8C61\uFF09\u4E2D\u6B63\u597D\u6709\u4E00\u4E2A\u540D\u4E3Aindex\u7684\u5B57\u6BB5\n // fieldValue[event.data.__super.__super.index] = JSON.parse(JSON.stringify(event.data));\n var currentIndex = event.data.__super.__super.index;\n var currentFormValues = JSON.parse(JSON.stringify(event.data));\n var parent = event.data.__super.__super.parent;\n var __parentIndex = event.data.__super.__super.__parentIndex;\n let uuidv4 = new Function(\"return (\" + ").concat(uuidv4.toString()," + \")()\");\n var primaryKey = \"").concat(primaryKey,"\";\n if(parent){\n fieldValue[__parentIndex].children[currentIndex] = currentFormValues;\n // \u91CD\u5199\u7236\u8282\u70B9\uFF0C\u5E76\u4E14\u6539\u53D8\u5176\u67D0\u4E2A\u5C5E\u6027\u4EE5\u8BA9\u5B50\u8282\u70B9\u4FEE\u6539\u7684\u5185\u5BB9\u56DE\u663E\u5230\u754C\u9762\u4E0A\n fieldValue[__parentIndex] = Object.assign({}, fieldValue[__parentIndex], {\n children: fieldValue[__parentIndex].children,\n __fix_rerender_after_children_modified_tag: new Date().getTime()\n });\n }\n else{\n // \u8FD9\u91CCcurrentFormValues\u4E2D\u5982\u679C\u6CA1\u6709primaryKey\u5B57\u6BB5\u503C\u4E0D\u7528\u5904\u7406\uFF0C\u56E0\u4E3A\u7EC4\u4EF6\u7684pipeIn/pipeOut\u4E2D\u4F1A\u4E3A\u6BCF\u884C\u81EA\u52A8\u751F\u6210\n // \u4E5F\u4E0D\u7528\u62C5\u5FC3\u590D\u5236\u884C\u65F6_id\u4F1A\u91CD\u590D\uFF0C\u56E0\u4E3A\u70B9\u51FB\u590D\u5236\u6309\u94AE\u65F6\u5DF2\u7ECF\u5904\u7406\u8FC7\u4E86\n fieldValue[currentIndex] = currentFormValues;\n }\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n ");Object.assign(schema,{"onEvent":{"submit":{"weight":0,"actions":[// {
1245
+ onEditItemSubmitScript="\n // let fieldValue = _.cloneDeep(event.data[\"".concat(props.name,"\"]);\n let removeEmptyItems = function(items){\n let i = _.findIndex(items, function(item){\n return item === undefined\n });\n if(i > -1){\n items.splice(i, 1);\n removeEmptyItems(items);\n }\n }\n // \u56E0\u4E3A\u5220\u9664\u65F6\u53EA\u662F\u628Ainput-table\u7EC4\u4EF6\u4E2D\u7684\u884C\u6570\u636E\u5220\u9664\u4E86\uFF0C\u5E76\u6CA1\u6709\u628A\u7236\u5C42service\u4E2D\u7684\u884C\u5220\u9664\uFF0C\u6240\u4EE5__tableItems\u4F1A\u6709\u503C\u4E3Aundefined\u7684\u6570\u636E\uFF0C\u9700\u8981\u79FB\u9664\u6389\n // \u4E0D\u7528event.data.__tableItems = _.compact(event.data.__tableItems)\u662F\u56E0\u4E3A\u4F1A\u628A__tableItems\u53D8\u91CF\u4FDD\u5B58\u5230\u8868\u5355\u4E2D\n removeEmptyItems(event.data.__tableItems);\n let fieldValue = event.data.__tableItems;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5_.cloneDeep\uFF0C\u56E0\u4E3A\u7FFB\u9875form\u4E2D\u7528\u7684\u662Fevent.data.__tableItems\uFF0C\u76F4\u63A5\u53D8\u66F4\u5176\u503C\u5373\u53EF\u6539\u53D8\u8868\u5355\u4E2D\u7684\u503C\n //\u8FD9\u91CC\u52A0__super.__super\u524D\u7F00\u662F\u56E0\u4E3A__parentForm\u53D8\u91CF\uFF08\u5373\u4E3B\u8868\u5355\uFF09\u4E2D\u53EF\u80FD\u4F1A\u6B63\u597D\u6709\u540D\u4E3Aindex\u7684\u5B57\u6BB5\n // \u6BD4\u5982\u201C\u5BF9\u8C61\u5B57\u6BB5\u201D\u5BF9\u8C61options\u5B57\u6BB5\u662F\u4E00\u4E2A\u5B50\u8868\u5B57\u6BB5\uFF0C\u4F46\u662F\u4E3B\u8868\uFF08\u5373\u201C\u5BF9\u8C61\u5B57\u6BB5\u201D\u5BF9\u8C61\uFF09\u4E2D\u6B63\u597D\u6709\u4E00\u4E2A\u540D\u4E3Aindex\u7684\u5B57\u6BB5\n // fieldValue[event.data.__super.__super.index] = JSON.parse(JSON.stringify(event.data));\n var currentIndex = event.data.__super.__super.index;\n var currentFormValues = JSON.parse(JSON.stringify(event.data));\n var parent = event.data.__super.__super.parent;\n var __parentIndex = event.data.__super.__super.__parentIndex;\n // let uuidv4 = new Function(\"return (\" + ").concat(uuidv4.toString()," + \")()\");\n // var primaryKey = \"").concat(primaryKey,"\";\n if(parent){\n fieldValue[__parentIndex].children[currentIndex] = currentFormValues;\n // \u91CD\u5199\u7236\u8282\u70B9\uFF0C\u5E76\u4E14\u6539\u53D8\u5176\u67D0\u4E2A\u5C5E\u6027\u4EE5\u8BA9\u5B50\u8282\u70B9\u4FEE\u6539\u7684\u5185\u5BB9\u56DE\u663E\u5230\u754C\u9762\u4E0A\n fieldValue[__parentIndex] = Object.assign({}, fieldValue[__parentIndex], {\n children: fieldValue[__parentIndex].children,\n __fix_rerender_after_children_modified_tag: new Date().getTime()\n });\n }\n else{\n // \u8FD9\u91CCcurrentFormValues\u4E2D\u5982\u679C\u6CA1\u6709primaryKey\u5B57\u6BB5\u503C\u4E0D\u7528\u5904\u7406\uFF0C\u56E0\u4E3A\u7EC4\u4EF6\u7684pipeIn/pipeOut\u4E2D\u4F1A\u4E3A\u6BCF\u884C\u81EA\u52A8\u751F\u6210\n // \u4E5F\u4E0D\u7528\u62C5\u5FC3\u590D\u5236\u884C\u65F6_id\u4F1A\u91CD\u590D\uFF0C\u56E0\u4E3A\u70B9\u51FB\u590D\u5236\u6309\u94AE\u65F6\u5DF2\u7ECF\u5904\u7406\u8FC7\u4E86\n fieldValue[currentIndex] = currentFormValues;\n }\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n ");Object.assign(schema,{"onEvent":{"submit":{"weight":0,"actions":[// {
1246
1246
  // "actionType": "setValue",
1247
1247
  // "args": {
1248
1248
  // "index": "${index}",
@@ -1333,7 +1333,7 @@ schema=getFormPaginationWrapper(props,schema,mode);return _context135.a(2,schema
1333
1333
  // }
1334
1334
  // }
1335
1335
  // };
1336
- onSaveAndNewItemScript="\n let scope = event.context.scoped;\n let removeEmptyItems = function(items){\n let i = _.findIndex(items, function(item){\n return item === undefined\n });\n if(i > -1){\n items.splice(i, 1);\n removeEmptyItems(items);\n }\n }\n // \u56E0\u4E3A\u5220\u9664\u65F6\u53EA\u662F\u628Ainput-table\u7EC4\u4EF6\u4E2D\u7684\u884C\u6570\u636E\u5220\u9664\u4E86\uFF0C\u5E76\u6CA1\u6709\u628A\u7236\u5C42service\u4E2D\u7684\u884C\u5220\u9664\uFF0C\u6240\u4EE5__tableItems\u4F1A\u6709\u503C\u4E3Aundefined\u7684\u6570\u636E\uFF0C\u9700\u8981\u79FB\u9664\u6389\n // \u4E0D\u7528event.data.__tableItems = _.compact(event.data.__tableItems)\u662F\u56E0\u4E3A\u4F1A\u628A__tableItems\u53D8\u91CF\u4FDD\u5B58\u5230\u8868\u5355\u4E2D\n removeEmptyItems(event.data.__tableItems);\n let fieldValue = event.data.__tableItems;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5_.cloneDeep\uFF0C\u56E0\u4E3A\u7FFB\u9875form\u4E2D\u7528\u7684\u662Fevent.data.__tableItems\uFF0C\u76F4\u63A5\u53D8\u66F4\u5176\u503C\u5373\u53EF\u6539\u53D8\u8868\u5355\u4E2D\u7684\u503C\n // \u65B0\u5EFA\u4E00\u6761\u7A7A\u767D\u884C\u5E76\u4FDD\u5B58\u5230\u5B50\u8868\u7EC4\u4EF6\n var parent = event.data.__super.parent;\n var primaryKey = \"".concat(primaryKey,"\";\n var __parentIndex = parent && _.findIndex(fieldValue, function(item){\n return item[primaryKey] == parent[primaryKey];\n });\n if(parent && __parentIndex < 0){\n let tableId = \"").concat(props.id,"\";\n let table = scope.getComponentById(tableId)\n // autoGeneratePrimaryKeyValue\u4E0D\u4E3Atrue\u7684\u60C5\u51B5\u4E0B\uFF0C\u5373\u5B50\u8868\u7EC4\u4EF6input-table\u7684pipeOut\u51FD\u6570\u4E2D\u4F1A\u79FB\u9664\u8868\u5355\u4E86\u5B50\u8868\u5B57\u6BB5\u7684primaryKey\u5B57\u6BB5\u503C\uFF0C\n // \u6B64\u65F6\u884CprimaryKey\u5B57\u6BB5\u503C\u4E3A\u7A7A\uFF0C\u4F46\u662FpipeIn\u51FD\u6570\u4E2D\u5DF2\u7ECF\u4E3Ainput-table\u81EA\u52A8\u751F\u6210\u8FC7primaryKey\u5B57\u6BB5\u503C\u4E86\uFF0C\u53EA\u662F\u6CA1\u6709\u8F93\u51FA\u5230\u8868\u5355\u5B57\u6BB5\u503C\u4E2D\u800C\u5DF2\n // \u6240\u4EE5\u4E0A\u9762\u4ECE\u8868\u5355\u5B57\u6BB5\u503C\u4E2D\u6CA1\u627E\u5230__parentIndex\uFF0C\u662F\u56E0\u4E3A\u6B64\u65F6\u884CprimaryKey\u5B57\u6BB5\u503C\u53EA\u7ECF\u8FC7pipeIn\u4FDD\u5B58\u5230table\u7EC4\u4EF6\u5185\u800C\u6CA1\u6709\u4FDD\u5B58\u5230tableService\n __parentIndex = _.findIndex(table.props.value, function(item){\n return item[primaryKey] == parent[primaryKey];\n });\n }\n if(parent){\n fieldValue[__parentIndex].children.push({});\n // \u8FD9\u91CC\u5B9E\u6D4B\u4E0D\u9700\u8981fieldValue[__parentIndex] = ... \u6765\u91CD\u5199\u6574\u4E2A\u7236\u884C\u8BA9\u5B50\u8868\u56DE\u663E\uFF0C\u6240\u4EE5\u6CA1\u52A0\u76F8\u5173\u4EE3\u7801\n }\n else{\n fieldValue.push({});\n }\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n let buttonNextId = \"").concat(buttonNextId,"\";\n let __paginationServiceId = \"").concat(formPaginationId,"\";\n let __paginationData = scope.getComponentById(__paginationServiceId).getData();\n event.data.index = __paginationData.index;\n if(parent){\n event.data.__page = fieldValue[__parentIndex].children.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n event.data.__parentIndex = __parentIndex; //\u6267\u884C\u4E0B\u9762\u7684\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\u4E2D\u4F9D\u8D56\u4E86__parentIndex\u503C\n }\n else{\n event.data.__page = fieldValue.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n }\n // \u89E6\u53D1\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\uFF0C\u5B9E\u73B0\u4FDD\u5B58\u5F53\u524D\u9875\u6570\u636E\u5E76\u8DF3\u8F6C\u5230\u6700\u540E\u4E00\u884C\n scope.getComponentById(buttonNextId).props.dispatchEvent(\"click\", event.data);\n ");onSaveAndCopyItemScript="\n let scope = event.context.scoped;\n let __formId = \"".concat(formId,"\";\n // let newItem = JSON.parse(JSON.stringify(event.data));\n let newItem = scope.getComponentById(__formId).getValues();//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528event.data\uFF0C\u56E0\u4E3A\u5176\u62FF\u5230\u7684\u662F\u5F39\u51FA\u8868\u5355\u65F6\u7684\u521D\u59CB\u503C\uFF0C\u4E0D\u662F\u7528\u6237\u5B9E\u65F6\u586B\u5199\u7684\u6570\u636E\n newItem = _.clone(newItem);\n let removeEmptyItems = function(items){\n let i = _.findIndex(items, function(item){\n return item === undefined\n });\n if(i > -1){\n items.splice(i, 1);\n removeEmptyItems(items);\n }\n }\n // \u56E0\u4E3A\u5220\u9664\u65F6\u53EA\u662F\u628Ainput-table\u7EC4\u4EF6\u4E2D\u7684\u884C\u6570\u636E\u5220\u9664\u4E86\uFF0C\u5E76\u6CA1\u6709\u628A\u7236\u5C42service\u4E2D\u7684\u884C\u5220\u9664\uFF0C\u6240\u4EE5__tableItems\u4F1A\u6709\u503C\u4E3Aundefined\u7684\u6570\u636E\uFF0C\u9700\u8981\u79FB\u9664\u6389\n // \u4E0D\u7528event.data.__tableItems = _.compact(event.data.__tableItems)\u662F\u56E0\u4E3A\u4F1A\u628A__tableItems\u53D8\u91CF\u4FDD\u5B58\u5230\u8868\u5355\u4E2D\n removeEmptyItems(event.data.__tableItems);\n let fieldValue = event.data.__tableItems;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5_.cloneDeep\uFF0C\u56E0\u4E3A\u7FFB\u9875form\u4E2D\u7528\u7684\u662Fevent.data.__tableItems\uFF0C\u76F4\u63A5\u53D8\u66F4\u5176\u503C\u5373\u53EF\u6539\u53D8\u8868\u5355\u4E2D\u7684\u503C\n // \u590D\u5236\u5F53\u524D\u9875\u6570\u636E\u5230\u65B0\u5EFA\u884C\u5E76\u4FDD\u5B58\u5230\u5B50\u8868\u7EC4\u4EF6\n // fieldValue.push(newItem);\n var parent = event.data.__super.parent;\n var primaryKey = \"").concat(primaryKey,"\";\n var __parentIndex = parent && _.findIndex(fieldValue, function(item){\n return item[primaryKey] == parent[primaryKey];\n });\n if(parent && __parentIndex < 0){\n let tableId = \"").concat(props.id,"\";\n let table = scope.getComponentById(tableId)\n // autoGeneratePrimaryKeyValue\u4E0D\u4E3Atrue\u7684\u60C5\u51B5\u4E0B\uFF0C\u5373\u5B50\u8868\u7EC4\u4EF6input-table\u7684pipeOut\u51FD\u6570\u4E2D\u4F1A\u79FB\u9664\u8868\u5355\u4E86\u5B50\u8868\u5B57\u6BB5\u7684primaryKey\u5B57\u6BB5\u503C\uFF0C\n // \u6B64\u65F6\u884CprimaryKey\u5B57\u6BB5\u503C\u4E3A\u7A7A\uFF0C\u4F46\u662FpipeIn\u51FD\u6570\u4E2D\u5DF2\u7ECF\u4E3Ainput-table\u81EA\u52A8\u751F\u6210\u8FC7primaryKey\u5B57\u6BB5\u503C\u4E86\uFF0C\u53EA\u662F\u6CA1\u6709\u8F93\u51FA\u5230\u8868\u5355\u5B57\u6BB5\u503C\u4E2D\u800C\u5DF2\n // \u6240\u4EE5\u4E0A\u9762\u4ECE\u8868\u5355\u5B57\u6BB5\u503C\u4E2D\u6CA1\u627E\u5230__parentIndex\uFF0C\u662F\u56E0\u4E3A\u6B64\u65F6\u884CprimaryKey\u5B57\u6BB5\u503C\u53EA\u7ECF\u8FC7pipeIn\u4FDD\u5B58\u5230table\u7EC4\u4EF6\u5185\u800C\u6CA1\u6709\u4FDD\u5B58\u5230tableService\n __parentIndex = _.findIndex(table.props.value, function(item){\n return item[primaryKey] == parent[primaryKey];\n });\n }\n if(newItem[primaryKey]){\n // \u5982\u679CnewItem\u5DF2\u7ECF\u6709\u4E3B\u952E\u5B57\u6BB5\u503C\uFF0C\u5219\u91CD\u65B0\u751F\u6210\u65B0\u7684\u4E3B\u952E\u503C\uFF0C\u5426\u5219\u4F1A\u91CD\u590D\u3002\n let uuidv4 = new Function(\"return (\" + ").concat(uuidv4.toString()," + \")()\");\n newItem[primaryKey] = uuidv4();\n }\n if(parent){\n fieldValue[__parentIndex].children.push(newItem);\n // \u8FD9\u91CC\u5B9E\u6D4B\u4E0D\u9700\u8981fieldValue[__parentIndex] = ... \u6765\u91CD\u5199\u6574\u4E2A\u7236\u884C\u8BA9\u5B50\u8868\u56DE\u663E\uFF0C\u6240\u4EE5\u6CA1\u52A0\u76F8\u5173\u4EE3\u7801\n }\n else{\n fieldValue.push(newItem);\n }\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n let buttonNextId = \"").concat(buttonNextId,"\";\n let __paginationServiceId = \"").concat(formPaginationId,"\";\n let __paginationData = scope.getComponentById(__paginationServiceId).getData();\n event.data.index = __paginationData.index;\n if(parent){\n event.data.__page = fieldValue[__parentIndex].children.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n event.data.__parentIndex = __parentIndex; //\u6267\u884C\u4E0B\u9762\u7684\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\u4E2D\u4F9D\u8D56\u4E86__parentIndex\u503C\n }\n else{\n event.data.__page = fieldValue.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n }\n // \u89E6\u53D1\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\uFF0C\u5B9E\u73B0\u4FDD\u5B58\u5F53\u524D\u9875\u6570\u636E\u5E76\u8DF3\u8F6C\u5230\u6700\u540E\u4E00\u884C\n scope.getComponentById(buttonNextId).props.dispatchEvent(\"click\", event.data);\n ");dialogButtons=[{"type":"button","label":i18next__default__default["default"].t('frontend_input_table_button_confirm'),//"完成",
1336
+ onSaveAndNewItemScript="\n let scope = event.context.scoped;\n let removeEmptyItems = function(items){\n let i = _.findIndex(items, function(item){\n return item === undefined\n });\n if(i > -1){\n items.splice(i, 1);\n removeEmptyItems(items);\n }\n }\n // \u56E0\u4E3A\u5220\u9664\u65F6\u53EA\u662F\u628Ainput-table\u7EC4\u4EF6\u4E2D\u7684\u884C\u6570\u636E\u5220\u9664\u4E86\uFF0C\u5E76\u6CA1\u6709\u628A\u7236\u5C42service\u4E2D\u7684\u884C\u5220\u9664\uFF0C\u6240\u4EE5__tableItems\u4F1A\u6709\u503C\u4E3Aundefined\u7684\u6570\u636E\uFF0C\u9700\u8981\u79FB\u9664\u6389\n // \u4E0D\u7528event.data.__tableItems = _.compact(event.data.__tableItems)\u662F\u56E0\u4E3A\u4F1A\u628A__tableItems\u53D8\u91CF\u4FDD\u5B58\u5230\u8868\u5355\u4E2D\n removeEmptyItems(event.data.__tableItems);\n let fieldValue = event.data.__tableItems;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5_.cloneDeep\uFF0C\u56E0\u4E3A\u7FFB\u9875form\u4E2D\u7528\u7684\u662Fevent.data.__tableItems\uFF0C\u76F4\u63A5\u53D8\u66F4\u5176\u503C\u5373\u53EF\u6539\u53D8\u8868\u5355\u4E2D\u7684\u503C\n // \u65B0\u5EFA\u4E00\u6761\u7A7A\u767D\u884C\u5E76\u4FDD\u5B58\u5230\u5B50\u8868\u7EC4\u4EF6\n var parent = event.data.__super.parent;\n var primaryKey = \"".concat(primaryKey,"\";\n var __parentIndex = parent && _.findIndex(fieldValue, function(item){\n return item[primaryKey] == parent[primaryKey];\n });\n if(parent && __parentIndex < 0){\n let tableId = \"").concat(props.id,"\";\n let table = scope.getComponentById(tableId)\n // autoGeneratePrimaryKeyValue\u4E0D\u4E3Atrue\u7684\u60C5\u51B5\u4E0B\uFF0C\u5373\u5B50\u8868\u7EC4\u4EF6input-table\u7684pipeOut\u51FD\u6570\u4E2D\u4F1A\u79FB\u9664\u8868\u5355\u4E86\u5B50\u8868\u5B57\u6BB5\u7684primaryKey\u5B57\u6BB5\u503C\uFF0C\n // \u6B64\u65F6\u884CprimaryKey\u5B57\u6BB5\u503C\u4E3A\u7A7A\uFF0C\u4F46\u662FpipeIn\u51FD\u6570\u4E2D\u5DF2\u7ECF\u4E3Ainput-table\u81EA\u52A8\u751F\u6210\u8FC7primaryKey\u5B57\u6BB5\u503C\u4E86\uFF0C\u53EA\u662F\u6CA1\u6709\u8F93\u51FA\u5230\u8868\u5355\u5B57\u6BB5\u503C\u4E2D\u800C\u5DF2\n // \u6240\u4EE5\u4E0A\u9762\u4ECE\u8868\u5355\u5B57\u6BB5\u503C\u4E2D\u6CA1\u627E\u5230__parentIndex\uFF0C\u662F\u56E0\u4E3A\u6B64\u65F6\u884CprimaryKey\u5B57\u6BB5\u503C\u53EA\u7ECF\u8FC7pipeIn\u4FDD\u5B58\u5230table\u7EC4\u4EF6\u5185\u800C\u6CA1\u6709\u4FDD\u5B58\u5230tableService\n __parentIndex = _.findIndex(table.props.value, function(item){\n return item[primaryKey] == parent[primaryKey];\n });\n }\n if(parent){\n fieldValue[__parentIndex].children.push({});\n // \u8FD9\u91CC\u5B9E\u6D4B\u4E0D\u9700\u8981fieldValue[__parentIndex] = ... \u6765\u91CD\u5199\u6574\u4E2A\u7236\u884C\u8BA9\u5B50\u8868\u56DE\u663E\uFF0C\u6240\u4EE5\u6CA1\u52A0\u76F8\u5173\u4EE3\u7801\n }\n else{\n fieldValue.push({});\n }\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n let buttonNextId = \"").concat(buttonNextId,"\";\n let __paginationServiceId = \"").concat(formPaginationId,"\";\n let __paginationData = scope.getComponentById(__paginationServiceId).getData();\n event.data.index = __paginationData.index;\n if(parent){\n event.data.__page = fieldValue[__parentIndex].children.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n event.data.__parentIndex = __parentIndex; //\u6267\u884C\u4E0B\u9762\u7684\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\u4E2D\u4F9D\u8D56\u4E86__parentIndex\u503C\n }\n else{\n event.data.__page = fieldValue.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n }\n // \u89E6\u53D1\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\uFF0C\u5B9E\u73B0\u4FDD\u5B58\u5F53\u524D\u9875\u6570\u636E\u5E76\u8DF3\u8F6C\u5230\u6700\u540E\u4E00\u884C\n scope.getComponentById(buttonNextId).props.dispatchEvent(\"click\", event.data);\n ");onSaveAndCopyItemScript="\n let scope = event.context.scoped;\n let __formId = \"".concat(formId,"\";\n // let newItem = JSON.parse(JSON.stringify(event.data));\n let newItem = scope.getComponentById(__formId).getValues();//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528event.data\uFF0C\u56E0\u4E3A\u5176\u62FF\u5230\u7684\u662F\u5F39\u51FA\u8868\u5355\u65F6\u7684\u521D\u59CB\u503C\uFF0C\u4E0D\u662F\u7528\u6237\u5B9E\u65F6\u586B\u5199\u7684\u6570\u636E\n newItem = _.clone(newItem);\n let removeEmptyItems = function(items){\n let i = _.findIndex(items, function(item){\n return item === undefined\n });\n if(i > -1){\n items.splice(i, 1);\n removeEmptyItems(items);\n }\n }\n // \u56E0\u4E3A\u5220\u9664\u65F6\u53EA\u662F\u628Ainput-table\u7EC4\u4EF6\u4E2D\u7684\u884C\u6570\u636E\u5220\u9664\u4E86\uFF0C\u5E76\u6CA1\u6709\u628A\u7236\u5C42service\u4E2D\u7684\u884C\u5220\u9664\uFF0C\u6240\u4EE5__tableItems\u4F1A\u6709\u503C\u4E3Aundefined\u7684\u6570\u636E\uFF0C\u9700\u8981\u79FB\u9664\u6389\n // \u4E0D\u7528event.data.__tableItems = _.compact(event.data.__tableItems)\u662F\u56E0\u4E3A\u4F1A\u628A__tableItems\u53D8\u91CF\u4FDD\u5B58\u5230\u8868\u5355\u4E2D\n removeEmptyItems(event.data.__tableItems);\n let fieldValue = event.data.__tableItems;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5_.cloneDeep\uFF0C\u56E0\u4E3A\u7FFB\u9875form\u4E2D\u7528\u7684\u662Fevent.data.__tableItems\uFF0C\u76F4\u63A5\u53D8\u66F4\u5176\u503C\u5373\u53EF\u6539\u53D8\u8868\u5355\u4E2D\u7684\u503C\n // \u590D\u5236\u5F53\u524D\u9875\u6570\u636E\u5230\u65B0\u5EFA\u884C\u5E76\u4FDD\u5B58\u5230\u5B50\u8868\u7EC4\u4EF6\n // fieldValue.push(newItem);\n var parent = event.data.__super.parent;\n var primaryKey = \"").concat(primaryKey,"\";\n var __parentIndex = parent && _.findIndex(fieldValue, function(item){\n return item[primaryKey] == parent[primaryKey];\n });\n if(parent && __parentIndex < 0){\n let tableId = \"").concat(props.id,"\";\n let table = scope.getComponentById(tableId)\n // autoGeneratePrimaryKeyValue\u4E0D\u4E3Atrue\u7684\u60C5\u51B5\u4E0B\uFF0C\u5373\u5B50\u8868\u7EC4\u4EF6input-table\u7684pipeOut\u51FD\u6570\u4E2D\u4F1A\u79FB\u9664\u8868\u5355\u4E86\u5B50\u8868\u5B57\u6BB5\u7684primaryKey\u5B57\u6BB5\u503C\uFF0C\n // \u6B64\u65F6\u884CprimaryKey\u5B57\u6BB5\u503C\u4E3A\u7A7A\uFF0C\u4F46\u662FpipeIn\u51FD\u6570\u4E2D\u5DF2\u7ECF\u4E3Ainput-table\u81EA\u52A8\u751F\u6210\u8FC7primaryKey\u5B57\u6BB5\u503C\u4E86\uFF0C\u53EA\u662F\u6CA1\u6709\u8F93\u51FA\u5230\u8868\u5355\u5B57\u6BB5\u503C\u4E2D\u800C\u5DF2\n // \u6240\u4EE5\u4E0A\u9762\u4ECE\u8868\u5355\u5B57\u6BB5\u503C\u4E2D\u6CA1\u627E\u5230__parentIndex\uFF0C\u662F\u56E0\u4E3A\u6B64\u65F6\u884CprimaryKey\u5B57\u6BB5\u503C\u53EA\u7ECF\u8FC7pipeIn\u4FDD\u5B58\u5230table\u7EC4\u4EF6\u5185\u800C\u6CA1\u6709\u4FDD\u5B58\u5230tableService\n __parentIndex = _.findIndex(table.props.value, function(item){\n return item[primaryKey] == parent[primaryKey];\n });\n }\n if(newItem[primaryKey]){\n // \u5982\u679CnewItem\u5DF2\u7ECF\u6709\u4E3B\u952E\u5B57\u6BB5\u503C\uFF0C\u5219\u91CD\u65B0\u751F\u6210\u65B0\u7684\u4E3B\u952E\u503C\uFF0C\u5426\u5219\u4F1A\u91CD\u590D\u3002\n // let uuidv4 = new Function(\"return (\" + ").concat(uuidv4.toString()," + \")()\");\n // newItem[primaryKey] = uuidv4();\n // \u5220\u9664primaryKey\u4F1A\u81EA\u52A8\u52A0primaryKey\uFF0C\u8FD9\u91CC\u4E0D\u5220\u9664primaryKey\u5BA1\u6279\u738B\u4F1A\u6709bug,\u50CF\u4E0A\u9762\u91CD\u65B0\u7ED9\u65B0\u7684uuid\u503C\u4E5F\u4E00\u6837\uFF0C\u89C1\uFF1A[\u5B50\u8868-\u901A\u8FC7\u590D\u5236\u51FA\u6765\u7684\u8BB0\u5F55\uFF0C\u518D\u70B9\u51FB\u7F16\u8F91\uFF0C\u6CA1\u6709\u503C](https://github.com/steedos/steedos-plugins/issues/83)\n // \u53EA\u80FD\u5220\u9664primaryKey\u952E\u503C\uFF0C\u6539\u540E\u4E0D\u5F71\u54CDautoGeneratePrimaryKeyValue\u529F\u80FD\u6700\u7EC8\u6548\u679C\n delete newItem[primaryKey];\n }\n if(parent){\n fieldValue[__parentIndex].children.push(newItem);\n // \u8FD9\u91CC\u5B9E\u6D4B\u4E0D\u9700\u8981fieldValue[__parentIndex] = ... \u6765\u91CD\u5199\u6574\u4E2A\u7236\u884C\u8BA9\u5B50\u8868\u56DE\u663E\uFF0C\u6240\u4EE5\u6CA1\u52A0\u76F8\u5173\u4EE3\u7801\n }\n else{\n fieldValue.push(newItem);\n }\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n let buttonNextId = \"").concat(buttonNextId,"\";\n let __paginationServiceId = \"").concat(formPaginationId,"\";\n let __paginationData = scope.getComponentById(__paginationServiceId).getData();\n event.data.index = __paginationData.index;\n if(parent){\n event.data.__page = fieldValue[__parentIndex].children.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n event.data.__parentIndex = __parentIndex; //\u6267\u884C\u4E0B\u9762\u7684\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\u4E2D\u4F9D\u8D56\u4E86__parentIndex\u503C\n }\n else{\n event.data.__page = fieldValue.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n }\n // \u89E6\u53D1\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\uFF0C\u5B9E\u73B0\u4FDD\u5B58\u5F53\u524D\u9875\u6570\u636E\u5E76\u8DF3\u8F6C\u5230\u6700\u540E\u4E00\u884C\n scope.getComponentById(buttonNextId).props.dispatchEvent(\"click\", event.data);\n ");dialogButtons=[{"type":"button","label":i18next__default__default["default"].t('frontend_input_table_button_confirm'),//"完成",
1337
1337
  "actionType":"confirm","level":"primary"}];if(props.addable){// 有新增行权限时额外添加新增和复制按钮
1338
1338
  dialogButtons=[{"type":"button","label":i18next__default__default["default"].t('frontend_input_table_button_new'),//"新增",
1339
1339
  "tooltip":i18next__default__default["default"].t('frontend_input_table_button_new_tooltip'),"onEvent":{"click":{"actions":[{"actionType":"validate","componentId":formId},{"actionType":"custom","script":onSaveAndNewItemScript,"expression":"${!!!event.data.validateResult.error}"//触发表单校验结果会存入validateResult,amis 3.2不支持,高版本比如 3.5.3支持