@steedos-widgets/amis-lib 6.10.16 → 6.10.18

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.umd.js CHANGED
@@ -73,7 +73,7 @@ if(field.expand){expandFields.push(field);}else{if(field.name.indexOf('.')<0){if
73
73
  // return item.replace(/^{/,"").replace(/}$/,"");
74
74
  // }).join(",")) : "";
75
75
  _t151="";_context61.n=1;return getFieldsTemplate(object,fields,options.expand);case 1:fieldsTemplate=_t151.concat.call(_t151,_context61.v).concat(treeFields).concat(cfsFields);return _context61.a(2,{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",queryFields:fieldsTemplate,query:"{".concat(alias,":").concat(object.name).concat(queryOptions,"{").concat(fieldsTemplate,"}").concat(countQuery,"}")});}},_callee61);}));return _getFindQuery.apply(this,arguments);}function getRecordPermissionsQuery(object,recordId,options){var queryOptions="";if(recordId){queryOptions="(filters:[\"".concat(object.idFieldName,"\", \"=\", \"").concat(recordId,"\"])");}var alias="data";if(options){if(options.alias){alias=options.alias;}if(options.filters){queryOptions="(filters:".concat(options.filters,")");}if(options.queryOptions){queryOptions="(".concat(options.queryOptions,")");}}var recordPermissionsTemplate=getRecordPermissionsTemplate();if(options!==null&&options!==void 0&&options.fields&&options.fields.length){recordPermissionsTemplate="\n recordPermissions: _permissions{\n ".concat(options.fields.join(","),"\n }\n ");}return{query:"{".concat(alias,":").concat(object.name).concat(queryOptions,"{").concat(object.idFieldName,",").concat(recordPermissionsTemplate,"}}")};}function getApi$2(isMobile){if(isMobile);else{// return __meteor_runtime_config__.ROOT_URL_PATH_PREFIX + "/graphql"
76
- return"${context.rootUrl}/graphql?reload=${additionalFilters|join}&listName=${listName}";}}/*
76
+ return"${context.rootUrl}/graphql?reload=${additionalFilters|join}";}}/*
77
77
  * @Author: baozhoutao@steedos.com
78
78
  * @Date: 2022-08-04 10:42:49
79
79
  * @LastEditors: baozhoutao@steedos.com
@@ -226,21 +226,27 @@ if(visible.trim().startsWith('function')){visible=visible.replace('function','fu
226
226
  operationButtons.push({type:'steedos-object-button',name:button.name,objectName:button.objectName,visibleOnAlias:getButtonVisibleOn$1(button),className:'antd-Button--default'});});if(!(operationButtons.length<1)){_context68.n=1;break;}return _context68.a(2);case 1:return _context68.a(2,{type:'operation',label:"&nbsp;",fixed:'right',labelClassName:'text-center',//TODO:目前3.6.3-patch.3版本中对于动态classname处理存在问题,简单处理固定列问题,等待amis解决crud的columns不支持动态classname的问题
227
227
  className:'text-center steedos-listview-operation w-10 is-sticky is-sticky-right is-sticky-first-right',buttons:[{"type":"steedos-dropdown-button","label":"xxx","buttons":operationButtons,"placement":"bottomRight","overlayClassName":"border rounded !min-w-[160px]","trigger":["click"],"id":"u:c2140a365019",onOpenApi:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",requestAdaptor:"api.data={}; return api;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:"\n payload = {\n record: {\n recordPermissions: payload\n }\n };\n return payload;\n "}}]});}},_callee68);}));return _getTableOperation.apply(this,arguments);}function getDefaultCrudCard(_x34,_x35){return _getDefaultCrudCard.apply(this,arguments);}function _getDefaultCrudCard(){_getDefaultCrudCard=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee69(columns,options){var labelFieldName,titleColumn,bodyColumns,card,hideToolbarOperation,toolbarOperation;return _regenerator().w(function(_context69){while(1)switch(_context69.n){case 0:labelFieldName=(options===null||options===void 0?void 0:options.labelFieldName)||"name";bodyColumns=[];columns.forEach(function(item){delete item.quickEdit;delete item.width;if(item.name===labelFieldName){titleColumn=item;}else{if(item.name!=="_index"){bodyColumns.push(item);}}});card={"header":{"title":titleColumn.tpl},body:bodyColumns,// useCardLabel: false,
228
228
  toolbar:[]};hideToolbarOperation=options.formFactor==='SMALL'||["split"].indexOf(options.displayAs)>-1;if(hideToolbarOperation){_context69.n=2;break;}_context69.n=1;return getTableOperation(options);case 1:toolbarOperation=_context69.v;if(toolbarOperation){toolbarOperation.className+=" inline-block w-auto";}card.toolbar.push(toolbarOperation);case 2:return _context69.a(2,card);}},_callee69);}));return _getDefaultCrudCard.apply(this,arguments);}function getTableSchema$1(_x36,_x37,_x38){return _getTableSchema$.apply(this,arguments);}/**
229
+ * 移除符合特定规则的sessionStorage项,用于清除列表视图组件请求接口的历史查询条件、翻页页码等本地存储参数数据,只保留最后一次的相关参数
230
+ * 兼容列表视图的两栏和三栏模式,以及列表视图的简化版(不带/grid)路径
231
+ * @param {string} suffix - 需要匹配的路径后缀,如"/crud"或"/crud/query"
232
+ * @returns {string} 返回包含正则表达式和清除逻辑的代码字符串
233
+ */function _getTableSchema$(){_getTableSchema$=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee70(object,fields,options){var _options2,isLookup,hiddenColumnOperation,defaults,listSchema,columns,useMobileColumns,card,toolbarOperation,treeConfig;return _regenerator().w(function(_context70){while(1)switch(_context70.n){case 0:if(!options){options={};}_options2=options,isLookup=_options2.isLookup,hiddenColumnOperation=_options2.hiddenColumnOperation;defaults=options.defaults;listSchema=defaults&&defaults.listSchema||{};columns=[];useMobileColumns=options.formFactor==='SMALL'||["split"].indexOf(options.displayAs)>-1;if(isLookup){// 在lookup手机端列表模式调式好之前不使用getMobileTableColumns
234
+ useMobileColumns=false;}if(listSchema.mode&&listSchema.mode!=="table"){// 如果指定的mode,则不走我们内置的手机端列表效果,使用steedos组件内部开发的默认card/list效果,或者由用户自己实现card/list模式的crud列表
235
+ useMobileColumns=false;}if(!useMobileColumns){_context70.n=2;break;}_context70.n=1;return getMobileTableColumns(fields,options);case 1:columns=_context70.v;_context70.n=8;break;case 2:_context70.n=3;return getTableColumns(object,fields,options);case 3:columns=_context70.v;if(!(listSchema.mode==="cards")){_context70.n=6;break;}card=listSchema.card;if(card){_context70.n=5;break;}_context70.n=4;return getDefaultCrudCard(columns,options);case 4:card=_context70.v;case 5:return _context70.a(2,_objectSpread({mode:"cards",perPageAvailable:[20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:false,card:card,syncLocation:false,keepItemSelectionOnPageChange:true,checkOnItemClick:isLookup?true:false,labelTpl:"${".concat(options.labelFieldName,"}"),autoFillHeight:false,// 自动高度效果不理想,先关闭
236
+ columnsTogglable:false},getDefaultParams$1(options)));case 6:if(!(!isLookup&&!hiddenColumnOperation)){_context70.n=8;break;}_context70.n=7;return getTableOperation(options);case 7:toolbarOperation=_context70.v;columns.push(toolbarOperation);case 8:treeConfig={};if(options.enable_tree){treeConfig.expandConfig={expand:'first'};}return _context70.a(2,_objectSpread(_objectSpread({mode:"table",perPageAvailable:[20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:false,columns:columns,syncLocation:false,keepItemSelectionOnPageChange:true,checkOnItemClick:isLookup?true:false,labelTpl:"${".concat(options.labelFieldName,"}"),autoFillHeight:false,// 自动高度效果不理想,先关闭
237
+ columnsTogglable:false},treeConfig),getDefaultParams$1(options)));}},_callee70);}));return _getTableSchema$.apply(this,arguments);}function removeTableApiSessionStorageItems(suffix){// 手动转义suffix中的斜线/以确保正则表达式能够正确匹配路径
238
+ var escapedSuffix=suffix.replace(/\//g,'\\/');return"\n /**\n * \u6B63\u5219\u8868\u8FBE\u5F0F1\uFF1A\u5339\u914D\u4E0D\u5E26 /grid \u7684\u8DEF\u5F84\uFF0C\u8DEF\u5F84\u7ED3\u5C3E\u4E3A ".concat(escapedSuffix,"\n * - \u9002\u7528\u4E8E\u8DEF\u5F84\u683C\u5F0F\uFF1A/app/{appName}/{objectName}").concat(suffix,"\n * - \u53EF\u80FD\u7684suffix\u503C\u5305\u62EC\uFF1A\"/crud\", \"/crud/query\"\n */\n const noGridPattern = new RegExp('^\\\\/app\\\\/([^\\\\/]+)\\\\/([^\\\\/]+)").concat(escapedSuffix,"$');\n \n /**\n * \u6B63\u5219\u8868\u8FBE\u5F0F2\uFF1A\u5339\u914D\u5E26 /grid \u7684\u8DEF\u5F84\uFF0C\u8DEF\u5F84\u7ED3\u5C3E\u4E3A ").concat(escapedSuffix,"\n * - \u9002\u7528\u4E8E\u8DEF\u5F84\u683C\u5F0F\uFF1A/app/{appName}/{objectName}/grid/{listName}").concat(suffix,"\n * - \u53EF\u80FD\u7684suffix\u503C\u5305\u62EC\uFF1A\"/crud\", \"/crud/query\"\n */\n const withGridPattern = new RegExp('^\\\\/app\\\\/([^\\\\/]+)\\\\/([^\\\\/]+)\\\\/grid\\\\/([^\\\\/]+)").concat(escapedSuffix,"$');\n \n /**\n * \u6B63\u5219\u8868\u8FBE\u5F0F3\uFF1A\u5339\u914D\u5E26 /view \u7684\u8DEF\u5F84\uFF08\u5217\u8868\u4E09\u680F\u6A21\u5F0F\uFF09\uFF0C\u8DEF\u5F84\u7ED3\u5C3E\u4E3A ").concat(escapedSuffix,"\n * - \u9002\u7528\u4E8E\u8DEF\u5F84\u683C\u5F0F\uFF1A/app/{appName}/{objectName}/view/{recordId}").concat(suffix,"\n * - \u53EF\u80FD\u7684suffix\u503C\u5305\u62EC\uFF1A\"/crud\", \"/crud/query\"\n */\n const withViewPattern = new RegExp('^\\\\/app\\\\/([^\\\\/]+)\\\\/([^\\\\/]+)\\\\/view\\\\/([^\\\\/]+)").concat(escapedSuffix,"$');\n \n // \u6E05\u9664 sessionStorage \u4E2D\u7B26\u5408\u6761\u4EF6\u7684\u5386\u53F2\u6570\u636E\n for (let i = 0; i < sessionStorage.length; i++) {\n const key = sessionStorage.key(i);\n \n /**\n * \u68C0\u67E5\u662F\u5426\u5339\u914D\u89C4\u5219\u5E76\u79FB\u9664\u5339\u914D\u7684sessionStorage\u9879:\n * - noGridPattern \u5339\u914D\u7B80\u5316\u7248\u8DEF\u5F84\n * - withGridPattern \u5339\u914D\u5E26\u6709 /grid \u7684\u8DEF\u5F84\n * - withViewPattern \u5339\u914D\u5E26\u6709 /view \u7684\u8DEF\u5F84\n */\n if (noGridPattern.test(key) || withGridPattern.test(key) || withViewPattern.test(key)) {\n sessionStorage.removeItem(key);\n i--; // \u56E0\u4E3A\u79FB\u9664\u4E4B\u540E\uFF0C\u7D22\u5F15\u4E5F\u8DDF\u7740\u53D8\u5316\uFF0C\u6240\u4EE5\u9700\u8981\u56DE\u9000\u4E00\u6B65\n }\n }\n ");}/**
229
239
  *
230
240
  * @param {*} mainObject
231
241
  * @param {*} fields
232
242
  * @param {*} options = {filter: listview 过滤条件, ...}
233
243
  * @returns
234
- */function _getTableSchema$(){_getTableSchema$=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee70(object,fields,options){var _options2,isLookup,hiddenColumnOperation,defaults,listSchema,columns,useMobileColumns,card,toolbarOperation,treeConfig;return _regenerator().w(function(_context70){while(1)switch(_context70.n){case 0:if(!options){options={};}_options2=options,isLookup=_options2.isLookup,hiddenColumnOperation=_options2.hiddenColumnOperation;defaults=options.defaults;listSchema=defaults&&defaults.listSchema||{};columns=[];useMobileColumns=options.formFactor==='SMALL'||["split"].indexOf(options.displayAs)>-1;if(isLookup){// lookup手机端列表模式调式好之前不使用getMobileTableColumns
235
- useMobileColumns=false;}if(listSchema.mode&&listSchema.mode!=="table"){// 如果指定的mode,则不走我们内置的手机端列表效果,使用steedos组件内部开发的默认card/list效果,或者由用户自己实现card/list模式的crud列表
236
- useMobileColumns=false;}if(!useMobileColumns){_context70.n=2;break;}_context70.n=1;return getMobileTableColumns(fields,options);case 1:columns=_context70.v;_context70.n=8;break;case 2:_context70.n=3;return getTableColumns(object,fields,options);case 3:columns=_context70.v;if(!(listSchema.mode==="cards")){_context70.n=6;break;}card=listSchema.card;if(card){_context70.n=5;break;}_context70.n=4;return getDefaultCrudCard(columns,options);case 4:card=_context70.v;case 5:return _context70.a(2,_objectSpread({mode:"cards",perPageAvailable:[20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:false,card:card,syncLocation:false,keepItemSelectionOnPageChange:true,checkOnItemClick:isLookup?true:false,labelTpl:"${".concat(options.labelFieldName,"}"),autoFillHeight:false,// 自动高度效果不理想,先关闭
237
- columnsTogglable:false},getDefaultParams$1(options)));case 6:if(!(!isLookup&&!hiddenColumnOperation)){_context70.n=8;break;}_context70.n=7;return getTableOperation(options);case 7:toolbarOperation=_context70.v;columns.push(toolbarOperation);case 8:treeConfig={};if(options.enable_tree){treeConfig.expandConfig={expand:'first'};}return _context70.a(2,_objectSpread(_objectSpread({mode:"table",perPageAvailable:[20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:false,columns:columns,syncLocation:false,keepItemSelectionOnPageChange:true,checkOnItemClick:isLookup?true:false,labelTpl:"${".concat(options.labelFieldName,"}"),autoFillHeight:false,// 自动高度效果不理想,先关闭
238
- columnsTogglable:false},treeConfig),getDefaultParams$1(options)));}},_callee70);}));return _getTableSchema$.apply(this,arguments);}function getTableApi(_x39,_x40,_x41){return _getTableApi.apply(this,arguments);}function _getTableApi(){_getTableApi=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee71(mainObject,fields,options){var searchableFields,filter,filtersFunction,sort,top,_options$setDataToCom,setDataToComponentId,baseFilters,fileFields,fileFieldsKeys,lookupFields,valueField,api;return _regenerator().w(function(_context71){while(1)switch(_context71.n){case 0:searchableFields=[];filter=options.filter,filtersFunction=options.filtersFunction,sort=options.sort,top=options.top,_options$setDataToCom=options.setDataToComponentId,setDataToComponentId=_options$setDataToCom===void 0?'':_options$setDataToCom;if(___namespace.isArray(filter)){filter=___namespace.map(filter,function(item){if(item.operation){return[item.field,item.operation,item.value];}else{return item;}});}if(!filter){filter=[];}baseFilters=null;if(filter){baseFilters=filter;}___namespace.each(mainObject.fields,function(field){if(isFieldQuickSearchable(field,mainObject.NAME_FIELD_KEY)){searchableFields.push(field.name);}});fileFields={};fileFieldsKeys=[];// 含有optionsFunction属性, 无reference_to属性的lookup字段
244
+ */function getTableApi(_x39,_x40,_x41){return _getTableApi.apply(this,arguments);}function _getTableApi(){_getTableApi=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee71(mainObject,fields,options){var searchableFields,filter,filtersFunction,sort,top,_options$setDataToCom,setDataToComponentId,baseFilters,fileFields,fileFieldsKeys,lookupFields,valueField,api;return _regenerator().w(function(_context71){while(1)switch(_context71.n){case 0:searchableFields=[];filter=options.filter,filtersFunction=options.filtersFunction,sort=options.sort,top=options.top,_options$setDataToCom=options.setDataToComponentId,setDataToComponentId=_options$setDataToCom===void 0?'':_options$setDataToCom;if(___namespace.isArray(filter)){filter=___namespace.map(filter,function(item){if(item.operation){return[item.field,item.operation,item.value];}else{return item;}});}if(!filter){filter=[];}baseFilters=null;if(filter){baseFilters=filter;}___namespace.each(mainObject.fields,function(field){if(isFieldQuickSearchable(field,mainObject.NAME_FIELD_KEY)){searchableFields.push(field.name);}});fileFields={};fileFieldsKeys=[];// 含有optionsFunction属性, 无reference_to属性的lookup字段
239
245
  lookupFields={};fields.forEach(function(item){if(___namespace.includes(['image','avatar','file'],item.type)){fileFieldsKeys.push(item.name);fileFields[item.name]={name:item.name,type:item.type,multiple:item.multiple};}if(___namespace.includes(['lookup'],item.type)&&!item.reference_to){lookupFields[item.name]=item;}});valueField=mainObject.key_field||'_id';_context71.n=1;return getApi$1(mainObject,null,fields,{count:options.queryCount,alias:'rows',limit:top,queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 1:api=_context71.v;// api.url;//设计器上对象表格组件需要切换对象重新请求列表数据
240
246
  // if(options.isRelated){
241
247
  // api.url += "&recordId=${_master.recordId}";
242
248
  // }
243
- api.cache=3000;api.data.$term="$term";api.data.term="$term";api.data.$self="$$";api.data.self="$$";api.data.filter="$filter";api.data.loaded="${loaded}";api.data.listViewId="${listViewId}";api.data.listName="${listName}";api.requestAdaptor="\n let __changedFilterFormValues = api.data.$self.__changedFilterFormValues || {};\n let __changedSearchBoxValues = api.data.$self.__changedSearchBoxValues || {};\n // \u628A\u8868\u5355\u641C\u7D22\u548C\u5FEB\u901F\u641C\u7D22\u4E2D\u7684change\u4E8B\u4EF6\u4E2D\u8BB0\u5F55\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E5F\u62FC\u5230$self\u4E2D\uFF0C\u662F\u4E3A\u89E3\u51B3\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u65F6\uFF0C\u4E24\u8FB9\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u90FD\u5E26\u4E0A\uFF0C\u5373\uFF1A\n // \u6709\u65F6\u5728\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E8B\uFF0C\u5FD8\u8BB0\u70B9\u51FB\u56DE\u8F66\u952E\u6216\u641C\u7D22\u6309\u94AE\uFF0C\u800C\u662F\u8FDB\u4E00\u6B65\u4FEE\u6539\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u7684\u5173\u952E\u5B57\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\n // \u8FD9\u79CD\u60C5\u51B5\u4E0B\uFF0C\u89E6\u53D1\u7684\u641C\u7D22\u8BF7\u6C42\u4E2D\u6CA1\u6709\u5E26\u4E0A\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u3002\n // \u53CD\u8FC7\u6765\u5148\u5728\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u5374\u4E0D\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\uFF0C\u800C\u662F\u5230\u641C\u7D22\u8868\u5355\u4E2D\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u4E5F\u662F\u4E00\u6837\u7684\u3002\n // \u8FD9\u91CC\u76F4\u63A5\u5408\u5E76\u5230api.data.$self\uFF0C\u800C\u4E0D\u662F\u540E\u9762\u5B9A\u4E49\u7684selfData\u53D8\u91CF\uFF0C\u662F\u56E0\u4E3A\u53EF\u4EE5\u7701\u53BB\u5728\u63A5\u6536\u9002\u914D\u5668\u4E2D\u5199\u4E00\u6837\u7684\u5408\u5E76\u903B\u8F91\n // \u5982\u679C\u6709\u95EE\u9898\u53EF\u4EE5\u6539\u4E3A\u5408\u5E76\u5230selfData\u53D8\u91CF\u4E2D\uFF0C\u4F46\u662F\u8981\u5728\u63A5\u6536\u9002\u914D\u5668\u4E2D\u5199\u4E0A\u4E00\u6837\u7684\u5408\u5E76\u903B\u8F91\uFF0C\u5426\u5219\u91CC\u9762\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E0D\u4F1A\u5B58\u5165\u672C\u5730\u5B58\u50A8\u4E2D\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\n // selfData \u4E2D\u7684\u6570\u636E\u7531 CRUD \u63A7\u5236. selfData\u4E2D,\u53EA\u80FD\u83B7\u53D6\u5230 CRUD \u7ED9\u5B9A\u7684data. \u65E0\u6CD5\u4ECE\u6570\u636E\u94FE\u4E2D\u83B7\u53D6\u6570\u636E.\n let selfData = JSON.parse(JSON.stringify(api.data.$self));\n // \u4FDD\u7559\u4E00\u4EFD\u521D\u59CBdata\uFF0C\u4EE5\u4F9B\u81EA\u5B9A\u4E49\u53D1\u9001\u9002\u914D\u5668\u4E2D\u83B7\u53D6\u539F\u59CB\u6570\u636E\u3002\n const data = _.cloneDeep(api.data);\n let needToStoreListViewProps;\n try{\n // TODO: \u4E0D\u5E94\u8BE5\u76F4\u63A5\u5728\u8FD9\u91CC\u53D6localStorage\uFF0C\u5E94\u8BE5\u4ECE\u5916\u9762\u4F20\u5165\n const listName = api.data.listName;\n // \u53EA\u6709\u5728\u5217\u8868\u9875\u9762\u4E2D\u624D\u9700\u8981\u5B58\u50A8\u548C\u8BFB\u53D6\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u53C2\u6570\uFF0C\u76F8\u5173\u5B50\u8868\u7EC4\u4EF6\u4E0D\u9700\u8981\n needToStoreListViewProps = !!listName && !api.body.$self._isRelated;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(needToStoreListViewProps && localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n selfData = Object.assign({}, localListViewProps, selfData);\n if(!api.data.filter){\n api.data.filter = localListViewProps.filter;\n }\n if(!api.data.loaded){\n // \u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\uFF0C\u6BD4\u5982\u5237\u65B0\u6D4F\u89C8\u5668\u65F6\u56E0\u4E3Aapi.data.pageNo\u6709\u9ED8\u8BA4\u503C1\n // \u6240\u4EE5\u4F1A\u628AlocalSearchableFilter\u4E2D\u5DF2\u7ECF\u5B58\u8FC7\u7684\u9875\u7801\u8986\u76D6\n // \u5982\u679C\u662F\u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\u59CB\u7EC8\u8BA9\u7FFB\u9875\u9875\u7801\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u503C\n let formFactor = \"".concat(options.formFactor,"\";\n // \u79FB\u52A8\u7AEF\u4E0D\u8BC6\u522B\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u7FFB\u9875\u9875\u7801\uFF0C\u5426\u5219\u70B9\u51FB\u52A0\u8F7D\u66F4\u591A\u6309\u94AE\u540E\u65E0\u6CD5\u5237\u65B0\u56DE\u7B2C\u4E00\u9875\n // api.data.pageNo = formFactor === \"SMALL\" ? 1 : (localListViewProps.page || 1);\n // \u79FB\u52A8\u7AEF\u6682\u65F6\u53BB\u9664\u52A0\u8F7D\u66F4\u591A\uFF0C\u653E\u5F00\u7FFB\u9875\n api.data.pageNo = localListViewProps.page || 1;\n }\n }\n }\n catch(ex){\n console.error(\"\u672C\u5730\u5B58\u50A8\u4E2Dcrud\u53C2\u6570\u89E3\u6790\u5F02\u5E38\uFF1A\", ex);\n }\n ").concat(baseFilters?"var systemFilters = ".concat(JSON.stringify(baseFilters),";"):'var systemFilters = [];',"\n var _ids = [];\n if(systemFilters && systemFilters.length){\n SteedosUI.traverseNestedArrayFormula(systemFilters, api.context);\n }\n const filtersFunction = ").concat(filtersFunction,";\n if(filtersFunction){\n const _filters = filtersFunction(systemFilters, api.data.$self);\n if(api.data.listName == \"recent\"){\n _ids = _filters[2]\n }\n if(_filters && _filters.length > 0){\n if(_.isEmpty(systemFilters)){\n systemFilters = _filters || [];\n }else{\n systemFilters = [systemFilters, 'and', _filters];\n }\n }\n }\n let userFilters =[];\n \n if(_.isEmpty(systemFilters)){\n systemFilters = api.data.filter || [];\n }else{\n if(!_.isEmpty(api.data.filter)){\n systemFilters = [systemFilters, 'and', api.data.filter];\n }\n }\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : \"").concat(sort||'',"\";\n var allowSearchFields = ").concat(JSON.stringify(searchableFields),";\n if(api.data.$term){\n userFilters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n userFilters = [[\"").concat(valueField.name,"\", \"=\", selfData.value]];\n }\n\n var searchableFilter = SteedosUI.getSearchFilter(selfData) || [];\n if(searchableFilter.length > 0){\n if(userFilters.length > 0 ){\n userFilters = [userFilters, 'and', searchableFilter];\n }else{\n userFilters = searchableFilter;\n }\n }\n\n // \"\u641C\u7D22\u6B64\u5217\u8868\"\u641C\u7D22\u6846\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(_.isString(keyValue)){\n userFilters.push([key, \"contains\", keyValue]);\n }else if(_.isArray(keyValue) || _.isBoolean(keyValue) || keyValue){\n userFilters.push([key, \"=\", keyValue]);\n }\n })\n }\n\n var keywordsFilters = SteedosUI.getKeywordsSearchFilter(selfData.__keywords, allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n userFilters.push(keywordsFilters);\n }\n\n let filters = [];\n\n if(!_.isEmpty(systemFilters)){\n filters = systemFilters;\n };\n if(api.data.$self.additionalFilters){\n if(_.isString(api.data.$self.additionalFilters)){\n userFilters.push(eval(api.data.$self.additionalFilters))\n }else{\n userFilters.push(api.data.$self.additionalFilters)\n }\n }\n\n if(api.data.$self._isRelated){\n const self = api.data.$self;\n const relatedKey = self.relatedKey;\n const refField = self.uiSchema.fields[relatedKey];\n const masterRecord = self._master.record;\n const masterObjectName = self._master.objectName;\n let relatedValue = masterRecord._id;\n if(refField && refField.reference_to_field && refField.reference_to_field != '_id'){\n relatedValue = masterRecord[refField.reference_to_field]\n }\n let relatedFilters;\n if (\n refField && (refField._reference_to ||\n (refField.reference_to && !_.isString(refField.reference_to)))\n ) {\n relatedFilters = [\n [relatedKey + \"/o\", \"=\", masterObjectName],\n [relatedKey + \"/ids\", \"=\", relatedValue],\n ];\n } else {\n relatedFilters = [relatedKey, \"=\", relatedValue];\n }\n userFilters.push(relatedFilters)\n }\n\n if(!_.isEmpty(userFilters)){\n if(_.isEmpty(filters)){\n filters = userFilters;\n }else{\n filters = [filters, 'and', userFilters]\n }\n }\n api.data._ids = _ids;\n api.data = {\n query: api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim())\n }\n ").concat(options.requestAdaptor||'',";\n\n //\u5199\u5165\u672C\u6B21\u5B58\u50A8filters\u3001sort\n const listViewPropsStoreKey = location.pathname + \"/crud/query\";\n needToStoreListViewProps && sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify({\n filters: filters,\n sort: sort.trim(),\n pageSize: pageSize,\n skip: skip,\n fields: ").concat(JSON.stringify(___namespace.map(fields,'name')),"\n }));\n // console.log('table requestAdaptor', api);\n return api;\n ");api.adaptor="\n let fields = ".concat(JSON.stringify(___namespace.map(fields,'name')),";\n // \u8FD9\u91CC\u628A\u884C\u6570\u636E\u4E2D\u6240\u6709\u4E3A\u7A7A\u7684\u5B57\u6BB5\u503C\u914D\u7F6E\u4E3A\u7A7A\u5B57\u7B26\u4E32\uFF0C\u662F\u56E0\u4E3Aamis\u6709bug\uFF1Acrud\u7684columns\u4E2D\u7684\u5217\u5982\u679Ctype\u4E3Astatic-\u524D\u7F00\u7684\u8BDD\uFF0C\u884C\u6570\u636E\u4E2D\u8BE5\u5B57\u6BB5\u4E3A\u7A7A\u7684\u8BDD\u4F1A\u663E\u793A\u4E3A\u7236\u4F5C\u7528\u57DF\u4E2D\u540C\u540D\u53D8\u91CF\u503C\uFF0C\u89C1\uFF1Ahttps://github.com/baidu/amis/issues/9556\n (payload.data.rows || []).forEach((itemRow) => {\n (fields || []).forEach((itemField) => {\n if(itemField && itemField.indexOf(\".\") > -1){\n return;\n }\n if(itemField && (itemRow[itemField] === undefined || itemRow[itemField] === null)){\n // \u8FD9\u91CCitemRow\u4E2D\u4E0D\u5B58\u5728 itemField \u5C5E\u6027\uFF0C\u6216\u8005\u503C\u4E3Anull\u65F6\u90FD\u4F1A\u6709\u201C\u663E\u793A\u4E3A\u7236\u4F5C\u7528\u57DF\u4E2D\u7684\u540C\u540D\u53D8\u91CF\u503C\u201D\u7684\u95EE\u9898\uFF0C\u6240\u4EE5null\u548Cundefined\u90FD\u8981\u91CD\u7F6E\u4E3A\u7A7A\u5B57\u7B26\u4E32\n // \u5B9E\u6D4B\u6570\u5B57\u3001\u4E0B\u62C9\u6846\u3001\u591A\u9009lookup\u7B49\u5B57\u6BB5\u7C7B\u578B\u91CD\u7F6E\u4E3A\u7A7A\u5B57\u7B26\u4E32\u90FD\u4E0D\u4F1A\u6709\u95EE\u9898\uFF0C\u800C\u4E14\u5B9E\u6D4Bamis from\u7EC4\u4EF6\u7684\u6E05\u7A7A\u8868\u5355\u5B57\u6BB5\u503C\u529F\u80FD\u5C31\u662F\u628A\u8868\u5355\u4E2D\u7684\u5404\u79CD\u5B57\u6BB5\u7C7B\u578B\u8BBE\u7F6E\u4E3A\u7A7A\u5B57\u7B26\u4E32\uFF0C\u6240\u4EE5\u770B\u8D77\u6765\u4E5F\u7B26\u5408amis\u89C4\u8303\n itemRow[itemField] = \"\";\n }\n });\n });\n \n if(api.body.listName == \"recent\"){\n payload.data.rows = _.sortBy(payload.data.rows, function(item){\n return _.indexOf(api.body._ids, item._id)\n });\n }\n const enable_tree = ").concat(mainObject.enable_tree,";\n if(!enable_tree){\n _.each(payload.data.rows, function(item, index){\n const {pageNo, pageSize} = api.body;\n const skip = (pageNo - 1) * pageSize;\n item._index = skip + index + 1;\n })\n }\n window.postMessage(Object.assign({type: \"listview.loaded\"}), \"*\");\n let fileFields = ").concat(JSON.stringify(fileFields),";\n let lookupFields = ").concat(JSON.stringify(lookupFields),";\n _.each(payload.data.rows, function(item, index){\n _.each(fileFields , (field, key)=>{\n if(item[key] && item._display && item._display[key]){\n let value = item._display[key];\n if(!_.isArray(value)){\n value = [value]\n };\n if(field.type === 'file'){\n // item[key] = value\n // PC\u5BA2\u6237\u7AEF\u9644\u4EF6\u5B50\u8868\u5217\u8868\u70B9\u51FB\u6807\u9898\u9884\u89C8\u9644\u4EF6\u529F\u80FD\u4F9D\u8D56\u4E86_id\uFF0C\u6240\u4EE5\u8FD9\u91CC\u62FC\u51FA\u6765\n let itemKeyValue = item[key];\n item[key] = value.map(function(curValue, index){\n let fileId = typeof itemKeyValue == 'string' ? itemKeyValue : itemKeyValue[index];\n // \u514B\u9686\u4E00\u4EFD\u5BF9\u8C61\uFF0C\u907F\u514D\u4E0B\u65B9value\u9012\u5F52\u6C61\u67D3curValue\n let result = _.clone(curValue);\n result._id = fileId;\n result.value = fileId;\n return result;\n });\n }else{\n item[key] = _.map(value, (item)=>{\n if(field.type === 'image'){\n const url = window.getImageFieldUrl(item.url);\n return url;\n }\n return item.url;\n })\n }\n }\n })\n _.each(lookupFields , (field, key)=>{\n if(item[key]){\n if(field._optionsFunction){\n const optionsFunction = eval(\"(\" + field._optionsFunction+ \")\")(item);\n item[key + '__label'] = _.map(_.filter(optionsFunction, function(option){return item[key] == option.value}), 'label').join(' ');\n }else if(field.options){\n const options = field.options;\n item[key + '__label'] = _.map(_.filter(options, function(option){return item[key] == option.value}), 'label').join(' ');\n }\n }\n })\n })\n \n if(enable_tree){\n const records = payload.data.rows || [];\n const getTreeOptions = SteedosUI.getTreeOptions;\n const assignIndexToTreeRecords = function(tree, parentIndex) {\n tree.forEach(function (node, index) {\n // \u6784\u5EFA\u5F53\u524D\u8282\u70B9\u7684 _index\n var currentIndex = parentIndex ? parentIndex + '-' + (index + 1) : '' + (index + 1);\n \n // \u8D4B\u503C\u7ED9\u8282\u70B9\n node._index = currentIndex;\n \n // \u5982\u679C\u6709\u5B50\u8282\u70B9\uFF0C\u9012\u5F52\u8C03\u7528\u51FD\u6570\n if (node.children && node.children.length > 0) {\n assignIndexToTreeRecords(node.children, currentIndex);\n }\n });\n };\n payload.data.rows = getTreeOptions(records,{\"valueField\":\"_id\"});\n assignIndexToTreeRecords(payload.data.rows, '');\n }\n\n\n let needToStoreListViewProps;\n try{\n // TODO: \u4E0D\u5E94\u8BE5\u76F4\u63A5\u5728\u8FD9\u91CC\u53D6localStorage\uFF0C\u5E94\u8BE5\u4ECE\u5916\u9762\u4F20\u5165\n const listName = api.body.listName;\n // \u53EA\u6709\u5728\u5217\u8868\u9875\u9762\u4E2D\u624D\u9700\u8981\u5B58\u50A8\u548C\u8BFB\u53D6\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u53C2\u6570\uFF0C\u76F8\u5173\u5B50\u8868\u7EC4\u4EF6\u4E0D\u9700\u8981\n needToStoreListViewProps = !!listName && !api.body.$self._isRelated;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n /**\n * localListViewProps\u89C4\u8303\u6765\u81EAcrud\u8BF7\u6C42api\u4E2Dapi.data.$self\u53C2\u6570\u503C\u7684\u3002\n * \u6BD4\u5982\uFF1A{\"perPage\":20,\"page\":1,\"__searchable__name\":\"7\",\"__searchable__between__n1__c\":[null,null],\"filter\":[[\"name\",\"contains\",\"a\"]]}\n * __searchable__...:\u9876\u90E8\u653E\u5927\u955C\u641C\u7D22\u6761\u4EF6\n * filter:\u53F3\u4FA7\u8FC7\u6EE4\u5668\n * perPage:\u6BCF\u9875\u6761\u6570\n * page:\u5F53\u524D\u9875\u7801\n * orderBy:\u6392\u5E8F\u5B57\u6BB5\n * orderDir:\u6392\u5E8F\u65B9\u5411\n */\n let localListViewProps = needToStoreListViewProps && sessionStorage.getItem(listViewPropsStoreKey);\n let selfData = JSON.parse(JSON.stringify(api.body.$self));\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n selfData = Object.assign({}, localListViewProps, selfData, { filter: api.body.filter });\n if(!api.body.loaded){\n // \u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\uFF0C\u6BD4\u5982\u5237\u65B0\u6D4F\u89C8\u5668\u65F6\u56E0\u4E3Aapi.data.pageNo\u6709\u9ED8\u8BA4\u503C1\n // \u6240\u4EE5\u4F1A\u628AlocalSearchableFilter\u4E2D\u5DF2\u7ECF\u5B58\u8FC7\u7684\u9875\u7801\u8986\u76D6\n // \u5982\u679C\u662F\u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\u59CB\u7EC8\u8BA9\u7FFB\u9875\u9875\u7801\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u503C\n let formFactor = \"").concat(options.formFactor,"\";\n // \u79FB\u52A8\u7AEF\u4E0D\u8BC6\u522B\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u7FFB\u9875\u9875\u7801\uFF0C\u5426\u5219\u70B9\u51FB\u52A0\u8F7D\u66F4\u591A\u6309\u94AE\u540E\u65E0\u6CD5\u5237\u65B0\u56DE\u7B2C\u4E00\u9875\n // selfData.page = formFactor === \"SMALL\" ? 1 : (localListViewProps.page || 1);\n selfData.page = localListViewProps.page || 1;\n }\n }\n \n delete selfData.context;\n delete selfData.global;\n needToStoreListViewProps && sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(selfData));\n // \u8FD4\u56DE\u9875\u7801\u5230UI\u754C\u9762\n payload.data.page= selfData.page;\n }\n catch(ex){\n console.error(\"\u672C\u5730\u5B58\u50A8\u4E2Dcrud\u53C2\u6570\u89E3\u6790\u5F02\u5E38\uFF1A\", ex);\n }\n // \u6807\u8BB0\u52A0\u8F7D\u8FC7\uFF0C\u540E\u7EED\u4F18\u5148\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u52A0\u8F7D\u76F8\u5173\u53C2\u6570\n payload.data.loaded= true;\n const setDataToComponentId = \"").concat(setDataToComponentId,"\";\n if(setDataToComponentId){\n //https://github.com/baidu/amis/pull/6807 .parent\u7684\u6539\u52A8\u662F\u4E3A\u9002\u5E943.2getComponentById\u7684\u89C4\u5219\u6539\u52A8\uFF0C\u4E0D\u5F71\u54CD2.9\n var scope = context._scoped;\n var scopeParent = scope && scope.parent;\n var setDataToComponent = scopeParent && scopeParent.getComponentById(setDataToComponentId);\n if(setDataToComponent){\n setDataToComponent.setData({$count: payload.data.count});\n }\n };\n let formFactor = \"").concat(options.formFactor,"\";\n if(formFactor !== \"SMALL\"){\n const lisviewDom = document.querySelector(\".steedos-object-listview .antd-Table-table\");\n if(lisviewDom){\n setTimeout(()=>{\n lisviewDom.scrollIntoView();\n }, 600);\n }\n }\n\n // \u5217\u8868\u641C\u7D22\u548C\u5FEB\u901F\u641C\u7D22\uFF0C\u6709\u65F6\u5728\u67D0\u4E9B\u64CD\u4F5C\u60C5\u51B5\u4E0B\u8FD8\u662F\u4F1A\u9020\u6210crud\u63A5\u53E3\u8BF7\u6C42\u4F7F\u7528\u7684\u8FC7\u6EE4\u6761\u4EF6\u662F\u4E0A\u6B21\u7684\uFF0C\u8FD9\u91CC\u5F3A\u5236\u628A\u6B63\u786E\u7684\u8FC7\u6EE4\u6761\u4EF6\u8FD4\u56DE\u5230crud\uFF0C\u8BE6\u7EC6\u89C4\u5219\u89C1\uFF1Ahttps://github.com/steedos/steedos-platform/issues/7112\n // lookup\u5B57\u6BB5\u7684\u5F39\u51FA\u5217\u8868\u641C\u7D22\u4E0D\u53D7\u8FD9\u91CC\u5F71\u54CD\uFF0C\u56E0\u4E3Alookup\u5B57\u6BB5\u7684\u5F39\u51FA\u5217\u8868\u641C\u7D22\u662F\u5355\u72EC\u7684\u63A5\u53E3\u8BF7\u6C42\n payload.data.__changedFilterFormValues = api.context.__changedFilterFormValues;\n payload.data.__changedSearchBoxValues = api.context.__changedSearchBoxValues;\n ").concat(options.adaptor||'',"\n return payload;\n ");// api.trackExpression='${additionalFilters|json}'
249
+ api.cache=3000;api.data.$term="$term";api.data.term="$term";api.data.$self="$$";api.data.self="$$";api.data.filter="$filter";api.data.loaded="${loaded}";api.data.listViewId="${listViewId}";api.data.listName="${listName}";api.requestAdaptor="\n let __changedFilterFormValues = api.data.$self.__changedFilterFormValues || {};\n let __changedSearchBoxValues = api.data.$self.__changedSearchBoxValues || {};\n // \u628A\u8868\u5355\u641C\u7D22\u548C\u5FEB\u901F\u641C\u7D22\u4E2D\u7684change\u4E8B\u4EF6\u4E2D\u8BB0\u5F55\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E5F\u62FC\u5230$self\u4E2D\uFF0C\u662F\u4E3A\u89E3\u51B3\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u65F6\uFF0C\u4E24\u8FB9\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u90FD\u5E26\u4E0A\uFF0C\u5373\uFF1A\n // \u6709\u65F6\u5728\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E8B\uFF0C\u5FD8\u8BB0\u70B9\u51FB\u56DE\u8F66\u952E\u6216\u641C\u7D22\u6309\u94AE\uFF0C\u800C\u662F\u8FDB\u4E00\u6B65\u4FEE\u6539\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u7684\u5173\u952E\u5B57\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\n // \u8FD9\u79CD\u60C5\u51B5\u4E0B\uFF0C\u89E6\u53D1\u7684\u641C\u7D22\u8BF7\u6C42\u4E2D\u6CA1\u6709\u5E26\u4E0A\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u3002\n // \u53CD\u8FC7\u6765\u5148\u5728\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u5374\u4E0D\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\uFF0C\u800C\u662F\u5230\u641C\u7D22\u8868\u5355\u4E2D\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u4E5F\u662F\u4E00\u6837\u7684\u3002\n // \u8FD9\u91CC\u76F4\u63A5\u5408\u5E76\u5230api.data.$self\uFF0C\u800C\u4E0D\u662F\u540E\u9762\u5B9A\u4E49\u7684selfData\u53D8\u91CF\uFF0C\u662F\u56E0\u4E3A\u53EF\u4EE5\u7701\u53BB\u5728\u63A5\u6536\u9002\u914D\u5668\u4E2D\u5199\u4E00\u6837\u7684\u5408\u5E76\u903B\u8F91\n // \u5982\u679C\u6709\u95EE\u9898\u53EF\u4EE5\u6539\u4E3A\u5408\u5E76\u5230selfData\u53D8\u91CF\u4E2D\uFF0C\u4F46\u662F\u8981\u5728\u63A5\u6536\u9002\u914D\u5668\u4E2D\u5199\u4E0A\u4E00\u6837\u7684\u5408\u5E76\u903B\u8F91\uFF0C\u5426\u5219\u91CC\u9762\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E0D\u4F1A\u5B58\u5165\u672C\u5730\u5B58\u50A8\u4E2D\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\n // selfData \u4E2D\u7684\u6570\u636E\u7531 CRUD \u63A7\u5236. selfData\u4E2D,\u53EA\u80FD\u83B7\u53D6\u5230 CRUD \u7ED9\u5B9A\u7684data. \u65E0\u6CD5\u4ECE\u6570\u636E\u94FE\u4E2D\u83B7\u53D6\u6570\u636E.\n let selfData = JSON.parse(JSON.stringify(api.data.$self));\n // \u4FDD\u7559\u4E00\u4EFD\u521D\u59CBdata\uFF0C\u4EE5\u4F9B\u81EA\u5B9A\u4E49\u53D1\u9001\u9002\u914D\u5668\u4E2D\u83B7\u53D6\u539F\u59CB\u6570\u636E\u3002\n const data = _.cloneDeep(api.data);\n let needToStoreListViewProps;\n try{\n // TODO: \u4E0D\u5E94\u8BE5\u76F4\u63A5\u5728\u8FD9\u91CC\u53D6localStorage\uFF0C\u5E94\u8BE5\u4ECE\u5916\u9762\u4F20\u5165\n const listName = api.data.listName;\n // \u53EA\u6709\u5728\u5217\u8868\u9875\u9762\u4E2D\u624D\u9700\u8981\u5B58\u50A8\u548C\u8BFB\u53D6\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u53C2\u6570\uFF0C\u76F8\u5173\u5B50\u8868\u7EC4\u4EF6\u4E0D\u9700\u8981\n needToStoreListViewProps = !!listName && !api.body.$self._isRelated;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(needToStoreListViewProps && localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n selfData = Object.assign({}, localListViewProps, selfData);\n if(!api.data.filter){\n api.data.filter = localListViewProps.filter;\n }\n if(!api.data.loaded){\n // \u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\uFF0C\u6BD4\u5982\u5237\u65B0\u6D4F\u89C8\u5668\u65F6\u56E0\u4E3Aapi.data.pageNo\u6709\u9ED8\u8BA4\u503C1\n // \u6240\u4EE5\u4F1A\u628AlocalSearchableFilter\u4E2D\u5DF2\u7ECF\u5B58\u8FC7\u7684\u9875\u7801\u8986\u76D6\n // \u5982\u679C\u662F\u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\u59CB\u7EC8\u8BA9\u7FFB\u9875\u9875\u7801\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u503C\n let formFactor = \"".concat(options.formFactor,"\";\n // \u79FB\u52A8\u7AEF\u4E0D\u8BC6\u522B\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u7FFB\u9875\u9875\u7801\uFF0C\u5426\u5219\u70B9\u51FB\u52A0\u8F7D\u66F4\u591A\u6309\u94AE\u540E\u65E0\u6CD5\u5237\u65B0\u56DE\u7B2C\u4E00\u9875\n // api.data.pageNo = formFactor === \"SMALL\" ? 1 : (localListViewProps.page || 1);\n // \u79FB\u52A8\u7AEF\u6682\u65F6\u53BB\u9664\u52A0\u8F7D\u66F4\u591A\uFF0C\u653E\u5F00\u7FFB\u9875\n api.data.pageNo = localListViewProps.page || 1;\n }\n }\n }\n catch(ex){\n console.error(\"\u672C\u5730\u5B58\u50A8\u4E2Dcrud\u53C2\u6570\u89E3\u6790\u5F02\u5E38\uFF1A\", ex);\n }\n ").concat(baseFilters?"var systemFilters = ".concat(JSON.stringify(baseFilters),";"):'var systemFilters = [];',"\n var _ids = [];\n if(systemFilters && systemFilters.length){\n SteedosUI.traverseNestedArrayFormula(systemFilters, api.context);\n }\n const filtersFunction = ").concat(filtersFunction,";\n if(filtersFunction){\n const _filters = filtersFunction(systemFilters, api.data.$self);\n if(api.data.listName == \"recent\"){\n _ids = _filters[2]\n }\n if(_filters && _filters.length > 0){\n if(_.isEmpty(systemFilters)){\n systemFilters = _filters || [];\n }else{\n systemFilters = [systemFilters, 'and', _filters];\n }\n }\n }\n let userFilters =[];\n \n if(_.isEmpty(systemFilters)){\n systemFilters = api.data.filter || [];\n }else{\n if(!_.isEmpty(api.data.filter)){\n systemFilters = [systemFilters, 'and', api.data.filter];\n }\n }\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : \"").concat(sort||'',"\";\n var allowSearchFields = ").concat(JSON.stringify(searchableFields),";\n if(api.data.$term){\n userFilters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n userFilters = [[\"").concat(valueField.name,"\", \"=\", selfData.value]];\n }\n\n var searchableFilter = SteedosUI.getSearchFilter(selfData) || [];\n if(searchableFilter.length > 0){\n if(userFilters.length > 0 ){\n userFilters = [userFilters, 'and', searchableFilter];\n }else{\n userFilters = searchableFilter;\n }\n }\n\n // \"\u641C\u7D22\u6B64\u5217\u8868\"\u641C\u7D22\u6846\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(_.isString(keyValue)){\n userFilters.push([key, \"contains\", keyValue]);\n }else if(_.isArray(keyValue) || _.isBoolean(keyValue) || keyValue){\n userFilters.push([key, \"=\", keyValue]);\n }\n })\n }\n\n var keywordsFilters = SteedosUI.getKeywordsSearchFilter(selfData.__keywords, allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n userFilters.push(keywordsFilters);\n }\n\n let filters = [];\n\n if(!_.isEmpty(systemFilters)){\n filters = systemFilters;\n };\n if(api.data.$self.additionalFilters){\n if(_.isString(api.data.$self.additionalFilters)){\n userFilters.push(eval(api.data.$self.additionalFilters))\n }else{\n userFilters.push(api.data.$self.additionalFilters)\n }\n }\n\n if(api.data.$self._isRelated){\n const self = api.data.$self;\n const relatedKey = self.relatedKey;\n const refField = self.uiSchema.fields[relatedKey];\n const masterRecord = self._master.record;\n const masterObjectName = self._master.objectName;\n let relatedValue = masterRecord._id;\n if(refField && refField.reference_to_field && refField.reference_to_field != '_id'){\n relatedValue = masterRecord[refField.reference_to_field]\n }\n let relatedFilters;\n if (\n refField && (refField._reference_to ||\n (refField.reference_to && !_.isString(refField.reference_to)))\n ) {\n relatedFilters = [\n [relatedKey + \"/o\", \"=\", masterObjectName],\n [relatedKey + \"/ids\", \"=\", relatedValue],\n ];\n } else {\n relatedFilters = [relatedKey, \"=\", relatedValue];\n }\n userFilters.push(relatedFilters)\n }\n\n if(!_.isEmpty(userFilters)){\n if(_.isEmpty(filters)){\n filters = userFilters;\n }else{\n filters = [filters, 'and', userFilters]\n }\n }\n api.data._ids = _ids;\n api.data = {\n query: api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim())\n }\n ").concat(options.requestAdaptor||'',";\n\n //\u5199\u5165\u672C\u6B21\u5B58\u50A8filters\u3001sort\n const listViewPropsStoreKey = location.pathname + \"/crud/query\";\n if(needToStoreListViewProps) {\n ").concat(removeTableApiSessionStorageItems("/crud/query"),";\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify({\n filters: filters,\n sort: sort.trim(),\n pageSize: pageSize,\n skip: skip,\n fields: ").concat(JSON.stringify(___namespace.map(fields,'name')),"\n }));\n }\n // console.log('table requestAdaptor', api);\n return api;\n ");api.adaptor="\n let fields = ".concat(JSON.stringify(___namespace.map(fields,'name')),";\n // \u8FD9\u91CC\u628A\u884C\u6570\u636E\u4E2D\u6240\u6709\u4E3A\u7A7A\u7684\u5B57\u6BB5\u503C\u914D\u7F6E\u4E3A\u7A7A\u5B57\u7B26\u4E32\uFF0C\u662F\u56E0\u4E3Aamis\u6709bug\uFF1Acrud\u7684columns\u4E2D\u7684\u5217\u5982\u679Ctype\u4E3Astatic-\u524D\u7F00\u7684\u8BDD\uFF0C\u884C\u6570\u636E\u4E2D\u8BE5\u5B57\u6BB5\u4E3A\u7A7A\u7684\u8BDD\u4F1A\u663E\u793A\u4E3A\u7236\u4F5C\u7528\u57DF\u4E2D\u540C\u540D\u53D8\u91CF\u503C\uFF0C\u89C1\uFF1Ahttps://github.com/baidu/amis/issues/9556\n (payload.data.rows || []).forEach((itemRow) => {\n (fields || []).forEach((itemField) => {\n if(itemField && itemField.indexOf(\".\") > -1){\n return;\n }\n if(itemField && (itemRow[itemField] === undefined || itemRow[itemField] === null)){\n // \u8FD9\u91CCitemRow\u4E2D\u4E0D\u5B58\u5728 itemField \u5C5E\u6027\uFF0C\u6216\u8005\u503C\u4E3Anull\u65F6\u90FD\u4F1A\u6709\u201C\u663E\u793A\u4E3A\u7236\u4F5C\u7528\u57DF\u4E2D\u7684\u540C\u540D\u53D8\u91CF\u503C\u201D\u7684\u95EE\u9898\uFF0C\u6240\u4EE5null\u548Cundefined\u90FD\u8981\u91CD\u7F6E\u4E3A\u7A7A\u5B57\u7B26\u4E32\n // \u5B9E\u6D4B\u6570\u5B57\u3001\u4E0B\u62C9\u6846\u3001\u591A\u9009lookup\u7B49\u5B57\u6BB5\u7C7B\u578B\u91CD\u7F6E\u4E3A\u7A7A\u5B57\u7B26\u4E32\u90FD\u4E0D\u4F1A\u6709\u95EE\u9898\uFF0C\u800C\u4E14\u5B9E\u6D4Bamis from\u7EC4\u4EF6\u7684\u6E05\u7A7A\u8868\u5355\u5B57\u6BB5\u503C\u529F\u80FD\u5C31\u662F\u628A\u8868\u5355\u4E2D\u7684\u5404\u79CD\u5B57\u6BB5\u7C7B\u578B\u8BBE\u7F6E\u4E3A\u7A7A\u5B57\u7B26\u4E32\uFF0C\u6240\u4EE5\u770B\u8D77\u6765\u4E5F\u7B26\u5408amis\u89C4\u8303\n itemRow[itemField] = \"\";\n }\n });\n });\n \n if(api.body.listName == \"recent\"){\n payload.data.rows = _.sortBy(payload.data.rows, function(item){\n return _.indexOf(api.body._ids, item._id)\n });\n }\n const enable_tree = ").concat(mainObject.enable_tree,";\n if(!enable_tree){\n _.each(payload.data.rows, function(item, index){\n const {pageNo, pageSize} = api.body;\n const skip = (pageNo - 1) * pageSize;\n item._index = skip + index + 1;\n })\n }\n window.postMessage(Object.assign({type: \"listview.loaded\"}), \"*\");\n let fileFields = ").concat(JSON.stringify(fileFields),";\n let lookupFields = ").concat(JSON.stringify(lookupFields),";\n _.each(payload.data.rows, function(item, index){\n _.each(fileFields , (field, key)=>{\n if(item[key] && item._display && item._display[key]){\n let value = item._display[key];\n if(!_.isArray(value)){\n value = [value]\n };\n if(field.type === 'file'){\n // item[key] = value\n // PC\u5BA2\u6237\u7AEF\u9644\u4EF6\u5B50\u8868\u5217\u8868\u70B9\u51FB\u6807\u9898\u9884\u89C8\u9644\u4EF6\u529F\u80FD\u4F9D\u8D56\u4E86_id\uFF0C\u6240\u4EE5\u8FD9\u91CC\u62FC\u51FA\u6765\n let itemKeyValue = item[key];\n item[key] = value.map(function(curValue, index){\n let fileId = typeof itemKeyValue == 'string' ? itemKeyValue : itemKeyValue[index];\n // \u514B\u9686\u4E00\u4EFD\u5BF9\u8C61\uFF0C\u907F\u514D\u4E0B\u65B9value\u9012\u5F52\u6C61\u67D3curValue\n let result = _.clone(curValue);\n result._id = fileId;\n result.value = fileId;\n return result;\n });\n }else{\n item[key] = _.map(value, (item)=>{\n if(field.type === 'image'){\n const url = window.getImageFieldUrl(item.url);\n return url;\n }\n return item.url;\n })\n }\n }\n })\n _.each(lookupFields , (field, key)=>{\n if(item[key]){\n if(field._optionsFunction){\n const optionsFunction = eval(\"(\" + field._optionsFunction+ \")\")(item);\n item[key + '__label'] = _.map(_.filter(optionsFunction, function(option){return item[key] == option.value}), 'label').join(' ');\n }else if(field.options){\n const options = field.options;\n item[key + '__label'] = _.map(_.filter(options, function(option){return item[key] == option.value}), 'label').join(' ');\n }\n }\n })\n })\n \n if(enable_tree){\n const records = payload.data.rows || [];\n const getTreeOptions = SteedosUI.getTreeOptions;\n const assignIndexToTreeRecords = function(tree, parentIndex) {\n tree.forEach(function (node, index) {\n // \u6784\u5EFA\u5F53\u524D\u8282\u70B9\u7684 _index\n var currentIndex = parentIndex ? parentIndex + '-' + (index + 1) : '' + (index + 1);\n \n // \u8D4B\u503C\u7ED9\u8282\u70B9\n node._index = currentIndex;\n \n // \u5982\u679C\u6709\u5B50\u8282\u70B9\uFF0C\u9012\u5F52\u8C03\u7528\u51FD\u6570\n if (node.children && node.children.length > 0) {\n assignIndexToTreeRecords(node.children, currentIndex);\n }\n });\n };\n payload.data.rows = getTreeOptions(records,{\"valueField\":\"_id\"});\n assignIndexToTreeRecords(payload.data.rows, '');\n }\n\n\n let needToStoreListViewProps;\n try{\n // TODO: \u4E0D\u5E94\u8BE5\u76F4\u63A5\u5728\u8FD9\u91CC\u53D6localStorage\uFF0C\u5E94\u8BE5\u4ECE\u5916\u9762\u4F20\u5165\n const listName = api.body.listName;\n // \u53EA\u6709\u5728\u5217\u8868\u9875\u9762\u4E2D\u624D\u9700\u8981\u5B58\u50A8\u548C\u8BFB\u53D6\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u53C2\u6570\uFF0C\u76F8\u5173\u5B50\u8868\u7EC4\u4EF6\u4E0D\u9700\u8981\n needToStoreListViewProps = !!listName && !api.body.$self._isRelated;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n /**\n * localListViewProps\u89C4\u8303\u6765\u81EAcrud\u8BF7\u6C42api\u4E2Dapi.data.$self\u53C2\u6570\u503C\u7684\u3002\n * \u6BD4\u5982\uFF1A{\"perPage\":20,\"page\":1,\"__searchable__name\":\"7\",\"__searchable__between__n1__c\":[null,null],\"filter\":[[\"name\",\"contains\",\"a\"]]}\n * __searchable__...:\u9876\u90E8\u653E\u5927\u955C\u641C\u7D22\u6761\u4EF6\n * filter:\u53F3\u4FA7\u8FC7\u6EE4\u5668\n * perPage:\u6BCF\u9875\u6761\u6570\n * page:\u5F53\u524D\u9875\u7801\n * orderBy:\u6392\u5E8F\u5B57\u6BB5\n * orderDir:\u6392\u5E8F\u65B9\u5411\n */\n let localListViewProps = needToStoreListViewProps && sessionStorage.getItem(listViewPropsStoreKey);\n let selfData = JSON.parse(JSON.stringify(api.body.$self));\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n selfData = Object.assign({}, localListViewProps, selfData, { filter: api.body.filter });\n if(!api.body.loaded){\n // \u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\uFF0C\u6BD4\u5982\u5237\u65B0\u6D4F\u89C8\u5668\u65F6\u56E0\u4E3Aapi.data.pageNo\u6709\u9ED8\u8BA4\u503C1\n // \u6240\u4EE5\u4F1A\u628AlocalSearchableFilter\u4E2D\u5DF2\u7ECF\u5B58\u8FC7\u7684\u9875\u7801\u8986\u76D6\n // \u5982\u679C\u662F\u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\u59CB\u7EC8\u8BA9\u7FFB\u9875\u9875\u7801\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u503C\n let formFactor = \"").concat(options.formFactor,"\";\n // \u79FB\u52A8\u7AEF\u4E0D\u8BC6\u522B\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u7FFB\u9875\u9875\u7801\uFF0C\u5426\u5219\u70B9\u51FB\u52A0\u8F7D\u66F4\u591A\u6309\u94AE\u540E\u65E0\u6CD5\u5237\u65B0\u56DE\u7B2C\u4E00\u9875\n // selfData.page = formFactor === \"SMALL\" ? 1 : (localListViewProps.page || 1);\n selfData.page = localListViewProps.page || 1;\n }\n }\n \n delete selfData.context;\n delete selfData.global;\n if(needToStoreListViewProps) {\n ").concat(removeTableApiSessionStorageItems("/crud"),";\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(selfData));\n }\n // \u8FD4\u56DE\u9875\u7801\u5230UI\u754C\u9762\n payload.data.page= selfData.page;\n }\n catch(ex){\n console.error(\"\u672C\u5730\u5B58\u50A8\u4E2Dcrud\u53C2\u6570\u89E3\u6790\u5F02\u5E38\uFF1A\", ex);\n }\n // \u6807\u8BB0\u52A0\u8F7D\u8FC7\uFF0C\u540E\u7EED\u4F18\u5148\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u52A0\u8F7D\u76F8\u5173\u53C2\u6570\n payload.data.loaded= true;\n const setDataToComponentId = \"").concat(setDataToComponentId,"\";\n if(setDataToComponentId){\n //https://github.com/baidu/amis/pull/6807 .parent\u7684\u6539\u52A8\u662F\u4E3A\u9002\u5E943.2getComponentById\u7684\u89C4\u5219\u6539\u52A8\uFF0C\u4E0D\u5F71\u54CD2.9\n var scope = context._scoped;\n var scopeParent = scope && scope.parent;\n var setDataToComponent = scopeParent && scopeParent.getComponentById(setDataToComponentId);\n if(setDataToComponent){\n setDataToComponent.setData({$count: payload.data.count});\n }\n };\n let formFactor = \"").concat(options.formFactor,"\";\n if(formFactor !== \"SMALL\"){\n const lisviewDom = document.querySelector(\".steedos-object-listview .antd-Table-table\");\n if(lisviewDom){\n setTimeout(()=>{\n lisviewDom.scrollIntoView();\n }, 600);\n }\n }\n\n // \u5217\u8868\u641C\u7D22\u548C\u5FEB\u901F\u641C\u7D22\uFF0C\u6709\u65F6\u5728\u67D0\u4E9B\u64CD\u4F5C\u60C5\u51B5\u4E0B\u8FD8\u662F\u4F1A\u9020\u6210crud\u63A5\u53E3\u8BF7\u6C42\u4F7F\u7528\u7684\u8FC7\u6EE4\u6761\u4EF6\u662F\u4E0A\u6B21\u7684\uFF0C\u8FD9\u91CC\u5F3A\u5236\u628A\u6B63\u786E\u7684\u8FC7\u6EE4\u6761\u4EF6\u8FD4\u56DE\u5230crud\uFF0C\u8BE6\u7EC6\u89C4\u5219\u89C1\uFF1Ahttps://github.com/steedos/steedos-platform/issues/7112\n // lookup\u5B57\u6BB5\u7684\u5F39\u51FA\u5217\u8868\u641C\u7D22\u4E0D\u53D7\u8FD9\u91CC\u5F71\u54CD\uFF0C\u56E0\u4E3Alookup\u5B57\u6BB5\u7684\u5F39\u51FA\u5217\u8868\u641C\u7D22\u662F\u5355\u72EC\u7684\u63A5\u53E3\u8BF7\u6C42\n payload.data.__changedFilterFormValues = api.context.__changedFilterFormValues;\n payload.data.__changedSearchBoxValues = api.context.__changedSearchBoxValues;\n ").concat(options.adaptor||'',"\n return payload;\n ");// api.trackExpression='${additionalFilters|json}'
244
250
  return _context71.a(2,api);}},_callee71);}));return _getTableApi.apply(this,arguments);}function getApi$1(_x42,_x43,_x44,_x45){return _getApi$.apply(this,arguments);}function _getApi$(){_getApi$=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee72(object,recordId,fields,options){var data;return _regenerator().w(function(_context72){while(1)switch(_context72.n){case 0:_context72.n=1;return getFindQuery(object,recordId,fields,options);case 1:data=_context72.v;return _context72.a(2,{method:"post",url:getApi$2(),// + "&recordId=${recordId}"
245
251
  data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}});}},_callee72);}));return _getApi$.apply(this,arguments);}function getRecordPermissionsApi(object,recordId,options){var data=getRecordPermissionsQuery(object,recordId,options);return{method:"post",url:getApi$2(),data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};}var API_CACHE=100;function getReadonlyFormAdaptor(object,fields,options){var scriptStr='';var selectFields=___namespace.filter(fields,function(field){return field.name.indexOf('.')<0&&(field.type=='select'&&field.options||(field.type=='lookup'||field.type=='master_detail')&&!field.reference_to);});var gridAndObjectFieldsName=___namespace.map(___namespace.filter(fields,function(field){return field.name.indexOf('.')<0&&(field.type==='object'||field.type==='grid');}),'name');___namespace.each(selectFields,function(field){if(!___namespace.includes(OMIT_FIELDS,field.name)){field.name;if(field.options){var _options=JSON.stringify({options:field.options});scriptStr=scriptStr+"var ".concat(field.name,"Options= (").concat(_options,").options;");}else if(field.optionsFunction){scriptStr=scriptStr+"var ".concat(field.name,"Options = eval(").concat(field.optionsFunction.toString(),")(api.data);");}else if(field._optionsFunction){scriptStr=scriptStr+"var ".concat(field.name,"Options = eval(").concat(field._optionsFunction,")(api.data);");}if(field.multiple){scriptStr=scriptStr+"data.".concat(field.name,"__label = _.map(_.filter(").concat(field.name,"Options, function(option){return _.includes(data.").concat(field.name,", option.value)}), 'label');");}else if(scriptStr!=''){scriptStr=scriptStr+"var ".concat(field.name,"Selected = _.find(").concat(field.name,"Options, function(option){return data.").concat(field.name," == option.value});");scriptStr=scriptStr+"data.".concat(field.name,"__label = ").concat(field.name,"Selected ? ").concat(field.name,"Selected.label:null;");}}});// const refFields = _.filter(fields, function(field){return field.name.indexOf('.') < 0 && (field.type == 'lookup' || field.type == 'master_detail') && !field.reference_to});
246
252
  // _.each(refFields, function(field){
@@ -263,7 +269,7 @@ findOneOptions={filters:[],queryOptions:"top: 1"};}_t160=getApi$2()+'&objectName
263
269
  */function getScriptForRewriteValueForFileFields(fields){var fileFieldsKeys=[];var fileFields={};fields.forEach(function(item){if(item.type==='file'){fileFieldsKeys.push(item.name);fileFields[item.name]={name:item.name,multiple:item.multiple};}});if(!fileFieldsKeys.length){return'';}return"\n // file\u5B57\u6BB5\u503C\u91CD\u5199\u4EE5\u4FBF\u7F16\u8F91\u65F6\u6B63\u5E38\u663E\u793A\u9644\u4EF6\u540D\u3001\u70B9\u51FB\u9644\u4EF6\u540D\u6B63\u5E38\u4E0B\u8F7D\u9644\u4EF6\n let fileFieldsKeys = ".concat(JSON.stringify(fileFieldsKeys),";\n let fileFields = ").concat(JSON.stringify(fileFields),";\n fileFieldsKeys.forEach((item)=>{\n let fileFieldValue = data[item];\n let fileFieldDisplayValue = data._display && data._display[item];\n if(fileFieldValue && fileFieldValue.length){\n if(fileFields[item].multiple){\n if(fileFieldDisplayValue instanceof Array){\n data[item] = fileFieldDisplayValue.map((item, index)=>{ \n item.value = fileFieldValue[index];\n return {\n value: fileFieldValue[index],\n name: item.name,\n url: item.url,\n state: \"uploaded\"\n }\n });\n }\n }else{\n fileFieldDisplayValue.value = fileFieldValue;\n data[item] = [{\n value: fileFieldValue,\n name: fileFieldDisplayValue.name,\n url: fileFieldDisplayValue.url,\n state: \"uploaded\"\n }];\n }\n }\n })\n ");}function getEditFormInitApi(_x50,_x51,_x52,_x53){return _getEditFormInitApi.apply(this,arguments);}function _getEditFormInitApi(){_getEditFormInitApi=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee74(object,recordId,fields,options){var data;return _regenerator().w(function(_context74){while(1)switch(_context74.n){case 0:_context74.n=1;return getFindOneQuery$1(object,recordId,fields);case 1:data=_context74.v;data.recordId="${recordId}";data.objectName="${objectName}";data.uiSchema="${uiSchema}";data.global="${global}";data.context="${context}";data.defaultData="${defaultData}";data._master="${_master}";return _context74.a(2,{method:"post",url:getApi$2(),// sendOn: "!!this.recordId",
264
270
  cache:API_CACHE,requestAdaptor:"\n // \u6240\u6709\u4E0D\u60F3\u5728network\u8BF7\u6C42\u4E2D\u53D1\u9001\u7684\u6570\u636E\u90FD\u5E94\u8BE5\u4ECEdata\u4E2D\u5206\u79BB\u51FA\u6765\uFF0Cdata\u53D8\u91CF\u53EA\u9700\u8981\u7559\u4E0Bquery\u624D\u9700\u8981\u53D1\u9001\u51FA\u53BB\n var { recordId, objectName, uiSchema, global, context, _master, ...data} = api.data;\n if(!recordId){\n // \u65B0\u5EFA\u5219\u4E0D\u8BF7\u6C42\u4EFB\u4F55\u6570\u636E\n data.query = \"{data:\" + objectName + \"(filters: \" + JSON.stringify([\"_id\", \"=\", null]) + \", top: 1){_id}}\";\n }\n api.data = data;\n ".concat(options.initApiRequestAdaptor||'',"\n return api;\n "),adaptor:"\n const recordId = api.body.recordId;\n let initialValues={};\n if(recordId && payload.data.data){\n var data = payload.data.data[0];\n const dataKeys = _.keys(data);\n const uiSchema = api.body.uiSchema;\n const fieldKeys = uiSchema && _.keys(uiSchema.fields);\n\n if(data){\n ".concat(getScriptForAddUrlPrefixForImgFields(fields,false),"\n ").concat(getScriptForRewriteValueForFileFields(fields),"\n\n _.each(dataKeys, function(key){\n if(fieldKeys.indexOf(key)<0 && key !== \"_display\"){\n delete data[key];\n }\n })\n \n //\u521D\u59CB\u5316\u63A5\u53E3\u8FD4\u56DE\u7684\u5B57\u6BB5\u79FB\u9664\u5B57\u6BB5\u503C\u4E3Anull\u7684\u5B57\u6BB5\n for (key in data){\n if(data[key] === null){\n delete data[key];\n }\n }\n };\n initialValues = data;\n }\n else{\n var uiSchema = api.body.uiSchema;\n var defaultData = api.body.defaultData;\n var defaultValues = {};\n _.each(uiSchema && uiSchema.fields, function(field){\n var value = SteedosUI.getFieldDefaultValue(field, api.body.global);\n if(!_.isNil(value)){\n defaultValues[field.name] = value;\n }\n });\n if(defaultData && _.isObject(defaultData) && !_.isArray(defaultData)){\n defaultValues = Object.assign({}, defaultValues, defaultData)\n }\n if(uiSchema.form){\n try{\n var objectFormConfig = JSON.parse(uiSchema.form);\n var formInitialValuesFun = objectFormConfig.initialValues;\n if(formInitialValuesFun){\n formInitialValuesFun = new Function(\"return \" + formInitialValuesFun)();\n }\n if(typeof formInitialValuesFun === \"function\"){\n initialValues = formInitialValuesFun.apply({doc: defaultValues || {} , global: api.body.global, master: api.body._master })\n }\n }\n catch(ex){\n console.warn(ex);\n }\n }\n if(_.isObject(initialValues)){\n // uiSchema.form.initialValues\u4E3A\u51FD\u6570\u4E14\u6267\u884C\u540E\u4E3Ajson\uFF0C\u5219\u4F18\u5148\u53D6initialValues\u4E2D\u7684\u9ED8\u8BA4\u503C\n initialValues = Object.assign({}, defaultValues, initialValues);\n }\n else{\n initialValues = defaultValues;\n }\n }\n // data\u4E0B\u7684\u53D8\u91CF\u9700\u8981\u5728\u4FDD\u5B58\u63A5\u53E3\uFF08getSaveApi\uFF09\u4E2D\u88AB\u5220\u9664\u3002\n payload.data = {\n ...initialValues\n }\n ").concat(options.initApiAdaptor||'',"\n // console.log('getEditFormInitApi======>', payload);\n return payload;\n "),responseData:{"&":"$$",editFormInited:true},data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}});}},_callee74);}));return _getEditFormInitApi.apply(this,arguments);}function getSaveApi(object,recordId,fields,options){return{method:'post',url:getApi$2(),data:getSaveQuery(object,recordId),requestAdaptor:getSaveRequestAdaptor(fields,options),responseData:{"recordId":"${record._id}"},adaptor:"\n if(payload.errors){\n delete payload.data;\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n ".concat(options.apiAdaptor||'',"\n return payload;\n "),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};}function getBatchDelete(objectName){return{method:'post',url:getApi$2(),adaptor:"\n if(payload.errors){\n payload.data.deleteErrorMessage = [];\n payload.errors.forEach(function(error){\n try {\n let errorRecord = error.path.map(function (item) {\n return item.split('delete__')[1].to_float() + 1;\n }).toString();\n payload.data.deleteErrorMessage.push(\"\u7B2C\" + errorRecord + \"\u6761\u8BB0\u5F55\u5220\u9664\u51FA\u73B0\u5F02\u5E38\uFF0C\u62A5\u9519\u4FE1\u606F\u4E3A(\" + (window.t ? window.t(error.message) : error.message) + \")\");\n } catch (error) {\n console.llg(error)\n }\n })\n }\n return payload;\n ",requestAdaptor:"\n var ids = api.data.ids.split(\",\");\n var deleteArray = [];\n ids.forEach((id,index)=>{\n deleteArray.push(`delete__${index}:".concat(objectName,"__delete(id: \"${id}\")`);\n })\n api.data = {query: `mutation{${deleteArray.join(',')}}`};\n return api;\n "),data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};}var DEFAULT_CALENDAR_OPTIONS={startDateExpr:"start",endDateExpr:"end",allDayExpr:"is_all_day",textExpr:"name"};function getCalendarApi(_x54,_x55,_x56){return _getCalendarApi.apply(this,arguments);}function _getCalendarApi(){_getCalendarApi=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee75(mainObject,fields,options){var calendarOptions,searchableFields,_options3,filter,sort,top,_options3$setDataToCo,setDataToComponentId,idFieldName,valueField,api;return _regenerator().w(function(_context75){while(1)switch(_context75.n){case 0:if(!options){options={};}calendarOptions=options.calendarOptions;searchableFields=[];_options3=options,filter=_options3.filter,sort=_options3.sort,top=_options3.top,_options3$setDataToCo=_options3.setDataToComponentId,setDataToComponentId=_options3$setDataToCo===void 0?'':_options3$setDataToCo;if(!top){// 日历请求不翻页
265
271
  top=200;}if(___default["default"].isArray(filter)){filter=___default["default"].map(filter,function(item){if(item.operation){return[item.field,item.operation,item.value];}else{return item;}});}if(!filter){filter=[];}___default["default"].each(fields,function(field){if(field.searchable){searchableFields.push(field.name);}});idFieldName=mainObject.idFieldName||"_id";valueField=mainObject.key_field||'_id';_context75.n=1;return getApi$1(mainObject,null,fields,{alias:'rows',limit:top,queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 1:api=_context75.v;api.data.$term="$term";api.data.$self="$$";api.data.filter="$filter";api.data.pageSize=top||10;api.requestAdaptor="\n let selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = api.data.filter || ".concat(JSON.stringify(filter)," || [];\n const eventFetchInfo = selfData.fetchInfo;\n const startDateExpr = \"").concat(calendarOptions.startDateExpr,"\";\n const endDateExpr = \"").concat(calendarOptions.endDateExpr,"\";\n const eventDurationFilters = [[endDateExpr, \">=\", eventFetchInfo.start], [startDateExpr, \"<=\", eventFetchInfo.end]];\n if(_.isEmpty(filters)){\n filters = eventDurationFilters;\n }else{\n filters = [filters, 'and', eventDurationFilters]\n }\n\n if(api.data.$self.additionalFilters){\n filters.push(api.data.$self.additionalFilters)\n }else if(api.data.$self.event.data.additionalFilters){\n filters.push(api.data.$self.event.data.additionalFilters)\n }\n\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : \"").concat(sort,"\";\n var allowSearchFields = ").concat(JSON.stringify(searchableFields),";\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n filters = [[\"").concat(valueField.name,"\", \"=\", selfData.value]];\n }\n var searchableFilter = SteedosUI.getSearchFilter(selfData) || [];\n\n if(searchableFilter.length > 0){\n if(filters.length > 0 ){\n filters = [filters, 'and', searchableFilter];\n }else{\n filters = searchableFilter;\n }\n }\n\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(_.isString(keyValue)){\n filters.push([key, \"contains\", keyValue]);\n }else if(_.isArray(keyValue) || _.isBoolean(keyValue) || keyValue){\n filters.push([key, \"=\", keyValue]);\n }\n })\n }\n\n if(selfData.__keywords && allowSearchFields){\n const keywordsFilters = [];\n allowSearchFields.forEach(function(key, index){\n const keyValue = selfData.__keywords;\n if(keyValue){\n keywordsFilters.push([key, \"contains\", keyValue]);\n if(index < allowSearchFields.length - 1){\n keywordsFilters.push('or');\n }\n }\n })\n filters.push(keywordsFilters);\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n delete api.data.$term;\n delete api.data.filter;\n delete api.data.pageSize;\n delete api.data.pageNo;\n delete api.data.orderBy;\n delete api.data.orderDir;\n return api;\n ");api.adaptor="\n window.postMessage(Object.assign({type: \"listview.loaded\"}), \"*\");\n const setDataToComponentId = \"".concat(setDataToComponentId,"\";\n if(setDataToComponentId){\n var scope = SteedosUI.getRef(api.body.$self.scopeId);\n var setDataToComponent = scope && scope.getComponentById(setDataToComponentId);\n if(setDataToComponent){\n setDataToComponent.setData({$count: payload.data.count});\n }\n // SteedosUI.getRef(api.body.$self.scopeId)?.getComponentById(setDataToComponentId)?.setData({$count: payload.data.count})\n }\n const rows = payload.data.rows || [];\n const selfData = api.data.$self;\n const events = rows.map(function(n){\n return {\n id: n[\"").concat(idFieldName,"\"],\n title: n[\"").concat(calendarOptions.textExpr,"\"],\n start: n[\"").concat(calendarOptions.startDateExpr,"\"],\n end: n[\"").concat(calendarOptions.endDateExpr,"\"],\n allDay: n[\"").concat(calendarOptions.allDayExpr,"\"],\n extendedProps: n\n }\n });\n const successCallback = selfData.successCallback;\n const failureCallback = selfData.failureCallback;\n successCallback(events);\n return payload;\n ");return _context75.a(2,api);}},_callee75);}));return _getCalendarApi.apply(this,arguments);}function getCalendarRecordPermissionsApi(mainObject,recordId){var api=getRecordPermissionsApi(mainObject,recordId,{alias:'rows',limit:1,fields:["allowEdit"]});api.data.$self="$$";api.adaptor="\n const rows = payload.data.rows || [];\n const selfData = api.data.$self;\n const revert = selfData.revert;\n const recordPermissions = rows[0] && rows[0].recordPermissions;\n const editable = !!(recordPermissions && recordPermissions.allowEdit);\n if(!editable){\n // \u6CA1\u6709\u6743\u9650\u65F6\u8FD8\u539F\n revert && revert();\n }\n payload.data.editable = editable;\n return payload;\n ";return api;}function getCalendarRecordSaveApi(object,calendarOptions){var formData={};var idFieldName=object.idFieldName||"_id";formData[idFieldName]="${event.data.event.id}";var nameFieldKey=object.NAME_FIELD_KEY||"name";formData[nameFieldKey]="${event.data.event.title}";formData[calendarOptions.startDateExpr]="${event.data.event.start}";formData[calendarOptions.endDateExpr]="${event.data.event.end}";formData[calendarOptions.allDayExpr]="${event.data.event.allDay}";// formData[calendarOptions.textExpr] = "${event.data.event.title}";
266
- var apiData={objectName:"${objectName}",$:formData,$self:"$$"};var saveDataTpl="\n const formData = api.data.$;\n const objectName = api.data.objectName;\n let query = `mutation{record: ${objectName}__update(id: \"${formData.".concat(idFieldName,"}\", doc: {__saveData}){").concat(idFieldName,"}}`;\n delete formData.").concat(idFieldName,";\n let __saveData = JSON.stringify(JSON.stringify(formData));\n ");var requestAdaptor="\n ".concat(saveDataTpl,"\n api.data.query = query.replace('{__saveData}', __saveData);\n return api;\n ");return{method:'post',url:getApi$2(),data:apiData,requestAdaptor:requestAdaptor,adaptor:"\n if(payload.errors){\n payload.status = 2;\n payload.msg = payload.errors[0].message;\n const revert = api.data.$self.event.data.revert;\n revert && revert();\n }\n return payload;\n ",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};}/**
272
+ var apiData={objectName:object.name,$:formData,$self:"$$"};var saveDataTpl="\n const formData = api.data.$;\n const objectName = ".concat(object.name,"};\n let query = `mutation{record: ${objectName}__update(id: \"${formData.").concat(idFieldName,"}\", doc: {__saveData}){").concat(idFieldName,"}}`;\n delete formData.").concat(idFieldName,";\n let __saveData = JSON.stringify(JSON.stringify(formData));\n ");var requestAdaptor="\n ".concat(saveDataTpl,"\n api.data.query = query.replace('{__saveData}', __saveData);\n return api;\n ");return{method:'post',url:getApi$2(),data:apiData,requestAdaptor:requestAdaptor,adaptor:"\n if(payload.errors){\n payload.status = 2;\n payload.msg = payload.errors[0].message;\n const revert = api.data.$self.event.data.revert;\n revert && revert();\n }\n return payload;\n ",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};}/**
267
273
  * 列表视图Calendar amisSchema
268
274
  * @param {*} objectSchema 对象UISchema
269
275
  * @returns amisSchema
@@ -280,7 +286,7 @@ var apiData={objectName:"${objectName}",$:formData,$self:"$$"};var saveDataTpl="
280
286
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
281
287
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
282
288
  PERFORMANCE OF THIS SOFTWARE.
283
- ***************************************************************************** */function _getObjectCalendar(){_getObjectCalendar=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee76(objectSchema,calendarOptions,options){var permissions,titleFields,fields,sort,sortField,sortOrder,sortStr,initialView,api,onGetEventsScript,onSelectScript,onEventClickScript,recordId,recordPermissionsApi,recordSaveApi,businessHours,onEvent,config,hasReturn,fn,_hasReturn,_fn,amisSchema,_t166;return _regenerator().w(function(_context76){while(1)switch(_context76.n){case 0:permissions=objectSchema.permissions;if(!options){options={};}calendarOptions=Object.assign({},DEFAULT_CALENDAR_OPTIONS,_$1.omitBy(calendarOptions,_$1.isNil));titleFields=calendarOptions.title||[calendarOptions.startDateExpr,calendarOptions.endDateExpr,calendarOptions.allDayExpr,calendarOptions.textExpr];fields=[];_$1.each(titleFields,function(n){if(objectSchema.fields[n]){fields.push(objectSchema.fields[n]);}});if(objectSchema.fields[calendarOptions.allDayExpr]){fields.push(objectSchema.fields[calendarOptions.allDayExpr]);}sort=options.sort;if(!sort){sortField=options.sortField;sortOrder=options.sortOrder;if(sortField){sortStr=sortField+' '+sortOrder||'asc';sort=sortStr;}}initialView=calendarOptions.currentView;if(!initialView){_context76.n=6;break;}_t166=initialView;_context76.n=_t166==="day"?1:_t166==="week"?2:_t166==="month"?3:_t166==="agenda"?4:5;break;case 1:initialView="timeGridDay";return _context76.a(3,5);case 2:initialView="timeGridWeek";return _context76.a(3,5);case 3:initialView="dayGridMonth";return _context76.a(3,5);case 4:initialView="listWeek";return _context76.a(3,5);case 5:_context76.n=7;break;case 6:initialView="timeGridWeek";case 7:options.calendarOptions=calendarOptions;_context76.n=8;return getCalendarApi(objectSchema,fields,options);case 8:api=_context76.v;onGetEventsScript="\n const api = ".concat(JSON.stringify(api),";\n event.data.calendarOptions = ").concat(JSON.stringify(calendarOptions),";\n doAction({\n \"actionType\": 'ajax',\n \"args\": {\n \"api\": api\n },\n });\n ");onSelectScript="\n const data = event.data;\n const doc = {};\n doc[\"".concat(calendarOptions.startDateExpr,"\"] = data.start;\n doc[\"").concat(calendarOptions.endDateExpr,"\"] = data.end;\n doc[\"").concat(calendarOptions.allDayExpr,"\"] = data.allDay;\n doc[\"").concat(calendarOptions.textExpr,"\"] = data.title;\n // ObjectForm\u4F1A\u8BA4\u4F5C\u7528\u57DF\u4E0B\u7684\u53D8\u91CF\u503C\n // TODO: \u5F85\u7EC4\u4EF6\u652F\u6301initValues\u5C5E\u6027\u540E\u5E94\u8BE5\u6539\u6389\uFF0C\u4E0D\u5E94\u8BE5\u901A\u8FC7data\u76F4\u63A5\u4F20\u503C\n // TODO: \u5168\u5929\u4E8B\u4EF6\u5C5E\u6027\u4F20\u5165doc\u4E86\u4F46\u662F\u6CA1\u6709\u751F\u6548\uFF0C\u9700\u8981\u624B\u52A8\u5728ObjectForm\u4E2D\u52FE\u9009\u5168\u5929\u4E8B\u4EF6\n const title = \"").concat(i18next__default["default"].t('frontend_form_new')," ").concat(objectSchema.label,"\";\n doAction(\n {\n \"actionType\": \"dialog\",\n \"dialog\": {\n \"type\": \"dialog\",\n \"title\": title,\n data,\n \"body\": [\n {\n \"type\": \"steedos-object-form\",\n \"objectApiName\": \"${objectName}\",\n \"mode\": \"edit\",\n \"defaultData\": doc,\n //\u6539\u56DE\u4E3A\u901A\u7528\u7684\u63D0\u4EA4\u4E8B\u4EF6\n // \"onEvent\": {\n // \"submitSucc\": {\n // \"weight\": 0,\n // \"actions\": [\n // {\n // \"actionType\": \"custom\",\n // \"script\": \"event.data.view?.calendar.refetchEvents();\"\n // }\n // ]\n // }\n // }\n }\n ],\n \"closeOnEsc\": false,\n \"closeOnOutside\": false,\n \"showCloseButton\": true,\n \"size\": \"lg\"\n }\n });\n ");onEventClickScript="\n const data = event.data;\n const eventData = data.event;\n const appId = data.appId;\n const objectName = data.objectName;\n const eventId = data.event && data.event.id;\n doAction({\n \"actionType\": \"link\",\n \"args\": {\n \"link\": \"/app/\" + appId + \"/\" + objectName + \"/view/\" + eventId\n }\n });\n // doAction({\n // \"actionType\": \"dialog\",\n // \"dialog\": {\n // \"type\": \"dialog\",\n // \"title\": \"\",\n // \"body\": [\n // {\n // \"type\": \"steedos-record-detail\",\n // \"objectApiName\": \"${objectName}\",\n // \"recordId\": data.event && data.event.id\n // }\n // ],\n // \"closeOnEsc\": false,\n // \"closeOnOutside\": false,\n // \"showCloseButton\": true,\n // \"size\": \"lg\",\n // \"actions\": []\n // }\n // });\n ";recordId="${event.id}";recordPermissionsApi=getCalendarRecordPermissionsApi(objectSchema,recordId);recordSaveApi=getCalendarRecordSaveApi(objectSchema,calendarOptions);businessHours={daysOfWeek:[1,2,3,4,5],startTime:'08:00',endTime:'18:00'};if(!_$1.isEmpty(calendarOptions.startDayHour)){businessHours.startTime="".concat(calendarOptions.startDayHour,":00");}if(!_$1.isEmpty(calendarOptions.endDayHour)){businessHours.endTime="".concat(calendarOptions.endDayHour,":00");}// api.trackExpression="\\\${additionalFilters}";
289
+ ***************************************************************************** */function _getObjectCalendar(){_getObjectCalendar=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee76(objectSchema,calendarOptions,options){var permissions,titleFields,fields,sort,sortField,sortOrder,sortStr,initialView,api,onGetEventsScript,onSelectScript,onEventClickScript,recordId,recordPermissionsApi,recordSaveApi,businessHours,onEvent,config,hasReturn,fn,_hasReturn,_fn,amisSchema,_t166;return _regenerator().w(function(_context76){while(1)switch(_context76.n){case 0:permissions=objectSchema.permissions;if(!options){options={};}calendarOptions=Object.assign({},DEFAULT_CALENDAR_OPTIONS,_$1.omitBy(calendarOptions,_$1.isNil));titleFields=calendarOptions.title||[calendarOptions.startDateExpr,calendarOptions.endDateExpr,calendarOptions.allDayExpr,calendarOptions.textExpr];fields=[];_$1.each(titleFields,function(n){if(objectSchema.fields[n]){fields.push(objectSchema.fields[n]);}});if(objectSchema.fields[calendarOptions.allDayExpr]){fields.push(objectSchema.fields[calendarOptions.allDayExpr]);}sort=options.sort;if(!sort){sortField=options.sortField;sortOrder=options.sortOrder;if(sortField){sortStr=sortField+' '+sortOrder||'asc';sort=sortStr;}}initialView=calendarOptions.currentView;if(!initialView){_context76.n=6;break;}_t166=initialView;_context76.n=_t166==="day"?1:_t166==="week"?2:_t166==="month"?3:_t166==="agenda"?4:5;break;case 1:initialView="timeGridDay";return _context76.a(3,5);case 2:initialView="timeGridWeek";return _context76.a(3,5);case 3:initialView="dayGridMonth";return _context76.a(3,5);case 4:initialView="listWeek";return _context76.a(3,5);case 5:_context76.n=7;break;case 6:initialView="timeGridWeek";case 7:options.calendarOptions=calendarOptions;_context76.n=8;return getCalendarApi(objectSchema,fields,options);case 8:api=_context76.v;onGetEventsScript="\n const api = ".concat(JSON.stringify(api),";\n event.data.calendarOptions = ").concat(JSON.stringify(calendarOptions),";\n doAction({\n \"actionType\": 'ajax',\n \"args\": {\n \"api\": api\n },\n });\n ");onSelectScript="\n const data = event.data;\n const doc = {};\n doc[\"".concat(calendarOptions.startDateExpr,"\"] = data.start;\n doc[\"").concat(calendarOptions.endDateExpr,"\"] = data.end;\n doc[\"").concat(calendarOptions.allDayExpr,"\"] = data.allDay;\n doc[\"").concat(calendarOptions.textExpr,"\"] = data.title;\n // ObjectForm\u4F1A\u8BA4\u4F5C\u7528\u57DF\u4E0B\u7684\u53D8\u91CF\u503C\n // TODO: \u5F85\u7EC4\u4EF6\u652F\u6301initValues\u5C5E\u6027\u540E\u5E94\u8BE5\u6539\u6389\uFF0C\u4E0D\u5E94\u8BE5\u901A\u8FC7data\u76F4\u63A5\u4F20\u503C\n // TODO: \u5168\u5929\u4E8B\u4EF6\u5C5E\u6027\u4F20\u5165doc\u4E86\u4F46\u662F\u6CA1\u6709\u751F\u6548\uFF0C\u9700\u8981\u624B\u52A8\u5728ObjectForm\u4E2D\u52FE\u9009\u5168\u5929\u4E8B\u4EF6\n const title = \"").concat(i18next__default["default"].t('frontend_form_new')," ").concat(objectSchema.label,"\";\n doAction(\n {\n \"actionType\": \"dialog\",\n \"dialog\": {\n \"type\": \"dialog\",\n \"title\": title,\n data,\n \"body\": [\n {\n \"type\": \"steedos-object-form\",\n \"objectApiName\": \"").concat(objectSchema.name,"\",\n \"mode\": \"edit\",\n \"defaultData\": doc,\n //\u6539\u56DE\u4E3A\u901A\u7528\u7684\u63D0\u4EA4\u4E8B\u4EF6\n // \"onEvent\": {\n // \"submitSucc\": {\n // \"weight\": 0,\n // \"actions\": [\n // {\n // \"actionType\": \"custom\",\n // \"script\": \"event.data.view?.calendar.refetchEvents();\"\n // }\n // ]\n // }\n // }\n }\n ],\n \"closeOnEsc\": false,\n \"closeOnOutside\": false,\n \"showCloseButton\": true,\n \"size\": \"lg\"\n }\n });\n ");onEventClickScript="\n const data = event.data;\n const eventData = data.event;\n const appId = data.appId;\n const objectName = data.objectName;\n const eventId = data.event && data.event.id;\n doAction({\n \"actionType\": \"link\",\n \"args\": {\n \"link\": \"/app/\" + appId + \"/\" + objectName + \"/view/\" + eventId\n }\n });\n // doAction({\n // \"actionType\": \"dialog\",\n // \"dialog\": {\n // \"type\": \"dialog\",\n // \"title\": \"\",\n // \"body\": [\n // {\n // \"type\": \"steedos-record-detail\",\n // \"objectApiName\": \"${objectName}\",\n // \"recordId\": data.event && data.event.id\n // }\n // ],\n // \"closeOnEsc\": false,\n // \"closeOnOutside\": false,\n // \"showCloseButton\": true,\n // \"size\": \"lg\",\n // \"actions\": []\n // }\n // });\n ";recordId="${event.id}";recordPermissionsApi=getCalendarRecordPermissionsApi(objectSchema,recordId);recordSaveApi=getCalendarRecordSaveApi(objectSchema,calendarOptions);businessHours={daysOfWeek:[1,2,3,4,5],startTime:'08:00',endTime:'18:00'};if(!_$1.isEmpty(calendarOptions.startDayHour)){businessHours.startTime="".concat(calendarOptions.startDayHour,":00");}if(!_$1.isEmpty(calendarOptions.endDayHour)){businessHours.endTime="".concat(calendarOptions.endDayHour,":00");}// api.trackExpression="\\\${additionalFilters}";
284
290
  onEvent={"getEvents":{"weight":0,"actions":[{"componentId":"","args":{},"actionType":"custom","script":onGetEventsScript}// {
285
291
  // "actionType": "ajax",
286
292
  // "outputVar": "responseResult",
@@ -304,7 +310,7 @@ onEvent={"getEvents":{"weight":0,"actions":[{"componentId":"","args":{},"actionT
304
310
  // "link": "/app/${appId}/${objectName}/view/${event.id}"
305
311
  // }
306
312
  // }
307
- ]},"eventAdd":{"weight":0,"actions":[{"componentId":"","args":{},"actionType":"custom","script":"console.log('eventAdd'); console.log(event);"}]},"eventChange":{"weight":0,"actions":[{"actionType":'ajax',"args":{"api":recordPermissionsApi}},{"actionType":"toast","expression":"!event.data.editable","args":{"msgType":"error","msg":i18next__default["default"].t('frontend_message_no_permission_to_edit'),"position":"top-center"}},{"actionType":'ajax',"expression":"event.data.editable","args":{"api":recordSaveApi,"messages":{"success":objectSchema.label+i18next__default["default"].t('frontend_message_modification_successful'),"failed":objectSchema.label+i18next__default["default"].t('frontend_message_modification_successful')}}}]},"eventRemove":{"weight":0,"actions":[{"componentId":"","args":{},"actionType":"custom","script":"console.log('eventRemove'); console.log(event);"}]},"eventsSet":{"weight":0,"actions":[{"componentId":"","args":{},"actionType":"custom","script":"console.log('eventsSet'); console.log(event);"}]},"getRef":{"weight":0,"actions":[{"componentId":"service_".concat(options.id),"args":{"value":{"calendarRef":"${event.data.calendarRef}"}},"actionType":"setValue"}]}};Object.assign(onEvent,options.onEvent);config=options.config||{};if(config.eventContent&&typeof config.eventContent==="string"){hasReturn=/\breturn\b/.test(config.eventContent);if(hasReturn){try{// 如果是包括return语句的字符串,则按函数解析,见 https://fullcalendar.io/docs/content-injection
313
+ ]},"eventAdd":{"weight":0,"actions":[{"componentId":"","args":{},"actionType":"custom","script":"console.log('eventAdd'); console.log(event);"}]},"eventChange":{"weight":0,"actions":[{"actionType":'ajax',"args":{"api":recordPermissionsApi}},{"actionType":"toast","expression":"!event.data.editable","args":{"msgType":"error","msg":i18next__default["default"].t('frontend_message_no_permission_to_edit'),"position":"top-center"}},{"actionType":'ajax',"expression":"event.data.editable","args":{"api":recordSaveApi,"messages":{"success":objectSchema.label+i18next__default["default"].t('frontend_message_modification_successful'),"failed":objectSchema.label+i18next__default["default"].t('frontend_message_modification_successful')}}}]},"eventRemove":{"weight":0,"actions":[{"componentId":"","args":{},"actionType":"custom","script":"console.log('eventRemove'); console.log(event);"}]},"eventsSet":{"weight":0,"actions":[{"componentId":"","args":{},"actionType":"custom","script":"console.log('eventsSet'); console.log(event);"}]},"setCalendarApi":{"weight":0,"actions":[{"componentId":"service_".concat(options.id),"args":{"value":{"calendarApi":"${event.data.calendarApi}"}},"actionType":"setValue"}]}};Object.assign(onEvent,options.onEvent);config=options.config||{};if(config.eventContent&&typeof config.eventContent==="string"){hasReturn=/\breturn\b/.test(config.eventContent);if(hasReturn){try{// 如果是包括return语句的字符串,则按函数解析,见 https://fullcalendar.io/docs/content-injection
308
314
  fn=new Function("arg",config.eventContent);config.eventContent=fn;}catch(e){console.warn(e);}}}if(config.noEventsContent&&typeof config.noEventsContent==="string"){_hasReturn=/\breturn\b/.test(config.noEventsContent);if(_hasReturn){try{// 如果是包括return语句的字符串,则按函数解析,见 https://fullcalendar.io/docs/content-injection
309
315
  _fn=new Function("arg",config.noEventsContent);config.noEventsContent=_fn;}catch(e){console.warn(e);}}}amisSchema=_objectSpread(_objectSpread({"type":"steedos-fullcalendar","label":"","id":options.id,"name":"fullcalendar","placeholder":"${additionalFilters}",//用于触发reload
310
316
  "editable":permissions.allowEdit,"selectable":permissions.allowCreate,"selectMirror":permissions.allowCreate,"initialView":initialView,"businessHours":businessHours,"views":{listWeek:{buttonText:i18next__default["default"].t('frontend_calendar_listWeek')}}},config),{},{"onEvent":onEvent});return _context76.a(2,amisSchema);}},_callee76);}));return _getObjectCalendar.apply(this,arguments);}var _assign=function __assign(){_assign=Object.assign||function __assign(t){for(var s,i=1,n=arguments.length;i<n;i++){s=arguments[i];for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))t[p]=s[p];}return t;};return _assign.apply(this,arguments);};typeof SuppressedError==="function"?SuppressedError:function(error,suppressed,message){var e=new Error(message);return e.name="SuppressedError",e.error=error,e.suppressed=suppressed,e;};/**
@@ -1686,7 +1692,7 @@ style:{borderLeftColor:"#000000",borderTopColor:"#000000",borderRightColor:"#000
1686
1692
  stepsSchema=[];stepFields=[];fields=[];unGroupFields=[];_$1.each(instance.fields,function(field){if(field.type==="section"){fields.push(field);}else{unGroupFields.push(field);}});if(unGroupFields.length>0){fields=[{type:"section",name:"General",code:"General",fields:unGroupFields}].concat(fields);}_iterator5=_createForOfIteratorHelper(fields);_context44.p=1;_iterator5.s();case 2:if((_step5=_iterator5.n()).done){_context44.n=12;break;}field=_step5.value;if(!(field.type==="section"&&field.fields)){_context44.n=11;break;}stepFields=[];fieldSchema=void 0;_iterator6=_createForOfIteratorHelper(field.fields);_context44.p=3;_iterator6.s();case 4:if((_step6=_iterator6.n()).done){_context44.n=7;break;}childField=_step6.value;_context44.n=5;return getTdInputTpl(childField,true);case 5:fieldSchema=_context44.v;if(fieldSchema.type==="steedos-field"&&fieldSchema.config){if(fieldSchema.config.amis){fieldSchema.config.amis.mode=formMode;}else{fieldSchema.config.amis={mode:formMode};}}else{fieldSchema.mode=formMode;}stepFields.push(fieldSchema);case 6:_context44.n=4;break;case 7:_context44.n=9;break;case 8:_context44.p=8;_t77=_context44.v;_iterator6.e(_t77);case 9:_context44.p=9;_iterator6.f();return _context44.f(9);case 10:stepsSchema.push({"title":field.name,"body":stepFields});case 11:_context44.n=2;break;case 12:_context44.n=14;break;case 13:_context44.p=13;_t78=_context44.v;_iterator5.e(_t78);case 14:_context44.p=14;_iterator5.f();return _context44.f(14);case 15:isReadonlyBox=instance.box!=='inbox'&&instance.box!=='draft';if(isReadonlyBox){// 只读的审批箱中最后一步的保存按钮要隐藏
1687
1693
  if(stepsSchema.length==1){stepsSchema[stepsSchema.length-1].actions=[];}else if(stepsSchema.length>1){stepsSchema[stepsSchema.length-1].actions=[{"label":"Prev","type":"button","actionType":"prev"}];}}return _context44.a(2,stepsSchema);}},_callee44,null,[[3,8,9,10],[1,13,14,15]]);}));return function getFormSteps(_x282){return _ref47.apply(this,arguments);};}();var getFormWizardView=/*#__PURE__*/function(){var _ref48=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee45(instance){var wizardMode,formSchema,_t79,_t80,_t81,_t82;return _regenerator().w(function(_context45){while(1)switch(_context45.n){case 0:wizardMode=instance.formVersion.wizard_mode||"vertical";//vertical,horizontal
1688
1694
  _t79="instance-form-view-wizard ".concat(wizardMode==="horizontal"?"pt-4":"pt-1"," mt-3");_t80=wizardMode;_context45.n=1;return getFormSteps(instance);case 1:_t81=_context45.v;_t82={"change":{"actions":[{"actionType":"setValue","componentId":"instance_form","args":{"value":"${event.data}"}}]},"finished":{//点最后一步完成按钮触发暂存按钮事件保存数据
1689
- "actions":[{"actionType":"click","componentId":"u:instance_save"}]}};formSchema={type:"wizard",className:_t79,mode:_t80,steps:_t81,actionFinishLabel:"${'CustomAction.instances.instance_save' | t}",id:"instance_wizard",target:"instance_form","onEvent":_t82};return _context45.a(2,formSchema);}},_callee45);}));return function getFormWizardView(_x283){return _ref48.apply(this,arguments);};}();var getApplicantTableView=/*#__PURE__*/function(){var _ref49=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee46(instance){var applicantInput,_t83,_t84;return _regenerator().w(function(_context46){while(1)switch(_context46.n){case 0:applicantInput=null;if(!(instance.state==='draft')){_context46.n=2;break;}_t83=Object;_t84={name:"applicant",value:amisLib.getSteedosAuth().userId,disabled:instance.box!=='draft'};_context46.n=1;return amisLib.lookupToAmis({name:"applicant",label:false,reference_to:"space_users",reference_to_field:'user',multiple:false},false,{});case 1:applicantInput=_t83.assign.call(_t83,_t84,_context46.v);_context46.n=3;break;case 2:applicantInput={label:false,mode:"horizontal",className:"m-none p-none",disabled:true,type:"tpl",tpl:'<div>${applicant_name}</div>',id:"u:2016b04355f4"};case 3:if(applicantInput){if(applicantInput.className){applicantInput.className="".concat(applicantInput.className," inline-left");}else{applicantInput.className="inline-left";}}return _context46.a(2,{type:"table-view",className:"instance-applicant-view",trs:[{background:"#FFFFFF",tds:[{className:"td-title",background:"#FFFFFF",align:"left",width:"50%",colspan:"",body:[{type:"tpl",tpl:"<div class='inline-left'>"+amisLib.i18next.t('frontend_workflow_instances_applicant_name_prefix')+"</div>",id:"u:ee62634201bf"},applicantInput],id:"u:6c24c1bb99c9",style:{padding:"none"}},{className:"td-title",background:"#FFFFFF",align:"left",width:"50%",colspan:"",body:[{type:"tpl",tpl:"<div class='inline-left'>"+amisLib.i18next.t('frontend_workflow_instance_submit_date_prefix')+"</div>",id:"u:6d0a7763d527"},{label:false,mode:"horizontal",className:"m-none p-none inline-left",disabled:true,type:"tpl",inputFormat:"YYYY-MM-DD",valueFormat:"YYYY-MM-DDT00:00:00.000[Z]",tpl:'<div>${submit_date}</div>',id:"u:2016b04355f4"}],id:"u:c8b8214ac931",style:{padding:"none"}}]}],id:"u:047f3669468b",style:{borderLeftStyle:"none",borderTopStyle:"none",borderRightStyle:"none",borderBottomStyle:"none"}});}},_callee46);}));return function getApplicantTableView(_x284){return _ref49.apply(this,arguments);};}();var getApproveButton=/*#__PURE__*/function(){var _ref50=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee47(instance,submitEvents){var _t85,_t86,_t87,_t88,_t89,_t90,_t91,_t92;return _regenerator().w(function(_context47){while(1)switch(_context47.n){case 0:if(!(!instance.approve||instance.box!='inbox'&&instance.box!='draft')){_context47.n=1;break;}return _context47.a(2,null);case 1:_t85=amisLib.i18next.t('frontend_workflow_instance_button_sign');_t86={};_context47.n=2;return getApprovalDrawerSchema(instance,submitEvents);case 2:_t87=_context47.v;_t88={componentId:"",args:_t86,actionType:"drawer",drawer:_t87};_t89=[_t88];_t90={actions:_t89};_t91={click:_t90};_t92={"approve-button w-14 h-14 rounded-full fixed bottom-4 right-4 shadow-lg text-white text-base text-center font-semibold bg-blue-500 p-0":true,"hidden":instance.box==='draft'};return _context47.a(2,{type:"button",label:_t85,onEvent:_t91,id:"steedos-approve-button",level:"primary",className:_t92});}},_callee47);}));return function getApproveButton(_x285,_x286){return _ref50.apply(this,arguments);};}();var getScrollToBottomAutoOpenApproveDrawerScript=function getScrollToBottomAutoOpenApproveDrawerScript(){return"\n (function () {\n setTimeout(function () {\n var bodyEl = document.querySelector('.steedos-instance-detail-wrapper .steedos-amis-instance-view .steedos-amis-instance-view-body');\n if (!bodyEl) return;\n var btn = document.querySelector('.steedos-instance-detail-wrapper .steedos-amis-instance-view .approve-button');\n if (!btn) return;\n\n function isDrawerOpen() {\n var dr = document.querySelector('.amis-dialog-widget.approval-drawer');\n return dr && dr.offsetParent !== null;\n }\n\n var lastAtBottom = false; // \u4E0A\u4E00\u4E2Ascroll\u4E8B\u4EF6\u662F\u5426\u5230\u5E95\n\n function isAtBottom() {\n var scrollTop = bodyEl.scrollTop,\n scrollHeight = bodyEl.scrollHeight,\n clientHeight = bodyEl.clientHeight;\n return (scrollHeight <= clientHeight) || (scrollTop + clientHeight >= scrollHeight - 2);\n }\n\n // wheel: \u53EA\u8981\u73B0\u5728\u5230\u5E95\u3001\u4E14\u662F\u5411\u4E0B\u6EDA\uFF0C\u5373\u53EF\u5F39\u51FA\n bodyEl.addEventListener('wheel', function (e) {\n var atBottom = isAtBottom();\n if (atBottom && e.deltaY > 0 && !isDrawerOpen()) {\n // [wheel] \u62D6\u52A8\u6761\u5728\u5E95\u90E8\u4E14\u5411\u4E0B\u6EDA\uFF0C\u5F39drawer\n btn.click();\n }\n });\n\n // scroll: \u62D6\u52A8\u65F6\u4EC5\u201C\u4ECE\u975E\u5E95\u90E8->\u5E95\u90E8\u201D\u77AC\u95F4\u5F39\n bodyEl.addEventListener('scroll', function () {\n var atBottom = isAtBottom();\n if (!lastAtBottom && atBottom && !isDrawerOpen()) {\n // [scroll] \u62D6\u52A8\u6761\u5230\u5E95\uFF0C\u5F39drawer\n btn.click();\n }\n lastAtBottom = atBottom;\n });\n }, 1000);\n })();\n ";};var getFlowFormSchema=/*#__PURE__*/function(){var _ref51=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee48(instance,box){var _instance$formVersion;var formStyle,formContentSchema,amisSchemaStr,initedEvents,changeEvents,submitEvents,onEvent,_t93,_t94,_t95,_t96,_t97,_t98,_t99,_t100,_t101,_t102,_t103,_t104,_t105,_t106,_t107,_t108,_t109,_t110,_t111,_t112;return _regenerator().w(function(_context48){while(1)switch(_context48.n){case 0:formStyle=instance.formVersion.style||"table";if(!(formStyle==="wizard")){_context48.n=2;break;}_context48.n=1;return getFormWizardView(instance);case 1:formContentSchema=_context48.v;_context48.n=4;break;case 2:_context48.n=3;return getFormTableView(instance);case 3:formContentSchema=_context48.v;case 4:amisSchemaStr=(_instance$formVersion=instance.formVersion)===null||_instance$formVersion===void 0?void 0:_instance$formVersion.amis_schema;initedEvents=[];changeEvents=[];submitEvents=[];if(amisSchemaStr){onEvent=JSON.parse(instance.formVersion.amis_schema).onEvent;initedEvents=(onEvent===null||onEvent===void 0?void 0:onEvent.inited.actions)||[];changeEvents=(onEvent===null||onEvent===void 0?void 0:onEvent.change.actions)||[];submitEvents=(onEvent===null||onEvent===void 0?void 0:onEvent.submit.actions)||[];}// if (box == 'inbox' || box == 'draft') {
1695
+ "actions":[{"actionType":"click","componentId":"u:instance_save"}]}};formSchema={type:"wizard",className:_t79,mode:_t80,steps:_t81,actionFinishLabel:"${'CustomAction.instances.instance_save' | t}",id:"instance_wizard",target:"instance_form","onEvent":_t82};return _context45.a(2,formSchema);}},_callee45);}));return function getFormWizardView(_x283){return _ref48.apply(this,arguments);};}();var getApplicantTableView=/*#__PURE__*/function(){var _ref49=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee46(instance){var applicantInput,_t83,_t84;return _regenerator().w(function(_context46){while(1)switch(_context46.n){case 0:applicantInput=null;if(!(instance.state==='draft')){_context46.n=2;break;}_t83=Object;_t84={name:"applicant",value:instance.applicant||amisLib.getSteedosAuth().userId,disabled:instance.box!=='draft'};_context46.n=1;return amisLib.lookupToAmis({name:"applicant",label:false,reference_to:"space_users",reference_to_field:'user',multiple:false},false,{});case 1:applicantInput=_t83.assign.call(_t83,_t84,_context46.v);_context46.n=3;break;case 2:applicantInput={label:false,mode:"horizontal",className:"m-none p-none",disabled:true,type:"tpl",tpl:'<div>${applicant_name}</div>',id:"u:2016b04355f4"};case 3:if(applicantInput){if(applicantInput.className){applicantInput.className="".concat(applicantInput.className," inline-left");}else{applicantInput.className="inline-left";}}return _context46.a(2,{type:"table-view",className:"instance-applicant-view",trs:[{background:"#FFFFFF",tds:[{className:"td-title",background:"#FFFFFF",align:"left",width:"50%",colspan:"",body:[{type:"tpl",tpl:"<div class='inline-left'>"+amisLib.i18next.t('frontend_workflow_instances_applicant_name_prefix')+"</div>",id:"u:ee62634201bf"},applicantInput],id:"u:6c24c1bb99c9",style:{padding:"none"}},{className:"td-title",background:"#FFFFFF",align:"left",width:"50%",colspan:"",body:[{type:"tpl",tpl:"<div class='inline-left'>"+amisLib.i18next.t('frontend_workflow_instance_submit_date_prefix')+"</div>",id:"u:6d0a7763d527"},{label:false,mode:"horizontal",className:"m-none p-none inline-left",disabled:true,type:"tpl",inputFormat:"YYYY-MM-DD",valueFormat:"YYYY-MM-DDT00:00:00.000[Z]",tpl:'<div>${submit_date}</div>',id:"u:2016b04355f4"}],id:"u:c8b8214ac931",style:{padding:"none"}}]}],id:"u:047f3669468b",style:{borderLeftStyle:"none",borderTopStyle:"none",borderRightStyle:"none",borderBottomStyle:"none"}});}},_callee46);}));return function getApplicantTableView(_x284){return _ref49.apply(this,arguments);};}();var getApproveButton=/*#__PURE__*/function(){var _ref50=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee47(instance,submitEvents){var _t85,_t86,_t87,_t88,_t89,_t90,_t91,_t92;return _regenerator().w(function(_context47){while(1)switch(_context47.n){case 0:if(!(!instance.approve||instance.box!='inbox'&&instance.box!='draft')){_context47.n=1;break;}return _context47.a(2,null);case 1:_t85=amisLib.i18next.t('frontend_workflow_instance_button_sign');_t86={};_context47.n=2;return getApprovalDrawerSchema(instance,submitEvents);case 2:_t87=_context47.v;_t88={componentId:"",args:_t86,actionType:"drawer",drawer:_t87};_t89=[_t88];_t90={actions:_t89};_t91={click:_t90};_t92={"approve-button w-14 h-14 rounded-full fixed bottom-4 right-4 shadow-lg text-white text-base text-center font-semibold bg-blue-500 p-0":true,"hidden":instance.box==='draft'};return _context47.a(2,{type:"button",label:_t85,onEvent:_t91,id:"steedos-approve-button",level:"primary",className:_t92});}},_callee47);}));return function getApproveButton(_x285,_x286){return _ref50.apply(this,arguments);};}();var getScrollToBottomAutoOpenApproveDrawerScript=function getScrollToBottomAutoOpenApproveDrawerScript(){return"\n (function () {\n setTimeout(function () {\n var bodyEl = document.querySelector('.steedos-instance-detail-wrapper .steedos-amis-instance-view .steedos-amis-instance-view-body');\n if (!bodyEl) return;\n var btn = document.querySelector('.steedos-instance-detail-wrapper .steedos-amis-instance-view .approve-button');\n if (!btn) return;\n\n function isDrawerOpen() {\n var dr = document.querySelector('.amis-dialog-widget.approval-drawer');\n return dr && dr.offsetParent !== null;\n }\n\n var lastAtBottom = false; // \u4E0A\u4E00\u4E2Ascroll\u4E8B\u4EF6\u662F\u5426\u5230\u5E95\n\n function isAtBottom() {\n var scrollTop = bodyEl.scrollTop,\n scrollHeight = bodyEl.scrollHeight,\n clientHeight = bodyEl.clientHeight;\n return (scrollHeight <= clientHeight) || (scrollTop + clientHeight >= scrollHeight - 2);\n }\n\n // wheel: \u53EA\u8981\u73B0\u5728\u5230\u5E95\u3001\u4E14\u662F\u5411\u4E0B\u6EDA\uFF0C\u5373\u53EF\u5F39\u51FA\n bodyEl.addEventListener('wheel', function (e) {\n var atBottom = isAtBottom();\n if (atBottom && e.deltaY > 0 && !isDrawerOpen()) {\n // [wheel] \u62D6\u52A8\u6761\u5728\u5E95\u90E8\u4E14\u5411\u4E0B\u6EDA\uFF0C\u5F39drawer\n btn.click();\n }\n });\n\n // scroll: \u62D6\u52A8\u65F6\u4EC5\u201C\u4ECE\u975E\u5E95\u90E8->\u5E95\u90E8\u201D\u77AC\u95F4\u5F39\n bodyEl.addEventListener('scroll', function () {\n var atBottom = isAtBottom();\n if (!lastAtBottom && atBottom && !isDrawerOpen()) {\n // [scroll] \u62D6\u52A8\u6761\u5230\u5E95\uFF0C\u5F39drawer\n btn.click();\n }\n lastAtBottom = atBottom;\n });\n }, 1000);\n })();\n ";};var getFlowFormSchema=/*#__PURE__*/function(){var _ref51=_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee48(instance,box){var _instance$formVersion;var formStyle,formContentSchema,amisSchemaStr,initedEvents,changeEvents,submitEvents,onEvent,_t93,_t94,_t95,_t96,_t97,_t98,_t99,_t100,_t101,_t102,_t103,_t104,_t105,_t106,_t107,_t108,_t109,_t110,_t111,_t112;return _regenerator().w(function(_context48){while(1)switch(_context48.n){case 0:formStyle=instance.formVersion.style||"table";if(!(formStyle==="wizard")){_context48.n=2;break;}_context48.n=1;return getFormWizardView(instance);case 1:formContentSchema=_context48.v;_context48.n=4;break;case 2:_context48.n=3;return getFormTableView(instance);case 3:formContentSchema=_context48.v;case 4:amisSchemaStr=(_instance$formVersion=instance.formVersion)===null||_instance$formVersion===void 0?void 0:_instance$formVersion.amis_schema;initedEvents=[];changeEvents=[];submitEvents=[];if(amisSchemaStr){onEvent=JSON.parse(instance.formVersion.amis_schema).onEvent;initedEvents=(onEvent===null||onEvent===void 0?void 0:onEvent.inited.actions)||[];changeEvents=(onEvent===null||onEvent===void 0?void 0:onEvent.change.actions)||[];submitEvents=(onEvent===null||onEvent===void 0?void 0:onEvent.submit.actions)||[];}// if (box == 'inbox' || box == 'draft') {
1690
1696
  // TODO: 临时去掉 AutoOpenApproveDrawer 功能因为测试到性能问题
1691
1697
  if((box=='inbox'||box=='draft')&&window.enableAutoOpenApproveDrawer){// 滚动条滚动到底部弹出底部签批drawer窗口
1692
1698
  initedEvents.push({"actionType":"custom","script":getScrollToBottomAutoOpenApproveDrawerScript(),"args":{}});}_t93="steedos-amis-instance-view sm:rounded "+"steedos-instance-style-"+formStyle;_t94={"type":"steedos-record-detail-header","label":"标题面板","objectApiName":"instances","recordId":instance._id,"id":"u:e6b2adbe0e21","showRecordTitle":false,"className":"p-0 m-0 p0 m0 bg-gray-50 sm:rounded-tl sm:rounded-tr"};_t95={".steedos-amis-instance-view-body":{"height":"calc(100% - 65px)"},".instance-approve-history .antd-Table-table thead":{"display":"none"},".instance-approve-history .antd-Table-heading":{"font-size":"14px","font-weight":"500","padding-left":"0px"},".antd-List-heading":{"font-size":"14px","font-weight":"500"},".steedos-object-record-detail-header .antd-Grid-col--mdAuto":{"padding":"0px !important"},".antd-List-placeholder":{"display":"none"},".steedos-amis-instance-view .antd-Table-fixedTop":{"top":"-13px"},".steedos-amis-instance-view .antd-Table-fixedTop:after":{"box-shadow":"none"},".antd-List-items":{"border":'0px'},".antd-ListItem":{"border-top":"0px !important","background":"transparent !important"}};_context48.n=5;return getAttachments(instance);case 5:_t96=_context48.v;_context48.n=6;return getRelatedInstances();case 6:_t97=_context48.v;_context48.n=7;return getRelatedRecords(instance);case 7:_t98=_context48.v;_t99={type:"tpl",id:"u:f5bb0ad602a6",tpl:"<div class=\"instance-name\">".concat(instance.title,"</div>"),inline:true,wrapperComponent:"",style:{fontFamily:"",fontSize:12,textAlign:"center"}};_t100=formContentSchema;_context48.n=8;return getApplicantTableView(instance);case 8:_t101=_context48.v;_t102=[_t99,_t100,_t101];_t103={// validateError: {