@steedos-widgets/amis-lib 6.3.0-beta.8 → 6.3.0-beta.9
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 +15 -16
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +15 -16
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +9 -9
- package/dist/index.umd.js.map +1 -1
- package/package.json +2 -2
package/dist/index.umd.js
CHANGED
|
@@ -132,7 +132,7 @@ if(!field.hidden&&!field.extra){columnItem=Object.assign({},{name:field.name,lab
|
|
|
132
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
|
|
133
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,// 用于判断是否在抽屉中
|
|
134
134
|
"recordLoaded":false// 重置数据加载状态
|
|
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","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));
|
|
136
136
|
if(!options.isLookup&&!options.isInputTable&&!___namespace.some(columns,{name:options.labelFieldName})){// 没有名称字段时显示序号字段为链接,lookup弹出的picker不需要此功能
|
|
137
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){// 左侧半行
|
|
138
138
|
lineChildrenClassName="steedos-listview-item-left truncate";if(item.field.is_wide){// 左侧全行样式可以单独写,如果需要配置两行省略号效果,可以加样式类 two-lines-truncate
|
|
@@ -653,14 +653,14 @@ defaults.headerSchema=null;/**
|
|
|
653
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
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
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,
|
|
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=45;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中不存在
|
|
657
657
|
columnField={extra:true,name:column};}case 25:if(columnField){// 列上的字段不认uiSchema.fields中定义的amis属性
|
|
658
|
-
columnField=Object.assign({},columnField,{amis:undefined});fields.push(columnField);}_context94.next=
|
|
659
|
-
});case
|
|
658
|
+
columnField=Object.assign({},columnField,{amis:undefined});fields.push(columnField);}_context94.next=43;break;case 28:if(!_$1.isObject(column)){_context94.next=43;break;}if(!(column.field.indexOf('.')>0)){_context94.next=41;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=39;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
|
+
});case 39:_context94.next=42;break;case 41:if(uiSchema.fields[column.field]){columnField=Object.assign({},uiSchema.fields[column.field],ctx,{width:column.width,wrap:column.wrap// wrap = true 是没效果的
|
|
660
660
|
});}else if(ctx.extra){// 配置列表视图extra_columns时允许字段是hidden的,hidden的字段在uiSchema.fields中不存在
|
|
661
|
-
|
|
662
|
-
|
|
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
|
|
661
|
+
columnField={extra:true,name:column.field};}case 42:if(columnField){// 列上的字段不认uiSchema.fields中定义的amis属性,用列上配置的amis覆盖
|
|
662
|
+
columnField=Object.assign({},columnField,{amis:column.amis});fields.push(columnField);}case 43:_context94.next=5;break;case 45:_context94.next=50;break;case 47:_context94.prev=47;_context94.t0=_context94["catch"](3);_iterator14.e(_context94.t0);case 50:_context94.prev=50;_iterator14.f();return _context94.finish(50);case 53:return _context94.abrupt("return",fields);case 54:case"end":return _context94.stop();}}},_callee94,null,[[3,47,50,53]]);}));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
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
665
|
// recordLoaded值会取父作用域中已经被设置为true的值(比如父级有RecordServic组件,在加载完数据后,父作用域中recordLoaded值为true)
|
|
666
666
|
// 这会造成表单内steedos field组件lookup字段中props.data取到的是父作用域中的数据
|
|
@@ -713,7 +713,7 @@ autoFillMapping=field.auto_fill_mapping;if(autoFillMapping&&autoFillMapping.leng
|
|
|
713
713
|
// F字段值变更后,虽然会自动填充值到T字段中,但是并不会触发T字段的source接口重新请求,这会造成T字段被填充后,可能会显示为字段id而不是label了,见issue:https://github.com/steedos/steedos-platform/issues/6601
|
|
714
714
|
// amis@6.2.2不需要配置trackExpression不会有#6601所示问题,但是更高版本6.3.0也会有,所以这里只能加上trackExpression避开相关bug。
|
|
715
715
|
source.trackExpression="${".concat(field.name,"}");source.data.$term="$term";source.data.$self="$$";// field.name可能是带点的名称,比如审批王中子表字段'instances.instances_submitter',如果不替换掉点,会造成审批王表单中新建子表行时报错
|
|
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.$);\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 被标记为了 名称字段. 在此处特殊处理.
|
|
717
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字段配置过滤条件就强制不显示新建按钮
|
|
718
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到最后
|
|
719
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,// 需要按视图取可搜索项
|
|
@@ -726,7 +726,7 @@ autoFillMapping=field.auto_fill_mapping;if(autoFillMapping&&autoFillMapping.leng
|
|
|
726
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
|
|
727
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'}`;
|
|
728
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"]]
|
|
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.$);\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目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
730
730
|
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),// labelField: labelField,
|
|
731
731
|
// valueField: valueField,
|
|
732
732
|
// source: apiInfo,
|