@steedos-widgets/amis-lib 1.0.2 → 1.0.5

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.
@@ -219,7 +219,7 @@
219
219
  }
220
220
  }
221
221
  return payload;
222
- `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(a.multiple=!0,a.joinValues=!1,a.extractValue=!0),a},_e=(e,a)=>(a?be:he)(e);async function ge(e){e=e.buttons;const a=[];if(b.each(e,e=>{b.isBoolean(e.visible)&&(e.visible=e.visible.toString()),a.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:function(e){let a=e.visible;if(e._visible&&(a=e._visible),a=b.isBoolean(a)?a.toString():a)return a.trim().startsWith("function")?a+"(objectName, _id, recordPermissions, data)":a;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}(e),className:"antd-Button--default"})}),!(a.length<1))return{type:"operation",label:"操作",fixed:"right",labelClassName:"text-center",className:"text-center steedos-listview-operation",buttons:[{type:"steedos-dropdown-button",label:"xxx",buttons:a,placement:"bottomLeft",id:"u:c2140a365019",onOpenApi:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",data:{$:"$$",objectName:"${objectName}",listViewId:"${listViewId}",appId:"${appId}",formFactor:"${formFactor}",context:"${context}"},responseData:{recordPermissions:"$$"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`
222
+ `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(a.multiple=!0,a.joinValues=!1,a.extractValue=!0),a},_e=(e,a)=>(a?be:he)(e);async function ge(e){e=e.buttons;const a=[];if(b.each(e,e=>{b.isBoolean(e.visible)&&(e.visible=e.visible.toString()),a.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:function(e){let a=e.visible;if(e._visible&&(a=e._visible),a=b.isBoolean(a)?a.toString():a)return a.trim().startsWith("function")?a+"(objectName, _id, recordPermissions, data)":a;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}(e),className:"antd-Button--default"})}),!(a.length<1))return{type:"operation",label:"操作",fixed:"right",labelClassName:"text-center",className:"text-center steedos-listview-operation w-20",buttons:[{type:"steedos-dropdown-button",label:"xxx",buttons:a,placement:"bottomRight",trigger:["click"],id:"u:c2140a365019",onOpenApi:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",data:{$:"$$",objectName:"${objectName}",listViewId:"${listViewId}",appId:"${appId}",formFactor:"${formFactor}",context:"${context}"},responseData:{recordPermissions:"$$"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`
223
223
  payload.recordPermissions = payload;
224
224
  return payload;
225
225
  `}}]}}async function we(e,a){var t,e=await async function(e,a){var t=[{name:"_index",type:"text",width:32,placeholder:""}];for(const r of e)if(!r.is_name&&r.name!==a.labelFieldName||"cms_files"!==a.objectName)if("toggle"===r.type)t.push({type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:!0,className:"whitespace-nowrap"});else if("avatar"===r.type||"image"===r.type||"file"===r.type)t.push({type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:!0,className:"whitespace-nowrap",...be(r)});else{var i=await v(r,a);let e="text";i?e="tpl":"html"===r.type&&(e="markdown"),r.hidden||r.extra||t.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:e,tpl:i,toggled:r.toggled,className:"textarea"===r.type?"w-56 whitespace-pre-wrap textarea":"whitespace-nowrap",html:"html"===r.type||null})}else t.push({type:"button",className:"whitespace-nowrap",label:`<%=data.versions ? data.name : "${r.label}"%>`,type:"button",actionType:"ajax",api:{url:"${context.rootUrl}/api/files/files/${versions[0]}?download=true",method:"get",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},responseType:"blob",dataType:"form-data"},id:"u:6c8291d1029f",level:"link"});return t}(e,a=a||{});return e.push(await ge(a)),{mode:"table",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:{perPage:(t=a).top||t.perPage||me.perPage},columns:e,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:`\${${a.labelFieldName}}`,autoFillHeight:!1}}async function ve(e,a,t){const i=[];let{globalFilter:r,filter:l,sort:n,top:o,setDataToComponentId:s=""}=t;l=(l=y.isArray(l)?y.map(l,function(e){return e.operation?[e.field,e.operation,e.value]:e}):l)||[],y.each(a,function(e){e.searchable&&i.push(e.name)});const d={},c=[];a.forEach(e=>{y.includes(["image","avatar","file"],e.type)&&(c.push(e.name),d[e.name]={name:e.name,type:e.type,multiple:e.multiple})});t=e.key_field||"_id",a=await async function(e,a,t,i){e=await p(e,a,t,i);return{method:"post",url:u(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}(e,null,a,{alias:"rows",limit:o,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});return a.data.$term="$term",a.data.$self="$$",a.data.filter="$filter",a.data.loaded="${loaded}",a.data.listViewId="${listViewId}",a.requestAdaptor=`
@@ -576,7 +576,7 @@
576
576
  `,i&&i.labelField.name,i&&i.valueField.name,e._optionsFunction&&(r.adaptor=`
577
577
  payload.data.options = eval(${e._optionsFunction})(api.data);
578
578
  return payload;
579
- `);i={type:N("select",a),joinValues:!1,extractValue:!0,autoComplete:r};return!y.has(e,"defaultValue")||y.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(i.value=e.defaultValue),e.multiple&&(i.multiple=!0,i.extractValue=!0),a&&(i.tpl=await w(e,t)),i}async function Ne(e,a,t,i){e=await p(e,a,t,i);return{method:"post",url:u(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function Fe(e,a,t){var i,r;return a?{type:N("picker",a),tpl:Z(e,t)}:!e.reference_to||y.isString(e.reference_to)||a?((i=await F(e))?(r=await V(i.objectName),"space_users"===i.objectName?je:1==r.enable_enhanced_lookup?Se:l):l)(e,a,t):{type:"steedos-field-lookup",field:e,readonly:a,ctx:{}}}async function je(e,a,t){return $e(e,a,t)}const Oe=["created","created_by","modified","modified_by"];function ke(a,e){var t=Object.assign({subFields:[]},a),e=y.filter(e,function(e){return e.name.startsWith(a.name+".")});return t.subFields=e,t}function xe(a,e){var t=Object.assign({subFields:[]},a),e=y.filter(e,function(e){return e.name.startsWith(a.name+".")});return t.subFields=e,t}async function j(r,l,e){if(!y.includes(Oe,r.name)||1==e.showSystemFields){var a,t={name:e.fieldNamePrefix?""+e.fieldNamePrefix+r.name:r.name,label:r.label,labelRemark:r.inlineHelpText,required:(y.has(e,"required")?e:r).required};let i={};switch(r.type){case"text":i.type=N("text",l);break;case"textarea":i.type=N("textarea",l),i.tpl=`<b><%=data.${r.name}%></b>`;break;case"html":i={type:"editor",language:"html",value:r.defaultValue||""};break;case"select":i={type:N("select",l),joinValues:!1,options:function(e){const a=e.data_type||"text",t=[];return y.each(e.options,e=>{switch(a){case"number":t.push({label:e.label,value:Number(e.value)});break;case"text":t.push({label:e.label,value:String(e.value)});break;case"boolean":t.push({label:e.label,value:"false"!==e.value})}}),t}(r),extractValue:!0,clearable:!0,labelField:"label",valueField:"value",tpl:l?g(r):null},!y.has(r,"defaultValue")||y.isString(r.defaultValue)&&r.defaultValue.startsWith("{")||(a=r.data_type||"text",null!=r.defaultValue&&("text"===a?i.value=String(r.defaultValue):"number"===a?i.value=Number(r.defaultValue):"boolean"===a&&(i.value="false"!==r.defaultValue))),r.multiple&&(i.multiple=!0,i.extractValue=!0);break;case"boolean":i={type:N("checkbox",l),option:r.inlineHelpText,tpl:l?G(r):null};break;case"input-date-range":i={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:l?m(r):null};break;case"date":i={type:N("date",l),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:l?m(r):null};break;case"input-datetime-range":i={type:"input-datetime-range",inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSS[Z]",tpl:l?f(r):null,utc:!0};break;case"datetime":i={type:N("datetime",l),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSS[Z]",tpl:l?f(r):null,utc:!0};break;case"input-time-range":i={type:"input-time-range",inputFormat:"HH:mm",timeFormat:"1970-01-01THH:mm:00.000[Z]",format:"1970-01-01THH:mm:00.000[Z]",tpl:l?f(r):null};break;case"time":i={type:N("time",l),inputFormat:"HH:mm",timeFormat:"1970-01-01THH:mm:00.000[Z]",format:"1970-01-01THH:mm:00.000[Z]",tpl:l?f(r):null};break;case"currency":case"number":i=l?{type:"static-tpl",tpl:W(r)}:{type:N("number",l),min:r.min,max:r.max,precision:r.scale};break;case"input-array":i=Object.assign({},r,t);break;case"input-range":i={type:"input-range",min:r.min,max:r.max,value:[0,0],multiple:!0,showInput:!0};break;case"percent":i={type:N("number",l),min:r.min,max:r.max,precision:r.scale};break;case"password":i={type:N("password",l),tpl:l?X(r):null};break;case"lookup":case"master_detail":i=await Fe(r,l,e);break;case"autonumber":l&&(i={type:"static-text"});break;case"url":i={type:N("url",l)};break;case"email":i={type:N("email",l)};break;case"avatar":case"image":case"file":i=_e(r,l);break;case"formula":case"summary":l&&(i.type=N(r.data_type,l));break;case"code":i={type:"editor",language:r.language,value:r.defaultValue||""};break;case"toggle":i={type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:l};break;case"grid":i={type:"input-table",strictMode:!1,affixHeader:!1,editable:!l,addable:!l,removable:!l,draggable:!l,columns:[]},y.each(r.subFields,function(e){var a=e.name.replace(r.name+".$.","").replace(r.name+".",""),t=j(Object.assign({},e,{name:a}),l);t&&(delete t.name,delete t.label,i.columns.push({name:a,label:e.label,quickEdit:!l&&t}))})}return y.isEmpty(i)?void 0:(r.is_wide?i.className="col-span-2 m-1":i.className="m-1",l&&(i.className=i.className+" md:border-b"),i.labelClassName="text-left",l&&(i.quickEdit=!1),r.visible_on&&(i.visibleOn="$"+r.visible_on.substring(1,r.visible_on.length-1).replace(/formData./g,"")),Object.assign({},t,i,{clearValueOnHidden:!0,fieldName:r.name}))}}async function Ie(e){return{type:"button",label:"",icon:"fa fa-search",className:"bg-white p-2 rounded border-gray-300 text-gray-500",onEvent:{click:{actions:[{actionType:"setValue",args:{value:{showFieldsFilter:"${!showFieldsFilter}"}},componentId:"service_"+("listview_"+e.name)}]}}}}async function De(e,a,t){t=t||{};var i,r,l=[];for(i of a)b.includes(["grid","avatar","image","object","[object]","[Object]","[grid]","[text]","audio","file"],i.type)||(delete i.defaultValue,delete i.required,delete i.is_wide,delete i.readonly,delete i.hidden,delete i.omit,(r=await async function(e,a,t){let i=e,r=("grid"===i.type?i=await xe(e,a):"object"===e.type&&(i=await ke(e,a)),"__searchable__");if(i.name.indexOf(".")<0){e=b.cloneDeep(i),a=(b.includes(["textarea","html","code","autonumber"],i.type)&&(e.type="text"),"number"!==i.type&&"currency"!==i.type||(e.type="input-array",e.inline=!0,e.addable=!1,e.removable=!1,e.value=[null,null],e.items={type:"input-number"},e.is_wide=!0,r+="between__"),"date"===i.type&&(e.type="input-date-range",e.is_wide=!0,r+="between__"),"datetime"===i.type&&(e.type="input-datetime-range",e.is_wide=!0,r+="between__"),"time"===i.type&&(e.type="input-time-range",e.is_wide=!0,r+="between__"),"users"===i.reference_to&&(e.reference_to="space_users",e.reference_to_field="user"),e.readonly=!1,e.disabled=!1,e.multiple=!0,e.is_wide=!1,e.defaultValue=void 0,await j(e,!1,Object.assign({},t,{fieldNamePrefix:r,required:!1,showSystemFields:!0})));if(a)return a}}(i,a,{}))&&l.push(r));b.map(l,"name"),t.enableSearchableFieldsVisibleOn&&l.forEach(function(e){e.visibleOn=`this.filterFormSearchableFields && this.filterFormSearchableFields.indexOf("${e.fieldName}") > -1`});return{title:"",type:"form",name:"listview-filter-form",id:"listview_filter_form_"+e.name,mode:"normal",wrapWithPanel:!1,className:"sm:grid sm:gap-2 sm:grid-cols-4 mb-2",data:{"&":"${filterFormValues || {}}",...t.initData},body:l,onEvent:{broadcastSearchableFieldsChange:{actions:[{actionType:"custom",script:`
579
+ `);i={type:N("select",a),joinValues:!1,extractValue:!0,autoComplete:r};return!y.has(e,"defaultValue")||y.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(i.value=e.defaultValue),e.multiple&&(i.multiple=!0,i.extractValue=!0),a&&(i.tpl=await w(e,t)),i}async function Ne(e,a,t,i){e=await p(e,a,t,i);return{method:"post",url:u(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function Fe(e,a,t){var i,r;return a?{type:N("picker",a),tpl:Z(e,t)}:!e.reference_to||y.isString(e.reference_to)||a?((i=await F(e))?(r=await V(i.objectName),"space_users"===i.objectName?je:1==r.enable_enhanced_lookup?Se:l):l)(e,a,t):{type:"steedos-field-lookup",field:e,readonly:a,ctx:{}}}async function je(e,a,t){return $e(e,a,t)}const Oe=["created","created_by","modified","modified_by"];function ke(a,e){var t=Object.assign({subFields:[]},a),e=y.filter(e,function(e){return e.name.startsWith(a.name+".")});return t.subFields=e,t}function xe(a,e){var t=Object.assign({subFields:[]},a),e=y.filter(e,function(e){return e.name.startsWith(a.name+".")});return t.subFields=e,t}async function j(r,l,e){if(!y.includes(Oe,r.name)||1==e.showSystemFields){var a,t={name:e.fieldNamePrefix?""+e.fieldNamePrefix+r.name:r.name,label:r.label,labelRemark:r.inlineHelpText,required:(y.has(e,"required")?e:r).required};let i={};switch(r.type){case"text":i.type=N("text",l);break;case"textarea":i.type=N("textarea",l),i.tpl=`<b><%=data.${r.name}%></b>`;break;case"html":i={type:"editor",language:"html",value:r.defaultValue||""};break;case"select":i={type:N("select",l),joinValues:!1,options:function(e){const a=e.data_type||"text",t=[];return y.each(e.options,e=>{switch(a){case"number":t.push({label:e.label,value:Number(e.value)});break;case"text":t.push({label:e.label,value:String(e.value)});break;case"boolean":t.push({label:e.label,value:"false"!==e.value})}}),t}(r),extractValue:!0,clearable:!0,labelField:"label",valueField:"value",tpl:l?g(r):null},!y.has(r,"defaultValue")||y.isString(r.defaultValue)&&r.defaultValue.startsWith("{")||(a=r.data_type||"text",null!=r.defaultValue&&("text"===a?i.value=String(r.defaultValue):"number"===a?i.value=Number(r.defaultValue):"boolean"===a&&(i.value="false"!==r.defaultValue))),r.multiple&&(i.multiple=!0,i.extractValue=!0);break;case"boolean":i={type:N("checkbox",l),option:r.inlineHelpText,tpl:l?G(r):null};break;case"input-date-range":i={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:l?m(r):null};break;case"date":i={type:N("date",l),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:l?m(r):null};break;case"input-datetime-range":i={type:"input-datetime-range",inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSS[Z]",tpl:l?f(r):null,utc:!0};break;case"datetime":i={type:N("datetime",l),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSS[Z]",tpl:l?f(r):null,utc:!0};break;case"input-time-range":i={type:"input-time-range",inputFormat:"HH:mm",timeFormat:"1970-01-01THH:mm:00.000[Z]",format:"1970-01-01THH:mm:00.000[Z]",tpl:l?f(r):null};break;case"time":i={type:N("time",l),inputFormat:"HH:mm",timeFormat:"1970-01-01THH:mm:00.000[Z]",format:"1970-01-01THH:mm:00.000[Z]",tpl:l?f(r):null};break;case"currency":case"number":i=l?{type:"static-tpl",tpl:W(r)}:{type:N("number",l),min:r.min,max:r.max,precision:r.scale};break;case"input-array":i=Object.assign({},r,t);break;case"input-range":i={type:"input-range",min:r.min,max:r.max,value:[0,0],multiple:!0,showInput:!0};break;case"percent":i={type:N("number",l),min:r.min,max:r.max,precision:r.scale};break;case"password":i={type:N("password",l),tpl:l?X(r):null};break;case"lookup":case"master_detail":i=await Fe(r,l,e);break;case"autonumber":l&&(i={type:"static-text"});break;case"url":i={type:N("url",l)};break;case"email":i={type:N("email",l)};break;case"avatar":case"image":case"file":i=_e(r,l);break;case"formula":case"summary":l&&(i.type=N(r.data_type,l));break;case"code":i={type:"editor",language:r.language,value:r.defaultValue||""};break;case"toggle":i={type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:l};break;case"grid":i={type:"input-table",strictMode:!1,affixHeader:!1,editable:!l,addable:!l,removable:!l,draggable:!l,columns:[]},y.each(r.subFields,function(e){var a=e.name.replace(r.name+".$.","").replace(r.name+".",""),t=j(Object.assign({},e,{name:a}),l);t&&(delete t.name,delete t.label,i.columns.push({name:a,label:e.label,quickEdit:!l&&t}))})}return y.isEmpty(i)?void 0:(r.is_wide?i.className="col-span-2 m-1":i.className="m-1",l&&(i.className=i.className+" md:border-b"),i.labelClassName="text-left",l&&(i.quickEdit=!1),r.visible_on&&(i.visibleOn="$"+r.visible_on.substring(1,r.visible_on.length-1).replace(/formData./g,"")),Object.assign({},t,i,{clearValueOnHidden:!0,fieldName:r.name}))}}async function Ie(e){return{type:"button",label:"",icon:"fa fa-search",className:"bg-white p-2 rounded border-gray-300 text-gray-500",onEvent:{click:{actions:[{actionType:"setValue",args:{value:{showFieldsFilter:"${!showFieldsFilter}"}},componentId:"service_"+("listview_"+e.name)}]}}}}async function r(e,a,t){t=t||{};var i,r,l=[];for(i of a)b.includes(["grid","avatar","image","object","[object]","[Object]","[grid]","[text]","audio","file"],i.type)||(delete i.defaultValue,delete i.required,delete i.is_wide,delete i.readonly,delete i.hidden,delete i.omit,(r=await async function(e,a,t){let i=e,r=("grid"===i.type?i=await xe(e,a):"object"===e.type&&(i=await ke(e,a)),"__searchable__");if(i.name.indexOf(".")<0){e=b.cloneDeep(i),a=(b.includes(["textarea","html","code","autonumber"],i.type)&&(e.type="text"),"number"!==i.type&&"currency"!==i.type||(e.type="input-array",e.inline=!0,e.addable=!1,e.removable=!1,e.value=[null,null],e.items={type:"input-number"},e.is_wide=!0,r+="between__"),"date"===i.type&&(e.type="input-date-range",e.is_wide=!0,r+="between__"),"datetime"===i.type&&(e.type="input-datetime-range",e.is_wide=!0,r+="between__"),"time"===i.type&&(e.type="input-time-range",e.is_wide=!0,r+="between__"),"users"===i.reference_to&&(e.reference_to="space_users",e.reference_to_field="user"),e.readonly=!1,e.disabled=!1,e.multiple=!0,e.is_wide=!1,e.defaultValue=void 0,await j(e,!1,Object.assign({},t,{fieldNamePrefix:r,required:!1,showSystemFields:!0})));if(a)return a}}(i,a,{}))&&l.push(r));b.map(l,"name"),t.enableSearchableFieldsVisibleOn&&l.forEach(function(e){e.visibleOn=`this.filterFormSearchableFields && this.filterFormSearchableFields.indexOf("${e.fieldName}") > -1`});return{title:"",type:"form",name:"listview-filter-form",id:"listview_filter_form_"+e.name,mode:"normal",wrapWithPanel:!1,className:"sm:grid sm:gap-2 sm:grid-cols-4 mb-2",data:{"&":"${filterFormValues || {}}",...t.initData},body:l,onEvent:{broadcastSearchableFieldsChange:{actions:[{actionType:"custom",script:`
580
580
  const data = event.data;
581
581
  const listViewId = data.listViewId;
582
582
  const searchableFields = data.fields;
@@ -609,7 +609,7 @@
609
609
  });
610
610
  localStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));
611
611
  }
612
- `}]}}}}async function Ve(e,a,t){t=t||{};a=await De(e,a,Object.assign({},{enableSearchableFieldsVisibleOn:!0},t));return{type:"service",data:{listViewId:"${listViewId}"},id:"service_listview_filter_form_"+e.name,dataProvider:{inited:`
612
+ `}]}}}}async function De(e,a,t){t=t||{};a=await r(e,a,Object.assign({},{enableSearchableFieldsVisibleOn:!0},t));return{type:"service",data:{listViewId:"${listViewId}"},id:"service_listview_filter_form_"+e.name,dataProvider:{inited:`
613
613
  const searchableFieldsStoreKey = location.pathname + "/searchable_fields/" + data.listViewId ;
614
614
  let defaultSearchableFields = localStorage.getItem(searchableFieldsStoreKey);
615
615
  if(!defaultSearchableFields && data.uiSchema){
@@ -663,24 +663,24 @@
663
663
  });
664
664
  const searchableFieldsStoreKey = location.pathname + "/searchable_fields/" + data.listViewId;
665
665
  localStorage.setItem(searchableFieldsStoreKey, value);
666
- `},{actionType:"broadcast",eventName:"broadcastSearchableFieldsChange",args:{eventName:"broadcastSearchableFieldsChange"},data:{fields:"${event.data.fields}"}},{componentId:"",args:{},actionType:"closeDrawer"}]}},id:"u:14e7388fecd3",level:"primary"}],closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,data:{"&":"$$",objectName:"${objectName}",listName:"${listName}",context:"${context}",fields:"${filterFormSearchableFields}"}}}]}},id:"u:b96d84868a5a",level:"link"}],size:"xs",className:"space-x-4"},size:"xs",className:"slds-filters__footer slds-grid slds-shrink-none flex justify-between p-0"}],size:"xs",className:"slds-filters"},size:"xs",className:"border-gray slds-grid slds-grid_vertical slds-nowrap"},visibleOn:"this.showFieldsFilter",className:"px-1 py-1 bg-white b-b"}}function Ae(e){var a,t;return"string"==typeof e&&(a=/^{{(function.+)}}$/,t=/^{{(.+=>.+)}}$/,!("string"!=typeof e||!e.match(/^{{(.+)}}$/)||e.match(a)||e.match(t)))}function Te(a,e,t,i,r={}){var l,n;if(void 0===e&&(e={}),n=Pe(t),n=qe(e,n)||{},"string"!=typeof a)return a;l=a.substring(2,a.length-2),r=`
667
- var $user=${JSON.stringify(r)}; return `+l.replace(/\bformData\b/g,JSON.stringify(e).replace(/\bglobal\b/g,Ee)).replace(/\bglobal\b/g,JSON.stringify(i)).replace(new RegExp("\\b"+Ee+"\\b","g"),"global").replace(/rootValue/g,JSON.stringify(n));try{return Function(r)()}catch(e){return console.log(e,a,t),a}}const Ee="__G_L_O_B_A_L__",Pe=function(e){return"string"!=typeof e||1===(e=e.split(".")).length?"#":(e.pop(),e.join("."))},qe=function(e,a){return"#"!==a&&a?"string"==typeof a?b.get(e,a):void console.error("path has to be a string"):e||{}};async function Ce({type:e,pageId:a,appId:t,objectName:i="",recordId:r,formFactor:l="LARGE"}){e=await n(`/api/pageSchema/${e}?app=${t}&objectApiName=${i=i||""}&recordId=${r=r||""}&pageId=${a=a||""}&formFactor=`+l);if(e&&e.schema)return e}const O={getStandardNew:async(e,a)=>({type:"amis_button",amis_schema:await(async(e,a)=>{e="新建 "+e.label;let t={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"",id:"u:f8ad8ddf153a",mode:"edit",layout:"horizontal"};a=await Ce({type:"form",appId:a.appId,objectName:a.objectName,formFactor:a.formFactor});return{type:"service",body:[{type:"button",label:"新建",id:"u:standard_new",level:"default",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",data:{$master:"$$","&":"${defaultData}",objectName:"${objectName}",context:"${context}",listViewId:"${listViewId}"},title:e,bodyClassName:"",body:[t=a?_.isString(a.schema)?JSON.parse(a.schema):a.schema:t],id:"u:0b96577db93c",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"p-0 border-0",id:"u:aef99d937b10"}})(e,a)}),getStandardEdit:async(e,a)=>({type:"amis_button",amis_schema:await(async(e,a)=>{e="编辑 "+e.label;let t={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};a=await Ce({type:"form",appId:a.appId,objectName:a.objectName,formFactor:a.formFactor});return{type:"service",body:[{type:"button",label:"编辑",id:"u:standard_edit",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:e,bodyClassName:"",body:[t=a?_.isString(a.schema)?JSON.parse(a.schema):a.schema:t],id:"u:ee95697baa4f",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"",id:"u:3c5cbc0429bb"}})(e,a)}),getStandardDelete:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"删除",confirmText:"确定要删除此项目?",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:`
666
+ `},{actionType:"broadcast",eventName:"broadcastSearchableFieldsChange",args:{eventName:"broadcastSearchableFieldsChange"},data:{fields:"${event.data.fields}"}},{componentId:"",args:{},actionType:"closeDrawer"}]}},id:"u:14e7388fecd3",level:"primary"}],closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,data:{"&":"$$",objectName:"${objectName}",listName:"${listName}",context:"${context}",fields:"${filterFormSearchableFields}"}}}]}},id:"u:b96d84868a5a",level:"link"}],size:"xs",className:"space-x-4"},size:"xs",className:"slds-filters__footer slds-grid slds-shrink-none flex justify-between p-0"}],size:"xs",className:"slds-filters"},size:"xs",className:"border-gray slds-grid slds-grid_vertical slds-nowrap"},visibleOn:"this.showFieldsFilter",className:"px-1 py-1 bg-white b-b"}}let Ve=0;(new Date).toISOString().replace(/T.*$/,"");Ae(),Ae(),Ae();function Ae(){return String(Ve++)}function Te(e){var a,t;return"string"==typeof e&&(a=/^{{(function.+)}}$/,t=/^{{(.+=>.+)}}$/,!("string"!=typeof e||!e.match(/^{{(.+)}}$/)||e.match(a)||e.match(t)))}function Ee(a,e,t,i,r={}){var l,n;if(void 0===e&&(e={}),n=qe(t),n=Ce(e,n)||{},"string"!=typeof a)return a;l=a.substring(2,a.length-2),r=`
667
+ var $user=${JSON.stringify(r)}; return `+l.replace(/\bformData\b/g,JSON.stringify(e).replace(/\bglobal\b/g,Pe)).replace(/\bglobal\b/g,JSON.stringify(i)).replace(new RegExp("\\b"+Pe+"\\b","g"),"global").replace(/rootValue/g,JSON.stringify(n));try{return Function(r)()}catch(e){return console.log(e,a,t),a}}const Pe="__G_L_O_B_A_L__",qe=function(e){return"string"!=typeof e||1===(e=e.split(".")).length?"#":(e.pop(),e.join("."))},Ce=function(e,a){return"#"!==a&&a?"string"==typeof a?b.get(e,a):void console.error("path has to be a string"):e||{}};async function Be({type:e,pageId:a,appId:t,objectName:i="",recordId:r,formFactor:l="LARGE"}){e=await n(`/api/pageSchema/${e}?app=${t}&objectApiName=${i=i||""}&recordId=${r=r||""}&pageId=${a=a||""}&formFactor=`+l);if(e&&e.schema)return e}const O={getStandardNew:async(e,a)=>({type:"amis_button",amis_schema:await(async(e,a)=>{e="新建 "+e.label;let t={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"",id:"u:f8ad8ddf153a",mode:"edit",layout:"horizontal"};a=await Be({type:"form",appId:a.appId,objectName:a.objectName,formFactor:a.formFactor});return{type:"service",body:[{type:"button",label:"新建",id:"u:standard_new",level:"default",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",data:{$master:"$$","&":"${defaultData}",objectName:"${objectName}",context:"${context}",listViewId:"${listViewId}"},title:e,bodyClassName:"",body:[t=a?_.isString(a.schema)?JSON.parse(a.schema):a.schema:t],id:"u:0b96577db93c",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"p-0 border-0",id:"u:aef99d937b10"}})(e,a)}),getStandardEdit:async(e,a)=>({type:"amis_button",amis_schema:await(async(e,a)=>{e="编辑 "+e.label;let t={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};a=await Be({type:"form",appId:a.appId,objectName:a.objectName,formFactor:a.formFactor});return{type:"service",body:[{type:"button",label:"编辑",id:"u:standard_edit",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:e,bodyClassName:"",body:[t=a?_.isString(a.schema)?JSON.parse(a.schema):a.schema:t],id:"u:ee95697baa4f",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"",id:"u:3c5cbc0429bb"}})(e,a)}),getStandardDelete:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"删除",confirmText:"确定要删除此项目?",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:`
668
668
  if(payload.errors){
669
669
  payload.status = 2;
670
670
  payload.msg = payload.errors[0].message;
671
671
  }
672
672
  return payload;
673
- `},messages:{success:"删除成功",failed:"删除失败"}},actionType:"ajax"},{componentId:"",args:{url:"/app/${app_id}/${objectName}/grid/all",blank:!1},actionType:"link",expression:"!!!listViewId"},{componentId:"listview_"+e.name,actionType:"reload",expression:"!!listViewId"}]}}}],regions:["body"]}}),getStandardDeleteMany:async(e,a)=>({type:"script",todo:function(){var{appId:e,objectName:a,uiSchema:t}=this,e=(this.scope||SteedosUI?.getRef(`amis-${e}-${a}-listview`)).getComponentById("listview_"+t.name);console.log("listViewRef",e),_.isEmpty(e.props.store.toJSON().selectedItems)?e.handleAction({},{actionType:"toast",toast:{items:[{position:"top-right",body:"请选择要删除的项"}]}}):e.handleBulkAction(e.props.store.toJSON().selectedItems,[],{},e.props.bulkActions[0])}}),getStandardImportData:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",body:[{type:"button",label:"导入数据",id:"u:import_data",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:"导入数据",body:[{type:"form",mode:"edit",persistData:!1,promptPageLeave:!0,name:"form_edit_data_import",debug:!1,title:"",submitText:"",api:{method:"post",url:"${context.rootUrl}/graphql",data:{objectName:"queue_import_history",$:"$$"},requestAdaptor:"\n const formData = api.data.$;\n for (key in formData){\n // image、select等字段清空值后保存的空字符串转换为null。\n if(formData[key] === ''){\n formData[key] = null;\n }\n }\n const objectName = api.data.objectName;\n const fieldsName = Object.keys(formData);\n delete formData.created;\n delete formData.created_by;\n delete formData.modified;\n delete formData.modified_by;\n delete formData._display;\n delete formData.success_count;\ndelete formData.failure_count;\ndelete formData.total_count;\ndelete formData.start_time;\ndelete formData.end_time;\ndelete formData.state;\ndelete formData.error;\ndelete formData.created;\ndelete formData.created_by;\ndelete formData.modified;\ndelete formData.modified_by;\n \n \n let fileFieldsKeys = [\"file\"];\n let fileFields = {\"file\":{\"name\":\"file\"}};\n fileFieldsKeys.forEach((item)=>{\n let fileFieldValue = formData[item];\n if(fileFieldValue){\n // 因为表单初始化接口的接收适配器中为file字段值重写了值及格式(为了字段编辑时正常显示附件名、点击附件名正常下载),所以保存时还原(为了字段值保存时正常保存id)。\n if(fileFields[item].multiple){\n if(fileFieldValue instanceof Array && fileFieldValue.length){\n formData[item] = fileFieldValue.map((value)=>{ \n if(typeof value === 'object'){\n return value.value;\n }else{\n return value;\n }\n });\n }\n }else{\n formData[item] = typeof fileFieldValue === 'object' ? fileFieldValue.value : fileFieldValue;\n }\n }\n })\n \n let query = `mutation{record: ${objectName}__insert(doc: {__saveData}){_id}}`;\n if(formData.recordId && formData.recordId !='new'){\n query = `mutation{record: ${objectName}__update(id: \"${formData._id}\", doc: {__saveData}){_id}}`;\n };\n delete formData._id;\n let __saveData = JSON.stringify(JSON.stringify(formData));\n \n api.data = {query: query.replace('{__saveData}', __saveData)};\n return api;\n ",responseData:{recordId:"${record._id}"},adaptor:"console.log('payload', payload)\n return payload;\n ",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},dataType:"json"},initFetch:!0,body:[{type:"fieldSet",title:"通用",collapsable:!0,body:[{name:"object_name",label:"导入对象",required:!1,type:"select",joinValues:!1,extractValue:!0,autoComplete:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:"{options:objects(filters: {__filters}, top: {__top}){_id label:label value:name},count:objects__count(filters:{__filters})}",$term:"$term",$value:"$object_name.name",$:"$$",rfield:"${object_name}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:"\n var filters = '[]';\n var top = 10;\n if(api.data.$term){\n filters = '[\"name\", \"contains\", \"'+ api.data.$term +'\"]';\n }else if(api.data.$value){\n filters = '[\"_id\", \"=\", \"'+ api.data.$value +'\"]';\n }\n api.data.query = api.data.query.replace(/{__filters}/g, filters).replace('{__top}', top);\n return api;\n "},className:"m-1",labelClassName:"text-left",clearValueOnHidden:!1,id:"u:04295fee3896",multiple:!1,hidden:!0},{name:"queue_import",label:"数据导入",required:!0,type:"picker",labelField:"description",valueField:"_id",modalMode:"dialog",source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:queue_import(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,description,object_name,encoding,template_url,_display:_ui{object_name,encoding}},count:queue_import__count(filters:{__filters})}',$term:"$term",$self:"$$"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n 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 var allowSearchFields = [\"description\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value?.indexOf(',') > 0){\n filters = [[\"_id\", \"=\", selfData.value.split(',')]];\n }else{\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\n })\n }\n\n const filtersFunction = function(filters, values){return ['object_name', '=', values.object_name]};\n\n if(filtersFunction){\n const _filters = filtersFunction(filters, api.data.$self.__super.__super);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\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 ",adaptor:"\n const enable_tree = undefined;\n if(enable_tree){\n const records = payload.data.rows;\n const treeRecords = [];\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 }\n })\n return children;\n }\n\n _.each(records, (record)=>{\n if(!record.parent){\n treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));\n }\n });\n payload.data.rows = treeRecords;\n }\n return payload;\n "},size:"lg",pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:{perPage:20},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"description",label:"导入描述",type:"tpl",tpl:'<a href="/app/undefined/undefined/view/${undefined}">${description}</a>',className:"whitespace-nowrap",html:null},{name:"object_name",label:"导入对象",type:"tpl",tpl:'<a href="/app/undefined/${_display.object_name.objectName}/view/${_display.object_name.value}">${_display.object_name.label}</a>',className:"whitespace-nowrap",html:null},{name:"encoding",label:"字符代码",type:"tpl",tpl:"<div>${_display.encoding}</div>",className:"whitespace-nowrap",html:null},{name:"template_url",label:"导入模板",type:"markdown",className:"whitespace-nowrap",html:!0},null],syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,autoFillHeight:!1},joinValues:!1,extractValue:!0,className:"m-1",labelClassName:"text-left",clearValueOnHidden:!0,id:"u:401df27113e0"},{name:"file",label:"Excel文件",required:!0,type:"input-file",className:"m-1",labelClassName:"text-left",clearValueOnHidden:!0,useChunk:!1,receiver:{method:"post",url:"${context.rootUrl}/s3/files",data:{$:"$$",context:"${context}"},adaptor:'\n const { context } = api.body; \n var rootUrl = context.rootUrl + "/api/files/files/";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: payload._id,\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n ',headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}},id:"u:0213f2cc365b"}],id:"u:4899c260d667"}],panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"p-4 sm:p-0 steedos-amis-form",label:"对象表单",objectApiName:"queue_import_history",id:"u:e4ef598eed61",onEvent:{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:"已开始导入...",failed:"导入失败"}},actionType:"ajax",expression:"event.data.result"}]}},closeDialogOnSubmit:!0}],id:"u:dc05498d3bd4",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}},level:"default"}],regions:["body"],className:"p-0",id:"u:bd2f9c4e986f"}}),getStandardOpenView:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"查看",className:"border-none",onEvent:{click:{actions:[{componentId:"",args:{blank:!1,url:"/app/${app_id}/${objectName}/view/${_id}"},actionType:"link"}]}},id:"u:ef35c9ae1d19"}],regions:["body"]}})};function k(e){let a=e.visible;if(e._visible&&(a=e._visible),a=c.default.isBoolean(a)?a.toString():a)return a.trim().startsWith("function")?a+`.apply({
673
+ `},messages:{success:"删除成功",failed:"删除失败"}},actionType:"ajax"},{componentId:"",args:{url:"/app/${app_id}/${objectName}/grid/all",blank:!1},actionType:"link",expression:"!!!listViewId"},{componentId:"listview_"+e.name,actionType:"reload",expression:"!!listViewId"}]}}}],regions:["body"]}}),getStandardDeleteMany:async(e,a)=>({type:"script",todo:function(){var{appId:e,objectName:a,uiSchema:t}=this,e=this.scopeId||`amis-${e}-${a}-listview`,a=(this.scope||SteedosUI?.getRef(e)).getComponentById("listview_"+t.name);console.log("listViewRef",a),_.isEmpty(a.props.store.toJSON().selectedItems)?a.handleAction({},{actionType:"toast",toast:{items:[{position:"top-right",body:"请选择要删除的项"}]}}):a.handleBulkAction(a.props.store.toJSON().selectedItems,[],{},a.props.bulkActions[0])}}),getStandardImportData:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",body:[{type:"button",label:"导入数据",id:"u:import_data",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:"导入数据",body:[{type:"form",mode:"edit",persistData:!1,promptPageLeave:!0,name:"form_edit_data_import",debug:!1,title:"",submitText:"",api:{method:"post",url:"${context.rootUrl}/graphql",data:{objectName:"queue_import_history",$:"$$"},requestAdaptor:"\n const formData = api.data.$;\n for (key in formData){\n // image、select等字段清空值后保存的空字符串转换为null。\n if(formData[key] === ''){\n formData[key] = null;\n }\n }\n const objectName = api.data.objectName;\n const fieldsName = Object.keys(formData);\n delete formData.created;\n delete formData.created_by;\n delete formData.modified;\n delete formData.modified_by;\n delete formData._display;\n delete formData.success_count;\ndelete formData.failure_count;\ndelete formData.total_count;\ndelete formData.start_time;\ndelete formData.end_time;\ndelete formData.state;\ndelete formData.error;\ndelete formData.created;\ndelete formData.created_by;\ndelete formData.modified;\ndelete formData.modified_by;\n \n \n let fileFieldsKeys = [\"file\"];\n let fileFields = {\"file\":{\"name\":\"file\"}};\n fileFieldsKeys.forEach((item)=>{\n let fileFieldValue = formData[item];\n if(fileFieldValue){\n // 因为表单初始化接口的接收适配器中为file字段值重写了值及格式(为了字段编辑时正常显示附件名、点击附件名正常下载),所以保存时还原(为了字段值保存时正常保存id)。\n if(fileFields[item].multiple){\n if(fileFieldValue instanceof Array && fileFieldValue.length){\n formData[item] = fileFieldValue.map((value)=>{ \n if(typeof value === 'object'){\n return value.value;\n }else{\n return value;\n }\n });\n }\n }else{\n formData[item] = typeof fileFieldValue === 'object' ? fileFieldValue.value : fileFieldValue;\n }\n }\n })\n \n let query = `mutation{record: ${objectName}__insert(doc: {__saveData}){_id}}`;\n if(formData.recordId && formData.recordId !='new'){\n query = `mutation{record: ${objectName}__update(id: \"${formData._id}\", doc: {__saveData}){_id}}`;\n };\n delete formData._id;\n let __saveData = JSON.stringify(JSON.stringify(formData));\n \n api.data = {query: query.replace('{__saveData}', __saveData)};\n return api;\n ",responseData:{recordId:"${record._id}"},adaptor:"console.log('payload', payload)\n return payload;\n ",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},dataType:"json"},initFetch:!0,body:[{type:"fieldSet",title:"通用",collapsable:!0,body:[{name:"object_name",label:"导入对象",required:!1,type:"select",joinValues:!1,extractValue:!0,autoComplete:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:"{options:objects(filters: {__filters}, top: {__top}){_id label:label value:name},count:objects__count(filters:{__filters})}",$term:"$term",$value:"$object_name.name",$:"$$",rfield:"${object_name}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:"\n var filters = '[]';\n var top = 10;\n if(api.data.$term){\n filters = '[\"name\", \"contains\", \"'+ api.data.$term +'\"]';\n }else if(api.data.$value){\n filters = '[\"_id\", \"=\", \"'+ api.data.$value +'\"]';\n }\n api.data.query = api.data.query.replace(/{__filters}/g, filters).replace('{__top}', top);\n return api;\n "},className:"m-1",labelClassName:"text-left",clearValueOnHidden:!1,id:"u:04295fee3896",multiple:!1,hidden:!0},{name:"queue_import",label:"数据导入",required:!0,type:"picker",labelField:"description",valueField:"_id",modalMode:"dialog",source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:queue_import(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,description,object_name,encoding,template_url,_display:_ui{object_name,encoding}},count:queue_import__count(filters:{__filters})}',$term:"$term",$self:"$$"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n 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 var allowSearchFields = [\"description\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value?.indexOf(',') > 0){\n filters = [[\"_id\", \"=\", selfData.value.split(',')]];\n }else{\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\n })\n }\n\n const filtersFunction = function(filters, values){return ['object_name', '=', values.object_name]};\n\n if(filtersFunction){\n const _filters = filtersFunction(filters, api.data.$self.__super.__super);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\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 ",adaptor:"\n const enable_tree = undefined;\n if(enable_tree){\n const records = payload.data.rows;\n const treeRecords = [];\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 }\n })\n return children;\n }\n\n _.each(records, (record)=>{\n if(!record.parent){\n treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));\n }\n });\n payload.data.rows = treeRecords;\n }\n return payload;\n "},size:"lg",pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:{perPage:20},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"description",label:"导入描述",type:"tpl",tpl:'<a href="/app/undefined/undefined/view/${undefined}">${description}</a>',className:"whitespace-nowrap",html:null},{name:"object_name",label:"导入对象",type:"tpl",tpl:'<a href="/app/undefined/${_display.object_name.objectName}/view/${_display.object_name.value}">${_display.object_name.label}</a>',className:"whitespace-nowrap",html:null},{name:"encoding",label:"字符代码",type:"tpl",tpl:"<div>${_display.encoding}</div>",className:"whitespace-nowrap",html:null},{name:"template_url",label:"导入模板",type:"markdown",className:"whitespace-nowrap",html:!0},null],syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,autoFillHeight:!1},joinValues:!1,extractValue:!0,className:"m-1",labelClassName:"text-left",clearValueOnHidden:!0,id:"u:401df27113e0"},{name:"file",label:"Excel文件",required:!0,type:"input-file",className:"m-1",labelClassName:"text-left",clearValueOnHidden:!0,useChunk:!1,receiver:{method:"post",url:"${context.rootUrl}/s3/files",data:{$:"$$",context:"${context}"},adaptor:'\n const { context } = api.body; \n var rootUrl = context.rootUrl + "/api/files/files/";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: payload._id,\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n ',headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}},id:"u:0213f2cc365b"}],id:"u:4899c260d667"}],panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"p-4 sm:p-0 steedos-amis-form",label:"对象表单",objectApiName:"queue_import_history",id:"u:e4ef598eed61",onEvent:{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:"已开始导入...",failed:"导入失败"}},actionType:"ajax",expression:"event.data.result"}]}},closeDialogOnSubmit:!0}],id:"u:dc05498d3bd4",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}},level:"default"}],regions:["body"],className:"p-0",id:"u:bd2f9c4e986f"}}),getStandardOpenView:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"查看",className:"border-none",onEvent:{click:{actions:[{componentId:"",args:{blank:!1,url:"/app/${app_id}/${objectName}/view/${_id}"},actionType:"link"}]}},id:"u:ef35c9ae1d19"}],regions:["body"]}})};function k(e){let a=e.visible;if(e._visible&&(a=e._visible),a=c.default.isBoolean(a)?a.toString():a)return a.trim().startsWith("function")?a+`.apply({
674
674
  object: uiSchema
675
- }, [objectName, _id, recordPermissions, data])`:a;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}a={standard_delete_many:function(){var{listViewId:e,uiSchema:a,scopeId:t}=this,t=SteedosUI?.getRef(t||e).getComponentById("listview_"+a.name);c.default.isEmpty(t.props.store.toJSON().selectedItems)?t.handleAction({},{actionType:"toast",toast:{items:[{position:"top-right",body:"请选择要删除的项"}]}}):t.handleBulkAction(t.props.store.toJSON().selectedItems,[],{},t.props.bulkActions[0])}};const x=(a,t)=>{const i=a.permissions&&a.permissions.disabled_actions;let e=c.default.sortBy(c.default.values(a.actions),"sort");return c.default.has(a,"allow_customActions")&&(e=c.default.filter(e,e=>c.default.include(a.allow_customActions,e.name))),c.default.has(a,"exclude_actions")&&(e=c.default.filter(e,e=>!c.default.include(a.exclude_actions,e.name))),c.default.each(e,e=>{e.objectName=a.name,t.isMobile&&-1<["record","record_only"].indexOf(e.on)&&"standard_edit"!=e.name&&("record_only"==e.on?e.on="record_only_more":e.on="record_more")}),t.isMobile&&-1<["cms_files","cfs.files.filerecord"].indexOf(a.name)&&c.default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),c.default.filter(e,e=>c.default.indexOf(i,e.name)<0&&"standard_query"!=e.name)},Be=(e,a)=>{e=x(e,a);return c.default.filter(e,e=>"list"==e.on)},Le=(e,a)=>{e=x(e,a),a=c.default.filter(e,e=>"record"==e.on||"record_only"==e.on);return c.default.sortBy(a,"sort")},Re=(e,a)=>{e=x(e,a),a=c.default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return c.default.sortBy(a,"sort")},I=async(e,a)=>{e=x(e,a);return c.default.filter(e,e=>"record"==e.on||"list_item"==e.on||"record_more"===e.on)},ze=async(e,a)=>{e=x(e,a);return c.default.filter(e,e=>"list"==e.on)};var Je=(e,a)=>{if(e.todo)return c.default.isString(e.todo)&&c.default.startsWith(c.default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),c.default.isFunction(e.todo)?(a={objectName:a.objectName,object_name:a.objectName,object:a.uiSchema,record:a.record,recordId:a.recordId,record_id:a.recordId,...a,action:e},e.todo.apply(a,[a.objectName,a.recordId])):void 0},Me=Je;function Ue(t,e,a){var{icon:i,label:r}=t;const l=[];b.each(t.list_views,(e,a)=>{l.push({type:"button",label:e.label,actionType:"link",link:`/app/\${appId}/${t.name}/grid/`+a})});var n=Be(t,{}),n=b.map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:k(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),o=new RegExp("_","g");return{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class="slds-icon slds-icon_container slds-icon-standard-${i&&i.replace(o,"-")} slds-page-header__icon" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${i}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+r,inline:!1,wrapperComponent:"",className:"text-md leading-none text-black"},{type:"dropdown-button",className:"",label:"${uiSchema.list_views[listName].label}",rightIcon:"fa fa-caret-down",size:"sm",hideCaret:!0,btnClassName:"bg-transparent border-none text-xl font-bold p-0 text-black leading-none",buttons:l}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:{type:"flex",items:n},md:"auto"}],align:"between"}}async function He(e,a,t){var i="listview_"+e.name;return{type:"grid",align:"between",columns:[{body:[{type:"tpl",tpl:"${$count} 个项目",visibleOn:"this.$count >= 0",inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:14},id:"u:1661f8471235"}],md:"auto",valign:"middle"},{body:[await Ie(e),{type:"button",label:"",icon:"fa fa-refresh",actionType:"reload",target:i,className:"bg-white p-2 rounded border-gray-300 text-gray-500"}],md:"auto"}],className:""}}async function Ke(a,e,t){var i=b.keys(a.fields),i=b.sortBy(b.compact(b.map(i,e=>a.fields[e])),"sort_no");return await Ve(a,i,{isListviewInit:t.isListviewInit})}async function D(e,a,t){t=t||{};var i=Ue(e),r=await He(e);let l=[i,r],n="sm:rounded-tl sm:rounded-tr";t.onlyFirstLine?l=[i]:t.onlySecordLine&&(n="",l=[r]);i=[{type:"wrapper",body:l,className:`border-b bg-gray-100 ${n} `+(t.onlySecordLine&&"pt-0")}],r=await Ke(e,0,t);return i.push(r),i}async function Ye(e,a){var{name:t,label:i,icon:r}=e,l=Le(e,{}),n=Re(e,{recordId:a,objectName:t}),l=b.map(l,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:k(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),n=b.map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:k(e)})),n=(l.push({type:"steedos-dropdown-button",label:"",buttons:n,className:"slds-icon ml-1 border-gray-200 rounded-none"}),new RegExp("_","g")),n=[{type:"service",body:[{type:"panel",title:"标题",body:[],header:{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class='slds-icon slds-icon_container slds-icon-standard-${r&&r.replace(n,"-")}' src='\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${r}.svg'>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+i,inline:!1,wrapperComponent:"",style:{fontFamily:"",fontSize:13},className:"leading-none"},{type:"tpl",tpl:"${name}",inline:!1,wrapperComponent:"",style:{fontFamily:"",fontSize:20,fontWeight:"bold",textAlign:"left"},className:"leading-none"}]}]}],md:"auto"},{body:{type:"flex",items:l},md:"auto"}],align:"between"}],size:"xs"},affixFooter:!1,headerClassName:"",bodyClassName:"p-none"}],messages:{}}];return{type:"service",bodyClassName:"",name:"page",data:{context:{rootUrl:d(),tenantId:o(),authToken:s()},objectName:t,_id:a,recordPermissions:e.permissions,uiSchema:e},body:n}}async function We(e){var{icon:a,label:t}=e,e=await ze(e,{}),e=b.map(e,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:k(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),i=new RegExp("_","g");return{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class="slds-icon_small slds-icon_container slds-icon-standard-${a&&a.replace(i,"-")}" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${a}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:`<a href="/app/\${appId}/\${masterObjectName}/\${masterRecordId}/\${objectName}/grid?related_field_name=\${relatedKey}">${t}(\${$count})</a>`,inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:13,fontWeight:"bold"}}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:{type:"flex",items:e},md:"auto"}],align:"between"}],size:"xs",className:"bg-white p-t-sm p-b-sm px-4 border-b"}}const Ze=(e,a,t)=>{e=e.replace(/\./g,"_");t=(e=>{const a=["_id"];return e.push("record_permissions"),b.each(e,e=>{-1<e.indexOf(".")&&(e=e.split(".")[0]),a.push(""+e)}),""+a.join(" ")})(t);let i="";a=[`id: "${a}"`];return`{record:${e}__findOne${i=0<a.length?`(${a.join(",")})`:i}{${t}}}`},Ge=async(e,a,t)=>{return(await n("/graphql",{method:"post",body:JSON.stringify({query:Ze(e,a,t)})})).data.record};let r={},Xe;"undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=r),r=window.UI_SCHEMA_CACHE);const Qe=(e,a)=>{r[e]=a},ea=e=>b.cloneDeep(r[e]),aa=e=>b.has(r,e);function ta(e,a){let t=[];return t="SMALL"===a?b.isEmpty(e.mobile_columns)?b.slice(e.columns,0,4):e.mobile_columns:e.columns}function ia(e){let i="";return e&&e.sort&&e.sort.length&&b.each(e.sort,function(e,a){var t;b.isArray(e)?(t=e[0]+" "+(e[1]||""),t=0<a?","+t:t,i+=t):(t=e.field_name+" "+e.order,t=0<a?","+t:t,i+=t)}),i}async function V(a,e){if(a){if(!aa(a)||e){let t=null;try{if(!(t=Xe?await Xe(a,e):await n(`/service/api/@${a.replace(/\./g,"_")}/uiSchema`,{method:"get"})))return;Qe(a,t),b.each(t.list_views,(e,a)=>{e.name=a,b.has(e,"columns")||(e.columns=t.list_views.all.columns)})}catch(e){console.error("getUISchema",a,e),Qe(a,null)}}return ea(a)}}async function A(e,a){return(await V(e))?.fields[a]}async function ra(e,a){e=await V(e);return{uiSchema:e,amisSchema:await ue(e,a)}}async function T(e,a,t,i={}){var r=await V(a),l=b.find(r.list_views,(e,a)=>a===(t=t||a));if(!l)return{uiSchema:r};if(l.enable_amis_schema&&l.amis_schema){const u=b.isString(l.amis_schema)?JSON.parse(l.amis_schema):l.amis_schema;return{uiSchema:r,isCustomAmisSchema:!0,amisSchema:u}}var n=ta(l,i.formFactor),o=ia(l),s=i.defaults||{};!s.headerSchema&&i.showHeader&&(s.headerSchema=await D(r)),i.showHeader||(s.headerSchema=null);try{var d,c=location.pathname+"/crud/"+i.listViewId,p=localStorage.getItem(c);p&&(p=JSON.parse(p),d={},p.orderBy&&(d.orderBy=p.orderBy),p.orderDir&&(d.orderDir=p.orderDir),p.perPage&&(d.defaultParams={perPage:p.perPage}),s.listSchema=b.defaultsDeep({},d,s.listSchema||{}))}catch(e){console.error("本地存储中crud参数解析异常:",e)}i.defaults=s;const u={type:"steedos-object-table",objectApiName:a,columns:n,extraColumns:l.extra_columns,filters:l.filters,sort:o,ctx:i};return{uiSchema:r,amisSchema:u}}async function la(e,a,t,i={}){const r=await V(a);let l=i.sort;l||(o=i.sortField,s=i.sortOrder,o&&(l=o+" "+s||"asc"));let n=[];b.each(t,function(e){b.isString(e)&&r.fields[e]?n.push(r.fields[e]):b.isObject(e)&&r.fields[e.field]&&n.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}))});var o=i.extraColumns,s=(o&&b.each(o,function(e){b.isString(e)?n.push({extra:!0,name:e}):b.isObject(e)&&n.push({extra:!0,name:e.field})}),await S(r,n,{tabId:a,appId:e,objectName:a,...i,filter:i.filters,sort:l,buttons:await I(r,i)}));return{uiSchema:r,amisSchema:s}}const na=(e,a,t,i)=>{t=b.find(t.fields,e=>i===e?.name);return b.isString(t.reference_to)?t.multiple?[a]:a:{o:e,ids:[a]}};async function oa(a,i,t,r){var e=await V(i),l=[],n=[].concat(e.related_lists||[]);if(b.isEmpty(n))for(const m of[].concat(e.details||[])){var o,s,d=m.split("."),c=await V(d[0]);c&&(((o=await A(d[0],d[1]))._reference_to||o.reference_to&&!b.isString(o.reference_to))&&d[1],d[1],s=(o=await T(0,d[0],"all",{formFactor:r,buttons:await I(c,{isMobile:!1})})).amisSchema,c=await We(c),s.headerSchema=c,s.headerToolbar=[],s.columnsTogglable=!1,s.globalFilter=s.filters,delete s.ctx,o.amisSchema={type:"service",data:{masterObjectName:i,masterRecordId:"${recordId}",relatedKey:d[1],objectName:d[0],listViewId:`amis-\${appId}-${d[0]}-listview`},body:[{...s,data:{filter:["${relatedKey}","=","${masterRecordId}"],objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[d[1]]:na(i,t,o.uiSchema,d[1])}}}]},l.push({masterObjectName:i,object_name:d[0],foreign_key:d[1],schema:o}))}else for(const f of n){var p=f.related_field_fullname.split(".");let e=null;var u=await A(p[0],p[1]);if(u){e=u._reference_to||u.reference_to&&!b.isString(u.reference_to)?[[p[1]+"/o","=",i],[p[1]+"/ids","=",t]]:[""+p[1],"=",t];const y=await V(p[0]);if(y){let t=[];b.forEach(f.field_names,a=>{var e=b.find(y.fields,e=>e.name===a);e&&t.push(e)}),l.push({masterObjectName:i,object_name:p[0],foreign_key:p[1],schema:{uiSchema:y,amisSchema:await S(y,t,{tabId:i,appId:a,objectName:p[0],formFactor:r,globalFilter:e,buttons:await I(y,{isMobile:!1})})}})}}}return l}const E={};async function sa(e,a,t){return{type:"picker",label:"人员",name:a,id:t.id,modalMode:"dialog",joinValues:!1,source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:space_users(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,name,email,mobile},count:space_users__count(filters:{__filters})}',$term:"$term",$self:"$$"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n 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 var allowSearchFields = [\"name\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\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 "},pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["switch-per-page","pagination"],defaultParams:{perPage:50},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"_id",label:"ID",type:"text",toggled:!1},{name:"name",label:"姓名",sortable:!0,searchable:!0,type:"text"},{name:"email",label:"邮件",sortable:!0,type:"text",searchable:!0},{name:"mobile",label:"手机",type:"text",sortable:!0,searchable:!0}],syncLocation:!1,keepItemSelectionOnPageChange:!0},labelField:"name",valueField:"_id",size:"lg",extractValue:!0,className:"m-0",labelClassName:"text-left"}}const da=["last_year","this_year","next_year","last_quarter","this_quarter","next_quarter","last_month","this_month","next_month","last_week","this_week","next_week","yestday","today","tomorrow","last_7_days","last_30_days","last_60_days","last_90_days","last_120_days","next_7_days","next_30_days","next_60_days","next_90_days","next_120_days"],ca={equal:"=",not_equal:"!=",less:"<",less_or_equal:"<=",greater:">",greater_or_equal:">=",between:"between",not_between:"not_between",is_empty:"is_empty",is_not_empty:"is_not_empty",select_equals:"=",select_not_equals:"!=",select_any_in:"in",select_not_any_in:"<>",like:"contains",not_like:"notcontains",starts_with:"startswith",ends_with:"endswith"},pa=e=>_.has(e,"conjunction"),ua=e=>{const t=[],{conjunction:i,children:a}=e;return i&&a&&a.forEach(e=>{var a;0<t.length&&t.push(i),pa(e)?(a=ua(e))&&0<a.length&&t.push(a):(a=ma(e))&&t.push(a)}),t},ma=e=>{var a,{left:e,op:t,right:i}=e;if(e&&"field"===e.type&&t)return t.startsWith("between:")?(a=t.split(":"),[e.field,a[0],a[1]]):null!=i?[e.field,ca[t],i]:void 0},fa=a=>{var e;if(3===a.length)return"between"===(e=c.default.findKey(ca,e=>e===a[1]))&&c.default.includes(da,a[2])?{left:{type:"field",field:a[0]},op:e+":"+a[2]}:{left:{type:"field",field:a[0]},op:e,right:a[2]};console.warn("无效的filter:"+JSON.stringify(a))},ya=e=>!c.default.isArray(e)&&c.default.isObject(e)?[e.field,e.operation,e.value]:e,ba=e=>{e=ya(e);const a={conjunction:"and",children:[]};return e&&0!=e.length&&e.forEach(e=>{"or"===(e=ya(e))||"and"===e?a.conjunction=e:3===e.length&&-1==e.indexOf("and")&&-1==e.indexOf("or")?a.children.push(fa(e)):a.children.push(ba(e))}),a};const ha=e=>{const t=[];return b.each(e.options.split("\n"),e=>{var a=e.split(":");2==a.length?t.push({label:a[0],value:a[1]}):t.push({label:e,value:e})}),t},_a=(e,a)=>{const t={label:!0===a&&e.name,name:e.code,mode:"horizontal",className:"m-none p-none",disabled:"readonly"===e.permission};switch(e.type){case"input":e.is_textarea?t.type="textarea":t.type="input-text";break;case"number":t.type="input-number";break;case"date":t.type="input-date";break;case"dateTime":t.type="input-datetime";break;case"checkbox":t.type="checkbox";break;case"email":t.type="input-email",t.validations={isEmail:!0};break;case"url":t.type="input-url",t.validations={isUrl:!0};break;case"password":t.type="input-password",t.showCounter=!0;break;case"select":t.type="select",t.options=ha(e);break;case"user":case"group":t.type="input-text";break;case"radio":t.type="radios",t.options=ha(e);break;case"multiSelect":t.type="checkboxes",t.options=ha(e);break;case"odata":var i=e.formula.substr(1,e.formula.length-2);t.type="select",t.multiple=e.is_multiselect,t.labelField=i,t.valueField="$$",t.source={url:b.startsWith(e.url,"http")?e.url:"${context.rootUrl}"+e.url,method:"get",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};break;case"html":t.type="html";break;case"table":t.type="input-table",t.addable="readonly"!=e.permission,t.editable=t.addable,t.copyable=t.addable,t.columns=[],b.each(e.sfields,e=>{"hidden"!=e.type&&t.columns.push(_a(e,!0))});break;case"section":t.type="input-text"}return t},ga=t=>{const i=[];return b.each(t,e=>{var a;"table"!=e.type&&i.push({className:"td-title",align:"section"!=e.type?"center":"left",width:"section"!=e.type?"16%":"",colspan:"section"==e.type?4:"",body:[{type:"tpl",tpl:`<div style='font-size:20px'>${e.name}</div>`}]}),"section"!=e.type&&i.push((e=e,a=t.length,{background:"readonly"===e.permission?"":"rgba(255,255,0,.1)",colspan:"table"===e.type?4:3-2*(a-1),align:"left",className:"td-field",body:[_a(e)],style:{marginTop:"0",paddingTop:"0",paddingRight:"0",paddingBottom:"0",paddingLeft:"0",marginRight:"0",marginBottom:"0",marginLeft:"0"}}))}),i},wa=t=>{const a=[],i=[];let r=[];return b.each(t.fields,(e,a)=>{e.is_wide?(0!=r.length&&i.push(r),"table"==e.type&&i.push([Object.assign({},e,{type:"section"})]),(r=[]).push(e),i.push(r),r=[]):(r.push(e),2!=r.length&&a!==t.fields.length-1||(i.push(r),r=[]))}),b.each(i,e=>{a.push({background:"#F7F7F7",tds:ga(e)})}),a};function va(e){var r=[];return e.charCodeAt(0)===".".charCodeAt(0)&&r.push(""),e.replace(new RegExp("[^.[\\]]+|\\[(?:([^\"'][^[]*)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g"),function(e,a,t,i){return t?e=i.replace(/\\(\\)?/g,"$1"):a&&(e=a.trim()),r.push(e),""}),r}var P=function(){return(P=Object.assign||function(e){for(var a,t=1,i=arguments.length;t<i;t++)for(var r in a=arguments[t])Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r]);return e}).apply(this,arguments)};function $a(a,e){void 0===e&&(e=!0);var t=a&&a.__super?Object.create(a.__super,{__super:{value:a.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return e&&a&&Object.keys(a).forEach(function(e){return t[e]=a[e]}),t}function Sa(e){var a=typeof e;return e&&"string"!=a&&"number"!=a&&"boolean"!=a&&"function"!=a&&!Array.isArray(e)}e.absoluteUrl=function(e){return""+d()+e},e.amisRender=(e,a,t={},i={},r)=>{var l=amisRequire("amis/embed"),{router:r,assets:n}=r;return J(n),l.embed(e,a,t,Object.assign(z(r),i))},e.amisRootClick=(e,a)=>{"a"===a.target.nodeName.toLocaleLowerCase()&&a.target.href&&(a.preventDefault(),e.push(a.target.href))},e.cloneObject=$a,e.conditionsToFilters=e=>ua(e),e.createObject=function(e,a,t){var i=(e=e&&Object.isFrozen(e)?$a(e):e)?Object.create(e,P(P({},t),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,t);return a&&Sa(a)&&Object.keys(a).forEach(function(e){return i[e]=a[e]}),i},e.defaultsDeep=$,e.deleteVariable=function(e,a){if(e)if(e.hasOwnProperty(a))delete e[a];else{for(var t=va(a),a=t.pop();t.length;){var i=t.shift();if(!B.default(e[i])){if(e[i])throw new Error("目标路径不是纯对象,不能修改");break}e=e[i]=P({},e[i])}e&&e.hasOwnProperty&&e.hasOwnProperty(a)&&delete e[a]}},e.execute=Je,e.executeButton=Me,e.extendObject=function(e,a,t){var i=$a(e,t=void 0===t?!0:t);return a&&Object.keys(a).forEach(function(e){return i[e]=a[e]}),i},e.fetchAPI=n,e.filtersToConditions=e=>ba(e),e.getAmisObjectRelatedList=oa,e.getApp=async function(e){return await n(`/service/api/apps/${e}/menus`)},e.getApps=async function(){return await n("/service/api/apps/menus")},e.getAuthToken=s,e.getAuthorization=U,e.getButton=async(e,a,t)=>{var i=await V(e);if(i){var r=await x(i,t),r=c.default.find(r,e=>e.name===a);if(r)return"standard_edit"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_edit.visible.apply")?{label:r.label,name:r.name,on:r.on,...await O.getStandardEdit(i,t)}:"cms_files"!=e&&"standard_new"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_new.visible.apply")?{label:r.label,name:r.name,on:r.on,...await O.getStandardNew(i,t)}:"standard_delete"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_delete.visible.apply")?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await O.getStandardDelete(i,t)}:i.hasImportTemplates&&"standard_import_data"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await O.getStandardImportData(i,t)}:"standard_open_view"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await O.getStandardOpenView(i,t)}:"standard_delete_many"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await O.getStandardDeleteMany(i,t)}:r}},e.getButtonVisible=(a,e)=>{if(a._visible&&(c.default.startsWith(c.default.trim(a._visible),"function")?(window.eval("var fun = "+a._visible),a.visible=fun):Ae(a._visible)&&(a.visible=e=>{Te(a._visible,e.record,"#",{now:new Date},e.userSession)})),!c.default.isFunction(a.visible))return a.visible;try{return a.visible(e)}catch(e){}},e.getButtonVisibleOn=k,e.getButtons=x,e.getEnv=e=>E[e],e.getEnvs=()=>E,e.getEvn=z,e.getField=A,e.getFileSrc=function(e){return d()+"/api/files/files/"+e},e.getFlowFormSchema=e=>{return{type:"page",body:[{type:"service",data:{beijing:"20",tianjing:"19"},body:[{type:"tpl",id:"u:f5bb0ad602a6",tpl:`<div style='font-size:20px'>${e.title}</div>`,inline:!0,wrapperComponent:"",style:{fontFamily:"",fontSize:12,textAlign:"center"}},(e=e,{type:"table-view",trs:wa(e),id:"u:047f3669468b"})],id:"u:a381684e042b"}],id:"u:63849ea39e12",messages:{},pullRefresh:{},regions:["body"]}},e.getFormPageInitSchema=async function(e){return{type:"page",bodyClassName:"",regions:["body"],body:[(await ra(e,{recordId:"${recordId}"})).amisSchema]}},e.getFormSchema=ra,e.getImageSrc=function(e){return d()+"/api/files/images/"+e},e.getListPageInitSchema=async function(e,a,t){var i=await V(e);return b.first(b.keys(i.list_views)),{type:"page",bodyClassName:"",regions:["body"],body:[{type:"steedos-object-listview",objectApiName:e,columnsTogglable:!1,showHeader:!0,headerSchema:await D(i)}]}},e.getListSchema=T,e.getListViewButtons=Be,e.getListViewColumns=ta,e.getListViewItemButtons=I,e.getListViewSort=ia,e.getListviewInitSchema=async function(e,t,a){a=a||{};var i,r,l=await V(e),n=b.find(l.list_views,(e,a)=>a===t);let o={};return n&&(i=ta(n,a.formFactor),n=ia(n),(r=a.defaults||{}).headerSchema||(l=await D(l,0,{onlySecordLine:!0,isListviewInit:!0}),r.headerSchema=l),a.defaults=r,l=await la(null,e,i,{sort:n,...a}),delete(o=l.amisSchema).data.$master,delete o.data._id,delete o.data.recordPermissions,delete o.data.uiSchema),o},e.getNotifications=async()=>{var e=t(),e=`
675
+ }, [objectName, _id, recordPermissions, data])`:a;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}a={standard_delete_many:function(){var{listViewId:e,uiSchema:a,scopeId:t}=this,t=SteedosUI?.getRef(t||e).getComponentById("listview_"+a.name);c.default.isEmpty(t.props.store.toJSON().selectedItems)?t.handleAction({},{actionType:"toast",toast:{items:[{position:"top-right",body:"请选择要删除的项"}]}}):t.handleBulkAction(t.props.store.toJSON().selectedItems,[],{},t.props.bulkActions[0])}};const x=(a,t)=>{const i=a.permissions&&a.permissions.disabled_actions;let e=c.default.sortBy(c.default.values(a.actions),"sort");return c.default.has(a,"allow_customActions")&&(e=c.default.filter(e,e=>c.default.include(a.allow_customActions,e.name))),c.default.has(a,"exclude_actions")&&(e=c.default.filter(e,e=>!c.default.include(a.exclude_actions,e.name))),c.default.each(e,e=>{e.objectName=a.name,t.isMobile&&-1<["record","record_only"].indexOf(e.on)&&"standard_edit"!=e.name&&("record_only"==e.on?e.on="record_only_more":e.on="record_more")}),t.isMobile&&-1<["cms_files","cfs.files.filerecord"].indexOf(a.name)&&c.default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),c.default.filter(e,e=>c.default.indexOf(i,e.name)<0&&"standard_query"!=e.name)},Le=(e,a)=>{e=x(e,a);return c.default.filter(e,e=>"list"==e.on)},Re=(e,a)=>{e=x(e,a),a=c.default.filter(e,e=>"record"==e.on||"record_only"==e.on);return c.default.sortBy(a,"sort")},ze=(e,a)=>{e=x(e,a),a=c.default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return c.default.sortBy(a,"sort")},I=async(e,a)=>{e=x(e,a);return c.default.filter(e,e=>"record"==e.on||"list_item"==e.on||"record_more"===e.on)},Je=async(e,a)=>{e=x(e,a);return c.default.filter(e,e=>"list"==e.on)};var Me=(e,a)=>{if(e.todo)return c.default.isString(e.todo)&&c.default.startsWith(c.default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),c.default.isFunction(e.todo)?(a={objectName:a.objectName,object_name:a.objectName,object:a.uiSchema,record:a.record,recordId:a.recordId,record_id:a.recordId,...a,action:e},e.todo.apply(a,[a.objectName,a.recordId])):void 0},Ue=Me;function He(t,e,a){var{icon:i,label:r}=t;const l=[];b.each(t.list_views,(e,a)=>{l.push({type:"button",label:e.label,actionType:"link",link:`/app/\${appId}/${t.name}/grid/`+a})});var n=Le(t,{}),n=b.map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:k(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),o=new RegExp("_","g");return{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class="slds-icon slds-icon_container slds-icon-standard-${i&&i.replace(o,"-")} slds-page-header__icon" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${i}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+r,inline:!1,wrapperComponent:"",className:"text-md leading-none text-black"},{type:"dropdown-button",className:"",label:"${uiSchema.list_views[listName].label}",rightIcon:"fa fa-caret-down",size:"sm",hideCaret:!0,btnClassName:"bg-transparent border-none text-xl font-bold p-0 text-black leading-none",buttons:l}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:{type:"flex",items:n},md:"auto"}],align:"between"}}async function Ke(e,a,t){var i="listview_"+e.name;return{type:"grid",align:"between",columns:[{body:[{type:"tpl",tpl:"${$count} 个项目",visibleOn:"this.$count >= 0",inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:14},id:"u:1661f8471235"}],md:"auto",valign:"middle"},{body:[await Ie(e),{type:"button",label:"",icon:"fa fa-refresh",actionType:"reload",target:i,className:"bg-white p-2 rounded border-gray-300 text-gray-500"}],md:"auto"}],className:""}}async function Ye(a,e,t){var i=b.keys(a.fields),i=b.sortBy(b.compact(b.map(i,e=>a.fields[e])),"sort_no");return await De(a,i,{isListviewInit:t.isListviewInit})}async function We(e,a,t){t=t||{};var i=He(e),r=await Ke(e);let l=[i,r],n="sm:rounded-tl sm:rounded-tr";t.onlyFirstLine?l=[i]:t.onlySecordLine&&(n="",l=[r]);i=[{type:"wrapper",body:l,className:`border-b bg-gray-100 ${n} `+(t.onlySecordLine&&"pt-0")}],r=await Ye(e,0,t);return i.push(r),i}async function Ze(e,a){var{name:t,label:i,icon:r}=e,l=Re(e,{}),n=ze(e,{recordId:a,objectName:t}),l=b.map(l,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:k(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),n=b.map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:k(e)})),n=(l.push({type:"steedos-dropdown-button",label:"",buttons:n,className:"slds-icon ml-1 border-gray-200 rounded-none"}),new RegExp("_","g")),n=[{type:"service",body:[{type:"panel",title:"标题",body:[],header:{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class='slds-icon slds-icon_container slds-icon-standard-${r&&r.replace(n,"-")}' src='\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${r}.svg'>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+i,inline:!1,wrapperComponent:"",style:{fontFamily:"",fontSize:13},className:"leading-none"},{type:"tpl",tpl:"${name}",inline:!1,wrapperComponent:"",style:{fontFamily:"",fontSize:20,fontWeight:"bold",textAlign:"left"},className:"leading-none"}]}]}],md:"auto"},{body:{type:"flex",items:l},md:"auto"}],align:"between"}],size:"xs"},affixFooter:!1,headerClassName:"",bodyClassName:"p-none"}],messages:{}}];return{type:"service",bodyClassName:"",name:"page",data:{context:{rootUrl:d(),tenantId:o(),authToken:s()},objectName:t,_id:a,recordPermissions:e.permissions,uiSchema:e},body:n}}async function Ge(e){var{icon:a,label:t}=e,e=await Je(e,{}),e=b.map(e,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:k(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),i=new RegExp("_","g");return{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class="slds-icon_small slds-icon_container slds-icon-standard-${a&&a.replace(i,"-")}" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${a}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:`<a href="/app/\${appId}/\${masterObjectName}/\${masterRecordId}/\${objectName}/grid?related_field_name=\${relatedKey}">${t}(\${$count})</a>`,inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:13,fontWeight:"bold"}}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:{type:"flex",items:e},md:"auto"}],align:"between"}],size:"xs",className:"bg-white p-t-sm p-b-sm px-4 border-b"}}const Xe=(e,a,t)=>{e=e.replace(/\./g,"_");t=(e=>{const a=["_id"];return e.push("record_permissions"),b.each(e,e=>{-1<e.indexOf(".")&&(e=e.split(".")[0]),a.push(""+e)}),""+a.join(" ")})(t);let i="";a=[`id: "${a}"`];return`{record:${e}__findOne${i=0<a.length?`(${a.join(",")})`:i}{${t}}}`},Qe=async(e,a,t)=>{return(await n("/graphql",{method:"post",body:JSON.stringify({query:Xe(e,a,t)})})).data.record};let D={},ea;"undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=D),D=window.UI_SCHEMA_CACHE);const aa=(e,a)=>{D[e]=a},ta=e=>b.cloneDeep(D[e]),ia=e=>b.has(D,e);function ra(e,a){let t=[];return t="SMALL"===a?b.isEmpty(e.mobile_columns)?b.slice(e.columns,0,4):e.mobile_columns:e.columns}function la(e){let i="";return e&&e.sort&&e.sort.length&&b.each(e.sort,function(e,a){var t;b.isArray(e)?(t=e[0]+" "+(e[1]||""),t=0<a?","+t:t,i+=t):(t=e.field_name+" "+e.order,t=0<a?","+t:t,i+=t)}),i}async function V(a,e){if(a){if(!ia(a)||e){let t=null;try{if(!(t=ea?await ea(a,e):await n(`/service/api/@${a.replace(/\./g,"_")}/uiSchema`,{method:"get"})))return;aa(a,t),b.each(t.list_views,(e,a)=>{e.name=a,b.has(e,"columns")||(e.columns=t.list_views.all.columns)})}catch(e){console.error("getUISchema",a,e),aa(a,null)}}return ta(a)}}async function A(e,a){return(await V(e))?.fields[a]}async function na(e,a){e=await V(e);return{uiSchema:e,amisSchema:await ue(e,a)}}async function T(e,a,t,i={}){var r=await V(a),l=b.find(r.list_views,(e,a)=>a===(t=t||a));if(!l)return{uiSchema:r};if(l.enable_amis_schema&&l.amis_schema){const u=b.isString(l.amis_schema)?JSON.parse(l.amis_schema):l.amis_schema;return{uiSchema:r,isCustomAmisSchema:!0,amisSchema:u}}l.type;{const u=void 0}var n=ra(l,i.formFactor),o=la(l),s=i.defaults||{};!s.headerSchema&&i.showHeader&&(s.headerSchema=await We(r)),i.showHeader||(s.headerSchema=null);try{var d,c=location.pathname+"/crud/"+i.listViewId,p=localStorage.getItem(c);p&&(p=JSON.parse(p),d={},p.orderBy&&(d.orderBy=p.orderBy),p.orderDir&&(d.orderDir=p.orderDir),p.perPage&&(d.defaultParams={perPage:p.perPage}),s.listSchema=b.defaultsDeep({},d,s.listSchema||{}))}catch(e){console.error("本地存储中crud参数解析异常:",e)}i.defaults=s;const u={type:"steedos-object-table",objectApiName:a,columns:n,extraColumns:l.extra_columns,filters:l.filters,sort:o,ctx:i};return{uiSchema:r,amisSchema:u}}async function oa(e,a,t,i={}){const r=await V(a);let l=i.sort;l||(o=i.sortField,s=i.sortOrder,o&&(l=o+" "+s||"asc"));let n=[];b.each(t,function(e){b.isString(e)&&r.fields[e]?n.push(r.fields[e]):b.isObject(e)&&r.fields[e.field]&&n.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}))});var o=i.extraColumns,s=(o&&b.each(o,function(e){b.isString(e)?n.push({extra:!0,name:e}):b.isObject(e)&&n.push({extra:!0,name:e.field})}),await S(r,n,{tabId:a,appId:e,objectName:a,...i,filter:i.filters,sort:l,buttons:await I(r,i)}));return{uiSchema:r,amisSchema:s}}const sa=(e,a,t,i)=>{t=b.find(t.fields,e=>i===e?.name);return b.isString(t.reference_to)?t.multiple?[a]:a:{o:e,ids:[a]}};async function da(a,i,t,r){var e=await V(i),l=[],n=[].concat(e.related_lists||[]);if(b.isEmpty(n))for(const m of[].concat(e.details||[])){var o,s,d=m.split("."),c=await V(d[0]);c&&(((o=await A(d[0],d[1]))._reference_to||o.reference_to&&!b.isString(o.reference_to))&&d[1],d[1],s=(o=await T(0,d[0],"all",{formFactor:r,buttons:await I(c,{isMobile:!1})})).amisSchema,c=await Ge(c),s.headerSchema=c,s.headerToolbar=[],s.columnsTogglable=!1,s.globalFilter=s.filters,delete s.ctx,o.amisSchema={type:"service",className:"b-a m-b",data:{masterObjectName:i,masterRecordId:"${recordId}",relatedKey:d[1],objectName:d[0],listViewId:`amis-\${appId}-${d[0]}-listview`},body:[{...s,data:{filter:["${relatedKey}","=","${masterRecordId}"],objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[d[1]]:sa(i,t,o.uiSchema,d[1])}}}]},l.push({masterObjectName:i,object_name:d[0],foreign_key:d[1],schema:o}))}else for(const f of n){var p=f.related_field_fullname.split(".");let e=null;var u=await A(p[0],p[1]);if(u){e=u._reference_to||u.reference_to&&!b.isString(u.reference_to)?[[p[1]+"/o","=",i],[p[1]+"/ids","=",t]]:[""+p[1],"=",t];const y=await V(p[0]);if(y){let t=[];b.forEach(f.field_names,a=>{var e=b.find(y.fields,e=>e.name===a);e&&t.push(e)}),l.push({masterObjectName:i,object_name:p[0],foreign_key:p[1],schema:{uiSchema:y,amisSchema:await S(y,t,{tabId:i,appId:a,objectName:p[0],formFactor:r,globalFilter:e,buttons:await I(y,{isMobile:!1})})}})}}}return l}const E={};async function ca(e,a,t){return{type:"picker",label:"人员",name:a,id:t.id,modalMode:"dialog",joinValues:!1,source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:space_users(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,name,email,mobile},count:space_users__count(filters:{__filters})}',$term:"$term",$self:"$$"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n 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 var allowSearchFields = [\"name\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\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 "},pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["switch-per-page","pagination"],defaultParams:{perPage:50},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"_id",label:"ID",type:"text",toggled:!1},{name:"name",label:"姓名",sortable:!0,searchable:!0,type:"text"},{name:"email",label:"邮件",sortable:!0,type:"text",searchable:!0},{name:"mobile",label:"手机",type:"text",sortable:!0,searchable:!0}],syncLocation:!1,keepItemSelectionOnPageChange:!0},labelField:"name",valueField:"_id",size:"lg",extractValue:!0,className:"m-0",labelClassName:"text-left"}}const pa=["last_year","this_year","next_year","last_quarter","this_quarter","next_quarter","last_month","this_month","next_month","last_week","this_week","next_week","yestday","today","tomorrow","last_7_days","last_30_days","last_60_days","last_90_days","last_120_days","next_7_days","next_30_days","next_60_days","next_90_days","next_120_days"],ua={equal:"=",not_equal:"!=",less:"<",less_or_equal:"<=",greater:">",greater_or_equal:">=",between:"between",not_between:"not_between",is_empty:"is_empty",is_not_empty:"is_not_empty",select_equals:"=",select_not_equals:"!=",select_any_in:"in",select_not_any_in:"<>",like:"contains",not_like:"notcontains",starts_with:"startswith",ends_with:"endswith"},ma=e=>_.has(e,"conjunction"),fa=e=>{const t=[],{conjunction:i,children:a}=e;return i&&a&&a.forEach(e=>{var a;0<t.length&&t.push(i),ma(e)?(a=fa(e))&&0<a.length&&t.push(a):(a=ya(e))&&t.push(a)}),t},ya=e=>{var a,{left:e,op:t,right:i}=e;if(e&&"field"===e.type&&t)return t.startsWith("between:")?(a=t.split(":"),[e.field,a[0],a[1]]):null!=i?[e.field,ua[t],i]:void 0},ba=a=>{var e;if(3===a.length)return"between"===(e=c.default.findKey(ua,e=>e===a[1]))&&c.default.includes(pa,a[2])?{left:{type:"field",field:a[0]},op:e+":"+a[2]}:{left:{type:"field",field:a[0]},op:e,right:a[2]};console.warn("无效的filter:"+JSON.stringify(a))},ha=e=>!c.default.isArray(e)&&c.default.isObject(e)?[e.field,e.operation,e.value]:e,_a=e=>{e=ha(e);const a={conjunction:"and",children:[]};return e&&0!=e.length&&e.forEach(e=>{"or"===(e=ha(e))||"and"===e?a.conjunction=e:3===e.length&&-1==e.indexOf("and")&&-1==e.indexOf("or")?a.children.push(ba(e)):a.children.push(_a(e))}),a};const ga=e=>{const t=[];return b.each(e.options.split("\n"),e=>{var a=e.split(":");2==a.length?t.push({label:a[0],value:a[1]}):t.push({label:e,value:e})}),t},wa=(e,a)=>{const t={label:!0===a&&e.name,name:e.code,mode:"horizontal",className:"m-none p-none",disabled:"readonly"===e.permission};switch(e.type){case"input":e.is_textarea?t.type="textarea":t.type="input-text";break;case"number":t.type="input-number";break;case"date":t.type="input-date";break;case"dateTime":t.type="input-datetime";break;case"checkbox":t.type="checkbox";break;case"email":t.type="input-email",t.validations={isEmail:!0};break;case"url":t.type="input-url",t.validations={isUrl:!0};break;case"password":t.type="input-password",t.showCounter=!0;break;case"select":t.type="select",t.options=ga(e);break;case"user":case"group":t.type="input-text";break;case"radio":t.type="radios",t.options=ga(e);break;case"multiSelect":t.type="checkboxes",t.options=ga(e);break;case"odata":var i=e.formula.substr(1,e.formula.length-2);t.type="select",t.multiple=e.is_multiselect,t.labelField=i,t.valueField="$$",t.source={url:b.startsWith(e.url,"http")?e.url:"${context.rootUrl}"+e.url,method:"get",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};break;case"html":t.type="html";break;case"table":t.type="input-table",t.addable="readonly"!=e.permission,t.editable=t.addable,t.copyable=t.addable,t.columns=[],b.each(e.sfields,e=>{"hidden"!=e.type&&t.columns.push(wa(e,!0))});break;case"section":t.type="input-text"}return t},va=t=>{const i=[];return b.each(t,e=>{var a;"table"!=e.type&&i.push({className:"td-title",align:"section"!=e.type?"center":"left",width:"section"!=e.type?"16%":"",colspan:"section"==e.type?4:"",body:[{type:"tpl",tpl:`<div style='font-size:20px'>${e.name}</div>`}]}),"section"!=e.type&&i.push((e=e,a=t.length,{background:"readonly"===e.permission?"":"rgba(255,255,0,.1)",colspan:"table"===e.type?4:3-2*(a-1),align:"left",className:"td-field",body:[wa(e)],style:{marginTop:"0",paddingTop:"0",paddingRight:"0",paddingBottom:"0",paddingLeft:"0",marginRight:"0",marginBottom:"0",marginLeft:"0"}}))}),i},$a=t=>{const a=[],i=[];let r=[];return b.each(t.fields,(e,a)=>{e.is_wide?(0!=r.length&&i.push(r),"table"==e.type&&i.push([Object.assign({},e,{type:"section"})]),(r=[]).push(e),i.push(r),r=[]):(r.push(e),2!=r.length&&a!==t.fields.length-1||(i.push(r),r=[]))}),b.each(i,e=>{a.push({background:"#F7F7F7",tds:va(e)})}),a};function Sa(e){var r=[];return e.charCodeAt(0)===".".charCodeAt(0)&&r.push(""),e.replace(new RegExp("[^.[\\]]+|\\[(?:([^\"'][^[]*)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g"),function(e,a,t,i){return t?e=i.replace(/\\(\\)?/g,"$1"):a&&(e=a.trim()),r.push(e),""}),r}var P=function(){return(P=Object.assign||function(e){for(var a,t=1,i=arguments.length;t<i;t++)for(var r in a=arguments[t])Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r]);return e}).apply(this,arguments)};function Na(a,e){void 0===e&&(e=!0);var t=a&&a.__super?Object.create(a.__super,{__super:{value:a.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return e&&a&&Object.keys(a).forEach(function(e){return t[e]=a[e]}),t}function Fa(e){var a=typeof e;return e&&"string"!=a&&"number"!=a&&"boolean"!=a&&"function"!=a&&!Array.isArray(e)}e.absoluteUrl=function(e){return""+d()+e},e.amisRender=(e,a,t={},i={},r)=>{var l=amisRequire("amis/embed"),{router:r,assets:n}=r;return J(n),l.embed(e,a,t,Object.assign(z(r),i))},e.amisRootClick=(e,a)=>{"a"===a.target.nodeName.toLocaleLowerCase()&&a.target.href&&(a.preventDefault(),e.push(a.target.href))},e.cloneObject=Na,e.conditionsToFilters=e=>fa(e),e.createObject=function(e,a,t){var i=(e=e&&Object.isFrozen(e)?Na(e):e)?Object.create(e,P(P({},t),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,t);return a&&Fa(a)&&Object.keys(a).forEach(function(e){return i[e]=a[e]}),i},e.defaultsDeep=$,e.deleteVariable=function(e,a){if(e)if(e.hasOwnProperty(a))delete e[a];else{for(var t=Sa(a),a=t.pop();t.length;){var i=t.shift();if(!B.default(e[i])){if(e[i])throw new Error("目标路径不是纯对象,不能修改");break}e=e[i]=P({},e[i])}e&&e.hasOwnProperty&&e.hasOwnProperty(a)&&delete e[a]}},e.execute=Me,e.executeButton=Ue,e.extendObject=function(e,a,t){var i=Na(e,t=void 0===t?!0:t);return a&&Object.keys(a).forEach(function(e){return i[e]=a[e]}),i},e.fetchAPI=n,e.filtersToConditions=e=>_a(e),e.getAmisObjectRelatedList=da,e.getApp=async function(e){return await n(`/service/api/apps/${e}/menus`)},e.getApps=async function(){return await n("/service/api/apps/menus")},e.getAuthToken=s,e.getAuthorization=U,e.getButton=async(e,a,t)=>{var i=await V(e);if(i){var r=await x(i,t),r=c.default.find(r,e=>e.name===a);if(r)return"standard_edit"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_edit.visible.apply")?{label:r.label,name:r.name,on:r.on,...await O.getStandardEdit(i,t)}:"cms_files"!=e&&"standard_new"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_new.visible.apply")?{label:r.label,name:r.name,on:r.on,...await O.getStandardNew(i,t)}:"standard_delete"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_delete.visible.apply")?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await O.getStandardDelete(i,t)}:i.hasImportTemplates&&"standard_import_data"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await O.getStandardImportData(i,t)}:"standard_open_view"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await O.getStandardOpenView(i,t)}:"standard_delete_many"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await O.getStandardDeleteMany(i,t)}:r}},e.getButtonVisible=(a,e)=>{if(a._visible&&(c.default.startsWith(c.default.trim(a._visible),"function")?(window.eval("var fun = "+a._visible),a.visible=fun):Te(a._visible)&&(a.visible=e=>{Ee(a._visible,e.record,"#",{now:new Date},e.userSession)})),!c.default.isFunction(a.visible))return a.visible;try{return a.visible(e)}catch(e){}},e.getButtonVisibleOn=k,e.getButtons=x,e.getEnv=e=>E[e],e.getEnvs=()=>E,e.getEvn=z,e.getField=A,e.getFileSrc=function(e){return d()+"/api/files/files/"+e},e.getFlowFormSchema=e=>{return{type:"page",body:[{type:"service",data:{beijing:"20",tianjing:"19"},body:[{type:"tpl",id:"u:f5bb0ad602a6",tpl:`<div style='font-size:20px'>${e.title}</div>`,inline:!0,wrapperComponent:"",style:{fontFamily:"",fontSize:12,textAlign:"center"}},(e=e,{type:"table-view",trs:$a(e),id:"u:047f3669468b"})],id:"u:a381684e042b"}],id:"u:63849ea39e12",messages:{},pullRefresh:{},regions:["body"]}},e.getFormPageInitSchema=async function(e){return{type:"page",bodyClassName:"",regions:["body"],body:[(await na(e,{recordId:"${recordId}"})).amisSchema]}},e.getFormSchema=na,e.getImageSrc=function(e){return d()+"/api/files/images/"+e},e.getListPageInitSchema=async function(e,a,t){return{type:"page",bodyClassName:"",regions:["body"],body:[{type:"steedos-object-listview",objectApiName:e,columnsTogglable:!1,showHeader:!0}]}},e.getListSchema=T,e.getListViewButtons=Le,e.getListViewColumns=ra,e.getListViewItemButtons=I,e.getListViewSort=la,e.getListviewInitSchema=async function(a,t,i){i=i||{};var r=await V(a),l=b.find(r.list_views,(e,a)=>a===t);let n={};if(l){var o=ra(l,i.formFactor),l=la(l),s=i.defaults||{};s.headerSchema||(r=await We(r,0,{onlySecordLine:!0,isListviewInit:!0}),s.headerSchema=r),i.defaults=s;let e=i.setDataToComponentId;e=e||"service_listview_"+a;r=await oa(null,a,o,{sort:l,...i,setDataToComponentId:e});delete(n=r.amisSchema).data.$master,delete n.data._id,delete n.data.recordPermissions,delete n.data.uiSchema}return n},e.getNotifications=async()=>{var e=t(),e=`
676
676
  {
677
677
  notifications(filters: ["owner","=","${e.userId}"], sort: "created desc,name", top : 10){
678
678
  _id,name,body,related_to,related_name,url,owner,is_read,from,created
679
679
  },
680
680
  unReadCount: notifications__count(filters: [["owner","=","${e.userId}"], ["is_read", "!=", true]])
681
681
  }
682
- `;return(await n("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getObjectDetailButtons=Le,e.getObjectDetailMoreButtons=Re,e.getObjectFieldsFilterBarSchema=Ve,e.getObjectFieldsFilterButtonSchema=Ie,e.getObjectFieldsFilterFormSchema=De,e.getObjectListHeader=D,e.getObjectListHeaderFieldsFilterBar=Ke,e.getObjectListHeaderFirstLine=Ue,e.getObjectListHeaderSecordLine=He,e.getObjectRecordDetailHeader=Ye,e.getObjectRecordDetailRelatedListHeader=We,e.getObjectRelated=async function({masterObjectName:e,objectName:a,relatedFieldName:t,recordId:i,formFactor:r}){let l=null;var n=await A(a,t),n=(l=n._reference_to||n.reference_to&&!b.isString(n.reference_to)?[[t+"/o","=",e],[t+"/ids","=",i]]:[""+t,"=",i],await V(e));return{masterObjectName:e,object_name:a,foreign_key:t,schema:await T(0,a,"all",{globalFilter:l,formFactor:r}),record:await Ge(e,i,[n.NAME_FIELD_KEY]),masterObjectUISchema:n}},e.getObjectRelatedList=async function(a,i,t,r){var e=await V(i),l=[],n=[].concat(e.related_lists||[]);if(b.isEmpty(n))for(const u of[].concat(e.details||[])){var o=u.split("."),s=await V(o[0]);if(s){let e=null;var d=await A(o[0],o[1]);e=d._reference_to||d.reference_to&&!b.isString(d.reference_to)?[[o[1]+"/o","=",i],[o[1]+"/ids","=",t]]:[""+o[1],"=",t],l.push({masterObjectName:i,object_name:o[0],foreign_key:o[1],schema:await T(0,o[0],"all",{globalFilter:e,formFactor:r,buttons:await I(s,{isMobile:!1})})})}}else for(const m of n){var c=m.related_field_fullname.split(".");let e=null;var p=await A(c[0],c[1]);if(p){e=p._reference_to||p.reference_to&&!b.isString(p.reference_to)?[[c[1]+"/o","=",i],[c[1]+"/ids","=",t]]:[""+c[1],"=",t];const f=await V(c[0]);if(f){let t=[];b.forEach(m.field_names,a=>{var e=b.find(f.fields,e=>e.name===a);e&&t.push(e)}),l.push({masterObjectName:i,object_name:c[0],foreign_key:c[1],schema:{uiSchema:f,amisSchema:await S(f,t,{tabId:i,appId:a,objectName:c[0],formFactor:r,globalFilter:e,buttons:await I(f,{isMobile:!1})})}})}}}return l},e.getObjectRelatedListButtons=ze,e.getObjectRelatedListHeader=async function(e,a,t){},e.getPage=Ce,e.getRecord=Ge,e.getRecordDetailHeaderSchema=async function(e,a){return{uiSchema:e=await V(e),amisSchema:await Ye(e,a)}},e.getRecordDetailRelatedListSchema=async function(a,e,t,i,r,l,n){var o=await V(t),{list_views:s,fields:d}=o,s=b.keys(s)[0];let c=null,p=(d=await A(t,i=i||b.findKey(d,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===a})),e);return d.reference_to_field&&"_id"!=d.reference_to_field&&(e=await Ge(a,e,[d.reference_to_field]),p=e[d.reference_to_field]),c=d._reference_to||d.reference_to&&!b.isString(d.reference_to)?[[i+"/o","=",a],[i+"/ids","=",p]]:[""+i,"=",p],e=await We(o),d="steedos-record-related-list-"+t,s=(await T(0,t,s,{globalFilter:c,defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:e},showHeader:!0,top:r,setDataToComponentId:d,tableHiddenOn:l?"this.$count === 0":null,appId:n})).amisSchema,{uiSchema:o,amisSchema:{type:"service",id:d,className:"steedos-record-related-list bg-white mb-1 border",data:{masterObjectName:a,masterRecordId:"${recordId}",relatedKey:i,objectName:t,listViewId:`amis-\${appId}-${t}-listview`},body:[{...s,data:{relatedKey:i,objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[i]:na(a,p,o,i)}}}]}}},e.getRecordDetailSchema=async function(e,a){return{uiSchema:e=await V(e),amisSchema:{type:"service",body:[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:48d2c28eb755",onEvent:{recordLoaded:{actions:[{actionType:"reload",data:{name:`\${record.${e?.NAME_FIELD_KEY||"name"}}`}}]}}},{type:"tabs",tabs:[{title:"详细",body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d4a495811d57",appId:a}],id:"u:5d4e7e3f6ecc"},{title:"相关",body:[{type:"steedos-object-related-lists",label:"相关列表",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:3b85b7b7a7f6",appId:a}],id:"u:1a0326aeec2b"}],id:"u:a649e4094a12"}]}}},e.getRecordPageInitSchema=async function(e){var a=await oa(null,e,"${recordId}",null),t=[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",onEvent:{recordLoaded:{actions:[{actionType:"reload",data:{name:"${record.name}"}}]}}}],i={type:"tabs",tabs:[{title:"详情",body:[{type:"steedos-object-form",label:"对象表单",mode:"read",objectApiName:"${objectName}",recordId:"${recordId}",labelAlign:"left"}]}],className:"bg-white mb-4",linksClassName:"pl-4 pt-2"};return(a=b.map(a,e=>e.schema.amisSchema)).length&&i.tabs.push({title:"相关",body:a}),t.push(i),{type:"page",id:`page_${e}_record_detail`,bodyClassName:"",regions:["body"],body:t}},e.getRecordPermissions=async(e,a)=>{return await n(`/service/api/@${e}/recordPermissions/`+a,{method:"GET"})},e.getRelatedFieldValue=na,e.getRelatedsCount=async(a,e)=>{const t=[];b.each(e,e=>{t.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${a}"]])`)});e=`
682
+ `;return(await n("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getObjectDetailButtons=Re,e.getObjectDetailMoreButtons=ze,e.getObjectFieldsFilterBarSchema=De,e.getObjectFieldsFilterButtonSchema=Ie,e.getObjectFieldsFilterFormSchema=r,e.getObjectListHeader=We,e.getObjectListHeaderFieldsFilterBar=Ye,e.getObjectListHeaderFirstLine=He,e.getObjectListHeaderSecordLine=Ke,e.getObjectRecordDetailHeader=Ze,e.getObjectRecordDetailRelatedListHeader=Ge,e.getObjectRelated=async function({masterObjectName:e,objectName:a,relatedFieldName:t,recordId:i,formFactor:r}){let l=null;var n=await A(a,t),n=(l=n._reference_to||n.reference_to&&!b.isString(n.reference_to)?[[t+"/o","=",e],[t+"/ids","=",i]]:[""+t,"=",i],await V(e));return{masterObjectName:e,object_name:a,foreign_key:t,schema:await T(0,a,"all",{globalFilter:l,formFactor:r}),record:await Qe(e,i,[n.NAME_FIELD_KEY]),masterObjectUISchema:n}},e.getObjectRelatedList=async function(a,i,t,r){var e=await V(i),l=[],n=[].concat(e.related_lists||[]);if(b.isEmpty(n))for(const u of[].concat(e.details||[])){var o=u.split("."),s=await V(o[0]);if(s){let e=null;var d=await A(o[0],o[1]);e=d._reference_to||d.reference_to&&!b.isString(d.reference_to)?[[o[1]+"/o","=",i],[o[1]+"/ids","=",t]]:[""+o[1],"=",t],l.push({masterObjectName:i,object_name:o[0],foreign_key:o[1],schema:await T(0,o[0],"all",{globalFilter:e,formFactor:r,buttons:await I(s,{isMobile:!1})})})}}else for(const m of n){var c=m.related_field_fullname.split(".");let e=null;var p=await A(c[0],c[1]);if(p){e=p._reference_to||p.reference_to&&!b.isString(p.reference_to)?[[c[1]+"/o","=",i],[c[1]+"/ids","=",t]]:[""+c[1],"=",t];const f=await V(c[0]);if(f){let t=[];b.forEach(m.field_names,a=>{var e=b.find(f.fields,e=>e.name===a);e&&t.push(e)}),l.push({masterObjectName:i,object_name:c[0],foreign_key:c[1],schema:{uiSchema:f,amisSchema:await S(f,t,{tabId:i,appId:a,objectName:c[0],formFactor:r,globalFilter:e,buttons:await I(f,{isMobile:!1})})}})}}}return l},e.getObjectRelatedListButtons=Je,e.getObjectRelatedListHeader=async function(e,a,t){},e.getPage=Be,e.getRecord=Qe,e.getRecordDetailHeaderSchema=async function(e,a){return{uiSchema:e=await V(e),amisSchema:await Ze(e,a)}},e.getRecordDetailRelatedListSchema=async function(a,e,t,i,r,l,n,o){var s=await V(t),{list_views:d,fields:c}=s,d=b.keys(d)[0];let p=null,u=(c=await A(t,i=i||b.findKey(c,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===a})),e);return c.reference_to_field&&"_id"!=c.reference_to_field&&(e=await Qe(a,e,[c.reference_to_field]),u=e[c.reference_to_field]),p=c._reference_to||c.reference_to&&!b.isString(c.reference_to)?[[i+"/o","=",a],[i+"/ids","=",u]]:[""+i,"=",u],e=await Ge(s),c="steedos-record-related-list-"+t,d=(await T(0,t,d,{globalFilter:p,defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:e},showHeader:!0,top:r,perPage:l,setDataToComponentId:c,tableHiddenOn:n?"this.$count === 0":null,appId:o})).amisSchema,{uiSchema:s,amisSchema:{type:"service",id:c,className:"steedos-record-related-list bg-white mb-1 border",data:{masterObjectName:a,masterRecordId:"${recordId}",relatedKey:i,objectName:t,listViewId:`amis-\${appId}-${t}-listview`},body:[{...d,data:{relatedKey:i,objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[i]:sa(a,u,s,i)}}}]}}},e.getRecordDetailSchema=async function(e,a){return{uiSchema:e=await V(e),amisSchema:{type:"service",body:[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:48d2c28eb755",onEvent:{recordLoaded:{actions:[{actionType:"reload",data:{name:`\${record.${e?.NAME_FIELD_KEY||"name"}}`}}]}}},{type:"tabs",tabs:[{title:"详细",body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d4a495811d57",appId:a}],id:"u:5d4e7e3f6ecc"},{title:"相关",body:[{type:"steedos-object-related-lists",label:"相关列表",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:3b85b7b7a7f6",appId:a}],id:"u:1a0326aeec2b"}],id:"u:a649e4094a12"}]}}},e.getRecordPageInitSchema=async function(e){var a=await da(null,e,"${recordId}",null),t=[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",onEvent:{recordLoaded:{actions:[{actionType:"reload",data:{name:"${record.name}"}}]}}}],i={type:"tabs",tabs:[{title:"详情",body:[{type:"steedos-object-form",label:"对象表单",mode:"read",objectApiName:"${objectName}",recordId:"${recordId}",labelAlign:"left"}]}],className:"bg-white mb-4",linksClassName:"pl-4 pt-2"};return(a=b.map(a,e=>e.schema.amisSchema)).length&&i.tabs.push({title:"相关",body:a}),t.push(i),{type:"page",id:`page_${e}_record_detail`,bodyClassName:"",regions:["body"],body:t}},e.getRecordPermissions=async(e,a)=>{return await n(`/service/api/@${e}/recordPermissions/`+a,{method:"GET"})},e.getRelatedFieldValue=sa,e.getRelatedsCount=async(a,e)=>{const t=[];b.each(e,e=>{t.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${a}"]])`)});e=`
683
683
  {
684
684
  ${t.join(",")}
685
685
  }
686
- `;return(await n("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getRootUrl=d,e.getSearchableFieldsFilterSchema=async function(e,a,t){return De(e,a,t)},e.getSelectUserSchema=$e,e.getSpaceUsersPickerAmisSchema=sa,e.getSpaceUsersPickerSchema=async function(e,a){var t=await V("space_users");return{uiSchema:t,amisSchema:await sa(0,e,a)}},e.getSteedosAuth=t,e.getTableSchema=la,e.getTenantId=o,e.getUISchema=V,e.getViewSchema=async function(e,a,t){return{uiSchema:e=await V(e),amisSchema:await async function(e,a,t){var{formFactor:i,layout:i="SMALL"===i?"normal":"horizontal",labelAlign:r,formInitProps:l}=t,n=c.default.values(e.fields);return{type:"service",name:"page_readonly_"+a,id:"detail_"+a,data:{global:pe("read"),context:{rootUrl:d(),tenantId:o(),authToken:s()}},api:await ee(e,a,n,l),body:[{type:"form",mode:i,labelAlign:r,persistData:!1,promptPageLeave:!1,name:"form_readonly_"+a,debug:!1,title:"",data:{formData:"$$"},wrapWithPanel:!1,body:await oe(b.map(n,e=>(e.readonly=!0,e)),e,Object.assign({},t,{showSystemFields:!0})),className:"steedos-amis-form bg-white",actions:[]}],onEvent:{fetchInited:{weight:0,actions:[{actionType:"broadcast",eventName:"recordLoaded",args:{eventName:"recordLoaded"},data:{record:"${event.data}"}}]}}}}(e,a,t)}},e.isExpression=Ae,e.isObject=Sa,e.lookupToAmis=Fe,e.lookupToAmisPicker=Se,e.lookupToAmisSelect=l,e.lookupToAmisSelectUser=je,e.markReadAll=async()=>n("/api/v4/notifications/all/markReadAll",{method:"POST"}),e.parseSingleExpression=Te,e.registerRemoteAssets=async a=>{if(a&&0<a.length){let e=a;b.isString(e)&&(e=e.split(",")),await Builder.registerRemoteAssets(e);a=b.filter(Builder.registry["meta-components"],function(e){return e.componentName&&e.amis?.render});return b.map(a,e=>({componentType:e.componentType,componentName:e.componentName,...e.amis.render}))}return[]},e.registerRenders=J,e.resetLocalListViewPropsWithSearchableFields=function(e,a){"string"==typeof a&&(a=a.split(",")),e=location.pathname+"/crud/"+e;let t=localStorage.getItem(e);if(t){var i,r=[];for(i in t=JSON.parse(t))new RegExp("__searchable__.*").test(i)&&!a.find(function(e){return new RegExp("__searchable__.*"+e+"$").test(i)})&&r.push(i);r.forEach(function(e){delete t[e]}),localStorage.setItem(e,JSON.stringify(t))}},e.setEnv=(e,a)=>{E[e]=a},e.setEnvs=e=>{b.map(e,(e,a)=>{E[a]=e})},e.setRootUrl=function(e){b.endsWith(e,"/")&&(e=e.substring(0,e.length-1)),localStorage.setItem("steedos:rootUrl",e)},e.setSteedosAuth=e=>{Object.assign(M,e)},e.setUISchemaFunction=function(e){Xe=e},e.setVariable=function(e,a,t,i){if(a in(e=e||{}))e[a]=t;else{for(var r=!1!==i?va(a):[a],i=r.pop();r.length;){var l=r.shift();e=B.default(e[l])?e[l]=P({},e[l]):(Array.isArray(e[l])?e[l]=e[l].concat():(e[l],e[l]={}),e[l])}e[i]=t}},e.standardButtonsTodo=a,Object.defineProperty(e,"__esModule",{value:!0})});
686
+ `;return(await n("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getRootUrl=d,e.getSearchableFieldsFilterSchema=async function(e,a,t){return r(e,a,t)},e.getSelectUserSchema=$e,e.getSpaceUsersPickerAmisSchema=ca,e.getSpaceUsersPickerSchema=async function(e,a){var t=await V("space_users");return{uiSchema:t,amisSchema:await ca(0,e,a)}},e.getSteedosAuth=t,e.getTableSchema=oa,e.getTenantId=o,e.getUISchema=V,e.getViewSchema=async function(e,a,t){return{uiSchema:e=await V(e),amisSchema:await async function(e,a,t){var{formFactor:i,layout:i="SMALL"===i?"normal":"horizontal",labelAlign:r,formInitProps:l}=t,n=c.default.values(e.fields);return{type:"service",name:"page_readonly_"+a,id:"detail_"+a,data:{global:pe("read"),context:{rootUrl:d(),tenantId:o(),authToken:s()}},api:await ee(e,a,n,l),body:[{type:"form",mode:i,labelAlign:r,persistData:!1,promptPageLeave:!1,name:"form_readonly_"+a,debug:!1,title:"",data:{formData:"$$"},wrapWithPanel:!1,body:await oe(b.map(n,e=>(e.readonly=!0,e)),e,Object.assign({},t,{showSystemFields:!0})),className:"steedos-amis-form bg-white",actions:[]}],onEvent:{fetchInited:{weight:0,actions:[{actionType:"broadcast",eventName:"recordLoaded",args:{eventName:"recordLoaded"},data:{record:"${event.data}"}}]}}}}(e,a,t)}},e.isExpression=Te,e.isObject=Fa,e.lookupToAmis=Fe,e.lookupToAmisPicker=Se,e.lookupToAmisSelect=l,e.lookupToAmisSelectUser=je,e.markReadAll=async()=>n("/api/v4/notifications/all/markReadAll",{method:"POST"}),e.parseSingleExpression=Ee,e.registerRemoteAssets=async a=>{if(a&&0<a.length){let e=a;b.isString(e)&&(e=e.split(",")),await Builder.registerRemoteAssets(e);a=b.filter(Builder.registry["meta-components"],function(e){return e.componentName&&e.amis?.render});return b.map(a,e=>({componentType:e.componentType,componentName:e.componentName,...e.amis.render}))}return[]},e.registerRenders=J,e.resetLocalListViewPropsWithSearchableFields=function(e,a){"string"==typeof a&&(a=a.split(",")),e=location.pathname+"/crud/"+e;let t=localStorage.getItem(e);if(t){var i,r=[];for(i in t=JSON.parse(t))new RegExp("__searchable__.*").test(i)&&!a.find(function(e){return new RegExp("__searchable__.*"+e+"$").test(i)})&&r.push(i);r.forEach(function(e){delete t[e]}),localStorage.setItem(e,JSON.stringify(t))}},e.setEnv=(e,a)=>{E[e]=a},e.setEnvs=e=>{b.map(e,(e,a)=>{E[a]=e})},e.setRootUrl=function(e){b.endsWith(e,"/")&&(e=e.substring(0,e.length-1)),localStorage.setItem("steedos:rootUrl",e)},e.setSteedosAuth=e=>{Object.assign(M,e)},e.setUISchemaFunction=function(e){ea=e},e.setVariable=function(e,a,t,i){if(a in(e=e||{}))e[a]=t;else{for(var r=!1!==i?Sa(a):[a],i=r.pop();r.length;){var l=r.shift();e=B.default(e[l])?e[l]=P({},e[l]):(Array.isArray(e[l])?e[l]=e[l].concat():(e[l],e[l]={}),e[l])}e[i]=t}},e.standardButtonsTodo=a,Object.defineProperty(e,"__esModule",{value:!0})});
@@ -0,0 +1,71 @@
1
+ /**
2
+ * 列表视图Calendar amisSchema
3
+ * @param {*} objectSchema 对象UISchema
4
+ * @returns amisSchema
5
+ */
6
+ export function getObjectCalendar(objectSchema: any, listView: any, ctx: any): Promise<{
7
+ type: string;
8
+ label: string;
9
+ name: string;
10
+ initialEvents: {
11
+ id: string;
12
+ title: string;
13
+ start: string;
14
+ }[];
15
+ onEvent: {
16
+ select: {
17
+ weight: number;
18
+ actions: {
19
+ componentId: string;
20
+ args: {};
21
+ actionType: string;
22
+ script: string;
23
+ }[];
24
+ };
25
+ eventClick: {
26
+ weight: number;
27
+ actions: {
28
+ componentId: string;
29
+ args: {};
30
+ actionType: string;
31
+ script: string;
32
+ }[];
33
+ };
34
+ eventAdd: {
35
+ weight: number;
36
+ actions: {
37
+ componentId: string;
38
+ args: {};
39
+ actionType: string;
40
+ script: string;
41
+ }[];
42
+ };
43
+ eventChange: {
44
+ weight: number;
45
+ actions: {
46
+ componentId: string;
47
+ args: {};
48
+ actionType: string;
49
+ script: string;
50
+ }[];
51
+ };
52
+ eventRemove: {
53
+ weight: number;
54
+ actions: {
55
+ componentId: string;
56
+ args: {};
57
+ actionType: string;
58
+ script: string;
59
+ }[];
60
+ };
61
+ eventsSet: {
62
+ weight: number;
63
+ actions: {
64
+ componentId: string;
65
+ args: {};
66
+ actionType: string;
67
+ script: string;
68
+ }[];
69
+ };
70
+ };
71
+ }>;