@steedos-widgets/amis-lib 3.6.14 → 6.3.0-beta.10
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/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/index.cjs.js +139 -65
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +139 -65
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +48 -39
- package/dist/index.umd.js.map +1 -1
- package/dist/types/schema/standard_delete.amis.d.ts +1 -0
- package/dist/types/schema/standard_edit.amis.d.ts +13 -0
- package/dist/types/schema/standard_new.amis.d.ts +1 -1
- package/dist/types/standard/button.d.ts +15 -1
- package/package.json +2 -2
package/dist/index.umd.js
CHANGED
|
@@ -56,7 +56,8 @@ var doubleSlashIndex=url.indexOf('//');var urlIndex=url.indexOf('/',doubleSlashI
|
|
|
56
56
|
* @LastEditTime: 2024-02-21 17:19:30
|
|
57
57
|
* @Description:
|
|
58
58
|
*/function getCreatedInfoTpl(formFactor){var href=Router.getObjectDetailPath({formFactor:formFactor,appId:"admin",objectName:'users',recordId:'${created_by._id}'});return"<span><a href='".concat(href,"'>${_display.created_by.label}</a>${_display.created}</span>");}function getModifiedInfoTpl(formFactor){var href=Router.getObjectDetailPath({formFactor:formFactor,appId:"admin",objectName:'users',recordId:'${modified_by._id}'});return"<span><a href='".concat(href,"'>${_display.modified_by.label}</a>${_display.modified}</span>");}function getNumberTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getTimeTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getDateTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getDateTimeTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getUiFieldTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getUiFileSizeTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}//TODO 处理name字段
|
|
59
|
-
function getRefObjectNameFieldName(_x2){return _getRefObjectNameFieldName.apply(this,arguments);}function _getRefObjectNameFieldName(){_getRefObjectNameFieldName=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee49(field){var refUiSchema,NAME_FIELD_KEY;return _regeneratorRuntime().wrap(function _callee49$(_context49){while(1){switch(_context49.prev=_context49.next){case 0:_context49.next=2;return getUISchema(field.reference_to);case 2:refUiSchema=_context49.sent;NAME_FIELD_KEY=refUiSchema.NAME_FIELD_KEY||'name';return _context49.abrupt("return",NAME_FIELD_KEY);case 5:case"end":return _context49.stop();}}},_callee49);}));return _getRefObjectNameFieldName.apply(this,arguments);}function getSelectTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getSelectMap(selectOptions){var map={};_$1.forEach(selectOptions,function(option){var optionValue=option.value+'';var optionColor=option.color+'';if(optionColor&&optionColor!="undefined"){var background=optionColor.charAt(0)==='#'?optionColor:'#'+optionColor;var color=getContrastColor(background);var optionColorStyle='background:'+background+';color:'+color+';line-height:1.5rem';map[optionValue]="<span class=\"rounded-xl px-2 py-1\" style='".concat(optionColorStyle,"'>").concat(option.label,"</span>");}else{map[optionValue]=option.label;}});return map;}function getNameTplUrl(field,ctx){if(ctx.objectName==='cms_files'){return"${(versions[0] && versions[0].url) ? versions[0].url+'?download=true' : context.rootUrl+'/api/files/files/'+versions[0]+'?download=true'}";}var href=Router.getObjectDetailPath(_objectSpread(_objectSpread({},ctx),{},{formFactor:ctx.formFactor,appId:"${appId}",objectName:ctx.objectName||"${objectName}",recordId:"${".concat(ctx.idFieldName,"}")}));return href;}function getNameTpl(field,ctx){var href=getNameTplUrl(field,ctx);var linkTarget="";if(ctx&&ctx.isLookup){linkTarget="target='_blank'";}if(ctx.isRelated&&window.innerWidth>=768){return"<a href=\"".concat(href,"\" ").concat(linkTarget," onclick=\"return false;\">${").concat(field.name," | raw}</a>");}else{return"<a href=\"".concat(href,"\" ").concat(linkTarget,">${").concat(field.name," | raw}</a>");}}function getRelatedFieldTpl(field,ctx){var tpl='';if(!field.reference_to&&(field.optionsFunction||field._optionsFunction||field.options)){if(field.isTableField){return"${".concat(field.name,"}");}else{return"${".concat(field.name,"__label}");}}var linkTarget="";if(ctx&&ctx.isLookup){linkTarget="target='_blank'";}var onlyDisplayLookLabel=ctx.onlyDisplayLookLabel;var fieldDataStrTpl="data._display.".concat(field.name);if(field.isTableField){fieldDataStrTpl="data.".concat(field.name);}if(_.isString(field.reference_to)||!field.reference_to){if(field.multiple){var labelTpl="<%=item.label%>";if(ctx.isRelated){linkTarget="target='_blank'";}if(!onlyDisplayLookLabel){var href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"});labelTpl="<a href=\"".concat(href,"\" ").concat(linkTarget,"><%=item.label%></a>");}tpl="\n <% if (".concat(fieldDataStrTpl," && ").concat(fieldDataStrTpl,".length) { %><% ").concat(fieldDataStrTpl,".forEach(function(item,index) { %> <% if(index>0 && index<").concat(fieldDataStrTpl,".length){ %> , <% } %> ").concat(labelTpl," <% }); %><% } %>\n ");}else{var _labelTpl="${_display.".concat(field.name,".label}");var objectNameTpl="${_display.".concat(field.name,".objectName}");var recordIdTpl="${_display.".concat(field.name,".value}");if(field.isTableField){_labelTpl="${".concat(field.name,".label}");objectNameTpl="${".concat(field.name,".objectName}");recordIdTpl="${".concat(field.name,".value}");}if(!onlyDisplayLookLabel){var _href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"${appId}",objectName:"".concat(objectNameTpl),recordId:"".concat(recordIdTpl)});if(ctx.isRelated&&window.innerWidth>=768){_labelTpl="<a href=\"".concat(_href,"\" ").concat(linkTarget," onclick=\"return false;\">").concat(_labelTpl,"</a>");}else{_labelTpl="<a href=\"".concat(_href,"\" ").concat(linkTarget,">").concat(_labelTpl,"</a>");}}tpl=_labelTpl;}}else{var _labelTpl2="<%=item.label%>";if(!onlyDisplayLookLabel){var _href2=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"});_labelTpl2="<a href=\"".concat(_href2,"\" ").concat(linkTarget,"><%=item.label%></a>");}tpl="\n <% if (".concat(fieldDataStrTpl," && ").concat(fieldDataStrTpl,".length) { %><% ").concat(fieldDataStrTpl,".forEach(function(item) { %> ").concat(_labelTpl2," <% }); %><% } %>\n ");}return tpl;}function getLookupTpl(_x3,_x4){return _getLookupTpl.apply(this,arguments);}function _getLookupTpl(){_getLookupTpl=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee50(field,ctx){var NAME_FIELD_KEY,href,_href3;return _regeneratorRuntime().wrap(function _callee50$(_context50){while(1){switch(_context50.prev=_context50.next){case 0:if(field.reference_to){_context50.next=2;break;}return _context50.abrupt("return",getSelectTpl(field));case 2:_context50.next=4;return getRefObjectNameFieldName(field);case 4:NAME_FIELD_KEY=_context50.sent;if(!field.multiple){_context50.next=10;break;}href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:ctx.appId,objectName:field.reference_to,recordId:"<%=item._id%>",_templateType:"JavaScript"});return _context50.abrupt("return","\n <% if (data.".concat(field.name," && data.").concat(field.name,".length) { %><% data.").concat(field.name,".forEach(function(item) { %> <a href=\"").concat(href,"\"><%=item.").concat(NAME_FIELD_KEY,"%></a> <% }); %><% } %>\n "));case 10:_href3=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:ctx.appId,objectName:field.reference_to,recordId:"${".concat(field.name,"._id}")});return _context50.abrupt("return","<a href=\"".concat(_href3,"\">${").concat(field.name,".").concat(NAME_FIELD_KEY,"}</a>"));case 12:case"end":return _context50.stop();}}},_callee50);}));return _getLookupTpl.apply(this,arguments);}function getSwitchTpl(field){var fieldDataStrTpl="data._display.".concat(field.name);if(field.isTableField){fieldDataStrTpl="data.".concat(field.name);}return"<% if (data.".concat(field.name,") { %>\n <span class=\"slds-icon_container slds-icon-utility-check slds-current-color\" title=\"<%=").concat(fieldDataStrTpl,"%>\">\n <span ><%= ").concat(fieldDataStrTpl," === \"\u221A\" ? \"<svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='currentColor' class='w-4 h-4'><path stroke-linecap='round' stroke-linejoin='round' d='M4.5 12.75l6 6 9-13.5' /></svg>\" : ").concat(fieldDataStrTpl," %></span>\n </span>\n <% } %>");}function getPasswordTpl(field){return"<% if (data.".concat(field.name,") { %>\n <span>******</span>\n <% } %>");}function getLocationTpl(field){return"${".concat(field.name," ? ").concat(field.name,".address : ''}");}function getFieldTpl(_x5,_x6){return _getFieldTpl.apply(this,arguments);}function _getFieldTpl(){_getFieldTpl=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee51(field,options){return _regeneratorRuntime().wrap(function _callee51$(_context51){while(1){switch(_context51.prev=_context51.next){case 0:if(!((field.is_name||field.name===options.labelFieldName)&&!options.onlyDisplayLookLabel)){_context51.next=2;break;}return _context51.abrupt("return",getNameTpl(field,options));case 2:_context51.t0=field.type;_context51.next=_context51.t0==='password'?5:_context51.t0==='boolean'?6:_context51.t0==='toggle'?7:_context51.t0==='select'?8:_context51.t0==='time'?9:_context51.t0==='date'?10:_context51.t0==='datetime'?11:_context51.t0==='lookup'?12:_context51.t0==='master_detail'?15:_context51.t0==='location'?18:_context51.t0==='number'?21:_context51.t0==='currency'?21:_context51.t0==='percent'?24:_context51.t0==='formula'?24:_context51.t0==='summary'?24:_context51.t0==='filesize'?25:26;break;case 5:return _context51.abrupt("return",getPasswordTpl(field));case 6:return _context51.abrupt("return",getSwitchTpl(field));case 7:return _context51.abrupt("return",getSwitchTpl(field));case 8:return _context51.abrupt("return",getSelectTpl(field));case 9:return _context51.abrupt("return",getTimeTpl(field));case 10:return _context51.abrupt("return",getDateTpl(field));case 11:return _context51.abrupt("return",getDateTimeTpl(field));case 12:_context51.next=14;return getRelatedFieldTpl(field,options);case 14:return _context51.abrupt("return",_context51.sent);case 15:_context51.next=17;return getRelatedFieldTpl(field,options);case 17:return _context51.abrupt("return",_context51.sent);case 18:_context51.next=20;return getLocationTpl(field);case 20:return _context51.abrupt("return",_context51.sent);case 21:_context51.next=23;return getNumberTpl(field);case 23:return _context51.abrupt("return",_context51.sent);case 24:return _context51.abrupt("return",getUiFieldTpl(field));case 25:return _context51.abrupt("return",getUiFileSizeTpl(field));case 26:case"end":return _context51.stop();}}},_callee51);}));return _getFieldTpl.apply(this,arguments);}function getFieldsTemplate(_x7,_x8){return _getFieldsTemplate.apply(this,arguments);}function _getFieldsTemplate(){_getFieldsTemplate=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee52(fields,display){var expandFields,fieldsName,displayFields,fieldsArr,_iterator5,_step6,field,expandFieldsQuery;return _regeneratorRuntime().wrap(function _callee52$(_context52){while(1){switch(_context52.prev=_context52.next){case 0:expandFields=[];if(display!=false){display=true;}fieldsName=['_id'];displayFields=[];fieldsArr=[];if(___namespace.isArray(fields)){fieldsArr=fields;}else{fieldsArr=___namespace.values(fields);}_iterator5=_createForOfIteratorHelper(fieldsArr);try{for(_iterator5.s();!(_step6=_iterator5.n()).done;){field=_step6.value;if(field.name){//graphql 的 ui\display 中使用的字段需要先在query中查询. 否则会返回null
|
|
59
|
+
function getRefObjectNameFieldName(_x2){return _getRefObjectNameFieldName.apply(this,arguments);}function _getRefObjectNameFieldName(){_getRefObjectNameFieldName=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee49(field){var refUiSchema,NAME_FIELD_KEY;return _regeneratorRuntime().wrap(function _callee49$(_context49){while(1){switch(_context49.prev=_context49.next){case 0:_context49.next=2;return getUISchema(field.reference_to);case 2:refUiSchema=_context49.sent;NAME_FIELD_KEY=refUiSchema.NAME_FIELD_KEY||'name';return _context49.abrupt("return",NAME_FIELD_KEY);case 5:case"end":return _context49.stop();}}},_callee49);}));return _getRefObjectNameFieldName.apply(this,arguments);}function getSelectTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getSelectMap(selectOptions){var map={};_$1.forEach(selectOptions,function(option){var optionValue=option.value+'';var optionColor=option.color+'';if(optionColor&&optionColor!="undefined"){var background=optionColor.charAt(0)==='#'?optionColor:'#'+optionColor;var color=getContrastColor(background);var optionColorStyle='background:'+background+';color:'+color+';line-height:1.5rem';map[optionValue]="<span class=\"rounded-xl px-2 py-1\" style='".concat(optionColorStyle,"'>").concat(option.label,"</span>");}else{map[optionValue]=option.label;}});return map;}function getNameTplUrl(field,ctx){if(ctx.objectName==='cms_files'){return"${(versions[0] && versions[0].url) ? versions[0].url+'?download=true' : context.rootUrl+'/api/files/files/'+versions[0]+'?download=true'}";}var href=Router.getObjectDetailPath(_objectSpread(_objectSpread({},ctx),{},{formFactor:ctx.formFactor,appId:"${appId}",objectName:ctx.objectName||"${objectName}",recordId:"${".concat(ctx.idFieldName,"}")}));return href;}function getNameTpl(field,ctx){var href=getNameTplUrl(field,ctx);var linkTarget="";if(ctx&&ctx.isLookup){linkTarget="target='_blank'";}var nameLabel=field.name;//若字段类型是lookup,则按照相关表tpl的label规则显示;若是其它类型,则显示_display或字段本身的值
|
|
60
|
+
if(field.type=="lookup"){if(!field.reference_to&&(field.optionsFunction||field._optionsFunction||field.options)){if(!field.isTableField){nameLabel="${".concat(field.name,"__label}");}}else{nameLabel="${_display.".concat(field.name,".label}");}}else{nameLabel="${_display.".concat(field.name," || ").concat(field.name,"}");}if(ctx.isRelated&&window.innerWidth>=768){return"<a href=\"".concat(href,"\" ").concat(linkTarget," onclick=\"return false;\">${").concat(nameLabel," | raw}</a>");}else{return"<a href=\"".concat(href,"\" ").concat(linkTarget,">${").concat(nameLabel," | raw}</a>");}}function getRelatedFieldTpl(field,ctx){var tpl='';if(!field.reference_to&&(field.optionsFunction||field._optionsFunction||field.options)){if(field.isTableField){return"${".concat(field.name,"}");}else{return"${".concat(field.name,"__label}");}}var linkTarget="";if(ctx&&ctx.isLookup){linkTarget="target='_blank'";}var onlyDisplayLookLabel=ctx.onlyDisplayLookLabel;var fieldDataStrTpl="data._display.".concat(field.name);if(field.isTableField){fieldDataStrTpl="data.".concat(field.name);}if(_.isString(field.reference_to)||!field.reference_to){if(field.multiple){var labelTpl="<%=item.label%>";if(ctx.isRelated){linkTarget="target='_blank'";}if(!onlyDisplayLookLabel){var href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"});labelTpl="<a href=\"".concat(href,"\" ").concat(linkTarget,"><%=item.label%></a>");}tpl="\n <% if (".concat(fieldDataStrTpl," && ").concat(fieldDataStrTpl,".length) { %><% ").concat(fieldDataStrTpl,".forEach(function(item,index) { %> <% if(index>0 && index<").concat(fieldDataStrTpl,".length){ %> , <% } %> ").concat(labelTpl," <% }); %><% } %>\n ");}else{var _labelTpl="${_display.".concat(field.name,".label}");var objectNameTpl="${_display.".concat(field.name,".objectName}");var recordIdTpl="${_display.".concat(field.name,".value}");if(field.isTableField){_labelTpl="${".concat(field.name,".label}");objectNameTpl="${".concat(field.name,".objectName}");recordIdTpl="${".concat(field.name,".value}");}if(!onlyDisplayLookLabel){var _href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"${appId}",objectName:"".concat(objectNameTpl),recordId:"".concat(recordIdTpl)});if(ctx.isRelated&&window.innerWidth>=768){_labelTpl="<a href=\"".concat(_href,"\" ").concat(linkTarget," onclick=\"return false;\">").concat(_labelTpl,"</a>");}else{_labelTpl="<a href=\"".concat(_href,"\" ").concat(linkTarget,">").concat(_labelTpl,"</a>");}}tpl=_labelTpl;}}else{var _labelTpl2="<%=item.label%>";if(!onlyDisplayLookLabel){var _href2=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"});_labelTpl2="<a href=\"".concat(_href2,"\" ").concat(linkTarget,"><%=item.label%></a>");}tpl="\n <% if (".concat(fieldDataStrTpl," && ").concat(fieldDataStrTpl,".length) { %><% ").concat(fieldDataStrTpl,".forEach(function(item) { %> ").concat(_labelTpl2," <% }); %><% } %>\n ");}return tpl;}function getLookupTpl(_x3,_x4){return _getLookupTpl.apply(this,arguments);}function _getLookupTpl(){_getLookupTpl=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee50(field,ctx){var NAME_FIELD_KEY,href,_href3;return _regeneratorRuntime().wrap(function _callee50$(_context50){while(1){switch(_context50.prev=_context50.next){case 0:if(field.reference_to){_context50.next=2;break;}return _context50.abrupt("return",getSelectTpl(field));case 2:_context50.next=4;return getRefObjectNameFieldName(field);case 4:NAME_FIELD_KEY=_context50.sent;if(!field.multiple){_context50.next=10;break;}href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:ctx.appId,objectName:field.reference_to,recordId:"<%=item._id%>",_templateType:"JavaScript"});return _context50.abrupt("return","\n <% if (data.".concat(field.name," && data.").concat(field.name,".length) { %><% data.").concat(field.name,".forEach(function(item) { %> <a href=\"").concat(href,"\"><%=item.").concat(NAME_FIELD_KEY,"%></a> <% }); %><% } %>\n "));case 10:_href3=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:ctx.appId,objectName:field.reference_to,recordId:"${".concat(field.name,"._id}")});return _context50.abrupt("return","<a href=\"".concat(_href3,"\">${").concat(field.name,".").concat(NAME_FIELD_KEY,"}</a>"));case 12:case"end":return _context50.stop();}}},_callee50);}));return _getLookupTpl.apply(this,arguments);}function getSwitchTpl(field){var fieldDataStrTpl="data._display.".concat(field.name);if(field.isTableField){fieldDataStrTpl="data.".concat(field.name);}return"<% if (data.".concat(field.name,") { %>\n <span class=\"slds-icon_container slds-icon-utility-check slds-current-color\" title=\"<%=").concat(fieldDataStrTpl,"%>\">\n <span ><%= ").concat(fieldDataStrTpl," === \"\u221A\" ? \"<svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='currentColor' class='w-4 h-4'><path stroke-linecap='round' stroke-linejoin='round' d='M4.5 12.75l6 6 9-13.5' /></svg>\" : ").concat(fieldDataStrTpl," %></span>\n </span>\n <% } %>");}function getPasswordTpl(field){return"<% if (data.".concat(field.name,") { %>\n <span>******</span>\n <% } %>");}function getLocationTpl(field){return"${".concat(field.name," ? ").concat(field.name,".address : ''}");}function getFieldTpl(_x5,_x6){return _getFieldTpl.apply(this,arguments);}function _getFieldTpl(){_getFieldTpl=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee51(field,options){return _regeneratorRuntime().wrap(function _callee51$(_context51){while(1){switch(_context51.prev=_context51.next){case 0:if(!((field.is_name||field.name===options.labelFieldName)&&!options.onlyDisplayLookLabel&&field.multiple!==true)){_context51.next=2;break;}return _context51.abrupt("return",getNameTpl(field,options));case 2:_context51.t0=field.type;_context51.next=_context51.t0==='password'?5:_context51.t0==='boolean'?6:_context51.t0==='toggle'?7:_context51.t0==='select'?8:_context51.t0==='time'?9:_context51.t0==='date'?10:_context51.t0==='datetime'?11:_context51.t0==='lookup'?12:_context51.t0==='master_detail'?15:_context51.t0==='location'?18:_context51.t0==='number'?21:_context51.t0==='currency'?21:_context51.t0==='percent'?24:_context51.t0==='formula'?24:_context51.t0==='summary'?24:_context51.t0==='filesize'?25:26;break;case 5:return _context51.abrupt("return",getPasswordTpl(field));case 6:return _context51.abrupt("return",getSwitchTpl(field));case 7:return _context51.abrupt("return",getSwitchTpl(field));case 8:return _context51.abrupt("return",getSelectTpl(field));case 9:return _context51.abrupt("return",getTimeTpl(field));case 10:return _context51.abrupt("return",getDateTpl(field));case 11:return _context51.abrupt("return",getDateTimeTpl(field));case 12:_context51.next=14;return getRelatedFieldTpl(field,options);case 14:return _context51.abrupt("return",_context51.sent);case 15:_context51.next=17;return getRelatedFieldTpl(field,options);case 17:return _context51.abrupt("return",_context51.sent);case 18:_context51.next=20;return getLocationTpl(field);case 20:return _context51.abrupt("return",_context51.sent);case 21:_context51.next=23;return getNumberTpl(field);case 23:return _context51.abrupt("return",_context51.sent);case 24:return _context51.abrupt("return",getUiFieldTpl(field));case 25:return _context51.abrupt("return",getUiFileSizeTpl(field));case 26:case"end":return _context51.stop();}}},_callee51);}));return _getFieldTpl.apply(this,arguments);}function getFieldsTemplate(_x7,_x8){return _getFieldsTemplate.apply(this,arguments);}function _getFieldsTemplate(){_getFieldsTemplate=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee52(fields,display){var expandFields,fieldsName,displayFields,fieldsArr,_iterator5,_step6,field,expandFieldsQuery;return _regeneratorRuntime().wrap(function _callee52$(_context52){while(1){switch(_context52.prev=_context52.next){case 0:expandFields=[];if(display!=false){display=true;}fieldsName=['_id'];displayFields=[];fieldsArr=[];if(___namespace.isArray(fields)){fieldsArr=fields;}else{fieldsArr=___namespace.values(fields);}_iterator5=_createForOfIteratorHelper(fieldsArr);try{for(_iterator5.s();!(_step6=_iterator5.n()).done;){field=_step6.value;if(field.name){//graphql 的 ui\display 中使用的字段需要先在query中查询. 否则会返回null
|
|
60
61
|
if(field.expand){expandFields.push(field);}else{if(field.name.indexOf('.')<0){if(display&&(field.type=='lookup'||field.type=='master_detail')){fieldsName.push("".concat(field.name));displayFields.push("".concat(field.name));}else{fieldsName.push(field.alias?"".concat(field.alias,":").concat(field.name):field.name);}if(_$1.includes(['time','date','datetime','boolean','number','currency'],field.type)){fieldsName.push("".concat(field.name));}if(_$1.includes(['percent','time','filesize','date','datetime','boolean','number','currency','select','file','image','avatar','formula','summary','object','grid'],field.type)){displayFields.push("".concat(field.name));}}else{objectFieldName=field.name.split('.')[0];fieldsName.push(objectFieldName);displayFields.push(objectFieldName);}}}}}catch(err){_iterator5.e(err);}finally{_iterator5.f();}displayFields=___namespace.uniq(displayFields);fieldsName=___namespace.uniq(fieldsName);expandFieldsQuery="";if(expandFields.length>0){___namespace.each(expandFields,function(field){expandFieldsQuery=expandFieldsQuery+"".concat(field.expandInfo.fieldName,"__expand{").concat(field.expandInfo.displayName,"}");});}if(!(displayFields.length>0)){_context52.next=14;break;}return _context52.abrupt("return","".concat(fieldsName.join(','),",").concat(expandFieldsQuery,",_display:_ui{").concat(displayFields.join(','),"}"));case 14:return _context52.abrupt("return",_$1.trimEnd("".concat(fieldsName.join(' '),",").concat(expandFieldsQuery),","));case 15:case"end":return _context52.stop();}}},_callee52);}));return _getFieldsTemplate.apply(this,arguments);}function getRecordPermissionsTemplate(){return"\n recordPermissions: _permissions{\n allowCreate,\n allowCreateFiles,\n allowDelete,\n allowDeleteFiles,\n allowEdit,\n allowEditFiles,\n allowRead,\n allowReadFiles,\n disabled_actions,\n disabled_list_views,\n field_permissions,\n modifyAllFiles,\n modifyAllRecords,\n modifyAssignCompanysRecords,\n modifyCompanyRecords,\n uneditable_fields,\n unreadable_fields,\n unrelated_objects,\n viewAllFiles,\n viewAllRecords,\n viewAssignCompanysRecords,\n viewCompanyRecords,\n }\n ";}function getFindOneQuery$1(_x9,_x10,_x11,_x12){return _getFindOneQuery$.apply(this,arguments);}function _getFindOneQuery$(){_getFindOneQuery$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee53(object,recordId,fields,options){var queryOptions,alias;return _regeneratorRuntime().wrap(function _callee53$(_context53){while(1){switch(_context53.prev=_context53.next){case 0:queryOptions="(filters:[\"".concat(object.idFieldName,"\", \"=\", \"${recordId}\"])");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,")");}}_context53.t0="{".concat(alias,":").concat(object.name).concat(queryOptions,"{");_context53.next=6;return getFieldsTemplate(fields);case 6:_context53.t1=_context53.sent;_context53.t2=_context53.t0.concat.call(_context53.t0,_context53.t1,", ").concat(getRecordPermissionsTemplate(),"}}");return _context53.abrupt("return",{query:_context53.t2});case 9:case"end":return _context53.stop();}}},_callee53);}));return _getFindOneQuery$.apply(this,arguments);}function getSaveQuery(object,recordId,fields,options){return{objectName:object.name,$:"$$",recordId:recordId,modalName:"${modalName}"};}/*
|
|
61
62
|
readonly字段应该移除掉不提交到服务端。
|
|
62
63
|
*/function getScriptForReadonlyFields(fields){var scripts=[];fields.forEach(function(item){if(item.readonly&&item.name.indexOf(".")<0){scripts.push("delete formData.".concat(item.name,";"));}});return scripts.join("\r\n");}/*
|
|
@@ -131,7 +132,7 @@ if(!field.hidden&&!field.extra){columnItem=Object.assign({},{name:field.name,lab
|
|
|
131
132
|
width:getFieldWidth(field.width),type:type,tpl:tpl,toggled:field.toggled,className:className,inputClassName:"inline","static":true,options:field.type==='html'?{html:true}:null// toggled: true
|
|
132
133
|
},fieldAmis,{name:field.name});if(field.type==='color'){columnItem.type='color';columnItem.defaultColor=null;}if(window.innerWidth>=768&&(field.is_name||field.name===options.labelFieldName||(field.type=='lookup'||field.type=='master_detail')&&___namespace.isString(field.reference_to)&&field.multiple!=true)&&options.isRelated){drawerRecordDetailSchema={"type":"steedos-record-detail","objectApiName":"${objectName}","recordId":"${".concat(options.idFieldName,"}"),"showBackButton":false,"showButtons":true,"data":{"_inDrawer":true,// 用于判断是否在抽屉中
|
|
133
134
|
"recordLoaded":false// 重置数据加载状态
|
|
134
|
-
}};if(!(field.is_name||field.name===options.labelFieldName)){drawerRecordDetailSchema.objectApiName=field.reference_to;drawerRecordDetailSchema.recordId="${_display.".concat(field.name,".value}");}columnItem.onEvent={"click":{"actions":[{"actionType":"drawer","drawer":{"type":"drawer","title":" ","headerClassName":"hidden","size":"lg","bodyClassName":"p-0 m-0","closeOnEsc":true,"closeOnOutside":true,"resizable":true,"actions":[],"body":[drawerRecordDetailSchema],"className":"steedos-record-detail-drawer app-popover","id":"u:fc5f055afa8c"},"preventDefault":true}]}};}}case 50:if(columnItem){if(quickEditSchema){columnItem.quickEdit=quickEditSchema;columnItem.quickEditEnabledOn="${is_system !== true}";}columnItem.id="".concat(options.objectName,"_").concat(field.name,"_${_index}");columns.push(columnItem);}case 51:_context56.next=6;break;case 53:_context56.next=58;break;case 55:_context56.prev=55;_context56.t1=_context56["catch"](4);_iterator6.e(_context56.t1);case 58:_context56.prev=58;_iterator6.f();return _context56.finish(58);case 61:// columns.push(getOperation(fields));
|
|
135
|
+
}};if(!(field.is_name||field.name===options.labelFieldName)){drawerRecordDetailSchema.objectApiName=field.reference_to;drawerRecordDetailSchema.recordId="${_display.".concat(field.name,".value}");}columnItem.onEvent={"click":{"actions":[{"actionType":"drawer","drawer":{"type":"drawer","title":" ","headerClassName":"hidden","size":"lg","bodyClassName":"p-0 m-0 bg-gray-100","closeOnEsc":true,"closeOnOutside":true,"resizable":true,"actions":[],"body":[drawerRecordDetailSchema],"className":"steedos-record-detail-drawer app-popover","id":"u:fc5f055afa8c"},"preventDefault":true}]}};}}case 50:if(columnItem){if(quickEditSchema){columnItem.quickEdit=quickEditSchema;columnItem.quickEditEnabledOn="${is_system !== true}";}columnItem.id="".concat(options.objectName,"_").concat(field.name,"_${_index}");columns.push(columnItem);}case 51:_context56.next=6;break;case 53:_context56.next=58;break;case 55:_context56.prev=55;_context56.t1=_context56["catch"](4);_iterator6.e(_context56.t1);case 58:_context56.prev=58;_iterator6.f();return _context56.finish(58);case 61:// columns.push(getOperation(fields));
|
|
135
136
|
if(!options.isLookup&&!options.isInputTable&&!___namespace.some(columns,{name:options.labelFieldName})){// 没有名称字段时显示序号字段为链接,lookup弹出的picker不需要此功能
|
|
136
137
|
href=Router.getObjectDetailPath(_objectSpread(_objectSpread({},options),{},{formFactor:options.formFactor,appId:"${appId}",objectName:options.objectName||"${objectName}",recordId:"${".concat(options.idFieldName,"}")}));columns[0].type="tpl";columns[0].tpl="<a href=\"".concat(href,"\">${").concat(columns[0].name,"}</a>");}return _context56.abrupt("return",columns);case 63:case"end":return _context56.stop();}}},_callee56,null,[[4,55,58,61]]);}));return _getTableColumns.apply(this,arguments);}function getMobileLines(tpls){var lines=[];var maxLineCount=3;var lineChildren=[];var isNewLine=false;var isLeft=true;var lineChildrenClassName="";var lineClassName="flex items-center justify-between mb-1";tpls.forEach(function(item){var _item$field$amis,_item$field$amis2;if(isNewLine&&lines.length<maxLineCount){lines.push({"type":"wrapper","body":lineChildren,"size":"none","className":lineClassName});lineChildren=[];}if(isLeft){// 左侧半行
|
|
137
138
|
lineChildrenClassName="steedos-listview-item-left truncate";if(item.field.is_wide){// 左侧全行样式可以单独写,如果需要配置两行省略号效果,可以加样式类 two-lines-truncate
|
|
@@ -182,7 +183,7 @@ data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken
|
|
|
182
183
|
// }
|
|
183
184
|
// }
|
|
184
185
|
// })
|
|
185
|
-
var fieldNames=___namespace.map(fields,function(n){return n.name;});return"\n if(payload.data.data.length === 0){\n var isEditor = !!".concat(options&&options.isEditor,";\n if(isEditor){\n var fieldNames = ").concat(JSON.stringify(fieldNames),";\n var emptyDoc = {};//\u8FD9\u91CC\u5982\u679C\u4E0D\u628A\u6BCF\u4E2A\u5B57\u6BB5\u503C\u8BBE\u7F6E\u4E3A\u7A7A\u7684\u8BDD\uFF0C\u8868\u5355\u4E0A\u4F1A\u663E\u793A\u4E0A\u4E00\u6B21\u8868\u5355\u4E0A\u7684\u5B57\u6BB5\u503C\n fieldNames.forEach(function(n){\n emptyDoc[n] = null;\n });\n // \u8BBE\u8BA1\u5668\u4E2D\u59CB\u7EC8\u663E\u793A\u8868\u5355\uFF0C\u6709\u8BB0\u5F55\u5219\u663E\u793A\u7B2C\u4E00\u6761\u8BB0\u5F55\uFF0C\u6CA1\u8BB0\u5F55\u65F6\u663E\u793A\u4E3A\u7A7A\u8868\u5355\n payload.data.data = [emptyDoc];\n }\n else{\n return {\n status: 2,\n msg: \"").concat(i18next__default["default"].t('frontend_no_records_found'),"\"\n }\n }\n }\n if(payload.data.data){\n var data = payload.data.data[0];\n var gridAndObjectFieldsName = ").concat(JSON.stringify(gridAndObjectFieldsName),";\n try{\n ").concat(scriptStr,"\n ").concat(getScriptForAddUrlPrefixForImgFields(fields),"\n ").concat(getScriptForRewriteValueForFileFields(fields),"\n }catch(e){\n console.error(e)\n }\n // \u539F\u59CB\u8BB0\u5F55\n var record = _.cloneDeep(data);\n try{\n _.each(gridAndObjectFieldsName, function(name){\n data[name] = data._display && data._display[name];\n })\n }catch(e){\n console.error(e)\n }\n payload.data = data;\n payload.data.__objectName = \"").concat(object.name,"\";\n payload.data.record = record;\n
|
|
186
|
+
var fieldNames=___namespace.map(fields,function(n){return n.name;});var nameField=object.fields[object.NAME_FIELD_KEY];var nameLabel=nameField&&nameField.name;if(nameField&&nameField.type=="lookup"){if(!nameField.reference_to&&(nameField.optionsFunction||nameField._optionsFunction||nameField.options)){if(!nameField.isTableField){nameLabel="record.".concat(nameField.name,"__label");}}else{nameLabel="record._display.".concat(nameField.name,".label");}}else if(nameField){nameLabel="record._display.".concat(nameField.name," || record.").concat(nameField.name);}return"\n if(payload.data.data.length === 0){\n var isEditor = !!".concat(options&&options.isEditor,";\n if(isEditor){\n var fieldNames = ").concat(JSON.stringify(fieldNames),";\n var emptyDoc = {};//\u8FD9\u91CC\u5982\u679C\u4E0D\u628A\u6BCF\u4E2A\u5B57\u6BB5\u503C\u8BBE\u7F6E\u4E3A\u7A7A\u7684\u8BDD\uFF0C\u8868\u5355\u4E0A\u4F1A\u663E\u793A\u4E0A\u4E00\u6B21\u8868\u5355\u4E0A\u7684\u5B57\u6BB5\u503C\n fieldNames.forEach(function(n){\n emptyDoc[n] = null;\n });\n // \u8BBE\u8BA1\u5668\u4E2D\u59CB\u7EC8\u663E\u793A\u8868\u5355\uFF0C\u6709\u8BB0\u5F55\u5219\u663E\u793A\u7B2C\u4E00\u6761\u8BB0\u5F55\uFF0C\u6CA1\u8BB0\u5F55\u65F6\u663E\u793A\u4E3A\u7A7A\u8868\u5355\n payload.data.data = [emptyDoc];\n }\n else{\n return {\n status: 2,\n msg: \"").concat(i18next__default["default"].t('frontend_no_records_found'),"\"\n }\n }\n }\n if(payload.data.data){\n var data = payload.data.data[0];\n var gridAndObjectFieldsName = ").concat(JSON.stringify(gridAndObjectFieldsName),";\n try{\n ").concat(scriptStr,"\n ").concat(getScriptForAddUrlPrefixForImgFields(fields),"\n ").concat(getScriptForRewriteValueForFileFields(fields),"\n }catch(e){\n console.error(e)\n }\n // \u539F\u59CB\u8BB0\u5F55\n var record = _.cloneDeep(data);\n try{\n _.each(gridAndObjectFieldsName, function(name){\n data[name] = data._display && data._display[name];\n })\n }catch(e){\n console.error(e)\n }\n payload.data = data;\n payload.data.__objectName = \"").concat(object.name,"\";\n payload.data.record = record;\n payload.data.NAME_FIELD_VALUE = ").concat(nameLabel," || record.name;\n payload.data._master = {\n record: record,\n objectName: \"").concat(object.name,"\",\n recordId: record._id\n }\n window.postMessage(Object.assign({type: \"record.loaded\"}, {record: record}), \"*\")\n }\n if(payload.errors){\n payload.status = 2;\n payload.msg = payload.errors[0].message;\n }else{\n payload.data.recordLoaded = true;\n }\n ").concat(options&&options.initApiAdaptor||'',"\n return payload;\n");}function getReadonlyFormInitApi(_x38,_x39,_x40,_x41){return _getReadonlyFormInitApi.apply(this,arguments);}/*
|
|
186
187
|
img/avatar字段值添加URL前缀使其在amis中正常显示图片。
|
|
187
188
|
*/function _getReadonlyFormInitApi(){_getReadonlyFormInitApi=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee63(object,recordId,fields,options){var findOneOptions;return _regeneratorRuntime().wrap(function _callee63$(_context63){while(1){switch(_context63.prev=_context63.next){case 0:if(!recordId&&options&&options.isEditor){// 设计器中只读表单返回第一条记录
|
|
188
189
|
findOneOptions={filters:[],queryOptions:"top: 1"};}_context63.t0=getApi$2()+'&objectName=${objectName}'+"&recordId=${recordId}";_context63.t1=API_CACHE;_context63.t2="\n ".concat(options&&options.initApiRequestAdaptor||'',"\n return api;\n ");_context63.t3=getReadonlyFormAdaptor(object,fields,options);_context63.next=7;return getFindOneQuery$1(object,recordId,fields,findOneOptions);case 7:_context63.t4=_context63.sent;_context63.t5={Authorization:"Bearer ${context.tenantId},${context.authToken}"};return _context63.abrupt("return",{method:"post",url:_context63.t0,cache:_context63.t1,requestAdaptor:_context63.t2,adaptor:_context63.t3,data:_context63.t4,headers:_context63.t5});case 10:case"end":return _context63.stop();}}},_callee63);}));return _getReadonlyFormInitApi.apply(this,arguments);}function getScriptForAddUrlPrefixForImgFields(fields){var imgFieldsKeys=[];var imgFields={};fields.forEach(function(item){if(___namespace.includes(['image','avatar'],item.type)){imgFieldsKeys.push(item.name);imgFields[item.name]={name:item.name,type:item.type,multiple:item.multiple};}});if(!imgFieldsKeys.length){return'';}return"\n // image\u5B57\u6BB5\u503C\u6DFB\u52A0URL\u524D\u7F00\n let imgFieldsKeys = ".concat(JSON.stringify(imgFieldsKeys),";\n let imgFields = ").concat(JSON.stringify(imgFields),";\n imgFieldsKeys.forEach((item)=>{\n let imgFieldValue = data[item];\n let imgFieldDisplayValue = data._display && data._display[item];\n if(imgFieldValue && imgFieldValue.length){\n let fieldProps = imgFields[item];\n if(fieldProps.multiple){\n if(imgFieldDisplayValue instanceof Array){\n data[item] = imgFieldDisplayValue.map((i)=>{ \n const url = window.getImageFieldUrl(i.url);\n return url;\n });\n }\n }else{\n const url = imgFieldDisplayValue && window.getImageFieldUrl(imgFieldDisplayValue.url);\n data[item] = url;\n }\n }\n })\n ");}/*
|
|
@@ -263,7 +264,7 @@ function _getCardSchema(){_getCardSchema=_asyncToGenerator(/*#__PURE__*/_regener
|
|
|
263
264
|
* @LastEditors: baozhoutao@steedos.com
|
|
264
265
|
* @LastEditTime: 2024-02-18 18:37:35
|
|
265
266
|
* @Description:
|
|
266
|
-
*/var getSchema$5=/*#__PURE__*/function(){var _ref5=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(uiSchema,ctx){var schemaApiAdaptor,onDialogCancelScript,getSelectedRowsScript;return _regeneratorRuntime().wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:schemaApiAdaptor="\n let formSchema = {\n \"type\": \"steedos-object-form\",\n \"label\": \"\u5BF9\u8C61\u8868\u5355\",\n \"objectApiName\": \"${objectName}\",\n \"recordId\": \"\",\n \"mode\": \"edit\",\n };\n\n if (payload && payload.schema) {\n formSchema = _.isString(payload.schema) ? JSON.parse(payload.schema) : payload.schema;\n }\n\n const fields = ".concat(JSON.stringify(uiSchema.fields),";\n const selectedRowResponseResult = api.body.selectedRowResponseResult;\n let defaultData = {}; \n\n if(!_.isEmpty(selectedRowResponseResult)){\n const fieldsKeys = _.keys(fields);\n // \u5982\u679C\u65B0\u5EFA\u8BB0\u5F55\u65F6\u590D\u5236\u7684\u6570\u636E\u4E2D\u6709omit\u6216\u5176\u4ED6\u4E0D\u76F8\u5173\u5B57\u6BB5\u6570\u636E\u65F6\u4E0D\u5E94\u8BE5\u4E00\u8D77\u4FDD\u5B58\u5230\u6570\u636E\u5E93\uFF0C\n // \u539F\u89C4\u5219\u89C1\uFF1Ahttps://github.com/steedos/steedos-frontend/issues/297\n _.forEach(selectedRowResponseResult, (val, key) => {\n if (fieldsKeys.indexOf(key) > -1 && fields[key].omit !== true) {\n defaultData[key] = val;\n }\n })\n }\n\n const _master = api.body._master;\n if(_master && _master._isRelated){\n const relatedKey = _master.relatedKey;\n const masterObjectName = _master.objectName;\n const recordId = _master.recordId;\n let relatedKeySaveValue = recordId;\n const relatedField = fields[relatedKey];\n if(relatedField && relatedField.reference_to_field && relatedField.reference_to_field !== '_id'){\n relatedKeySaveValue = _master.record[relatedField.reference_to_field];\n }\n let relatedKeyValue; \n if(relatedField && !_.isString(relatedField.reference_to)){\n relatedKeyValue = { o: masterObjectName, ids: [relatedKeySaveValue] };\n }else if (relatedField && relatedField.multiple) {\n relatedKeyValue = [relatedKeySaveValue];\n } else {\n relatedKeyValue = relatedKeySaveValue;\n }\n defaultData[relatedKey]=relatedKeyValue;\n }\n\n if(!_.isEmpty(defaultData)){\n if(payload.schema){\n // \u8868\u5355\u5FAE\u9875\u9762\u7B2C\u4E00\u5C42\u8981\u6C42\u662Fpage\n formSchema.data.defaultData = defaultData;\n }else{\n formSchema.defaultData = defaultData;\n }\n }\n\n return {\n data: formSchema\n };\n ");onDialogCancelScript="\n // \u8FD9\u91CC\u52A0setTimeout\u662F\u56E0\u4E3Aamis\u7684Bug\uFF0C\u5B83\u4F1A\u5148\u89E6\u53D1cancel\u4E8B\u4EF6\u6267\u884C\u6B64\u811A\u672C\u5173\u95ED\u7236\u7A97\u53E3\u7136\u540E\u518D\u5173\u95ED\u5B50\u7A97\u53E3\n // \u6B63\u786E\u7684\u987A\u5E8F\u5E94\u8BE5\u662F\u5148\u5173\u95ED\u5B50\u7A97\u53E3\u518D\u5173\u95ED\u7236\u7A97\u53E3\uFF0C\u987A\u5E8F\u9519\u4E86\u4F1A\u9020\u6210\u7B2C\u4E8C\u6B21\u70B9\u51FB\u65B0\u5EFA\u6309\u94AE\u7684\u65F6\u5019\u5F02\u5E38\n setTimeout(function(){\n doAction({\n \"actionType\": \"cancel\",\n \"componentId\": \"object_actions_drawer_".concat(uiSchema.name,"\"\n });\n }, 200);\n ");getSelectedRowsScript="\n const isLookup = event.data.isLookup;\n if(isLookup){\n // lookup\u5F39\u51FA\u7A97\u53E3\u7684\u65B0\u5EFA\u529F\u80FD\u4E0D\u9700\u8981\u652F\u6301\u590D\u5236\u65B0\u5EFA\n return;\n }\n const uiSchema = event.data.uiSchema;\n const objectName = event.data.objectName;\n const listViewRef = event.context.scoped.getComponentById(\"listview_\" + objectName);\n const selectedItems = listViewRef && listViewRef.props.store.toJSON().selectedItems || [];\n event.data.selectedIds = _.map(selectedItems, uiSchema.idFieldName || '_id');\n ";return _context.abrupt("return",{"type":"service","body":[{"type":"button","label":i18next__default["default"].t('frontend_form_new'),"id":"u:standard_new","level":"default","onEvent":{"click":{"weight":0,"actions":[{"actionType":"custom","script":getSelectedRowsScript},{"actionType":"ajax","outputVar":"selectedRowResponseResult","args":{"api":{"url":"${context.rootUrl}/api/v1/${uiSchema.name}/${selectedIds|first}","method":"get"}},"expression":"${selectedIds.length > 0}"},{"actionType":"dialog","dialog":{"type":"dialog","data":{"$master":"$$","_master":"${_master}","_master._isRelated":"${_isRelated}","_master.relatedKey":"${relatedKey}","appId":"${appId}","objectName":"${objectName}","context":"${context}","global":"${global}","listViewId":"${listViewId}","displayAs":"${displayAs}","uiSchema":"${uiSchema}","isLookup":"${isLookup}","listName":"${listName}","selectedRowResponseResult":"${selectedRowResponseResult}"},"title":i18next__default["default"].t('frontend_form_new')+" ${uiSchema.label | raw}","body":[{"type":"service","id":"u:1678e148c4d2","messages":{},"schemaApi":{"data":{"isLookup":"${isLookup}","_master":"${_master}","url":"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}","selectedRowResponseResult":"${selectedRowResponseResult}"},"url":"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}","method":"get","messages":{},"headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"requestAdaptor":"return { ...api, url: api.body.url }","adaptor":schemaApiAdaptor}}],"showCloseButton":true,"id":"u:e11347411d2d","closeOnEsc":false,"closeOnOutside":false,"size":"lg","onEvent":{"cancel":{"actions":[{"actionType":"custom","script":onDialogCancelScript,"expression":"${window:innerWidth < 768}"}]}},"actions":[{type:'button',actionType:'cancel',label:i18next__default["default"].t('frontend_form_cancel')},{type:'button',label:i18next__default["default"].t('frontend_form_save_and_new'),actionType:'confirm',close:false,id:"confirmAndNew"},{type:'button',actionType:'confirm',label:i18next__default["default"].t('frontend_form_save'),primary:true}]}}]}}}],"regions":["body"],"className":"p-0 border-0","id":"u:aef99d937b10"});case 4:case"end":return _context.stop();}}},_callee);}));return function getSchema$5(_x58,_x59){return _ref5.apply(this,arguments);};}();/*
|
|
267
|
+
*/var getSchema$5=/*#__PURE__*/function(){var _ref5=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(uiSchema,ctx){var schemaApiAdaptor,onDialogCancelScript,getSelectedRowsScript;return _regeneratorRuntime().wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:schemaApiAdaptor="\n let formSchema = {\n \"type\": \"steedos-object-form\",\n \"label\": \"\u5BF9\u8C61\u8868\u5355\",\n \"objectApiName\": \"${objectName}\",\n \"recordId\": \"\",\n \"mode\": \"edit\",\n };\n\n if (payload && payload.schema) {\n formSchema = _.isString(payload.schema) ? JSON.parse(payload.schema) : payload.schema;\n }\n\n const fields = ".concat(JSON.stringify(uiSchema.fields),";\n const selectedRowResponseResult = api.body.selectedRowResponseResult;\n let defaultData = {}; \n\n if(!_.isEmpty(selectedRowResponseResult)){\n const fieldsKeys = _.keys(fields);\n // \u5982\u679C\u65B0\u5EFA\u8BB0\u5F55\u65F6\u590D\u5236\u7684\u6570\u636E\u4E2D\u6709omit\u6216\u5176\u4ED6\u4E0D\u76F8\u5173\u5B57\u6BB5\u6570\u636E\u65F6\u4E0D\u5E94\u8BE5\u4E00\u8D77\u4FDD\u5B58\u5230\u6570\u636E\u5E93\uFF0C\n // \u539F\u89C4\u5219\u89C1\uFF1Ahttps://github.com/steedos/steedos-frontend/issues/297\n _.forEach(selectedRowResponseResult, (val, key) => {\n if (fieldsKeys.indexOf(key) > -1 && fields[key].omit !== true) {\n defaultData[key] = val;\n }\n })\n }\n\n const _master = api.body._master;\n if(_master && _master._isRelated){\n const relatedKey = _master.relatedKey;\n const masterObjectName = _master.objectName;\n const recordId = _master.recordId;\n let relatedKeySaveValue = recordId;\n const relatedField = fields[relatedKey];\n if(relatedField && relatedField.reference_to_field && relatedField.reference_to_field !== '_id'){\n relatedKeySaveValue = _master.record[relatedField.reference_to_field];\n }\n let relatedKeyValue; \n if(relatedField && !_.isString(relatedField.reference_to)){\n relatedKeyValue = { o: masterObjectName, ids: [relatedKeySaveValue] };\n }else if (relatedField && relatedField.multiple) {\n relatedKeyValue = [relatedKeySaveValue];\n } else {\n relatedKeyValue = relatedKeySaveValue;\n }\n defaultData[relatedKey]=relatedKeyValue;\n }\n\n if(!_.isEmpty(defaultData)){\n if(payload.schema){\n // \u8868\u5355\u5FAE\u9875\u9762\u7B2C\u4E00\u5C42\u8981\u6C42\u662Fpage\n formSchema.data.defaultData = defaultData;\n }else{\n formSchema.defaultData = defaultData;\n }\n }\n\n return {\n data: formSchema\n };\n ");onDialogCancelScript="\n // \u8FD9\u91CC\u52A0setTimeout\u662F\u56E0\u4E3Aamis\u7684Bug\uFF0C\u5B83\u4F1A\u5148\u89E6\u53D1cancel\u4E8B\u4EF6\u6267\u884C\u6B64\u811A\u672C\u5173\u95ED\u7236\u7A97\u53E3\u7136\u540E\u518D\u5173\u95ED\u5B50\u7A97\u53E3\n // \u6B63\u786E\u7684\u987A\u5E8F\u5E94\u8BE5\u662F\u5148\u5173\u95ED\u5B50\u7A97\u53E3\u518D\u5173\u95ED\u7236\u7A97\u53E3\uFF0C\u987A\u5E8F\u9519\u4E86\u4F1A\u9020\u6210\u7B2C\u4E8C\u6B21\u70B9\u51FB\u65B0\u5EFA\u6309\u94AE\u7684\u65F6\u5019\u5F02\u5E38\n setTimeout(function(){\n doAction({\n \"actionType\": \"cancel\",\n \"componentId\": \"object_actions_drawer_".concat(uiSchema.name,"\"\n });\n }, 200);\n ");getSelectedRowsScript="\n const isLookup = event.data.isLookup;\n if(isLookup){\n // lookup\u5F39\u51FA\u7A97\u53E3\u7684\u65B0\u5EFA\u529F\u80FD\u4E0D\u9700\u8981\u652F\u6301\u590D\u5236\u65B0\u5EFA\n return;\n }\n const uiSchema = event.data.uiSchema;\n const objectName = event.data.objectName;\n const listViewRef = event.context.scoped.getComponentById(\"listview_\" + objectName);\n const selectedItems = listViewRef && listViewRef.props.store.toJSON().selectedItems || [];\n event.data.selectedIds = _.map(selectedItems, uiSchema.idFieldName || '_id');\n ";return _context.abrupt("return",{"type":"service","body":[{"type":"button","label":i18next__default["default"].t('frontend_form_new'),"id":"u:standard_new","level":"default","onEvent":{"click":{"weight":0,"actions":[{"actionType":"custom","script":getSelectedRowsScript},{"actionType":"ajax","outputVar":"selectedRowResponseResult","args":{"api":{"url":"${context.rootUrl}/api/v1/${uiSchema.name}/${selectedIds|first}","method":"get"}},"expression":"${selectedIds.length > 0}"},{"actionType":"dialog","dialog":{"type":"dialog","data":{"$master":"$$","_master":"${_master}","_master._isRelated":"${_isRelated}","_master.relatedKey":"${relatedKey}","appId":"${appId}","objectName":"${objectName}","context":"${context}","global":"${global}","listViewId":"${listViewId}","displayAs":"${displayAs}","uiSchema":"${uiSchema}","isLookup":"${isLookup}","listName":"${listName}","selectedRowResponseResult":"${selectedRowResponseResult}"},"title":i18next__default["default"].t('frontend_form_new')+" ${uiSchema.label | raw}","body":[{"type":"service","id":"u:1678e148c4d2","messages":{},"schemaApi":{"data":{"isLookup":"${isLookup}","_master":"${_master}","url":"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}","selectedRowResponseResult":"${selectedRowResponseResult}"},"url":"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}","method":"get","messages":{},"headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"requestAdaptor":"return { ...api, url: api.body.url }","adaptor":schemaApiAdaptor}}],"showCloseButton":true,"id":"u:e11347411d2d","closeOnEsc":false,"closeOnOutside":false,"size":"lg","onEvent":{"cancel":{"actions":[{"actionType":"custom","script":onDialogCancelScript,"expression":"${window:innerWidth < 768}"}]}},"actions":[{type:'button',actionType:'cancel',label:i18next__default["default"].t('frontend_form_cancel')},{type:'button',label:i18next__default["default"].t('frontend_form_save_and_new'),actionType:'confirm',close:false,id:"confirmAndNew"},{type:'button',actionType:'confirm',label:i18next__default["default"].t('frontend_form_save'),primary:true,close:"object_actions_drawer_".concat(uiSchema.name)}]}}]}}}],"regions":["body"],"className":"p-0 border-0","id":"u:aef99d937b10"});case 4:case"end":return _context.stop();}}},_callee);}));return function getSchema$5(_x58,_x59){return _ref5.apply(this,arguments);};}();/*
|
|
267
268
|
* @Author: baozhoutao@steedos.com
|
|
268
269
|
* @Date: 2022-07-13 15:18:03
|
|
269
270
|
* @LastEditors: baozhoutao@steedos.com
|
|
@@ -275,12 +276,12 @@ function _getCardSchema(){_getCardSchema=_asyncToGenerator(/*#__PURE__*/_regener
|
|
|
275
276
|
* @LastEditors: 殷亮辉 yinlianghui@hotoa.com
|
|
276
277
|
* @LastEditTime: 2023-06-28 23:22:31
|
|
277
278
|
* @Description:
|
|
278
|
-
*/function _getPage(){_getPage=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee70(_ref6){var type,_ref6$pageId,pageId,appId,_ref6$objectName,objectName,_ref6$recordId,recordId,_ref6$formFactor,formFactor,api,page;return _regeneratorRuntime().wrap(function _callee70$(_context70){while(1){switch(_context70.prev=_context70.next){case 0:type=_ref6.type,_ref6$pageId=_ref6.pageId,pageId=_ref6$pageId===void 0?'':_ref6$pageId,appId=_ref6.appId,_ref6$objectName=_ref6.objectName,objectName=_ref6$objectName===void 0?'':_ref6$objectName,_ref6$recordId=_ref6.recordId,recordId=_ref6$recordId===void 0?'':_ref6$recordId,_ref6$formFactor=_ref6.formFactor,formFactor=_ref6$formFactor===void 0?'LARGE':_ref6$formFactor;api="/api/pageSchema/".concat(type,"?app=").concat(appId,"&objectApiName=").concat(objectName,"&recordId=").concat(recordId,"&pageId=").concat(pageId,"&formFactor=").concat(formFactor);_context70.next=4;return fetchAPI(api);case 4:page=_context70.sent;if(!(page&&page.schema)){_context70.next=9;break;}page.schema=JSON.parse(page.schema);if(page.schema.data){delete page.schema.data.recordId;delete page.schema.data.objectName;delete page.schema.data.context;delete page.schema.data.global;}return _context70.abrupt("return",page);case 9:case"end":return _context70.stop();}}},_callee70);}));return _getPage.apply(this,arguments);}var getSchema$4=/*#__PURE__*/function(){var _ref7=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(uiSchema,ctx){var title,defaultFormSchema,formSchema,page,onDialogCancelScript;return _regeneratorRuntime().wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:title=i18next__default["default"].t('frontend_form_edit')+" "+uiSchema.label;defaultFormSchema={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};formSchema=defaultFormSchema;_context2.next=5;return getPage({type:"form",appId:ctx.appId,objectName:ctx.objectName,formFactor:ctx.formFactor});case 5:page=_context2.sent;if(page){formSchema=_.isString(page.schema)?JSON.parse(page.schema):page.schema;}onDialogCancelScript="\n // \u8FD9\u91CC\u52A0setTimeout\u662F\u56E0\u4E3Aamis\u7684Bug\uFF0C\u5B83\u4F1A\u5148\u89E6\u53D1cancel\u4E8B\u4EF6\u6267\u884C\u6B64\u811A\u672C\u5173\u95ED\u7236\u7A97\u53E3\u7136\u540E\u518D\u5173\u95ED\u5B50\u7A97\u53E3\n // \u6B63\u786E\u7684\u987A\u5E8F\u5E94\u8BE5\u662F\u5148\u5173\u95ED\u5B50\u7A97\u53E3\u518D\u5173\u95ED\u7236\u7A97\u53E3\uFF0C\u987A\u5E8F\u9519\u4E86\u4F1A\u9020\u6210\u7B2C\u4E8C\u6B21\u70B9\u51FB\u7F16\u8F91\u6309\u94AE\u7684\u65F6\u5019\u5F02\u5E38\n setTimeout(function(){\n doAction({\n \"actionType\": \"cancel\",\n \"componentId\": \"object_actions_drawer_".concat(uiSchema.name,"\"\n });\n }, 200);\n ");return _context2.abrupt("return",{type:"service",body:[{type:"button",label:i18next__default["default"].t('frontend_form_edit'),id:"u:standard_edit",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:title,bodyClassName:"",body:[formSchema],id:"u:ee95697baa4f",closeOnEsc:false,closeOnOutside:false,showCloseButton:true,size:"lg","onEvent":{"cancel":{"actions":[{"actionType":"custom","script":onDialogCancelScript,"expression":"${window:innerWidth < 768}"}]}}}}],weight:0}}}],regions:["body"],className:"",id:"u:3c5cbc0429bb"});case 9:case"end":return _context2.stop();}}},_callee2);}));return function getSchema$4(_x61,_x62){return _ref7.apply(this,arguments);};}();/*
|
|
279
|
+
*/function _getPage(){_getPage=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee70(_ref6){var type,_ref6$pageId,pageId,appId,_ref6$objectName,objectName,_ref6$recordId,recordId,_ref6$formFactor,formFactor,api,page;return _regeneratorRuntime().wrap(function _callee70$(_context70){while(1){switch(_context70.prev=_context70.next){case 0:type=_ref6.type,_ref6$pageId=_ref6.pageId,pageId=_ref6$pageId===void 0?'':_ref6$pageId,appId=_ref6.appId,_ref6$objectName=_ref6.objectName,objectName=_ref6$objectName===void 0?'':_ref6$objectName,_ref6$recordId=_ref6.recordId,recordId=_ref6$recordId===void 0?'':_ref6$recordId,_ref6$formFactor=_ref6.formFactor,formFactor=_ref6$formFactor===void 0?'LARGE':_ref6$formFactor;api="/api/pageSchema/".concat(type,"?app=").concat(appId,"&objectApiName=").concat(objectName,"&recordId=").concat(recordId,"&pageId=").concat(pageId,"&formFactor=").concat(formFactor);_context70.next=4;return fetchAPI(api);case 4:page=_context70.sent;if(!(page&&page.schema)){_context70.next=9;break;}page.schema=JSON.parse(page.schema);if(page.schema.data){delete page.schema.data.recordId;delete page.schema.data.objectName;delete page.schema.data.context;delete page.schema.data.global;}return _context70.abrupt("return",page);case 9:case"end":return _context70.stop();}}},_callee70);}));return _getPage.apply(this,arguments);}var getSchema$4=/*#__PURE__*/function(){var _ref7=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(uiSchema,ctx){var title,defaultFormSchema,formSchema,page,onDialogCancelScript;return _regeneratorRuntime().wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:title=i18next__default["default"].t('frontend_form_edit')+" "+uiSchema.label;defaultFormSchema={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};formSchema=defaultFormSchema;_context2.next=5;return getPage({type:"form",appId:ctx.appId,objectName:ctx.objectName,formFactor:ctx.formFactor});case 5:page=_context2.sent;if(page){formSchema=_.isString(page.schema)?JSON.parse(page.schema):page.schema;}onDialogCancelScript="\n // \u8FD9\u91CC\u52A0setTimeout\u662F\u56E0\u4E3Aamis\u7684Bug\uFF0C\u5B83\u4F1A\u5148\u89E6\u53D1cancel\u4E8B\u4EF6\u6267\u884C\u6B64\u811A\u672C\u5173\u95ED\u7236\u7A97\u53E3\u7136\u540E\u518D\u5173\u95ED\u5B50\u7A97\u53E3\n // \u6B63\u786E\u7684\u987A\u5E8F\u5E94\u8BE5\u662F\u5148\u5173\u95ED\u5B50\u7A97\u53E3\u518D\u5173\u95ED\u7236\u7A97\u53E3\uFF0C\u987A\u5E8F\u9519\u4E86\u4F1A\u9020\u6210\u7B2C\u4E8C\u6B21\u70B9\u51FB\u7F16\u8F91\u6309\u94AE\u7684\u65F6\u5019\u5F02\u5E38\n setTimeout(function(){\n doAction({\n \"actionType\": \"cancel\",\n \"componentId\": \"object_actions_drawer_".concat(uiSchema.name,"\"\n });\n }, 200);\n ");return _context2.abrupt("return",{type:"service",body:[{type:"button",label:i18next__default["default"].t('frontend_form_edit'),id:"u:standard_edit",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:title,bodyClassName:"",body:[formSchema],id:"u:ee95697baa4f",closeOnEsc:false,closeOnOutside:false,showCloseButton:true,size:"lg","onEvent":{"cancel":{"actions":[{"actionType":"custom","script":onDialogCancelScript,"expression":"${window:innerWidth < 768}"}]}},"actions":[{type:'button',actionType:'cancel',label:i18next__default["default"].t('frontend_form_cancel')},{type:'button',actionType:'confirm',label:i18next__default["default"].t('frontend_form_save'),primary:true,close:"object_actions_drawer_".concat(uiSchema.name)}]}}],weight:0}}}],regions:["body"],className:"",id:"u:3c5cbc0429bb"});case 9:case"end":return _context2.stop();}}},_callee2);}));return function getSchema$4(_x61,_x62){return _ref7.apply(this,arguments);};}();/*
|
|
279
280
|
* @Author: 殷亮辉 yinlianghui@hotoa.com
|
|
280
281
|
* @Date: 2023-03-22 09:31:21
|
|
281
282
|
* @LastEditors: baozhoutao@steedos.com
|
|
282
283
|
* @LastEditTime: 2024-02-18 16:06:21
|
|
283
|
-
*/var getSchema$3=function getSchema$3(uiSchema){return{"type":"service","className":"p-0","body":[{"type":"button","label":i18next__default["default"].t('frontend_form_delete'),"confirmText":i18next__default["default"].t('frontend_delete_many_confirm_text'),"onEvent":{"click":{"actions":[{"args":{"api":{"method":"post","url":"${context.rootUrl}/graphql","data":{"&":"$$","recordId":"${recordId}","objectName":"${objectName}"},"requestAdaptor":"const {recordId, objectName} = api.body; var deleteArray = []; deleteArray.push(`delete:${objectName}__delete(id: \"${recordId}\")`); api.data = {query: `mutation{${deleteArray.join(',')}}`}; return api;","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"adaptor":"\n if(payload.errors){\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n return payload;\n "}},"actionType":"ajax"},{"actionType":"broadcast","args":{"eventName":"@data.changed.".concat(uiSchema.name)},"data":{"objectName":"".concat(uiSchema.name),"__deletedRecord":true,"_inDrawer":"${_inDrawer}"}},{"actionType":"broadcast","args":{"eventName":"@data.changed.${_master.objectName}"},"data":{"objectName":"${_master.objectName}","_isRelated":"${_isRelated}"},"expression":"${_master.objectName != '".concat(uiSchema.name,"' && _master.objectName}")}]}}}],"regions":["body"]};};var getSchema$2=function getSchema$2(uiSchema){return{type:"service",body:[{type:"button",label:i18next__default["default"].t('frontend_import_data'),id:"u:import_data",onEvent:{click:{actions:[{actionType:"dialog",dialog:{data:{"&":"$$","object_name":"${objectName}"},type:"dialog",title:i18next__default["default"].t('frontend_import_data'),body:[{"type":"steedos-object-form","label":"对象表单","objectApiName":"queue_import_history","recordId":"","mode":"edit","layout":"normal","defaultData":{"object_name":"${objectName}"},"fieldsExtend":{"object_name":{"amis":{"hidden":true}}},"form":{debug:false,resetAfterSubmit:false,data:{editFormInited:true},initApi:{method:'GET',url:'/api/v1/queue_import_history/${recordId}?fields=["state"]',sendOn:'this.recordId',data:null,requestAdaptor:"return api;",adaptor:"return payload;",responseData:{importState:"${state}"}},interval:3000,stopAutoRefreshWhen:"this.importState === 'finished'",initFetch:false,onEvent:{inited:{weight:0,actions:[{"actionType":"broadcast","args":{"eventName":"@data.changed.".concat(uiSchema.name)},"data":{"objectName":"".concat(uiSchema.name),"displayAs":"${displayAs}","recordId":"xxxx"//不可以省略,否则会进入进入记录详细页面
|
|
284
|
+
*/var getSchema$3=function getSchema$3(uiSchema){return{"type":"service","className":"p-0","body":[{"type":"button","label":i18next__default["default"].t('frontend_form_delete'),"confirmText":i18next__default["default"].t('frontend_delete_many_confirm_text'),"onEvent":{"click":{"actions":[{"args":{"api":{"method":"post","url":"${context.rootUrl}/graphql","data":{"&":"$$","recordId":"${recordId}","objectName":"${objectName}"},"requestAdaptor":"const {recordId, objectName} = api.body; var deleteArray = []; deleteArray.push(`delete:${objectName}__delete(id: \"${recordId}\")`); api.data = {query: `mutation{${deleteArray.join(',')}}`}; return api;","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"adaptor":"\n if(payload.errors){\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n return payload;\n "}},"actionType":"ajax"},{"actionType":"broadcast","args":{"eventName":"@data.changed.".concat(uiSchema.name)},"data":{"objectName":"".concat(uiSchema.name),"__deletedRecord":true,"_inDrawer":"${_inDrawer}"}},{"actionType":"broadcast","args":{"eventName":"@data.changed.${_master.objectName}"},"data":{"objectName":"${_master.objectName}","_isRelated":"${_isRelated}"},"expression":"${_master.objectName != '".concat(uiSchema.name,"' && _master.objectName}")}]}},"close":"object_actions_drawer_".concat(uiSchema.name)}],"regions":["body"]};};var getSchema$2=function getSchema$2(uiSchema){return{type:"service",body:[{type:"button",label:i18next__default["default"].t('frontend_import_data'),id:"u:import_data",onEvent:{click:{actions:[{actionType:"dialog",dialog:{data:{"&":"$$","object_name":"${objectName}"},type:"dialog",title:i18next__default["default"].t('frontend_import_data'),body:[{"type":"steedos-object-form","label":"对象表单","objectApiName":"queue_import_history","recordId":"","mode":"edit","layout":"normal","defaultData":{"object_name":"${objectName}"},"fieldsExtend":{"object_name":{"amis":{"hidden":true}}},"form":{debug:false,resetAfterSubmit:false,data:{editFormInited:true},initApi:{method:'GET',url:'/api/v1/queue_import_history/${recordId}?fields=["state"]',sendOn:'this.recordId',data:null,requestAdaptor:"return api;",adaptor:"return payload;",responseData:{importState:"${state}"}},interval:3000,stopAutoRefreshWhen:"this.importState === 'finished'",initFetch:false,onEvent:{inited:{weight:0,actions:[{"actionType":"broadcast","args":{"eventName":"@data.changed.".concat(uiSchema.name)},"data":{"objectName":"".concat(uiSchema.name),"displayAs":"${displayAs}","recordId":"xxxx"//不可以省略,否则会进入进入记录详细页面
|
|
284
285
|
},"expression":"this.importState === 'finished'"},{"actionType":"closeDialog","expression":"this.importState === 'finished'"}]},submitSucc:{weight:0,actions:[{args:{api:{url:"${context.rootUrl}/api/data/initiateImport",method:"post",data:{eventData:"${event.data}"},dataType:"json",requestAdaptor:"\napi.data = {\n importObjectHistoryId: api.body.eventData.result.data.recordId\n}\nreturn api;",adaptor:"payload.status = payload.status === 'success' ? 0 : payload.status;\nconsole.log(\"payload ssss==>\", payload)\nreturn payload;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}},messages:{success:i18next__default["default"].t('frontend_import_data_message_success'),failed:i18next__default["default"].t('frontend_import_data_message_failed')}},actionType:"ajax",expression:"event.data.result"}]}},closeDialogOnSubmit:false}}],id:"u:dc05498d3bd4",closeOnEsc:false,closeOnOutside:false,showCloseButton:true,size:"lg"}}],weight:0}},level:"default"}],regions:["body"],className:"p-0",id:"u:bd2f9c4e986f"};};/*
|
|
285
286
|
* @Author: baozhoutao@steedos.com
|
|
286
287
|
* @Date: 2022-11-07 17:00:38
|
|
@@ -547,33 +548,36 @@ if(options.displayAs==='split'){return[{"type":"switch-per-page","visibleOn":"${
|
|
|
547
548
|
// }
|
|
548
549
|
// }
|
|
549
550
|
// }
|
|
550
|
-
];}function getCrudSchemaWithDataFilter(_x106){return _getCrudSchemaWithDataFilter.apply(this,arguments);}function _getCrudSchemaWithDataFilter(){_getCrudSchemaWithDataFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee80(crud){var options,crudDataFilter,amisData,env,onCrudDataFilter,_args80=arguments;return _regeneratorRuntime().wrap(function _callee80$(_context80){while(1){switch(_context80.prev=_context80.next){case 0:options=_args80.length>1&&_args80[1]!==undefined?_args80[1]:{};crudDataFilter=options.crudDataFilter,amisData=options.amisData,env=options.env;onCrudDataFilter=options.onCrudDataFilter;if(!onCrudDataFilter&&typeof crudDataFilter==='string'){onCrudDataFilter=new Function('crud','env','data',crudDataFilter);}_context80.prev=4;_context80.t0=onCrudDataFilter;if(!_context80.t0){_context80.next=13;break;}_context80.next=9;return onCrudDataFilter(crud,env,amisData);case 9:_context80.t1=_context80.sent;if(_context80.t1){_context80.next=12;break;}_context80.t1=crud;case 12:crud=_context80.t1;case 13:_context80.next=18;break;case 15:_context80.prev=15;_context80.t2=_context80["catch"](4);console.warn(_context80.t2);case 18:return _context80.abrupt("return",crud);case 19:case"end":return _context80.stop();}}},_callee80,null,[[4,15]]);}));return _getCrudSchemaWithDataFilter.apply(this,arguments);}function getObjectCRUD(_x107,_x108,_x109){return _getObjectCRUD.apply(this,arguments);}function _getObjectCRUD(){_getObjectCRUD=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee81(objectSchema,fields,options){var top,perPage,_options$showDisplayA,showDisplayAs,displayAs,_options$crudClassNam,crudClassName,crudDataFilter,onCrudDataFilter,amisData,env,nonpaged,isTreeObject,bulkActions,defaults,listSchema,bodyProps,body,id,card,labelFieldName,tableOptions,table,imageNames,quickSaveApiRequestAdaptor,
|
|
551
|
+
];}function getCrudSchemaWithDataFilter(_x106){return _getCrudSchemaWithDataFilter.apply(this,arguments);}function _getCrudSchemaWithDataFilter(){_getCrudSchemaWithDataFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee80(crud){var options,crudDataFilter,amisData,env,onCrudDataFilter,_args80=arguments;return _regeneratorRuntime().wrap(function _callee80$(_context80){while(1){switch(_context80.prev=_context80.next){case 0:options=_args80.length>1&&_args80[1]!==undefined?_args80[1]:{};crudDataFilter=options.crudDataFilter,amisData=options.amisData,env=options.env;onCrudDataFilter=options.onCrudDataFilter;if(!onCrudDataFilter&&typeof crudDataFilter==='string'){onCrudDataFilter=new Function('crud','env','data',crudDataFilter);}_context80.prev=4;_context80.t0=onCrudDataFilter;if(!_context80.t0){_context80.next=13;break;}_context80.next=9;return onCrudDataFilter(crud,env,amisData);case 9:_context80.t1=_context80.sent;if(_context80.t1){_context80.next=12;break;}_context80.t1=crud;case 12:crud=_context80.t1;case 13:_context80.next=18;break;case 15:_context80.prev=15;_context80.t2=_context80["catch"](4);console.warn(_context80.t2);case 18:return _context80.abrupt("return",crud);case 19:case"end":return _context80.stop();}}},_callee80,null,[[4,15]]);}));return _getCrudSchemaWithDataFilter.apply(this,arguments);}function getObjectCRUD(_x107,_x108,_x109){return _getObjectCRUD.apply(this,arguments);}function _getObjectCRUD(){_getObjectCRUD=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee81(objectSchema,fields,options){var top,perPage,_options$showDisplayA,showDisplayAs,displayAs,_options$crudClassNam,crudClassName,crudDataFilter,onCrudDataFilter,amisData,env,nonpaged,isTreeObject,bulkActions,defaults,listSchema,bodyProps,body,id,card,labelFieldName,tableOptions,table,imageNames,quickSaveApiRequestAdaptor,crudModeClassName,headerSchema,footerSchema,wrappedBody;return _regeneratorRuntime().wrap(function _callee81$(_context81){while(1){switch(_context81.prev=_context81.next){case 0:// console.time('getObjectCRUD');
|
|
551
552
|
top=options.top,perPage=options.perPage,_options$showDisplayA=options.showDisplayAs,showDisplayAs=_options$showDisplayA===void 0?false:_options$showDisplayA,displayAs=options.displayAs,_options$crudClassNam=options.crudClassName,crudClassName=_options$crudClassNam===void 0?"":_options$crudClassNam,crudDataFilter=options.crudDataFilter,onCrudDataFilter=options.onCrudDataFilter,amisData=options.amisData,env=options.env;nonpaged=objectSchema.paging&&objectSchema.paging.enabled===false;isTreeObject=objectSchema.enable_tree;bulkActions=getBulkActions(objectSchema);defaults=options.defaults;listSchema=defaults&&defaults.listSchema||{};_context81.t0=getObjectFooterToolbar(objectSchema,options.formFactor,_objectSpread(_objectSpread({},options),{},{disableStatistics:options.queryCount===false}));_context81.t1=options.filterVisible!==false;if(!_context81.t1){_context81.next=12;break;}_context81.next=11;return getObjectFilter(objectSchema,fields,options);case 11:_context81.t1=_context81.sent;case 12:_context81.t2=_context81.t1;bodyProps={headerToolbarClassName:"px-4 py-2 border-b",footerToolbar:_context81.t0,filter:_context81.t2};if(options.formFactor!=='SMALL'||["split"].indexOf(options.displayAs)==-1){if(listSchema.mode!=="cards"){// card模式时默认不显示勾选框
|
|
552
553
|
Object.assign(bodyProps,{bulkActions:options.bulkActions!=false?bulkActions:false});}}// yml里配置的 不分页和enable_tree:true 优先级最高,组件中输入的top次之。
|
|
553
554
|
options.queryCount=true;if(nonpaged||isTreeObject){options.top=5000;bodyProps.footerToolbar=[];options.queryCount=true;// 禁止翻页的时候, 需要查找总数
|
|
554
555
|
}else if(top){bodyProps.footerToolbar=[];if(options.isRelated){options.queryCount=true;}else{options.queryCount=false;}}// console.log(`getObjectHeaderToolbar====2===>`, options.filterVisible)
|
|
555
556
|
bodyProps.headerToolbar=getObjectHeaderToolbar(objectSchema,fields,options.formFactor,{showDisplayAs:showDisplayAs,hiddenCount:options.queryCount===false,headerToolbarItems:options.headerToolbarItems,filterVisible:options.filterVisible});options.amisData=createObject(options.amisData,{objectName:objectSchema.name,// _id: null,
|
|
556
557
|
recordPermissions:objectSchema.permissions,uiSchema:objectSchema// loaded: false //crud接收适配器中设置为true,否则就是刷新浏览器第一次加载
|
|
557
|
-
});body=null;id="listview_".concat(objectSchema.name);if(!(options.formFactor==='SMALL'&&false)){_context81.next=42;break;}delete bodyProps.bulkActions;delete bodyProps.headerToolbar;delete bodyProps.footerToolbar;_context81.next=27;return getCardSchema(fields,Object.assign({idFieldName:objectSchema.idFieldName,labelFieldName:objectSchema.NAME_FIELD_KEY||'name'},options,{actions:false}));case 27:card=_context81.sent;_context81.t3=Object;_context81.t4={};_context81.t5=card;_context81.t6=id;_context81.t7=id;_context81.next=35;return getTableApi(objectSchema,fields,options);case 35:_context81.t8=_context81.sent;_context81.t9=options.tableHiddenOn;_context81.t10={type:'crud',primaryField:'_id',id:_context81.t6,name:_context81.t7,keepItemSelectionOnPageChange:false,api:_context81.t8,hiddenOn:_context81.t9};_context81.t11=bodyProps;body=_context81.t3.assign.call(_context81.t3,_context81.t4,_context81.t5,_context81.t10,_context81.t11);_context81.next=
|
|
558
|
+
});body=null;id="listview_".concat(objectSchema.name);if(!(options.formFactor==='SMALL'&&false)){_context81.next=42;break;}delete bodyProps.bulkActions;delete bodyProps.headerToolbar;delete bodyProps.footerToolbar;_context81.next=27;return getCardSchema(fields,Object.assign({idFieldName:objectSchema.idFieldName,labelFieldName:objectSchema.NAME_FIELD_KEY||'name'},options,{actions:false}));case 27:card=_context81.sent;_context81.t3=Object;_context81.t4={};_context81.t5=card;_context81.t6=id;_context81.t7=id;_context81.next=35;return getTableApi(objectSchema,fields,options);case 35:_context81.t8=_context81.sent;_context81.t9=options.tableHiddenOn;_context81.t10={type:'crud',primaryField:'_id',id:_context81.t6,name:_context81.t7,keepItemSelectionOnPageChange:false,api:_context81.t8,hiddenOn:_context81.t9};_context81.t11=bodyProps;body=_context81.t3.assign.call(_context81.t3,_context81.t4,_context81.t5,_context81.t10,_context81.t11);_context81.next=68;break;case 42:labelFieldName=objectSchema.NAME_FIELD_KEY||'name';// organizations 对象的历史遗留问题, fullname 被标记为了 名称字段. 在此处特殊处理.
|
|
558
559
|
if(objectSchema.name==='organizations'){labelFieldName='name';}tableOptions=Object.assign({idFieldName:objectSchema.idFieldName,labelFieldName:labelFieldName,permissions:objectSchema.permissions,enable_inline_edit:objectSchema.enable_inline_edit,crudId:listSchema.id||id,enable_tree:objectSchema.enable_tree},options);tableOptions.amisData=createObject(options.amisData||{},{});_context81.next=48;return getTableSchema$1(objectSchema,fields,tableOptions);case 48:table=_context81.sent;// delete table.mode;
|
|
559
560
|
//image与avatar需要在提交修改时特别处理
|
|
560
|
-
imageNames=___default["default"].compact(___default["default"].map(___default["default"].filter(fields,function(field){return["image","avatar"].includes(field.type);}),'name'));quickSaveApiRequestAdaptor="\n var graphqlOrder = \"\";\n var imageNames = ".concat(JSON.stringify(imageNames),";\n const rowsDiff = _.cloneDeep(api.data.rowsDiff);\n rowsDiff.forEach(function (item, index) {\n for(key in item){\n // image\u3001select\u7B49\u5B57\u6BB5\u6E05\u7A7A\u503C\u540E\u4FDD\u5B58\u7684\u7A7A\u5B57\u7B26\u4E32\u8F6C\u6362\u4E3Anull\u3002\n if(item[key] === ''){\n item[key] = null;\n }\n if(_.includes(imageNames, key)){\n if(typeof item[key] == \"string\"){\n const match = item[key].match(/\\/([^\\/]+)$/);\n item[key] = match && match.length > 1?match[1]:\"\";\n }else{\n item[key] = _.map(item[key], function(ele){\n const match = ele.match(/\\/([^\\/]+)$/);\n return match && match.length > 1?match[1]:\"\";\n })\n }\n }\n }\n item = _.omit(item, '_display');\n const itemOrder = 'update' + index + ':' + api.data.objectName + '__update(id:\"' + item._id + '\", doc:' + JSON.stringify(JSON.stringify(_.omit(item, '_id'))) + ') {_id}';\n graphqlOrder += itemOrder;\n })\n graphqlOrder = 'mutation {' + graphqlOrder + '}';\n return {\n ...api,\n data: {\n query: graphqlOrder\n }\n }\n ");
|
|
561
|
+
imageNames=___default["default"].compact(___default["default"].map(___default["default"].filter(fields,function(field){return["image","avatar"].includes(field.type);}),'name'));quickSaveApiRequestAdaptor="\n var graphqlOrder = \"\";\n var imageNames = ".concat(JSON.stringify(imageNames),";\n const rowsDiff = _.cloneDeep(api.data.rowsDiff);\n rowsDiff.forEach(function (item, index) {\n for(key in item){\n // image\u3001select\u7B49\u5B57\u6BB5\u6E05\u7A7A\u503C\u540E\u4FDD\u5B58\u7684\u7A7A\u5B57\u7B26\u4E32\u8F6C\u6362\u4E3Anull\u3002\n if(item[key] === ''){\n item[key] = null;\n }\n if(_.includes(imageNames, key)){\n if(typeof item[key] == \"string\"){\n const match = item[key].match(/\\/([^\\/]+)$/);\n item[key] = match && match.length > 1?match[1]:\"\";\n }else{\n item[key] = _.map(item[key], function(ele){\n const match = ele.match(/\\/([^\\/]+)$/);\n return match && match.length > 1?match[1]:\"\";\n })\n }\n }\n }\n item = _.omit(item, '_display');\n const itemOrder = 'update' + index + ':' + api.data.objectName + '__update(id:\"' + item._id + '\", doc:' + JSON.stringify(JSON.stringify(_.omit(item, '_id'))) + ') {_id}';\n graphqlOrder += itemOrder;\n })\n graphqlOrder = 'mutation {' + graphqlOrder + '}';\n return {\n ...api,\n data: {\n query: graphqlOrder\n }\n }\n ");_context81.t12=Object;_context81.t13={};_context81.t14=table;_context81.t15=id;_context81.t16=id;_context81.next=58;return getTableApi(objectSchema,fields,options);case 58:_context81.t17=_context81.sent;_context81.t18=options.tableHiddenOn;_context81.t19="flex-auto ".concat(crudClassName||"");_context81.t20={"mb-0":true,"is-steedos-crud-data-empty":"${!items || COUNT(items) == 0}"};_context81.t21=crudClassName;_context81.t22={url:"${context.rootUrl}/graphql",method:"post",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:quickSaveApiRequestAdaptor};_context81.t23=options.rowClassNameExpr||"<%= data._id === data.recordId ? 'steedos-record-tr steedos-record-tr-' + data._id + ' steedos-record-selected' : 'steedos-record-tr steedos-record-tr-' + data._id %>";_context81.t24={type:'crud',primaryField:'_id',affixHeader:false,id:_context81.t15,name:_context81.t16,keepItemSelectionOnPageChange:true,api:_context81.t17,hiddenOn:_context81.t18,className:_context81.t19,bodyClassName:_context81.t20,crudClassName:_context81.t21,quickSaveApi:_context81.t22,rowClassNameExpr:_context81.t23};_context81.t25=bodyProps;body=_context81.t12.assign.call(_context81.t12,_context81.t13,_context81.t14,_context81.t24,_context81.t25);case 68:body=defaultsDeep({},listSchema,body);_context81.next=71;return getCrudSchemaWithDataFilter(body,{crudDataFilter:crudDataFilter,onCrudDataFilter:onCrudDataFilter,amisData:amisData,env:env});case 71:body=_context81.sent;crudModeClassName="";if(body.mode){crudModeClassName="steedos-crud-mode-".concat(body.mode);}body.quickSaveApi.adaptor="\n if(payload.errors){\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n var scope = SteedosUI.getRef(context.scopeId);\n var scopeParent = scope && scope.parent;\n var crudScoped = scopeParent.getComponentById('".concat(body.id,"');\n setTimeout(()=>{\n crudScoped && crudScoped.control.updateAutoFillHeight();\n }, 500);\n return payload;\n ");if(body.columns&&options.formFactor!='SMALL'){//将_display放入crud的columns的倒数第二列中(最后一列会影响固定列),可以通过setvalue修改行内数据域的_display,而不影响上层items的_display,用于批量编辑
|
|
561
562
|
body.columns.splice(body.columns.length-1,0,{name:'_display',type:'static',width:1,placeholder:"",id:objectSchema.name+"_display_${_index}",tpl:"${''}"});}if(defaults){headerSchema=defaults.headerSchema;footerSchema=defaults.footerSchema;if(headerSchema||footerSchema){wrappedBody=[body];if(headerSchema){if(___default["default"].isArray(headerSchema)){wrappedBody=___default["default"].union(headerSchema,wrappedBody);}else{wrappedBody.unshift(headerSchema);}}if(footerSchema){if(___default["default"].isArray(footerSchema)){wrappedBody=___default["default"].union(wrappedBody,footerSchema);}else{wrappedBody.push(footerSchema);}}body=wrappedBody;}}// console.timeEnd('getObjectCRUD');
|
|
562
563
|
// TODO: data应该只留loaded,其他属性都改为从上层传递下来
|
|
563
564
|
return _context81.abrupt("return",{type:'service',className:crudModeClassName,//目前crud的service层id不认用户自定义id,只支持默认规则id,许多地方的格式都写死了service_listview_${objectname}
|
|
564
565
|
id:"service_".concat(id),name:"page",data:options.amisData,body:body,//监听广播事件,重算crud高度
|
|
565
|
-
onEvent:_defineProperty({},"@height.changed.".concat(objectSchema.name),{"actions":[{"actionType":"custom","script":"\n var crudScoped = event.context.scoped.getComponentById('".concat(body.id,"');\n var timeOut = event.data.timeOut || 500;\n setTimeout(()=>{\n crudScoped && crudScoped.control.updateAutoFillHeight();\n }, timeOut);\n ")}]})});case
|
|
566
|
+
onEvent:_defineProperty({},"@height.changed.".concat(objectSchema.name),{"actions":[{"actionType":"custom","script":"\n var crudScoped = event.context.scoped.getComponentById('".concat(body.id,"');\n var timeOut = event.data.timeOut || 500;\n setTimeout(()=>{\n crudScoped && crudScoped.control.updateAutoFillHeight();\n }, timeOut);\n ")}]})});case 78:case"end":return _context81.stop();}}},_callee81);}));return _getObjectCRUD.apply(this,arguments);}var getFormFields$1=function getFormFields$1(objectSchema,formProps){/**
|
|
566
567
|
* fieldsExtend: 重写字段定义
|
|
567
568
|
* fields: 包含的字段
|
|
568
569
|
* excludedFields: 排除的字段
|
|
569
570
|
*/var fieldsExtend=formProps.fieldsExtend,includedFields=formProps.fields,excludedFields=formProps.excludedFields;var fields={};// 以uiSchema fields 为基础, 遍历字段, 并更新字段定义
|
|
570
|
-
___default["default"].forEach(objectSchema.fields,function(field,fieldName){if(!lodash.has(field,"name")){field.name=fieldName;}if(fieldsExtend&&fieldsExtend[fieldName]){fields[field.name]=Object.assign({},field,fieldsExtend[fieldName],{name:field.name});}else{fields[field.name]=field;}});if(!___default["default"].isEmpty(includedFields)&&___default["default"].isArray(includedFields)){var includedFieldsMap={};___default["default"].each(includedFields,function(fName,index){if(fields[fName]){includedFieldsMap[fName]=Object.assign({},fields[fName],{sort_no:index});}});fields=includedFieldsMap;}if(!___default["default"].isEmpty(excludedFields)&&___default["default"].isArray(excludedFields)){___default["default"].each(excludedFields,function(fName){delete fields[fName];});}return lodash.sortBy(___default["default"].values(fields),"sort_no");};function getFormSchemaWithDataFilter(_x110){return _getFormSchemaWithDataFilter.apply(this,arguments);}function _getFormSchemaWithDataFilter(){_getFormSchemaWithDataFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee82(form){var options,formDataFilter,amisData,env,onFormDataFilter,_args82=arguments;return _regeneratorRuntime().wrap(function _callee82$(_context82){while(1){switch(_context82.prev=_context82.next){case 0:options=_args82.length>1&&_args82[1]!==undefined?_args82[1]:{};formDataFilter=options.formDataFilter,amisData=options.amisData,env=options.env;onFormDataFilter=options.onFormDataFilter;if(!onFormDataFilter&&typeof formDataFilter==='string'){onFormDataFilter=new Function('form','env','data',formDataFilter);}_context82.prev=4;_context82.t0=onFormDataFilter;if(!_context82.t0){_context82.next=13;break;}_context82.next=9;return onFormDataFilter(form,env,amisData);case 9:_context82.t1=_context82.sent;if(_context82.t1){_context82.next=12;break;}_context82.t1=form;case 12:form=_context82.t1;case 13:_context82.next=18;break;case 15:_context82.prev=15;_context82.t2=_context82["catch"](4);console.warn(_context82.t2);case 18:return _context82.abrupt("return",form);case 19:case"end":return _context82.stop();}}},_callee82,null,[[4,15]]);}));return _getFormSchemaWithDataFilter.apply(this,arguments);}function getObjectForm(_x111,_x112){return _getObjectForm.apply(this,arguments);}function _getObjectForm(){_getObjectForm=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee83(objectSchema,ctx){var recordId,formFactor,_ctx$layout,layout,labelAlign,tabId,appId,defaults,_ctx$submitSuccAction,submitSuccActions,formDataFilter,onFormDataFilter,amisData,env,fields,formFields,formSchema,amisSchema;return _regeneratorRuntime().wrap(function _callee83$(_context83){while(1){switch(_context83.prev=_context83.next){case 0:recordId=ctx.recordId,formFactor=ctx.formFactor,_ctx$layout=ctx.layout,layout=_ctx$layout===void 0?formFactor==='SMALL'?'normal':"horizontal":_ctx$layout,labelAlign=ctx.labelAlign,tabId=ctx.tabId,appId=ctx.appId,defaults=ctx.defaults,_ctx$submitSuccAction=ctx.submitSuccActions,submitSuccActions=_ctx$submitSuccAction===void 0?[]:_ctx$submitSuccAction,formDataFilter=ctx.formDataFilter,onFormDataFilter=ctx.onFormDataFilter,amisData=ctx.amisData,env=ctx.env
|
|
571
|
+
___default["default"].forEach(objectSchema.fields,function(field,fieldName){if(!lodash.has(field,"name")){field.name=fieldName;}if(fieldsExtend&&fieldsExtend[fieldName]){fields[field.name]=Object.assign({},field,fieldsExtend[fieldName],{name:field.name});}else{fields[field.name]=field;}});if(!___default["default"].isEmpty(includedFields)&&___default["default"].isArray(includedFields)){var includedFieldsMap={};___default["default"].each(includedFields,function(fName,index){if(fields[fName]){includedFieldsMap[fName]=Object.assign({},fields[fName],{sort_no:index});}});fields=includedFieldsMap;}if(!___default["default"].isEmpty(excludedFields)&&___default["default"].isArray(excludedFields)){___default["default"].each(excludedFields,function(fName){delete fields[fName];});}return lodash.sortBy(___default["default"].values(fields),"sort_no");};function getFormSchemaWithDataFilter(_x110){return _getFormSchemaWithDataFilter.apply(this,arguments);}function _getFormSchemaWithDataFilter(){_getFormSchemaWithDataFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee82(form){var options,formDataFilter,amisData,env,onFormDataFilter,_args82=arguments;return _regeneratorRuntime().wrap(function _callee82$(_context82){while(1){switch(_context82.prev=_context82.next){case 0:options=_args82.length>1&&_args82[1]!==undefined?_args82[1]:{};formDataFilter=options.formDataFilter,amisData=options.amisData,env=options.env;onFormDataFilter=options.onFormDataFilter;if(!onFormDataFilter&&typeof formDataFilter==='string'){onFormDataFilter=new Function('form','env','data',formDataFilter);}_context82.prev=4;_context82.t0=onFormDataFilter;if(!_context82.t0){_context82.next=13;break;}_context82.next=9;return onFormDataFilter(form,env,amisData);case 9:_context82.t1=_context82.sent;if(_context82.t1){_context82.next=12;break;}_context82.t1=form;case 12:form=_context82.t1;case 13:_context82.next=18;break;case 15:_context82.prev=15;_context82.t2=_context82["catch"](4);console.warn(_context82.t2);case 18:return _context82.abrupt("return",form);case 19:case"end":return _context82.stop();}}},_callee82,null,[[4,15]]);}));return _getFormSchemaWithDataFilter.apply(this,arguments);}function getObjectForm(_x111,_x112){return _getObjectForm.apply(this,arguments);}function _getObjectForm(){_getObjectForm=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee83(objectSchema,ctx){var recordId,formFactor,_ctx$layout,layout,labelAlign,tabId,appId,defaults,_ctx$submitSuccAction,submitSuccActions,formDataFilter,onFormDataFilter,amisData,env,fields,formFields,formSchema,amisSchema;return _regeneratorRuntime().wrap(function _callee83$(_context83){while(1){switch(_context83.prev=_context83.next){case 0:recordId=ctx.recordId,formFactor=ctx.formFactor,_ctx$layout=ctx.layout,layout=_ctx$layout===void 0?formFactor==='SMALL'?'normal':"horizontal":_ctx$layout,labelAlign=ctx.labelAlign,tabId=ctx.tabId,appId=ctx.appId,defaults=ctx.defaults,_ctx$submitSuccAction=ctx.submitSuccActions,submitSuccActions=_ctx$submitSuccAction===void 0?[]:_ctx$submitSuccAction,formDataFilter=ctx.formDataFilter,onFormDataFilter=ctx.onFormDataFilter,amisData=ctx.amisData,env=ctx.env;//优先识别组件上的enableTabs属性,若不存在,则识别对象上定义的
|
|
572
|
+
if(typeof ctx.enableTabs!=='boolean'){ctx.enableTabs=objectSchema.enable_form_tabs;}fields=___default["default"].values(objectSchema.fields);formFields=getFormFields$1(objectSchema,ctx);formSchema=defaults&&defaults.formSchema||{};if(___default["default"].has(formSchema,'className')){formSchema.className='steedos-amis-form';}if(!formSchema.id){formSchema.id='form_'+objectSchema.name;}_context83.t0="service_".concat(formSchema.id);_context83.t1="page_edit_".concat(recordId);_context83.t2=_objectSpread({},amisData);_context83.t3=defaultsDeep;_context83.t4={};_context83.t5=formSchema;_context83.t6=layout;_context83.next=16;return getEditFormInitApi(objectSchema,recordId,fields,ctx);case 16:_context83.t7=_context83.sent;_context83.t8={editFormInited:false};_context83.t9=labelAlign;_context83.t10="form_edit_".concat(recordId);_context83.next=22;return getSaveApi(objectSchema,recordId,fields,ctx);case 22:_context83.t11=_context83.sent;_context83.t12=recordId!='new';_context83.next=26;return getFormBody(fields,formFields,Object.assign({},ctx,{fieldGroups:objectSchema.field_groups,omitReadonlyFields:true}));case 26:_context83.t13=_context83.sent;_context83.t14={type:'wrapper',className:'p-0 m-0',body:_context83.t13,hiddenOn:"${editFormInited != true}"};_context83.t15={"submitSucc":{"weight":0,"actions":[{"actionType":"broadcast","args":{"eventName":"@data.changed.".concat(objectSchema.name)},"data":{"objectName":"".concat(objectSchema.name),"displayAs":"${displayAs}"}},{"actionType":"broadcast","args":{"eventName":"@data.changed.${_master.objectName}"},"data":{"objectName":"${_master.objectName}","_isRelated":"${_isRelated || _master._isRelated}"},"expression":"${_master.objectName != '".concat(objectSchema.name,"' && _master.objectName}")}].concat(_toConsumableArray(submitSuccActions))}};_context83.t16={type:"form",mode:_context83.t6,initApi:_context83.t7,data:_context83.t8,labelAlign:_context83.t9,persistData:false,resetAfterSubmit:true,preventEnterSubmit:true,promptPageLeave:true,canAccessSuperData:false,name:_context83.t10,debug:false,title:"",submitText:"",api:_context83.t11,initFetch:_context83.t12,body:_context83.t14,panelClassName:'m-0 sm:rounded-lg shadow-none border-none',bodyClassName:'p-0',className:'steedos-amis-form',onEvent:_context83.t15};_context83.t17=(0,_context83.t3)(_context83.t4,_context83.t5,_context83.t16);_context83.t18=[_context83.t17];amisSchema={type:'service',id:_context83.t0,className:'p-0',name:_context83.t1,data:_context83.t2,initApi:null,initFetch:null,body:_context83.t18};_context83.next=35;return getFormSchemaWithDataFilter(amisSchema.body[0],{formDataFilter:formDataFilter,onFormDataFilter:onFormDataFilter,amisData:amisData,env:env});case 35:amisSchema.body[0]=_context83.sent;return _context83.abrupt("return",amisSchema);case 37:case"end":return _context83.stop();}}},_callee83);}));return _getObjectForm.apply(this,arguments);}function getObjectDetail(_x113,_x114,_x115){return _getObjectDetail.apply(this,arguments);}/*
|
|
571
573
|
* @Author: baozhoutao@steedos.com
|
|
572
574
|
* @Date: 2022-09-01 09:00:26
|
|
573
575
|
* @LastEditors: baozhoutao@steedos.com
|
|
574
576
|
* @LastEditTime: 2022-09-03 13:21:38
|
|
575
577
|
* @Description:
|
|
576
|
-
*/function _getObjectDetail(){_getObjectDetail=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee84(objectSchema,recordId,ctx){var formFactor,_ctx$layout2,layout,labelAlign,formDataFilter,onFormDataFilter,amisData,env,fields,formFields,serviceId,amisSchema;return _regeneratorRuntime().wrap(function _callee84$(_context84){while(1){switch(_context84.prev=_context84.next){case 0:formFactor=ctx.formFactor,_ctx$layout2=ctx.layout,layout=_ctx$layout2===void 0?formFactor==='SMALL'?'normal':"horizontal":_ctx$layout2,labelAlign=ctx.labelAlign,formDataFilter=ctx.formDataFilter,onFormDataFilter=ctx.onFormDataFilter,amisData=ctx.amisData,env=ctx.env;fields=___default["default"].values(objectSchema.fields);formFields=getFormFields$1(objectSchema,ctx);serviceId="service_detail_page";_context84.t0="page_readonly_".concat(recordId);_context84.t1=serviceId;_context84.t2=layout;_context84.t3=labelAlign;_context84.t4="form_readonly_".concat(recordId);_context84.t5={"formData":"$$"};_context84.next=12;return getFormBody(_$1.map(fields,function(field){field.readonly=true;return field;}),_$1.map(formFields,function(field){field.readonly=true;return field;}),Object.assign({},ctx,{showSystemFields:true,fieldGroups:objectSchema.field_groups}));case 12:_context84.t6=_context84.sent;_context84.t7=[];_context84.t8={type:"form",mode:_context84.t2,labelAlign:_context84.t3,persistData:false,promptPageLeave:false,name:_context84.t4,debug:false,title:"",data:_context84.t5,wrapWithPanel:false,body:_context84.t6,className:'steedos-amis-form bg-white',actions:_context84.t7};_context84.t9={"type":"wrapper",hiddenOn:"${recordLoaded != true}","className":"p-0 m-0","body":_context84.t8};_context84.t10=[_context84.t9];amisSchema={type:'service',name:_context84.t0,id:_context84.t1,body:_context84.t10};_context84.next=
|
|
578
|
+
*/function _getObjectDetail(){_getObjectDetail=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee84(objectSchema,recordId,ctx){var formFactor,_ctx$layout2,layout,labelAlign,formDataFilter,onFormDataFilter,amisData,env,enableInitApi,fields,formFields,serviceId,amisSchema;return _regeneratorRuntime().wrap(function _callee84$(_context84){while(1){switch(_context84.prev=_context84.next){case 0:formFactor=ctx.formFactor,_ctx$layout2=ctx.layout,layout=_ctx$layout2===void 0?formFactor==='SMALL'?'normal':"horizontal":_ctx$layout2,labelAlign=ctx.labelAlign,formDataFilter=ctx.formDataFilter,onFormDataFilter=ctx.onFormDataFilter,amisData=ctx.amisData,env=ctx.env,enableInitApi=ctx.enableInitApi;fields=___default["default"].values(objectSchema.fields);formFields=getFormFields$1(objectSchema,ctx);serviceId="service_detail_page";_context84.t0="page_readonly_".concat(recordId);_context84.t1=serviceId;_context84.t2=layout;_context84.t3=labelAlign;_context84.t4="form_readonly_".concat(recordId);_context84.t5={"formData":"$$"};_context84.next=12;return getFormBody(_$1.map(fields,function(field){field.readonly=true;return field;}),_$1.map(formFields,function(field){field.readonly=true;return field;}),Object.assign({},ctx,{showSystemFields:true,fieldGroups:objectSchema.field_groups}));case 12:_context84.t6=_context84.sent;_context84.t7=[];_context84.t8={type:"form",mode:_context84.t2,labelAlign:_context84.t3,persistData:false,promptPageLeave:false,name:_context84.t4,debug:false,title:"",data:_context84.t5,wrapWithPanel:false,body:_context84.t6,className:'steedos-amis-form bg-white',actions:_context84.t7};_context84.t9={"type":"wrapper",hiddenOn:"${recordLoaded != true}","className":"p-0 m-0","body":_context84.t8};_context84.t10=[_context84.t9];amisSchema={type:'service',name:_context84.t0,id:_context84.t1,body:_context84.t10};if(!enableInitApi){_context84.next=23;break;}_context84.next=21;return getReadonlyFormInitApi(objectSchema,recordId,fields,ctx);case 21:amisSchema.api=_context84.sent;// 开启初始化api请求时,如果不把recordLoaded默认设置为false,recordLoaded值会取RecordServic组件中的recordLoaded值
|
|
579
|
+
// 这会造成表单内steedos field组件lookup字段中props.data取到的是RecordServic组件
|
|
580
|
+
amisSchema.data=_objectSpread(_objectSpread({},amisSchema.data),{},{recordLoaded:false});case 23:_context84.next=25;return getFormSchemaWithDataFilter(amisSchema.body[0].body,{formDataFilter:formDataFilter,onFormDataFilter:onFormDataFilter,amisData:amisData,env:env});case 25:amisSchema.body[0].body=_context84.sent;return _context84.abrupt("return",amisSchema);case 27:case"end":return _context84.stop();}}},_callee84);}));return _getObjectDetail.apply(this,arguments);}var getGraphqlFieldsQuery=function getGraphqlFieldsQuery(fields){var fieldsName=['_id'];fields.push('record_permissions');//TODO 此处需要考虑相关对象查询
|
|
577
581
|
_$1.each(fields,function(fieldName){if(fieldName.indexOf('.')>-1){fieldName=fieldName.split('.')[0];}fieldsName.push("".concat(fieldName));});return"".concat(fieldsName.join(' '));};var getFindOneQuery=function getFindOneQuery(objectName,id,fields){objectName=objectName.replace(/\./g,'_');var queryFields=getGraphqlFieldsQuery(fields);var queryOptions='';var alias="record";var queryOptionsArray=["id: \"".concat(id,"\"")];if(queryOptionsArray.length>0){queryOptions="(".concat(queryOptionsArray.join(','),")");}return"{".concat(alias,":").concat(objectName,"__findOne").concat(queryOptions,"{").concat(queryFields,"}}");};var getRecord=/*#__PURE__*/function(){var _ref13=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee13(objectName,recordId,fields){var result;return _regeneratorRuntime().wrap(function _callee13$(_context13){while(1){switch(_context13.prev=_context13.next){case 0:_context13.next=2;return fetchAPI('/graphql',{method:'post',body:JSON.stringify({query:getFindOneQuery(objectName,recordId,fields)})});case 2:result=_context13.sent;return _context13.abrupt("return",result.data.record);case 4:case"end":return _context13.stop();}}},_callee13);}));return function getRecord(_x116,_x117,_x118){return _ref13.apply(this,arguments);};}();var getRelatedsCount=/*#__PURE__*/function(){var _ref14=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee14(masterRecordId,relateds){var relatedQuery,query,result;return _regeneratorRuntime().wrap(function _callee14$(_context14){while(1){switch(_context14.prev=_context14.next){case 0:relatedQuery=[];_$1.each(relateds,function(relate){relatedQuery.push("".concat(relate.object_name,": ").concat(relate.object_name,"__count(filters: [[\"").concat(relate.foreign_key,"\",\"=\",\"").concat(masterRecordId,"\"]])"));});query="\n {\n ".concat(relatedQuery.join(','),"\n }\n ");_context14.next=5;return fetchAPI('/graphql',{method:'POST',body:JSON.stringify({query:query})});case 5:result=_context14.sent;return _context14.abrupt("return",result.data);case 7:case"end":return _context14.stop();}}},_callee14);}));return function getRelatedsCount(_x119,_x120){return _ref14.apply(this,arguments);};}();var getRecordPermissions=/*#__PURE__*/function(){var _ref15=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee15(objectName,recordId){var result;return _regeneratorRuntime().wrap(function _callee15$(_context15){while(1){switch(_context15.prev=_context15.next){case 0:_context15.next=2;return fetchAPI("/service/api/@".concat(objectName,"/recordPermissions/").concat(recordId),{method:'GET'});case 2:result=_context15.sent;return _context15.abrupt("return",result);case 4:case"end":return _context15.stop();}}},_callee15);}));return function getRecordPermissions(_x121,_x122){return _ref15.apply(this,arguments);};}();/*
|
|
578
582
|
* @Author: baozhoutao@steedos.com
|
|
579
583
|
* @Date: 2022-07-05 15:55:39
|
|
@@ -618,7 +622,7 @@ return _context87.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});cas
|
|
|
618
622
|
* @Author: baozhoutao@steedos.com
|
|
619
623
|
* @Date: 2022-07-05 15:55:39
|
|
620
624
|
* @LastEditors: 殷亮辉 yinlianghui@hotoa.com
|
|
621
|
-
* @LastEditTime: 2024-
|
|
625
|
+
* @LastEditTime: 2024-04-26 16:46:44
|
|
622
626
|
* @Description:
|
|
623
627
|
*/function _getObjectRelatedListsMiniSchema(){_getObjectRelatedListsMiniSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee88(objectApiName){var relatedLists,relatedListsMiniSchema,_iterator13,_step14,relatedList;return _regeneratorRuntime().wrap(function _callee88$(_context88){while(1){switch(_context88.prev=_context88.next){case 0:_context88.next=2;return getObjectRelatedList(objectApiName);case 2:relatedLists=_context88.sent;relatedListsMiniSchema=[];_iterator13=_createForOfIteratorHelper(relatedLists);try{for(_iterator13.s();!(_step14=_iterator13.n()).done;){relatedList=_step14.value;relatedListsMiniSchema.push({type:'steedos-record-detail-list-mini',objectApiName:objectApiName,// recordId: recordId,
|
|
624
628
|
formFactor:formFactor,relatedObjectApiName:relatedList.object_name,foreign_key:relatedList.foreign_key,relatedKey:relatedList.foreign_key,columns:relatedList.columns,sort:relatedList.sort,filters:relatedList.filters,visible_on:relatedList.visible_on,perPage:relatedList.page_size||perPage,hiddenEmptyTable:true,relatedLabel:relatedList.label});}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}return _context88.abrupt("return",{type:'wrapper',className:"steedos-record-detail-related-lists-mini",body:relatedListsMiniSchema});case 7:case"end":return _context88.stop();}}},_callee88);}));return _getObjectRelatedListsMiniSchema.apply(this,arguments);}var UI_SCHEMA_CACHE={};var UISchemaFunction;var setUISchemaFunction=function setUISchemaFunction(fun){UISchemaFunction=fun;};if('undefined'!=typeof window){if(!window.UI_SCHEMA_CACHE){window.UI_SCHEMA_CACHE=UI_SCHEMA_CACHE;}UI_SCHEMA_CACHE=window.UI_SCHEMA_CACHE;}var setUISchemaCache=function setUISchemaCache(key,value){UI_SCHEMA_CACHE[key]=value;};var getUISchemaCache=function getUISchemaCache(key){return _$1.cloneDeep(UI_SCHEMA_CACHE[key]);};var hasUISchemaCache=function hasUISchemaCache(key){return _$1.has(UI_SCHEMA_CACHE,key);};function getListViewColumns(listView,formFactor){var listViewColumns=[];if(formFactor==="SMALL"){listViewColumns=!_$1.isEmpty(listView.mobile_columns)?listView.mobile_columns:_$1.slice(listView.columns,0,4);}else{listViewColumns=listView.columns;}return listViewColumns;}function getListViewSort(listView){var sort='';if(listView&&listView.sort&&listView.sort.length){_$1.each(listView.sort,function(item,index){if(_$1.isArray(item)){var field_name=item[0];var order=item[1]||'';var sortStr=field_name+' '+order;sortStr=index>0?','+sortStr:sortStr;sort+=sortStr;}else{var _sortStr=item.field_name+' '+item.order;_sortStr=index>0?','+_sortStr:_sortStr;sort+=_sortStr;}});}return sort;}function getListViewFilter(listView){if(!listView){return;}try{var userId=getUserId();var filters=listView.filters;if(listView.filter_scope==='mine'){if(___default["default"].isEmpty(filters)){filters=[["owner","=",userId]];}else{if(___default["default"].isString(filters)&&___default["default"].startsWith(___default["default"].trim(filters),"function")){filters=new Function("return ".concat(filters));filters=filters();}if(___default["default"].isArray(filters)){filters.push(["owner","=",userId]);}else{console.debug("listView filters is not array",listView);throw new Error('filters is not array');}}};return filters;}catch(error){console.error(error);}}function formatUISchemaCache(objectName,uiSchema){setUISchemaCache(objectName,uiSchema);_$1.each(uiSchema.fields,function(field){try{if(field.type==="lookup"&&field._reference_to&&___default["default"].isString(field._reference_to)){field.reference_to=eval("(".concat(field._reference_to,")"))();}}catch(exception){field.reference_to=undefined;console.error(exception);}});_$1.each(uiSchema.list_views,function(v,k){v.name=k;if(!_$1.has(v,'columns')){v.columns=uiSchema.list_views.all.columns;}});}function getUISchema(_x135,_x136){return _getUISchema.apply(this,arguments);}function _getUISchema(){_getUISchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee89(objectName,force){var uiSchema,url;return _regeneratorRuntime().wrap(function _callee89$(_context89){while(1){switch(_context89.prev=_context89.next){case 0:if(objectName){_context89.next=2;break;}return _context89.abrupt("return");case 2:if(!(hasUISchemaCache(objectName)&&!force)){_context89.next=4;break;}return _context89.abrupt("return",getUISchemaCache(objectName));case 4:uiSchema=null;_context89.prev=5;if(!UISchemaFunction){_context89.next=12;break;}_context89.next=9;return UISchemaFunction(objectName,force);case 9:uiSchema=_context89.sent;_context89.next=16;break;case 12:url="/service/api/@".concat(objectName.replace(/\./g,"_"),"/uiSchema");_context89.next=15;return fetchAPI(url,{method:"get"});case 15:uiSchema=_context89.sent;case 16:if(uiSchema){_context89.next=18;break;}return _context89.abrupt("return");case 18:formatUISchemaCache(objectName,uiSchema);_context89.next=25;break;case 21:_context89.prev=21;_context89.t0=_context89["catch"](5);console.error("getUISchema",objectName,_context89.t0);setUISchemaCache(objectName,null);case 25:return _context89.abrupt("return",getUISchemaCache(objectName));case 26:case"end":return _context89.stop();}}},_callee89,null,[[5,21]]);}));return _getUISchema.apply(this,arguments);}function getUISchemaSync$1(objectName,force){if(!objectName){return;}if(hasUISchemaCache(objectName)&&!force){return getUISchemaCache(objectName);}var uiSchema=null;try{var url="/service/api/@".concat(objectName.replace(/\./g,"_"),"/uiSchema");uiSchema=Steedos.authRequest(url,{type:'GET',async:false});if(!uiSchema){return;}formatUISchemaCache(objectName,uiSchema);}catch(error){console.error("getUISchema",objectName,error);setUISchemaCache(objectName,null);}return getUISchemaCache(objectName);}function getField(_x137,_x138){return _getField.apply(this,arguments);}// 获取表单页面
|
|
@@ -637,26 +641,30 @@ if(!(listView.type==="calendar")){_context93.next=19;break;}_amisSchema2=_object
|
|
|
637
641
|
defaults.headerSchema=null;/**
|
|
638
642
|
* 本次存储代码段
|
|
639
643
|
*/try{listViewPropsStoreKey=location.pathname+"/crud";localListViewProps=sessionStorage.getItem(listViewPropsStoreKey);/**
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
listSchema={};if(localListViewProps.orderBy){listSchema.orderBy=localListViewProps.orderBy;}if(localListViewProps.orderDir){listSchema.orderDir=localListViewProps.orderDir;}if(localListViewProps.perPage){listSchema.perPage=localListViewProps.perPage;}defaults.listSchema=_$1.defaultsDeep({},listSchema,defaults.listSchema||{});}}catch(ex){console.error("本地存储中crud参数解析异常:",ex);}
|
|
650
|
-
|
|
651
|
-
|
|
644
|
+
* localListViewProps规范来自crud请求api中api.data.$self参数值的。
|
|
645
|
+
* 比如:{"perPage":20,"page":1,"__searchable__name":"7","__searchable__between__n1__c":[null,null],"filter":[["name","contains","a"]]}
|
|
646
|
+
* __searchable__...:顶部放大镜搜索条件
|
|
647
|
+
* filter:右侧过滤器
|
|
648
|
+
* perPage:每页条数
|
|
649
|
+
* page:当前页码
|
|
650
|
+
* orderBy:排序字段
|
|
651
|
+
* orderDir:排序方向
|
|
652
|
+
*/if(localListViewProps){localListViewProps=JSON.parse(localListViewProps);// localListViewProps.perPage = 3;
|
|
653
|
+
listSchema={};if(localListViewProps.orderBy){listSchema.orderBy=localListViewProps.orderBy;}if(localListViewProps.orderDir){listSchema.orderDir=localListViewProps.orderDir;}if(localListViewProps.perPage){listSchema.perPage=localListViewProps.perPage;}defaults.listSchema=_$1.defaultsDeep({},listSchema,defaults.listSchema||{});}}catch(ex){console.error("本地存储中crud参数解析异常:",ex);}if(window.innerWidth>768){// 列表视图组件PC端高度自动计算实现满屏效果,手机端不需要满屏效果,所以不用autofillheight,且允许重写微页面中重新组件autoFillHeight属性
|
|
654
|
+
defaults.listSchema=_$1.defaultsDeep({},defaults.listSchema||{},{autoFillHeight:true});}ctx.defaults=defaults;if(listViewName=="recent"){listview_filters="\n function(filters, data) {\n var result = Steedos.authRequest('/graphql', {\n type: 'POST',\n async: false,\n data: JSON.stringify({\n query: '{object_recent_viewed(filters: [[\"record.o\",\"=\",\"' + data.objectName + '\"],[\"space\",\"=\",\"' + data.context.tenantId + '\"],[\"owner\",\"=\",\"' + data.context.userId + '\"]],sort:\"modified desc\",top:50){ _id,record} }'\n }),\n });\n var _ids = []\n result.data.object_recent_viewed.forEach(function (item) {\n _ids = _ids.concat(item.record.ids)\n })\n return [\"_id\", \"=\", _ids];\n }\n ";}amisSchema={"type":"steedos-object-table","objectApiName":objectName,"columns":listViewColumns,"extraColumns":listView.extra_columns,"filters":listviewFilter,"filtersFunction":listview_filters,"sort":sort,"ctx":ctx,"requestAdaptor":listView.requestAdaptor||ctx.requestAdaptor,"adaptor":listView.adaptor||ctx.adaptor,"headerToolbarItems":ctx.headerToolbarItems,"filterVisible":ctx.filterVisible,"rowClassNameExpr":ctx.rowClassNameExpr,"crudDataFilter":ctx.crudDataFilter,"onCrudDataFilter":ctx.onCrudDataFilter};// console.log(`getListSchema===>`,amisSchema)
|
|
655
|
+
return _context93.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 27:case"end":return _context93.stop();}}},_callee93);}));return _getListSchema.apply(this,arguments);}function convertColumnsToTableFields(_x147,_x148){return _convertColumnsToTableFields.apply(this,arguments);}// 获取对象表格
|
|
656
|
+
function _convertColumnsToTableFields(){_convertColumnsToTableFields=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee94(columns,uiSchema){var ctx,fields,_iterator14,_step15,column,columnField,fieldName,displayName,filedInfo,rfUiSchema,rfFieldInfo,_args94=arguments;return _regeneratorRuntime().wrap(function _callee94$(_context94){while(1){switch(_context94.prev=_context94.next){case 0:ctx=_args94.length>2&&_args94[2]!==undefined?_args94[2]:{};fields=[];_iterator14=_createForOfIteratorHelper(columns);_context94.prev=3;_iterator14.s();case 5:if((_step15=_iterator14.n()).done){_context94.next=48;break;}column=_step15.value;columnField=void 0,fieldName=void 0,displayName=void 0,filedInfo=void 0,rfUiSchema=void 0,rfFieldInfo=void 0;if(!_$1.isString(column)){_context94.next=28;break;}if(!(column.indexOf('.')>0)){_context94.next=24;break;}fieldName=column.split('.')[0];displayName=column.split('.')[1];filedInfo=uiSchema.fields[fieldName];if(!(filedInfo&&(filedInfo.type==='lookup'||filedInfo.type==='master_detail')&&_$1.isString(filedInfo.reference_to))){_context94.next=21;break;}_context94.next=16;return getUISchema(filedInfo.reference_to);case 16:rfUiSchema=_context94.sent;rfFieldInfo=rfUiSchema.fields[displayName];columnField=Object.assign({},rfFieldInfo,{name:"".concat(fieldName,"__expand.").concat(displayName),expand:true,expandInfo:{fieldName:fieldName,displayName:displayName}},ctx);_context94.next=22;break;case 21:if(filedInfo&&filedInfo.type==='object'){columnField=uiSchema.fields[column];}case 22:_context94.next=25;break;case 24:if(uiSchema.fields[column]){columnField=Object.assign({},uiSchema.fields[column],ctx);}else if(ctx.extra){// 配置列表视图extra_columns时允许字段是hidden的,hidden的字段在uiSchema.fields中不存在
|
|
652
657
|
columnField={extra:true,name:column};}case 25:if(columnField){// 列上的字段不认uiSchema.fields中定义的amis属性
|
|
653
|
-
columnField=Object.assign({},columnField,{amis:undefined});fields.push(columnField);}_context94.next=
|
|
654
|
-
});case
|
|
658
|
+
columnField=Object.assign({},columnField,{amis:undefined});fields.push(columnField);}_context94.next=46;break;case 28:if(!_$1.isObject(column)){_context94.next=46;break;}if(!(column.field.indexOf('.')>0)){_context94.next=44;break;}fieldName=column.field.split('.')[0];displayName=column.field.split('.')[1];filedInfo=uiSchema.fields[fieldName];if(!(filedInfo&&(filedInfo.type==='lookup'||filedInfo.type==='master_detail')&&_$1.isString(filedInfo.reference_to))){_context94.next=41;break;}_context94.next=36;return getUISchema(filedInfo.reference_to);case 36:rfUiSchema=_context94.sent;rfFieldInfo=rfUiSchema.fields[displayName];columnField=Object.assign({},rfFieldInfo,ctx,{name:"".concat(fieldName,"__expand.").concat(displayName),expand:true,expandInfo:{fieldName:fieldName,displayName:displayName}},{width:column.width,wrap:column.wrap// wrap = true 是没效果的
|
|
659
|
+
});_context94.next=42;break;case 41:if(filedInfo&&filedInfo.type==='object'){columnField=uiSchema.fields[column.field];}case 42:_context94.next=45;break;case 44:if(uiSchema.fields[column.field]){columnField=Object.assign({},uiSchema.fields[column.field],ctx,{width:column.width,wrap:column.wrap// wrap = true 是没效果的
|
|
655
660
|
});}else if(ctx.extra){// 配置列表视图extra_columns时允许字段是hidden的,hidden的字段在uiSchema.fields中不存在
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
function _getTableSchema(){_getTableSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee95(appName,objectName,columns){var ctx,uiSchema,sort,sortField,sortOrder,sortStr,fields,extraColumns,extraFields,crudOptions,amisSchema,_args95=arguments;return _regeneratorRuntime().wrap(function _callee95$(_context95){while(1){switch(_context95.prev=_context95.next){case 0:ctx=_args95.length>3&&_args95[3]!==undefined?_args95[3]:{};_context95.next=3;return getUISchema(objectName);case 3:uiSchema=_context95.sent;sort=ctx.sort;if(!sort){sortField=ctx.sortField;sortOrder=ctx.sortOrder;if(sortField){sortStr=sortField+' '+sortOrder||'asc';sort=sortStr;}}_context95.next=8;return convertColumnsToTableFields(columns,uiSchema);case 8:fields=_context95.sent;extraColumns=ctx.extraColumns;if(!extraColumns){_context95.next=15;break;}_context95.next=13;return convertColumnsToTableFields(extraColumns,uiSchema,{extra:true});case 13:extraFields=_context95.sent;fields=fields.concat(extraFields);case 15:_context95.t0=_objectSpread;_context95.t1=_objectSpread({tabId:objectName,appId:appName,objectName:objectName},ctx);_context95.t2={};_context95.t3=ctx.filters;_context95.t4=sort;_context95.t5=ctx.headerToolbarItems;_context95.next=23;return getListViewItemButtons(uiSchema,ctx);case 23:_context95.t6=_context95.sent;_context95.t7={filter:_context95.t3,sort:_context95.t4,headerToolbarItems:_context95.t5,buttons:_context95.t6};crudOptions=(0,_context95.t0)(_context95.t1,_context95.t2,_context95.t7);crudOptions.amisData=createObject(ctx.amisData||{},{});_context95.next=29;return getObjectCRUD(uiSchema,fields,crudOptions);case 29:amisSchema=_context95.sent;return _context95.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 31:case"end":return _context95.stop();}}},_callee95);}));return _getTableSchema.apply(this,arguments);}function getCalendarSchema(_x152,_x153,_x154){return _getCalendarSchema.apply(this,arguments);}function _getCalendarSchema(){_getCalendarSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee96(appName,objectName,calendarOptions){var ctx,uiSchema,amisSchema,_args96=arguments;return _regeneratorRuntime().wrap(function _callee96$(_context96){while(1){switch(_context96.prev=_context96.next){case 0:ctx=_args96.length>3&&_args96[3]!==undefined?_args96[3]:{};_context96.next=3;return getUISchema(objectName);case 3:uiSchema=_context96.sent;_context96.next=6;return getObjectCalendar(uiSchema,calendarOptions,_objectSpread({tabId:objectName,appId:appName,objectName:objectName},ctx));case 6:amisSchema=_context96.sent;return _context96.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 8:case"end":return _context96.stop();}}},_callee96);}));return _getCalendarSchema.apply(this,arguments);}function getRecordDetailHeaderSchema(_x155,_x156,_x157){return _getRecordDetailHeaderSchema.apply(this,arguments);}function _getRecordDetailHeaderSchema(){_getRecordDetailHeaderSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee97(objectName,recordId,options){var uiSchema,amisSchema;return _regeneratorRuntime().wrap(function _callee97$(_context97){while(1){switch(_context97.prev=_context97.next){case 0:_context97.next=2;return getUISchema(objectName);case 2:uiSchema=_context97.sent;_context97.next=5;return getObjectRecordDetailHeader(uiSchema,recordId,options);case 5:amisSchema=_context97.sent;return _context97.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 7:case"end":return _context97.stop();}}},_callee97);}));return _getRecordDetailHeaderSchema.apply(this,arguments);}function getRecordDetailSchema(_x158,_x159){return _getRecordDetailSchema.apply(this,arguments);}function _getRecordDetailSchema(){_getRecordDetailSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee98(objectName,appId){var props,uiSchema,relatedLists,detailed,related,content,_args98=arguments;return _regeneratorRuntime().wrap(function _callee98$(_context98){while(1){switch(_context98.prev=_context98.next){case 0:props=_args98.length>2&&_args98[2]!==undefined?_args98[2]:{};_context98.next=3;return getUISchema(objectName);case 3:uiSchema=_context98.sent;_context98.next=6;return getObjectRelatedList(objectName);case 6:relatedLists=_context98.sent;detailed={"title":i18next__default["default"].t('frontend_record_detail_tab_detailed'),"className":"px-0 py-4","body":[{"type":"steedos-object-form","label":"对象表单","objectApiName":"${objectName}","recordId":"${recordId}",appId:appId}]};related={"title":i18next__default["default"].t('frontend_record_detail_tab_related'),"className":"px-0 py-4","body":[{"type":"steedos-object-related-lists","label":"相关列表","objectApiName":"${objectName}","recordId":"${recordId}",appId:appId}]};content={"type":"tabs","className":"steedos-record-tabs bg-white p-4
|
|
659
|
-
return _context98.abrupt("return",{uiSchema:uiSchema,amisSchema:{"type":"steedos-record-service","body":[{"type":"steedos-record-detail-header","label":"标题面板","objectApiName":"${objectName}","recordId":"${recordId}","id":"u:48d2c28eb755","showButtons":props.showButtons,"showBackButton":props.showBackButton},content],"objectApiName":"${objectName}","recordId":"${recordId}",onEvent:props.onEvent}});case 12:case"end":return _context98.stop();}}},_callee98);}));return _getRecordDetailSchema.apply(this,arguments);}function getRecordServiceSchema(_x160,_x161){return _getRecordServiceSchema.apply(this,arguments);}function _getRecordServiceSchema(){_getRecordServiceSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee99(objectName,appId){var props,body,uiSchema,fields,serviceId,_args99=arguments;return _regeneratorRuntime().wrap(function _callee99$(_context99){while(1){switch(_context99.prev=_context99.next){case 0:props=_args99.length>2&&_args99[2]!==undefined?_args99[2]:{};body=_args99.length>3?_args99[3]:undefined;_context99.next=4;return getUISchema(objectName);case 4:uiSchema=_context99.sent;fields=___default["default"].values(uiSchema.fields);serviceId="u:steedos-record-service-".concat(objectName);_context99.t0=uiSchema;_context99.t1=_defineProperty({},"@data.changed.".concat(objectName),{"actions":[{"actionType":"reload","componentId":serviceId,"expression":"this.__deletedRecord != true"},{"actionType":"closeDialog","expression":"this.__deletedRecord === true && this._inDrawer === true"},{"actionType":"custom","script":"window.goBack()","expression":"this.__deletedRecord === true && this._inDrawer != true"}]});_context99.t2=serviceId;_context99.next=12;return getReadonlyFormInitApi(uiSchema,props.recordId,fields,props);case 12:_context99.t3=_context99.sent;_context99.t4={"type":"wrapper","className":"p-0 m-0","body":body||[],"hiddenOn":"${recordLoaded != true}"};_context99.t5=_objectSpread({"_master.objectName":"${objectName}","_master.recordId":"${recordId}"
|
|
661
|
+
columnField={extra:true,name:column.field};}case 45:if(columnField){// 列上的字段不认uiSchema.fields中定义的amis属性,用列上配置的amis覆盖
|
|
662
|
+
columnField=Object.assign({},columnField,{amis:column.amis});fields.push(columnField);}case 46:_context94.next=5;break;case 48:_context94.next=53;break;case 50:_context94.prev=50;_context94.t0=_context94["catch"](3);_iterator14.e(_context94.t0);case 53:_context94.prev=53;_iterator14.f();return _context94.finish(53);case 56:return _context94.abrupt("return",fields);case 57:case"end":return _context94.stop();}}},_callee94,null,[[3,50,53,56]]);}));return _convertColumnsToTableFields.apply(this,arguments);}function getTableSchema(_x149,_x150,_x151){return _getTableSchema.apply(this,arguments);}// 获取对象日历
|
|
663
|
+
function _getTableSchema(){_getTableSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee95(appName,objectName,columns){var ctx,uiSchema,sort,sortField,sortOrder,sortStr,fields,extraColumns,extraFields,crudOptions,amisSchema,_args95=arguments;return _regeneratorRuntime().wrap(function _callee95$(_context95){while(1){switch(_context95.prev=_context95.next){case 0:ctx=_args95.length>3&&_args95[3]!==undefined?_args95[3]:{};_context95.next=3;return getUISchema(objectName);case 3:uiSchema=_context95.sent;sort=ctx.sort;if(!sort){sortField=ctx.sortField;sortOrder=ctx.sortOrder;if(sortField){sortStr=sortField+' '+sortOrder||'asc';sort=sortStr;}}_context95.next=8;return convertColumnsToTableFields(columns,uiSchema);case 8:fields=_context95.sent;extraColumns=ctx.extraColumns;if(!extraColumns){_context95.next=15;break;}_context95.next=13;return convertColumnsToTableFields(extraColumns,uiSchema,{extra:true});case 13:extraFields=_context95.sent;fields=fields.concat(extraFields);case 15:_context95.t0=_objectSpread;_context95.t1=_objectSpread({tabId:objectName,appId:appName,objectName:objectName},ctx);_context95.t2={};_context95.t3=ctx.filters;_context95.t4=sort;_context95.t5=ctx.headerToolbarItems;_context95.next=23;return getListViewItemButtons(uiSchema,ctx);case 23:_context95.t6=_context95.sent;_context95.t7={filter:_context95.t3,sort:_context95.t4,headerToolbarItems:_context95.t5,buttons:_context95.t6};crudOptions=(0,_context95.t0)(_context95.t1,_context95.t2,_context95.t7);crudOptions.amisData=createObject(ctx.amisData||{},{});_context95.next=29;return getObjectCRUD(uiSchema,fields,crudOptions);case 29:amisSchema=_context95.sent;return _context95.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 31:case"end":return _context95.stop();}}},_callee95);}));return _getTableSchema.apply(this,arguments);}function getCalendarSchema(_x152,_x153,_x154){return _getCalendarSchema.apply(this,arguments);}function _getCalendarSchema(){_getCalendarSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee96(appName,objectName,calendarOptions){var ctx,uiSchema,amisSchema,_args96=arguments;return _regeneratorRuntime().wrap(function _callee96$(_context96){while(1){switch(_context96.prev=_context96.next){case 0:ctx=_args96.length>3&&_args96[3]!==undefined?_args96[3]:{};_context96.next=3;return getUISchema(objectName);case 3:uiSchema=_context96.sent;_context96.next=6;return getObjectCalendar(uiSchema,calendarOptions,_objectSpread({tabId:objectName,appId:appName,objectName:objectName},ctx));case 6:amisSchema=_context96.sent;return _context96.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 8:case"end":return _context96.stop();}}},_callee96);}));return _getCalendarSchema.apply(this,arguments);}function getRecordDetailHeaderSchema(_x155,_x156,_x157){return _getRecordDetailHeaderSchema.apply(this,arguments);}function _getRecordDetailHeaderSchema(){_getRecordDetailHeaderSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee97(objectName,recordId,options){var uiSchema,amisSchema;return _regeneratorRuntime().wrap(function _callee97$(_context97){while(1){switch(_context97.prev=_context97.next){case 0:_context97.next=2;return getUISchema(objectName);case 2:uiSchema=_context97.sent;_context97.next=5;return getObjectRecordDetailHeader(uiSchema,recordId,options);case 5:amisSchema=_context97.sent;return _context97.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 7:case"end":return _context97.stop();}}},_callee97);}));return _getRecordDetailHeaderSchema.apply(this,arguments);}function getRecordDetailSchema(_x158,_x159){return _getRecordDetailSchema.apply(this,arguments);}function _getRecordDetailSchema(){_getRecordDetailSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee98(objectName,appId){var props,uiSchema,relatedLists,detailed,related,content,_args98=arguments;return _regeneratorRuntime().wrap(function _callee98$(_context98){while(1){switch(_context98.prev=_context98.next){case 0:props=_args98.length>2&&_args98[2]!==undefined?_args98[2]:{};_context98.next=3;return getUISchema(objectName);case 3:uiSchema=_context98.sent;_context98.next=6;return getObjectRelatedList(objectName);case 6:relatedLists=_context98.sent;detailed={"title":i18next__default["default"].t('frontend_record_detail_tab_detailed'),"className":"px-0 py-4","body":[{"type":"steedos-object-form","label":"对象表单","objectApiName":"${objectName}","recordId":"${recordId}",appId:appId}]};related={"title":i18next__default["default"].t('frontend_record_detail_tab_related'),"className":"px-0 py-4","body":[{"type":"steedos-object-related-lists","label":"相关列表","objectApiName":"${objectName}","recordId":"${recordId}",appId:appId}]};content={"type":"tabs","className":"steedos-record-tabs bg-white p-4 m-2 border rounded","contentClassName":"bg-none","tabs":[detailed]};if(relatedLists.length){content.tabs.push(related);}// content.tabs = reverse(content.tabs)
|
|
664
|
+
return _context98.abrupt("return",{uiSchema:uiSchema,amisSchema:{"type":"steedos-record-service","body":[{"type":"steedos-record-detail-header","label":"标题面板","objectApiName":"${objectName}","recordId":"${recordId}","id":"u:48d2c28eb755","showButtons":props.showButtons,"showBackButton":props.showBackButton},content],"objectApiName":"${objectName}","recordId":"${recordId}",onEvent:props.onEvent}});case 12:case"end":return _context98.stop();}}},_callee98);}));return _getRecordDetailSchema.apply(this,arguments);}function getRecordServiceSchema(_x160,_x161){return _getRecordServiceSchema.apply(this,arguments);}function _getRecordServiceSchema(){_getRecordServiceSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee99(objectName,appId){var props,body,uiSchema,fields,serviceId,_args99=arguments;return _regeneratorRuntime().wrap(function _callee99$(_context99){while(1){switch(_context99.prev=_context99.next){case 0:props=_args99.length>2&&_args99[2]!==undefined?_args99[2]:{};body=_args99.length>3?_args99[3]:undefined;_context99.next=4;return getUISchema(objectName);case 4:uiSchema=_context99.sent;fields=___default["default"].values(uiSchema.fields);serviceId="u:steedos-record-service-".concat(objectName);_context99.t0=uiSchema;_context99.t1=_defineProperty({},"@data.changed.".concat(objectName),{"actions":[{"actionType":"reload","componentId":serviceId,"expression":"this.__deletedRecord != true"},{"actionType":"closeDialog","expression":"this.__deletedRecord === true && this._inDrawer === true"},{"actionType":"custom","script":"window.goBack()","expression":"this.__deletedRecord === true && this._inDrawer != true"}]});_context99.t2=serviceId;_context99.next=12;return getReadonlyFormInitApi(uiSchema,props.recordId,fields,props);case 12:_context99.t3=_context99.sent;_context99.t4={"type":"wrapper","className":"p-0 m-0","body":body||[],"hiddenOn":"${recordLoaded != true}"};_context99.t5=_objectSpread({"_master.objectName":"${objectName}","_master.recordId":"${recordId}",// 微页面设计器中用RecordServic组件包裹一个ObjectForm只读组件时,如果这里不把recordLoaded默认设置为false
|
|
665
|
+
// recordLoaded值会取父作用域中已经被设置为true的值(比如父级有RecordServic组件,在加载完数据后,父作用域中recordLoaded值为true)
|
|
666
|
+
// 这会造成表单内steedos field组件lookup字段中props.data取到的是父作用域中的数据
|
|
667
|
+
"recordLoaded":false},props.data||{});_context99.t6=_objectSpread({},props.style);_context99.t7=_objectSpread({// 如果定义了fetchInited,则无法接收到广播事件@data.changed
|
|
660
668
|
"fetchInited":{"weight":0,"actions":[{actionType:'broadcast',eventName:"recordLoaded",data:{objectName:"${event.data.__objectName}",record:"${event.data.record}"},expression:"${event.data.__response.error != true}"}]}},props.onEvent);_context99.t8={"type":"service",id:_context99.t2,className:'steedos-record-service p-0',api:_context99.t3,body:_context99.t4,data:_context99.t5,"style":_context99.t6,onEvent:_context99.t7};_context99.t9={type:'service',className:"p-0 m-0",onEvent:_context99.t1,body:_context99.t8};return _context99.abrupt("return",{uiSchema:_context99.t0,amisSchema:_context99.t9});case 20:case"end":return _context99.stop();}}},_callee99);}));return _getRecordServiceSchema.apply(this,arguments);}function getRecordDetailMiniSchema(_x162,_x163){return _getRecordDetailMiniSchema.apply(this,arguments);}// 获取单个相关表
|
|
661
669
|
function _getRecordDetailMiniSchema(){_getRecordDetailMiniSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee100(objectName,appId){var props,uiSchema,fields,_args100=arguments;return _regeneratorRuntime().wrap(function _callee100$(_context100){while(1){switch(_context100.prev=_context100.next){case 0:props=_args100.length>2&&_args100[2]!==undefined?_args100[2]:{};_context100.next=3;return getUISchema(objectName);case 3:uiSchema=_context100.sent;fields=___default["default"].values(uiSchema.fields);props.initApiAdaptor='payload.data=Object.assign({}, payload.data, payload.data.record); payload.data._finished=true; console.log("payload data is ====>", payload)';// TODO 处理相关表
|
|
662
670
|
// getObjectRelatedListsMiniSchema
|
|
@@ -701,11 +709,11 @@ Object.assign(amisSchema,{"joinValues":false});}if(typeof amisSchema.searchable!
|
|
|
701
709
|
if(!refObjectConfig)return null;var valueField=null;var valueFieldName=field.reference_to_field;if(!valueFieldName){valueFieldName=refObjectConfig.idFieldName||'_id';}if(valueFieldName==='_id'){valueField={name:'_id',label:'ID',type:'text',toggled:false};}else{valueField=refObjectConfig.fields[valueFieldName]||{name:valueFieldName};}return{objectName:referenceTo,valueField:valueField,labelField:refObjectConfig.fields[refObjectConfig.NAME_FIELD_KEY||'name'],NAME_FIELD_KEY:refObjectConfig.NAME_FIELD_KEY||'name'};};var getReferenceTo=/*#__PURE__*/function(){var _ref17=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee16(field){var referenceTo,refObjectConfig;return _regeneratorRuntime().wrap(function _callee16$(_context16){while(1){switch(_context16.prev=_context16.next){case 0:referenceTo=field.reference_to;if(referenceTo==='users'){field.reference_to='space_users';field.reference_to_field='user';}_context16.next=4;return getUISchema(field.reference_to);case 4:refObjectConfig=_context16.sent;return _context16.abrupt("return",getReferenceToFieldSchema(field,refObjectConfig));case 6:case"end":return _context16.stop();}}},_callee16);}));return function getReferenceTo(_x181){return _ref17.apply(this,arguments);};}();function getReferenceToSync(field){var referenceTo=field.reference_to;if(referenceTo==='users'){field.reference_to='space_users';field.reference_to_field='user';}var refObjectConfig=getUISchemaSync(field.reference_to);return getReferenceToFieldSchema(field,refObjectConfig);}function getLookupSapceUserTreeSchema(isMobile){var apiAdaptor="\n const records = payload.data.options;\n const treeRecords = [];\n const getChildren = (currentRecord, records, childrenIds) => {\n if (currentRecord.children && typeof currentRecord.children[0] === \"object\") {\n // \u8003\u8651api\u914D\u7F6E\u4E86cache\u7F13\u5B58\u7684\u8BDD\uFF0C\u4E0D\u4F1A\u8BF7\u6C42\u63A5\u53E3\u4F46\u662F\u4F1A\u91CD\u65B0\u8FDB\u8FD9\u4E2A\u63A5\u6536\u9002\u914D\u5668\u811A\u672C\u4E14payload.data.options\u8FD4\u56DE\u7684\u4F1A\u662F\u4E0A\u4E00\u6B21\u8BA1\u7B97\u7ED3\u679C\uFF0C\u8FD9\u91CC\u76F4\u63A5\u8FD4\u56DE\u8BA1\u7B97\u8FC7\u7684children\n return currentRecord.children;\n }\n if (!childrenIds) {\n return;\n }\n const children = _.filter(records, (record) => {\n return _.includes(childrenIds, record.value)\n });\n _.each(children, (item) => {\n if (item.children) {\n item.children = getChildren(item, records, item.children)\n }else{\n item.children = [];\n }\n })\n return children;\n }\n \n const getRoot = (records) => {\n for (var i = 0; i < records.length; i++) {\n records[i].noParent = 0;\n if (!!records[i].parent) {\n biaozhi = 1\n for (var j = 0; j < records.length; j++) {\n if (records[i].parent == records[j].value)\n biaozhi = 0;\n }\n if (biaozhi == 1) records[i].noParent = 1;\n } else records[i].noParent = 1;\n }\n }\n getRoot(records);\n console.log(records)\n \n _.each(records, (record) => {\n if (record.noParent == 1) {\n treeRecords.push(Object.assign({}, record, { children: getChildren(record, records, record.children) }));\n }\n });\n console.log(treeRecords)\n \n payload.data.options = treeRecords;\n return payload;\n ";var treeSchema={"type":"input-tree","className":"steedos-select-user-tree","inputClassName":"p-0","source":{"method":"post","url":"${context.rootUrl}/graphql","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"adaptor":apiAdaptor,"data":{"query":"{options:organizations(filters:[\"hidden\", \"!=\", true],sort:\"sort_no desc\"){value:_id label:name,parent,children}}"},"messages":{},"cache":300000},"onEvent":{"change":{"actions":[{"actionType":"custom","script":"\n const scope = event.context.scoped;\n var filterFormValues={\n \"__searchable__organizations_parents\":event.data.value.value\n }\n var listView = scope.parent.getComponents().find(function(n){\n return n.props.type === \"crud\";\n });\n listView.handleFilterSubmit(Object.assign({}, filterFormValues));\n "},{"actionType":"custom","script":" if(window.innerWidth < 768){ document.querySelector('.steedos-select-user-sidebar').classList.remove('steedos-select-user-sidebar-open'); }"}]}},"label":"","mode":"normal","name":"organizations","multiple":false,"joinValues":false,"clearValueOnHidden":false,"fieldName":"organizations","hideRoot":true,"initiallyOpen":false,"extractValue":true,"onlyChildren":true,"treeContainerClassName":"no-border","showIcon":false,"enableNodePath":false,"autoCheckChildren":false,"searchable":true,"searchConfig":{"sticky":true,"placeholder":"查找部门"},"unfoldedLevel":2,"originPosition":"left-top"};var tree=[];if(isMobile){tree.push({type:"action",body:[{type:"action",body:[treeSchema],className:"h-full w-[240px]"}],className:"absolute inset-0 steedos-select-user-sidebar","onEvent":{"click":{"actions":[{"actionType":"custom","script":"document.querySelector('.steedos-select-user-sidebar').classList.remove('steedos-select-user-sidebar-open')"}]}},id:"steedos_crud_toolbar_select_user_tree"});tree.push({"type":"button","label":"组织","icon":"fa fa-sitemap","className":"bg-white p-2 rounded border-gray-300 text-gray-500","align":"left","onEvent":{"click":{"actions":[{"actionType":"custom","script":"document.querySelector('.steedos-select-user-sidebar').classList.toggle('steedos-select-user-sidebar-open')"}]}},"id":"steedos_crud_toolbar_organization_button"});}else{tree.push(treeSchema);}return tree;}function lookupToAmisPicker(_x182,_x183,_x184){return _lookupToAmisPicker.apply(this,arguments);}function _lookupToAmisPicker(){_lookupToAmisPicker=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee109(field,readonly,ctx){var _fields;var referenceTo,refObjectConfig,tableFields,searchableFields,fieldsArr,isMobile,listView,listName,autoFillMapping,fields,listviewFilter,listviewFiltersFunction,sort,source,depend_on,sendOn,keywordsSearchBoxName,top,pickerSchema,labelFieldName,isAllowCreate,isCreate,isHasFilters,new_button,data;return _regeneratorRuntime().wrap(function _callee109$(_context109){while(1){switch(_context109.prev=_context109.next){case 0:_context109.next=2;return getReferenceTo(field);case 2:referenceTo=_context109.sent;if(referenceTo){_context109.next=5;break;}return _context109.abrupt("return");case 5:_context109.next=7;return getUISchema(referenceTo.objectName);case 7:refObjectConfig=_context109.sent;ctx.idFieldName=refObjectConfig.idFieldName;ctx.objectName=refObjectConfig.name;tableFields=[];searchableFields=[];fieldsArr=[];isMobile=window.innerWidth<768;listView=getLookupListView(refObjectConfig);listName=listView&&listView.name;if(listView&&listView.columns){___namespace.each(listView.columns,function(column){if(___namespace.isString(column)&&refObjectConfig.fields[column]){fieldsArr.push(refObjectConfig.fields[column]);}else if(___namespace.isObject(column)&&refObjectConfig.fields[column.field]){fieldsArr.push(Object.assign({},refObjectConfig.fields[column.field],{width:column.width,wrap:column.wrap,amis:column.amis}));}});___namespace.each(listView.extra_columns||[],function(column){// Lookup弹出列表跟列表视图组件一样,支持配置列表视图extra_columns,且允许其中字段是hidden的,hidden的字段在uiSchema.fields中不存在
|
|
702
710
|
if(___namespace.isString(column)){fieldsArr.push({extra:true,name:column});}else if(___namespace.isObject(column)){fieldsArr.push({extra:true,name:column.field});}});}else{___namespace.each(refObjectConfig.fields,function(field,field_name){if(field_name!='_id'&&!field.hidden){if(!___namespace.has(field,"name")){field.name=field_name;}fieldsArr.push(field);}});// 没有视图权限时,取对象上前5个字段,按sort_no排序
|
|
703
711
|
fieldsArr=___namespace.sortBy(fieldsArr,"sort_no").slice(0,5);}___namespace.each(fieldsArr,function(field){if(!___namespace.find(tableFields,function(f){return f.name===field.name;})){tableFields.push(field);}});// 把自动填充规则中依赖的字段也加到api请求中
|
|
704
|
-
autoFillMapping
|
|
712
|
+
autoFillMapping=field.auto_fill_mapping;if(autoFillMapping&&autoFillMapping.length){autoFillMapping.forEach(function(item){if(!___namespace.find(tableFields,function(f){return f.name===item.from;})){tableFields.push(refObjectConfig.fields[item.from]);}});}___namespace.each(refObjectConfig.fields,function(field){if(isFieldQuickSearchable(field,refObjectConfig.NAME_FIELD_KEY)){searchableFields.push(field.name);}});fields=(_fields={},_defineProperty(_fields,referenceTo.labelField.name,referenceTo.labelField),_defineProperty(_fields,referenceTo.valueField.name,referenceTo.valueField),_fields);___namespace.each(tableFields,function(tableField){if(!tableField.hidden){fields[tableField.name]=tableField;}});listviewFilter=getListViewFilter(listView);listviewFiltersFunction=listView&&listView._filters;sort="";if(listView){sort=getListViewSort(listView);}_context109.next=29;return getApi(refObjectConfig,null,fields,{expand:true,alias:'rows',queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 29:source=_context109.sent;if(source.url&&!ctx.inFilterForm){depend_on=[];sendOn=[];___namespace.each(field.depend_on,function(fName){depend_on.push("depend_on_".concat(fName,"=${").concat(fName,"}"));sendOn.push("this.".concat(fName));});if(depend_on.length>0){source.url="".concat(source.url,"?").concat(depend_on.join('&'));source.sendOn="".concat(sendOn.join(' && '));}}// amis@3.6.3和6.3.0如果不配置 trackExpression监听当前字段值变化,那么当前lookup字段(比如T)作为其它lookup字段(比如F)autoFill自动填充的目标字段的话,
|
|
705
713
|
// F字段值变更后,虽然会自动填充值到T字段中,但是并不会触发T字段的source接口重新请求,这会造成T字段被填充后,可能会显示为字段id而不是label了,见issue:https://github.com/steedos/steedos-platform/issues/6601
|
|
706
714
|
// amis@6.2.2不需要配置trackExpression不会有#6601所示问题,但是更高版本6.3.0也会有,所以这里只能加上trackExpression避开相关bug。
|
|
707
715
|
source.trackExpression="${".concat(field.name,"}");source.data.$term="$term";source.data.$self="$$";// field.name可能是带点的名称,比如审批王中子表字段'instances.instances_submitter',如果不替换掉点,会造成审批王表单中新建子表行时报错
|
|
708
|
-
keywordsSearchBoxName="__keywords_lookup__".concat(field.name.replace(/\./g,"_"),"__to__").concat(refObjectConfig.name);source.requestAdaptor="\n let __changedFilterFormValuesKey = \"__changedFilterFormValues\";\n let __lookupField = api.data.$self.__lookupField;\n if(__lookupField){\n let lookupTag = \"__lookup__\" + __lookupField.name + \"__\" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += \"__\" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n let __changedFilterFormValues = api.data.$self[__changedFilterFormValuesKey] || {};\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 if(api.data.$self.op !== 'loadOptions'){\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\n }\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n ".concat(listviewFilter&&!ctx.inFilterForm?"var filters = ".concat(JSON.stringify(listviewFilter),";"):'var filters = [];',"\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 let fieldValue;\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n fieldValue = selfData.value.split(',');\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", fieldValue]];\n }else{\n fieldValue = selfData.value;\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", fieldValue]];\n }\n }\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(").concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.objectName)==="space_users"," && ").concat(field.reference_to_field==="user","){\n if(filters.length > 0){\n filters = [ [\"user_accepted\", \"=\", true], \"and\", filters ]\n }else{\n filters = [[\"user_accepted\", \"=\", true]];\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 var keywordsFilters = SteedosUI.getKeywordsSearchFilter(selfData.").concat(keywordsSearchBoxName,", allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n filters.push(keywordsFilters);\n }\n\n var fieldFilters = ").concat(JSON.stringify(field.filters),";\n var currentAmis = amisRequire('amis');\n //\u9012\u5F52fieldFilters\u6570\u7EC4\uFF0C\u68C0\u67E5\u6BCF\u4E00\u4E2A\u5143\u7D20\uFF0C\u5224\u65AD\u82E5\u662F\u516C\u5F0F\uFF0C\u5C31\u4EC5\u628A\u5B83\u89E3\u6790\n function traverseNestedArray(arr) {\n for (let i = 0; i < arr.length; i++) {\n if (Array.isArray(arr[i])) {\n // \u5982\u679C\u5F53\u524D\u5143\u7D20\u662F\u6570\u7EC4\uFF0C\u5219\u9012\u5F52\u8C03\u7528\u81EA\u8EAB\u7EE7\u7EED\u904D\u5386\n traverseNestedArray(arr[i]);\n } else {\n // \u5982\u679C\u5F53\u524D\u5143\u7D20\u4E0D\u662F\u6570\u7EC4\uFF0C\u5219\u5904\u7406\u8BE5\u5143\u7D20\n // \u4E0B\u9762\u6B63\u5219\u7528\u4E8E\u5339\u914Damis\u516C\u5F0F${}\n if(/\\$\\{([^}]*)\\}/.test(arr[i])) {\n arr[i] = currentAmis.evaluate(arr[i], api.data.$);\n }\n }\n }\n }\n if(fieldFilters && fieldFilters.length){\n traverseNestedArray(fieldFilters);\n filters.push(fieldFilters);\n }\n \n const inFilterForm = ").concat(ctx.inFilterForm,";\n\n const listviewFiltersFunction = ").concat(listviewFiltersFunction,";\n\n if(listviewFiltersFunction && !inFilterForm){\n const _filters0 = listviewFiltersFunction(filters, api.data.$self.__super);\n if(_filters0 && _filters0.length){\n filters.push(_filters0);\n }\n }\n \n const filtersFunction = ").concat(field.filtersFunction||field._filtersFunction,";\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$self.__super);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n\n const enable_tree = ").concat(refObjectConfig.enable_tree,";\n if(enable_tree){\n pageSize = 10000;\n }\n if(fieldValue && _.isArray(fieldValue) && fieldValue.length > pageSize){\n pageSize = fieldValue.length;\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 return api;\n ");source.adaptor="\n const enable_tree = ".concat(refObjectConfig.enable_tree,";\n const op = api.data.$self.op;\n if(!_.isEmpty(op)){\n // op\u4E0D\u4E3A\u7A7A\uFF0C\u8868\u793A\u5904\u4E8E\u5B57\u6BB5\u521D\u59CB\u7F16\u8F91\u72B6\u6001\uFF0C\u4E0D\u662F\u70B9\u51FB\u540E\u51FA\u73B0\u5F39\u7A97\u72B6\u6001\u3002\n // \u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528_.pick\u51FD\u6570\u8BA9payload\u53EA\u8FD4\u56DElabelField\u548CvalueField\uFF0C\u56E0\u4E3A\u5B57\u6BB5\u4E0A\u914D\u7F6E\u7684amis autoFill\u529F\u80FD\u53EF\u80FD\u4F9D\u8D56\u4E86\u5176\u4ED6\u5B57\u6BB5\n /*\n const rows = _.map(payload.data.rows, (item)=>{\n return _.pick(item, [\"").concat(referenceTo.labelField.name,"\", \"").concat(referenceTo.valueField.name,"\"]);\n })\n payload.data.rows = rows;\n */\n if(enable_tree){\n const rows = _.map(payload.data.rows, (item)=>{\n if (!item.children) {\n return { ...item, children: [] };\n } else {\n return item;\n }\n })\n payload.data.rows = rows;\n }\n return payload;\n }\n if(!payload.data.rows){\n payload.data.rows = [];\n }\n if(enable_tree){\n const records = payload.data.rows;\n const treeRecords = [];\n\n const getParentIds = (records)=>{\n const ids = _.map(records, (item)=>{\n return item._id;\n });\n const parents = _.filter(records,(record)=>{\n return !record.parent || !_.includes(ids,record.parent);\n })\n const parentsIds = _.map(parents,(item)=>{\n return item._id;\n })\n return parentsIds;\n }\n const getChildren = (records, childrenIds)=>{\n if(!childrenIds){\n return;\n }\n const children = _.filter(records, (record)=>{\n return _.includes(childrenIds, record._id)\n });\n _.each(children, (item)=>{\n if(item.children){\n item.children = getChildren(records, item.children)\n }else{\n item.children = [];\n }\n })\n return children;\n }\n\n const parentIds = getParentIds(records);\n _.each(records, (record)=>{\n if(!record.parent || _.includes(parentIds, record._id)){\n treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));\n }\n });\n payload.data.rows = treeRecords;\n }\n const result = payload.data.rows;\n if(result && result.length){\n const updatedResult = _.map(result, (element) => {\n const data = { ...element };\n // image\u5B57\u6BB5\u503C\u6DFB\u52A0URL\u524D\u7F00\n ").concat(getScriptForAddUrlPrefixForImgFields(___namespace.values(refObjectConfig.fields)),"\n return data;\n });\n payload.data.rows = updatedResult;\n }\n return payload;\n ");if(field.optionsFunction||field._optionsFunction){source.adaptor="\n payload.data.rows = eval(".concat(field.optionsFunction||field._optionsFunction,")(api.data.$self);\n return payload;\n ");}top=20;if(refObjectConfig.paging&&refObjectConfig.paging.enabled===false){top=1000;}pickerSchema=null;labelFieldName=refObjectConfig.NAME_FIELD_KEY||'name';// organizations 对象的历史遗留问题, fullname 被标记为了 名称字段. 在此处特殊处理.
|
|
716
|
+
keywordsSearchBoxName="__keywords_lookup__".concat(field.name.replace(/\./g,"_"),"__to__").concat(refObjectConfig.name);source.requestAdaptor="\n let __changedFilterFormValuesKey = \"__changedFilterFormValues\";\n let __lookupField = api.data.$self.__lookupField;\n if(__lookupField){\n let lookupTag = \"__lookup__\" + __lookupField.name + \"__\" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += \"__\" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n let __changedFilterFormValues = api.data.$self[__changedFilterFormValuesKey] || {};\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 if(api.data.$self.op !== 'loadOptions'){\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\n }\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n ".concat(listviewFilter&&!ctx.inFilterForm?"var filters = ".concat(JSON.stringify(listviewFilter),";"):'var filters = [];',"\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 let fieldValue;\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n fieldValue = selfData.value.split(',');\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", fieldValue]];\n }else{\n fieldValue = selfData.value;\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", fieldValue]];\n }\n }\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(").concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.objectName)==="space_users"," && ").concat(field.reference_to_field==="user","){\n if(filters.length > 0){\n filters = [ [\"user_accepted\", \"=\", true], \"and\", filters ]\n }else{\n filters = [[\"user_accepted\", \"=\", true]];\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 var keywordsFilters = SteedosUI.getKeywordsSearchFilter(selfData.").concat(keywordsSearchBoxName,", allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n filters.push(keywordsFilters);\n }\n\n var fieldFilters = ").concat(JSON.stringify(field.filters),";\n var currentAmis = amisRequire('amis');\n //\u9012\u5F52fieldFilters\u6570\u7EC4\uFF0C\u68C0\u67E5\u6BCF\u4E00\u4E2A\u5143\u7D20\uFF0C\u5224\u65AD\u82E5\u662F\u516C\u5F0F\uFF0C\u5C31\u4EC5\u628A\u5B83\u89E3\u6790\n function traverseNestedArray(arr) {\n for (let i = 0; i < arr.length; i++) {\n if (Array.isArray(arr[i])) {\n // \u5982\u679C\u5F53\u524D\u5143\u7D20\u662F\u6570\u7EC4\uFF0C\u5219\u9012\u5F52\u8C03\u7528\u81EA\u8EAB\u7EE7\u7EED\u904D\u5386\n traverseNestedArray(arr[i]);\n } else {\n // \u5982\u679C\u5F53\u524D\u5143\u7D20\u4E0D\u662F\u6570\u7EC4\uFF0C\u5219\u5904\u7406\u8BE5\u5143\u7D20\n // \u4E0B\u9762\u6B63\u5219\u7528\u4E8E\u5339\u914Damis\u516C\u5F0F${}\n if(/\\$\\{([^}]*)\\}/.test(arr[i])) {\n arr[i] = currentAmis.evaluate(arr[i], api.data.$self);\n }\n }\n }\n }\n if(fieldFilters && fieldFilters.length){\n traverseNestedArray(fieldFilters);\n filters.push(fieldFilters);\n }\n \n const inFilterForm = ").concat(ctx.inFilterForm,";\n\n const listviewFiltersFunction = ").concat(listviewFiltersFunction,";\n\n if(listviewFiltersFunction && !inFilterForm){\n const _filters0 = listviewFiltersFunction(filters, api.data.$self.__super);\n if(_filters0 && _filters0.length){\n filters.push(_filters0);\n }\n }\n \n const filtersFunction = ").concat(field.filtersFunction||field._filtersFunction,";\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$self.__super);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n\n const enable_tree = ").concat(refObjectConfig.enable_tree,";\n if(enable_tree){\n pageSize = 10000;\n }\n if(fieldValue && _.isArray(fieldValue) && fieldValue.length > pageSize){\n pageSize = fieldValue.length;\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 return api;\n ");source.adaptor="\n const enable_tree = ".concat(refObjectConfig.enable_tree,";\n const op = api.data.$self.op;\n if(!_.isEmpty(op)){\n // op\u4E0D\u4E3A\u7A7A\uFF0C\u8868\u793A\u5904\u4E8E\u5B57\u6BB5\u521D\u59CB\u7F16\u8F91\u72B6\u6001\uFF0C\u4E0D\u662F\u70B9\u51FB\u540E\u51FA\u73B0\u5F39\u7A97\u72B6\u6001\u3002\n // \u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528_.pick\u51FD\u6570\u8BA9payload\u53EA\u8FD4\u56DElabelField\u548CvalueField\uFF0C\u56E0\u4E3A\u5B57\u6BB5\u4E0A\u914D\u7F6E\u7684amis autoFill\u529F\u80FD\u53EF\u80FD\u4F9D\u8D56\u4E86\u5176\u4ED6\u5B57\u6BB5\n /*\n const rows = _.map(payload.data.rows, (item)=>{\n return _.pick(item, [\"").concat(referenceTo.labelField.name,"\", \"").concat(referenceTo.valueField.name,"\"]);\n })\n payload.data.rows = rows;\n */\n if(enable_tree){\n const rows = _.map(payload.data.rows, (item)=>{\n if (!item.children) {\n return { ...item, children: [] };\n } else {\n return item;\n }\n })\n payload.data.rows = rows;\n }\n return payload;\n }\n if(!payload.data.rows){\n payload.data.rows = [];\n }\n if(enable_tree){\n const records = payload.data.rows;\n const treeRecords = [];\n\n const getParentIds = (records)=>{\n const ids = _.map(records, (item)=>{\n return item._id;\n });\n const parents = _.filter(records,(record)=>{\n return !record.parent || !_.includes(ids,record.parent);\n })\n const parentsIds = _.map(parents,(item)=>{\n return item._id;\n })\n return parentsIds;\n }\n const getChildren = (records, childrenIds)=>{\n if(!childrenIds){\n return;\n }\n const children = _.filter(records, (record)=>{\n return _.includes(childrenIds, record._id)\n });\n _.each(children, (item)=>{\n if(item.children){\n item.children = getChildren(records, item.children)\n }else{\n item.children = [];\n }\n })\n return children;\n }\n\n const parentIds = getParentIds(records);\n _.each(records, (record)=>{\n if(!record.parent || _.includes(parentIds, record._id)){\n treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));\n }\n });\n payload.data.rows = treeRecords;\n }\n const result = payload.data.rows;\n if(result && result.length){\n const updatedResult = _.map(result, (element) => {\n const data = { ...element };\n // image\u5B57\u6BB5\u503C\u6DFB\u52A0URL\u524D\u7F00\n ").concat(getScriptForAddUrlPrefixForImgFields(___namespace.values(refObjectConfig.fields)),"\n return data;\n });\n payload.data.rows = updatedResult;\n }\n return payload;\n ");if(field.optionsFunction||field._optionsFunction){source.adaptor="\n payload.data.rows = eval(".concat(field.optionsFunction||field._optionsFunction,")(api.data.$self);\n return payload;\n ");}top=20;if(refObjectConfig.paging&&refObjectConfig.paging.enabled===false){top=1000;}pickerSchema=null;labelFieldName=refObjectConfig.NAME_FIELD_KEY||'name';// organizations 对象的历史遗留问题, fullname 被标记为了 名称字段. 在此处特殊处理.
|
|
709
717
|
if(refObjectConfig.name==='organizations'){labelFieldName='name';}_context109.next=45;return getTableSchema$1(refObjectConfig,tableFields,_objectSpread({labelFieldName:labelFieldName,top:top,isLookup:true,enable_tree:refObjectConfig.enable_tree},ctx));case 45:pickerSchema=_context109.sent;pickerSchema.affixHeader=false;pickerSchema.headerToolbar=getObjectHeaderToolbar(refObjectConfig,fieldsArr,ctx.formFactor,{isLookup:true,keywordsSearchBoxName:keywordsSearchBoxName});if(referenceTo.objectName==="space_users"&&field.reference_to_field==="user"){pickerSchema.headerToolbar.push(getLookupSapceUserTreeSchema(isMobile));pickerSchema.className=pickerSchema.className||""+" steedos-select-user";}isAllowCreate=refObjectConfig.permissions.allowCreate;isCreate=___namespace.isBoolean(field.create)?field.create:true;// lookup字段配置过滤条件就强制不显示新建按钮
|
|
710
718
|
isHasFilters=field.filters||field.filtersFunction||field._filtersFunction?true:false;if(!(isAllowCreate&&isCreate&&!isHasFilters)){_context109.next=58;break;}_context109.next=55;return getSchema$5(refObjectConfig,{appId:ctx.appId,objectName:refObjectConfig.name,formFactor:ctx.formFactor});case 55:new_button=_context109.sent;new_button.align="right";// 保持快速搜索放在最左侧,新建按钮往里插,而不是push到最后
|
|
711
719
|
pickerSchema.headerToolbar.splice(pickerSchema.headerToolbar.length-1,0,new_button);case 58:pickerSchema.footerToolbar=refObjectConfig.enable_tree?[]:getObjectFooterToolbar(refObjectConfig,ctx.formFactor,{isLookup:true});if(!(ctx.filterVisible!==false)){_context109.next=63;break;}_context109.next=62;return getObjectFilter(refObjectConfig,fields,_objectSpread(_objectSpread({},ctx),{},{isLookup:true,keywordsSearchBoxName:keywordsSearchBoxName}));case 62:pickerSchema.filter=_context109.sent;case 63:pickerSchema.data=Object.assign({},pickerSchema.data,{"&":"$$","objectName":refObjectConfig.name,"uiSchema":refObjectConfig,"listName":listName,// 需要按视图取可搜索项
|
|
@@ -714,11 +722,11 @@ pickerSchema.headerToolbar=pickerSchema.headerToolbar&&pickerSchema.headerToolba
|
|
|
714
722
|
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),modalMode:'dialog',//TODO 设置 dialog 或者 drawer,用来配置弹出方式
|
|
715
723
|
source:source,size:"lg",pickerSchema:pickerSchema,joinValues:false,extractValue:true};if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context109.next=76;break;}_context109.next=75;return getLookupTpl(field,ctx);case 75:data.tpl=_context109.sent;case 76:return _context109.abrupt("return",data);case 77:case"end":return _context109.stop();}}},_callee109);}));return _lookupToAmisPicker.apply(this,arguments);}function lookupToAmisSelect(_x185,_x186,_x187){return _lookupToAmisSelect.apply(this,arguments);}function _lookupToAmisSelect(){_lookupToAmisSelect=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee110(field,readonly,ctx){var _referenceTo$valueFie;var referenceTo,isMobile,valueFieldKey,apiInfo,defaultValueOptionsQueryData,refObjectConfig,queryFields,autoFillMapping,listView,listviewFilter,listviewFiltersFunction,sort,depend_on,sendOn,data,amisVersion,select_menuTpl,menuTpl;return _regeneratorRuntime().wrap(function _callee110$(_context110){while(1){switch(_context110.prev=_context110.next){case 0:_context110.next=2;return getReferenceTo(field);case 2:referenceTo=_context110.sent;isMobile=window.innerWidth<=768;valueFieldKey=referenceTo&&((_referenceTo$valueFie=referenceTo.valueField)===null||_referenceTo$valueFie===void 0?void 0:_referenceTo$valueFie.name)||'_id';// const labelFieldKey = referenceTo && referenceTo.labelField?.name || 'name';
|
|
716
724
|
_context110.t0=referenceTo;if(!_context110.t0){_context110.next=10;break;}_context110.next=9;return getUISchema(referenceTo.objectName);case 9:_context110.t0=_context110.sent;case 10:refObjectConfig=_context110.t0;if(!referenceTo){_context110.next=24;break;}queryFields=[Object.assign({},referenceTo.labelField,{alias:'label'}),Object.assign({},referenceTo.valueField,{alias:'value'})];// 把自动填充规则中依赖的字段也加到api请求中
|
|
717
|
-
autoFillMapping
|
|
725
|
+
autoFillMapping=field.auto_fill_mapping;if(autoFillMapping&&autoFillMapping.length){autoFillMapping.forEach(function(item){queryFields.push(refObjectConfig.fields[item.from]);});}// 字段值单独走一个请求合并到source的同一个GraphQL接口中
|
|
718
726
|
_context110.next=17;return getFindQuery({name:referenceTo.objectName},null,queryFields,{expand:false,alias:"defaultValueOptions",filters:"{__options_filters}",count:false});case 17:defaultValueOptionsQueryData=_context110.sent;_context110.next=20;return getApi({name:referenceTo.objectName},null,queryFields,{expand:false,alias:'options',queryOptions:"filters: {__filters}, top: {__top}, sort: \"{__sort}\""});case 20:apiInfo=_context110.sent;apiInfo.adaptor="\n const data = payload.data;\n var defaultValueOptions = data.defaultValueOptions;\n // \u5B57\u6BB5\u503C\u4E0B\u62C9\u9009\u9879\u5408\u5E76\u5230options\u4E2D\n data.options = _.unionWith(defaultValueOptions, data.options, function(a,b){\n return a[\"value\"]=== b[\"value\"];\n });\n delete data.defaultValueOptions;\n payload.data.options = data.options;\n return payload;\n ";_context110.next=25;break;case 24:apiInfo={method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"},"headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"}};case 25:listView=getLookupListView(refObjectConfig);listviewFilter=getListViewFilter(listView);listviewFiltersFunction=listView&&listView._filters;sort="";if(listView){sort=getListViewSort(listView);}// 列表视图搜索栏中,即inFilterForm=true时,不需要执行depend_on
|
|
719
727
|
if(apiInfo.url&&!ctx.inFilterForm){depend_on=[];sendOn=[];___namespace.each(field.depend_on,function(fName){depend_on.push("depend_on_".concat(fName,"=${").concat(fName,"}"));sendOn.push("this.".concat(fName));});if(depend_on.length>0){apiInfo.url="".concat(apiInfo.url,"&").concat(depend_on.join('&'));apiInfo.sendOn="".concat(sendOn.join(' && '));}}apiInfo.data.$term="$term";// apiInfo.data.$value = `$${field.name}.${referenceTo ? referenceTo.valueField.name : '_id'}`;
|
|
720
728
|
apiInfo.data.$value=ctx.isRefToMutiple?"$".concat(field.name,".ids"):"$".concat(field.name);___namespace.each(field.depend_on,function(fName){apiInfo.data[fName]="$".concat(fName);});apiInfo.data['$']="$$";apiInfo.data['rfield']="${object_name}";// [["_id", "=", "$${field.name}._id"],"or",["name", "contains", "$term"]]
|
|
721
|
-
apiInfo.requestAdaptor="\n ".concat(listviewFilter&&!ctx.inFilterForm?"var filters = ".concat(JSON.stringify(listviewFilter),";"):'var filters = [];',"\n var top = 200;\n if(api.data.$term){\n filters = [[\"").concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.NAME_FIELD_KEY)||'name',"\", \"contains\", api.data.$term]];\n }\n // else if(api.data.$value){\n // filters = [[\"_id\", \"=\", api.data.$value]];\n // }\n\n var fieldFilters = ").concat(JSON.stringify(field.filters),";\n var currentAmis = amisRequire('amis');\n //\u9012\u5F52fieldFilters\u6570\u7EC4\uFF0C\u68C0\u67E5\u6BCF\u4E00\u4E2A\u5143\u7D20\uFF0C\u5224\u65AD\u82E5\u662F\u516C\u5F0F\uFF0C\u5C31\u4EC5\u628A\u5B83\u89E3\u6790\n function traverseNestedArray(arr) {\n for (let i = 0; i < arr.length; i++) {\n if (Array.isArray(arr[i])) {\n // \u5982\u679C\u5F53\u524D\u5143\u7D20\u662F\u6570\u7EC4\uFF0C\u5219\u9012\u5F52\u8C03\u7528\u81EA\u8EAB\u7EE7\u7EED\u904D\u5386\n traverseNestedArray(arr[i]);\n } else {\n // \u5982\u679C\u5F53\u524D\u5143\u7D20\u4E0D\u662F\u6570\u7EC4\uFF0C\u5219\u5904\u7406\u8BE5\u5143\u7D20\n // \u4E0B\u9762\u6B63\u5219\u7528\u4E8E\u5339\u914Damis\u516C\u5F0F${}\n if(/\\$\\{([^}]*)\\}/.test(arr[i])) {\n arr[i] = currentAmis.evaluate(arr[i], api.data.$);\n }\n }\n }\n }\n if(fieldFilters && fieldFilters.length){\n traverseNestedArray(fieldFilters);\n filters.push(fieldFilters);\n }\n\n if(").concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.objectName)==="space_users"," && ").concat(field.reference_to_field==="user","){\n if(filters.length > 0){\n filters = [ [\"user_accepted\", \"=\", true], \"and\", filters ]\n }else{\n filters = [[\"user_accepted\", \"=\", true]];\n }\n }\n\n const inFilterForm = ").concat(ctx.inFilterForm,";\n\n const listviewFiltersFunction = ").concat(listviewFiltersFunction,";\n\n if(listviewFiltersFunction && !inFilterForm){\n const _filters0 = listviewFiltersFunction(filters, api.data.$);\n if(_filters0 && _filters0.length){\n filters.push(_filters0);\n }\n }\n \n const filtersFunction = ").concat(field.filtersFunction||field._filtersFunction,";\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n var sort = \"").concat(sort,"\";\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', top).replace('{__sort}', sort.trim());\n\n var defaultValue = api.data.$value;\n var optionsFiltersOp = \"").concat(field.multiple?"in":"=","\";\n var optionsFilters = [[\"").concat(valueFieldKey,"\", optionsFiltersOp, []]];\n if (defaultValue && !api.data.$term) { \n const defaultValueOptionsQueryData = ").concat(JSON.stringify(defaultValueOptionsQueryData),";\n const defaultValueOptionsQuery = defaultValueOptionsQueryData && defaultValueOptionsQueryData.query && defaultValueOptionsQueryData.query.replace(/^{/,\"\").replace(/}$/,\"\");\n // \u5B57\u6BB5\u503C\u5355\u72EC\u8BF7\u6C42\uFF0C\u6CA1\u503C\u7684\u65F6\u5019\u5728\u8BF7\u6C42\u4E2D\u8FD4\u56DE\u7A7A\n optionsFilters = [[\"").concat(valueFieldKey,"\", optionsFiltersOp, defaultValue]];\n if(filters.length > 0){\n optionsFilters = [filters, optionsFilters];\n }\n if(defaultValueOptionsQuery){\n api.data.query = \"{\"+api.data.query.replace(/^{/,\"\").replace(/}$/,\"\")+\",\"+defaultValueOptionsQuery+\"}\";\n } \n }\n api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));\n return api;\n ");referenceTo?referenceTo.labelField.name:'';referenceTo?referenceTo.valueField.name:'';if(field.optionsFunction||field._optionsFunction){apiInfo.adaptor="\n var options = eval(".concat(field.optionsFunction||field._optionsFunction,")(api.data.$);\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n ");}else if(field.options){apiInfo.adaptor="\n var options = ".concat(JSON.stringify(field.options),"\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n ");}data={type:getAmisStaticFieldType('select',readonly),joinValues:false,extractValue:true,clearable:true,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
729
|
+
apiInfo.requestAdaptor="\n ".concat(listviewFilter&&!ctx.inFilterForm?"var filters = ".concat(JSON.stringify(listviewFilter),";"):'var filters = [];',"\n var top = 200;\n if(api.data.$term){\n filters = [[\"").concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.NAME_FIELD_KEY)||'name',"\", \"contains\", api.data.$term]];\n }\n // else if(api.data.$value){\n // filters = [[\"_id\", \"=\", api.data.$value]];\n // }\n\n var fieldFilters = ").concat(JSON.stringify(field.filters),";\n var currentAmis = amisRequire('amis');\n //\u9012\u5F52fieldFilters\u6570\u7EC4\uFF0C\u68C0\u67E5\u6BCF\u4E00\u4E2A\u5143\u7D20\uFF0C\u5224\u65AD\u82E5\u662F\u516C\u5F0F\uFF0C\u5C31\u4EC5\u628A\u5B83\u89E3\u6790\n function traverseNestedArray(arr) {\n for (let i = 0; i < arr.length; i++) {\n if (Array.isArray(arr[i])) {\n // \u5982\u679C\u5F53\u524D\u5143\u7D20\u662F\u6570\u7EC4\uFF0C\u5219\u9012\u5F52\u8C03\u7528\u81EA\u8EAB\u7EE7\u7EED\u904D\u5386\n traverseNestedArray(arr[i]);\n } else {\n // \u5982\u679C\u5F53\u524D\u5143\u7D20\u4E0D\u662F\u6570\u7EC4\uFF0C\u5219\u5904\u7406\u8BE5\u5143\u7D20\n // \u4E0B\u9762\u6B63\u5219\u7528\u4E8E\u5339\u914Damis\u516C\u5F0F${}\n if(/\\$\\{([^}]*)\\}/.test(arr[i])) {\n arr[i] = currentAmis.evaluate(arr[i], api.data.$self);\n }\n }\n }\n }\n if(fieldFilters && fieldFilters.length){\n traverseNestedArray(fieldFilters);\n filters.push(fieldFilters);\n }\n\n if(").concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.objectName)==="space_users"," && ").concat(field.reference_to_field==="user","){\n if(filters.length > 0){\n filters = [ [\"user_accepted\", \"=\", true], \"and\", filters ]\n }else{\n filters = [[\"user_accepted\", \"=\", true]];\n }\n }\n\n const inFilterForm = ").concat(ctx.inFilterForm,";\n\n const listviewFiltersFunction = ").concat(listviewFiltersFunction,";\n\n if(listviewFiltersFunction && !inFilterForm){\n const _filters0 = listviewFiltersFunction(filters, api.data.$);\n if(_filters0 && _filters0.length){\n filters.push(_filters0);\n }\n }\n \n const filtersFunction = ").concat(field.filtersFunction||field._filtersFunction,";\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n var sort = \"").concat(sort,"\";\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', top).replace('{__sort}', sort.trim());\n\n var defaultValue = api.data.$value;\n var optionsFiltersOp = \"").concat(field.multiple?"in":"=","\";\n var optionsFilters = [[\"").concat(valueFieldKey,"\", optionsFiltersOp, []]];\n if (defaultValue && !api.data.$term) { \n const defaultValueOptionsQueryData = ").concat(JSON.stringify(defaultValueOptionsQueryData),";\n const defaultValueOptionsQuery = defaultValueOptionsQueryData && defaultValueOptionsQueryData.query && defaultValueOptionsQueryData.query.replace(/^{/,\"\").replace(/}$/,\"\");\n // \u5B57\u6BB5\u503C\u5355\u72EC\u8BF7\u6C42\uFF0C\u6CA1\u503C\u7684\u65F6\u5019\u5728\u8BF7\u6C42\u4E2D\u8FD4\u56DE\u7A7A\n optionsFilters = [[\"").concat(valueFieldKey,"\", optionsFiltersOp, defaultValue]];\n if(filters.length > 0){\n optionsFilters = [filters, optionsFilters];\n }\n if(defaultValueOptionsQuery){\n api.data.query = \"{\"+api.data.query.replace(/^{/,\"\").replace(/}$/,\"\")+\",\"+defaultValueOptionsQuery+\"}\";\n } \n }\n api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));\n return api;\n ");referenceTo?referenceTo.labelField.name:'';referenceTo?referenceTo.valueField.name:'';if(field.optionsFunction||field._optionsFunction){apiInfo.adaptor="\n var options = eval(".concat(field.optionsFunction||field._optionsFunction,")(api.data.$);\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n ");}else if(field.options){apiInfo.adaptor="\n var options = ".concat(JSON.stringify(field.options),"\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n ");}data={type:getAmisStaticFieldType('select',readonly),joinValues:false,extractValue:true,clearable:true,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
722
730
|
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),// labelField: labelField,
|
|
723
731
|
// valueField: valueField,
|
|
724
732
|
// source: apiInfo,
|
|
@@ -727,9 +735,10 @@ autoComplete:apiInfo,searchable:true};amisVersion=getComparableAmisVersion();if(
|
|
|
727
735
|
// TODO:应该想办法把是否字段在子表组件内,即ctx.isInputTable,如果不在子表组件内不需要加source
|
|
728
736
|
data.source=apiInfo;delete data.autoComplete;}//删除xlink:href中的rootUrl前缀,解决客户端svg为空的问题
|
|
729
737
|
select_menuTpl="<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>";menuTpl="${icon ? `"+select_menuTpl+"` : label}";// TODO: 待amis修复了此bug, 就可以撤销添加menuTpl的判断。
|
|
730
|
-
if(!(isMobile&&field.multiple)){data.menuTpl=menuTpl;}if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context110.next=51;break;}_context110.next=50;return getLookupTpl(field,ctx);case 50:data.tpl=_context110.sent;case 51:return _context110.abrupt("return",data);case 52:case"end":return _context110.stop();}}},_callee110);}));return _lookupToAmisSelect.apply(this,arguments);}function getApi(_x188,_x189,_x190,_x191){return _getApi.apply(this,arguments);}function _getApi(){_getApi=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee111(object,recordId,fields,options){var data;return _regeneratorRuntime().wrap(function _callee111$(_context111){while(1){switch(_context111.prev=_context111.next){case 0:_context111.next=2;return getFindQuery(object,recordId,fields,options);case 2:data=_context111.sent;return _context111.abrupt("return",{method:"post",url:getApi$2(),data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}});case 4:case"end":return _context111.stop();}}},_callee111);}));return _getApi.apply(this,arguments);}function getAutoFill(_x192,_x193){return _getAutoFill.apply(this,arguments);}function _getAutoFill(){_getAutoFill=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee112(field,refObject){var autoFillMapping,fillMapping;return _regeneratorRuntime().wrap(function _callee112$(_context112){while(1){switch(_context112.prev=_context112.next){case 0:autoFillMapping
|
|
731
|
-
|
|
732
|
-
|
|
738
|
+
if(!(isMobile&&field.multiple)){data.menuTpl=menuTpl;}if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context110.next=51;break;}_context110.next=50;return getLookupTpl(field,ctx);case 50:data.tpl=_context110.sent;case 51:return _context110.abrupt("return",data);case 52:case"end":return _context110.stop();}}},_callee110);}));return _lookupToAmisSelect.apply(this,arguments);}function getApi(_x188,_x189,_x190,_x191){return _getApi.apply(this,arguments);}function _getApi(){_getApi=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee111(object,recordId,fields,options){var data;return _regeneratorRuntime().wrap(function _callee111$(_context111){while(1){switch(_context111.prev=_context111.next){case 0:_context111.next=2;return getFindQuery(object,recordId,fields,options);case 2:data=_context111.sent;return _context111.abrupt("return",{method:"post",url:getApi$2(),data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}});case 4:case"end":return _context111.stop();}}},_callee111);}));return _getApi.apply(this,arguments);}function getAutoFill(_x192,_x193){return _getAutoFill.apply(this,arguments);}function _getAutoFill(){_getAutoFill=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee112(field,refObject){var autoFillMapping,fillMapping;return _regeneratorRuntime().wrap(function _callee112$(_context112){while(1){switch(_context112.prev=_context112.next){case 0:autoFillMapping=field.auto_fill_mapping;if(!(autoFillMapping&&autoFillMapping.length)){_context112.next=5;break;}fillMapping={};if(field.multiple){autoFillMapping.forEach(function(item){//from的字段类型为lookup、master_detail、select时,需要保留数组格式;其他类型需要转变为字符串格式
|
|
739
|
+
if(___namespace.includes(["lookup","master_detail","select"],refObject.fields[item.from].type)){fillMapping[item.to]="${items | pick:".concat(item.from,"}");}else{fillMapping[item.to]="${items | pick:".concat(item.from," | join}");}});}else{autoFillMapping.forEach(function(item){fillMapping[item.to]="${".concat(item.from,"}");});}// let fieldsForApi = [];
|
|
740
|
+
// fieldsForApi.push(item.from);
|
|
741
|
+
// let api = {
|
|
733
742
|
// // "url": "/amis/api/mock2/form/autoUpdate?browser=${browser}&version=${version}",
|
|
734
743
|
// "url": `/api/v1/${refObject.name}/\${${field.name}}?fields=${JSON.stringify(fieldsForApi)}`,
|
|
735
744
|
// // "responseData": {
|
|
@@ -748,7 +757,7 @@ if(!readonly){_context113.next=7;break;}if(!(field.reference_to&&!field.isTableF
|
|
|
748
757
|
enableEnhancedLookup=___namespace.isBoolean(field.enable_enhanced_lookup)?field.enable_enhanced_lookup:refObject.enable_enhanced_lookup;amisVersion=getComparableAmisVersion();if(amisVersion>=3.6){// amis 3.6.3单选和多选的树picker都有bug(https://github.com/baidu/amis/issues/9279,https://github.com/baidu/amis/issues/9295),我们改amis源码修正了
|
|
749
758
|
// amis 3.6.3多选的下拉树组件有bug,多选树字段的选中值在编辑模式展开树时不会自动勾选树里面的节点,而是始终勾选显示在最外面的选中值选项(即defaultValueOptions),amis 3.2没有这个问题
|
|
750
759
|
// 这里强制禁用多选下拉树,统一改为弹出树,如果以后需要下拉树功能,可以把下拉树组件改为一次性加载所有树节点数据模式来跳过这个问题
|
|
751
|
-
if(!enableEnhancedLookup&&refObject.enable_tree&&field.multiple){enableEnhancedLookup=true;}}if(!(enableEnhancedLookup==true)){_context113.next=34;break;}_context113.next=31;return lookupToAmisPicker(field,readonly,ctx);case 31:amisSchema=_context113.sent;_context113.next=43;break;case 34:if(!refObject.enable_tree){_context113.next=40;break;}_context113.next=37;return lookupToAmisTreeSelect(field,readonly,Object.assign({},ctx,{labelField:((_referenceTo$labelFie=referenceTo.labelField)===null||_referenceTo$labelFie===void 0?void 0:_referenceTo$labelFie.name)||'name',valueField:((_referenceTo$valueFie2=referenceTo.valueField)===null||_referenceTo$valueFie2===void 0?void 0:_referenceTo$valueFie2.name)||'_id',objectName:referenceTo.objectName}));case 37:amisSchema=_context113.sent;_context113.next=43;break;case 40:_context113.next=42;return lookupToAmisSelect(field,readonly,ctx);case 42:amisSchema=_context113.sent;case 43:refLookupPage=refObject.pages&&refObject.pages.lookup;if(refLookupPage){if(refLookupPage.is_enable){pageAmisSchema=refLookupPage.amis_schema;if(typeof pageAmisSchema=='string'){pageAmisSchema=JSON.parse(pageAmisSchema);}amisSchema=___namespace.defaultsDeep({},pageAmisSchema,amisSchema);}}_context113.next=47;return getAutoFill(field);case 47:autoFill=_context113.sent;if(autoFill){amisSchema.autoFill=autoFill;// 这里不配置initAutoFill值,按amis规则initAutoFill默认值为fillIfNotSet处理--需要amis sdk 版本 > 3.6.3-patch.6(不包括)版本
|
|
760
|
+
if(!enableEnhancedLookup&&refObject.enable_tree&&field.multiple){enableEnhancedLookup=true;}}if(!(enableEnhancedLookup==true)){_context113.next=34;break;}_context113.next=31;return lookupToAmisPicker(field,readonly,ctx);case 31:amisSchema=_context113.sent;_context113.next=43;break;case 34:if(!refObject.enable_tree){_context113.next=40;break;}_context113.next=37;return lookupToAmisTreeSelect(field,readonly,Object.assign({},ctx,{labelField:((_referenceTo$labelFie=referenceTo.labelField)===null||_referenceTo$labelFie===void 0?void 0:_referenceTo$labelFie.name)||'name',valueField:((_referenceTo$valueFie2=referenceTo.valueField)===null||_referenceTo$valueFie2===void 0?void 0:_referenceTo$valueFie2.name)||'_id',objectName:referenceTo.objectName}));case 37:amisSchema=_context113.sent;_context113.next=43;break;case 40:_context113.next=42;return lookupToAmisSelect(field,readonly,ctx);case 42:amisSchema=_context113.sent;case 43:refLookupPage=refObject.pages&&refObject.pages.lookup;if(refLookupPage){if(refLookupPage.is_enable){pageAmisSchema=refLookupPage.amis_schema;if(typeof pageAmisSchema=='string'){pageAmisSchema=JSON.parse(pageAmisSchema);}amisSchema=___namespace.defaultsDeep({},pageAmisSchema,amisSchema);}}_context113.next=47;return getAutoFill(field,refObject);case 47:autoFill=_context113.sent;if(autoFill){amisSchema.autoFill=autoFill;// 这里不配置initAutoFill值,按amis规则initAutoFill默认值为fillIfNotSet处理--需要amis sdk 版本 > 3.6.3-patch.6(不包括)版本
|
|
752
761
|
// amisSchema.initAutoFill = false;
|
|
753
762
|
}return _context113.abrupt("return",amisSchema);case 50:case"end":return _context113.stop();}}},_callee113);}));return _lookupToAmis.apply(this,arguments);}function lookupToAmisSelectUser(_x197,_x198,_x199){return _lookupToAmisSelectUser.apply(this,arguments);}function _lookupToAmisSelectUser(){_lookupToAmisSelectUser=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee114(field,readonly,ctx){return _regeneratorRuntime().wrap(function _callee114$(_context114){while(1){switch(_context114.prev=_context114.next){case 0:return _context114.abrupt("return",getSelectUserSchema(field,readonly,ctx));case 1:case"end":return _context114.stop();}}},_callee114);}));return _lookupToAmisSelectUser.apply(this,arguments);}function lookupToAmisIdsPicker(_x200,_x201,_x202){return _lookupToAmisIdsPicker.apply(this,arguments);}function _lookupToAmisIdsPicker(){_lookupToAmisIdsPicker=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee115(field,readonly,ctx){return _regeneratorRuntime().wrap(function _callee115$(_context115){while(1){switch(_context115.prev=_context115.next){case 0:return _context115.abrupt("return",getIdsPickerSchema(field,readonly,ctx));case 1:case"end":return _context115.stop();}}},_callee115);}));return _lookupToAmisIdsPicker.apply(this,arguments);}function getIdsPickerSchema(_x203,_x204,_x205){return _getIdsPickerSchema.apply(this,arguments);}function _getIdsPickerSchema(){_getIdsPickerSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee116(field,readonly,ctx){var _fields2;var referenceTo,refObjectConfig,_ctx,idsDependOn,fields,tableFields,source,listView,sort,top,pickerSchema,data;return _regeneratorRuntime().wrap(function _callee116$(_context116){while(1){switch(_context116.prev=_context116.next){case 0:if(!ctx){ctx={};}_context116.next=3;return getReferenceTo(field);case 3:referenceTo=_context116.sent;if(referenceTo){_context116.next=6;break;}return _context116.abrupt("return");case 6:_context116.next=8;return getUISchema(referenceTo.objectName);case 8:refObjectConfig=_context116.sent;_ctx=ctx,idsDependOn=_ctx.idsDependOn;fields=(_fields2={},_defineProperty(_fields2,referenceTo.labelField.name,referenceTo.labelField),_defineProperty(_fields2,referenceTo.valueField.name,referenceTo.valueField),_fields2);tableFields=[referenceTo.labelField];_context116.next=14;return getApi(refObjectConfig,null,fields,{expand:true,alias:'rows',queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 14:source=_context116.sent;source.data.$term="$term";source.data.$self="$$";if(idsDependOn&&source.url&&!ctx.inFilterForm){source.sendOn="${".concat(idsDependOn," && ").concat(idsDependOn,".length}");source.url="".concat(source.url,"&depend_on_").concat(idsDependOn,"=${").concat(idsDependOn,"|join}");}listView=getLookupListView(refObjectConfig);sort="";if(listView){sort=getListViewSort(listView);}source.requestAdaptor="\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 1000;\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 if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", selfData.value.split(',')]];\n }else{\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", selfData.value]];\n }\n }\n\n var ids;\n var idsDependOn = \"").concat(idsDependOn,"\";\n if(idsDependOn){\n ids = api.data.$self[idsDependOn];\n }\n if(ids && ids.length){\n filters.push([\"").concat(referenceTo.valueField.name,"\", \"=\", ids]);\n }\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 return api;\n ");top=1000;pickerSchema=null;if(!(ctx.formFactor==='SMALL')){_context116.next=30;break;}_context116.next=27;return getListSchema$1(tableFields,_objectSpread(_objectSpread({top:top},ctx),{},{actions:false}));case 27:pickerSchema=_context116.sent;_context116.next=34;break;case 30:_context116.next=32;return getTableSchema$1(refObjectConfig,tableFields,_objectSpread({labelFieldName:refObjectConfig.NAME_FIELD_KEY,top:top,isLookup:true},ctx));case 32:pickerSchema=_context116.sent;pickerSchema.affixHeader=false;case 34:data={type:getAmisStaticFieldType('picker',readonly),labelField:referenceTo.labelField.name,valueField:referenceTo.valueField.name,modalMode:'dialog',source:source,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
754
763
|
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),size:"lg",pickerSchema:pickerSchema,joinValues:false,extractValue:true};if(field.multiple){data.multiple=true;data.extractValue=true;}if(ctx.value){data.value=ctx.value;}if(ctx.selectFirst!=undefined){data.selectFirst=ctx.selectFirst;}if(!readonly){_context116.next=42;break;}_context116.next=41;return getLookupTpl(field,ctx);case 41:data.tpl=_context116.sent;case 42:return _context116.abrupt("return",data);case 43:case"end":return _context116.stop();}}},_callee116);}));return _getIdsPickerSchema.apply(this,arguments);}if(typeof window!='undefined'){window.getReferenceTo=getReferenceTo;window.getReferenceToSync=getReferenceToSync;}/*
|