@steedos-widgets/amis-lib 1.0.25 → 1.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith,cloneDeep,includes,toArray,mergeWith,get,map,keys,sortBy,compact,isBoolean,omitBy,isNil,isString,findKey,slice,defaultsDeep as defaultsDeep$1,isObject as isObject$1,has,filter,startsWith}from"lodash";import isPlainObject from"lodash/isPlainObject";import{lookupToAmisPicker as lookupToAmisPicker$1,Router as Router$1,getSteedosAuth as getSteedosAuth$1,lookupToAmis as lookupToAmis$1,fetchAPI as fetchAPI$1}from"@steedos-widgets/amis-lib";const RegisterRenders=[],normalizeLink=(e,t=window.location)=>{(e=e||"")&&"#"===e[0]?e=t.pathname+t.search+e:e&&"?"===e[0]&&(e=t.pathname+e);var a=e.indexOf("?"),i=e.indexOf("#");let r=~a?e.substring(0,a):~i?e.substring(0,i):e;a=~a?e.substring(a,~i?i:void 0):"",e=~i?e.substring(i):t.hash;if(r){if("/"!=r[0]&&!/^https?\:\/\//.test(r)){var s,l=t.pathname.split("/");for(l.pop();s=/^\.\.?\//.exec(r);)"../"===s[0]&&l.pop(),r=r.substring(s[0].length);r=l.concat(r).join("/")}}else r=t.pathname;return r+a+e},amisRootClick=(e,t)=>{"a"===t.target.nodeName.toLocaleLowerCase()&&t.target.href&&(t.preventDefault(),e.push(t.target.href))},getEvn=a=>({theme:"antd",notify:(e,t)=>{t.props?.schema.tpl?SteedosUI.message[e](t.props?.schema.tpl):"string"==typeof t?SteedosUI.message[e](t):console.warn("notify",e,t)},confirm:a=>new Promise((e,t)=>SteedosUI.Modal.confirm({title:a,onOk:()=>{e(!0)},okText:"确认",cancelText:"取消"})),jumpTo:(e,t)=>{if("goBack"===e)return window.history.back();e=normalizeLink(e),t&&"url"===t.actionType?!0===t.blank?window.open(e):a.push(e):t&&e&&t.target?window.open(e,t.target):/^https?:\/\//.test(e)?window.location.replace(e):a.push(e)}}),registerRenders=e=>{if(!isEmpty(e)&&isArray(e)){var t=amisRequire("amis");const a={renderer:t.Renderer,formitem:t.FormItem,options:t.OptionsControl};let l=amisRequire("react");each(e,t=>{if(!find(RegisterRenders,e=>e===t.componentName)){let s=Builder.components.find(e=>e.name===t.componentName),e=s.class;"amisSchema"===t.componentType&&(e=t=>{var{body:e,render:a}=t;const[i,r]=l.useState(null);return l.useEffect(()=>{var e=s.class(t);e&&e.then&&"function"==typeof e.then?e.then(e=>{r(e)}):r(e)},[]),l.createElement(l.Fragment,null,l.createElement(l.Fragment,null,i&&a?a("body",i):""),l.createElement(l.Fragment,null,a?a("body",e):""))}),a[t.usage]?(a[t.usage]({test:new RegExp("(^|/)"+t.type),type:t.type,weight:t.weight,autoVar:!0})(e),console.info("注册了一个自定义amis组件:",{type:t.type,weight:t.weight,component:e,framework:t.framework,usage:t.usage})):console.error(`${consoleTag}自定义组件注册失败,不存在${t.usage}自定义组件类型。`),RegisterRenders.push(t.componentName)}})}},amisRender=(e,t,a={},i={},r)=>{var s=amisRequire("amis/embed"),{router:r,assets:l}=r;return registerRenders(l),s.embed(e,t,a,Object.assign(getEvn(r),i))},STEEDOS_AUTH={},getBuilderContext=()=>"undefined"==typeof window?{}:Builder.settings.context||Builder.settings,setSteedosAuth=e=>{Object.assign(STEEDOS_AUTH,e)};async function fetchAPI(e,t={credentials:"include"}){var a={"Content-Type":"application/json"},i=getAuthorization(),i=(i&&(a.Authorization=i),t.headers=Object.assign({},a,t.headers),t.credentials="include",await fetch(""+getRootUrl()+e,t));if(401===i.status)throw new Error(401);a=await i.json();if(a.errors)throw console.error(a.errors),new Error("Failed to fetch API");return a}function getFileSrc(e){return getRootUrl()+"/api/files/files/"+e}function getImageSrc(e){return getRootUrl()+"/api/files/images/"+e}function getTenantId(){try{let e=getBuilderContext().tenantId;var t;return(window.location.search&&!e&&(t=new URLSearchParams(window.location.search),e=t.get("X-Space-Id")),e)?e:null}catch(e){console.error(e)}}function getAuthToken(){try{var e=getBuilderContext().authToken;return e?e:null}catch(e){console.error(e)}}function getAuthorization(){try{var e=getBuilderContext(),t=e.tenantId,a=e.authToken;return t&&a?`Bearer ${t},`+a:null}catch(e){console.error(e)}}function getUserId(){try{var e=getBuilderContext().userId;return e?e:null}catch(e){console.error(e)}}function absoluteUrl(e){return""+getRootUrl()+e}function getRootUrl(e){var t=getBuilderContext();return t.rootUrl||("undefined"!=typeof window?window.localStorage.getItem("steedos:rootUrl"):"")||e}function setRootUrl(e){endsWith(e,"/")&&(e=e.substring(0,e.length-1)),localStorage.setItem("steedos:rootUrl",e)}const getSteedosAuth=()=>Object.assign({},cloneDeep(STEEDOS_AUTH)||{},getBuilderContext()||{});async function getFieldsTemplate(e,t){0!=t&&(t=!0);let a=["_id"],i=[],r=[];for(const s of r=_$1.isArray(e)?e:_$1.values(e))s.name.indexOf(".")<0&&(!t||"lookup"!=s.type&&"master_detail"!=s.type?a.push(s.alias?s.alias+":"+s.name:s.name):(a.push(""+s.name),i.push(""+s.name)),includes(["time","date","datetime","boolean","number","currency"],s.type)&&a.push(""+s.name),includes(["time","filesize","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary","object","grid"],s.type)&&i.push(""+s.name));return i=_$1.uniq(i),a=_$1.uniq(a),0<i.length?`${a.join(",")},_display:_ui{${i.join(",")}}`:""+a.join(" ")}function getRecordPermissionsTemplate(){return`
1
+ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith,cloneDeep,includes,toArray,mergeWith,get,map,keys,sortBy,compact,isBoolean,omitBy,isNil,isString,findKey,slice,defaultsDeep as defaultsDeep$1,isObject as isObject$1,has,filter,startsWith}from"lodash";import isPlainObject from"lodash/isPlainObject";import{lookupToAmisPicker as lookupToAmisPicker$1,Router as Router$1,getSteedosAuth as getSteedosAuth$1,lookupToAmis as lookupToAmis$1,fetchAPI as fetchAPI$1}from"@steedos-widgets/amis-lib";const RegisterRenders=[],normalizeLink=(e,t=window.location)=>{(e=e||"")&&"#"===e[0]?e=t.pathname+t.search+e:e&&"?"===e[0]&&(e=t.pathname+e);var a=e.indexOf("?"),i=e.indexOf("#");let r=~a?e.substring(0,a):~i?e.substring(0,i):e;a=~a?e.substring(a,~i?i:void 0):"",e=~i?e.substring(i):t.hash;if(r){if("/"!=r[0]&&!/^https?\:\/\//.test(r)){var s,n=t.pathname.split("/");for(n.pop();s=/^\.\.?\//.exec(r);)"../"===s[0]&&n.pop(),r=r.substring(s[0].length);r=n.concat(r).join("/")}}else r=t.pathname;return r+a+e},amisRootClick=(e,t)=>{"a"===t.target.nodeName.toLocaleLowerCase()&&t.target.href&&(t.preventDefault(),e.push(t.target.href))},getEvn=a=>({theme:"antd",notify:(e,t)=>{t.props?.schema.tpl?SteedosUI.message[e](t.props?.schema.tpl):"string"==typeof t?SteedosUI.message[e](t):console.warn("notify",e,t)},confirm:a=>new Promise((e,t)=>SteedosUI.Modal.confirm({title:a,onOk:()=>{e(!0)},okText:"确认",cancelText:"取消"})),jumpTo:(e,t)=>{if("goBack"===e)return window.history.back();e=normalizeLink(e),t&&"url"===t.actionType?!0===t.blank?window.open(e):a.push(e):t&&e&&t.target?window.open(e,t.target):/^https?:\/\//.test(e)?window.location.replace(e):a.push(e)}}),registerRenders=e=>{if(!isEmpty(e)&&isArray(e)){var t=amisRequire("amis");const a={renderer:t.Renderer,formitem:t.FormItem,options:t.OptionsControl};let n=amisRequire("react");each(e,t=>{if(!find(RegisterRenders,e=>e===t.componentName)){let s=Builder.components.find(e=>e.name===t.componentName),e=s.class;"amisSchema"===t.componentType&&(e=t=>{var{body:e,render:a}=t;const[i,r]=n.useState(null);return n.useEffect(()=>{var e=s.class(t);e&&e.then&&"function"==typeof e.then?e.then(e=>{r(e)}):r(e)},[]),n.createElement(n.Fragment,null,n.createElement(n.Fragment,null,i&&a?a("body",i):""),n.createElement(n.Fragment,null,a?a("body",e):""))}),a[t.usage]?(a[t.usage]({test:new RegExp("(^|/)"+t.type),type:t.type,weight:t.weight,autoVar:!0})(e),console.info("注册了一个自定义amis组件:",{type:t.type,weight:t.weight,component:e,framework:t.framework,usage:t.usage})):console.error(`${consoleTag}自定义组件注册失败,不存在${t.usage}自定义组件类型。`),RegisterRenders.push(t.componentName)}})}},amisRender=(e,t,a={},i={},r)=>{var s=amisRequire("amis/embed"),{router:r,assets:n}=r;return registerRenders(n),s.embed(e,t,a,Object.assign(getEvn(r),i))},STEEDOS_AUTH={},getBuilderContext=()=>"undefined"==typeof window?{}:Builder.settings.context||Builder.settings,setSteedosAuth=e=>{Object.assign(STEEDOS_AUTH,e)};async function fetchAPI(e,t={credentials:"include"}){var a={"Content-Type":"application/json"},i=getAuthorization(),i=(i&&(a.Authorization=i),t.headers=Object.assign({},a,t.headers),t.credentials="include",await fetch(""+getRootUrl()+e,t));if(401===i.status)throw new Error(401);a=await i.json();if(a.errors)throw console.error(a.errors),new Error("Failed to fetch API");return a}function getFileSrc(e){return getRootUrl()+"/api/files/files/"+e}function getImageSrc(e){return getRootUrl()+"/api/files/images/"+e}function getTenantId(){try{let e=getBuilderContext().tenantId;var t;return(window.location.search&&!e&&(t=new URLSearchParams(window.location.search),e=t.get("X-Space-Id")),e)?e:null}catch(e){console.error(e)}}function getAuthToken(){try{var e=getBuilderContext().authToken;return e?e:null}catch(e){console.error(e)}}function getAuthorization(){try{var e=getBuilderContext(),t=e.tenantId,a=e.authToken;return t&&a?`Bearer ${t},`+a:null}catch(e){console.error(e)}}function getUserId(){try{var e=getBuilderContext().userId;return e?e:null}catch(e){console.error(e)}}function absoluteUrl(e){return""+getRootUrl()+e}function getRootUrl(e){var t=getBuilderContext();return t.rootUrl||("undefined"!=typeof window?window.localStorage.getItem("steedos:rootUrl"):"")||e}function setRootUrl(e){endsWith(e,"/")&&(e=e.substring(0,e.length-1)),localStorage.setItem("steedos:rootUrl",e)}const getSteedosAuth=()=>Object.assign({},cloneDeep(STEEDOS_AUTH)||{},getBuilderContext()||{});async function getFieldsTemplate(e,t){0!=t&&(t=!0);let a=["_id"],i=[],r=[];for(const s of r=_$1.isArray(e)?e:_$1.values(e))s.name.indexOf(".")<0&&(!t||"lookup"!=s.type&&"master_detail"!=s.type?a.push(s.alias?s.alias+":"+s.name:s.name):(a.push(""+s.name),i.push(""+s.name)),includes(["time","date","datetime","boolean","number","currency"],s.type)&&a.push(""+s.name),includes(["time","filesize","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary","object","grid"],s.type)&&i.push(""+s.name));return i=_$1.uniq(i),a=_$1.uniq(a),0<i.length?`${a.join(",")},_display:_ui{${i.join(",")}}`:""+a.join(" ")}function getRecordPermissionsTemplate(){return`
2
2
  recordPermissions: _permissions{
3
3
  allowCreate,
4
4
  allowCreateFiles,
@@ -80,6 +80,8 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
80
80
  delete formData.modified;
81
81
  delete formData.modified_by;
82
82
  delete formData._display;
83
+ delete formData.initialValues;
84
+ delete formData.editFormInited;
83
85
  ${getScriptForReadonlyFields(e)}
84
86
  ${getScriptForRemoveUrlPrefixForImgFields(e)}
85
87
  ${getScriptForSimplifiedValueForFileFields(e)}
@@ -93,11 +95,11 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
93
95
  ${getSaveDataTpl(e)}
94
96
  api.data = {query: query.replace('{__saveData}', __saveData)};
95
97
  return api;
96
- `}async function getFindQuery(e,t,a,i){var r=i.limit||10;let s=`(top: ${r})`,l=(t&&(s=`(filters:["_id", "=", "${t}"], top: ${r})`),"data");i&&(i.alias&&(l=i.alias),i.filters&&(s=`(filters:${i.filters})`),i.queryOptions&&(s=`(${i.queryOptions})`));var t="",r=(e.enable_tree&&_$1.includes(_$1.keys(e.fields),"parent")&&_$1.includes(_$1.keys(e.fields),"children")&&(t=",parent,children"),""),n=("cms_files"===e.name&&(r=",versions"),!1===i.count?"":`,count:${e.name}__count(filters:{__filters})`),o=i.moreQueries?.length?","+i.moreQueries.map(function(e){return e.replace(/^{/,"").replace(/}$/,"")}).join(","):"";return{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:`{${l}:${e.name}${s}{${await getFieldsTemplate(a,i.expand)}${t}${r}}${n}${o}}`}}function getRecordPermissionsQuery(e,t,a){let i="",r=(t&&(i=`(filters:["${e.idFieldName}", "=", "${t}"])`),"data"),s=(a&&(a.alias&&(r=a.alias),a.filters&&(i=`(filters:${a.filters})`),a.queryOptions&&(i=`(${a.queryOptions})`)),getRecordPermissionsTemplate());return a?.fields&&a.fields.length&&(s=`
98
+ `}async function getFindQuery(e,t,a,i){var r=i.limit||10;let s=`(top: ${r})`,n=(t&&(s=`(filters:["_id", "=", "${t}"], top: ${r})`),"data");i&&(i.alias&&(n=i.alias),i.filters&&(s=`(filters:${i.filters})`),i.queryOptions&&(s=`(${i.queryOptions})`));var t="",r=(e.enable_tree&&_$1.includes(_$1.keys(e.fields),"parent")&&_$1.includes(_$1.keys(e.fields),"children")&&(t=",parent,children"),""),o=("cms_files"===e.name&&(r=",versions"),!1===i.count?"":`,count:${e.name}__count(filters:{__filters})`),l=i.moreQueries?.length?","+i.moreQueries.map(function(e){return e.replace(/^{/,"").replace(/}$/,"")}).join(","):"";return{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:`{${n}:${e.name}${s}{${await getFieldsTemplate(a,i.expand)}${t}${r}}${o}${l}}`}}function getRecordPermissionsQuery(e,t,a){let i="",r=(t&&(i=`(filters:["${e.idFieldName}", "=", "${t}"])`),"data"),s=(a&&(a.alias&&(r=a.alias),a.filters&&(i=`(filters:${a.filters})`),a.queryOptions&&(i=`(${a.queryOptions})`)),getRecordPermissionsTemplate());return a?.fields&&a.fields.length&&(s=`
97
99
  recordPermissions: _permissions{
98
100
  ${a.fields.join(",")}
99
101
  }
100
- `),{query:`{${r}:${e.name}${i}{${e.idFieldName},${s}}}`}}function getApi$2(e){if(!e)return"${context.rootUrl}/graphql"}const Router={getTabDisplayAs(e){e=localStorage.getItem(`tab:${e}:display`);return e||"grid"},setTabDisplayAs(e,t){localStorage.setItem(`tab:${e}:display`,t)},getAppPath({appId:e}){return"/app/"+e},getPagePath(){},getObjectListViewPath({appId:e,objectName:t,listViewName:a}){return`/app/${e}/${t}/grid/`+a},getObjectDetailPath(e){var{appId:e,objectName:t,recordId:a,_templateType:i}=e,r=Router.getTabDisplayAs(t);return"JavaScript"===i?`/app/${e}/${t}/view/${a}?display=${r}&side_object=<%=item.objectName%>&side_listview_id=<%=item.listName%>`:`/app/${e}/${t}/view/${a}?display=${r}&side_object=\${objectName}&side_listview_id=\${listName}`},getObjectRelatedViewPath({appId:e,masterObjectName:t,masterRecordId:a,objectName:i,foreignKey:r}){return`/app/${e}/${t}/${a}/${i}/grid?related_field_name=`+r}};function getCreatedInfoTpl(e){return`<div><a href='${Router.getObjectDetailPath({formFactor:e,appId:"admin",objectName:"users",recordId:"${created_by._id}"})}'>\${_display.created_by.label}</a>\${_display.created}</div>`}function getModifiedInfoTpl(e){return`<div><a href='${Router.getObjectDetailPath({formFactor:e,appId:"admin",objectName:"users",recordId:"${modified_by._id}"})}'>\${_display.modified_by.label}</a>\${_display.modified}</div>`}function getNumberTpl(e){return`<div>\${_display.${e.name}}</div>`}function getTimeTpl(e){return`<div>\${_display.${e.name}}</div>`}function getDateTpl(e){return`<div>\${_display.${e.name}}</div>`}function getDateTimeTpl(e){return`<div>\${_display.${e.name}}</div>`}function getUiFieldTpl(e){return`<div>\${_display.${e.name}}</div>`}function getUiFileSizeTpl(e){return`<div>\${_display.${e.name}}</div>`}async function getRefObjectNameFieldName(e){return(await getUISchema(e.reference_to)).NAME_FIELD_KEY||"name"}function getSelectTpl(e){return`<div>\${_display.${e.name}}</div>`}function getNameTplUrl(e,t){return"cms_files"===t.objectName?"${context.rootUrl}/api/files/files/${versions[0]}?download=true":Router.getObjectDetailPath({...t,formFactor:t.formFactor,appId:"${appId}",objectName:t.objectName||"${objectName}",recordId:`\${${t.idFieldName}}`})}function getNameTpl(e,t){return`<a href="${getNameTplUrl(e,t)}">\${${e.name}}</a>`}function getRelatedFieldTpl(t,a){let i="";if(!t.reference_to&&(t.optionsFunction||t._optionsFunction))return`\${${t.name}__label}`;var r,s=a.onlyDisplayLabel;if(_.isString(t.reference_to)||!t.reference_to)if(t.multiple){let e="<%=item.label%>";s||(r=Router.getObjectDetailPath({formFactor:a.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"}),e=`<a href="${r}"><%=item.label%></a>`),i=`
102
+ `),{query:`{${r}:${e.name}${i}{${e.idFieldName},${s}}}`}}function getApi$2(e){if(!e)return"${context.rootUrl}/graphql"}const Router={getTabDisplayAs(e){e=localStorage.getItem(`tab.${e}.display`);return e||"grid"},setTabDisplayAs(e,t){localStorage.setItem(`tab.${e}.display`,t)},getAppPath({appId:e}){return"/app/"+e},getPagePath(){},getObjectListViewPath({appId:e,objectName:t,listViewName:a}){return`/app/${e}/${t}/grid/`+a},getObjectDetailPath(e){var{appId:e,objectName:t,recordId:a,_templateType:i}=e,r=Router.getTabDisplayAs(t);return"JavaScript"===i?`/app/${e}/${t}/view/${a}?display=${r}&side_object=<%=item.objectName%>&side_listview_id=<%=item.listName%>`:`/app/${e}/${t}/view/${a}?display=${r}&side_object=\${objectName}&side_listview_id=\${listName}`},getObjectRelatedViewPath({appId:e,masterObjectName:t,masterRecordId:a,objectName:i,foreignKey:r}){return`/app/${e}/${t}/${a}/${i}/grid?related_field_name=`+r}};function getCreatedInfoTpl(e){return`<div><a href='${Router.getObjectDetailPath({formFactor:e,appId:"admin",objectName:"users",recordId:"${created_by._id}"})}'>\${_display.created_by.label}</a>\${_display.created}</div>`}function getModifiedInfoTpl(e){return`<div><a href='${Router.getObjectDetailPath({formFactor:e,appId:"admin",objectName:"users",recordId:"${modified_by._id}"})}'>\${_display.modified_by.label}</a>\${_display.modified}</div>`}function getNumberTpl(e){return`<div>\${_display.${e.name}}</div>`}function getTimeTpl(e){return`<div>\${_display.${e.name}}</div>`}function getDateTpl(e){return`<div>\${_display.${e.name}}</div>`}function getDateTimeTpl(e){return`<div>\${_display.${e.name}}</div>`}function getUiFieldTpl(e){return`<div>\${_display.${e.name}}</div>`}function getUiFileSizeTpl(e){return`<div>\${_display.${e.name}}</div>`}async function getRefObjectNameFieldName(e){return(await getUISchema(e.reference_to)).NAME_FIELD_KEY||"name"}function getSelectTpl(e){return`<div>\${_display.${e.name}}</div>`}function getNameTplUrl(e,t){return"cms_files"===t.objectName?"${context.rootUrl}/api/files/files/${versions[0]}?download=true":Router.getObjectDetailPath({...t,formFactor:t.formFactor,appId:"${appId}",objectName:t.objectName||"${objectName}",recordId:`\${${t.idFieldName}}`})}function getNameTpl(e,t){return`<a href="${getNameTplUrl(e,t)}">\${${e.name}}</a>`}function getRelatedFieldTpl(t,a){let i="";if(!t.reference_to&&(t.optionsFunction||t._optionsFunction))return`\${${t.name}__label}`;var r,s=a.onlyDisplayLabel;if(_.isString(t.reference_to)||!t.reference_to)if(t.multiple){let e="<%=item.label%>";s||(r=Router.getObjectDetailPath({formFactor:a.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"}),e=`<a href="${r}"><%=item.label%></a>`),i=`
101
103
  <% if (data._display.${t.name} && data._display.${t.name}.length) { %><% data._display.${t.name}.forEach(function(item,index) { %> <% if(index>0 && index<data._display.${t.name}.length){ %> , <% } %> ${e} <% }); %><% } %>
102
104
  `}else{let e=`\${_display.${t.name}.label}`;s||(r=Router.getObjectDetailPath({formFactor:a.formFactor,appId:"${appId}",objectName:`\${_display.${t.name}.objectName}`,recordId:`\${_display.${t.name}.value}`}),e=`<a href="${r}">\${_display.${t.name}.label}</a>`),i=e}else{let e="<%=item.label%>";s||(r=Router.getObjectDetailPath({formFactor:a.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"}),e=`<a href="${r}"><%=item.label%></a>`),i=`
103
105
  <% if (data._display.${t.name} && data._display.${t.name}.length) { %><% data._display.${t.name}.forEach(function(item) { %> ${e} <% }); %><% } %>
@@ -194,6 +196,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
194
196
  return api;
195
197
  `,adaptor:`
196
198
  const recordId = api.body.recordId;
199
+ let initialValues={};
197
200
  if(recordId && payload.data.data){
198
201
  var data = payload.data.data[0];
199
202
  const dataKeys = _.keys(data);
@@ -215,7 +218,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
215
218
  }
216
219
  }
217
220
  };
218
- payload.data._initialValue = data;
221
+ initialValues = data;
219
222
  }
220
223
  else{
221
224
  var uiSchema = api.body.uiSchema;
@@ -230,10 +233,12 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
230
233
  if(defaultData && _.isObject(defaultData) && !_.isArray(defaultData)){
231
234
  defaultValues = Object.assign({}, defaultValues, defaultData)
232
235
  }
233
- payload.data._initialValue = defaultValues;
236
+ initialValues = defaultValues;
237
+ }
238
+ payload.data = {
239
+ initialValues,
240
+ editFormInited: true
234
241
  }
235
- payload.data.editFormInited = true;
236
- delete payload.extensions;
237
242
  return payload;
238
243
  `,data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getSaveApi(e,t,a,i){return{method:"post",url:getApi$2(),data:getSaveQuery(e,t),requestAdaptor:getSaveRequestAdaptor(a),responseData:{recordId:"${record._id}"},adaptor:`
239
244
  if(payload.errors){
@@ -249,22 +254,38 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
249
254
  })
250
255
  api.data = {query: \`mutation{\${deleteArray.join(',')}}\`};
251
256
  return api;
252
- `,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const getFieldSchemaArray=e=>{let i=[];return i.length=0,_$1.forEach(e.fields,(e,t)=>{_$1.has(e,"name")||(e.name=t)}),_$1.forEach(_$1.sortBy(e.fields,"sort_no"),e=>{e.group&&"null"!=e.group&&"-"!=e.group||(e.group="通用");var t=e.name,a=/\w+\.\w+/.test(t);"grid"!=e.type&&"object"!=e.type||(e.is_wide=!0),a||e.hidden||i.push(Object.assign({name:t},e,{permission:{allowEdit:!0}}))}),i},getSection=async(t,e,a,i)=>{e=_$1.filter(e,{group:a});if(e.length!=_$1.filter(e,["hidden",!0]).length){var r,s=[];for(const l of e){let e=l;"grid"===l.type?e=await getGridFieldSubFields(l,t):"object"===l.type&&(e=await getObjectFieldSubFields(l,t)),e.name.indexOf(".")<0&&(i.__permissionFields=t,(r=await convertSFieldToAmisField(e,e.readonly,i))&&s.push(r))}e=_$1.map(_$1.compact(_$1.map(s,"visibleOn")),e=>e),a={type:"fieldSet",title:a,collapsable:!0,body:s};return 0<e.length&&s.length===e.length&&(a.visibleOn=""+e.join(" || ")),a}},getSections=async(e,t,a)=>{var i=getFieldSchemaArray(t),r=[];for(const l in _$1.groupBy(i,"group")){var s=await getSection(e,i,l,a);0<s.body.length&&r.push(s)}return r};async function getFormBody(e,t,a){return getSections(e,t,a)}async function getListBody(e,t){var a=[];for(const r of e){var i=await getFieldTpl(r,t);let e=i?"tpl":"text";r.hidden||r.extra||a.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:e,tpl:i,toggled:r.toggled})}return{type:"hbox",columns:a}}function getDefaultParams$1(e){return{perPage:e.top||e.perPage||10}}async function getListSchema$1(e,t){e=(await getListBody(e,t)).columns;return{mode:"list",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:getDefaultParams$1(t),syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:"${name}",listItem:{body:[...e],actions:!1===t.actions?null:[{icon:"fa fa-eye",label:"查看",type:"button",actionType:"link",link:Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:t.tabId,listView:t.listView,recordId:"${_id}"})}]}}}async function getCardSchema(e,t){let a=null;var i=_.find(e,e=>e.name===t.labelFieldName),i=(i&&(a=await getFieldTpl(i,t)),await getListBody(_.filter(e,e=>e.name!=t.labelFieldName),t));return{mode:"cards",name:"cards",draggable:!1,headerToolbar:["statistics","pagination"],defaultParams:getDefaultParams$1(t),syncLocation:!1,keepItemSelectionOnPageChange:!1,checkOnItemClick:!1,labelTpl:`\${${t.labelFieldName}}`,card:{type:"card",header:{title:a},body:[...i.columns]}}}const defaultsDeep=(...e)=>{let t={};return toArray(e).reverse().forEach(e=>{mergeWith(t,e,(e,t)=>isArray(t)?t:void 0)}),t},globalTag="__G_L_O_B_A_L__",getParentPath=function(e){return"string"!=typeof e||1===(e=e.split(".")).length?"#":(e.pop(),e.join("."))},getValueByPath=function(e,t){return"#"!==t&&t?"string"==typeof t?get(e,t):void console.error("path has to be a string"):e||{}},isExpression=function(e){var t,a;return"string"==typeof e&&(t=/^{{(function.+)}}$/,a=/^{{(.+=>.+)}}$/,!("string"!=typeof e||!e.match(/^{{(.+)}}$/)||e.match(t)||e.match(a)))},parseSingleExpression=function(t,e,a,i,r={}){var s,l;if(void 0===e&&(e={}),l=getParentPath(a),l=getValueByPath(e,l)||{},"string"!=typeof t)return t;s=t.substring(2,t.length-2),r=`
253
- var $user=${JSON.stringify(r)}; return `+s.replace(/\bformData\b/g,JSON.stringify(e).replace(/\bglobal\b/g,globalTag)).replace(/\bglobal\b/g,JSON.stringify(i)).replace(new RegExp("\\b"+globalTag+"\\b","g"),"global").replace(/rootValue/g,JSON.stringify(l));try{return Function(r)()}catch(e){return console.log(e,t,a),t}};var config={listView:{newRecordMode:"modal",editRecordMode:"modal",perPage:20}};async function getPage({type:e,pageId:t,appId:a,objectName:i="",recordId:r,formFactor:s="LARGE"}){e=await fetchAPI(`/api/pageSchema/${e}?app=${a}&objectApiName=${i=i||""}&recordId=${r=r||""}&pageId=${t=t||""}&formFactor=`+s);if(e&&e.schema)return e}const getSchema$4=async(e,t)=>{e="新建 "+e.label;let a={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"",id:"u:f8ad8ddf153a",mode:"edit",layout:"normal"};t=await getPage({type:"form",appId:t.appId,objectName:t.objectName,formFactor:t.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:"${defaultData}",appId:"${appId}",objectName:"${objectName}",context:"${context}",global:"${global}",listViewId:"${listViewId}",uiSchema:"${uiSchema}"},title:e,bodyClassName:"",body:[a=t?_.isString(t.schema)?JSON.parse(t.schema):t.schema:a],id:"u:0b96577db93c",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"p-0 border-0",id:"u:aef99d937b10"}},getSchema$3=async(e,t)=>{e="编辑 "+e.label;let a={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};t=await getPage({type:"form",appId:t.appId,objectName:t.objectName,formFactor:t.formFactor});return{type:"service",body:[{type:"button",label:"编辑",id:"u:standard_edit",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:e,bodyClassName:"",body:[a=t?_.isString(t.schema)?JSON.parse(t.schema):t.schema:a],id:"u:ee95697baa4f",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"",id:"u:3c5cbc0429bb"}},getSchema$2=e=>({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:`
257
+ `,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const getFieldSchemaArray=e=>{let i=[];return i.length=0,_$1.forEach(e.fields,(e,t)=>{_$1.has(e,"name")||(e.name=t)}),_$1.forEach(_$1.sortBy(e.fields,"sort_no"),e=>{e.group&&"null"!=e.group&&"-"!=e.group||(e.group="通用");var t=e.name,a=/\w+\.\w+/.test(t);"grid"!=e.type&&"object"!=e.type||(e.is_wide=!0),a||e.hidden||i.push(Object.assign({name:t},e,{permission:{allowEdit:!0}}))}),i},getSection=async(t,e,a,i)=>{e=_$1.filter(e,{group:a});if(e.length!=_$1.filter(e,["hidden",!0]).length){var r,s=[];for(const n of e){let e=n;"grid"===n.type?e=await getGridFieldSubFields(n,t):"object"===n.type&&(e=await getObjectFieldSubFields(n,t)),e.name.indexOf(".")<0&&(i.__permissionFields=t,(r=await convertSFieldToAmisField(e,e.readonly,i))&&s.push(r))}e=_$1.map(_$1.compact(_$1.map(s,"visibleOn")),e=>e),a={type:"fieldSet",title:a,collapsable:!0,body:s};return 0<e.length&&s.length===e.length&&(a.visibleOn=""+e.join(" || ")),a}},getSections=async(e,t,a)=>{var i=getFieldSchemaArray(t),r=[];for(const n in _$1.groupBy(i,"group")){var s=await getSection(e,i,n,a);0<s.body.length&&r.push(s)}return r};async function getFormBody(e,t,a){return getSections(e,t,a)}async function getListBody(e,t){var a=[];for(const r of e){var i=await getFieldTpl(r,t);let e=i?"tpl":"text";r.hidden||r.extra||a.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:e,tpl:i,toggled:r.toggled})}return{type:"hbox",columns:a}}function getDefaultParams$1(e){return{perPage:e.top||e.perPage||10}}async function getListSchema$1(e,t){e=(await getListBody(e,t)).columns;return{mode:"list",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:getDefaultParams$1(t),syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:"${name}",listItem:{body:[...e],actions:!1===t.actions?null:[{icon:"fa fa-eye",label:"查看",type:"button",actionType:"link",link:Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:t.tabId,listView:t.listView,recordId:"${_id}"})}]}}}async function getCardSchema(e,t){let a=null;var i=_.find(e,e=>e.name===t.labelFieldName),i=(i&&(a=await getFieldTpl(i,t)),await getListBody(_.filter(e,e=>e.name!=t.labelFieldName),t));return{mode:"cards",name:"cards",draggable:!1,headerToolbar:["statistics","pagination"],defaultParams:getDefaultParams$1(t),syncLocation:!1,keepItemSelectionOnPageChange:!1,checkOnItemClick:!1,labelTpl:`\${${t.labelFieldName}}`,card:{type:"card",header:{title:a},body:[...i.columns]}}}const defaultsDeep=(...e)=>{let t={};return toArray(e).reverse().forEach(e=>{mergeWith(t,e,(e,t)=>isArray(t)?t:void 0)}),t},globalTag="__G_L_O_B_A_L__",getParentPath=function(e){return"string"!=typeof e||1===(e=e.split(".")).length?"#":(e.pop(),e.join("."))},getValueByPath=function(e,t){return"#"!==t&&t?"string"==typeof t?get(e,t):void console.error("path has to be a string"):e||{}},isExpression=function(e){var t,a;return"string"==typeof e&&(t=/^{{(function.+)}}$/,a=/^{{(.+=>.+)}}$/,!("string"!=typeof e||!e.match(/^{{(.+)}}$/)||e.match(t)||e.match(a)))},parseSingleExpression=function(t,e,a,i,r={}){var s,n;if(void 0===e&&(e={}),n=getParentPath(a),n=getValueByPath(e,n)||{},"string"!=typeof t)return t;s=t.substring(2,t.length-2),r=`
258
+ var $user=${JSON.stringify(r)}; return `+s.replace(/\bformData\b/g,JSON.stringify(e).replace(/\bglobal\b/g,globalTag)).replace(/\bglobal\b/g,JSON.stringify(i)).replace(new RegExp("\\b"+globalTag+"\\b","g"),"global").replace(/rootValue/g,JSON.stringify(n));try{return Function(r)()}catch(e){return console.log(e,t,a),t}};var config={listView:{newRecordMode:"modal",editRecordMode:"modal",perPage:20}};const getSchema$4=async(e,t)=>{return{type:"service",body:[{type:"button",label:"新建",id:"u:standard_new",level:"default",onEvent:{click:{weight:0,actions:[{actionType:"dialog",dialog:{type:"dialog",data:{$master:"$$",defaultData:"${defaultData}",appId:"${appId}",objectName:"${objectName}",context:"${context}",global:"${global}",listViewId:"${listViewId}",uiSchema:"${uiSchema}",isLookup:"${isLookup}",listName:"${listName}"},title:"新建 ${uiSchema.label}",body:[{type:"service",id:"u:1678e148c4d2",messages:{},schemaApi:{data:{isLookup:"${isLookup}"},url:"${context.rootUrl}/api/pageSchema/form?app=${appId}&objectApiName=${objectName}&formFactor=${formFactor}",method:"get",messages:{},requestAdaptor:"",adaptor:`
259
+ let formSchema = {
260
+ "type": "steedos-object-form",
261
+ "label": "对象表单",
262
+ "objectApiName": "\${objectName}",
263
+ "recordId": "",
264
+ "mode": "edit",
265
+ "layout": "normal"
266
+ };
267
+
268
+ if (payload && payload.schema) {
269
+ formSchema = _.isString(payload.schema) ? JSON.parse(payload.schema) : payload.schema;
270
+ }
271
+ return {
272
+ data: formSchema
273
+ };
274
+ `}}],showCloseButton:!0,id:"u:e11347411d2d",closeOnEsc:!1,closeOnOutside:!1,size:"lg"}}]}}}],regions:["body"],className:"p-0 border-0",id:"u:aef99d937b10"}};async function getPage({type:e,pageId:t,appId:a,objectName:i="",recordId:r,formFactor:s="LARGE"}){e=await fetchAPI(`/api/pageSchema/${e}?app=${a}&objectApiName=${i=i||""}&recordId=${r=r||""}&pageId=${t=t||""}&formFactor=`+s);if(e&&e.schema)return e}const getSchema$3=async(e,t)=>{e="编辑 "+e.label;let a={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};t=await getPage({type:"form",appId:t.appId,objectName:t.objectName,formFactor:t.formFactor});return{type:"service",body:[{type:"button",label:"编辑",id:"u:standard_edit",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:e,bodyClassName:"",body:[a=t?_.isString(t.schema)?JSON.parse(t.schema):t.schema:a],id:"u:ee95697baa4f",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"",id:"u:3c5cbc0429bb"}},getSchema$2=e=>({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:`
254
275
  if(payload.errors){
255
276
  payload.status = 2;
256
277
  payload.msg = payload.errors[0].message;
257
278
  }
258
279
  return payload;
259
- `},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"]}),getSchema$1=e=>({type:"service",body:[{type:"button",label:"导入数据",id:"u:import_data",onEvent:{click:{actions:[{actionType:"dialog",dialog:{data:{"&":"$$",object_name:"${objectName}"},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:"tpl",className:"whitespace-nowrap"},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"}),getSchema=e=>({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"]}),StandardButtons={getStandardNew:async(e,t)=>({type:"amis_button",amis_schema:await getSchema$4(e,t)}),getStandardEdit:async(e,t)=>({type:"amis_button",amis_schema:await getSchema$3(e,t)}),getStandardDelete:async(e,t)=>({type:"amis_button",amis_schema:await getSchema$2(e)}),getStandardDeleteMany:async(e,t)=>({type:"script",todo:function(){var{appId:e,objectName:t,uiSchema:a}=this,e=this.scopeId||`amis-${e}-${t}-listview`,t=(this.scope||SteedosUI?.getRef(e)).getComponentById("listview_"+a.name);_.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])}}),getStandardImportData:async(e,t)=>({type:"amis_button",amis_schema:await getSchema$1()}),getStandardOpenView:async(e,t)=>({type:"amis_button",amis_schema:await getSchema()})},getGlobalData$1=()=>({now:new Date});function getButtonVisibleOn$1(e){let t=e.visible;if(e._visible&&(t=e._visible),t=___default.isBoolean(t)?t.toString():t)return t.trim().startsWith("function")?t+`.apply({
280
+ `},messages:{success:"删除成功",failed:"删除失败"}},actionType:"ajax"},{actionType:"broadcast",args:{eventName:"@data.changed."+e.name},data:{objectName:""+e.name,__deletedRecord:!0}}]}}}],regions:["body"]}),getSchema$1=e=>({type:"service",body:[{type:"button",label:"导入数据",id:"u:import_data",onEvent:{click:{actions:[{actionType:"dialog",dialog:{data:{"&":"$$",object_name:"${objectName}"},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:"tpl",className:"whitespace-nowrap"},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"}),getSchema=e=>({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"]}),StandardButtons={getStandardNew:async(e,t)=>({type:"amis_button",amis_schema:await getSchema$4()}),getStandardEdit:async(e,t)=>({type:"amis_button",amis_schema:await getSchema$3(e,t)}),getStandardDelete:async(e,t)=>({type:"amis_button",amis_schema:await getSchema$2(e)}),getStandardDeleteMany:async(e,t)=>({type:"script",todo:function(){var{appId:e,objectName:t,uiSchema:a}=this,e=this.scopeId||`amis-${e}-${t}-listview`,t=(this.scope||SteedosUI?.getRef(e)).getComponentById("listview_"+a.name);_.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])}}),getStandardImportData:async(e,t)=>({type:"amis_button",amis_schema:await getSchema$1()}),getStandardOpenView:async(e,t)=>({type:"amis_button",amis_schema:await getSchema()})},getGlobalData$1=()=>({now:new Date});function getButtonVisibleOn$1(e){let t=e.visible;if(e._visible&&(t=e._visible),t=___default.isBoolean(t)?t.toString():t)return t.trim().startsWith("function")?t+`.apply({
260
281
  object: uiSchema
261
- }, [objectName, _id, recordPermissions, data])`:t;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}const getButtonVisible=(t,e)=>{if(t._visible&&(___default.startsWith(___default.trim(t._visible),"function")?(window.eval("var fun = "+t._visible),t.visible=fun):isExpression(t._visible)&&(t.visible=e=>{parseSingleExpression(t._visible,e.record,"#",getGlobalData$1(),e.userSession)})),!___default.isFunction(t.visible))return t.visible;try{return t.visible(e)}catch(e){}},standardButtonsTodo={standard_delete_many:function(){var{listViewId:e,uiSchema:t,scopeId:a}=this,a=SteedosUI?.getRef(a||e).getComponentById("listview_"+t.name);___default.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])}},getButtons=(t,a)=>{const i=t.permissions&&t.permissions.disabled_actions;let e=___default.sortBy(___default.values(t.actions),"sort");return ___default.has(t,"allow_customActions")&&(e=___default.filter(e,e=>___default.include(t.allow_customActions,e.name))),___default.has(t,"exclude_actions")&&(e=___default.filter(e,e=>!___default.include(t.exclude_actions,e.name))),___default.each(e,e=>{e.objectName=t.name,a.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")}),a.isMobile&&-1<["cms_files","cfs.files.filerecord"].indexOf(t.name)&&___default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),___default.filter(e,e=>___default.indexOf(i,e.name)<0&&"standard_query"!=e.name)},getListViewButtons=(e,t)=>{e=getButtons(e,t);return ___default.filter(e,e=>"list"==e.on)},getObjectDetailButtons=(e,t)=>{e=getButtons(e,t),t=___default.filter(e,e=>"record"==e.on||"record_only"==e.on);return ___default.sortBy(t,"sort")},getObjectDetailMoreButtons=(e,t)=>{e=getButtons(e,t),t=___default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return ___default.sortBy(t,"sort")},getListViewItemButtons=async(e,t)=>{e=getButtons(e,t);return ___default.filter(e,e=>"record"==e.on||"list_item"==e.on||"record_more"===e.on)},getObjectRelatedListButtons=async(e,t)=>{e=getButtons(e,t);return ___default.filter(e,e=>"list"==e.on)},getButton=async(e,t,a)=>{var i=await getUISchema(e);if(i){var r=await getButtons(i,a),r=___default.find(r,e=>e.name===t);if(r)return"standard_edit"==r.name&&"standard_edit"===r.todo&&"amis_button"!=r.type?{label:r.label,name:r.name,on:r.on,...await StandardButtons.getStandardEdit(i,a)}:"cms_files"!=e&&"standard_new"==r.name&&"standard_new"===r.todo&&"amis_button"!=r.type?{label:r.label,name:r.name,on:r.on,...await StandardButtons.getStandardNew(i,a)}:"standard_delete"==r.name&&"standard_delete"===r.todo&&"amis_button"!=r.type?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await StandardButtons.getStandardDelete(i,a)}:i.hasImportTemplates&&"standard_import_data"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await StandardButtons.getStandardImportData(i,a)}:"standard_open_view"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await StandardButtons.getStandardOpenView(i,a)}:"standard_delete_many"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await StandardButtons.getStandardDeleteMany(i,a)}:r}},execute=(e,t)=>{if(e.todo)return ___default.isString(e.todo)&&___default.startsWith(___default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),___default.isFunction(e.todo)?(t={objectName:t.objectName,object_name:t.objectName,object:t.uiSchema,record:t.record,recordId:t.recordId,record_id:t.recordId,...t,action:e},e.todo.apply(t,[t.objectName,t.recordId])):void 0},executeButton=execute;function getObjectListHeaderFirstLine(a,e,t){var{icon:i,label:r}=a;const s=[];each(a.list_views,(e,t)=>{s.push({type:"button",label:e.label,actionType:"link",link:`/app/\${appId}/${a.name}/grid/`+t})});var l=getListViewButtons(a,{}),l=map(l,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e),className:"button_"+e.name})),n=new RegExp("_","g");return{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<svg class="slds-icon slds-icon_container slds-icon-standard-${i&&i.replace(n,"-")} slds-page-header__icon" aria-hidden="true"><use xlink:href="/assets/icons/standard-sprite/svg/symbols.svg#${i}"></use></svg>`},md:"auto",className:"",columnClassName:"flex justify-center items-center",valign:"middle"},{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 !hover:border-none text-lg h-5 font-bold p-0 text-black leading-none",buttons:s}],md:"",columnClassName:"p-l-xs"}],className:"flex justify-between"}],md:"auto"},{body:{type:"flex",items:l},md:"auto",valign:"middle"}],className:"flex justify-between"}}async function getObjectListHeaderSecordLine(e,t,a){e="listview_"+e.name;return{type:"grid",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",columnClassName:"flex items-center"},{body:[await getObjectFieldsFilterButtonSchema(),{type:"button",label:"",icon:"fa fa-refresh",actionType:"reload",target:e,className:"bg-white p-2 rounded border-gray-300 text-gray-500"}],md:"auto"}],className:"flex justify-between"}}async function getObjectListHeaderFieldsFilterBar(t,e,a){var i=keys(t.fields),i=sortBy(compact(map(i,e=>t.fields[e])),"sort_no");return await getObjectFieldsFilterBarSchema(t,i,a)}async function getObjectListHeader$1(e,t,a){return[{type:"wrapper",body:[getObjectListHeaderFirstLine(e)],className:"bg-gray-100 sm:rounded-tl sm:rounded-tr p-4 -mb-4"}]}async function getObjectRecordDetailHeader(e,t,a){var{showRecordTitle:a=!0}=a||{},{name:i,label:r,icon:s}=e,l=getObjectDetailButtons(e,{}),n=getObjectDetailMoreButtons(e,{recordId:t,objectName:i}),l=map(l,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e),className:"button_"+e.name})),n=map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e)})),n=(l.push({type:"steedos-dropdown-button",label:"",buttons:n,className:"slds-icon"}),new RegExp("_","g")),n=s&&s.replace(n,"-"),o=[],n=(a&&o.push({body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<svg class="slds-icon slds-icon_container slds-icon-standard-${n} slds-page-header__icon" aria-hidden="true"><use xlink:href="/assets/icons/standard-sprite/svg/symbols.svg#${s}"></use></svg>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+r,inline:!1,wrapperComponent:"",className:"leading-4 text-md"},{type:"tpl",tpl:"${name}",inline:!1,wrapperComponent:"",className:"leading-5 text-xl font-bold"}],columnClassName:"p-l-xs"}],className:"flex justify-between"}],md:"auto"}),o.push({body:{type:"flex",items:l},md:"auto"}),[{type:"service",data:{"&":"$$",objectName:i,_id:t,recordPermissions:"${record.recordPermissions}",uiSchema:e},body:[{type:"grid",columns:o,className:"flex justify-between"}],messages:{},hiddenOn:"${recordLoaded != true}"}]);return a&&n.push({type:"service",body:[{type:"grid",columns:[o[0]],className:"flex justify-between"}],messages:{},hiddenOn:"${recordLoaded == true}"}),{type:"service",bodyClassName:"",name:"page",data:{"&":"$$",objectName:i,_id:t,recordPermissions:e.permissions,uiSchema:e,record:"${record}"},body:n,className:""}}async function getObjectRecordDetailRelatedListHeader(e,t){var a=e["icon"],e=await getObjectRelatedListButtons(e,{}),e=map(e,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e),className:"button_"+e.name})),i=new RegExp("_","g");return{type:"wrapper",body:[{type:"grid",valign:"middle",columns:[{body:[{type:"grid",valign:"middle",className:"flex justify-between",columns:[{body:{type:"tpl",className:"block",tpl:`<svg class="w-6 h-6 slds-icon slds-icon_container slds-icon-standard-${a&&a.replace(i,"-")}" aria-hidden="true"><use xlink:href="/assets/icons/standard-sprite/svg/symbols.svg#${a}"></use></svg>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:`<a class="text-black text-base font-bold" href="/app/\${appId}/\${masterObjectName}/\${masterRecordId}/\${objectName}/grid?related_field_name=\${relatedKey}">${t}(\${$count})</a>`,inline:!1,wrapperComponent:"",className:""}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:{type:"flex",items:e},md:"auto"}],className:"flex justify-between"}],className:"p-3"}}async function getObjectRelatedListHeader(e,t,a){}const displayAsButton={type:"dropdown-button",icon:"fa fa-table-columns",btnClassName:"antd-Button--iconOnly bg-white p-2 rounded border-gray-300 text-gray-500",align:"right",buttons:[{label:"显示为",children:[{type:"button",label:"表格",onClick:"const url = document.location.pathname + '?display=grid'; props.env.jumpTo(url);"},{type:"button",label:"分栏视图",onClick:"const url = document.location.pathname + '?display=split'; props.env.jumpTo(url);"}]}]};function getObjectHeaderToolbar(e,t,{showDisplayAs:a=!1}={}){return"SMALL"===t?[{type:"tpl",tpl:"${count} 个项目"},{type:"button",align:"right",className:"bg-white p-2 rounded border-gray-300 text-gray-500",label:"",icon:"fa fa-sync",onEvent:{click:{actions:[{actionType:"custom",script:`
282
+ }, [objectName, _id, recordPermissions, data])`:t;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}const getButtonVisible=(t,e)=>{if(t._visible&&(___default.startsWith(___default.trim(t._visible),"function")?(window.eval("var fun = "+t._visible),t.visible=fun):isExpression(t._visible)&&(t.visible=e=>{parseSingleExpression(t._visible,e.record,"#",getGlobalData$1(),e.userSession)})),!___default.isFunction(t.visible))return t.visible;try{return t.visible(e)}catch(e){}},standardButtonsTodo={standard_delete_many:function(){var{listViewId:e,uiSchema:t,scopeId:a}=this,a=SteedosUI?.getRef(a||e).getComponentById("listview_"+t.name);___default.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])}},getButtons=(t,a)=>{const i=t.permissions&&t.permissions.disabled_actions;let e=___default.sortBy(___default.values(t.actions),"sort");return ___default.has(t,"allow_customActions")&&(e=___default.filter(e,e=>___default.include(t.allow_customActions,e.name))),___default.has(t,"exclude_actions")&&(e=___default.filter(e,e=>!___default.include(t.exclude_actions,e.name))),___default.each(e,e=>{e.objectName=t.name,a.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")}),a.isMobile&&-1<["cms_files","cfs.files.filerecord"].indexOf(t.name)&&___default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),___default.filter(e,e=>___default.indexOf(i,e.name)<0&&"standard_query"!=e.name)},getListViewButtons=(e,t)=>{e=getButtons(e,t);return ___default.filter(e,e=>"list"==e.on)},getObjectDetailButtons=(e,t)=>{e=getButtons(e,t),t=___default.filter(e,e=>"record"==e.on||"record_only"==e.on);return ___default.sortBy(t,"sort")},getObjectDetailMoreButtons=(e,t)=>{e=getButtons(e,t),t=___default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return ___default.sortBy(t,"sort")},getListViewItemButtons=async(e,t)=>{e=getButtons(e,t);return ___default.filter(e,e=>"record"==e.on||"list_item"==e.on||"record_more"===e.on)},getObjectRelatedListButtons=async(e,t)=>{e=getButtons(e,t);return ___default.filter(e,e=>"list"==e.on)},getButton=async(e,t,a)=>{var i=await getUISchema(e);if(i){var r=await getButtons(i,a),r=___default.find(r,e=>e.name===t);if(r)return"standard_edit"==r.name&&"standard_edit"===r.todo&&"amis_button"!=r.type?{label:r.label,name:r.name,on:r.on,...await StandardButtons.getStandardEdit(i,a)}:"cms_files"!=e&&"standard_new"==r.name&&"standard_new"===r.todo&&"amis_button"!=r.type?{label:r.label,name:r.name,on:r.on,...await StandardButtons.getStandardNew(i,a)}:"standard_delete"==r.name&&"standard_delete"===r.todo&&"amis_button"!=r.type?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await StandardButtons.getStandardDelete(i,a)}:i.hasImportTemplates&&"standard_import_data"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await StandardButtons.getStandardImportData(i,a)}:"standard_open_view"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await StandardButtons.getStandardOpenView(i,a)}:"standard_delete_many"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await StandardButtons.getStandardDeleteMany(i,a)}:r}},execute=(e,t)=>{if(e.todo)return ___default.isString(e.todo)&&___default.startsWith(___default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),___default.isFunction(e.todo)?(t={objectName:t.objectName,object_name:t.objectName,object:t.uiSchema,record:t.record,recordId:t.recordId,record_id:t.recordId,...t,action:e},e.todo.apply(t,[t.objectName,t.recordId])):void 0},executeButton=execute;function getObjectListHeaderFirstLine(a,e,t){var{icon:i,label:r}=a;const s=[];each(a.list_views,(e,t)=>{s.push({type:"button",label:e.label,actionType:"link",link:`/app/\${appId}/${a.name}/grid/`+t})});var n=getListViewButtons(a,{}),n=map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e),className:"button_"+e.name})),o=new RegExp("_","g");return{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<svg class="slds-icon slds-icon_container slds-icon-standard-${i&&i.replace(o,"-")} slds-page-header__icon" aria-hidden="true"><use xlink:href="/assets/icons/standard-sprite/svg/symbols.svg#${i}"></use></svg>`},md:"auto",className:"",columnClassName:"flex justify-center items-center",valign:"middle"},{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 !hover:border-none text-lg h-5 font-bold p-0 text-black leading-none",buttons:s}],md:"",columnClassName:"p-l-xs"}],className:"flex justify-between"}],md:"auto"},{body:{type:"flex",items:n},md:"auto",valign:"middle"}],className:"flex justify-between"}}async function getObjectListHeaderSecordLine(e,t,a){e="listview_"+e.name;return{type:"grid",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",columnClassName:"flex items-center"},{body:[await getObjectFieldsFilterButtonSchema(),{type:"button",label:"",icon:"fa fa-refresh",actionType:"reload",target:e,className:"bg-white p-2 rounded border-gray-300 text-gray-500"}],md:"auto"}],className:"flex justify-between"}}async function getObjectListHeaderFieldsFilterBar(t,e,a){var i=keys(t.fields),i=sortBy(compact(map(i,e=>t.fields[e])),"sort_no");return await getObjectFieldsFilterBarSchema(t,i,a)}async function getObjectListHeader$1(e,t,a){return[{type:"wrapper",body:[getObjectListHeaderFirstLine(e)],className:"bg-gray-100 sm:rounded-tl sm:rounded-tr p-4 -mb-4"}]}async function getObjectRecordDetailHeader(e,t,a){var{showRecordTitle:a=!0}=a||{},{name:i,label:r,icon:s}=e,n=getObjectDetailButtons(e,{}),o=getObjectDetailMoreButtons(e,{recordId:t,objectName:i}),n=map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e),className:"button_"+e.name})),o=map(o,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e)})),o=(n.push({type:"steedos-dropdown-button",label:"",buttons:o,className:"slds-icon"}),new RegExp("_","g")),o=s&&s.replace(o,"-"),l=[],o=(a&&l.push({body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<svg class="slds-icon slds-icon_container slds-icon-standard-${o} slds-page-header__icon" aria-hidden="true"><use xlink:href="/assets/icons/standard-sprite/svg/symbols.svg#${s}"></use></svg>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+r,inline:!1,wrapperComponent:"",className:"leading-4 text-md"},{type:"tpl",tpl:"${name}",inline:!1,wrapperComponent:"",className:"leading-5 text-xl font-bold"}],columnClassName:"p-l-xs"}],className:"flex justify-between"}],md:"auto"}),l.push({body:{type:"flex",items:n},md:"auto"}),[{type:"service",id:`page_readonly_${i}_header`,data:{"&":"$$",objectName:i,_id:t,recordPermissions:"${record.recordPermissions}",uiSchema:e},body:[{type:"grid",columns:l,className:"flex justify-between"}],messages:{},hiddenOn:"${recordLoaded != true}"}]);return a&&o.push({type:"service",body:[{type:"grid",columns:[l[0]],className:"flex justify-between"}],messages:{},hiddenOn:"${recordLoaded == true}"}),{type:"service",bodyClassName:"",name:"page",data:{"&":"$$",objectName:i,_id:t,recordPermissions:e.permissions,uiSchema:e,record:"${record}"},body:o,className:""}}async function getObjectRecordDetailRelatedListHeader(e,t){var a=e["icon"],e=await getObjectRelatedListButtons(e,{}),e=map(e,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e),className:"button_"+e.name})),i=new RegExp("_","g");return{type:"wrapper",body:[{type:"grid",valign:"middle",columns:[{body:[{type:"grid",valign:"middle",className:"flex justify-between",columns:[{body:{type:"tpl",className:"block",tpl:`<svg class="w-6 h-6 slds-icon slds-icon_container slds-icon-standard-${a&&a.replace(i,"-")}" aria-hidden="true"><use xlink:href="/assets/icons/standard-sprite/svg/symbols.svg#${a}"></use></svg>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:`<a class="text-black text-base font-bold" href="/app/\${appId}/\${masterObjectName}/\${masterRecordId}/\${objectName}/grid?related_field_name=\${relatedKey}">${t}(\${$count})</a>`,inline:!1,wrapperComponent:"",className:""}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:{type:"flex",items:e},md:"auto"}],className:"flex justify-between"}],className:"p-3"}}async function getObjectRelatedListHeader(e,t,a){}const getDisplayAsButton=function(e){var t=[{type:"button",label:"表格",onClick:"const url = document.location.pathname + '?display=grid'; props.env.jumpTo(url);"},{type:"button",label:"分栏视图",onClick:"const url = document.location.pathname + '?display=split'; props.env.jumpTo(url);"}];return 2<e&&t.push({type:"button",label:"三栏视图",onClick:"const url = document.location.pathname + '?display=split_three'; props.env.jumpTo(url);"}),{type:"dropdown-button",icon:"fa fa-table-columns",btnClassName:"antd-Button--iconOnly bg-white p-2 rounded border-gray-300 text-gray-500",align:"right",buttons:[{label:"显示为",children:t}]}};function getObjectHeaderToolbar(e,t,{showDisplayAs:a=!1,hiddenCount:i=!1}={}){return"SMALL"===t?[i?{}:{type:"tpl",tpl:"${count} 个项目"},{type:"button",align:"right",className:"bg-white p-2 rounded border-gray-300 text-gray-500",label:"",icon:"fa fa-sync",onEvent:{click:{actions:[{actionType:"custom",script:`
262
283
  const scope = event.context.scoped;
263
284
  var listView = scope.parent.getComponents().find(function(n){
264
285
  return n.props.type === "crud";
265
286
  });
266
287
  listView.handleChangePage(1);
267
- `}]}}},a?displayAsButton:{}]:["bulkActions",{type:"columns-toggler",className:"hidden"},{type:"tpl",tpl:"${count} 个项目"},{type:"reload",align:"right",className:"bg-white p-2 rounded border-gray-300 text-gray-500"},{label:"",icon:"fa fa-search",type:"button",align:"right",className:"bg-white p-2 rounded border-gray-300 text-gray-500",onEvent:{click:{actions:[{actionType:"custom",script:`
288
+ `}]}}},a?getDisplayAsButton(a):{}]:["bulkActions",{type:"columns-toggler",className:"hidden"},i?{}:{type:"tpl",tpl:"${count} 个项目"},{type:"reload",align:"right",className:"bg-white p-2 rounded border-gray-300 text-gray-500"},{label:"",icon:"fa fa-search",type:"button",align:"right",className:"bg-white p-2 rounded border-gray-300 text-gray-500",onEvent:{click:{actions:[{actionType:"custom",script:`
268
289
  const scope = event.context.scoped;
269
290
  const filterForm = scope.getComponents().find(function(n){
270
291
  return n.props.type === "form";
@@ -273,37 +294,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
273
294
  return n.props.type === "service";
274
295
  });
275
296
  filterService.setData({showFieldsFilter: !!!filterService.props.data.showFieldsFilter});
276
- `}]}}},a?displayAsButton:{}]}function getObjectFooterToolbar(e,t){return"SMALL"===t?["load-more"]:["statistics","pagination"]}async function getObjectFilter(e,t,a){return{title:"",submitText:"",className:"",mode:"normal",wrapWithPanel:!1,body:[await getObjectListHeaderFieldsFilterBar(e,null,a)]}}function getBulkActions(e){return[{type:"button",level:"danger",label:"批量删除",actionType:"ajax",confirmText:"确定要删除吗",className:"hidden",id:"batchDelete",api:getBatchDelete(e.name)}]}async function getObjectCRUD(e,t,a){var{top:i,showDisplayAs:r=!1,crudClassName:s=""}=a,l=e.paging&&!1===e.paging.enabled,n=e.enable_tree,o=getBulkActions(e),r={headerToolbar:getObjectHeaderToolbar(e,a.formFactor,{showDisplayAs:r}),headerToolbarClassName:"px-4 py-2 border-gray-300 bg-gray-100 border-solid border-b",footerToolbar:getObjectFooterToolbar(e,a.formFactor)};"SMALL"!==a.formFactor&&Object.assign(r,{filter:!!a.filterVisible&&await getObjectFilter(e,t,a),bulkActions:0!=a.bulkActions&&o}),l||n?(a.top=1e3,r.footerToolbar=[]):i&&(r.footerToolbar=[]);let d=null;o="listview_"+e.name,a.formFactor,l=await getTableSchema$1(t,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},a)),delete l.mode,d=Object.assign({},l,{type:"crud",primaryField:"_id",affixHeader:!1,id:o,name:o,keepItemSelectionOnPageChange:!0,api:await getTableApi(e,t,a),hiddenOn:a.tableHiddenOn,autoFillHeight:!1,className:s,crudClassName:s},r),n=a.defaults;if(n){i=n.listSchema||{},l=(d=defaultsDeep({},i,d),n.headerSchema),t=n.footerSchema;if(l||t){let e=[d];l&&(___default.isArray(l)?e=___default.union(l,e):e.unshift(l)),t&&(___default.isArray(t)?e=___default.union(e,t):e.push(t)),d=e}}return{type:"service",className:"",id:"service_"+o,name:"page",data:{$master:"$$",objectName:e.name,_id:null,recordPermissions:e.permissions,uiSchema:e,loaded:!1},body:d}}const getGlobalData=e=>{var t=getSteedosAuth();return{mode:e,user:t,spaceId:t.spaceId,userId:t.userId}};async function getObjectForm(e,t){var{recordId:a,layout:i="normal",labelAlign:r,defaults:s}=t,l=___default.values(e.fields),s=s&&s.formSchema||{},i={type:"service",className:"p-0",name:"page_edit_"+a,api:await getEditFormInitApi(e,a,l),data:{editFormInited:!1},initApi:null,initFetch:null,body:[defaultsDeep({},s,{type:"form",mode:i,data:{"&":"${_initialValue}"},labelAlign:r,persistData:!1,promptPageLeave:!0,canAccessSuperData:!1,name:"form_edit_"+a,debug:!1,title:"",submitText:"",api:await getSaveApi(e,a,l),initFetch:"new"!=a,body:await getFormBody(l,e,t),panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"steedos-amis-form",hiddenOn:"${editFormInited != true}",onEvent:{submitSucc:{weight:0,actions:[{componentId:"steedos-record-related-list-"+e.name,actionType:"setValue",args:{value:{$count:void 0}}},{componentId:"listview_"+e.name,actionType:"reload",expression:"!!listViewId"},{actionType:"custom",script:`
277
- const { recordId, listViewId } = context.props.data;
278
- const data = event.data;
279
- const appId = data.appId;
280
- const objectName = data.objectName;
281
- // 在记录详细界面时isRecordDetail为true
282
- // TODO: isRecordDetail这个判断需要优化
283
- const isRecordDetail = !!data.$master && data.$master.$master?.recordId;
284
- if(recordId){
285
- // 编辑记录时,刷新主表单
286
- doAction({
287
- componentId: \`detail_\${recordId}\`,
288
- actionType: "reload",
289
- expression: \`!\${listViewId}\`
290
- });
291
- }
292
- else if(!isRecordDetail){
293
- // 在列表视图界面新建记录时跳转到详细页面
294
- const listName = event.data.listName;
295
- const uiSchema = event.data.uiSchema;
296
- const listView = uiSchema && uiSchema.list_views[listName];
297
- const newRecordId = data.result.data?.recordId;
298
- doAction({
299
- "args": {
300
- "url": "/app/" + appId + "/" + objectName + "/view/" + newRecordId,
301
- "blank": false
302
- },
303
- "actionType": "link"
304
- });
305
- }
306
- `}]}}})]};return s.id&&(i.id="service-"+s.id),i}async function getObjectDetail(e,t,a){var{layout:i="normal",labelAlign:r,formInitProps:s}=a,l=___default.values(e.fields);return{type:"service",name:"page_readonly_"+t,id:"detail_"+t,data:{global:getGlobalData("read"),context:{rootUrl:getRootUrl(),tenantId:getTenantId(),authToken:getAuthToken()}},api:await getReadonlyFormInitApi(e,t,l,s),body:[{type:"form",mode:i,labelAlign:r,persistData:!1,promptPageLeave:!1,name:"form_readonly_"+t,debug:!1,title:"",data:{formData:"$$"},wrapWithPanel:!1,body:await getFormBody(map(l,e=>(e.readonly=!0,e)),e,Object.assign({},a,{showSystemFields:!0})),className:"steedos-amis-form bg-white",actions:[],hiddenOn:"${recordLoaded != true}"}],onEvent:{fetchInited:{weight:0,actions:[{actionType:"broadcast",eventName:"recordLoaded",args:{eventName:"recordLoaded"},data:{record:"${event.data}"}},{actionType:"setValue",args:{value:{recordLoaded:!0}}}]}}}}const AmisFormInputs=["text","date","file","avatar","image","datetime","time","number","currency","percent","password","url","email"];function getAmisStaticFieldType(e,t,a){return t?_$1.includes(["text","image"],e)?"image"===e&&a&&a.multiple?"static-images":"static-"+e:"static":_$1.includes(AmisFormInputs,e)?"input-"+e:e}const getFileTableName=e=>{switch(e.type){case"avatar":return"avatars";case"image":return"images";case"file":return"files"}},getAmisFieldType$1=(e,t)=>getAmisStaticFieldType("avatar"===e.type?"image":e.type,t,{multiple:e.multiple}),getAmisFileReadonlySchema=e=>{var t=e.type,a=getAmisFieldType$1(e,!0);return _.includes(["avatar","image"],t)?{type:a,defaultImage:"",enlargeAble:!0,showToolbar:!0}:"file"===t?{type:a,tpl:`
297
+ `}]}}},a?getDisplayAsButton(a):{}]}function getObjectFooterToolbar(e,t){return"SMALL"===t?["load-more"]:["statistics","pagination"]}async function getObjectFilter(e,t,a){return{title:"",submitText:"",className:"",mode:"normal",wrapWithPanel:!1,body:[await getObjectListHeaderFieldsFilterBar(e,null,a)]}}function getBulkActions(e){return[{type:"button",level:"danger",label:"批量删除",actionType:"ajax",confirmText:"确定要删除吗",className:"hidden",id:"batchDelete",api:getBatchDelete(e.name)}]}async function getObjectCRUD(e,t,a){var{top:i,showDisplayAs:r=!1,crudClassName:s=""}=a,n=e.paging&&!1===e.paging.enabled,o=e.enable_tree,l=getBulkActions(e),d={headerToolbarClassName:"px-4 py-2 border-gray-300 bg-gray-100 border-solid border-b",footerToolbar:getObjectFooterToolbar(e,a.formFactor,{disableStatistics:!1===a.queryCount})};"SMALL"!==a.formFactor&&Object.assign(d,{filter:!!a.filterVisible&&await getObjectFilter(e,t,a),bulkActions:0!=a.bulkActions&&l}),a.queryCount=!0,n||o?(a.top=5e4,d.footerToolbar=[],a.queryCount=!0):i&&(d.footerToolbar=[],a.queryCount=!1),d.headerToolbar=getObjectHeaderToolbar(e,a.formFactor,{showDisplayAs:r,hiddenCount:!1===a.queryCount});let c=null;l="listview_"+e.name,a.formFactor,n=await getTableSchema$1(t,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},a)),delete n.mode,c=Object.assign({},n,{type:"crud",primaryField:"_id",affixHeader:!1,id:l,name:l,keepItemSelectionOnPageChange:!0,api:await getTableApi(e,t,a),hiddenOn:a.tableHiddenOn,autoFillHeight:!1,className:"flex-auto "+(s||""),crudClassName:s},d),o=a.defaults;if(o){i=o.listSchema||{},r=(c=defaultsDeep({},i,c),o.headerSchema),n=o.footerSchema,t=o.sideSchema;if(t&&(c={type:"wrapper",size:"none",className:"flex",body:[{type:"wrapper",size:"none",body:t},c]}),r||n){let e=[c];r&&(___default.isArray(r)?e=___default.union(r,e):e.unshift(r)),n&&(___default.isArray(n)?e=___default.union(e,n):e.push(n)),c=e}}return{type:"service",className:"",id:"service_"+l,name:"page",data:{$master:"$$",objectName:e.name,_id:null,recordPermissions:e.permissions,uiSchema:e,loaded:!1},body:c}}const getGlobalData=e=>{var t=getSteedosAuth();return{mode:e,user:t,spaceId:t.spaceId,userId:t.userId}};async function getObjectForm(e,t){var{recordId:a,layout:i="normal",labelAlign:r,defaults:s}=t,n=___default.values(e.fields),s=s&&s.formSchema||{},i=(___default.has(s,"className")&&(s.className="steedos-amis-form"),{type:"service",className:"p-0",name:"page_edit_"+a,api:await getEditFormInitApi(e,a,n),data:{editFormInited:!1},initApi:null,initFetch:null,body:[defaultsDeep({},s,{type:"form",mode:i,data:{"&":"${initialValues}"},labelAlign:r,persistData:!1,promptPageLeave:!0,canAccessSuperData:!1,name:"form_edit_"+a,debug:!1,title:"",submitText:"",api:await getSaveApi(e,a,n),initFetch:"new"!=a,body:await getFormBody(n,e,t),panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"steedos-amis-form",hiddenOn:"${editFormInited != true}",onEvent:{submitSucc:{weight:0,actions:[{actionType:"broadcast",args:{eventName:"@data.changed."+e.name},data:{objectName:""+e.name}}]}}})]});return s.id&&(i.id="service-"+s.id),i}async function getObjectDetail(e,t,a){var{layout:i="normal",labelAlign:r,formInitProps:s}=a,n=___default.values(e.fields),o="detail_"+t;return{type:"service",name:"page_readonly_"+t,id:o,data:{global:getGlobalData("read"),context:{rootUrl:getRootUrl(),tenantId:getTenantId(),authToken:getAuthToken()}},api:await getReadonlyFormInitApi(e,t,n,s),body:[{type:"wrapper",hiddenOn:"${recordLoaded != true}",body:{type:"form",mode:i,labelAlign:r,persistData:!1,promptPageLeave:!1,name:"form_readonly_"+t,debug:!1,title:"",data:{formData:"$$"},wrapWithPanel:!1,body:await getFormBody(map(n,e=>(e.readonly=!0,e)),e,Object.assign({},a,{showSystemFields:!0})),className:"steedos-amis-form bg-white",actions:[],onEvent:{["@data.changed."+e.name]:{actions:[{actionType:"reload",componentId:o,expression:"this.__deletedRecord != true"},{args:{url:"/app/${appId}/${objectName}/grid/${side_listview_id}",blank:!1},actionType:"link",expression:"this.__deletedRecord === true"}]}}},className:"b"}],onEvent:{fetchInited:{weight:0,actions:[{actionType:"broadcast",eventName:"recordLoaded",args:{eventName:"recordLoaded"},data:{record:"${event.data}"}},{actionType:"setValue",args:{value:{recordLoaded:!0}}}]}}}}const AmisFormInputs=["text","date","file","avatar","image","datetime","time","number","currency","percent","password","url","email"];function getAmisStaticFieldType(e,t,a){return t?_$1.includes(["text","image"],e)?"image"===e&&a&&a.multiple?"static-images":"static-"+e:"static":_$1.includes(AmisFormInputs,e)?"input-"+e:e}const getFileTableName=e=>{switch(e.type){case"avatar":return"avatars";case"image":return"images";case"file":return"files"}},getAmisFieldType$1=(e,t)=>getAmisStaticFieldType("avatar"===e.type?"image":e.type,t,{multiple:e.multiple}),getAmisFileReadonlySchema=e=>{var t=e.type,a=getAmisFieldType$1(e,!0);return _.includes(["avatar","image"],t)?{type:a,defaultImage:"",enlargeAble:!0,showToolbar:!0}:"file"===t?{type:a,tpl:`
307
298
  <% let fileData = data.${e.name}; if (fileData) { %>
308
299
  <% if(!Array.isArray(fileData)){ fileData = [fileData]} %>
309
300
  <% fileData.forEach(function(item) { %>
@@ -326,10 +317,10 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
326
317
  var file_name = data.versions ? data.name : "${r.label}";
327
318
  var file_id = data._id;
328
319
  SteedosUI.previewFile && SteedosUI.previewFile({file_name, file_id});
329
- `;a.push({type:"button",label:`<%=data.versions ? data.name : "${r.label}"%>`,className:"whitespace-nowrap",level:"link",onEvent:{click:{actions:[{args:{api:{url:"${context.rootUrl}/api/files/files/${versions[0]}?download=true",method:"get",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}},actionType:"download",expression:"!!!window?.nw?.require"},{args:{},actionType:"custom",script:i,expression:"!!window?.nw?.require"}]}}})}return a}function getMobileLines(e){let t=[],a=[],i=!1,r=!0,s="",l="flex items-center justify-between h-[20px]";return e.forEach(function(e){i&&t.length<2&&(t.push({type:"wrapper",body:a,size:"none",className:l}),a=[]),r?(s="steedos-listview-item-left truncate",e.field.is_wide&&(s="steedos-listview-item-wide truncate"),0===t.length&&(s+=" font-bold text-gray-800")):s="steedos-listview-item-right truncate ml-2 flex flex-shrink-0",a.push({type:"tpl",tpl:e.tpl,className:s}),i=e.field.is_wide?r=!0:r=!r}),a.length&&t.length<2&&t.push({type:"wrapper",body:a,size:"none",className:l}),t}async function getMobileTableColumns(e,t){var a=[];let i={};var r=[];for(const l of e){let e="";e=(e=l.is_name||l.name===t.labelFieldName?(i=l,t.onlyDisplayLabel=!0,await getFieldTpl(l,t)):"avatar"===l.type||"image"===l.type||"file"===l.type?`\${_display.${l.name}.name}`:("lookup"!==l.type&&"master_detail"!==l.type||(t.onlyDisplayLabel=!0),await getFieldTpl(l,t)))||`\${${l.name}}`,l.hidden||l.extra||r.push({field:l,tpl:e})}var e=getNameTplUrl(i,t),s=getMobileLines(r);return a.push({name:i.name,label:i.label,sortable:i.sortable,type:"button",level:"link",actionType:"link",link:e,innerClassName:"steedos-listview-item block text-gray-500",body:{type:"wrapper",body:s,size:"none",className:"p-1"}}),a}function getDefaultParams(e){return{perPage:e.top||e.perPage||config.listView.perPage}}function getButtonVisibleOn(e){let t=e.visible;if(e._visible&&(t=e._visible),t=isBoolean(t)?t.toString():t)return t.trim().startsWith("function")?t+"(objectName, _id, recordPermissions, data)":t;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}async function getTableOperation(e){e=e.buttons;const t=[];if(each(e,e=>{isBoolean(e.visible)&&(e.visible=e.visible.toString()),t.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn(e),className:"antd-Button--default"})}),!(t.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:t,placement:"bottomRight",overlayClassName:"shadow !min-w-[160px]",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:`
320
+ `;a.push({type:"button",label:`<%=data.versions ? data.name : "${r.label}"%>`,className:"whitespace-nowrap",level:"link",onEvent:{click:{actions:[{args:{api:{url:"${context.rootUrl}/api/files/files/${versions[0]}?download=true",method:"get",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}},actionType:"download",expression:"!!!window?.nw?.require"},{args:{},actionType:"custom",script:i,expression:"!!window?.nw?.require"}]}}})}return a}function getMobileLines(e){let t=[],a=[],i=!1,r=!0,s="",n="flex items-center justify-between h-[20px]";return e.forEach(function(e){i&&t.length<2&&(t.push({type:"wrapper",body:a,size:"none",className:n}),a=[]),r?(s="steedos-listview-item-left truncate",e.field.is_wide&&(s="steedos-listview-item-wide truncate"),0===t.length&&(s+=" font-bold text-gray-800")):s="steedos-listview-item-right truncate ml-2 flex flex-shrink-0",a.push({type:"tpl",tpl:e.tpl,className:s}),i=e.field.is_wide?r=!0:r=!r}),a.length&&t.length<2&&t.push({type:"wrapper",body:a,size:"none",className:n}),t}async function getMobileTableColumns(e,t){var a=[];let i={};var r=[];for(const n of e){let e="";e=(e=n.is_name||n.name===t.labelFieldName?(i=n,t.onlyDisplayLabel=!0,await getFieldTpl(n,t)):"avatar"===n.type||"image"===n.type||"file"===n.type?`\${_display.${n.name}.name}`:("lookup"!==n.type&&"master_detail"!==n.type||(t.onlyDisplayLabel=!0),await getFieldTpl(n,t)))||`\${${n.name}}`,n.hidden||n.extra||r.push({field:n,tpl:e})}var e=getNameTplUrl(i,t),s=getMobileLines(r);return a.push({name:i.name,label:i.label,sortable:i.sortable,type:"button",level:"link",actionType:"link",link:e,innerClassName:"steedos-listview-item block text-gray-500",body:{type:"wrapper",body:s,size:"none",className:"p-1"}}),a}function getDefaultParams(e){return{perPage:e.top||e.perPage||config.listView.perPage}}function getButtonVisibleOn(e){let t=e.visible;if(e._visible&&(t=e._visible),t=isBoolean(t)?t.toString():t)return t.trim().startsWith("function")?t+"(objectName, _id, recordPermissions, data)":t;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}async function getTableOperation(e){e=e.buttons;const t=[];if(each(e,e=>{isBoolean(e.visible)&&(e.visible=e.visible.toString()),t.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn(e),className:"antd-Button--default"})}),!(t.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:t,placement:"bottomRight",overlayClassName:"shadow !min-w-[160px]",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:`
330
321
  payload.recordPermissions = payload;
331
322
  return payload;
332
- `}}]}}async function getTableSchema$1(e,t){let a=[];return"SMALL"===(t=t||{}).formFactor?a=await getMobileTableColumns(e,t):(a=await getTableColumns(e,t)).push(await getTableOperation(t)),{mode:"table",name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 bg-gray-100 border-solid border-b",className:"",draggable:!1,defaultParams:getDefaultParams(t),columns:a,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:`\${${t.labelFieldName}}`,autoFillHeight:!1,columnsTogglable:!1}}async function getTableApi(e,t,a){const i=[];let{globalFilter:r,filter:s,filtersFunction:l,sort:n,top:o,setDataToComponentId:d=""}=a,c=(s=(s=_$1.isArray(s)?_$1.map(s,function(e){return e.operation?[e.field,e.operation,e.value]:e}):s)||[],null);isEmpty(r)||isEmpty(s)?r?c=r:s&&(c=s):c=[r,"and",s],_$1.each(t,function(e){e.searchable&&i.push(e.name)});const p={},u=[];t.forEach(e=>{_$1.includes(["image","avatar","file"],e.type)&&(u.push(e.name),p[e.name]={name:e.name,type:e.type,multiple:e.multiple})});var m=e.key_field||"_id",t=await getApi$1(e,null,t,{alias:"rows",limit:o,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});return t.data.$term="$term",t.data.$self="$$",t.data.filter="$filter",t.data.loaded="${loaded}",t.data.listViewId="${listViewId}",t.requestAdaptor=`
323
+ `}}]}}async function getTableSchema$1(e,t){let a=[];return"SMALL"===(t=t||{}).formFactor?a=await getMobileTableColumns(e,t):(a=await getTableColumns(e,t)).push(await getTableOperation(t)),{mode:"table",name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 bg-gray-100 border-solid border-b",className:"",draggable:!1,defaultParams:getDefaultParams(t),columns:a,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:`\${${t.labelFieldName}}`,autoFillHeight:!1,columnsTogglable:!1}}async function getTableApi(e,t,a){const i=[];let{globalFilter:r,filter:s,filtersFunction:n,sort:o,top:l,setDataToComponentId:d=""}=a,c=(s=(s=_$1.isArray(s)?_$1.map(s,function(e){return e.operation?[e.field,e.operation,e.value]:e}):s)||[],null);isEmpty(r)||isEmpty(s)?r?c=r:s&&(c=s):c=[r,"and",s],_$1.each(t,function(e){e.searchable&&i.push(e.name)});const p={},u=[];t.forEach(e=>{_$1.includes(["image","avatar","file"],e.type)&&(u.push(e.name),p[e.name]={name:e.name,type:e.type,multiple:e.multiple})});var m=e.key_field||"_id",t=await getApi$1(e,null,t,{count:a.queryCount,alias:"rows",limit:l,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});return t.data.$term="$term",t.data.$self="$$",t.data.filter="$filter",t.data.loaded="${loaded}",t.data.listViewId="${listViewId}",t.requestAdaptor=`
333
324
  // selfData 中的数据由 CRUD 控制. selfData中,只能获取到 CRUD 给定的data. 无法从数据链中获取数据.
334
325
  let selfData = JSON.parse(JSON.stringify(api.data.$self));
335
326
  try{
@@ -357,7 +348,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
357
348
  console.error("本地存储中crud参数解析异常:", ex);
358
349
  }
359
350
  ${c?`var systemFilters = ${JSON.stringify(c)};`:"var systemFilters = [];"}
360
- const filtersFunction = ${l};
351
+ const filtersFunction = ${n};
361
352
  if(filtersFunction){
362
353
  const _filters = filtersFunction(systemFilters, api.data.$self);
363
354
  if(_filters && _filters.length > 0){
@@ -383,7 +374,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
383
374
  var orderBy = api.data.orderBy || '';
384
375
  var orderDir = api.data.orderDir || '';
385
376
  var sort = orderBy + ' ' + orderDir;
386
- sort = orderBy ? sort : "${n||""}";
377
+ sort = orderBy ? sort : "${o||""}";
387
378
  var allowSearchFields = ${JSON.stringify(i)};
388
379
  if(api.data.$term){
389
380
  userFilters = [["name", "contains", "'+ api.data.$term +'"]];
@@ -702,7 +693,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
702
693
  payload.data = data;
703
694
  }
704
695
  return payload;
705
- `,data:i,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getRefListViewSort(e){e=_$1.find(e.list_views,(e,t)=>"all"===t);let t="";return t=e?getListViewSort(e):t}async function lookupToAmisTreeSelect(e,t,a){if(!e)return{};a=a||{};var i={type:getAmisStaticFieldType("tree-select",t)};return t?i.tpl=await getLookupTpl(e,a):(t=await getUISchema(a.objectName),a.sort=getRefListViewSort(t),Object.assign(i,{multiple:e.multiple,searchable:e.searchable,extractValue:!0,hideNodePathLabel:!0,clearable:!0,source:await getSource(e,a),deferApi:await getDeferApi(e,a)}),e.multiple&&Object.assign(i,{joinValues:!1}),"boolean"!=typeof i.searchable&&(i.searchable=!0),(t=e.onEvent)&&(i.onEvent=t)),i}const getReferenceTo=async a=>{let i=a.reference_to;if(i){"users"===i&&(i="space_users",a.reference_to_field="user");var r=await getUISchema(i);if(!r)return null;let e=null,t=a.reference_to_field;return t=t||r.idFieldName||"_id",e="_id"===t?{name:"_id",label:"ID",type:"text",toggled:!1}:r.fields[t]||{name:t},{objectName:i,valueField:e,labelField:r.fields[r.NAME_FIELD_KEY||"name"],NAME_FIELD_KEY:r.NAME_FIELD_KEY||"name"}}};async function lookupToAmisPicker(r,s,l){var n=await getReferenceTo(r);if(n){const c=await getUISchema(n.objectName),p=[];let e=0;const u=[],m=[];var o=_$1.find(c.list_views,(e,t)=>"all"===t);o&&o.columns?_$1.each(o.columns,function(e){_$1.isString(e)&&c.fields[e]?m.push(c.fields[e]):_$1.isObject(e)&&c.fields[e.field]&&m.push(Object.assign({},c.fields[e.field],{width:e.width,wrap:e.wrap}))}):_$1.each(c.fields,(e,t)=>{"_id"==t||e.hidden||(_$1.has(e,"name")||(e.name=t),m.push(e))}),_$1.each(_$1.sortBy(m,"sort_no"),function(t){e<5&&(_$1.find(p,function(e){return e.name===t.name})||(e++,p.push(t),t.searchable&&u.push(t.name)))});const f={[n.labelField.name]:n.labelField,[n.valueField.name]:n.valueField};_$1.each(p,e=>{e.hidden||(f[e.name]=e)});let t="";o&&(t=getListViewSort(o));o=await getApi(c,null,f,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});if(o.url){const g=[],y=[];_$1.each(r.depend_on,e=>{g.push(`depend_on_${e}=\${${e}}`),y.push("this."+e)}),0<g.length&&(o.url=o.url+"?"+g.join("&"),o.sendOn=""+y.join(" && "))}o.data.$term="$term",o.data.$self="$$",o.requestAdaptor=`
696
+ `,data:i,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getRefListViewSort(e){e=_$1.find(e.list_views,(e,t)=>"all"===t);let t="";return t=e?getListViewSort(e):t}async function lookupToAmisTreeSelect(e,t,a){if(!e)return{};a=a||{};var i={type:getAmisStaticFieldType("tree-select",t)};return t?i.tpl=await getLookupTpl(e,a):(t=await getUISchema(a.objectName),a.sort=getRefListViewSort(t),Object.assign(i,{multiple:e.multiple,searchable:e.searchable,extractValue:!0,hideNodePathLabel:!0,clearable:!0,source:await getSource(e,a),deferApi:await getDeferApi(e,a)}),e.multiple&&Object.assign(i,{joinValues:!1}),"boolean"!=typeof i.searchable&&(i.searchable=!0),(t=e.onEvent)&&(i.onEvent=t)),i}const getReferenceTo=async a=>{let i=a.reference_to;if(i){"users"===i&&(i="space_users",a.reference_to_field="user");var r=await getUISchema(i);if(!r)return null;let e=null,t=a.reference_to_field;return t=t||r.idFieldName||"_id",e="_id"===t?{name:"_id",label:"ID",type:"text",toggled:!1}:r.fields[t]||{name:t},{objectName:i,valueField:e,labelField:r.fields[r.NAME_FIELD_KEY||"name"],NAME_FIELD_KEY:r.NAME_FIELD_KEY||"name"}}};async function lookupToAmisPicker(r,s,n){var o=await getReferenceTo(r);if(o){const c=await getUISchema(o.objectName),p=[];let e=0;const u=[],m=[];var l=_$1.find(c.list_views,(e,t)=>"all"===t);l&&l.columns?_$1.each(l.columns,function(e){_$1.isString(e)&&c.fields[e]?m.push(c.fields[e]):_$1.isObject(e)&&c.fields[e.field]&&m.push(Object.assign({},c.fields[e.field],{width:e.width,wrap:e.wrap}))}):_$1.each(c.fields,(e,t)=>{"_id"==t||e.hidden||(_$1.has(e,"name")||(e.name=t),m.push(e))}),_$1.each(_$1.sortBy(m,"sort_no"),function(t){e<5&&(_$1.find(p,function(e){return e.name===t.name})||(e++,p.push(t),t.searchable&&u.push(t.name)))});const f={[o.labelField.name]:o.labelField,[o.valueField.name]:o.valueField};_$1.each(p,e=>{e.hidden||(f[e.name]=e)});let t="";l&&(t=getListViewSort(l));l=await getApi(c,null,f,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});if(l.url){const g=[],y=[];_$1.each(r.depend_on,e=>{g.push(`depend_on_${e}=\${${e}}`),y.push("this."+e)}),0<g.length&&(l.url=l.url+"?"+g.join("&"),l.sendOn=""+y.join(" && "))}l.data.$term="$term",l.data.$self="$$",l.requestAdaptor=`
706
697
  const selfData = JSON.parse(JSON.stringify(api.data.$self));
707
698
  var filters = [];
708
699
  var pageSize = api.data.pageSize || 10;
@@ -717,9 +708,9 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
717
708
  filters = [["name", "contains", "'+ api.data.$term +'"]];
718
709
  }else if(selfData.op === 'loadOptions' && selfData.value){
719
710
  if(selfData.value?.indexOf(',') > 0){
720
- filters = [["${n.valueField.name}", "=", selfData.value.split(',')]];
711
+ filters = [["${o.valueField.name}", "=", selfData.value.split(',')]];
721
712
  }else{
722
- filters = [["${n.valueField.name}", "=", selfData.value]];
713
+ filters = [["${o.valueField.name}", "=", selfData.value]];
723
714
  }
724
715
  }
725
716
 
@@ -771,7 +762,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
771
762
 
772
763
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());
773
764
  return api;
774
- `,o.adaptor=`
765
+ `,l.adaptor=`
775
766
  const enable_tree = ${c.enable_tree};
776
767
  if(enable_tree){
777
768
  const records = payload.data.rows;
@@ -799,7 +790,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
799
790
  payload.data.rows = treeRecords;
800
791
  }
801
792
  return payload;
802
- `;let a=20,i=(c.paging&&!1===c.paging.enabled&&(a=1e3),null);"SMALL"===l.formFactor?i=await getListSchema$1(p,{top:a,...l,actions:!1}):((i=await getTableSchema$1(p,{labelFieldName:c.NAME_FIELD_KEY,top:a,...l})).headerToolbar=getObjectHeaderToolbar(c,l.formFactor),i.footerToolbar=getObjectFooterToolbar(),!1!==l.filterVisible&&(d=l.filterLoopCount||0,d++,i.filter=await getObjectFilter(c,f,{isLookup:!0,...l,filterLoopCount:d})),i.data=Object.assign({},i.data,{"&":"$$",objectName:c.name,uiSchema:c,listName:"all",isLookup:!0}));var d={type:getAmisStaticFieldType("picker",s),labelField:n.labelField.name,valueField:n.valueField.name,modalMode:"dialog",source:o,size:"lg",pickerSchema:i,joinValues:!1,extractValue:!0};return r.multiple&&(d.multiple=!0,d.extractValue=!0),s&&(d.tpl=await getLookupTpl(r,l)),d}}async function lookupToAmisSelect(e,t,a){var i=await getReferenceTo(e),r=i&&i.valueField?.name||"_id";let s;i?(l=await getFindQuery({name:i.objectName},null,{[i.labelField.name]:Object.assign({},i.labelField,{alias:"label"}),[i.valueField.name]:Object.assign({},i.valueField,{alias:"value"})},{alias:"defaultValueOptions",filters:"{__options_filters}",count:!1}),(s=await getApi({name:i.objectName},null,{[i.labelField.name]:Object.assign({},i.labelField,{alias:"label"}),[i.valueField.name]:Object.assign({},i.valueField,{alias:"value"})},{expand:!1,alias:"options",queryOptions:'filters: {__filters}, top: {__top}, sort: "{__sort}"',moreQueries:[l.query]})).adaptor=`
793
+ `;let a=20,i=(c.paging&&!1===c.paging.enabled&&(a=1e3),null);"SMALL"===n.formFactor?i=await getListSchema$1(p,{top:a,...n,actions:!1}):((i=await getTableSchema$1(p,{labelFieldName:c.NAME_FIELD_KEY,top:a,...n})).headerToolbar=getObjectHeaderToolbar(c,n.formFactor),c.permissions.allowCreate&&((d=await getSchema$4(c,{appId:n.appId,objectName:c.name,formFactor:n.formFactor})).align="right",i.headerToolbar.push(d)),i.footerToolbar=getObjectFooterToolbar(),!1!==n.filterVisible&&(d=n.filterLoopCount||0,d++,i.filter=await getObjectFilter(c,f,{isLookup:!0,...n,filterLoopCount:d})),i.data=Object.assign({},i.data,{"&":"$$",objectName:c.name,uiSchema:c,listName:"all",isLookup:!0}),i.onEvent||(i.onEvent={}),i.onEvent["@data.changed."+c.name]={actions:[{actionType:"reload"}]});var d={type:getAmisStaticFieldType("picker",s),labelField:o.labelField.name,valueField:o.valueField.name,modalMode:"dialog",source:l,size:"lg",pickerSchema:i,joinValues:!1,extractValue:!0};return r.multiple&&(d.multiple=!0,d.extractValue=!0),s&&(d.tpl=await getLookupTpl(r,n)),d}}async function lookupToAmisSelect(e,t,a){var i=await getReferenceTo(e),r=i&&i.valueField?.name||"_id";let s;i?(n=await getFindQuery({name:i.objectName},null,{[i.labelField.name]:Object.assign({},i.labelField,{alias:"label"}),[i.valueField.name]:Object.assign({},i.valueField,{alias:"value"})},{alias:"defaultValueOptions",filters:"{__options_filters}",count:!1}),(s=await getApi({name:i.objectName},null,{[i.labelField.name]:Object.assign({},i.labelField,{alias:"label"}),[i.valueField.name]:Object.assign({},i.valueField,{alias:"value"})},{expand:!1,alias:"options",queryOptions:'filters: {__filters}, top: {__top}, sort: "{__sort}"',moreQueries:[n.query]})).adaptor=`
803
794
  const data = payload.data;
804
795
  var defaultValueOptions = data.defaultValueOptions;
805
796
  // 字段值下拉选项合并到options中
@@ -809,7 +800,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
809
800
  delete data.defaultValueOptions;
810
801
  payload.data.options = data.options;
811
802
  return payload;
812
- `):s={method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"}};var l=i&&await getUISchema(i.objectName),l=l&&_$1.find(l.list_views,(e,t)=>"all"===t);let n="";if(l&&(n=getListViewSort(l)),s.url){const o=[],d=[];_$1.each(e.depend_on,e=>{o.push(`depend_on_${e}=\${${e}}`),d.push("this."+e)}),0<o.length&&(s.url=s.url+"?"+o.join("&"),s.sendOn=""+d.join(" && "))}s.data.$term="$term",s.data.$value=a.isRefToMutiple?`$${e.name}.ids`:"$"+e.name,_$1.each(e.depend_on,function(e){s.data[e]="$"+e}),s.data.$="$$",s.data.rfield="${object_name}",s.requestAdaptor=`
803
+ `):s={method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"}};var n=i&&await getUISchema(i.objectName),n=n&&_$1.find(n.list_views,(e,t)=>"all"===t);let o="";if(n&&(o=getListViewSort(n)),s.url){const l=[],d=[];_$1.each(e.depend_on,e=>{l.push(`depend_on_${e}=\${${e}}`),d.push("this."+e)}),0<l.length&&(s.url=s.url+"?"+l.join("&"),s.sendOn=""+d.join(" && "))}s.data.$term="$term",s.data.$value=a.isRefToMutiple?`$${e.name}.ids`:"$"+e.name,_$1.each(e.depend_on,function(e){s.data[e]="$"+e}),s.data.$="$$",s.data.rfield="${object_name}",s.requestAdaptor=`
813
804
  var filters = [];
814
805
  var top = 10;
815
806
  if(api.data.$term){
@@ -832,7 +823,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
832
823
  filters.push(_filters);
833
824
  }
834
825
  }
835
- var sort = "${n}";
826
+ var sort = "${o}";
836
827
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', top).replace('{__sort}', sort.trim());
837
828
 
838
829
  var defaultValue = api.data.$value;
@@ -847,7 +838,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
847
838
  `,i&&i.labelField.name,i&&i.valueField.name,(e.optionsFunction||e._optionsFunction)&&(s.adaptor=`
848
839
  payload.data.options = eval(${e.optionsFunction||e._optionsFunction})(api.data.$);
849
840
  return payload;
850
- `);l={type:getAmisStaticFieldType("select",t),joinValues:!1,extractValue:!0,source:s,autoComplete:s,searchable:!0};return l.menuTpl="${icon ? `<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='${context.rootUrl}/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>` : label}",e.multiple&&(l.multiple=!0,l.extractValue=!0),t&&(l.tpl=await getLookupTpl(e,a)),l}async function getApi(e,t,a,i){e=await getFindQuery(e,t,a,i);return{method:"post",url:getApi$2(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function lookupToAmis(e,t,a){var i,r;return t?{type:getAmisStaticFieldType("picker",t),tpl:getRelatedFieldTpl(e,a)}:!e.reference_to||_$1.isString(e.reference_to)||t?(i=await getReferenceTo(e))?(r=await getUISchema(i.objectName),"space_users"===i.objectName&&"user"===e.reference_to_field?lookupToAmisSelectUser(e,t,a):1==r.enable_enhanced_lookup&&_$1.isEmpty(e.depend_on)?lookupToAmisPicker(e,t,a):r.enable_tree?lookupToAmisTreeSelect(e,t,Object.assign({},a,{labelField:i.labelField?.name||"name",valueField:i.valueField?.name||"_id",objectName:i.objectName})):lookupToAmisSelect(e,t,a)):lookupToAmisSelect(e,t,a):{type:"steedos-field-lookup",field:e,readonly:t,ctx:{}}}async function lookupToAmisSelectUser(e,t,a){return getSelectUserSchema(e,t,a)}const getMarkdownFieldSchema=(e,t,a)=>t?{type:"markdown",name:e.name,options:{linkify:!0,html:!0,breaks:!0}}:{type:"group",body:[{type:"editor",name:e.name,language:"markdown"},{type:"markdown",name:e.name,options:{linkify:!0,html:!0,breaks:!0}}]},getHtmlFieldSchema=(e,t,a)=>t?{type:"html",name:e.name}:{type:"input-rich-text",name:e.name},OMIT_FIELDS=["created","created_by","modified","modified_by"];function getBaseFields(e){let t="m-1";return[{name:"createdInfo",label:"创建人",type:"static",labelClassName:"text-left",className:t=e?""+t:t,tpl:getCreatedInfoTpl()},{name:"modifiedInfo",label:"修改人",type:"static",labelClassName:"text-left",className:t,tpl:getModifiedInfoTpl()}]}function getAmisFieldType(e){switch(e.type){case"text":return"text";case"textarea":return"textarea";case"html":return"html";case"markdown":return"markdown";case"select":return"select";case"boolean":return"checkbox";case"date":return"date";case"datetime":return"datetime";case"number":case"currency":case"percent":return"number";case"password":return"password";case"lookup":return"select";case"master_detail":return"picker";case"autonumber":return"text";case"url":return"url";case"email":return"email";case"image":return"image";case"formula":case"summary":break;case"grid":return"table";default:console.log("convertData default",e.type)}}function getObjectFieldSubFields(a,e){var t=Object.assign({subFields:[]},a),e=_$1.filter(e,function(e){var t=e.name.startsWith(a.name+".")&&_$1.split(e.name,".").length<3;return t&&(e._prefix=a.name+"."),t});return t.subFields=e,t}function getGridFieldSubFields(a,e){var t=Object.assign({subFields:[]},a),e=_$1.filter(e,function(e){var t=e.name.startsWith(a.name+".");return t&&(e._prefix=a.name+"."),t});return t.subFields=e,t}function getPermissionFields(e,t){const a=[],i=[];return _$1.each(e.fields,(e,t)=>{_$1.has(e,"name")||(e.name=t),i.push(e)}),_$1.each(_$1.sortBy(i,"sort_no"),function(e){e.hidden||a.push(Object.assign({},e,{permission:{allowEdit:!0}}))}),a}function getSelectFieldOptions(e){const t=e.data_type||"text",a=[];return _$1.each(e.options,e=>{switch(t){case"number":a.push({label:e.label,value:Number(e.value)});break;case"text":a.push({label:e.label,value:String(e.value)});break;case"boolean":a.push({label:e.label,value:"false"!==e.value})}}),a}async function convertSFieldToAmisField(a,i,r){if(!_$1.includes(OMIT_FIELDS,a.name)||1==r.showSystemFields){var e={name:r.fieldNamePrefix?""+r.fieldNamePrefix+a.name:a.name,label:a.label,labelRemark:a.inlineHelpText,required:(_$1.has(r,"required")?r:a).required};let t={};switch(a.type){case"text":t.type=getAmisStaticFieldType("text",i);break;case"textarea":t.type=getAmisStaticFieldType("textarea",i),t.tpl=`<%=(data.${a.name} || "").split("\\n").join('<br>')%>`;break;case"html":t=getHtmlFieldSchema(a,i);break;case"markdown":t=getMarkdownFieldSchema(a,i);break;case"select":t={type:getAmisStaticFieldType("select",i),joinValues:!1,options:getSelectFieldOptions(a),extractValue:!0,clearable:!0,labelField:"label",valueField:"value",tpl:i?getSelectTpl(a):null},a.multiple&&(t.multiple=!0,t.extractValue=!0);break;case"boolean":t={type:getAmisStaticFieldType("checkbox",i),tpl:i?getSwitchTpl(a):null};break;case"input-date-range":t={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:i?getDateTpl(a):null,joinValues:!1};break;case"date":t={type:getAmisStaticFieldType("date",i),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:i?getDateTpl(a):null};break;case"input-datetime-range":t={type:"input-datetime-range",inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSSZ",tpl:i?getDateTimeTpl(a):null,utc:!0,joinValues:!1};break;case"datetime":t={type:getAmisStaticFieldType("datetime",i),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSSZ",tpl:i?getDateTimeTpl(a):null,utc:!0};break;case"input-time-range":t={type:"input-time-range",inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:i?getDateTimeTpl(a):null,joinValues:!1};break;case"time":t={type:getAmisStaticFieldType("time",i),inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:i?getDateTimeTpl(a):null};break;case"currency":case"number":t=i?{type:"static-tpl",tpl:getNumberTpl(a)}:{type:getAmisStaticFieldType("number",i),min:a.min,max:a.max,precision:a.scale};break;case"input-array":t=Object.assign({},a,e);break;case"input-range":t={type:"input-range",min:a.min,max:a.max,value:[0,0],multiple:!0,showInput:!0};break;case"percent":t={type:getAmisStaticFieldType("number",i),min:a.min,max:a.max,precision:a.scale};break;case"password":t={type:getAmisStaticFieldType("password",i),tpl:i?getPasswordTpl(a):null};break;case"lookup":case"master_detail":t=await lookupToAmis(a,i,r);break;case"autonumber":i&&(t={type:"static-text"});break;case"url":t={type:getAmisStaticFieldType("url",i)};break;case"email":t={type:getAmisStaticFieldType("email",i)};break;case"avatar":case"image":case"file":t=getAmisFileSchema(a,i);break;case"formula":case"summary":i&&(t.type=getAmisStaticFieldType(a.data_type,i));break;case"code":t={type:"editor",language:a.language};break;case"toggle":t={type:"switch",name:a.name,label:a.label,width:a.width,toggled:a.toggled,disabled:i};break;case"grid":if(a.subFields){t={type:"input-table",showIndex:!0,columnsTogglable:!1,strictMode:!1,affixHeader:!1,editable:!i,addable:!i,removable:!i,draggable:!i,columns:[]};for(const d of a.subFields){var s=d.name.replace(`${a._prefix||""}${a.name}.$.`,"").replace(a.name+".",""),l=await convertSFieldToAmisField(Object.assign({},d,{name:s}),i,r);l&&(delete l.name,delete l.label,t.columns.push({name:s,label:d.label,quickEdit:!i&&l}))}}break;case"object":if(a.subFields){t={type:"combo",items:[]};for(var n of a.subFields){let e=n.name.replace(a.name+".$.","").replace(a.name+".","");"grid"===n.type?n=await getGridFieldSubFields(n,r.__permissionFields):i&&(e=a.name+"."+e);var o=await convertSFieldToAmisField(Object.assign({},n,{name:e}),i,r);o&&(delete o.name,delete o.label,t.items.push(Object.assign({},o,{name:e,label:n.label})))}}}return _$1.isEmpty(t)?void 0:(a.is_wide||"group"===t.type?t.className="col-span-2 m-1":t.className="m-1",i&&(t.className=t.className+" md:border-b"),i&&(t.quickEdit=!1),a.visible_on&&(a.visible_on.startsWith("{{")?t.visibleOn=""+a.visible_on.substring(2,a.visible_on.length-2).replace(/formData./g,"data."):t.visibleOn=""+a.visible_on.replace(/formData./g,"data.")),"group"===t.type?(t.body[0]=Object.assign({},e,t.body[0],{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:a.name}),t):Object.assign({},e,t,{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:a.name}))}}async function getFieldSearchable(e,t,a){var i=a.filterLoopCount||0;let r=e,s=("grid"===r.type?r=await getGridFieldSubFields(e,t):"object"===e.type&&(r=await getObjectFieldSubFields(e,t)),"__searchable__");if(r.name.indexOf(".")<0){e=cloneDeep(r),t=(includes(["textarea","html","code","autonumber"],r.type)&&(e.type="text"),"number"!==r.type&&"currency"!==r.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,s+="between__"),"date"===r.type&&(e.type="input-date-range",e.is_wide=!0,s+="between__"),"datetime"===r.type&&(e.type="input-datetime-range",e.is_wide=!0,s+="between__"),"time"===r.type&&(e.type="input-time-range",e.is_wide=!0,s+="between__"),"users"===r.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 convertSFieldToAmisField(e,!1,Object.assign({},a,{fieldNamePrefix:s,required:!1,showSystemFields:!0,filterVisible:i<5})));if(t)return t}}var index=Object.freeze({__proto__:null,OMIT_FIELDS:OMIT_FIELDS,getBaseFields:getBaseFields,getAmisFieldType:getAmisFieldType,getObjectFieldSubFields:getObjectFieldSubFields,getGridFieldSubFields:getGridFieldSubFields,getPermissionFields:getPermissionFields,getSelectFieldOptions:getSelectFieldOptions,convertSFieldToAmisField:convertSFieldToAmisField,getFieldSearchable:getFieldSearchable,getAmisStaticFieldType:getAmisStaticFieldType});async function getObjectFieldsFilterButtonSchema(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:"broadcast",args:{eventName:"broadcast_toggle_fields_filter"}}]}}}}async function getObjectFieldsFilterFormSchema(e,t,a){a=a||{};var i,r,s=[];for(i of t)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 getFieldSearchable(i,t,a))&&s.push(r));return map(s,"name"),a.enableSearchableFieldsVisibleOn&&s.forEach(function(e){e.visibleOn=`this.filterFormSearchableFields && this.filterFormSearchableFields.indexOf("${e.fieldName}") > -1`}),s}async function getObjectFieldsFilterBarSchema(e,t,a){a=a||{};t=await getObjectFieldsFilterFormSchema(e,t,Object.assign({},{enableSearchableFieldsVisibleOn:!0},a));return{type:"service",name:"service_listview_filter_form",data:{},id:"service_listview_filter_form_"+e.name,dataProvider:{inited:`
841
+ `);n={type:getAmisStaticFieldType("select",t),joinValues:!1,extractValue:!0,source:s,autoComplete:s,searchable:!0};return n.menuTpl="${icon ? `<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='${context.rootUrl}/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>` : label}",e.multiple&&(n.multiple=!0,n.extractValue=!0),t&&(n.tpl=await getLookupTpl(e,a)),n}async function getApi(e,t,a,i){e=await getFindQuery(e,t,a,i);return{method:"post",url:getApi$2(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function lookupToAmis(e,t,a){var i,r;return t?{type:getAmisStaticFieldType("picker",t),tpl:getRelatedFieldTpl(e,a)}:!e.reference_to||_$1.isString(e.reference_to)||t?(i=await getReferenceTo(e))?(r=await getUISchema(i.objectName),"space_users"===i.objectName&&"user"===e.reference_to_field?lookupToAmisSelectUser(e,t,a):1==r.enable_enhanced_lookup&&_$1.isEmpty(e.depend_on)?lookupToAmisPicker(e,t,a):r.enable_tree?lookupToAmisTreeSelect(e,t,Object.assign({},a,{labelField:i.labelField?.name||"name",valueField:i.valueField?.name||"_id",objectName:i.objectName})):lookupToAmisSelect(e,t,a)):lookupToAmisSelect(e,t,a):{type:"steedos-field-lookup",field:e,readonly:t,ctx:{}}}async function lookupToAmisSelectUser(e,t,a){return getSelectUserSchema(e,t,a)}const getMarkdownFieldSchema=(e,t,a)=>t?{type:"markdown",name:e.name,options:{linkify:!0,html:!0,breaks:!0}}:{type:"group",body:[{type:"editor",name:e.name,language:"markdown"},{type:"markdown",name:e.name,options:{linkify:!0,html:!0,breaks:!0}}]},getHtmlFieldSchema=(e,t,a)=>t?{type:"html",name:e.name}:{type:"input-rich-text",name:e.name},OMIT_FIELDS=["created","created_by","modified","modified_by"];function getBaseFields(e){let t="m-1";return[{name:"createdInfo",label:"创建人",type:"static",labelClassName:"text-left",className:t=e?""+t:t,tpl:getCreatedInfoTpl()},{name:"modifiedInfo",label:"修改人",type:"static",labelClassName:"text-left",className:t,tpl:getModifiedInfoTpl()}]}function getAmisFieldType(e){switch(e.type){case"text":return"text";case"textarea":return"textarea";case"html":return"html";case"markdown":return"markdown";case"select":return"select";case"boolean":return"checkbox";case"date":return"date";case"datetime":return"datetime";case"number":case"currency":case"percent":return"number";case"password":return"password";case"lookup":return"select";case"master_detail":return"picker";case"autonumber":return"text";case"url":return"url";case"email":return"email";case"image":return"image";case"formula":case"summary":break;case"grid":return"table";default:console.log("convertData default",e.type)}}function getObjectFieldSubFields(a,e){var t=Object.assign({subFields:[]},a),e=_$1.filter(e,function(e){var t=e.name.startsWith(a.name+".")&&_$1.split(e.name,".").length<3;return t&&(e._prefix=a.name+"."),t});return t.subFields=e,t}function getGridFieldSubFields(a,e){var t=Object.assign({subFields:[]},a),e=_$1.filter(e,function(e){var t=e.name.startsWith(a.name+".");return t&&(e._prefix=a.name+"."),t});return t.subFields=e,t}function getPermissionFields(e,t){const a=[],i=[];return _$1.each(e.fields,(e,t)=>{_$1.has(e,"name")||(e.name=t),i.push(e)}),_$1.each(_$1.sortBy(i,"sort_no"),function(e){e.hidden||a.push(Object.assign({},e,{permission:{allowEdit:!0}}))}),a}function getSelectFieldOptions(e){const t=e.data_type||"text",a=[];return _$1.each(e.options,e=>{switch(t){case"number":a.push({label:e.label,value:Number(e.value)});break;case"text":a.push({label:e.label,value:String(e.value)});break;case"boolean":a.push({label:e.label,value:"false"!==e.value})}}),a}async function convertSFieldToAmisField(a,i,r){if(!_$1.includes(OMIT_FIELDS,a.name)||1==r.showSystemFields){var e={name:r.fieldNamePrefix?""+r.fieldNamePrefix+a.name:a.name,label:a.label,labelRemark:a.inlineHelpText,required:(_$1.has(r,"required")?r:a).required};let t={};switch(a.type){case"text":t.type=getAmisStaticFieldType("text",i);break;case"textarea":t.type=getAmisStaticFieldType("textarea",i),t.tpl=`<%=(data.${a.name} || "").split("\\n").join('<br>')%>`;break;case"html":t=getHtmlFieldSchema(a,i);break;case"markdown":t=getMarkdownFieldSchema(a,i);break;case"select":t={type:getAmisStaticFieldType("select",i),joinValues:!1,options:getSelectFieldOptions(a),extractValue:!0,clearable:!0,labelField:"label",valueField:"value",tpl:i?getSelectTpl(a):null},a.multiple&&(t.multiple=!0,t.extractValue=!0);break;case"boolean":t={type:getAmisStaticFieldType("checkbox",i),tpl:i?getSwitchTpl(a):null};break;case"input-date-range":t={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:i?getDateTpl(a):null,joinValues:!1};break;case"date":t={type:getAmisStaticFieldType("date",i),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:i?getDateTpl(a):null};break;case"input-datetime-range":t={type:"input-datetime-range",inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSSZ",tpl:i?getDateTimeTpl(a):null,utc:!0,joinValues:!1};break;case"datetime":t={type:getAmisStaticFieldType("datetime",i),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSSZ",tpl:i?getDateTimeTpl(a):null,utc:!0};break;case"input-time-range":t={type:"input-time-range",inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:i?getDateTimeTpl(a):null,joinValues:!1};break;case"time":t={type:getAmisStaticFieldType("time",i),inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:i?getDateTimeTpl(a):null};break;case"currency":case"number":t=i?{type:"static-tpl",tpl:getNumberTpl(a)}:{type:getAmisStaticFieldType("number",i),min:a.min,max:a.max,precision:a.scale};break;case"input-array":t=Object.assign({},a,e);break;case"input-range":t={type:"input-range",min:a.min,max:a.max,value:[0,0],multiple:!0,showInput:!0};break;case"percent":t={type:getAmisStaticFieldType("number",i),min:a.min,max:a.max,precision:a.scale};break;case"password":t={type:getAmisStaticFieldType("password",i),tpl:i?getPasswordTpl(a):null};break;case"lookup":case"master_detail":t=await lookupToAmis(a,i,r);break;case"autonumber":i&&(t={type:"static-text"});break;case"url":t={type:getAmisStaticFieldType("url",i)};break;case"email":t={type:getAmisStaticFieldType("email",i)};break;case"avatar":case"image":case"file":t=getAmisFileSchema(a,i);break;case"formula":case"summary":i&&(t.type=getAmisStaticFieldType(a.data_type,i));break;case"code":t={type:"editor",language:a.language};break;case"toggle":t={type:"switch",name:a.name,label:a.label,width:a.width,toggled:a.toggled,disabled:i};break;case"grid":if(a.subFields){t={type:"input-table",showIndex:!0,columnsTogglable:!1,strictMode:!1,affixHeader:!1,editable:!i,addable:!i,removable:!i,draggable:!i,columns:[]};for(const d of a.subFields){var s=d.name.replace(`${a._prefix||""}${a.name}.$.`,"").replace(a.name+".",""),n=await convertSFieldToAmisField(Object.assign({},d,{name:s}),i,r);n&&(delete n.name,delete n.label,t.columns.push({name:s,label:d.label,quickEdit:!i&&n}))}}break;case"object":if(a.subFields){t={type:"combo",items:[]};for(var o of a.subFields){let e=o.name.replace(a.name+".$.","").replace(a.name+".","");"grid"===o.type?o=await getGridFieldSubFields(o,r.__permissionFields):i&&(e=a.name+"."+e);var l=await convertSFieldToAmisField(Object.assign({},o,{name:e}),i,r);l&&(delete l.name,delete l.label,t.items.push(Object.assign({},l,{name:e,label:o.label})))}}}return _$1.isEmpty(t)?void 0:(a.is_wide||"group"===t.type?t.className="col-span-2 m-1":t.className="m-1",i&&(t.className=t.className+" md:border-b"),i&&(t.quickEdit=!1),a.visible_on&&(a.visible_on.startsWith("{{")?t.visibleOn=""+a.visible_on.substring(2,a.visible_on.length-2).replace(/formData./g,"data."):t.visibleOn=""+a.visible_on.replace(/formData./g,"data.")),"group"===t.type?(t.body[0]=Object.assign({},e,t.body[0],{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:a.name}),t):Object.assign({},e,t,{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:a.name}))}}async function getFieldSearchable(e,t,a){var i=a.filterLoopCount||0;let r=e,s=("grid"===r.type?r=await getGridFieldSubFields(e,t):"object"===e.type&&(r=await getObjectFieldSubFields(e,t)),"__searchable__");if(r.name.indexOf(".")<0){e=cloneDeep(r),t=(includes(["textarea","html","code","autonumber"],r.type)&&(e.type="text"),"number"!==r.type&&"currency"!==r.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,s+="between__"),"date"===r.type&&(e.type="input-date-range",e.is_wide=!0,s+="between__"),"datetime"===r.type&&(e.type="input-datetime-range",e.is_wide=!0,s+="between__"),"time"===r.type&&(e.type="input-time-range",e.is_wide=!0,s+="between__"),"users"===r.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 convertSFieldToAmisField(e,!1,Object.assign({},a,{fieldNamePrefix:s,required:!1,showSystemFields:!0,filterVisible:i<5})));if(t)return t}}var index=Object.freeze({__proto__:null,OMIT_FIELDS:OMIT_FIELDS,getBaseFields:getBaseFields,getAmisFieldType:getAmisFieldType,getObjectFieldSubFields:getObjectFieldSubFields,getGridFieldSubFields:getGridFieldSubFields,getPermissionFields:getPermissionFields,getSelectFieldOptions:getSelectFieldOptions,convertSFieldToAmisField:convertSFieldToAmisField,getFieldSearchable:getFieldSearchable,getAmisStaticFieldType:getAmisStaticFieldType});async function getObjectFieldsFilterButtonSchema(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:"broadcast",args:{eventName:"broadcast_toggle_fields_filter"}}]}}}}async function getObjectFieldsFilterFormSchema(e,t,a){a=a||{};var i,r,s=[];for(i of t)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 getFieldSearchable(i,t,a))&&s.push(r));return map(s,"name"),a.enableSearchableFieldsVisibleOn&&s.forEach(function(e){e.visibleOn=`this.filterFormSearchableFields && this.filterFormSearchableFields.indexOf("${e.fieldName}") > -1`}),s}async function getObjectFieldsFilterBarSchema(e,t,a){a=a||{};t=await getObjectFieldsFilterFormSchema(e,t,Object.assign({},{enableSearchableFieldsVisibleOn:!0},a));return{type:"service",name:"service_listview_filter_form",data:{},id:"service_listview_filter_form_"+e.name,dataProvider:{inited:`
851
842
  const objectName = data.objectName;
852
843
  const isLookup = data.isLookup;
853
844
  const listViewId = data.listViewId;
@@ -1012,13 +1003,13 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
1012
1003
  localStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));
1013
1004
  }
1014
1005
  // ===END===
1015
- `},{componentId:"",args:{},actionType:"closeDrawer"}]}},id:"u:14e7388fecd3",level:"primary"}],closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,data:{"&":"$$",objectName:"${objectName}",listName:"${listName}",listViewId:"${listViewId}",uiSchema:"${uiSchema}",isLookup:"${isLookup}",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-300 border-y slds-grid slds-grid_vertical slds-nowrap "+(!a.isLookup&&"mt-2"),visibleOn:"this.showFieldsFilter"},className:"bg-white"}}const DEFAULT_CALENDAR_OPTIONS={startDateExpr:"start",endDateExpr:"end",allDayExpr:"is_all_day",textExpr:"name"};async function getCalendarApi(e,t,a){var i=(a=a||{}).calendarOptions;const r=[];let{globalFilter:s,filter:l,sort:n,top:o,setDataToComponentId:d=""}=a;o=o||200,l=(l=___default.isArray(l)?___default.map(l,function(e){return e.operation?[e.field,e.operation,e.value]:e}):l)||[],___default.each(t,function(e){e.searchable&&r.push(e.name)});var a=e.idFieldName||"_id",c=e.key_field||"_id",e=await getApi$1(e,null,t,{alias:"rows",limit:o,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});return e.data.$term="$term",e.data.$self="$$",e.data.filter="$filter",e.data.pageSize=o||10,e.requestAdaptor=`
1006
+ `},{componentId:"",args:{},actionType:"closeDrawer"}]}},id:"u:14e7388fecd3",level:"primary"}],closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,data:{"&":"$$",objectName:"${objectName}",listName:"${listName}",listViewId:"${listViewId}",uiSchema:"${uiSchema}",isLookup:"${isLookup}",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-300 border-y slds-grid slds-grid_vertical slds-nowrap "+(!a.isLookup&&"mt-2"),visibleOn:"this.showFieldsFilter"},className:"bg-white"}}const DEFAULT_CALENDAR_OPTIONS={startDateExpr:"start",endDateExpr:"end",allDayExpr:"is_all_day",textExpr:"name"};async function getCalendarApi(e,t,a){var i=(a=a||{}).calendarOptions;const r=[];let{globalFilter:s,filter:n,sort:o,top:l,setDataToComponentId:d=""}=a;l=l||200,n=(n=___default.isArray(n)?___default.map(n,function(e){return e.operation?[e.field,e.operation,e.value]:e}):n)||[],___default.each(t,function(e){e.searchable&&r.push(e.name)});var a=e.idFieldName||"_id",c=e.key_field||"_id",e=await getApi$1(e,null,t,{alias:"rows",limit:l,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});return e.data.$term="$term",e.data.$self="$$",e.data.filter="$filter",e.data.pageSize=l||10,e.requestAdaptor=`
1016
1007
  let selfData = JSON.parse(JSON.stringify(api.data.$self));
1017
1008
  ${s?`var filters = ${JSON.stringify(s)};`:"var filters = [];"}
1018
1009
  if(_.isEmpty(filters)){
1019
- filters = api.data.filter || ${JSON.stringify(l)};
1010
+ filters = api.data.filter || ${JSON.stringify(n)};
1020
1011
  }else{
1021
- filters = [filters, 'and', api.data.filter || ${JSON.stringify(l)}]
1012
+ filters = [filters, 'and', api.data.filter || ${JSON.stringify(n)}]
1022
1013
  }
1023
1014
  const eventFetchInfo = selfData.fetchInfo;
1024
1015
  const startDateExpr = "${i.startDateExpr}";
@@ -1035,7 +1026,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
1035
1026
  var orderBy = api.data.orderBy || '';
1036
1027
  var orderDir = api.data.orderDir || '';
1037
1028
  var sort = orderBy + ' ' + orderDir;
1038
- sort = orderBy ? sort : "${n}";
1029
+ sort = orderBy ? sort : "${o}";
1039
1030
  var allowSearchFields = ${JSON.stringify(r)};
1040
1031
  if(api.data.$term){
1041
1032
  filters = [["name", "contains", "'+ api.data.$term +'"]];
@@ -1148,7 +1139,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
1148
1139
  revert && revert();
1149
1140
  }
1150
1141
  return payload;
1151
- `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getObjectCalendar(t,e,a){var i=t.permissions,r=(a=a||{},(e=Object.assign({},DEFAULT_CALENDAR_OPTIONS,omitBy(e,isNil))).title||[e.startDateExpr,e.endDateExpr,e.allDayExpr,e.textExpr]);let s=[],l=(each(r,function(e){t.fields[e]&&s.push(t.fields[e])}),t.fields[e.allDayExpr]&&s.push(t.fields[e.allDayExpr]),a.sort||(r=a.sortField,a.sortOrder,r&&0),e.currentView);if(l)switch(l){case"day":l="timeGridDay";break;case"week":l="timeGridWeek";break;case"month":l="dayGridMonth";break;case"agenda":l="timeGridDay"}else l="timeGridWeek";a.calendarOptions=e;var r=await getCalendarApi(t,s,a),a=`
1142
+ `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getObjectCalendar(t,e,a){var i=t.permissions,r=(a=a||{},(e=Object.assign({},DEFAULT_CALENDAR_OPTIONS,omitBy(e,isNil))).title||[e.startDateExpr,e.endDateExpr,e.allDayExpr,e.textExpr]);let s=[],n=(each(r,function(e){t.fields[e]&&s.push(t.fields[e])}),t.fields[e.allDayExpr]&&s.push(t.fields[e.allDayExpr]),a.sort||(r=a.sortField,a.sortOrder,r&&0),e.currentView);if(n)switch(n){case"day":n="timeGridDay";break;case"week":n="timeGridWeek";break;case"month":n="dayGridMonth";break;case"agenda":n="timeGridDay"}else n="timeGridWeek";a.calendarOptions=e;var r=await getCalendarApi(t,s,a),a=`
1152
1143
  const api = ${JSON.stringify(r)};
1153
1144
  event.data.calendarOptions = ${JSON.stringify(e)};
1154
1145
  doAction({
@@ -1199,7 +1190,7 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
1199
1190
  "size": "lg"
1200
1191
  }
1201
1192
  });
1202
- `,n=getCalendarRecordPermissionsApi(t,"${event.id}"),o=getCalendarRecordSaveApi(t,e),d={daysOfWeek:[1,2,3,4,5],startTime:"08:00",endTime:"18:00"},e=(isEmpty(e.startDayHour)||(d.startTime=e.startDayHour+":00"),isEmpty(e.endDayHour)||(d.endTime=e.endDayHour+":00"),{type:"steedos-fullcalendar",label:"",name:"fullcalendar",editable:i.allowEdit,selectable:i.allowCreate,selectMirror:i.allowCreate,initialView:l,businessHours:d,onEvent:{getEvents:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:a}]},select:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:r}]},eventClick:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:`
1193
+ `,o=getCalendarRecordPermissionsApi(t,"${event.id}"),l=getCalendarRecordSaveApi(t,e),d={daysOfWeek:[1,2,3,4,5],startTime:"08:00",endTime:"18:00"},e=(isEmpty(e.startDayHour)||(d.startTime=e.startDayHour+":00"),isEmpty(e.endDayHour)||(d.endTime=e.endDayHour+":00"),{type:"steedos-fullcalendar",label:"",name:"fullcalendar",editable:i.allowEdit,selectable:i.allowCreate,selectMirror:i.allowCreate,initialView:n,businessHours:d,onEvent:{getEvents:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:a}]},select:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:r}]},eventClick:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:`
1203
1194
  const data = event.data;
1204
1195
  const eventData = data.event;
1205
1196
  const appId = data.appId;
@@ -1224,11 +1215,11 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
1224
1215
  "actions": []
1225
1216
  }
1226
1217
  });
1227
- `}]},eventAdd:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:"console.log('eventAdd'); console.log(event);"}]},eventChange:{weight:0,actions:[{actionType:"ajax",args:{api:n}},{actionType:"toast",expression:"!event.data.editable",args:{msgType:"error",msg:"您没有编辑该记录的权限!",position:"top-center"}},{actionType:"ajax",expression:"event.data.editable",args:{api:o,messages:{success:t.label+"修改成功",failed:t.label+"修改失败!"}}}]},eventRemove:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:"console.log('eventRemove'); console.log(event);"}]},eventsSet:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:"console.log('eventsSet'); console.log(event);"}]}}});return e}const getGraphqlFieldsQuery=e=>{const t=["_id"];return e.push("record_permissions"),each(e,e=>{-1<e.indexOf(".")&&(e=e.split(".")[0]),t.push(""+e)}),""+t.join(" ")},getFindOneQuery=(e,t,a)=>{e=e.replace(/\./g,"_");a=getGraphqlFieldsQuery(a);let i="";t=[`id: "${t}"`];return`{record:${e}__findOne${i=0<t.length?`(${t.join(",")})`:i}{${a}}}`},getRecord=async(e,t,a)=>{return(await fetchAPI("/graphql",{method:"post",body:JSON.stringify({query:getFindOneQuery(e,t,a)})})).data.record},getRelatedsCount=async(t,e)=>{const a=[];each(e,e=>{a.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${t}"]])`)});e=`
1218
+ `}]},eventAdd:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:"console.log('eventAdd'); console.log(event);"}]},eventChange:{weight:0,actions:[{actionType:"ajax",args:{api:o}},{actionType:"toast",expression:"!event.data.editable",args:{msgType:"error",msg:"您没有编辑该记录的权限!",position:"top-center"}},{actionType:"ajax",expression:"event.data.editable",args:{api:l,messages:{success:t.label+"修改成功",failed:t.label+"修改失败!"}}}]},eventRemove:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:"console.log('eventRemove'); console.log(event);"}]},eventsSet:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:"console.log('eventsSet'); console.log(event);"}]}}});return e}const getGraphqlFieldsQuery=e=>{const t=["_id"];return e.push("record_permissions"),each(e,e=>{-1<e.indexOf(".")&&(e=e.split(".")[0]),t.push(""+e)}),""+t.join(" ")},getFindOneQuery=(e,t,a)=>{e=e.replace(/\./g,"_");a=getGraphqlFieldsQuery(a);let i="";t=[`id: "${t}"`];return`{record:${e}__findOne${i=0<t.length?`(${t.join(",")})`:i}{${a}}}`},getRecord=async(e,t,a)=>{return(await fetchAPI("/graphql",{method:"post",body:JSON.stringify({query:getFindOneQuery(e,t,a)})})).data.record},getRelatedsCount=async(t,e)=>{const a=[];each(e,e=>{a.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${t}"]])`)});e=`
1228
1219
  {
1229
1220
  ${a.join(",")}
1230
1221
  }
1231
- `;return(await fetchAPI("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},getRecordPermissions=async(e,t)=>{return await fetchAPI(`/service/api/@${e}/recordPermissions/`+t,{method:"GET"})},getRelatedFieldValue=(e,t,a,i)=>{a=find(a.fields,e=>i===e?.name);return isString(a.reference_to)?a.multiple?[t]:t:{o:e,ids:[t]}};async function getObjectRelatedList(e,t,a){var i=await getUISchema(e),r=[],s=[].concat(i.related_lists||[]);if(isEmpty(s))for(const o of[].concat(i.details||[])){var l=o.split(".");r.push({masterObjectName:e,object_name:l[0],foreign_key:l[1]})}else for(const d of s){var n=d.related_field_fullname.split(".");r.push({masterObjectName:e,object_name:n[0],foreign_key:n[1],label:d.label,columns:d.field_names,sort:d.sort,filters:d.filters,visible_on:d.visible_on,page_size:d.page_size})}return r}async function getRecordDetailRelatedListSchema(t,e,a,i,r){let{top:s,perPage:l,hiddenEmptyTable:n,appId:o,relatedLabel:d,className:c}=r;var p=await getUISchema(a),{label:u,fields:m}=p;d=d||u;let f=null;u=await getField(a,i=i||findKey(m,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===t}));if(!u)return{uiSchema:p,amisSchema:{type:"alert",body:`未找到与相关列表对象${a}关联的相关表字段`,level:"warning",showIcon:!0,className:"mb-3"}};let g=e;u.reference_to_field&&"_id"!=u.reference_to_field&&(m=await getRecord(t,e,[u.reference_to_field]),g=m[u.reference_to_field]),f=u._reference_to||u.reference_to&&!isString(u.reference_to)?[[i+"/o","=",t],[i+"/ids","=",g]]:[""+i,"=",g];e=await getObjectRecordDetailRelatedListHeader(p,d),m="steedos-record-related-list-"+a,u=(await getRelatedListSchema(a,"all",{globalFilter:f,defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:e},showHeader:!0,top:s,perPage:l,setDataToComponentId:m,tableHiddenOn:n?"this.$count === 0":null,appId:o,crudClassName:"border-t border-slate-300",...r})).amisSchema;return u?{uiSchema:p,amisSchema:{type:"service",id:m,className:"steedos-record-related-list rounded border border-slate-300 bg-gray-100 mb-4 "+c,data:{"&":"$$",appId:"${appId}",app_id:"${appId}",masterObjectName:t,masterRecordId:"${recordId}",relatedKey:i,objectName:a,listViewId:`amis-\${appId}-${a}-listview`},body:[{...u,data:{"&":"$$",appId:"${appId}",app_id:"${appId}",relatedKey:i,objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[i]:getRelatedFieldValue(t,g,p,i)}}}]}}:void 0}function getDefaultRelatedListProps(e,a,t){var i=find(e.list_views,(e,t)=>"calendar"!==e.type&&t===(a=a||t));let r=[],s="",l=null,n=null;return i?(r=getListViewColumns(i,t.formFactor),s=getListViewSort(i),l=getListViewFilter(i),n=i&&i._filters):(t=find(e.fields,(e,t)=>e.is_name),r=t?[t.name]:["name"]),{columns:r,sort:s,filter:l,filtersFunction:n}}function getRelatedListProps(e,t,a){if(a.columns){var i=getListViewSort(a.sort);let e=a.filters?[e,a.globalFilter]:a.globalFilter;return{columns:a.columns,sort:i,filter:e,filtersFunction:a.filtersFunction}}return getDefaultRelatedListProps(e,t,a)}async function getRelatedListSchema(e,t,a){var i=await getUISchema(e),r=i.list_views,{columns:s,sort:l,filter:n,filtersFunction:o}=getRelatedListProps(i,t,a),d=a.defaults||{},t=(!d.headerSchema&&a.showHeader&&(d.headerSchema=await getObjectListHeader(i,t)),a.showHeader||(d.headerSchema=null),a.defaults=d,{type:"steedos-object-table",objectApiName:e,columns:s,extraColumns:r.extra_columns,filters:n,filtersFunction:o,sort:l,ctx:a});return{uiSchema:i,amisSchema:t}}let UI_SCHEMA_CACHE={},UISchemaFunction;const setUISchemaFunction=function(e){UISchemaFunction=e},setUISchemaCache=("undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=UI_SCHEMA_CACHE),UI_SCHEMA_CACHE=window.UI_SCHEMA_CACHE),(e,t)=>{UI_SCHEMA_CACHE[e]=t}),getUISchemaCache=e=>cloneDeep(UI_SCHEMA_CACHE[e]),hasUISchemaCache=e=>has(UI_SCHEMA_CACHE,e);function getListViewColumns(e,t){let a=[];return a="SMALL"===t?isEmpty(e.mobile_columns)?slice(e.columns,0,4):e.mobile_columns:e.columns}function getListViewSort(e){let i="";return e&&e.sort&&e.sort.length&&each(e.sort,function(e,t){var a;isArray(e)?(a=e[0]+" "+(e[1]||""),a=0<t?","+a:a,i+=a):(a=e.field_name+" "+e.order,a=0<t?","+a:a,i+=a)}),i}function getListViewFilter(t){if(t){var a=getUserId();let e=t.filters;return"mine"===t.filter_scope&&(___default.isEmpty(e)?e=[["owner","=",a]]:e.push(["owner","=",a])),e}}function formatUISchemaCache(objectName,uiSchema){setUISchemaCache(objectName,uiSchema),each(uiSchema.fields,field=>{try{"lookup"===field.type&&field._reference_to&&___default.isString(field._reference_to)&&(field.reference_to=eval(`(${field._reference_to})`)())}catch(exception){field.reference_to=void 0,console.error(exception)}}),each(uiSchema.list_views,(e,t)=>{e.name=t,has(e,"columns")||(e.columns=uiSchema.list_views.all.columns)})}async function getUISchema(t,a){if(t){if(!hasUISchemaCache(t)||a){let e=null;try{if(!(e=UISchemaFunction?await UISchemaFunction(t,a):await fetchAPI(`/service/api/@${t.replace(/\./g,"_")}/uiSchema`,{method:"get"})))return;formatUISchemaCache(t,e)}catch(e){console.error("getUISchema",t,e),setUISchemaCache(t,null)}}return getUISchemaCache(t)}}function getUISchemaSync(t,e){if(t){if(!hasUISchemaCache(t)||e)try{var a,i=`/service/api/@${t.replace(/\./g,"_")}/uiSchema`;if(!(a=Steedos.authRequest(i,{type:"GET",async:!1})))return;formatUISchemaCache(t,a)}catch(e){console.error("getUISchema",t,e),setUISchemaCache(t,null)}return getUISchemaCache(t)}}async function getField(e,t){return(await getUISchema(e))?.fields[t]}async function getFormSchema(e,t){e=await getUISchema(e);return{uiSchema:e,amisSchema:await getObjectForm(e,t)}}async function getViewSchema(e,t,a){e=await getUISchema(e);return{uiSchema:e,amisSchema:await getObjectDetail(e,t,a)}}async function getListSchema(e,t,a,i={}){var r=await getUISchema(t),s=find(r.list_views,(e,t)=>t===(a=a||t)||e._id===a);if(!s)return{uiSchema:r};if(s.enable_amis_schema&&s.amis_schema){const f=isString(s.amis_schema)?JSON.parse(s.amis_schema):s.amis_schema;return{uiSchema:r,isCustomAmisSchema:!0,amisSchema:f}}var l=getListViewColumns(s,i.formFactor),n=getListViewSort(s),o=getListViewFilter(s),d=s&&s._filters;if("calendar"===s.type){const f={type:"steedos-object-calendar",objectApiName:t,filters:o,filtersFunction:d,sort:n,...s.options};return{uiSchema:r,isCalendar:!0,amisSchema:f}}var c=i.defaults||{};!c.headerSchema&&i.showHeader&&(c.headerSchema=await getObjectListHeader$1(r)),i.showHeader||(c.headerSchema=null);try{var p,u=location.pathname+"/crud/"+i.listViewId,m=localStorage.getItem(u);m&&(m=JSON.parse(m),p={},m.orderBy&&(p.orderBy=m.orderBy),m.orderDir&&(p.orderDir=m.orderDir),m.perPage&&(p.defaultParams={perPage:m.perPage}),c.listSchema=defaultsDeep$1({},p,c.listSchema||{}))}catch(e){console.error("本地存储中crud参数解析异常:",e)}i.defaults=c;const f={type:"steedos-object-table",objectApiName:t,columns:l,extraColumns:s.extra_columns,filters:o,filtersFunction:d,sort:n,ctx:i,requestAdaptor:s.requestAdaptor,adaptor:s.adaptor};return{uiSchema:r,amisSchema:f}}async function getTableSchema(e,t,a,i={}){const r=await getUISchema(t);let s=i.sort;s||(n=i.sortField,o=i.sortOrder,n&&(s=n+" "+o||"asc"));let l=[];each(a,function(e){isString(e)&&r.fields[e]?l.push(r.fields[e]):isObject$1(e)&&r.fields[e.field]&&l.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}))});var n=i.extraColumns,o=(n&&each(n,function(e){isString(e)?l.push({extra:!0,name:e}):isObject$1(e)&&l.push({extra:!0,name:e.field})}),await getObjectCRUD(r,l,{tabId:t,appId:e,objectName:t,...i,filter:i.filters,sort:s,buttons:await getListViewItemButtons(r,i)}));return{uiSchema:r,amisSchema:o}}async function getCalendarSchema(e,t,a,i={}){var r=await getUISchema(t);return{uiSchema:r,amisSchema:await getObjectCalendar(r,a,{tabId:t,appId:e,objectName:t,...i})}}async function getRecordDetailHeaderSchema(e,t,a){e=await getUISchema(e);return{uiSchema:e,amisSchema:await getObjectRecordDetailHeader(e,t,a)}}async function getRecordDetailSchema(e,t){var a=await getUISchema(e),i={type:"tabs",className:"sm:mt-3 bg-white sm:shadow sm:rounded sm:border border-slate-300 p-4",tabs:[{title:"详细",className:"px-0 py-4",body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d4a495811d57",appId:t}],id:"u:5d4e7e3f6ecc"}],id:"u:a649e4094a12"};return(await getObjectRelatedList(e)).length&&i.tabs.push({title:"相关",className:"px-0 pt-4",body:[{type:"steedos-object-related-lists",label:"相关列表",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:3b85b7b7a7f6",appId:t}],id:"u:1a0326aeec2b"}),{uiSchema:a,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.${a?.NAME_FIELD_KEY||"name"}}`,record:"${record}",recordLoaded:!0}}]}}},i]}}}async function getObjectRelated({appName:e,masterObjectName:t,objectName:a,relatedFieldName:i,recordId:r,formFactor:s}){let l=null;var n=await getField(a,i),n=(l=n._reference_to||n.reference_to&&!isString(n.reference_to)?[[i+"/o","=",t],[i+"/ids","=",r]]:[""+i,"=",r],await getUISchema(t));return{masterObjectName:t,object_name:a,foreign_key:i,schema:await getListSchema(e,a,"all",{globalFilter:l,formFactor:s}),record:await getRecord(t,r,[n.NAME_FIELD_KEY]),masterObjectUISchema:n}}async function getSearchableFieldsFilterSchema(e,t,a){return getObjectFieldsFilterFormSchema(e,t,a)}function getScopeId(e,t){return`page_${e}_`+t}async function getFormPageInitSchema(e){var t=await getFormSchema(e,{recordId:"${recordId}"});return{type:"page",name:getScopeId(e,"form"),bodyClassName:"",regions:["body"],body:[t.amisSchema]}}async function getListPageInitSchema(e,t,a){return{type:"page",name:getScopeId(e,"list"),bodyClassName:"",regions:["body"],body:[{type:"steedos-object-listview",objectApiName:e,columnsTogglable:!1,showHeader:!0,className:"sm:border bg-white sm:shadow sm:rounded border-slate-300 border-solid"}]}}async function getRecordPageInitSchema(e){var t=await getObjectRelatedList(e),a=[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",onEvent:{recordLoaded:{actions:[{actionType:"setValue",args:{value:{recordLoaded:!0}}},{actionType:"reload",data:{name:`\${record.${(await getUISchema(e))?.NAME_FIELD_KEY||"name"}}`,record:"${record}",recordLoaded:!0}}]}}}],i={type:"tabs",tabs:[{title:"详情",body:[{type:"steedos-object-form",label:"对象表单",mode:"read",objectApiName:"${objectName}",recordId:"${recordId}",labelAlign:"left"}]}],className:"sm:mt-3 flex flex-col region-main bg-white sm:shadow sm:rounded sm:border border-slate-300",linksClassName:"pl-4 pt-2"};return t.length&&i.tabs.push({title:"相关",body:{type:"steedos-object-related-lists",label:"所有相关表",objectApiName:"${objectName}",recordId:"${recordId}"}}),a.push(i),{type:"page",id:`page_${e}_record_detail`,name:getScopeId(e,"record_detail"),bodyClassName:"",regions:["body"],body:a}}async function getListviewInitSchema(t,a,i){i=i||{};var r=await getUISchema(t),s=find(r.list_views,(e,t)=>t===a);let l={};if(s){var n=getListViewColumns(s,i.formFactor),s=getListViewSort(s),o=i.defaults||{};o.headerSchema||(r=await getObjectListHeader$1(r),o.headerSchema=r),i.defaults=o;let e=i.setDataToComponentId;e=e||"service_listview_"+t;r=await getTableSchema(null,t,n,{sort:s,...i,setDataToComponentId:e});delete(l=r.amisSchema).data.$master,delete l.data._id,delete l.data.recordPermissions,delete l.data.uiSchema}return l}async function getApps(){return await fetchAPI("/service/api/apps/menus")}async function getApp(e){return await fetchAPI(`/service/api/apps/${e}/menus`)}"undefined"!=typeof window&&(window.getUISchema=getUISchema,window.getUISchemaSync=getUISchemaSync);const getNotifications=async()=>{var e=getSteedosAuth(),e=`
1222
+ `;return(await fetchAPI("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},getRecordPermissions=async(e,t)=>{return await fetchAPI(`/service/api/@${e}/recordPermissions/`+t,{method:"GET"})},getRelatedFieldValue=(e,t,a,i)=>{a=find(a.fields,e=>i===e?.name);return isString(a.reference_to)?a.multiple?[t]:t:{o:e,ids:[t]}};async function getObjectRelatedList(e,t,a){var i=await getUISchema(e),r=[],s=[].concat(i.related_lists||[]);if(isEmpty(s))for(const l of[].concat(i.details||[])){var n=l.split(".");r.push({masterObjectName:e,object_name:n[0],foreign_key:n[1]})}else for(const d of s){var o=d.related_field_fullname.split(".");r.push({masterObjectName:e,object_name:o[0],foreign_key:o[1],label:d.label,columns:d.field_names,sort:d.sort,filters:d.filters,visible_on:d.visible_on,page_size:d.page_size})}return r}async function getRecordDetailRelatedListSchema(t,e,a,i,r){let{top:s,perPage:n,hiddenEmptyTable:o,appId:l,relatedLabel:d,className:c}=r;var p=await getUISchema(a),{label:u,fields:m}=p;d=d||u;let f=null;u=await getField(a,i=i||findKey(m,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===t}));if(!u)return{uiSchema:p,amisSchema:{type:"alert",body:`未找到与相关列表对象${a}关联的相关表字段`,level:"warning",showIcon:!0,className:"mb-3"}};let g=e;u.reference_to_field&&"_id"!=u.reference_to_field&&(m=await getRecord(t,e,[u.reference_to_field]),g=m[u.reference_to_field]),f=u._reference_to||u.reference_to&&!isString(u.reference_to)?[[i+"/o","=",t],[i+"/ids","=",g]]:[""+i,"=",g];e=await getObjectRecordDetailRelatedListHeader(p,d),m="steedos-record-related-list-"+a,u=(await getRelatedListSchema(a,"all",{globalFilter:f,defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1,onEvent:{["@data.changed."+a]:{actions:[{actionType:"reload"}]}}},headerSchema:e},showHeader:!0,top:s,perPage:n,setDataToComponentId:m,tableHiddenOn:o?"this.$count === 0":null,appId:l,crudClassName:"border-t border-slate-300",...r})).amisSchema;return u?{uiSchema:p,amisSchema:{type:"service",id:m,className:"steedos-record-related-list rounded border border-slate-300 bg-gray-100 mb-4 "+c,data:{"&":"$$",appId:"${appId}",app_id:"${appId}",masterObjectName:t,masterRecordId:"${recordId}",relatedKey:i,objectName:a,listViewId:`amis-\${appId}-${a}-listview`},body:[{...u,data:{"&":"$$",appId:"${appId}",app_id:"${appId}",relatedKey:i,objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[i]:getRelatedFieldValue(t,g,p,i)}}}]}}:void 0}function getDefaultRelatedListProps(e,a,t){var i=find(e.list_views,(e,t)=>"calendar"!==e.type&&t===(a=a||t));let r=[],s="",n=null,o=null;return i?(r=getListViewColumns(i,t.formFactor),s=getListViewSort(i),n=getListViewFilter(i),o=i&&i._filters):(t=find(e.fields,(e,t)=>e.is_name),r=t?[t.name]:["name"]),{columns:r,sort:s,filter:n,filtersFunction:o}}function getRelatedListProps(e,t,a){if(a.columns){var i=getListViewSort(a.sort);let e=a.filters?[e,a.globalFilter]:a.globalFilter;return{columns:a.columns,sort:i,filter:e,filtersFunction:a.filtersFunction}}return getDefaultRelatedListProps(e,t,a)}async function getRelatedListSchema(e,t,a){var i=await getUISchema(e),r=i.list_views,{columns:s,sort:n,filter:o,filtersFunction:l}=getRelatedListProps(i,t,a),d=a.defaults||{},t=(!d.headerSchema&&a.showHeader&&(d.headerSchema=await getObjectListHeader(i,t)),a.showHeader||(d.headerSchema=null),a.defaults=d,{type:"steedos-object-table",objectApiName:e,columns:s,extraColumns:r.extra_columns,filters:o,filtersFunction:l,sort:n,ctx:a});return{uiSchema:i,amisSchema:t}}let UI_SCHEMA_CACHE={},UISchemaFunction;const setUISchemaFunction=function(e){UISchemaFunction=e},setUISchemaCache=("undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=UI_SCHEMA_CACHE),UI_SCHEMA_CACHE=window.UI_SCHEMA_CACHE),(e,t)=>{UI_SCHEMA_CACHE[e]=t}),getUISchemaCache=e=>cloneDeep(UI_SCHEMA_CACHE[e]),hasUISchemaCache=e=>has(UI_SCHEMA_CACHE,e);function getListViewColumns(e,t){let a=[];return a="SMALL"===t?isEmpty(e.mobile_columns)?slice(e.columns,0,4):e.mobile_columns:e.columns}function getListViewSort(e){let i="";return e&&e.sort&&e.sort.length&&each(e.sort,function(e,t){var a;isArray(e)?(a=e[0]+" "+(e[1]||""),a=0<t?","+a:a,i+=a):(a=e.field_name+" "+e.order,a=0<t?","+a:a,i+=a)}),i}function getListViewFilter(t){if(t)try{var a=getUserId();let e=t.filters;if("mine"===t.filter_scope)if(___default.isEmpty(e))e=[["owner","=",a]];else{if(___default.isString(e)&&___default.startsWith(___default.trim(e),"function")&&(e=(e=new Function("return "+e))()),!___default.isArray(e))throw console.debug("listView filters is not array",t),new Error("filters is not array");e.push(["owner","=",a])}return e}catch(e){console.error(e)}}function formatUISchemaCache(objectName,uiSchema){setUISchemaCache(objectName,uiSchema),each(uiSchema.fields,field=>{try{"lookup"===field.type&&field._reference_to&&___default.isString(field._reference_to)&&(field.reference_to=eval(`(${field._reference_to})`)())}catch(exception){field.reference_to=void 0,console.error(exception)}}),each(uiSchema.list_views,(e,t)=>{e.name=t,has(e,"columns")||(e.columns=uiSchema.list_views.all.columns)})}async function getUISchema(t,a){if(t){if(!hasUISchemaCache(t)||a){let e=null;try{if(!(e=UISchemaFunction?await UISchemaFunction(t,a):await fetchAPI(`/service/api/@${t.replace(/\./g,"_")}/uiSchema`,{method:"get"})))return;formatUISchemaCache(t,e)}catch(e){console.error("getUISchema",t,e),setUISchemaCache(t,null)}}return getUISchemaCache(t)}}function getUISchemaSync(t,e){if(t){if(!hasUISchemaCache(t)||e)try{var a,i=`/service/api/@${t.replace(/\./g,"_")}/uiSchema`;if(!(a=Steedos.authRequest(i,{type:"GET",async:!1})))return;formatUISchemaCache(t,a)}catch(e){console.error("getUISchema",t,e),setUISchemaCache(t,null)}return getUISchemaCache(t)}}async function getField(e,t){return(await getUISchema(e))?.fields[t]}async function getFormSchema(e,t){e=await getUISchema(e);return{uiSchema:e,amisSchema:await getObjectForm(e,t)}}async function getViewSchema(e,t,a){e=await getUISchema(e);return{uiSchema:e,amisSchema:await getObjectDetail(e,t,a)}}async function getListSchema(e,t,a,i={}){var r=await getUISchema(t),s=find(r.list_views,(e,t)=>t===(a=a||t)||e._id===a);if(!s)return{uiSchema:r};if(s.enable_amis_schema&&s.amis_schema){const f=isString(s.amis_schema)?JSON.parse(s.amis_schema):s.amis_schema;return{uiSchema:r,isCustomAmisSchema:!0,amisSchema:f}}var n=getListViewColumns(s,i.formFactor),o=getListViewSort(s),l=getListViewFilter(s),d=s&&s._filters;if("calendar"===s.type){const f={type:"steedos-object-calendar",objectApiName:t,filters:l,filtersFunction:d,sort:o,...s.options};return{uiSchema:r,isCalendar:!0,amisSchema:f}}var c=i.defaults||{};!c.headerSchema&&i.showHeader&&(c.headerSchema=await getObjectListHeader$1(r)),i.showHeader||(c.headerSchema=null);try{var p,u=location.pathname+"/crud/"+i.listViewId,m=localStorage.getItem(u);m&&(m=JSON.parse(m),p={},m.orderBy&&(p.orderBy=m.orderBy),m.orderDir&&(p.orderDir=m.orderDir),c.listSchema=defaultsDeep$1({},p,c.listSchema||{}))}catch(e){console.error("本地存储中crud参数解析异常:",e)}i.defaults=c;const f={type:"steedos-object-table",objectApiName:t,columns:n,extraColumns:s.extra_columns,filters:l,filtersFunction:d,sort:o,ctx:i,requestAdaptor:s.requestAdaptor,adaptor:s.adaptor};return{uiSchema:r,amisSchema:f}}async function getTableSchema(e,t,a,i={}){const r=await getUISchema(t);let s=i.sort;s||(o=i.sortField,l=i.sortOrder,o&&(s=o+" "+l||"asc"));let n=[];each(a,function(e){isString(e)&&r.fields[e]?n.push(r.fields[e]):isObject$1(e)&&r.fields[e.field]&&n.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}))});var o=i.extraColumns,l=(o&&each(o,function(e){isString(e)?n.push({extra:!0,name:e}):isObject$1(e)&&n.push({extra:!0,name:e.field})}),await getObjectCRUD(r,n,{tabId:t,appId:e,objectName:t,...i,filter:i.filters,sort:s,buttons:await getListViewItemButtons(r,i)}));return{uiSchema:r,amisSchema:l}}async function getCalendarSchema(e,t,a,i={}){var r=await getUISchema(t);return{uiSchema:r,amisSchema:await getObjectCalendar(r,a,{tabId:t,appId:e,objectName:t,...i})}}async function getRecordDetailHeaderSchema(e,t,a){e=await getUISchema(e);return{uiSchema:e,amisSchema:await getObjectRecordDetailHeader(e,t,a)}}async function getRecordDetailSchema(e,t){var a=await getUISchema(e),i={type:"tabs",className:"sm:mt-3 bg-white sm:shadow sm:rounded sm:border border-slate-300 p-4",tabs:[{title:"详细",className:"px-0 py-4",body:[{type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d4a495811d57",appId:t}],id:"u:5d4e7e3f6ecc"}],id:"u:a649e4094a12"};return(await getObjectRelatedList(e)).length&&i.tabs.push({title:"相关",className:"px-0 pt-4",body:[{type:"steedos-object-related-lists",label:"相关列表",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:3b85b7b7a7f6",appId:t}],id:"u:1a0326aeec2b"}),{uiSchema:a,amisSchema:{type:"service",body:[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:48d2c28eb755",onEvent:{recordLoaded:{actions:[{actionType:"reload",data:{name:`\${event.data.record.${a?.NAME_FIELD_KEY||"name"}}`,record:"${event.data.record}",recordLoaded:!0}},{actionType:"reload",componentId:`page_readonly_${e}_header`,data:{name:`\${event.data.record.${a?.NAME_FIELD_KEY||"name"}}`,record:"${event.data.record}",recordLoaded:!0}}]}}},i]}}}async function getObjectRelated({appName:e,masterObjectName:t,objectName:a,relatedFieldName:i,recordId:r,formFactor:s}){let n=null;var o=await getField(a,i),o=(n=o._reference_to||o.reference_to&&!isString(o.reference_to)?[[i+"/o","=",t],[i+"/ids","=",r]]:[""+i,"=",r],await getUISchema(t));return{masterObjectName:t,object_name:a,foreign_key:i,schema:await getListSchema(e,a,"all",{globalFilter:n,formFactor:s}),record:await getRecord(t,r,[o.NAME_FIELD_KEY]),masterObjectUISchema:o}}async function getSearchableFieldsFilterSchema(e,t,a){return getObjectFieldsFilterFormSchema(e,t,a)}function getScopeId(e,t){return`page_${e}_`+t}async function getFormPageInitSchema(e){var t=await getFormSchema(e,{recordId:"${recordId}"});return{type:"page",name:getScopeId(e,"form"),bodyClassName:"",regions:["body"],body:[t.amisSchema]}}async function getListPageInitSchema(e,t,a){return{type:"page",name:getScopeId(e,"list"),bodyClassName:"",regions:["body"],body:[{type:"steedos-object-listview",objectApiName:e,columnsTogglable:!1,showHeader:!0,className:"sm:border bg-white sm:shadow sm:rounded border-slate-300 border-solid"}]}}async function getRecordPageInitSchema(e){var t=await getObjectRelatedList(e),a=[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",onEvent:{recordLoaded:{actions:[{actionType:"setValue",args:{value:{recordLoaded:!0}}},{actionType:"reload",data:{name:`\${record.${(await getUISchema(e))?.NAME_FIELD_KEY||"name"}}`,record:"${record}",recordLoaded:!0}}]}}}],i={type:"tabs",tabs:[{title:"详情",body:[{type:"steedos-object-form",label:"对象表单",mode:"read",objectApiName:"${objectName}",recordId:"${recordId}",labelAlign:"left"}]}],className:"sm:mt-3 flex flex-col region-main bg-white sm:shadow sm:rounded sm:border border-slate-300",linksClassName:"pl-4 pt-2"};return t.length&&i.tabs.push({title:"相关",body:{type:"steedos-object-related-lists",label:"所有相关表",objectApiName:"${objectName}",recordId:"${recordId}"}}),a.push(i),{type:"page",id:`page_${e}_record_detail`,name:getScopeId(e,"record_detail"),bodyClassName:"",regions:["body"],body:a}}async function getListviewInitSchema(t,a,i){i=i||{};var r=await getUISchema(t),s=find(r.list_views,(e,t)=>t===a);let n={};if(s){var o=getListViewColumns(s,i.formFactor),s=getListViewSort(s),l=i.defaults||{};l.headerSchema||(r=await getObjectListHeader$1(r),l.headerSchema=r),i.defaults=l;let e=i.setDataToComponentId;e=e||"service_listview_"+t;r=await getTableSchema(null,t,o,{sort:s,...i,setDataToComponentId:e});delete(n=r.amisSchema).data.$master,delete n.data._id,delete n.data.recordPermissions,delete n.data.uiSchema}return n}async function getApps(){return await fetchAPI("/service/api/apps/menus")}async function getApp(e){return await fetchAPI(`/service/api/apps/${e}/menus`)}"undefined"!=typeof window&&(window.getUISchema=getUISchema,window.getUISchemaSync=getUISchemaSync);const getNotifications=async()=>{var e=getSteedosAuth(),e=`
1232
1223
  {
1233
1224
  notifications(filters: ["owner","=","${e.userId}"], sort: "created desc,name", top : 10){
1234
1225
  _id,name,body,related_to,related_name,url,owner,is_read,from,created
@@ -1396,5 +1387,5 @@ import*as _$1 from"lodash";import ___default,{isEmpty,isArray,each,find,endsWith
1396
1387
  }
1397
1388
  }
1398
1389
  }
1399
- `})});let r=null,s=null,l=null;var n,o,d,i=i.data.instance;if(i)return"inbox"!==t&&"draft"!==t||(r=getUserApprove({instance:i,userId:a})),n=getFlowVersion(i),o=getFormVersion(i),r&&(s=getTrace({instance:i,traceId:r.trace}),l=getStep({flowVersion:n,stepId:s.step})),a=getLastCCStep(i,a),d=getApproveValues({instance:i,trace:s,step:l,approve:r,box:t}),{box:t,_id:e,space:i.space,flow:i.flow,form:i.form,applicant:i.applicant,applicant_name:i.applicant_name,submitter:i.submitter,submit_date:i.submit_date?amisRequire("moment")(i.submit_date).format("YYYY-MM-DD"):"",state:i.state,approveValues:d,title:i.name||i.form.name,name:i.name||i.form.name,fields:___default.map(o.fields,e=>Object.assign({},e,{permission:"cc"!=r?.type&&(l?.permissions[e.code]||(isCurrentStepOpinionField(e,l)?"editable":""))})),flowVersion:n,formVersion:o,step:l,lastCCStep:a,trace:s,approve:r,record_ids:i.record_ids,related_instances:i.related_instances,forward_from_instance:i.forward_from_instance,cc_users:i.cc_users,traces:i.traces,historyApproves:___default.map(i.traces,e=>Object.assign({children:___default.map(e.approves,e=>{let t=e.finish_date,a=e.judge,i=e.user_name,r=e.description;switch("cc"===e.type&&(i+=" (传阅)",r=e.cc_description),t?t=amisRequire("moment")(t).format("YYYY-MM-DD HH:mm"):(t=e.is_read?"已读":"未处理",a=null),a){case"submitted":a="";break;case"returned":a="已退回";break;case"terminated":a="被取回";break;case"pending":a="审核中";break;case"approved":a="已核准";break;case"rejected":a="已驳回";break;case"finished":a="已完成";break;case"reassigned":a="转签核";break;case"inhand":a="处理中";break;case"relocated":a="重定位";break;case"readed":a="已阅"}return{name:"",user_name:i,finish_date:t,judge:a,opinion:r}})},{name:e.name,judge:""}))}};export{index as Field,Router,absoluteUrl,amisRender,amisRootClick,cloneObject,conditionsToFilters,createObject,defaultsDeep,deleteVariable,execute,executeButton,extendObject,fetchAPI,filtersToConditions,getApp,getApps,getAuthToken,getAuthorization,getButton,getButtonVisible,getButtonVisibleOn$1 as getButtonVisibleOn,getButtons,getCalendarSchema,getDefaultRenderData,getEnv,getEnvs,getEvn,getField,getFileSrc,getFlowFormSchema,getFormPageInitSchema,getFormSchema,getImageSrc,getInstanceInfo,getListPageInitSchema,getListSchema,getListViewButtons,getListViewColumns,getListViewFilter,getListViewItemButtons,getListViewSort,getListviewInitSchema,getNotifications,getObjectDetailButtons,getObjectDetailMoreButtons,getObjectFieldsFilterBarSchema,getObjectFieldsFilterButtonSchema,getObjectFieldsFilterFormSchema,getObjectListHeader$1 as getObjectListHeader,getObjectListHeaderFieldsFilterBar,getObjectListHeaderFirstLine,getObjectListHeaderSecordLine,getObjectRecordDetailHeader,getObjectRecordDetailRelatedListHeader,getObjectRelated,getObjectRelatedList,getObjectRelatedListButtons,getObjectRelatedListHeader,getPage,getRecord,getRecordDetailHeaderSchema,getRecordDetailRelatedListSchema,getRecordDetailSchema,getRecordPageInitSchema,getRecordPermissions,getRelatedFieldValue,getRelatedListSchema,getRelatedsCount,getRootUrl,getSearchableFieldsFilterSchema,getSelectUserSchema,getSpaceUsersPickerAmisSchema,getSpaceUsersPickerSchema,getSteedosAuth,getTableSchema,getTenantId,getUISchema,getUISchemaSync,getUserId,getViewSchema,isExpression,isObject,lookupToAmis,lookupToAmisPicker,lookupToAmisSelect,lookupToAmisSelectUser,markReadAll,parseSingleExpression,registerRemoteAssets,registerRenders,setEnv,setEnvs,setRootUrl,setSteedosAuth,setUISchemaFunction,setVariable,standardButtonsTodo};
1390
+ `})});let r=null,s=null,n=null;var o,l,d,i=i.data.instance;if(i)return"inbox"!==t&&"draft"!==t||(r=getUserApprove({instance:i,userId:a})),o=getFlowVersion(i),l=getFormVersion(i),r&&(s=getTrace({instance:i,traceId:r.trace}),n=getStep({flowVersion:o,stepId:s.step})),a=getLastCCStep(i,a),d=getApproveValues({instance:i,trace:s,step:n,approve:r,box:t}),{box:t,_id:e,space:i.space,flow:i.flow,form:i.form,applicant:i.applicant,applicant_name:i.applicant_name,submitter:i.submitter,submit_date:i.submit_date?amisRequire("moment")(i.submit_date).format("YYYY-MM-DD"):"",state:i.state,approveValues:d,title:i.name||i.form.name,name:i.name||i.form.name,fields:___default.map(l.fields,e=>Object.assign({},e,{permission:"cc"!=r?.type&&(n?.permissions[e.code]||(isCurrentStepOpinionField(e,n)?"editable":""))})),flowVersion:o,formVersion:l,step:n,lastCCStep:a,trace:s,approve:r,record_ids:i.record_ids,related_instances:i.related_instances,forward_from_instance:i.forward_from_instance,cc_users:i.cc_users,traces:i.traces,historyApproves:___default.map(i.traces,e=>Object.assign({children:___default.map(e.approves,e=>{let t=e.finish_date,a=e.judge,i=e.user_name,r=e.description;switch("cc"===e.type&&(i+=" (传阅)",r=e.cc_description),t?t=amisRequire("moment")(t).format("YYYY-MM-DD HH:mm"):(t=e.is_read?"已读":"未处理",a=null),a){case"submitted":a="";break;case"returned":a="已退回";break;case"terminated":a="被取回";break;case"pending":a="审核中";break;case"approved":a="已核准";break;case"rejected":a="已驳回";break;case"finished":a="已完成";break;case"reassigned":a="转签核";break;case"inhand":a="处理中";break;case"relocated":a="重定位";break;case"readed":a="已阅"}return{name:"",user_name:i,finish_date:t,judge:a,opinion:r}})},{name:e.name,judge:""}))}};export{index as Field,Router,absoluteUrl,amisRender,amisRootClick,cloneObject,conditionsToFilters,createObject,defaultsDeep,deleteVariable,execute,executeButton,extendObject,fetchAPI,filtersToConditions,getApp,getApps,getAuthToken,getAuthorization,getButton,getButtonVisible,getButtonVisibleOn$1 as getButtonVisibleOn,getButtons,getCalendarSchema,getDefaultRenderData,getEnv,getEnvs,getEvn,getField,getFileSrc,getFlowFormSchema,getFormPageInitSchema,getFormSchema,getImageSrc,getInstanceInfo,getListPageInitSchema,getListSchema,getListViewButtons,getListViewColumns,getListViewFilter,getListViewItemButtons,getListViewSort,getListviewInitSchema,getNotifications,getObjectDetailButtons,getObjectDetailMoreButtons,getObjectFieldsFilterBarSchema,getObjectFieldsFilterButtonSchema,getObjectFieldsFilterFormSchema,getObjectListHeader$1 as getObjectListHeader,getObjectListHeaderFieldsFilterBar,getObjectListHeaderFirstLine,getObjectListHeaderSecordLine,getObjectRecordDetailHeader,getObjectRecordDetailRelatedListHeader,getObjectRelated,getObjectRelatedList,getObjectRelatedListButtons,getObjectRelatedListHeader,getPage,getRecord,getRecordDetailHeaderSchema,getRecordDetailRelatedListSchema,getRecordDetailSchema,getRecordPageInitSchema,getRecordPermissions,getRelatedFieldValue,getRelatedListSchema,getRelatedsCount,getRootUrl,getSearchableFieldsFilterSchema,getSelectUserSchema,getSpaceUsersPickerAmisSchema,getSpaceUsersPickerSchema,getSteedosAuth,getTableSchema,getTenantId,getUISchema,getUISchemaSync,getUserId,getViewSchema,isExpression,isObject,lookupToAmis,lookupToAmisPicker,lookupToAmisSelect,lookupToAmisSelectUser,markReadAll,parseSingleExpression,registerRemoteAssets,registerRenders,setEnv,setEnvs,setRootUrl,setSteedosAuth,setUISchemaFunction,setVariable,standardButtonsTodo};
1400
1391
  //# sourceMappingURL=index.esm.js.map