@steedos-widgets/amis-lib 1.0.19 → 1.0.21

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.cjs.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _$1=require("lodash"),isPlainObject=require("lodash/isPlainObject");function _interopDefaultLegacy(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function _interopNamespace(a){var i;return a&&a.__esModule?a:(i=Object.create(null),a&&Object.keys(a).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(a,e),Object.defineProperty(i,e,t.get?t:{enumerable:!0,get:function(){return a[e]}}))}),i.default=a,Object.freeze(i))}var ___namespace=_interopNamespace(_$1),___default=_interopDefaultLegacy(_$1),isPlainObject__default=_interopDefaultLegacy(isPlainObject);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?!1===t.blank?a.push(e):window.open(e):t&&e&&t.target?window.open(e,t.target):/^https?:\/\//.test(e)?window.location.replace(e):a.push(e)}}),registerRenders=e=>{if(!_$1.isEmpty(e)&&_$1.isArray(e)){var t=amisRequire("amis");const a={renderer:t.Renderer,formitem:t.FormItem,options:t.OptionsControl};let l=amisRequire("react");_$1.each(e,t=>{if(!_$1.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){_$1.endsWith(e,"/")&&(e=e.substring(0,e.length-1)),localStorage.setItem("steedos:rootUrl",e)}const getSteedosAuth=()=>_$1.cloneDeep(STEEDOS_AUTH);async function getFieldsTemplate(e,t){0!=t&&(t=!0);let a=["_id"],i=[],r=[];for(const s of r=___namespace.isArray(e)?e:___namespace.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)),_$1.includes(["time","date","datetime","boolean","number","currency"],s.type)&&a.push(""+s.name),_$1.includes(["time","filesize","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary"],s.type)&&i.push(""+s.name));return i=___namespace.uniq(i),a=___namespace.uniq(a),0<i.length?`${a.join(",")},_display:_ui{${i.join(",")}}`:""+a.join(" ")}function getRecordPermissionsTemplate(){return`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _$1=require("lodash"),isPlainObject=require("lodash/isPlainObject"),amisLib=require("@steedos-widgets/amis-lib");function _interopDefaultLegacy(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function _interopNamespace(a){var i;return a&&a.__esModule?a:(i=Object.create(null),a&&Object.keys(a).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(a,e),Object.defineProperty(i,e,t.get?t:{enumerable:!0,get:function(){return a[e]}}))}),i.default=a,Object.freeze(i))}var ___namespace=_interopNamespace(_$1),___default=_interopDefaultLegacy(_$1),isPlainObject__default=_interopDefaultLegacy(isPlainObject);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,o=t.pathname.split("/");for(o.pop();s=/^\.\.?\//.exec(r);)"../"===s[0]&&o.pop(),r=r.substring(s[0].length);r=o.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(!_$1.isEmpty(e)&&_$1.isArray(e)){var t=amisRequire("amis");const a={renderer:t.Renderer,formitem:t.FormItem,options:t.OptionsControl};let o=amisRequire("react");_$1.each(e,t=>{if(!_$1.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]=o.useState(null);return o.useEffect(()=>{var e=s.class(t);e&&e.then&&"function"==typeof e.then?e.then(e=>{r(e)}):r(e)},[]),o.createElement(o.Fragment,null,o.createElement(o.Fragment,null,i&&a?a("body",i):""),o.createElement(o.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:o}=r;return registerRenders(o),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){_$1.endsWith(e,"/")&&(e=e.substring(0,e.length-1)),localStorage.setItem("steedos:rootUrl",e)}const getSteedosAuth=()=>getBuilderContext()||_$1.cloneDeep(STEEDOS_AUTH);async function getFieldsTemplate(e,t){0!=t&&(t=!0);let a=["_id"],i=[],r=[];for(const s of r=___namespace.isArray(e)?e:___namespace.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)),_$1.includes(["time","date","datetime","boolean","number","currency"],s.type)&&a.push(""+s.name),_$1.includes(["time","filesize","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary","object","grid"],s.type)&&i.push(""+s.name));return i=___namespace.uniq(i),a=___namespace.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,
@@ -23,7 +23,7 @@
23
23
  viewAssignCompanysRecords,
24
24
  viewCompanyRecords,
25
25
  }
26
- `}async function getFindOneQuery$1(e,t,a,i){let r="",s=(t&&(r=`(filters:["${e.idFieldName}", "=", "${t}"])`),"data");return i&&(i.alias&&(s=i.alias),i.filters&&(r=`(filters:${i.filters})`),i.queryOptions&&(r=`(${i.queryOptions})`)),{query:`{${s}:${e.name}${r}{${await getFieldsTemplate(a)}, ${getRecordPermissionsTemplate()}}}`}}function getSaveQuery(e,t,a,i){return{objectName:e.name,$:"$$",recordId:t,modalName:"${modalName}"}}function getScriptForReadonlyFields(e){var t=[];return e.forEach(e=>{e.readonly&&t.push(`delete formData.${e.name};`)}),t.join("\r\n")}function getScriptForRemoveUrlPrefixForImgFields(e){let t=[],a={};return e.forEach(e=>{_$1.includes(["image","avatar"],e.type)&&(t.push(e.name),a[e.name]={name:e.name,multiple:e.multiple})}),t.length?`
26
+ `}async function getFindOneQuery$1(e,t,a,i){let r="",s=(t&&(r=`(filters:["${e.idFieldName}", "=", "${t}"])`),"data");return i&&(i.alias&&(s=i.alias),i.filters&&(r=`(filters:${i.filters})`),i.queryOptions&&(r=`(${i.queryOptions})`)),{query:`{${s}:${e.name}${r}{${await getFieldsTemplate(a)}, ${getRecordPermissionsTemplate()}}}`}}function getSaveQuery(e,t,a,i){return{objectName:e.name,$:"$$",recordId:t,modalName:"${modalName}"}}function getScriptForReadonlyFields(e){var t=[];return e.forEach(e=>{e.readonly&&e.name.indexOf(".")<0&&t.push(`delete formData.${e.name};`)}),t.join("\r\n")}function getScriptForRemoveUrlPrefixForImgFields(e){let t=[],a={};return e.forEach(e=>{_$1.includes(["image","avatar"],e.type)&&(t.push(e.name),a[e.name]={name:e.name,multiple:e.multiple})}),t.length?`
27
27
  let imgFieldsKeys = ${JSON.stringify(t)};
28
28
  let imgFields = ${JSON.stringify(a)};
29
29
  imgFieldsKeys.forEach((item)=>{
@@ -88,21 +88,20 @@
88
88
  query = \`mutation{record: \${objectName}__update(id: "\${formData._id}", doc: {__saveData}){_id}}\`;
89
89
  };
90
90
  delete formData._id;
91
- delete formData.__selectUserLoaded__;//选人控件加载标志不应该保存到数据库中
92
91
  let __saveData = JSON.stringify(JSON.stringify(formData));
93
92
  `}function getSaveRequestAdaptor(e){return`
94
93
  ${getSaveDataTpl(e)}
95
94
  api.data = {query: query.replace('{__saveData}', __saveData)};
96
95
  return api;
97
- `}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})`));t="",e.enable_tree&&___namespace.includes(___namespace.keys(e.fields),"parent")&&___namespace.includes(___namespace.keys(e.fields),"children")&&(t=",parent,children"),r="";return"cms_files"===e.name&&(r=",versions"),{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:`{${l}:${e.name}${s}{${await getFieldsTemplate(a,i.expand)}${t}${r}},count:${e.name}__count(filters:{__filters})}`}}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=`
96
+ `}async function getFindQuery(e,t,a,i){var r=i.limit||10;let s=`(top: ${r})`,o=(t&&(s=`(filters:["_id", "=", "${t}"], top: ${r})`),"data");i&&(i.alias&&(o=i.alias),i.filters&&(s=`(filters:${i.filters})`),i.queryOptions&&(s=`(${i.queryOptions})`));var t="",r=(e.enable_tree&&___namespace.includes(___namespace.keys(e.fields),"parent")&&___namespace.includes(___namespace.keys(e.fields),"children")&&(t=",parent,children"),""),n=("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:`{${o}:${e.name}${s}{${await getFieldsTemplate(a,i.expand)}${t}${r}}${n}${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=`
98
97
  recordPermissions: _permissions{
99
98
  ${a.fields.join(",")}
100
99
  }
101
- `),{query:`{${r}:${e.name}${i}{${e.idFieldName},${s}}}`}}function getApi$2(e){if(!e)return"${context.rootUrl}/graphql"}const Router={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}=e;return"instances"===t?"/workflow/space/${context.tenantId}/${listName}/"+a:`/app/${e}/${t}/view/`+a},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:a.appId,objectName:"<%=item.objectName%>",recordId:"<%=item.value%>"}),e=`<a href="${r}"><%=item.label%></a>`),i=`
100
+ `),{query:`{${r}:${e.name}${i}{${e.idFieldName},${s}}}`}}function getApi$2(e){if(!e)return"${context.rootUrl}/graphql"}const Router={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;return"JavaScript"===i?`/app/${e}/${t}/view/${a}?main_object=<%=item.objectName%>&main_listview_id=<%=item.listName%>`:`/app/${e}/${t}/view/${a}?main_object=\${objectName}&main_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:"<%=item.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"}),e=`<a href="${r}"><%=item.label%></a>`),i=`
102
101
  <% if (data._display.${t.name} && data._display.${t.name}.length) { %><% data._display.${t.name}.forEach(function(item) { %> ${e} <% }); %><% } %>
103
- `}else{let e=`\${_display.${t.name}.label}`;s||(r=Router.getObjectDetailPath({formFactor:a.formFactor,appId:a.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:a.appId,objectName:"<%=item.objectName%>",recordId:"<%=item.value%>"}),e=`<a href="${r}"><%=item.label%></a>`),i=`
102
+ `}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:"<%=appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"}),e=`<a href="${r}"><%=item.label%></a>`),i=`
104
103
  <% if (data._display.${t.name} && data._display.${t.name}.length) { %><% data._display.${t.name}.forEach(function(item) { %> ${e} <% }); %><% } %>
105
- `}return i}async function getLookupTpl(e,t){var a,i;return e.reference_to?(a=await getRefObjectNameFieldName(e),e.multiple?(i=Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:"<%=item._id%>"}),`
104
+ `}return i}async function getLookupTpl(e,t){var a,i;return e.reference_to?(a=await getRefObjectNameFieldName(e),e.multiple?(i=Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:"<%=item._id%>",_templateType:"JavaScript"}),`
106
105
  <% if (data.${e.name} && data.${e.name}.length) { %><% data.${e.name}.forEach(function(item) { %> <a href="${i}"><%=item.${a}%></a> <% }); %><% } %>
107
106
  `):`<a href="${Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:`\${${e.name}._id}`})}">\${${e.name}.${a}}</a>`):getSelectTpl(e)}function getSwitchTpl(e){return`<% if (data.${e.name}) { %>
108
107
  <span class="slds-icon_container slds-icon-utility-check slds-current-color" title="<%=data._display.${e.name}%>">
@@ -110,9 +109,10 @@
110
109
  </span>
111
110
  <% } %>`}function getPasswordTpl(e){return`<% if (data.${e.name}) { %>
112
111
  <span>······</span>
113
- <% } %>`}async function getFieldTpl(e,t){if((e.is_name||e.name===t.labelFieldName)&&!t.onlyDisplayLabel)return getNameTpl(e,t);switch(e.type){case"password":return getPasswordTpl(e);case"boolean":case"toggle":return getSwitchTpl(e);case"select":return getSelectTpl(e);case"time":return getTimeTpl(e);case"date":return getDateTpl(e);case"datetime":return getDateTimeTpl(e);case"lookup":case"master_detail":return getRelatedFieldTpl(e,t);case"number":case"currency":return getNumberTpl(e);case"formula":case"summary":return getUiFieldTpl(e);case"filesize":return getUiFileSizeTpl(e)}}const API_CACHE=100;function getReadonlyFormAdaptor(e){let a="";var t=___namespace.filter(e,function(e){return e.name.indexOf(".")<0&&("select"==e.type&&e.options||("lookup"==e.type||"master_detail"==e.type)&&!e.reference_to)});return ___namespace.each(t,function(e){var t;___namespace.includes(OMIT_FIELDS,e.name)||(e.name,e.options?(t=JSON.stringify({options:e.options}),a+=`var ${e.name}Options= (${t}).options;`):e.optionsFunction?a+=`var ${e.name}Options = eval(${e.optionsFunction.toString()})(api.data);`:e._optionsFunction&&(a+=`var ${e.name}Options = eval(${e._optionsFunction})(api.data);`),e.multiple?a+=`data.${e.name}__label = _.map(_.filter(${e.name}Options, function(option){return _.includes(data.${e.name}, option.value)}), 'label');`:a=(a+=`var ${e.name}Selected = _.find(${e.name}Options, function(option){return data.${e.name} == option.value});`)+`data.${e.name}__label = ${e.name}Selected ? ${e.name}Selected.label:null;`)}),`
112
+ <% } %>`}async function getFieldTpl(e,t){if((e.is_name||e.name===t.labelFieldName)&&!t.onlyDisplayLabel)return getNameTpl(e,t);switch(e.type){case"password":return getPasswordTpl(e);case"boolean":case"toggle":return getSwitchTpl(e);case"select":return getSelectTpl(e);case"time":return getTimeTpl(e);case"date":return getDateTpl(e);case"datetime":return getDateTimeTpl(e);case"lookup":case"master_detail":return getRelatedFieldTpl(e,t);case"number":case"currency":return getNumberTpl(e);case"formula":case"summary":return getUiFieldTpl(e);case"filesize":return getUiFileSizeTpl(e)}}const API_CACHE=100;function getReadonlyFormAdaptor(e){let a="";var t=___namespace.filter(e,function(e){return e.name.indexOf(".")<0&&("select"==e.type&&e.options||("lookup"==e.type||"master_detail"==e.type)&&!e.reference_to)}),i=___namespace.map(___namespace.filter(e,function(e){return e.name.indexOf(".")<0&&("object"===e.type||"grid"===e.type)}),"name");return ___namespace.each(t,function(e){var t;___namespace.includes(OMIT_FIELDS,e.name)||(e.name,e.options?(t=JSON.stringify({options:e.options}),a+=`var ${e.name}Options= (${t}).options;`):e.optionsFunction?a+=`var ${e.name}Options = eval(${e.optionsFunction.toString()})(api.data);`:e._optionsFunction&&(a+=`var ${e.name}Options = eval(${e._optionsFunction})(api.data);`),e.multiple?a+=`data.${e.name}__label = _.map(_.filter(${e.name}Options, function(option){return _.includes(data.${e.name}, option.value)}), 'label');`:a=(a+=`var ${e.name}Selected = _.find(${e.name}Options, function(option){return data.${e.name} == option.value});`)+`data.${e.name}__label = ${e.name}Selected ? ${e.name}Selected.label:null;`)}),`
114
113
  if(payload.data.data){
115
114
  var data = payload.data.data[0];
115
+ var gridAndObjectFieldsName = ${JSON.stringify(i)};
116
116
  try{
117
117
  ${a}
118
118
  ${getScriptForAddUrlPrefixForImgFields(e)}
@@ -120,6 +120,14 @@
120
120
  }catch(e){
121
121
  console.error(e)
122
122
  }
123
+
124
+ try{
125
+ _.each(gridAndObjectFieldsName, function(name){
126
+ data[name] = data._display[name];
127
+ })
128
+ }catch(e){
129
+ console.error(e)
130
+ }
123
131
  payload.data = data;
124
132
  window.postMessage(Object.assign({type: "record.loaded"}, {record: data}), "*")
125
133
  }
@@ -175,8 +183,19 @@
175
183
  }
176
184
  }
177
185
  })
178
- `:""}async function getEditFormInitApi(e,t,a){return{method:"post",url:getApi$2(),sendOn:"!!this.recordId",cache:API_CACHE,adaptor:`
179
- if(payload.data.data){
186
+ `:""}async function getEditFormInitApi(e,t,a){e=await getFindOneQuery$1(e,t,a);return e.$recordId="${recordId}",e.$objectName="${objectName}",{method:"post",url:getApi$2(),cache:API_CACHE,requestAdaptor:`
187
+ var recordId = api.data.$recordId;
188
+ var objectName = api.data.$objectName;
189
+ if(!recordId){
190
+ // 新建则不请求任何数据
191
+ api.data.query = "{data:" + objectName + "(filters: " + JSON.stringify(["_id", "=", null]) + ", top: 1){_id}}";
192
+ }
193
+ // 这里不可以删除recordId,否则下面adaptor中api.body.$recordId拿不到值
194
+ // delete api.data.$recordId;
195
+ delete api.data.$objectName;
196
+ `,adaptor:`
197
+ const recordId = api.body.$recordId;
198
+ if(recordId && payload.data.data){
180
199
  var data = payload.data.data[0];
181
200
  if(data){
182
201
  ${getScriptForAddUrlPrefixForImgFields(a)}
@@ -189,10 +208,14 @@
189
208
  }
190
209
  };
191
210
  payload.data = data;
192
- delete payload.extensions;
193
211
  }
212
+ else{
213
+ payload.data = {};
214
+ }
215
+ payload.data.editFormInited = true;
216
+ delete payload.extensions;
194
217
  return payload;
195
- `,data:await getFindOneQuery$1(e,t,a),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:`
218
+ `,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:`
196
219
  if(payload.errors){
197
220
  payload.status = 2;
198
221
  payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;
@@ -206,8 +229,8 @@
206
229
  })
207
230
  api.data = {query: \`mutation{\${deleteArray.join(',')}}\`};
208
231
  return api;
209
- `,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const getFieldSchemaArray=e=>{let i=[];return i.length=0,___namespace.forEach(e.fields,(e,t)=>{___namespace.has(e,"name")||(e.name=t)}),___namespace.forEach(___namespace.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=___namespace.filter(e,{group:a});if(e.length!=___namespace.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=___namespace.map(___namespace.compact(___namespace.map(s,"visibleOn")),e=>`(${e.substring(2,e.length-1)})`),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 ___namespace.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 _$1.toArray(e).reverse().forEach(e=>{_$1.mergeWith(t,e,(e,t)=>_$1.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?_$1.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=`
210
- 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}",appId:"${appId}",objectName:"${objectName}",context:"${context}",global:"${global}",listViewId:"${listViewId}"},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:`
232
+ `,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const getFieldSchemaArray=e=>{let i=[];return i.length=0,___namespace.forEach(e.fields,(e,t)=>{___namespace.has(e,"name")||(e.name=t)}),___namespace.forEach(___namespace.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=___namespace.filter(e,{group:a});if(e.length!=___namespace.filter(e,["hidden",!0]).length){var r,s=[];for(const o of e){let e=o;"grid"===o.type?e=await getGridFieldSubFields(o,t):"object"===o.type&&(e=await getObjectFieldSubFields(o,t)),e.name.indexOf(".")<0&&(i.__permissionFields=t,(r=await convertSFieldToAmisField(e,e.readonly,i))&&s.push(r))}e=___namespace.map(___namespace.compact(___namespace.map(s,"visibleOn")),e=>`(${e.substring(2,e.length-1)})`),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 o in ___namespace.groupBy(i,"group")){var s=await getSection(e,i,o,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 _$1.toArray(e).reverse().forEach(e=>{_$1.mergeWith(t,e,(e,t)=>_$1.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?_$1.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,o;if(void 0===e&&(e={}),o=getParentPath(a),o=getValueByPath(e,o)||{},"string"!=typeof t)return t;s=t.substring(2,t.length-2),r=`
233
+ 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(o));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}",appId:"${appId}",objectName:"${objectName}",context:"${context}",global:"${global}",listViewId:"${listViewId}"},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:`
211
234
  if(payload.errors){
212
235
  payload.status = 2;
213
236
  payload.msg = payload.errors[0].message;
@@ -215,13 +238,13 @@
215
238
  return payload;
216
239
  `},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);console.log("listViewRef",t),_.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.default.isBoolean(t)?t.toString():t)return t.trim().startsWith("function")?t+`.apply({
217
240
  object: uiSchema
218
- }, [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.default.startsWith(___default.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.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.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.default.sortBy(___default.default.values(t.actions),"sort");return ___default.default.has(t,"allow_customActions")&&(e=___default.default.filter(e,e=>___default.default.include(t.allow_customActions,e.name))),___default.default.has(t,"exclude_actions")&&(e=___default.default.filter(e,e=>!___default.default.include(t.exclude_actions,e.name))),___default.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.default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),___default.default.filter(e,e=>___default.default.indexOf(i,e.name)<0&&"standard_query"!=e.name)},getListViewButtons=(e,t)=>{e=getButtons(e,t);return ___default.default.filter(e,e=>"list"==e.on)},getObjectDetailButtons=(e,t)=>{e=getButtons(e,t),t=___default.default.filter(e,e=>"record"==e.on||"record_only"==e.on);return ___default.default.sortBy(t,"sort")},getObjectDetailMoreButtons=(e,t)=>{e=getButtons(e,t),t=___default.default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return ___default.default.sortBy(t,"sort")},getListViewItemButtons=async(e,t)=>{e=getButtons(e,t);return ___default.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.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.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.default.isString(e.todo)&&___default.default.startsWith(___default.default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),___default.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=[];_$1.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=_$1.map(l,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:`<img class="slds-icon slds-icon_container slds-icon-standard-${i&&i.replace(o,"-")} slds-page-header__icon" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${i}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center",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=_$1.keys(t.fields),i=_$1.sortBy(_$1.compact(_$1.map(i,e=>t.fields[e])),"sort_no");return await getObjectFieldsFilterBarSchema(t,i,a)}async function getObjectListHeader(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,{}),o=getObjectDetailMoreButtons(e,{recordId:t,objectName:i}),l=_$1.map(l,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e),className:"button_"+e.name})),o=_$1.map(o,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e)})),o=(l.push({type:"steedos-dropdown-button",label:"",buttons:o,className:"slds-icon"}),new RegExp("_","g")),o=s&&s.replace(o,"-"),n=[],a=(a&&n.push({body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class='slds-icon slds-icon_container slds-icon-standard-${o}' src='\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${s}.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"}),n.push({body:{type:"flex",items:l},md:"auto",hiddenOn:"${recordLoaded != true}"}),[{type:"service",body:[{type:"grid",columns:n,className:"flex justify-between"}],messages:{}}]);return{type:"service",bodyClassName:"",name:"page",data:{"&":"$$",objectName:i,_id:t,recordPermissions:e.permissions,uiSchema:e},body:a,className:""}}async function getObjectRecordDetailRelatedListHeader(e,t){var a=e["icon"],e=await getObjectRelatedListButtons(e,{}),e=_$1.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:`<img class="slds-icon_small slds-icon_container slds-icon-standard-${a&&a.replace(i,"-")}" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${a}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:`<a 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:"border-b border-gray-300 p-3"}}async function getObjectRelatedListHeader(e,t,a){}function getObjectHeaderToolbar(e,t){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:`
241
+ }, [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.default.startsWith(___default.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.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.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.default.sortBy(___default.default.values(t.actions),"sort");return ___default.default.has(t,"allow_customActions")&&(e=___default.default.filter(e,e=>___default.default.include(t.allow_customActions,e.name))),___default.default.has(t,"exclude_actions")&&(e=___default.default.filter(e,e=>!___default.default.include(t.exclude_actions,e.name))),___default.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.default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),___default.default.filter(e,e=>___default.default.indexOf(i,e.name)<0&&"standard_query"!=e.name)},getListViewButtons=(e,t)=>{e=getButtons(e,t);return ___default.default.filter(e,e=>"list"==e.on)},getObjectDetailButtons=(e,t)=>{e=getButtons(e,t),t=___default.default.filter(e,e=>"record"==e.on||"record_only"==e.on);return ___default.default.sortBy(t,"sort")},getObjectDetailMoreButtons=(e,t)=>{e=getButtons(e,t),t=___default.default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return ___default.default.sortBy(t,"sort")},getListViewItemButtons=async(e,t)=>{e=getButtons(e,t);return ___default.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.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.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.default.isString(e.todo)&&___default.default.startsWith(___default.default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),___default.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=[];_$1.each(a.list_views,(e,t)=>{s.push({type:"button",label:e.label,actionType:"link",link:`/app/\${appId}/${a.name}/grid/`+t})});var o=getListViewButtons(a,{}),o=_$1.map(o,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:`<img class="slds-icon slds-icon_container slds-icon-standard-${i&&i.replace(n,"-")} slds-page-header__icon" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${i}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center",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:o},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=_$1.keys(t.fields),i=_$1.sortBy(_$1.compact(_$1.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,o=getObjectDetailButtons(e,{}),n=getObjectDetailMoreButtons(e,{recordId:t,objectName:i}),o=_$1.map(o,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e),className:"button_"+e.name})),n=_$1.map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn$1(e)})),n=(o.push({type:"steedos-dropdown-button",label:"",buttons:n,className:"slds-icon"}),new RegExp("_","g")),n=s&&s.replace(n,"-"),l=[],n=(a&&l.push({body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class='slds-icon slds-icon_container slds-icon-standard-${n}' src='\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${s}.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:o},md:"auto"}),[{type:"service",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&&n.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:n,className:""}}async function getObjectRecordDetailRelatedListHeader(e,t){var a=e["icon"],e=await getObjectRelatedListButtons(e,{}),e=_$1.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:`<img class="slds-icon_small slds-icon_container slds-icon-standard-${a&&a.replace(i,"-")}" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${a}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:`<a 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:`
219
242
  const scope = event.context.scoped;
220
243
  var listView = scope.parent.getComponents().find(function(n){
221
244
  return n.props.type === "crud";
222
245
  });
223
246
  listView.handleChangePage(1);
224
- `}]}}}]:["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:`
247
+ `}]}}},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:`
225
248
  const scope = event.context.scoped;
226
249
  const filterForm = scope.getComponents().find(function(n){
227
250
  return n.props.type === "form";
@@ -230,7 +253,7 @@
230
253
  return n.props.type === "service";
231
254
  });
232
255
  filterService.setData({showFieldsFilter: !!!filterService.props.data.showFieldsFilter});
233
- `}]}}}]}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)}]}function getToolbar(){return[]}async function getObjectList(e,t,a){var i=a["top"],r=e.paging&&!1===e.paging.enabled,s=getBulkActions(e),l={toolbar:getToolbar(),bodyClassName:"",headerToolbar:getObjectHeaderToolbar(e,a.formFactor),headerToolbarClassName:"px-4 py-2 border-gray-300 bg-gray-100 border-solid border-b",footerToolbar:getObjectFooterToolbar(e,a.formFactor),className:""+(a.className||"")};"SMALL"!==a.formFactor&&Object.assign(l,{filter:!!a.filterVisible&&await getObjectFilter(e,t,a),bulkActions:0!=a.bulkActions&&s}),r?(a.top=1e3,l.footerToolbar=[]):i&&(l.footerToolbar=[]);let o=null;s="listview_"+e.name,a.formFactor,r=await getTableSchema$1(t,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},a)),delete r.mode,o=Object.assign({},r,{type:"crud",primaryField:"_id",affixHeader:!1,id:s,name:s,keepItemSelectionOnPageChange:!0,api:await getTableApi(e,t,a),hiddenOn:a.tableHiddenOn,autoFillHeight:!1},l),i=a.defaults;if(i){r=i.listSchema||{},t=(o=defaultsDeep({},r,o),i.headerSchema),l=i.footerSchema;if(t||l){let e=[o];t&&(___default.default.isArray(t)?e=___default.default.union(t,e):e.unshift(t)),l&&(___default.default.isArray(l)?e=___default.default.union(e,l):e.push(l)),o=e}}return{type:"service",className:"",id:"service_"+s,name:"page",data:{$master:"$$",objectName:e.name,_id:null,recordPermissions:e.permissions,uiSchema:e,loaded:!1},body:o}}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.default.values(e.fields),s=s&&s.formSchema||{},i={type:"service",className:"p-0",name:"page_edit_"+a,api:await getEditFormInitApi(e,a,l),initApi:null,initFetch:null,body:[defaultsDeep({},s,{type:"form",mode:i,labelAlign:r,persistData:!1,promptPageLeave:!0,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",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:`
256
+ `}]}}},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 getObjectList(e,t,a){var{top:i,showDisplayAs:r=!1}=a,s=e.paging&&!1===e.paging.enabled,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),className:""+(a.crudClassName||"")};"SMALL"!==a.formFactor&&Object.assign(r,{filter:!!a.filterVisible&&await getObjectFilter(e,t,a),bulkActions:0!=a.bulkActions&&o}),s?(a.top=1e3,r.footerToolbar=[]):i&&(r.footerToolbar=[]);let n=null;o="listview_"+e.name,a.formFactor,s=await getTableSchema$1(t,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},a)),delete s.mode,n=Object.assign({},s,{type:"crud",primaryField:"_id",affixHeader:!1,id:o,name:o,keepItemSelectionOnPageChange:!0,api:await getTableApi(e,t,a),hiddenOn:a.tableHiddenOn,autoFillHeight:!1},r),i=a.defaults;if(i){s=i.listSchema||{},t=(n=defaultsDeep({},s,n),i.headerSchema),r=i.footerSchema;if(t||r){let e=[n];t&&(___default.default.isArray(t)?e=___default.default.union(t,e):e.unshift(t)),r&&(___default.default.isArray(r)?e=___default.default.union(e,r):e.push(r)),n=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:n}}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,o=___default.default.values(e.fields),s=s&&s.formSchema||{},i={type:"service",className:"p-0",name:"page_edit_"+a,api:await getEditFormInitApi(e,a,o),initApi:null,initFetch:null,body:[defaultsDeep({},s,{type:"form",mode:i,labelAlign:r,persistData:!1,promptPageLeave:!0,name:"form_edit_"+a,debug:!1,title:"",submitText:"",api:await getSaveApi(e,a,o),initFetch:"new"!=a,body:await getFormBody(o,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:`
234
257
  const { recordId, listViewId } = context.props.data;
235
258
  const data = event.data;
236
259
  const appId = data.appId;
@@ -260,7 +283,7 @@
260
283
  "actionType": "link"
261
284
  });
262
285
  }
263
- `}]}}})]};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.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(_$1.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?___namespace.includes(["text","image"],e)?"image"===e&&a&&a.multiple?"static-images":"static-"+e:"static":___namespace.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:`
286
+ `}]}}})]};return s.id&&(i.id="service-"+s.id),i}async function getObjectDetail(e,t,a){var{layout:i="normal",labelAlign:r,formInitProps:s}=a,o=___default.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,o,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(_$1.map(o,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?___namespace.includes(["text","image"],e)?"image"===e&&a&&a.multiple?"static-images":"static-"+e:"static":___namespace.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:`
264
287
  <% let fileData = data.${e.name}; if (fileData) { %>
265
288
  <% if(!Array.isArray(fileData)){ fileData = [fileData]} %>
266
289
  <% fileData.forEach(function(item) { %>
@@ -283,10 +306,11 @@
283
306
  var file_name = data.versions ? data.name : "${r.label}";
284
307
  var file_id = data._id;
285
308
  SteedosUI.previewFile && SteedosUI.previewFile({file_name, file_id});
286
- `;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";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")):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 hover:bg-gray-50 text-gray-500",body:{type:"wrapper",body:s,size:"none",className:"p-2"}}),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=_$1.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(_$1.each(e,e=>{_$1.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:`
309
+ `;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="",o="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:o}),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:o}),t}async function getMobileTableColumns(e,t){var a=[];let i={};var r=[];for(const o of e){let e="";e=(e=o.is_name||o.name===t.labelFieldName?(i=o,t.onlyDisplayLabel=!0,await getFieldTpl(o,t)):"avatar"===o.type||"image"===o.type||"file"===o.type?`\${_display.${o.name}.name}`:("lookup"!==o.type&&"master_detail"!==o.type||(t.onlyDisplayLabel=!0),await getFieldTpl(o,t)))||`\${${o.name}}`,o.hidden||o.extra||r.push({field:o,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=_$1.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(_$1.each(e,e=>{_$1.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:`
287
310
  payload.recordPermissions = payload;
288
311
  return payload;
289
- `}}]}}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:o,top:n,setDataToComponentId:d=""}=a,c=(s=(s=___namespace.isArray(s)?___namespace.map(s,function(e){return e.operation?[e.field,e.operation,e.value]:e}):s)||[],null);_$1.isEmpty(r)||_$1.isEmpty(s)?r?c=r:s&&(c=s):c=[r,"and",s],___namespace.each(t,function(e){e.searchable&&i.push(e.name)});const p={},m=[];t.forEach(e=>{___namespace.includes(["image","avatar","file"],e.type)&&(m.push(e.name),p[e.name]={name:e.name,type:e.type,multiple:e.multiple})});var u=e.key_field||"_id",t=await getApi$1(e,null,t,{alias:"rows",limit:n,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=`
312
+ `}}]}}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:o,sort:n,top:l,setDataToComponentId:d=""}=a,c=(s=(s=___namespace.isArray(s)?___namespace.map(s,function(e){return e.operation?[e.field,e.operation,e.value]:e}):s)||[],null);_$1.isEmpty(r)||_$1.isEmpty(s)?r?c=r:s&&(c=s):c=[r,"and",s],___namespace.each(t,function(e){e.searchable&&i.push(e.name)});const p={},u=[];t.forEach(e=>{___namespace.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: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=`
313
+ // selfData 中的数据由 CRUD 控制. selfData中,只能获取到 CRUD 给定的data. 无法从数据链中获取数据.
290
314
  let selfData = JSON.parse(JSON.stringify(api.data.$self));
291
315
  try{
292
316
  // TODO: 不应该直接在这里取localStorage,应该从外面传入
@@ -313,9 +337,9 @@
313
337
  console.error("本地存储中crud参数解析异常:", ex);
314
338
  }
315
339
  ${c?`var systemFilters = ${JSON.stringify(c)};`:"var systemFilters = [];"}
316
- const filtersFunction = ${l};
340
+ const filtersFunction = ${o};
317
341
  if(filtersFunction){
318
- const _filters = filtersFunction(systemFilters, selfData);
342
+ const _filters = filtersFunction(systemFilters, api.data.$self);
319
343
  if(_filters && _filters.length > 0){
320
344
  if(_.isEmpty(systemFilters)){
321
345
  systemFilters = _filters || [];
@@ -339,12 +363,12 @@
339
363
  var orderBy = api.data.orderBy || '';
340
364
  var orderDir = api.data.orderDir || '';
341
365
  var sort = orderBy + ' ' + orderDir;
342
- sort = orderBy ? sort : "${o||""}";
366
+ sort = orderBy ? sort : "${n||""}";
343
367
  var allowSearchFields = ${JSON.stringify(i)};
344
368
  if(api.data.$term){
345
369
  userFilters = [["name", "contains", "'+ api.data.$term +'"]];
346
370
  }else if(selfData.op === 'loadOptions' && selfData.value){
347
- userFilters = [["${u.name}", "=", selfData.value]];
371
+ userFilters = [["${m.name}", "=", selfData.value]];
348
372
  }
349
373
  var searchableFilter = [];
350
374
  _.each(selfData, (value, key)=>{
@@ -411,6 +435,7 @@
411
435
  api.data = {
412
436
  query: api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim())
413
437
  }
438
+ ${a.requestAdaptor||""}
414
439
  return api;
415
440
  `,t.adaptor=`
416
441
  const enable_tree = ${e.enable_tree};
@@ -508,11 +533,11 @@
508
533
 
509
534
  const setDataToComponentId = "${d}";
510
535
  if(setDataToComponentId){
511
- SteedosUI.getRef(api.body.$self.scopeId)?.getComponentById(setDataToComponentId)?.setData({$count: payload.data.count})
512
- }
513
-
536
+ SteedosUI.getRef(api.body.$self.$scopeId)?.getComponentById(setDataToComponentId)?.setData({$count: payload.data.count})
537
+ };
538
+ ${a.adaptor||""}
514
539
  return payload;
515
- `,t}async function getApi$1(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}"}}}function getRecordPermissionsApi(e,t,a){e=getRecordPermissionsQuery(e,t,a);return{method:"post",url:getApi$2(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const refUsersObjectName="space_users",refOrgsObjectName="organizations";async function getSource(e,t){var a=await getFindQuery({name:refOrgsObjectName},null,[{name:"_id",alias:"value"},{name:"name",alias:"label"},{name:"children"}],{alias:"leftOptions",filters:"{__filters}"}),i=(a.query=a.query.replace(/,count\:.+/,"}"),await getFindQuery({name:refOrgsObjectName},null,[{name:"_id",alias:"ref"}],{alias:"children",filters:"{__filters}"})),i=(i.query=i.query.replace(/,count\:.+/,"}"),a.query=a.query.replace(/}$/,","+i.query.replace(/{(.+)}/,"$1}")),await getFindQuery({name:refUsersObjectName},null,[{name:"user"},{name:"name"}],{alias:"defaultValueOptions",filters:"{__options_filters}"}));i.query=i.query.replace(/,count\:.+/,"}"),a.query=a.query.replace(/}$/,","+i.query.replace(/{(.+)}/,"$1}"));let r=""+e.name;t.fieldNamePrefix&&(r=""+t.fieldNamePrefix+e.name),a.$value="$"+r,a.__selectUserLoaded__="${__selectUserLoaded__}";i=`
540
+ `,t}async function getApi$1(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}"}}}function getRecordPermissionsApi(e,t,a){e=getRecordPermissionsQuery(e,t,a);return{method:"post",url:getApi$2(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const refUsersObjectName="space_users",refOrgsObjectName="organizations";async function getSource(e,t){var a=await getFindQuery({name:refOrgsObjectName},null,[{name:"_id",alias:"value"},{name:"name",alias:"label"},{name:"children"}],{alias:"leftOptions",filters:"{__filters}"}),i=(a.query=a.query.replace(/,count\:.+/,"}"),await getFindQuery({name:refOrgsObjectName},null,[{name:"_id",alias:"ref"}],{alias:"children",filters:"{__filters}"})),i=(i.query=i.query.replace(/,count\:.+/,"}"),a.query=a.query.replace(/}$/,","+i.query.replace(/{(.+)}/,"$1}")),await getFindQuery({name:refUsersObjectName},null,[{name:"user"},{name:"name"}],{alias:"defaultValueOptions",filters:"{__options_filters}"}));i.query=i.query.replace(/,count\:.+/,"}"),a.query=a.query.replace(/}$/,","+i.query.replace(/{(.+)}/,"$1}"));let r=""+e.name;e._prefix&&(r=""+e._prefix+e.name),t.fieldNamePrefix&&(r=""+t.fieldNamePrefix+r),a.$value="$"+r;i=`
516
541
  console.log("select user field '${e.name}' requestAdaptor api:", api);
517
542
  var filters = [['parent', '=', null]];
518
543
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters));
@@ -524,7 +549,7 @@
524
549
  }
525
550
  api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));
526
551
  return api;
527
- `;return{method:"post",url:getApi$2()+`?value=\${${e.multiple?r+"|join":r}}`,requestAdaptor:i,adaptor:`
552
+ `;return{method:"post",url:getApi$2(),requestAdaptor:i,adaptor:`
528
553
  const data = payload.data;
529
554
  data.children = data.children.map(function (child) {
530
555
  // child.defer = !!(child.children && child.children.length);
@@ -542,7 +567,7 @@
542
567
  delete data.defaultValueOptions;
543
568
  payload.data = { options: [data] };
544
569
  return payload;
545
- `,data:a,sendOn:"!this.__selectUserLoaded__",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getDeferApi(e,t){var a=await getFindQuery({name:"{__object_name}"},null,[],{alias:"options",queryOptions:'filters: {__filters}, sort: "{__sort}"'});let i=e.filters;"function"==typeof(i="string"==typeof i?(i=new Function("return "+i))():i)&&(i=i(e)),a.query=a.query.replace(/,count\:.+/,"}"),a.query=a.query.replace("{_id}","{{__fields}}");e=`
570
+ `,data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getDeferApi(e,t){var a=await getFindQuery({name:"{__object_name}"},null,[],{alias:"options",queryOptions:'filters: {__filters}, sort: "{__sort}"'});let i=e.filters;"function"==typeof(i="string"==typeof i?(i=new Function("return "+i))():i)&&(i=i(e)),a.query=a.query.replace(/,count\:.+/,"}"),a.query=a.query.replace("{_id}","{{__fields}}");e=`
546
571
  var dep = api.query.dep;
547
572
  var ref = api.query.ref;
548
573
  var term = api.query.term;
@@ -604,22 +629,7 @@
604
629
  }
605
630
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__sort}', sort.trim());
606
631
  return api;
607
- `;return{method:"post",url:getApi$2()+"?term=${term}",requestAdaptor:e,data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getRefListViewSort(e){e=___namespace.find(e.list_views,(e,t)=>"all"===t);let t="";return t=e?getListViewSort(e):t}async function getSelectUserSchema(t,a,i){if(!t)return{};i=i||{};var r={type:getAmisStaticFieldType("select",a)};if(a)r.tpl=await getLookupTpl(t,i);else{a=await getUISchema(refUsersObjectName),a=(i.usersSort=getRefListViewSort(a),await getUISchema(refOrgsObjectName));i.orgsSort=getRefListViewSort(a),Object.assign(r,{labelField:"name",valueField:"user",multiple:t.multiple,searchable:t.searchable,selectMode:"associated",leftMode:"tree",extractValue:!0,clearable:!0,source:await getSource(t,i),deferApi:await getDeferApi(t,i),searchApi:await getSearchApi(t,i)}),t.multiple&&Object.assign(r,{joinValues:!1});let e=t.defaultValue;!___namespace.has(t,"defaultValue")||___namespace.isString(e)&&e.startsWith("{")||(___namespace.isString(e)&&e.startsWith("{{")&&(e="$"+e.substring(1,e.length-1)),r.value=e),"boolean"!=typeof r.searchable&&(r.searchable=!0);a=t.onEvent,i=(a&&(r.onEvent=a),{actionType:"custom",script:`
608
- // 往上找到form,设置__selectUserLoaded__标记已经加载过选人字段不能再调用source接口初始化选人组件了
609
- const getClosestAmisComponentByType = function(scope, type){
610
- const re = scope.getComponents().find(function(n){
611
- return n.props.type === type;
612
- });
613
- if(re){
614
- return re;
615
- }
616
- else{
617
- return getClosestAmisComponentByType(scope.parent, type);
618
- }
619
- }
620
- const form = getClosestAmisComponentByType(event.context.scoped, "form");
621
- form.setData({"__selectUserLoaded__":true});
622
- `});r.onEvent?r.onEvent.change?.actions?.length?r.onEvent.change.actions.unshift(i):r.onEvent.change={weight:0,actions:[i]}:Object.assign(r,{onEvent:{change:{weight:0,actions:[i]}}})}return r}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);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 o=await getReferenceTo(r);if(o){const c=await getUISchema(o.objectName),p=[];let e=0;const m=[],u=[];var n=___namespace.find(c.list_views,(e,t)=>"all"===t);n&&n.columns?___namespace.each(n.columns,function(e){___namespace.isString(e)&&c.fields[e]?u.push(c.fields[e]):___namespace.isObject(e)&&c.fields[e.field]&&u.push(Object.assign({},c.fields[e.field],{width:e.width,wrap:e.wrap}))}):___namespace.each(c.fields,(e,t)=>{"_id"==t||e.hidden||(___namespace.has(e,"name")||(e.name=t),u.push(e))}),___namespace.each(___namespace.sortBy(u,"sort_no"),function(t){e<5&&(___namespace.find(p,function(e){return e.name===t.name})||(e++,p.push(t),t.searchable&&m.push(t.name)))});const f={[o.labelField.name]:o.labelField,[o.valueField.name]:o.valueField};___namespace.each(p,e=>{e.hidden||(f[e.name]=e)});let t="";n&&(t=getListViewSort(n));n=await getApi(c,null,f,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});if(n.url){const g=[],_=[];___namespace.each(r.depend_on,e=>{g.push(`depend_on_${e}=\${${e}}`),_.push("this."+e)}),0<g.length&&(n.url=n.url+"?"+g.join("&"),n.sendOn=""+_.join(" && "))}n.data.$term="$term",n.data.$self="$$",n.requestAdaptor=`
632
+ `;return{method:"post",url:getApi$2()+"?term=${term}",requestAdaptor:e,data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getRefListViewSort(e){e=___namespace.find(e.list_views,(e,t)=>"all"===t);let t="";return t=e?getListViewSort(e):t}async function getSelectUserSchema(t,a,i){if(!t)return{};i=i||{};var r={type:getAmisStaticFieldType("select",a)};if(a)r.tpl=await getLookupTpl(t,i);else{a=await getUISchema(refUsersObjectName),a=(i.usersSort=getRefListViewSort(a),await getUISchema(refOrgsObjectName));i.orgsSort=getRefListViewSort(a),Object.assign(r,{labelField:"name",valueField:"user",multiple:t.multiple,searchable:t.searchable,selectMode:"associated",leftMode:"tree",extractValue:!0,clearable:!0,source:await getSource(t,i),deferApi:await getDeferApi(t,i),searchApi:await getSearchApi(t,i)}),t.multiple&&Object.assign(r,{joinValues:!1});let e=t.defaultValue;!___namespace.has(t,"defaultValue")||___namespace.isString(e)&&e.startsWith("{")||(___namespace.isString(e)&&e.startsWith("{{")&&(e="$"+e.substring(1,e.length-1)),r.value=e),"boolean"!=typeof r.searchable&&(r.searchable=!0);a=t.onEvent;a&&(r.onEvent=a)}return r}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,o){var n=await getReferenceTo(r);if(n){const c=await getUISchema(n.objectName),p=[];let e=0;const u=[],m=[];var l=___namespace.find(c.list_views,(e,t)=>"all"===t);l&&l.columns?___namespace.each(l.columns,function(e){___namespace.isString(e)&&c.fields[e]?m.push(c.fields[e]):___namespace.isObject(e)&&c.fields[e.field]&&m.push(Object.assign({},c.fields[e.field],{width:e.width,wrap:e.wrap}))}):___namespace.each(c.fields,(e,t)=>{"_id"==t||e.hidden||(___namespace.has(e,"name")||(e.name=t),m.push(e))}),___namespace.each(___namespace.sortBy(m,"sort_no"),function(t){e<5&&(___namespace.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};___namespace.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=[],_=[];___namespace.each(r.depend_on,e=>{g.push(`depend_on_${e}=\${${e}}`),_.push("this."+e)}),0<g.length&&(l.url=l.url+"?"+g.join("&"),l.sendOn=""+_.join(" && "))}l.data.$term="$term",l.data.$self="$$",l.requestAdaptor=`
623
633
  const selfData = JSON.parse(JSON.stringify(api.data.$self));
624
634
  var filters = [];
625
635
  var pageSize = api.data.pageSize || 10;
@@ -629,14 +639,14 @@
629
639
  var orderDir = api.data.orderDir || '';
630
640
  var sort = orderBy + ' ' + orderDir;
631
641
  sort = orderBy ? sort : "${t}";
632
- var allowSearchFields = ${JSON.stringify(m)};
642
+ var allowSearchFields = ${JSON.stringify(u)};
633
643
  if(api.data.$term){
634
644
  filters = [["name", "contains", "'+ api.data.$term +'"]];
635
645
  }else if(selfData.op === 'loadOptions' && selfData.value){
636
646
  if(selfData.value?.indexOf(',') > 0){
637
- filters = [["${o.valueField.name}", "=", selfData.value.split(',')]];
647
+ filters = [["${n.valueField.name}", "=", selfData.value.split(',')]];
638
648
  }else{
639
- filters = [["${o.valueField.name}", "=", selfData.value]];
649
+ filters = [["${n.valueField.name}", "=", selfData.value]];
640
650
  }
641
651
  }
642
652
 
@@ -683,7 +693,7 @@
683
693
 
684
694
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());
685
695
  return api;
686
- `,n.adaptor=`
696
+ `,l.adaptor=`
687
697
  const enable_tree = ${c.enable_tree};
688
698
  if(enable_tree){
689
699
  const records = payload.data.rows;
@@ -711,14 +721,25 @@
711
721
  payload.data.rows = treeRecords;
712
722
  }
713
723
  return payload;
714
- `;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:o.labelField.name,valueField:o.valueField.name,modalMode:"dialog",source:n,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);let r;r=i?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}"'}):{method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"}};var s=i&&await getUISchema(i.objectName),s=s&&___namespace.find(s.list_views,(e,t)=>"all"===t);let l="";if(s&&(l=getListViewSort(s)),r.url){const n=[],d=[];___namespace.each(e.depend_on,e=>{n.push(`depend_on_${e}=\${${e}}`),d.push("this."+e)}),0<n.length&&(r.url=r.url+"?"+n.join("&"),r.sendOn=""+d.join(" && "))}r.data.$term="$term",r.data.$value=`$${e.name}.`+(i?i.valueField.name:"_id"),___namespace.each(e.depend_on,function(e){r.data[e]="$"+e}),r.data.$="$$",r.data.rfield="${object_name}",r.requestAdaptor=`
724
+ `;let a=20,i=(c.paging&&!1===c.paging.enabled&&(a=1e3),null);"SMALL"===o.formFactor?i=await getListSchema$1(p,{top:a,...o,actions:!1}):((i=await getTableSchema$1(p,{labelFieldName:c.NAME_FIELD_KEY,top:a,...o})).headerToolbar=getObjectHeaderToolbar(c,o.formFactor),i.footerToolbar=getObjectFooterToolbar(),!1!==o.filterVisible&&(d=o.filterLoopCount||0,d++,i.filter=await getObjectFilter(c,f,{isLookup:!0,...o,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:l,size:"lg",pickerSchema:i,joinValues:!1,extractValue:!0};return r.multiple&&(d.multiple=!0,d.extractValue=!0),s&&(d.tpl=await getLookupTpl(r,o)),d}}async function lookupToAmisSelect(e,t,a){var i=await getReferenceTo(e),r=i&&i.valueField?.name||"_id";let s;i?(o=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:[o.query]})).adaptor=`
725
+ const data = payload.data;
726
+ var defaultValueOptions = data.defaultValueOptions;
727
+ // 字段值下拉选项合并到options中
728
+ data.options = _.unionWith(defaultValueOptions, data.options, function(a,b){
729
+ return a["value"]=== b["value"];
730
+ });
731
+ delete data.defaultValueOptions;
732
+ payload.data.options = data.options;
733
+ return payload;
734
+ `):s={method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"}};var o=i&&await getUISchema(i.objectName),o=o&&___namespace.find(o.list_views,(e,t)=>"all"===t);let n="";if(o&&(n=getListViewSort(o)),s.url){const d=[],c=[];___namespace.each(e.depend_on,e=>{d.push(`depend_on_${e}=\${${e}}`),c.push("this."+e)}),0<d.length&&(s.url=s.url+"?"+d.join("&"),s.sendOn=""+c.join(" && "))}s.data.$term="$term",s.data.$value=a.isRefToMutiple?`$${e.name}.ids`:"$"+e.name,___namespace.each(e.depend_on,function(e){s.data[e]="$"+e}),s.data.$="$$",s.data.rfield="${object_name}",s.requestAdaptor=`
715
735
  var filters = [];
716
736
  var top = 10;
717
737
  if(api.data.$term){
718
738
  filters = [["${i?.NAME_FIELD_KEY||"name"}", "contains", api.data.$term]];
719
- }else if(api.data.$value){
720
- filters = [["_id", "=", api.data.$value]];
721
739
  }
740
+ // else if(api.data.$value){
741
+ // filters = [["_id", "=", api.data.$value]];
742
+ // }
722
743
 
723
744
  const filtersFunction = ${e._filtersFunction};
724
745
 
@@ -728,13 +749,22 @@
728
749
  filters.push(_filters);
729
750
  }
730
751
  }
731
- var sort = "${l}";
752
+ var sort = "${n}";
732
753
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', top).replace('{__sort}', sort.trim());
754
+
755
+ var defaultValue = api.data.$value;
756
+ var optionsFiltersOp = "${e.multiple?"in":"="}";
757
+ var optionsFilters = [["${r}", optionsFiltersOp, []]];
758
+ if (defaultValue && !api.data.$term) {
759
+ // 字段值单独请求,没值的时候在请求中返回空
760
+ optionsFilters = [["${r}", optionsFiltersOp, defaultValue]];
761
+ }
762
+ api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));
733
763
  return api;
734
- `,i&&i.labelField.name,i&&i.valueField.name,e._optionsFunction&&(r.adaptor=`
735
- payload.data.options = eval(${e._optionsFunction})(api.data);
764
+ `,i&&i.labelField.name,i&&i.valueField.name,e._optionsFunction&&(s.adaptor=`
765
+ payload.data.options = eval(${e._optionsFunction})(api.data.$);
736
766
  return payload;
737
- `);s={type:getAmisStaticFieldType("select",t),joinValues:!1,extractValue:!0,source:r,autoComplete:r,searchable:!0};let o=e.defaultValue;return!___namespace.has(e,"defaultValue")||___namespace.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(___namespace.isString(o)&&o.startsWith("{{")&&(o="$"+o.substring(1,o.length-1)),s.value=o),e.multiple&&(s.multiple=!0,s.extractValue=!0),t&&(s.tpl=await getLookupTpl(e,a)),s}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||___namespace.isString(e.reference_to)||t?((i=await getReferenceTo(e))?(r=await getUISchema(i.objectName),"space_users"===i.objectName&&"user"===e.reference_to_field?lookupToAmisSelectUser:1==r.enable_enhanced_lookup&&___namespace.isEmpty(e.depend_on)?lookupToAmisPicker:lookupToAmisSelect):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=___namespace.filter(e,function(e){var t=e.name.startsWith(a.name+".")&&___namespace.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=___namespace.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 ___namespace.each(e.fields,(e,t)=>{___namespace.has(e,"name")||(e.name=t),i.push(e)}),___namespace.each(___namespace.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 ___namespace.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(!___namespace.includes(OMIT_FIELDS,a.name)||1==r.showSystemFields){var s,l={name:r.fieldNamePrefix?""+r.fieldNamePrefix+a.name:a.name,label:a.label,labelRemark:a.inlineHelpText,required:(___namespace.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};let e=a.defaultValue;!___namespace.has(a,"defaultValue")||___namespace.isString(a.defaultValue)&&a.defaultValue.startsWith("{")||(___namespace.isString(e)&&e.startsWith("{{")&&(e="$"+e.substring(1,e.length-1)),s=a.data_type||"text",null!=e&&("text"===s?t.value=String(e):"number"===s?t.value=Number(e):"boolean"===s&&(t.value="false"!==e))),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,l);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,value:a.defaultValue||""};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 m of a.subFields){var o=m.name.replace(`${a._prefix||""}${a.name}.$.`,"").replace(a.name+".",""),n=await convertSFieldToAmisField(Object.assign({},m,{name:o}),i,r);n&&(delete n.name,delete n.label,t.columns.push({name:o,label:m.label,quickEdit:!i&&n}))}}break;case"object":if(a.subFields){t={type:"combo",items:[]};for(var d of a.subFields){var c=d.name.replace(a.name+".$.","").replace(a.name+".",""),p=("grid"===d.type&&(d=await getGridFieldSubFields(d,r.__permissionFields)),await convertSFieldToAmisField(Object.assign({},d,{name:c}),i,r));p&&(delete p.name,delete p.label,t.items.push(Object.assign({},p,{name:c,label:d.label})))}}}return ___namespace.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({},l,t.body[0],{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:a.name}),t):Object.assign({},l,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=_$1.cloneDeep(r),t=(_$1.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)_$1.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 _$1.map(s,"name"),a.enableSearchableFieldsVisibleOn&&s.forEach(function(e){e.visibleOn=`this.filterFormSearchableFields && this.filterFormSearchableFields.indexOf("${e.fieldName}") > -1`}),{title:"",type:"form",name:"listview-filter-form",id:"listview_filter_form_"+e.name,mode:"normal",wrapWithPanel:!1,className:"sm:grid sm:gap-2 sm:grid-cols-4 mb-2",data:{"&":"${filterFormValues || {}}",...a.initData},body: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:`
767
+ `);o={type:getAmisStaticFieldType("select",t),joinValues:!1,extractValue:!0,source:s,autoComplete:s,searchable:!0};let l=e.defaultValue;return!___namespace.has(e,"defaultValue")||___namespace.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(___namespace.isString(l)&&l.startsWith("{{")&&(l="$"+l.substring(1,l.length-1)),o.value=l),e.multiple&&(o.multiple=!0,o.extractValue=!0),t&&(o.tpl=await getLookupTpl(e,a)),o}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||___namespace.isString(e.reference_to)||t?((i=await getReferenceTo(e))?(r=await getUISchema(i.objectName),"space_users"===i.objectName&&"user"===e.reference_to_field?lookupToAmisSelectUser:1==r.enable_enhanced_lookup&&___namespace.isEmpty(e.depend_on)?lookupToAmisPicker:lookupToAmisSelect):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=___namespace.filter(e,function(e){var t=e.name.startsWith(a.name+".")&&___namespace.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=___namespace.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 ___namespace.each(e.fields,(e,t)=>{___namespace.has(e,"name")||(e.name=t),i.push(e)}),___namespace.each(___namespace.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 ___namespace.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(!___namespace.includes(OMIT_FIELDS,a.name)||1==r.showSystemFields){var s,o={name:r.fieldNamePrefix?""+r.fieldNamePrefix+a.name:a.name,label:a.label,labelRemark:a.inlineHelpText,required:(___namespace.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};let e=a.defaultValue;!___namespace.has(a,"defaultValue")||___namespace.isString(a.defaultValue)&&a.defaultValue.startsWith("{")||(___namespace.isString(e)&&e.startsWith("{{")&&(e="$"+e.substring(1,e.length-1)),s=a.data_type||"text",null!=e&&("text"===s?t.value=String(e):"number"===s?t.value=Number(e):"boolean"===s&&(t.value="false"!==e))),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,o);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,value:a.defaultValue||""};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 p of a.subFields){var n=p.name.replace(`${a._prefix||""}${a.name}.$.`,"").replace(a.name+".",""),l=await convertSFieldToAmisField(Object.assign({},p,{name:n}),i,r);l&&(delete l.name,delete l.label,t.columns.push({name:n,label:p.label,quickEdit:!i&&l}))}}break;case"object":if(a.subFields){t={type:"combo",items:[]};for(var d of a.subFields){let e=d.name.replace(a.name+".$.","").replace(a.name+".","");"grid"===d.type?d=await getGridFieldSubFields(d,r.__permissionFields):i&&(e=a.name+"."+e);var c=await convertSFieldToAmisField(Object.assign({},d,{name:e}),i,r);c&&(delete c.name,delete c.label,t.items.push(Object.assign({},c,{name:e,label:d.label})))}}}return ___namespace.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({},o,t.body[0],{labelClassName:"text-left",clearValueOnHidden:!0,fieldName:a.name}),t):Object.assign({},o,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=_$1.cloneDeep(r),t=(_$1.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)_$1.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 _$1.map(s,"name"),a.enableSearchableFieldsVisibleOn&&s.forEach(function(e){e.visibleOn=`this.filterFormSearchableFields && this.filterFormSearchableFields.indexOf("${e.fieldName}") > -1`}),{title:"",type:"form",name:"listview-filter-form",id:"listview_filter_form_"+e.name,mode:"normal",wrapWithPanel:!1,className:"sm:grid sm:gap-2 sm:grid-cols-4 mb-2",data:{"&":"${filterFormValues || {}}",...a.initData},body: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:`
738
768
  const objectName = data.objectName;
739
769
  const isLookup = data.isLookup;
740
770
  const listViewId = data.listViewId;
@@ -898,13 +928,13 @@
898
928
  localStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));
899
929
  }
900
930
  // ===END===
901
- `},{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:o,top:n,setDataToComponentId:d=""}=a;n=n||200,l=(l=___default.default.isArray(l)?___default.default.map(l,function(e){return e.operation?[e.field,e.operation,e.value]:e}):l)||[],___default.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:n,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});return e.data.$term="$term",e.data.$self="$$",e.data.filter="$filter",e.data.pageSize=n||10,e.requestAdaptor=`
931
+ `},{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:o,sort:n,top:l,setDataToComponentId:d=""}=a;l=l||200,o=(o=___default.default.isArray(o)?___default.default.map(o,function(e){return e.operation?[e.field,e.operation,e.value]:e}):o)||[],___default.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=`
902
932
  let selfData = JSON.parse(JSON.stringify(api.data.$self));
903
933
  ${s?`var filters = ${JSON.stringify(s)};`:"var filters = [];"}
904
934
  if(_.isEmpty(filters)){
905
- filters = api.data.filter || ${JSON.stringify(l)};
935
+ filters = api.data.filter || ${JSON.stringify(o)};
906
936
  }else{
907
- filters = [filters, 'and', api.data.filter || ${JSON.stringify(l)}]
937
+ filters = [filters, 'and', api.data.filter || ${JSON.stringify(o)}]
908
938
  }
909
939
  const eventFetchInfo = selfData.fetchInfo;
910
940
  const startDateExpr = "${i.startDateExpr}";
@@ -921,7 +951,7 @@
921
951
  var orderBy = api.data.orderBy || '';
922
952
  var orderDir = api.data.orderDir || '';
923
953
  var sort = orderBy + ' ' + orderDir;
924
- sort = orderBy ? sort : "${o}";
954
+ sort = orderBy ? sort : "${n}";
925
955
  var allowSearchFields = ${JSON.stringify(r)};
926
956
  if(api.data.$term){
927
957
  filters = [["name", "contains", "'+ api.data.$term +'"]];
@@ -1034,7 +1064,7 @@
1034
1064
  revert && revert();
1035
1065
  }
1036
1066
  return payload;
1037
- `,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,_$1.omitBy(e,_$1.isNil))).title||[e.startDateExpr,e.endDateExpr,e.allDayExpr,e.textExpr]);let s=[],l=(_$1.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=`
1067
+ `,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,_$1.omitBy(e,_$1.isNil))).title||[e.startDateExpr,e.endDateExpr,e.allDayExpr,e.textExpr]);let s=[],o=(_$1.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(o)switch(o){case"day":o="timeGridDay";break;case"week":o="timeGridWeek";break;case"month":o="dayGridMonth";break;case"agenda":o="timeGridDay"}else o="timeGridWeek";a.calendarOptions=e;var r=await getCalendarApi(t,s,a),a=`
1038
1068
  const api = ${JSON.stringify(r)};
1039
1069
  event.data.calendarOptions = ${JSON.stringify(e)};
1040
1070
  doAction({
@@ -1085,7 +1115,7 @@
1085
1115
  "size": "lg"
1086
1116
  }
1087
1117
  });
1088
- `,o=getCalendarRecordPermissionsApi(t,"${event.id}"),n=getCalendarRecordSaveApi(t,e),d={daysOfWeek:[1,2,3,4,5],startTime:"08:00",endTime:"18:00"},e=(_$1.isEmpty(e.startDayHour)||(d.startTime=e.startDayHour+":00"),_$1.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:`
1118
+ `,n=getCalendarRecordPermissionsApi(t,"${event.id}"),l=getCalendarRecordSaveApi(t,e),d={daysOfWeek:[1,2,3,4,5],startTime:"08:00",endTime:"18:00"},e=(_$1.isEmpty(e.startDayHour)||(d.startTime=e.startDayHour+":00"),_$1.isEmpty(e.endDayHour)||(d.endTime=e.endDayHour+":00"),{type:"steedos-fullcalendar",label:"",name:"fullcalendar",editable:i.allowEdit,selectable:i.allowCreate,selectMirror:i.allowCreate,initialView:o,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:`
1089
1119
  const data = event.data;
1090
1120
  const eventData = data.event;
1091
1121
  const appId = data.appId;
@@ -1110,16 +1140,168 @@
1110
1140
  "actions": []
1111
1141
  }
1112
1142
  });
1113
- `}]},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:n,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"),_$1.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=[];_$1.each(e,e=>{a.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${t}"]])`)});e=`
1143
+ `}]},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: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"),_$1.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=[];_$1.each(e,e=>{a.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${t}"]])`)});e=`
1114
1144
  {
1115
1145
  ${a.join(",")}
1116
1146
  }
1117
- `;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"})};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=>_$1.cloneDeep(UI_SCHEMA_CACHE[e]),hasUISchemaCache=e=>_$1.has(UI_SCHEMA_CACHE,e);function getListViewColumns(e,t){let a=[];return a="SMALL"===t?_$1.isEmpty(e.mobile_columns)?_$1.slice(e.columns,0,4):e.mobile_columns:e.columns}function getListViewSort(e){let i="";return e&&e.sort&&e.sort.length&&_$1.each(e.sort,function(e,t){var a;_$1.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.default.isEmpty(e)?e=[["owner","=",a]]:e.push(["owner","=",a])),e}}async function getUISchema(t,e){if(t){if(!hasUISchemaCache(t)||e){let a=null;try{if(!(a=UISchemaFunction?await UISchemaFunction(t,e):await fetchAPI(`/service/api/@${t.replace(/\./g,"_")}/uiSchema`,{method:"get"})))return;setUISchemaCache(t,a),_$1.each(a.list_views,(e,t)=>{e.name=t,_$1.has(e,"columns")||(e.columns=a.list_views.all.columns)})}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=_$1.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=_$1.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),o=getListViewSort(s),n=getListViewFilter(s),d=s&&s._filters;if("calendar"===s.type){const f={type:"steedos-object-calendar",objectApiName:t,filters:n,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(r)),i.showHeader||(c.headerSchema=null);try{var p,m=location.pathname+"/crud/"+i.listViewId,u=localStorage.getItem(m);u&&(u=JSON.parse(u),p={},u.orderBy&&(p.orderBy=u.orderBy),u.orderDir&&(p.orderDir=u.orderDir),u.perPage&&(p.defaultParams={perPage:u.perPage}),c.listSchema=_$1.defaultsDeep({},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:n,filtersFunction:d,sort:o,ctx:i};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,n=i.sortOrder,o&&(s=o+" "+n||"asc"));let l=[];_$1.each(a,function(e){_$1.isString(e)&&r.fields[e]?l.push(r.fields[e]):_$1.isObject(e)&&r.fields[e.field]&&l.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}))});var o=i.extraColumns,n=(o&&_$1.each(o,function(e){_$1.isString(e)?l.push({extra:!0,name:e}):_$1.isObject(e)&&l.push({extra:!0,name:e.field})}),await getObjectList(r,l,{tabId:t,appId:e,objectName:t,...i,filter:i.filters,sort:s,buttons:await getListViewItemButtons(r,i)}));return{uiSchema:r,amisSchema:n}}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){e=await getUISchema(e);return{uiSchema:e,amisSchema:{type:"service",body:[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:48d2c28eb755",onEvent:{recordLoaded:{actions:[{actionType:"reload",data:{name:`\${record.${e?.NAME_FIELD_KEY||"name"}}`,record:"${record}",recordLoaded:!0}}]}}},{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"},{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"}],id:"u:a649e4094a12"}]}}}async function getObjectRelatedList(t,i,a,r){var e=await getUISchema(i),s=[],l=[].concat(e.related_lists||[]);if(_$1.isEmpty(l))for(const m of[].concat(e.details||[])){var o=m.split("."),n=await getUISchema(o[0]);if(n){let e=null;var d=await getField(o[0],o[1]);e=d._reference_to||d.reference_to&&!_$1.isString(d.reference_to)?[[o[1]+"/o","=",i],[o[1]+"/ids","=",a]]:[""+o[1],"=",a],s.push({masterObjectName:i,object_name:o[0],foreign_key:o[1],schema:await getListSchema(t,o[0],"all",{globalFilter:e,formFactor:r,buttons:await getListViewItemButtons(n,{isMobile:!1})})})}}else for(const u of l){var c=u.related_field_fullname.split(".");let e=null;var p=await getField(c[0],c[1]);if(p){e=p._reference_to||p.reference_to&&!_$1.isString(p.reference_to)?[[c[1]+"/o","=",i],[c[1]+"/ids","=",a]]:[""+c[1],"=",a];const f=await getUISchema(c[0]);if(f){let a=[];_$1.forEach(u.field_names,t=>{var e=_$1.find(f.fields,e=>e.name===t);e&&a.push(e)}),s.push({masterObjectName:i,object_name:c[0],foreign_key:c[1],label:u.label,schema:{uiSchema:f,amisSchema:await getObjectList(f,a,{tabId:i,appId:t,objectName:c[0],formFactor:r,globalFilter:e,buttons:await getListViewItemButtons(f,{isMobile:!1})})}})}}}return s}async function getObjectRelated({appName:e,masterObjectName:t,objectName:a,relatedFieldName:i,recordId:r,formFactor:s}){let l=null;var o=await getField(a,i),o=(l=o._reference_to||o.reference_to&&!_$1.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:l,formFactor:s}),record:await getRecord(t,r,[o.NAME_FIELD_KEY]),masterObjectUISchema:o}}async function getSearchableFieldsFilterSchema(e,t,a){return getObjectFieldsFilterFormSchema(e,t,a)}const getRelatedFieldValue=(e,t,a,i)=>{a=_$1.find(a.fields,e=>i===e?.name);return _$1.isString(a.reference_to)?a.multiple?[t]:t:{o:e,ids:[t]}};async function getAmisObjectRelatedList(t,i,a,r){var e=await getUISchema(i),s=[],l=[].concat(e.related_lists||[]);if(_$1.isEmpty(l))for(const u of[].concat(e.details||[])){var o,n,d=u.split("."),c=await getUISchema(d[0]);c&&(((o=await getField(d[0],d[1]))._reference_to||o.reference_to&&!_$1.isString(o.reference_to))&&d[1],d[1],n=(o=await getListSchema(t,d[0],"all",{formFactor:r,buttons:await getListViewItemButtons(c,{isMobile:!1})})).amisSchema,c=await getObjectRecordDetailRelatedListHeader(c),n.headerSchema=c,n.headerToolbar=[],n.columnsTogglable=!1,delete n.ctx,o.amisSchema={type:"service",className:"b-a m-b",data:{masterObjectName:i,masterRecordId:"${recordId}",relatedKey:d[1],objectName:d[0],listViewId:`amis-\${appId}-${d[0]}-listview`},body:[{...n,data:{filter:["${relatedKey}","=","${masterRecordId}"],objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[d[1]]:getRelatedFieldValue(i,a,o.uiSchema,d[1])}}}]},s.push({masterObjectName:i,object_name:d[0],foreign_key:d[1],schema:o}))}else for(const f of l){var p=f.related_field_fullname.split(".");let e=null;var m=await getField(p[0],p[1]);if(m){e=m._reference_to||m.reference_to&&!_$1.isString(m.reference_to)?[[p[1]+"/o","=",i],[p[1]+"/ids","=",a]]:[""+p[1],"=",a];const g=await getUISchema(p[0]);if(g){let a=[];_$1.forEach(f.field_names,t=>{var e=_$1.find(g.fields,e=>e.name===t);e&&a.push(e)}),s.push({masterObjectName:i,object_name:p[0],foreign_key:p[1],schema:{uiSchema:g,amisSchema:await getObjectList(g,a,{tabId:i,appId:t,objectName:p[0],formFactor:r,globalFilter:e,buttons:await getListViewItemButtons(g,{isMobile:!1})})}})}}}return s}async function getRecordDetailRelatedListSchema(t,e,a,i,r,s,l,o,n,d){var c=await getUISchema(a),{list_views:p,label:m,fields:u}=c,m=(n=n||m,_$1.keys(p)[0]);let f=null;p=await getField(a,i=i||_$1.findKey(u,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===t}));let g=e;p.reference_to_field&&"_id"!=p.reference_to_field&&(u=await getRecord(t,e,[p.reference_to_field]),g=u[p.reference_to_field]),f=p._reference_to||p.reference_to&&!_$1.isString(p.reference_to)?[[i+"/o","=",t],[i+"/ids","=",g]]:[""+i,"=",g];e=await getObjectRecordDetailRelatedListHeader(c,n),u="steedos-record-related-list-"+a,p=(await getListSchema(null,a,m,{globalFilter:f,defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:e},showHeader:!0,top:r,perPage:s,setDataToComponentId:u,tableHiddenOn:l?"this.$count === 0":null,appId:o})).amisSchema;return{uiSchema:c,amisSchema:{type:"service",id:u,className:"steedos-record-related-list sm:rounded sm:border border-slate-300 bg-gray-100 mb-4 "+d,data:{"&":"$$",appId:"${appId}",app_id:"${appId}",masterObjectName:t,masterRecordId:"${recordId}",relatedKey:i,objectName:a,listViewId:`amis-\${appId}-${a}-listview`},body:[{...p,data:{"&":"$$",appId:"${appId}",app_id:"${appId}",relatedKey:i,objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[i]:getRelatedFieldValue(t,g,c,i)}}}]}}}async function getFormPageInitSchema(e){return{type:"page",bodyClassName:"",regions:["body"],body:[(await getFormSchema(e,{recordId:"${recordId}"})).amisSchema]}}async function getListPageInitSchema(e,t,a){return{type:"page",bodyClassName:"",regions:["body"],body:[{type:"steedos-object-listview",objectApiName:e,columnsTogglable:!1,showHeader:!0}]}}async function getRecordPageInitSchema(e){var t=await getAmisObjectRelatedList(null,e,"${recordId}",null),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"},t=_$1.map(t,e=>e.schema.amisSchema);return t.length&&i.tabs.push({title:"相关",body:t}),a.push(i),{type:"page",id:`page_${e}_record_detail`,bodyClassName:"",regions:["body"],body:a}}async function getListviewInitSchema(t,a,i){i=i||{};var r=await getUISchema(t),s=_$1.find(r.list_views,(e,t)=>t===a);let l={};if(s){var o=getListViewColumns(s,i.formFactor),s=getListViewSort(s),n=i.defaults||{};n.headerSchema||(r=await getObjectListHeader(r),n.headerSchema=r),i.defaults=n;let e=i.setDataToComponentId;e=e||"service_listview_"+t;r=await getTableSchema(null,t,o,{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`)}const getNotifications=async()=>{var e=getSteedosAuth(),e=`
1147
+ `;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"})};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=>_$1.cloneDeep(UI_SCHEMA_CACHE[e]),hasUISchemaCache=e=>_$1.has(UI_SCHEMA_CACHE,e);function getListViewColumns(e,t){let a=[];return a="SMALL"===t?_$1.isEmpty(e.mobile_columns)?_$1.slice(e.columns,0,4):e.mobile_columns:e.columns}function getListViewSort(e){let i="";return e&&e.sort&&e.sort.length&&_$1.each(e.sort,function(e,t){var a;_$1.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.default.isEmpty(e)?e=[["owner","=",a]]:e.push(["owner","=",a])),e}}async function getUISchema(objectName,force){if(objectName){if(!hasUISchemaCache(objectName)||force){let uiSchema=null;try{if(UISchemaFunction)uiSchema=await UISchemaFunction(objectName,force);else{const url=`/service/api/@${objectName.replace(/\./g,"_")}/uiSchema`;uiSchema=await fetchAPI(url,{method:"get"})}if(!uiSchema)return;setUISchemaCache(objectName,uiSchema),_$1.each(uiSchema.fields,field=>{try{"lookup"===field.type&&field._reference_to&&___default.default.isString(field._reference_to)&&(field.reference_to=eval(`(${field._reference_to})`)())}catch(exception){field.reference_to=void 0,console.error(exception)}}),_$1.each(uiSchema.list_views,(e,t)=>{e.name=t,_$1.has(e,"columns")||(e.columns=uiSchema.list_views.all.columns)})}catch(error){console.error("getUISchema",objectName,error),setUISchemaCache(objectName,null)}}return getUISchemaCache(objectName)}}async function getField(e,t){return(await getUISchema(e))?.fields[t]}async function getFormSchema(e,t){e=await getUISchema(e),t=await getObjectForm(e,t);return console.log("getFormSchema====>",t),{uiSchema:e,amisSchema: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=_$1.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=_$1.isString(s.amis_schema)?JSON.parse(s.amis_schema):s.amis_schema;return{uiSchema:r,isCustomAmisSchema:!0,amisSchema:f}}var o=getListViewColumns(s,i.formFactor),n=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: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=_$1.defaultsDeep({},p,c.listSchema||{}))}catch(e){console.error("本地存储中crud参数解析异常:",e)}i.defaults=c;const f={type:"steedos-object-table",objectApiName:t,columns:o,extraColumns:s.extra_columns,filters:l,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,l=i.sortOrder,n&&(s=n+" "+l||"asc"));let o=[];_$1.each(a,function(e){_$1.isString(e)&&r.fields[e]?o.push(r.fields[e]):_$1.isObject(e)&&r.fields[e.field]&&o.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}))});var n=i.extraColumns,l=(n&&_$1.each(n,function(e){_$1.isString(e)?o.push({extra:!0,name:e}):_$1.isObject(e)&&o.push({extra:!0,name:e.field})}),await getObjectList(r,o,{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){e=await getUISchema(e);return{uiSchema:e,amisSchema:{type:"service",body:[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:48d2c28eb755",onEvent:{recordLoaded:{actions:[{actionType:"reload",data:{name:`\${record.${e?.NAME_FIELD_KEY||"name"}}`,record:"${record}",recordLoaded:!0}}]}}},{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"},{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"}],id:"u:a649e4094a12"}]}}}async function getObjectRelated({appName:e,masterObjectName:t,objectName:a,relatedFieldName:i,recordId:r,formFactor:s}){let o=null;var n=await getField(a,i),n=(o=n._reference_to||n.reference_to&&!_$1.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:o,formFactor:s}),record:await getRecord(t,r,[n.NAME_FIELD_KEY]),masterObjectUISchema:n}}async function getSearchableFieldsFilterSchema(e,t,a){return getObjectFieldsFilterFormSchema(e,t,a)}const getRelatedFieldValue=(e,t,a,i)=>{a=_$1.find(a.fields,e=>i===e?.name);return _$1.isString(a.reference_to)?a.multiple?[t]:t:{o:e,ids:[t]}};async function getObjectRelatedList(e,t,a,i){var r=await getUISchema(t),s=[],o=[].concat(r.related_lists||[]);if(_$1.isEmpty(o))for(const d of[].concat(r.details||[])){var n=d.split(".");s.push({masterObjectName:t,object_name:n[0],foreign_key:n[1]})}else for(const c of o){var l=c.related_field_fullname.split(".");s.push({masterObjectName:t,object_name:l[0],foreign_key:l[1],label:c.label,columns:c.field_names,sort:c.sort,filters:c.filters,visible_on:c.visible_on,page_size:c.page_size})}return s}async function getRecordDetailRelatedListSchema(t,e,a,i,r){let{top:s,perPage:o,hiddenEmptyTable:n,appId:l,relatedLabel:d,className:c}=r;var p=await getUISchema(a),{list_views:u,label:m,fields:f}=p;d=d||m,_$1.keys(u).includes("all")||_$1.keys(u)[0];let g=null;m=await getField(a,i=i||_$1.findKey(f,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===t}));let _=e;m.reference_to_field&&"_id"!=m.reference_to_field&&(u=await getRecord(t,e,[m.reference_to_field]),_=u[m.reference_to_field]),g=m._reference_to||m.reference_to&&!_$1.isString(m.reference_to)?[[i+"/o","=",t],[i+"/ids","=",_]]:[""+i,"=",_];f=await getObjectRecordDetailRelatedListHeader(p,d),e="steedos-record-related-list-"+a,u=(await getRelatedListSchema(null,a,"all",{globalFilter:g,defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:f},showHeader:!0,top:s,perPage:o,setDataToComponentId:e,tableHiddenOn:n?"this.$count === 0":null,appId:l,crudClassName:"border-t border-slate-300",...r})).amisSchema;if(u)return{uiSchema:p,amisSchema:{type:"service",id:e,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,_,p,i)}}}]}}}function getDefaultRelatedListProps(e,a,t){var i=_$1.find(e.list_views,(e,t)=>"calendar"!==e.type&&t===(a=a||t));let r=[],s="",o=null,n=null;return i?(r=getListViewColumns(i,t.formFactor),s=getListViewSort(i),o=getListViewFilter(i),n=i&&i._filters):(t=_$1.find(e.fields,(e,t)=>e.is_name),r=t?[t.name]:["name"]),{columns:r,sort:s,filter:o,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,i){var r=await getUISchema(t),s=r.list_views,{columns:o,sort:n,filter:l,filtersFunction:d}=getRelatedListProps(r,a,i),c=i.defaults||{},a=(!c.headerSchema&&i.showHeader&&(c.headerSchema=await getObjectListHeader(r,a)),i.showHeader||(c.headerSchema=null),i.defaults=c,{type:"steedos-object-table",objectApiName:t,columns:o,extraColumns:s.extra_columns,filters:l,filtersFunction:d,sort:n,ctx:i});return{uiSchema:r,amisSchema: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(null,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=_$1.find(r.list_views,(e,t)=>t===a);let o={};if(s){var n=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,n,{sort:s,...i,setDataToComponentId:e});delete(o=r.amisSchema).data.$master,delete o.data._id,delete o.data.recordPermissions,delete o.data.uiSchema}return o}async function getApps(){return await fetchAPI("/service/api/apps/menus")}async function getApp(e){return await fetchAPI(`/service/api/apps/${e}/menus`)}const getNotifications=async()=>{var e=getSteedosAuth(),e=`
1118
1148
  {
1119
1149
  notifications(filters: ["owner","=","${e.userId}"], sort: "created desc,name", top : 10){
1120
1150
  _id,name,body,related_to,related_name,url,owner,is_read,from,created
1121
1151
  },
1122
1152
  unReadCount: notifications__count(filters: [["owner","=","${e.userId}"], ["is_read", "!=", true]])
1123
1153
  }
1124
- `;return(await fetchAPI("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},markReadAll=async()=>fetchAPI("/api/v4/notifications/all/markReadAll",{method:"POST"}),PUBLIC_ENV={},setEnv=(e,t)=>{PUBLIC_ENV[e]=t},getEnv=e=>PUBLIC_ENV[e],setEnvs=e=>{_$1.map(e,(e,t)=>{PUBLIC_ENV[t]=e})},getEnvs=()=>PUBLIC_ENV;async function getSpaceUsersPickerAmisSchema(e,t,a){return{type:"picker",label:"人员",name:t,id:a.id,modalMode:"dialog",joinValues:!1,source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:space_users(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,name,email,mobile},count:space_users__count(filters:{__filters})}',$term:"$term",$self:"$$"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n var allowSearchFields = [\"name\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\n })\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n "},pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["switch-per-page","pagination"],defaultParams:{perPage:50},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"_id",label:"ID",type:"text",toggled:!1},{name:"name",label:"姓名",sortable:!0,searchable:!0,type:"text"},{name:"email",label:"邮件",sortable:!0,type:"text",searchable:!0},{name:"mobile",label:"手机",type:"text",sortable:!0,searchable:!0}],syncLocation:!1,keepItemSelectionOnPageChange:!0},labelField:"name",valueField:"_id",size:"lg",extractValue:!0,className:"m-0",labelClassName:"text-left"}}async function getSpaceUsersPickerSchema(e,t){var a=await getUISchema("space_users");return{uiSchema:a,amisSchema:await getSpaceUsersPickerAmisSchema(a,e,t)}}const DATE_DATETIME_BETWEEN_VALUES=["last_year","this_year","next_year","last_quarter","this_quarter","next_quarter","last_month","this_month","next_month","last_week","this_week","next_week","yestday","today","tomorrow","last_7_days","last_30_days","last_60_days","last_90_days","last_120_days","next_7_days","next_30_days","next_60_days","next_90_days","next_120_days"],opMaps={equal:"=",not_equal:"!=",less:"<",less_or_equal:"<=",greater:">",greater_or_equal:">=",between:"between",not_between:"not_between",is_empty:"is_empty",is_not_empty:"is_not_empty",select_equals:"=",select_not_equals:"!=",select_any_in:"in",select_not_any_in:"<>",like:"contains",not_like:"notcontains",starts_with:"startswith",ends_with:"endswith"},isGroup=e=>_.has(e,"conjunction"),conditionGroupToFilters=e=>{const a=[],{conjunction:i,children:t}=e;return i&&t&&t.forEach(e=>{var t;0<a.length&&a.push(i),isGroup(e)?(t=conditionGroupToFilters(e))&&0<t.length&&a.push(t):(t=conditionItemToFilters(e))&&a.push(t)}),a},conditionItemToFilters=e=>{var t,{left:e,op:a,right:i}=e;if(e&&"field"===e.type&&a)return a.startsWith("between:")?(t=a.split(":"),[e.field,t[0],t[1]]):null!=i?[e.field,opMaps[a],i]:void 0},filterToConditionItem=t=>{var e;if(3===t.length)return"between"===(e=___default.default.findKey(opMaps,e=>e===t[1]))&&___default.default.includes(DATE_DATETIME_BETWEEN_VALUES,t[2])?{left:{type:"field",field:t[0]},op:e+":"+t[2]}:{left:{type:"field",field:t[0]},op:e,right:t[2]};console.warn("无效的filter:"+JSON.stringify(t))},filterObjectToArray=e=>!___default.default.isArray(e)&&___default.default.isObject(e)?[e.field,e.operation,e.value]:e,filtersToConditionGroup=e=>{e=filterObjectToArray(e);const t={conjunction:"and",children:[]};return e&&0!=e.length&&e.forEach(e=>{"or"===(e=filterObjectToArray(e))||"and"===e?t.conjunction=e:3===e.length&&-1==e.indexOf("and")&&-1==e.indexOf("or")?t.children.push(filterToConditionItem(e)):t.children.push(filtersToConditionGroup(e))}),t},conditionsToFilters=e=>conditionGroupToFilters(e),filtersToConditions=e=>filtersToConditionGroup(e),getSelectOptions=e=>{const a=[];return _$1.each(e.options.split("\n"),e=>{var t=e.split(":");2==t.length?a.push({label:t[0],value:t[1]}):a.push({label:e,value:e})}),a},getTdInputTpl=(e,t)=>{const a={label:!0===t&&e.name,name:e.code,mode:"horizontal",className:"m-none p-none",disabled:"readonly"===e.permission};switch(e.type){case"input":e.is_textarea?a.type="textarea":a.type="input-text";break;case"number":a.type="input-number";break;case"date":a.type="input-date";break;case"dateTime":a.type="input-datetime";break;case"checkbox":a.type="checkbox";break;case"email":a.type="input-email",a.validations={isEmail:!0};break;case"url":a.type="input-url",a.validations={isUrl:!0};break;case"password":a.type="input-password",a.showCounter=!0;break;case"select":a.type="select",a.options=getSelectOptions(e);break;case"user":case"group":a.type="input-text";break;case"radio":a.type="radios",a.options=getSelectOptions(e);break;case"multiSelect":a.type="checkboxes",a.options=getSelectOptions(e);break;case"odata":var i=e.formula.substr(1,e.formula.length-2);a.type="select",a.multiple=e.is_multiselect,a.labelField=i,a.valueField="$$",a.source={url:_$1.startsWith(e.url,"http")?e.url:"${context.rootUrl}"+e.url,method:"get",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};break;case"html":a.type="html";break;case"table":a.type="input-table",a.addable="readonly"!=e.permission,a.editable=a.addable,a.copyable=a.addable,a.columns=[],_$1.each(e.sfields,e=>{"hidden"!=e.type&&a.columns.push(getTdInputTpl(e,!0))});break;case"section":a.type="input-text"}return a},getTdField=(e,t)=>({background:"readonly"===e.permission?"":"rgba(255,255,0,.1)",colspan:"table"===e.type?4:3-2*(t-1),align:"left",className:"td-field",body:[getTdInputTpl(e)],style:{marginTop:"0",paddingTop:"0",paddingRight:"0",paddingBottom:"0",paddingLeft:"0",marginRight:"0",marginBottom:"0",marginLeft:"0"}}),getTdTitle=e=>({className:"td-title",align:"section"!=e.type?"center":"left",width:"section"!=e.type?"16%":"",colspan:"section"==e.type?4:"",body:[{type:"tpl",tpl:`<div style='font-size:20px'>${e.name}</div>`}]}),getTds=t=>{const a=[];return _$1.each(t,e=>{"table"!=e.type&&a.push(getTdTitle(e)),"section"!=e.type&&a.push(getTdField(e,t.length))}),a},getFormTrs=a=>{const t=[],i=[];let r=[];return _$1.each(a.fields,(e,t)=>{e.is_wide?(0!=r.length&&i.push(r),"table"==e.type&&i.push([Object.assign({},e,{type:"section"})]),(r=[]).push(e),i.push(r),r=[]):(r.push(e),2!=r.length&&t!==a.fields.length-1||(i.push(r),r=[]))}),_$1.each(i,e=>{t.push({background:"#F7F7F7",tds:getTds(e)})}),t},getFormTableView=e=>({type:"table-view",trs:getFormTrs(e),id:"u:047f3669468b"}),getFlowFormSchema=e=>({type:"page",body:[{type:"service",data:{beijing:"20",tianjing:"19"},body:[{type:"tpl",id:"u:f5bb0ad602a6",tpl:`<div style='font-size:20px'>${e.title}</div>`,inline:!0,wrapperComponent:"",style:{fontFamily:"",fontSize:12,textAlign:"center"}},getFormTableView(e)],id:"u:a381684e042b"}],id:"u:63849ea39e12",messages:{},pullRefresh:{},regions:["body"]}),registerRemoteAssets=async t=>{if(t&&0<t.length){let e=t;_$1.isString(e)&&(e=e.split(",")),await Builder.registerRemoteAssets(e);t=_$1.filter(Builder.registry["meta-components"],function(e){return e.componentName&&e.amis?.render});return _$1.map(t,e=>({componentType:e.componentType,componentName:e.componentName,...e.amis.render}))}return[]};var __assign=function(){return(__assign=Object.assign||function(e){for(var t,a=1,i=arguments.length;a<i;a++)for(var r in t=arguments[a])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},keyToPath=function(e){var r=[];return e.charCodeAt(0)===".".charCodeAt(0)&&r.push(""),e.replace(new RegExp("[^.[\\]]+|\\[(?:([^\"'][^[]*)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g"),function(e,t,a,i){return a?e=i.replace(/\\(\\)?/g,"$1"):t&&(e=t.trim()),r.push(e),""}),r};function createObject(e,t,a){var i=(e=e&&Object.isFrozen(e)?cloneObject(e):e)?Object.create(e,__assign(__assign({},a),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,a);return t&&isObject(t)&&Object.keys(t).forEach(function(e){return i[e]=t[e]}),i}function cloneObject(t,e){void 0===e&&(e=!0);var a=t&&t.__super?Object.create(t.__super,{__super:{value:t.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return e&&t&&Object.keys(t).forEach(function(e){return a[e]=t[e]}),a}function extendObject(e,t,a){var i=cloneObject(e,a=void 0===a?!0:a);return t&&Object.keys(t).forEach(function(e){return i[e]=t[e]}),i}function isObject(e){var t=typeof e;return e&&"string"!=t&&"number"!=t&&"boolean"!=t&&"function"!=t&&!Array.isArray(e)}function setVariable(e,t,a,i){if(t in(e=e||{}))e[t]=a;else{for(var r=!1!==i?keyToPath(t):[t],i=r.pop();r.length;){var s=r.shift();e=isPlainObject__default.default(e[s])?e[s]=__assign({},e[s]):(Array.isArray(e[s])?e[s]=e[s].concat():(e[s],e[s]={}),e[s])}e[i]=a}}function deleteVariable(e,t){if(e)if(e.hasOwnProperty(t))delete e[t];else{for(var a=keyToPath(t),t=a.pop();a.length;){var i=a.shift();if(!isPlainObject__default.default(e[i])){if(e[i])throw new Error("目标路径不是纯对象,不能修改");break}e=e[i]=__assign({},e[i])}e&&e.hasOwnProperty&&e.hasOwnProperty(t)&&delete e[t]}}var getDefaultRenderData=function(){var e=getSteedosAuth();return{context:{rootUrl:getRootUrl(),userId:e.userId,tenantId:e.spaceId,authToken:e.authToken,user:e},global:{userId:e.userId,spaceId:e.spaceId,user:e,now:new Date}}};exports.Field=index,exports.absoluteUrl=absoluteUrl,exports.amisRender=amisRender,exports.amisRootClick=amisRootClick,exports.cloneObject=cloneObject,exports.conditionsToFilters=conditionsToFilters,exports.createObject=createObject,exports.defaultsDeep=defaultsDeep,exports.deleteVariable=deleteVariable,exports.execute=execute,exports.executeButton=executeButton,exports.extendObject=extendObject,exports.fetchAPI=fetchAPI,exports.filtersToConditions=filtersToConditions,exports.getAmisObjectRelatedList=getAmisObjectRelatedList,exports.getApp=getApp,exports.getApps=getApps,exports.getAuthToken=getAuthToken,exports.getAuthorization=getAuthorization,exports.getButton=getButton,exports.getButtonVisible=getButtonVisible,exports.getButtonVisibleOn=getButtonVisibleOn$1,exports.getButtons=getButtons,exports.getCalendarSchema=getCalendarSchema,exports.getDefaultRenderData=getDefaultRenderData,exports.getEnv=getEnv,exports.getEnvs=getEnvs,exports.getEvn=getEvn,exports.getField=getField,exports.getFileSrc=getFileSrc,exports.getFlowFormSchema=getFlowFormSchema,exports.getFormPageInitSchema=getFormPageInitSchema,exports.getFormSchema=getFormSchema,exports.getImageSrc=getImageSrc,exports.getListPageInitSchema=getListPageInitSchema,exports.getListSchema=getListSchema,exports.getListViewButtons=getListViewButtons,exports.getListViewColumns=getListViewColumns,exports.getListViewFilter=getListViewFilter,exports.getListViewItemButtons=getListViewItemButtons,exports.getListViewSort=getListViewSort,exports.getListviewInitSchema=getListviewInitSchema,exports.getNotifications=getNotifications,exports.getObjectDetailButtons=getObjectDetailButtons,exports.getObjectDetailMoreButtons=getObjectDetailMoreButtons,exports.getObjectFieldsFilterBarSchema=getObjectFieldsFilterBarSchema,exports.getObjectFieldsFilterButtonSchema=getObjectFieldsFilterButtonSchema,exports.getObjectFieldsFilterFormSchema=getObjectFieldsFilterFormSchema,exports.getObjectListHeader=getObjectListHeader,exports.getObjectListHeaderFieldsFilterBar=getObjectListHeaderFieldsFilterBar,exports.getObjectListHeaderFirstLine=getObjectListHeaderFirstLine,exports.getObjectListHeaderSecordLine=getObjectListHeaderSecordLine,exports.getObjectRecordDetailHeader=getObjectRecordDetailHeader,exports.getObjectRecordDetailRelatedListHeader=getObjectRecordDetailRelatedListHeader,exports.getObjectRelated=getObjectRelated,exports.getObjectRelatedList=getObjectRelatedList,exports.getObjectRelatedListButtons=getObjectRelatedListButtons,exports.getObjectRelatedListHeader=getObjectRelatedListHeader,exports.getPage=getPage,exports.getRecord=getRecord,exports.getRecordDetailHeaderSchema=getRecordDetailHeaderSchema,exports.getRecordDetailRelatedListSchema=getRecordDetailRelatedListSchema,exports.getRecordDetailSchema=getRecordDetailSchema,exports.getRecordPageInitSchema=getRecordPageInitSchema,exports.getRecordPermissions=getRecordPermissions,exports.getRelatedFieldValue=getRelatedFieldValue,exports.getRelatedsCount=getRelatedsCount,exports.getRootUrl=getRootUrl,exports.getSearchableFieldsFilterSchema=getSearchableFieldsFilterSchema,exports.getSelectUserSchema=getSelectUserSchema,exports.getSpaceUsersPickerAmisSchema=getSpaceUsersPickerAmisSchema,exports.getSpaceUsersPickerSchema=getSpaceUsersPickerSchema,exports.getSteedosAuth=getSteedosAuth,exports.getTableSchema=getTableSchema,exports.getTenantId=getTenantId,exports.getUISchema=getUISchema,exports.getUserId=getUserId,exports.getViewSchema=getViewSchema,exports.isExpression=isExpression,exports.isObject=isObject,exports.lookupToAmis=lookupToAmis,exports.lookupToAmisPicker=lookupToAmisPicker,exports.lookupToAmisSelect=lookupToAmisSelect,exports.lookupToAmisSelectUser=lookupToAmisSelectUser,exports.markReadAll=markReadAll,exports.parseSingleExpression=parseSingleExpression,exports.registerRemoteAssets=registerRemoteAssets,exports.registerRenders=registerRenders,exports.setEnv=setEnv,exports.setEnvs=setEnvs,exports.setRootUrl=setRootUrl,exports.setSteedosAuth=setSteedosAuth,exports.setUISchemaFunction=setUISchemaFunction,exports.setVariable=setVariable,exports.standardButtonsTodo=standardButtonsTodo;
1154
+ `;return(await fetchAPI("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},markReadAll=async()=>fetchAPI("/api/v4/notifications/all/markReadAll",{method:"POST"}),PUBLIC_ENV={},setEnv=(e,t)=>{PUBLIC_ENV[e]=t},getEnv=e=>PUBLIC_ENV[e],setEnvs=e=>{_$1.map(e,(e,t)=>{PUBLIC_ENV[t]=e})},getEnvs=()=>PUBLIC_ENV;async function getSpaceUsersPickerAmisSchema(e,t,a){return{type:"picker",label:"人员",name:t,id:a.id,modalMode:"dialog",joinValues:!1,source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:space_users(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,name,email,mobile},count:space_users__count(filters:{__filters})}',$term:"$term",$self:"$$"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n var allowSearchFields = [\"name\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\n })\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n "},pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["switch-per-page","pagination"],defaultParams:{perPage:50},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"_id",label:"ID",type:"text",toggled:!1},{name:"name",label:"姓名",sortable:!0,searchable:!0,type:"text"},{name:"email",label:"邮件",sortable:!0,type:"text",searchable:!0},{name:"mobile",label:"手机",type:"text",sortable:!0,searchable:!0}],syncLocation:!1,keepItemSelectionOnPageChange:!0},labelField:"name",valueField:"_id",size:"lg",extractValue:!0,className:"m-0",labelClassName:"text-left"}}async function getSpaceUsersPickerSchema(e,t){var a=await getUISchema("space_users");return{uiSchema:a,amisSchema:await getSpaceUsersPickerAmisSchema(a,e,t)}}const DATE_DATETIME_BETWEEN_VALUES=["last_year","this_year","next_year","last_quarter","this_quarter","next_quarter","last_month","this_month","next_month","last_week","this_week","next_week","yestday","today","tomorrow","last_7_days","last_30_days","last_60_days","last_90_days","last_120_days","next_7_days","next_30_days","next_60_days","next_90_days","next_120_days"],opMaps={equal:"=",not_equal:"!=",less:"<",less_or_equal:"<=",greater:">",greater_or_equal:">=",between:"between",not_between:"not_between",is_empty:"is_empty",is_not_empty:"is_not_empty",select_equals:"=",select_not_equals:"!=",select_any_in:"in",select_not_any_in:"<>",like:"contains",not_like:"notcontains",starts_with:"startswith",ends_with:"endswith"},isGroup=e=>_.has(e,"conjunction"),conditionGroupToFilters=e=>{const a=[],{conjunction:i,children:t}=e;return i&&t&&t.forEach(e=>{var t;0<a.length&&a.push(i),isGroup(e)?(t=conditionGroupToFilters(e))&&0<t.length&&a.push(t):(t=conditionItemToFilters(e))&&a.push(t)}),a},conditionItemToFilters=e=>{var t,{left:e,op:a,right:i}=e;if(e&&"field"===e.type&&a)return a.startsWith("between:")?(t=a.split(":"),[e.field,t[0],t[1]]):null!=i?[e.field,opMaps[a],i]:void 0},filterToConditionItem=t=>{var e;if(3===t.length)return"between"===(e=___default.default.findKey(opMaps,e=>e===t[1]))&&___default.default.includes(DATE_DATETIME_BETWEEN_VALUES,t[2])?{left:{type:"field",field:t[0]},op:e+":"+t[2]}:{left:{type:"field",field:t[0]},op:e,right:t[2]};console.warn("无效的filter:"+JSON.stringify(t))},filterObjectToArray=e=>!___default.default.isArray(e)&&___default.default.isObject(e)?[e.field,e.operation,e.value]:e,filtersToConditionGroup=e=>{e=filterObjectToArray(e);const t={conjunction:"and",children:[]};return e&&0!=e.length&&e.forEach(e=>{"or"===(e=filterObjectToArray(e))||"and"===e?t.conjunction=e:3===e.length&&-1==e.indexOf("and")&&-1==e.indexOf("or")?t.children.push(filterToConditionItem(e)):t.children.push(filtersToConditionGroup(e))}),t},conditionsToFilters=e=>conditionGroupToFilters(e),filtersToConditions=e=>filtersToConditionGroup(e),registerRemoteAssets=async t=>{if(t&&0<t.length){let e=t;_$1.isString(e)&&(e=e.split(",")),await Builder.registerRemoteAssets(e);t=_$1.filter(Builder.registry["meta-components"],function(e){return e.componentName&&e.amis?.render});return _$1.map(t,e=>({componentType:e.componentType,componentName:e.componentName,...e.amis.render}))}return[]};var __assign=function(){return(__assign=Object.assign||function(e){for(var t,a=1,i=arguments.length;a<i;a++)for(var r in t=arguments[a])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},keyToPath=function(e){var r=[];return e.charCodeAt(0)===".".charCodeAt(0)&&r.push(""),e.replace(new RegExp("[^.[\\]]+|\\[(?:([^\"'][^[]*)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g"),function(e,t,a,i){return a?e=i.replace(/\\(\\)?/g,"$1"):t&&(e=t.trim()),r.push(e),""}),r};function createObject(e,t,a){var i=(e=e&&Object.isFrozen(e)?cloneObject(e):e)?Object.create(e,__assign(__assign({},a),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,a);return t&&isObject(t)&&Object.keys(t).forEach(function(e){return i[e]=t[e]}),i}function cloneObject(t,e){void 0===e&&(e=!0);var a=t&&t.__super?Object.create(t.__super,{__super:{value:t.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return e&&t&&Object.keys(t).forEach(function(e){return a[e]=t[e]}),a}function extendObject(e,t,a){var i=cloneObject(e,a=void 0===a?!0:a);return t&&Object.keys(t).forEach(function(e){return i[e]=t[e]}),i}function isObject(e){var t=typeof e;return e&&"string"!=t&&"number"!=t&&"boolean"!=t&&"function"!=t&&!Array.isArray(e)}function setVariable(e,t,a,i){if(t in(e=e||{}))e[t]=a;else{for(var r=!1!==i?keyToPath(t):[t],i=r.pop();r.length;){var s=r.shift();e=isPlainObject__default.default(e[s])?e[s]=__assign({},e[s]):(Array.isArray(e[s])?e[s]=e[s].concat():(e[s],e[s]={}),e[s])}e[i]=a}}function deleteVariable(e,t){if(e)if(e.hasOwnProperty(t))delete e[t];else{for(var a=keyToPath(t),t=a.pop();a.length;){var i=a.shift();if(!isPlainObject__default.default(e[i])){if(e[i])throw new Error("目标路径不是纯对象,不能修改");break}e=e[i]=__assign({},e[i])}e&&e.hasOwnProperty&&e.hasOwnProperty(t)&&delete e[t]}}var getDefaultRenderData=function(){var e=getSteedosAuth();return{context:{rootUrl:getRootUrl(),userId:e.userId,tenantId:e.spaceId,authToken:e.authToken,user:e},global:{userId:e.userId,spaceId:e.spaceId,user:e,now:new Date}}};const HIDE_COUNTER_SIGN_JUDGE_OPTIONS=!1,getJudgeOptions=async e=>{var e=e["step"],t=[];return"sign"===e.step_type?(t.push({label:"核准",value:"approved"}),t.push({label:"驳回",value:"rejected"})):"counterSign"===e.step_type&&1!=HIDE_COUNTER_SIGN_JUDGE_OPTIONS&&(t.push({label:"核准",value:"approved"}),t.push({label:"驳回",value:"rejected"}),t.push({label:"已阅",value:"readed"})),t},getJudgeInput=async e=>{e=await getJudgeOptions(e);if(0<e.length)return{type:"radios",label:!1,name:"judge",value:"approved",options:e,id:"u:444dbad76e90",required:!0,onEvent:{change:{weight:0,actions:[{componentId:"instance_approval",args:{value:{new_judge:"${event.data.value}",new_next_step:void 0,next_step:void 0}},actionType:"setValue"},{args:{judge:"${event.data.value}"},actionType:"broadcast",eventName:"approve_judge_change"}]}}}},getNextStepInput=async e=>({type:"grid",columns:[{body:[{type:"tpl",tpl:"下一步",inline:!0,wrapperComponent:"",id:"u:0a85de51480f"}],id:"u:bf75adfb544e",md:"auto",valign:"middle"},{body:[{type:"list-select",label:"",name:"next_step",id:"u:next_step",multiple:!1,required:!0,source:{url:"${context.rootUrl}/api/workflow/v2/nextStep",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},method:"post",messages:{},requestAdaptor:"let { context, judge } = api.data; if(!judge){judge='approved'}\nconst formValues = SteedosUI.getRef(api.data.$scopeId).getComponentById(\"instance_form\").getValues();\n\napi.data = {\nflowVersionId: context.flowVersion._id,\n instanceId: context._id,\n flowId: context.flow._id,\n step: context.step,\n judge: judge,\n values: formValues\n}\n\n\n return api;",adaptor:`
1155
+ payload.data = {
1156
+ options: _.map(payload.nextSteps, (item)=>{
1157
+ return {
1158
+ label: item.name,
1159
+ value: item
1160
+ }
1161
+ })
1162
+ };
1163
+ return payload;
1164
+ `,data:{context:"${context}",$scopeId:"${scopeId}",judge:"${new_judge}"}},onEvent:{change:{weight:0,actions:[{componentId:"instance_approval",args:{value:{new_next_step:"${event.data.value}"}},actionType:"setValue"},{args:{next_step:"${event.data.value}"},actionType:"broadcast",eventName:"approve_next_step_change"}]}}}],id:"u:4d3a884b437c"}],id:"u:016c56efe5fd",className:"b-a b-1x m-none p-xs",subFormMode:""}),getNextStepUsersInput=async e=>({type:"grid",columns:[{body:[{type:"tpl",tpl:"处理人",inline:!0,wrapperComponent:"",id:"u:3203cc281b3c"}],id:"u:8eece76a9e4c",md:"auto",valign:"middle"},{body:[Object.assign({},await amisLib.lookupToAmisPicker({name:"next_users",label:!1,reference_to:"space_users",reference_to_field:"user",multiple:!1},!1,{}),{name:"next_users",value:"",hiddenOn:"this.new_next_step.deal_type != 'pickupAtRuntime'",required:!0}),{type:"list-select",label:"",name:"next_users",id:"u:next_users",required:!0,multiple:!1,source:{url:"${context.rootUrl}/api/workflow/v2/nextStepUsers",method:"post",sendOn:"!!this.new_next_step && this.new_next_step.step_type != 'end'",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},messages:{},requestAdaptor:"console.log('======requestAdaptor====');\nconst { context, next_step, $scopeId } = api.data;\nconst formValues = SteedosUI.getRef($scopeId).getComponentById(\"instance_form\").getValues();\n\napi.data = {\n instanceId: context._id,\n nextStepId: next_step._id,\n values: formValues\n}\n\n\n return api;",adaptor:"\npayload.data = payload.nextStepUsers;\nreturn payload;",data:{"&":"$$",$scopeId:"$scopeId",context:"${context}",next_step:"${new_next_step}"}},labelField:"name",valueField:"id",hiddenOn:"this.new_next_step.deal_type === 'pickupAtRuntime'"}],id:"u:81a4913c61cc"}],id:"u:ffff15b76c89",className:"b-a b-1x p-xs m-b-none m-l-none m-r-none m-t-sm",subFormMode:"",hiddenOn:"!!!this.new_next_step || this.new_next_step?.step_type === 'end'"}),getPostSubmitRequestAdaptor=async e=>` const instanceForm = SteedosUI.getRef(api.data.$scopeId).getComponentById("instance_form");
1165
+ const formValues = instanceForm.getValues();
1166
+ const approveValues = SteedosUI.getRef(api.data.$scopeId).getComponentById("instance_approval").getValues();
1167
+ let nextUsers = approveValues.next_users;
1168
+ if(_.isString(nextUsers)){
1169
+ nextUsers = [approveValues.next_users];
1170
+ }
1171
+ const body = {Instances: [{
1172
+ _id: "${e._id}",
1173
+ flow: "${e.flow._id}",
1174
+ applicant: formValues.applicant,
1175
+ submitter: formValues.submitter,
1176
+ traces: [{
1177
+ _id: "${e.trace._id}",
1178
+ step: "${e.step._id}",
1179
+ approves: [{
1180
+ _id: "${e.approve._id}",
1181
+ next_steps: [{
1182
+ step: approveValues.next_step._id,
1183
+ users: nextUsers,
1184
+ }],
1185
+ description: approveValues.suggestion,
1186
+ values: formValues
1187
+ }]
1188
+ }]
1189
+ }]};
1190
+ api.data = body;
1191
+ return api;
1192
+ `,getPostEngineRequestAdaptor=async e=>`
1193
+ const formValues = SteedosUI.getRef(api.data.$scopeId).getComponentById("instance_form").getValues();
1194
+ const approveValues = SteedosUI.getRef(api.data.$scopeId).getComponentById("instance_approval").getValues();
1195
+ let nextUsers = approveValues.next_users;
1196
+ if(_.isString(nextUsers)){
1197
+ nextUsers = [approveValues.next_users];
1198
+ }
1199
+ const body = {Approvals: [{
1200
+ instance: "${e._id}",
1201
+ judge: approveValues.judge,
1202
+ trace: "${e.approve.trace}",
1203
+ _id: "${e.approve._id}",
1204
+ next_steps: [{
1205
+ step: approveValues.next_step._id,
1206
+ users: nextUsers,
1207
+ }],
1208
+ description: approveValues.suggestion,
1209
+ values: formValues
1210
+ }]};
1211
+ api.data = body;
1212
+ return api;
1213
+ `,getSubmitActions=async e=>{console.log("getSubmitActions instance====",e);let t="",a="";if("draft"===e.state)t="/api/workflow/submit",a=await getPostSubmitRequestAdaptor(e);else{if("pending"!==e.state)return null;t="/api/workflow/engine",a=await getPostEngineRequestAdaptor(e)}return[{componentId:"",args:{},actionType:"custom",script:`
1214
+ console.log("======getSubmitActions");
1215
+ const form = event.context.scoped.getComponentById("instance_form");
1216
+ return form.validate().then((instanceFormValidate)=>{
1217
+ event.setData({...event.data, instanceFormValidate})
1218
+ })
1219
+ `},{componentId:"",args:{},actionType:"custom",script:`
1220
+ const form = event.context.scoped.getComponentById("instance_approval");
1221
+ return form.validate().then((approvalFormValidate)=>{
1222
+ event.setData({...event.data, approvalFormValidate})
1223
+ })
1224
+ `,expression:"${event.data.instanceFormValidate}"},{componentId:"",args:{api:{url:"${context.rootUrl}"+t,method:"post",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:a},messages:{success:"提交成功!"}},actionType:"ajax",expression:"${event.data.instanceFormValidate && event.data.approvalFormValidate}"},{componentId:"",args:{blank:!1,url:`/workflow/space/${amisLib.getSteedosAuth().tenantId}/`+e.box},actionType:"url",expression:"${event.data.instanceFormValidate && event.data.approvalFormValidate}"}]},getApprovalDrawerSchema=async e=>({type:"drawer",overlay:!1,resizable:!1,size:"sm",title:""+e.step.name,className:"approval-drawer absolute",body:[{type:"form",debug:!1,id:"instance_approval",body:[await getJudgeInput(e),{type:"textarea",label:!1,name:"suggestion",id:"u:cd344f708ddc",minRows:3,maxRows:20,placeholder:"请填写意见",required:"${judge} === rejected"},await getNextStepInput(),await getNextStepUsersInput()],onEvent:{approve_judge_change:{actions:[{actionType:"reload",componentId:"u:next_step",args:{}}]},validateError:{weight:0,actions:[{componentId:"",args:{msgType:"info",position:"top-right",closeButton:!0,showIcon:!0,title:"提交失败",msg:"请填写必填字段"},actionType:"toast"}]}}}],id:"u:8861156e0b23",position:"bottom",actions:[{type:"button",label:"提交",onEvent:{click:{actions:await getSubmitActions(e)}},id:"u:f6f8c3933f6c",level:"primary"},{type:"button",label:"取消",onEvent:{click:{actions:[{componentId:"",args:{},actionType:"closeDrawer"}]}},id:"u:127ff1da7283"}]}),getAttachments=async e=>({type:"panel",className:"border-none bg-none shadow-none",headerClassName:"p-0 border-none mb-1",bodyClassName:"p-0",title:[await getAttachmentUploadInput(e)],body:[{type:"service",id:"u:attachmentsService",api:{method:"post",url:"${context.rootUrl}/graphql",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:`
1225
+ api.data.query = 'query{attachments:cfs_instances_filerecord(filters: [["metadata.instance", "=", "${e._id}"], "metadata.current", "=", true]){ _id,original,metadata}}';
1226
+ return api;
1227
+ `},body:[{type:"list",source:"${attachments}",title:!1,listItem:{body:[{type:"tpl",inline:!0,tpl:"<a href='${context.rootUrl}/api/files/instances/${_id}?download=true' target='_blank'>${original.name}</a>"}],actions:[{icon:"fa fa-eye",type:"button",id:"u:ef52fa8940a8"}],id:"u:550b3fdc8788"},id:"u:f538be693fad"}]}]}),getAttachmentUploadInput=async e=>{var t;return e.approve?(t=amisLib.getSteedosAuth(),{type:"form",title:"表单",body:[{type:"input-file",labelClassName:"antd-List-heading",className:"flex items-center",label:"附件",mode:"inline",name:"file",id:"u:a58d02614e04",btnLabel:"上传",btnClassName:"m-0",multiple:!0,maxLength:10,submitType:"asUpload",uploadType:"fileReceptor",proxy:!1,drag:!1,autoUpload:!0,useChunk:!1,joinValues:!1,extractValue:!1,valueField:"version_id",receiver:{url:"${context.rootUrl}/api/v4/instances/s3",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},method:"post",messages:{},dataType:"form-data",requestAdaptor:`
1228
+ api.data.append('space', '${e.space}');
1229
+ api.data.append('instance', '${e._id}');
1230
+ api.data.append('approve', '${e.approve?._id}');
1231
+ api.data.append('owner', '${t.userId}');
1232
+ api.data.append('owner_name', '${t.name}');
1233
+ return api;
1234
+ `},onEvent:{success:{weight:0,actions:[{componentId:"u:5f901c0b917b",args:{},actionType:"clear"},{componentId:"",args:{msgType:"success",position:"top-right",closeButton:!0,showIcon:!0,msg:"上传成功"},actionType:"toast"},{componentId:"u:attachmentsService",args:{},actionType:"reload"}]}}}],id:"u:5f901c0b917b",wrapWithPanel:!1}):{type:"tpl",tpl:"附件"}},getRelatedRecords=async e=>{if(e.record_ids&&!_$1.isEmpty(e.record_ids))return _$1.map(e.record_ids,e=>({type:"tpl",tpl:`<a href='/app/-/${e.o}/view/${e.ids[0]}' target='_blank'>相关台账信息</a>`}))},getRelatedInstances=async e=>{return{type:"list",name:"relatedInstances",source:"${related_instances}",title:"相关文件",listItem:{body:[{type:"tpl",inline:!0,tpl:`<a href='\${context.rootUrl}/workflow/space/${amisLib.getSteedosAuth().tenantId}/view/readonly/\${_id}' target='_blank'>\${name}</a>`}],actions:[{icon:"fa fa-eye",type:"button",id:"u:ef52fa8940a8"}],id:"u:550b3fdc8788"},id:"related_instances"}},getInstanceApprovalHistory=async()=>({type:"table",headerClassName:"hidden",title:"签批历程",source:"${historyApproves}",className:"m-b-none instance-approve-history",columnsTogglable:!1,footable:{expand:"all"},columns:[{name:"name",label:"name"},{name:"user_name",label:"user_name",type:"tpl",tpl:"<div><div>${opinion}</div>${user_name}</div>"},{name:"finish_date",label:"finish_date",classNameExpr:"<%= data.finish_date == '已读' ? 'text-[blue]' : (data.finish_date == '未处理' ? 'text-[red]' : '') %>"},{name:"judge",label:"judge",classNameExpr:"<%= data.judge == '已核准' ? 'text-green-600' : (data.judge == '已驳回' ? 'text-[red]' : '') %>"}]}),getSelectOptions=e=>{const a=[];return _$1.each(e.options.split("\n"),e=>{var t=e.split(":");2==t.length?a.push({label:t[0],value:t[1]}):a.push({label:e,value:e})}),a},isOpinionField$1=e=>{e=e.formula;return-1<e?.indexOf("{traces.")||-1<e?.indexOf("{signature.traces.")||-1<e?.indexOf("{yijianlan:")||-1<e?.indexOf('{"yijianlan":')||-1<e?.indexOf("{'yijianlan':")},getFieldEditTpl=async(e,t)=>{var a,i={label:!0===t&&e.name,name:e.code,mode:"horizontal",className:"m-none p-none form-control",disabled:"editable"!==e.permission,required:e.is_required};if(isOpinionField$1(e))i.type="input-group",i.body=[{type:"textarea",inputClassName:"b-r-none p-r-none",name:"input-group",id:"yijian-"+e.code,minRows:3,maxRows:20,mode:"normal",size:"full"},{type:"button",label:"签批",level:"link",id:"u:2592111d236d",block:!1,onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:""+(e.name||e.code),body:[{type:"form",title:"表单",body:[{label:"",type:"textarea",name:"yijian",id:"u:1d5a60623000",minRows:6,maxRows:20,mode:"normal",placeholder:"请填写意见"},{type:"grid",columns:[{body:[{type:"button",label:"已阅",onEvent:{click:{actions:[{componentId:"u:1d5a60623000",args:{valueInput:"已阅",value:"已阅"},actionType:"setValue"}]}},id:"u:13498f8d2882",level:"link",className:"m-r"},{type:"button",label:"已办",onEvent:{click:{actions:[{componentId:"u:1d5a60623000",args:{valueInput:"已办",value:"已办"},actionType:"setValue"}]}},id:"u:cfa2e3c54a21",level:"link",className:"m-r"},{type:"button",label:"同意",onEvent:{click:{actions:[{componentId:"u:1d5a60623000",args:{valueInput:"同意",value:"同意"},actionType:"setValue"}]}},id:"u:06e0037dcd23",level:"link",className:"m-r"},{type:"button",label:"其他常用意见",onEvent:{click:{actions:[]}},id:"u:3a781bc550a2",level:"link",className:"m-r"}],id:"u:3def7a5b7cd5"}],id:"u:ecbefa51b638"}],id:"u:dd32ae67b5c7"}],id:"u:a5d06d3a61b9",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,actions:[{type:"button",label:"确认",onEvent:{click:{actions:[{componentId:"yijian-"+e.code,args:{valueInput:"${yijian}",value:"${yijian}"},actionType:"setValue"},{componentId:"",args:{},actionType:"closeDialog"}]}},id:"u:87e22efe707a",level:"primary"},{type:"button",label:"取消",onEvent:{click:{actions:[{componentId:"",args:{},actionType:"closeDialog"}]}},id:"u:d0e6550a848e"}]}}],weight:0}},className:"instance-sign-text-btn"}];else switch(e.type){case"input":e.is_textarea?i.type="textarea":i.type="input-text";break;case"number":i.type="input-number";break;case"date":i.type="input-date";break;case"dateTime":i.type="input-datetime";break;case"checkbox":i.type="checkbox";break;case"email":i.type="input-email",i.validations={isEmail:!0};break;case"url":i.type="input-url",i.validations={isUrl:!0};break;case"password":i.type="input-password",i.showCounter=!0;break;case"select":i.type="select",i.options=getSelectOptions(e);break;case"user":var r=await amisLib.lookupToAmis({name:e.code,label:e.name,reference_to:"space_users",reference_to_field:"user",multiple:e.is_multiselect},!1,{});Object.assign(i,r);break;case"group":r=await amisLib.lookupToAmis({name:e.code,label:e.name,reference_to:"organizations",multiple:e.is_multiselect},!1,{});Object.assign(i,r);break;case"radio":i.type="radios",i.options=getSelectOptions(e);break;case"multiSelect":i.type="checkboxes",i.options=getSelectOptions(e);break;case"odata":r=(r=e.formula.substr(1,e.formula.length-2)).substr(r.indexOf(".")+1);i.type="select",i.multiple=e.is_multiselect,i.source={url:_$1.startsWith(e.url,"http")?e.url:"${context.rootUrl}"+e.url,method:"get",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`
1235
+ payload.data = {
1236
+ options: _.map(payload.value, (item)=>{
1237
+ const value = item;
1238
+ item["@label"] = item["${r}"]
1239
+ delete item['@odata.editLink'];
1240
+ delete item['@odata.etag'];
1241
+ delete item['@odata.id'];
1242
+ return {
1243
+ label: item["@label"],
1244
+ value: value
1245
+ }
1246
+ })
1247
+ }
1248
+ return payload;
1249
+ `};break;case"html":i.type=i.disabled?"html":"input-rich-text";break;case"table":i.type="input-table",i.addable="editable"===e.permission,i.editable=i.addable,i.copyable=i.addable,i.columns=[];for(const s of e.fields)"hidden"!=s.type&&(a=await getTdInputTpl(s,!0),i.columns.push(a));break;case"section":i.type="input-text"}return i},getFieldReadonlyTpl=async(e,t)=>{var a,i={label:!0===t&&e.name,name:e.code,mode:"horizontal",className:"m-none p-none form-control"};if(_$1.includes(["text"],e.type))i.type="static-"+e.type;else if("select"===e.type){t=getSelectOptions(e);const r={};_$1.each(t,e=>{r[e.value]=e.label}),i.type="static",i.tpl=`<% var options = ${JSON.stringify(r)}; return options?.[data.${e.code}] || ''%>`}else if("odata"===e.type)i.type="static",i.tpl=`<div>\${${e.code}['@label']}</div>`;else if("checkbox"===e.type)i.type="static",i.tpl=`\${${e.code} ? '是': '否'}`;else if("email"===e.type)i.type="static",i.tpl=`<a href="mailto:\${${e.code}}">\${${e.code}}</a>`;else if("url"===e.type)i.type="static",i.tpl=`<a href="\${${e.code}}" target="_blank">\${${e.code}}</a>`;else if("password"===e.type)i.type="static",i.tpl="******";else if("dateTime"===e.type)i.type="static",i.tpl=`<%=date(new Date(data.${e.code}), 'YYYY-MM-DD HH:mm') %>`;else if("user"===e.type)i.type="static",e.is_multiselect?i.tpl=`\${_.map(${e.code}, 'name')}`:i.tpl=`\${${e.code}?.name}`;else if("group"===e.type)i.type="static",i.tpl=`\${${e.code}.name}`;else if("table"===e.type){i.type="input-table",i.addable="editable"===e.permission,i.editable=i.addable,i.copyable=i.addable,i.columns=[];for(const s of e.fields)"hidden"!=s.type&&(a=await getTdInputTpl(s,!0),i.columns.push(a))}else"html"===e.type?i.type="tpl":i.type="static";return i},getTdInputTpl=async(e,t)=>{return("editable"===e.permission?getFieldEditTpl:getFieldReadonlyTpl)(e,t)},getTdField=async(e,t)=>(console.log("getTdField",e,t),{background:"editable"!==e.permission?"#FFFFFF":"rgba(255,255,0,.1)",colspan:"table"===e.type?4:3-2*(t-1),align:"left",className:"td-field",width:"32%",body:[await getTdInputTpl(e)],style:{marginTop:"0",paddingTop:"0",paddingRight:"0",paddingBottom:"0",paddingLeft:"0",marginRight:"0",marginBottom:"0",marginLeft:"0",borderLeftColor:"#000000",borderTopColor:"#000000",borderRightColor:"#000000",borderBottomColor:"#000000"}}),getTdTitle=e=>({className:"td-title",align:"section"!=e.type?"center":"left",width:"section"!=e.type?"16%":"",colspan:"section"==e.type?4:"",background:"#FFFFFF",body:[{type:"tpl",tpl:`<div>${e.name||e.code} ${e.is_required?'<span class="antd-Form-star">*</span>':""}</div>`}],style:{borderLeftColor:"#000000",borderTopColor:"#000000",borderRightColor:"#000000",borderBottomColor:"#000000"}}),getTds=async e=>{var t=[];for(const a of e)"table"!=a.type&&t.push(getTdTitle(a)),"section"!=a.type&&t.push(await getTdField(a,e.length));return t},getFormTrs=async e=>{var t=[];const a=[];let i=[],r=[];_$1.each(e.fields,e=>{r.push(e),"section"===e.type&&e.fields&&(r=r.concat(e.fields))}),_$1.each(r,(e,t)=>{e.is_wide?(0!=i.length&&a.push(i),"table"==e.type&&a.push([Object.assign({},e,{type:"section"})]),(i=[]).push(e),a.push(i),i=[]):(i.push(e),2!=i.length&&t!==r.length-1||(a.push(i),i=[]))});for(const i of a)t.push({background:"#F7F7F7",tds:await getTds(i)});return console.log("trsSchema",t),t},getFormTableView=async e=>({type:"table-view",className:"instance-form-view",trs:await getFormTrs(e),id:"u:047f3669468b"}),getApplicantTableView=async e=>{let t=null;return{type:"table-view",className:"instance-applicant-view",trs:[{background:"#FFFFFF",tds:[{className:"td-title",background:"#FFFFFF",align:"left",width:"16%",colspan:"",body:[{type:"tpl",tpl:"<div>提交人</div>",id:"u:ee62634201bf"}],id:"u:6c24c1bb99c9",style:{padding:"none"}},{background:"#FFFFFF",colspan:1,align:"left",className:"td-field",width:"32%",body:[t="draft"===e.state?Object.assign({name:"applicant",value:amisLib.getSteedosAuth().userId,disabled:"draft"!==e.box},await amisLib.lookupToAmis({name:"applicant",label:!1,reference_to:"space_users",reference_to_field:"user",multiple:!1},!1,{})):{label:!1,mode:"horizontal",className:"m-none p-none",disabled:!0,type:"tpl",tpl:"<div>${applicant_name}</div>",id:"u:2016b04355f4"}],id:"u:45d65d91905c"},{className:"td-title",background:"#FFFFFF",align:"left",width:"16%",colspan:"",body:[{type:"tpl",tpl:"<div>提交日期</div>",id:"u:6d0a7763d527"}],id:"u:c8b8214ac931",style:{padding:"none"}},{background:"#FFFFFF",colspan:1,align:"left",className:"td-field",width:"32%",body:[{label:!1,mode:"horizontal",className:"m-none p-none",disabled:!0,type:"tpl",inputFormat:"YYYY-MM-DD",valueFormat:"YYYY-MM-DDT00:00:00.000[Z]",tpl:"<div>${submit_date}</div>",id:"u:2016b04355f4"}],id:"u:81b07d82a5e4"}]}],id:"u:047f3669468b",style:{borderLeftStyle:"none",borderTopStyle:"none",borderRightStyle:"none",borderBottomStyle:"none"}}},getApproveButton=async e=>!e.approve||"inbox"!=e.box&&"draft"!=e.box?null:{type:"button",label:"签批",onEvent:{click:{actions:[{componentId:"",args:{},actionType:"drawer",drawer:await getApprovalDrawerSchema(e)}]}},id:"u:cc1afbdc3868",level:"primary",className:"approve-button w-14 h-14 rounded-full fixed bottom-4 right-4 shadow-lg text-white text-base text-center font-semibold bg-blue-500 p-0"},getFlowFormSchema=async(e,t)=>({type:"page",name:"instancePage",className:"steedos-amis-instance-view",title:{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"instances",recordId:e._id,id:"u:e6b2adbe0e21",showRecordTitle:!1,recordLoaded:!0,className:"p-0 m-0 p0 m0"},css:{".instance-approve-history .antd-Table-table thead":{display:"none"},".instance-approve-history .antd-Table-heading":{"font-size":"14px","font-weight":"500","padding-left":"0px"},".antd-List-heading":{"font-size":"14px","font-weight":"500"}},body:[await getAttachments(e),await getRelatedInstances(),await getRelatedRecords(e),{type:"form",debug:!1,wrapWithPanel:!1,body:[{type:"tpl",id:"u:f5bb0ad602a6",tpl:`<div class="instance-name">${e.title}</div>`,inline:!0,wrapperComponent:"",style:{fontFamily:"",fontSize:12,textAlign:"center"}},await getFormTableView(e),await getApplicantTableView(e)],id:"instance_form",onEvent:{validateError:{weight:0,actions:[{componentId:"",args:{msgType:"info",position:"top-right",closeButton:!0,showIcon:!0,title:"提交失败",msg:"请填写必填字段"},actionType:"toast"}]}}},await getInstanceApprovalHistory(),await getApproveButton(e)],id:"u:63849ea39e12",messages:{},pullRefresh:{},regions:["body","header"],onEvent:{inited:{weight:0,actions:[{componentId:"u:cc1afbdc3868",actionType:"click"}]}},initApi:{url:"${context.rootUrl}/graphql",method:"post",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},messages:{},requestAdaptor:`
1250
+ const { context } = api.data;
1251
+ api.data = {
1252
+ query: \`
1253
+ {
1254
+ instance: instances__findOne(id:"${e._id}"){
1255
+ related_instances: related_instances__expand{
1256
+ _id,
1257
+ name
1258
+ }
1259
+ }
1260
+ }
1261
+ \`
1262
+ }
1263
+ return api;
1264
+ `,adaptor:`
1265
+ console.log("======adaptor", payload);
1266
+ payload.data = {
1267
+ related_instances: payload.data.instance.related_instances
1268
+ };
1269
+ return payload;
1270
+ `,data:{context:"${context}",judge:"${new_judge}"}},initFetch:!0}),isOpinionField=e=>-1<e?.indexOf("{traces.")||-1<e?.indexOf("{signature.traces.")||-1<e?.indexOf("{yijianlan:")||-1<e?.indexOf('{"yijianlan":')||-1<e?.indexOf("{'yijianlan':"),getOpinionFieldStepsName=(field,top_keywords)=>{const field_formula=field.formula;var foo1,opinionFields,opinionFields=new Array;return isOpinionField(field_formula)&&field_formula&&(foo1=field_formula.split(";"),foo1.forEach(function(foo){var json_formula,s1,sf,_ref,_ref1,json_formula={};try{json_formula=eval("("+foo+")")}catch(_error){json_formula={}}return null!=json_formula&&json_formula.yijianlan?(sf={},sf.stepName=json_formula.yijianlan.step,sf.image_sign=json_formula.yijianlan.image_sign||!1,sf.only_cc_opinion=json_formula.yijianlan.only_cc||!1,sf.default_description=json_formula.yijianlan.default,sf.only_handler=json_formula.yijianlan.only_handler,sf.top_keywords=json_formula.yijianlan.top_keywords||top_keywords,opinionFields.push(sf)):-1<(null!=field_formula?field_formula.indexOf("{traces."):void 0)||-1<(null!=field_formula?field_formula.indexOf("{signature.traces."):void 0)?(sf={only_cc_opinion:!1,image_sign:!1,top_keywords:top_keywords},-1<foo.indexOf("{signature.")&&(sf.image_sign=!0,foo=foo.replace("{signature.","")),s1=foo.replace("{","").replace("}",""),1<s1.split(".").length&&(sf.stepName=s1.split(".")[1],0<opinionFields.filterProperty("stepName",sf.stepName).length?null!=(_ref=opinionFields.findPropertyByPK("stepName",sf.stepName))&&(_ref.only_cc_opinion=!0):2<s1.split(".").length&&"cc"===(null!=(_ref1=s1.split(".")[2])?_ref1.toLocaleLowerCase():void 0)&&(sf.only_cc_opinion=!0)),opinionFields.push(sf)):void 0})),opinionFields},getTrace=({instance:e,traceId:t})=>_$1.find(e.traces,e=>e._id===t),getUserApprove=({instance:e,userId:t})=>{var a=_$1.find(e.traces,e=>1!=e.is_finished);let i=null;if((i=a?_$1.find(a.approves,e=>1!=e.is_finished&&e.handler==t):i)&&"cc"!=i.type||___default.default.each(e.traces,function(e){___default.default.each(e.approves,function(e){"cc"==e.type&&e.handler==t&&0==e.is_finished&&(i=e)})}),i)return i._id&&(i.id=i._id),i},getApproveValues=({instance:e,trace:t,step:a,approve:i,box:r})=>{let s=null;return s=(!i||"cc"===i.type||"draft"!==r&&("inbox"!==r||"counterSign"==a.step_type||a.cc_has_edit_permission&&!t.is_finished||_$1.isEmpty(i.values))?e:i).values},getFlowVersion=t=>t.flow.current._id===t.flow_version?t.flow.current:_$1.find(t.flow.historys,e=>e._id===t.flow_version),getFormVersion=t=>t.form.current._id===t.form_version?t.form.current:_$1.find(t.form.historys,e=>e._id===t.form_version),getStep=({flowVersion:e,stepId:t})=>_$1.find(e.steps,e=>e._id===t),getLastCCStep=({traces:t},e)=>{for(var a=e,i=null,r=null,s=t.length-1;0<=s;)!i&&t[s].is_finished&&___default.default.each(t[s].approves,function(e){i||(i=!e.is_finished||e.user!==a||e.type&&"cc"!=e.type||!["approved","submitted","rejected"].includes(e.judge)?i:e.trace)&&(r=t[s].step)}),s--;return r},isCurrentStepOpinionField=(e,t)=>___default.default.includes(___default.default.map(getOpinionFieldStepsName(e),"stepName"),t?.name),getInstanceInfo=async({instanceId:e,box:t})=>{var a=amisLib.getSteedosAuth().userId,i=await amisLib.fetchAPI("/graphql",{method:"post",body:JSON.stringify({query:`{
1271
+ instance: instances__findOne(id:"${e}"){
1272
+ _id,
1273
+ space,
1274
+ name,
1275
+ state,
1276
+ values,
1277
+ applicant,
1278
+ cc_users,
1279
+ applicant_name,
1280
+ submitter,
1281
+ submit_date,
1282
+ record_ids,
1283
+ forward_from_instance,
1284
+ related_instances: related_instances__expand{
1285
+ _id,
1286
+ name
1287
+ },
1288
+ traces,
1289
+ form_version,
1290
+ form:form__expand{
1291
+ _id,
1292
+ name
1293
+ current,
1294
+ historys
1295
+ },
1296
+ flow_version,
1297
+ flow:flow__expand{
1298
+ _id,
1299
+ name,
1300
+ perms,
1301
+ current,
1302
+ historys
1303
+ }
1304
+ }
1305
+ }
1306
+ `})});let r=null,s=null,o=null;var n,l,d,i=i.data.instance;if(i)return"inbox"!==t&&"draft"!==t||(r=getUserApprove({instance:i,userId:a})),console.log("getInstanceInfo",t,r,a),n=getFlowVersion(i),l=getFormVersion(i),r&&(s=getTrace({instance:i,traceId:r.trace}),o=getStep({flowVersion:n,stepId:s.step})),a=getLastCCStep(i,a),d=getApproveValues({instance:i,trace:s,step:o,approve:r,box:t}),console.log("fields",___default.default.map(l.fields,e=>Object.assign({},e,{permission:o?.permissions[e.code]||(isCurrentStepOpinionField(e,o)?"editable":"")}))),console.log("step",o),{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.default.map(l.fields,e=>Object.assign({},e,{permission:o?.permissions[e.code]||(isCurrentStepOpinionField(e,o)?"editable":"")})),flowVersion:n,formVersion:l,step:o,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.default.map(i.traces,e=>Object.assign({children:___default.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:""}))}};exports.Field=index,exports.absoluteUrl=absoluteUrl,exports.amisRender=amisRender,exports.amisRootClick=amisRootClick,exports.cloneObject=cloneObject,exports.conditionsToFilters=conditionsToFilters,exports.createObject=createObject,exports.defaultsDeep=defaultsDeep,exports.deleteVariable=deleteVariable,exports.execute=execute,exports.executeButton=executeButton,exports.extendObject=extendObject,exports.fetchAPI=fetchAPI,exports.filtersToConditions=filtersToConditions,exports.getApp=getApp,exports.getApps=getApps,exports.getAuthToken=getAuthToken,exports.getAuthorization=getAuthorization,exports.getButton=getButton,exports.getButtonVisible=getButtonVisible,exports.getButtonVisibleOn=getButtonVisibleOn$1,exports.getButtons=getButtons,exports.getCalendarSchema=getCalendarSchema,exports.getDefaultRenderData=getDefaultRenderData,exports.getEnv=getEnv,exports.getEnvs=getEnvs,exports.getEvn=getEvn,exports.getField=getField,exports.getFileSrc=getFileSrc,exports.getFlowFormSchema=getFlowFormSchema,exports.getFormPageInitSchema=getFormPageInitSchema,exports.getFormSchema=getFormSchema,exports.getImageSrc=getImageSrc,exports.getInstanceInfo=getInstanceInfo,exports.getListPageInitSchema=getListPageInitSchema,exports.getListSchema=getListSchema,exports.getListViewButtons=getListViewButtons,exports.getListViewColumns=getListViewColumns,exports.getListViewFilter=getListViewFilter,exports.getListViewItemButtons=getListViewItemButtons,exports.getListViewSort=getListViewSort,exports.getListviewInitSchema=getListviewInitSchema,exports.getNotifications=getNotifications,exports.getObjectDetailButtons=getObjectDetailButtons,exports.getObjectDetailMoreButtons=getObjectDetailMoreButtons,exports.getObjectFieldsFilterBarSchema=getObjectFieldsFilterBarSchema,exports.getObjectFieldsFilterButtonSchema=getObjectFieldsFilterButtonSchema,exports.getObjectFieldsFilterFormSchema=getObjectFieldsFilterFormSchema,exports.getObjectListHeader=getObjectListHeader$1,exports.getObjectListHeaderFieldsFilterBar=getObjectListHeaderFieldsFilterBar,exports.getObjectListHeaderFirstLine=getObjectListHeaderFirstLine,exports.getObjectListHeaderSecordLine=getObjectListHeaderSecordLine,exports.getObjectRecordDetailHeader=getObjectRecordDetailHeader,exports.getObjectRecordDetailRelatedListHeader=getObjectRecordDetailRelatedListHeader,exports.getObjectRelated=getObjectRelated,exports.getObjectRelatedList=getObjectRelatedList,exports.getObjectRelatedListButtons=getObjectRelatedListButtons,exports.getObjectRelatedListHeader=getObjectRelatedListHeader,exports.getPage=getPage,exports.getRecord=getRecord,exports.getRecordDetailHeaderSchema=getRecordDetailHeaderSchema,exports.getRecordDetailRelatedListSchema=getRecordDetailRelatedListSchema,exports.getRecordDetailSchema=getRecordDetailSchema,exports.getRecordPageInitSchema=getRecordPageInitSchema,exports.getRecordPermissions=getRecordPermissions,exports.getRelatedFieldValue=getRelatedFieldValue,exports.getRelatedListSchema=getRelatedListSchema,exports.getRelatedsCount=getRelatedsCount,exports.getRootUrl=getRootUrl,exports.getSearchableFieldsFilterSchema=getSearchableFieldsFilterSchema,exports.getSelectUserSchema=getSelectUserSchema,exports.getSpaceUsersPickerAmisSchema=getSpaceUsersPickerAmisSchema,exports.getSpaceUsersPickerSchema=getSpaceUsersPickerSchema,exports.getSteedosAuth=getSteedosAuth,exports.getTableSchema=getTableSchema,exports.getTenantId=getTenantId,exports.getUISchema=getUISchema,exports.getUserId=getUserId,exports.getViewSchema=getViewSchema,exports.isExpression=isExpression,exports.isObject=isObject,exports.lookupToAmis=lookupToAmis,exports.lookupToAmisPicker=lookupToAmisPicker,exports.lookupToAmisSelect=lookupToAmisSelect,exports.lookupToAmisSelectUser=lookupToAmisSelectUser,exports.markReadAll=markReadAll,exports.parseSingleExpression=parseSingleExpression,exports.registerRemoteAssets=registerRemoteAssets,exports.registerRenders=registerRenders,exports.setEnv=setEnv,exports.setEnvs=setEnvs,exports.setRootUrl=setRootUrl,exports.setSteedosAuth=setSteedosAuth,exports.setUISchemaFunction=setUISchemaFunction,exports.setVariable=setVariable,exports.standardButtonsTodo=standardButtonsTodo;
1125
1307
  //# sourceMappingURL=index.cjs.js.map