@steedos-widgets/amis-lib 1.0.18 → 1.0.20

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.umd.js CHANGED
@@ -1,4 +1,4 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("lodash"),require("lodash/isPlainObject")):"function"==typeof define&&define.amd?define(["exports","lodash","lodash/isPlainObject"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["amis-lib"]={},e._$1,e.isPlainObject)}(this,function(e,b,t){window;function q(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function P(a){var r;return a&&a.__esModule?a:(r=Object.create(null),a&&Object.keys(a).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(a,e),Object.defineProperty(r,e,t.get?t:{enumerable:!0,get:function(){return a[e]}}))}),r.default=a,Object.freeze(r))}var g=P(b),u=q(b),L=q(t);const B=[],R=(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("?"),r=e.indexOf("#");let i=~a?e.substring(0,a):~r?e.substring(0,r):e;a=~a?e.substring(a,~r?r:void 0):"",e=~r?e.substring(r):t.hash;if(i){if("/"!=i[0]&&!/^https?\:\/\//.test(i)){var l,s=t.pathname.split("/");for(s.pop();l=/^\.\.?\//.exec(i);)"../"===l[0]&&s.pop(),i=i.substring(l[0].length);i=s.concat(i).join("/")}}else i=t.pathname;return i+a+e};const z=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=R(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)}}),J=e=>{if(!b.isEmpty(e)&&b.isArray(e)){var t=amisRequire("amis");const a={renderer:t.Renderer,formitem:t.FormItem,options:t.OptionsControl};let s=amisRequire("react");b.each(e,t=>{if(!b.find(B,e=>e===t.componentName)){let l=Builder.components.find(e=>e.name===t.componentName),e=l.class;"amisSchema"===t.componentType&&(e=t=>{var{body:e,render:a}=t;const[r,i]=s.useState(null);return s.useEffect(()=>{var e=l.class(t);e&&e.then&&"function"==typeof e.then?e.then(e=>{i(e)}):i(e)},[]),s.createElement(s.Fragment,null,s.createElement(s.Fragment,null,r&&a?a("body",r):""),s.createElement(s.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}自定义组件类型。`),B.push(t.componentName)}})}};const M={},r=()=>"undefined"==typeof window?{}:Builder.settings.context||Builder.settings;async function s(e,t={credentials:"include"}){var a={"Content-Type":"application/json"},r=K(),r=(r&&(a.Authorization=r),t.headers=Object.assign({},a,t.headers),t.credentials="include",await fetch(""+o()+e,t));if(401===r.status)throw new Error(401);a=await r.json();if(a.errors)throw console.error(a.errors),new Error("Failed to fetch API");return a}function U(){try{let e=r().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 H(){try{var e=r().authToken;return e?e:null}catch(e){console.error(e)}}function K(){try{var e=r(),t=e.tenantId,a=e.authToken;return t&&a?`Bearer ${t},`+a:null}catch(e){console.error(e)}}function Y(){try{var e=r().userId;return e?e:null}catch(e){console.error(e)}}function o(e){var t=r();return t.rootUrl||("undefined"!=typeof window?window.localStorage.getItem("steedos:rootUrl"):"")||e}const a=()=>b.cloneDeep(M);async function W(e,t){0!=t&&(t=!0);let a=["_id"],r=[],i=[];for(const l of i=g.isArray(e)?e:g.values(e))l.name.indexOf(".")<0&&(!t||"lookup"!=l.type&&"master_detail"!=l.type?a.push(l.alias?l.alias+":"+l.name:l.name):(a.push(""+l.name),r.push(""+l.name)),b.includes(["time","date","datetime","boolean","number","currency"],l.type)&&a.push(""+l.name),b.includes(["time","filesize","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary"],l.type)&&r.push(""+l.name));return r=g.uniq(r),a=g.uniq(a),0<r.length?`${a.join(",")},_display:_ui{${r.join(",")}}`:""+a.join(" ")}function G(){return`
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("lodash"),require("lodash/isPlainObject")):"function"==typeof define&&define.amd?define(["exports","lodash","lodash/isPlainObject"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["amis-lib"]={},e._$1,e.isPlainObject)}(this,function(exports,_$1,isPlainObject){const global=window;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?!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 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","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,23 +23,7 @@
23
23
  viewAssignCompanysRecords,
24
24
  viewCompanyRecords,
25
25
  }
26
- `}async function Z(e,t,a,r){let i="",l=(t&&(i=`(filters:["${e.idFieldName}", "=", "${t}"])`),"data");return r&&(r.alias&&(l=r.alias),r.filters&&(i=`(filters:${r.filters})`),r.queryOptions&&(i=`(${r.queryOptions})`)),{query:`{${l}:${e.name}${i}{${await W(a)}, ${G()}}}`}}function X(e){return`
27
- const formData = api.data.$;
28
- for (key in formData){
29
- // image、select等字段清空值后保存的空字符串转换为null。
30
- if(formData[key] === ''){
31
- formData[key] = null;
32
- }
33
- }
34
- const objectName = api.data.objectName;
35
- const fieldsName = Object.keys(formData);
36
- delete formData.created;
37
- delete formData.created_by;
38
- delete formData.modified;
39
- delete formData.modified_by;
40
- delete formData._display;
41
- ${t=e,a=[],t.forEach(e=>{e.readonly&&a.push(`delete formData.${e.name};`)}),a.join("\r\n")}
42
- ${function(e){let t=[],a={};return e.forEach(e=>{b.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?`
43
27
  let imgFieldsKeys = ${JSON.stringify(t)};
44
28
  let imgFields = ${JSON.stringify(a)};
45
29
  imgFieldsKeys.forEach((item)=>{
@@ -59,8 +43,7 @@
59
43
  }
60
44
  }
61
45
  })
62
- `:""}(e)}
63
- ${function(e){let t=[],a={};return e.forEach(e=>{"file"===e.type&&(t.push(e.name),a[e.name]={name:e.name,multiple:e.multiple})}),t.length?`
46
+ `:""}function getScriptForSimplifiedValueForFileFields(e){let t=[],a={};return e.forEach(e=>{"file"===e.type&&(t.push(e.name),a[e.name]={name:e.name,multiple:e.multiple})}),t.length?`
64
47
  let fileFieldsKeys = ${JSON.stringify(t)};
65
48
  let fileFields = ${JSON.stringify(a)};
66
49
  fileFieldsKeys.forEach((item)=>{
@@ -82,7 +65,24 @@
82
65
  }
83
66
  }
84
67
  })
85
- `:""}(e)}
68
+ `:""}function getSaveDataTpl(e){return`
69
+ const formData = api.data.$;
70
+ for (key in formData){
71
+ // image、select等字段清空值后保存的空字符串转换为null。
72
+ if(formData[key] === ''){
73
+ formData[key] = null;
74
+ }
75
+ }
76
+ const objectName = api.data.objectName;
77
+ const fieldsName = Object.keys(formData);
78
+ delete formData.created;
79
+ delete formData.created_by;
80
+ delete formData.modified;
81
+ delete formData.modified_by;
82
+ delete formData._display;
83
+ ${getScriptForReadonlyFields(e)}
84
+ ${getScriptForRemoveUrlPrefixForImgFields(e)}
85
+ ${getScriptForSimplifiedValueForFileFields(e)}
86
86
  let query = \`mutation{record: \${objectName}__insert(doc: {__saveData}){_id}}\`;
87
87
  if(formData.recordId && formData.recordId !='new'){
88
88
  query = \`mutation{record: \${objectName}__update(id: "\${formData._id}", doc: {__saveData}){_id}}\`;
@@ -90,25 +90,42 @@
90
90
  delete formData._id;
91
91
  delete formData.__selectUserLoaded__;//选人控件加载标志不应该保存到数据库中
92
92
  let __saveData = JSON.stringify(JSON.stringify(formData));
93
- `;var t,a}async function l(e,t,a,r){var i=r.limit||10;let l=`(top: ${i})`,s=(t&&(l=`(filters:["_id", "=", "${t}"], top: ${i})`),"data");r&&(r.alias&&(s=r.alias),r.filters&&(l=`(filters:${r.filters})`),r.queryOptions&&(l=`(${r.queryOptions})`));t="",e.enable_tree&&g.includes(g.keys(e.fields),"parent")&&g.includes(g.keys(e.fields),"children")&&(t=",parent,children"),i="";return"cms_files"===e.name&&(i=",versions"),{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:`{${s}:${e.name}${l}{${await W(a,r.expand)}${t}${i}},count:${e.name}__count(filters:{__filters})}`}}function m(e){if(!e)return"${context.rootUrl}/graphql"}const v={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:r,foreignKey:i}){return`/app/${e}/${t}/${a}/${r}/grid?related_field_name=`+i}};function Q(e){return`<div>\${_display.${e.name}}</div>`}function p(e){return`<div>\${_display.${e.name}}</div>`}function f(e){return`<div>\${_display.${e.name}}</div>`}function y(e){return`<div>\${_display.${e.name}}</div>`}function ee(e,t){return"cms_files"===t.objectName?"${context.rootUrl}/api/files/files/${versions[0]}?download=true":v.getObjectDetailPath({...t,formFactor:t.formFactor,appId:"${appId}",objectName:t.objectName||"${objectName}",recordId:`\${${t.idFieldName}}`})}function te(t,a){let r="";var i,l=a.onlyDisplayLabel;if(_.isString(t.reference_to)||!t.reference_to)if(t.multiple){let e="<%=item.label%>";l||(i=v.getObjectDetailPath({formFactor:a.formFactor,appId:a.appId,objectName:"<%=item.objectName%>",recordId:"<%=item.value%>"}),e=`<a href="${i}"><%=item.label%></a>`),r=`
93
+ `}function getSaveRequestAdaptor(e){return`
94
+ ${getSaveDataTpl(e)}
95
+ api.data = {query: query.replace('{__saveData}', __saveData)};
96
+ 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})`));var t="",r=(e.enable_tree&&___namespace.includes(___namespace.keys(e.fields),"parent")&&___namespace.includes(___namespace.keys(e.fields),"children")&&(t=",parent,children"),""),o=("cms_files"===e.name&&(r=",versions"),!1===i.count?"":`,count:${e.name}__count(filters:{__filters})`),n=i.moreQueries?.length?","+i.moreQueries.map(function(e){return e.replace(/^{/,"").replace(/}$/,"")}).join(","):"";return{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:`{${l}:${e.name}${s}{${await getFieldsTemplate(a,i.expand)}${t}${r}}${o}${n}}`}}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
+ recordPermissions: _permissions{
99
+ ${a.fields.join(",")}
100
+ }
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=`
94
102
  <% if (data._display.${t.name} && data._display.${t.name}.length) { %><% data._display.${t.name}.forEach(function(item) { %> ${e} <% }); %><% } %>
95
- `}else{let e=`\${_display.${t.name}.label}`;l||(i=v.getObjectDetailPath({formFactor:a.formFactor,appId:a.appId,objectName:`\${_display.${t.name}.objectName}`,recordId:`\${_display.${t.name}.value}`}),e=`<a href="${i}">\${_display.${t.name}.label}</a>`),r=e}else{let e="<%=item.label%>";l||(i=v.getObjectDetailPath({formFactor:a.formFactor,appId:a.appId,objectName:"<%=item.objectName%>",recordId:"<%=item.value%>"}),e=`<a href="${i}"><%=item.label%></a>`),r=`
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=`
96
104
  <% if (data._display.${t.name} && data._display.${t.name}.length) { %><% data._display.${t.name}.forEach(function(item) { %> ${e} <% }); %><% } %>
97
- `}return r}async function w(e,t){var a,r;return e.reference_to?(a=await((await V(e.reference_to)).NAME_FIELD_KEY||"name"),e.multiple?(r=v.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:"<%=item._id%>"}),`
98
- <% if (data.${e.name} && data.${e.name}.length) { %><% data.${e.name}.forEach(function(item) { %> <a href="${r}"><%=item.${a}%></a> <% }); %><% } %>
99
- `):`<a href="${v.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:e.reference_to,recordId:`\${${e.name}._id}`})}">\${${e.name}.${a}}</a>`):y(e)}function ae(e){return`<% if (data.${e.name}) { %>
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%>"}),`
106
+ <% if (data.${e.name} && data.${e.name}.length) { %><% data.${e.name}.forEach(function(item) { %> <a href="${i}"><%=item.${a}%></a> <% }); %><% } %>
107
+ `):`<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}) { %>
100
108
  <span class="slds-icon_container slds-icon-utility-check slds-current-color" title="<%=data._display.${e.name}%>">
101
109
  <span ><%= data._display.${e.name} === "√" ? "<svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='currentColor' class='w-4 h-4'><path stroke-linecap='round' stroke-linejoin='round' d='M4.5 12.75l6 6 9-13.5' /></svg>" : data._display.${e.name} %></span>
102
110
  </span>
103
- <% } %>`}function re(e){return`<% if (data.${e.name}) { %>
111
+ <% } %>`}function getPasswordTpl(e){return`<% if (data.${e.name}) { %>
104
112
  <span>······</span>
105
- <% } %>`}async function n(e,t){if((e.is_name||e.name===t.labelFieldName)&&!t.onlyDisplayLabel)return a=e,`<a href="${ee(0,t)}">\${${a.name}}</a>`;var a;switch(e.type){case"password":return re(e);case"boolean":case"toggle":return ae(e);case"select":return y(e);case"time":return`<div>\${_display.${e.name}}</div>`;case"date":return p(e);case"datetime":return f(e);case"lookup":case"master_detail":return te(e,t);case"number":case"currency":return Q(e);case"formula":case"summary":case"filesize":return`<div>\${_display.${e.name}}</div>`}}const ie=100;async function le(e,t,a,r){return{method:"post",url:m()+"?rf="+(new Date).getTime(),cache:ie,adaptor:function(e){let a="";var t=g.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 g.each(t,function(e){var t;g.includes(at,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;`)}),`
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)}),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;`)}),`
106
114
  if(payload.data.data){
107
115
  var data = payload.data.data[0];
116
+ var gridAndObjectFieldsName = ${JSON.stringify(i)};
108
117
  try{
109
118
  ${a}
110
- ${se(e)}
111
- ${oe(e)}
119
+ ${getScriptForAddUrlPrefixForImgFields(e)}
120
+ ${getScriptForRewriteValueForFileFields(e)}
121
+ }catch(e){
122
+ console.error(e)
123
+ }
124
+
125
+ try{
126
+ _.each(gridAndObjectFieldsName, function(name){
127
+ data[name] = data._display[name];
128
+ })
112
129
  }catch(e){
113
130
  console.error(e)
114
131
  }
@@ -120,7 +137,7 @@
120
137
  payload.msg = payload.errors[0].message;
121
138
  }
122
139
  return payload;
123
- `}(a),data:await Z(e,t,a,r),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function se(e){let t=[],a={};return e.forEach(e=>{g.includes(["image","avatar"],e.type)&&(t.push(e.name),a[e.name]={name:e.name,type:e.type,multiple:e.multiple})}),t.length?`
140
+ `}async function getReadonlyFormInitApi(e,t,a,i){return{method:"post",url:getApi$2()+"?rf="+(new Date).getTime(),cache:API_CACHE,adaptor:getReadonlyFormAdaptor(a),data:await getFindOneQuery$1(e,t,a,i),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getScriptForAddUrlPrefixForImgFields(e){let t=[],a={};return e.forEach(e=>{___namespace.includes(["image","avatar"],e.type)&&(t.push(e.name),a[e.name]={name:e.name,type:e.type,multiple:e.multiple})}),t.length?`
124
141
  // image字段值添加URL前缀
125
142
  let imgFieldsKeys = ${JSON.stringify(t)};
126
143
  let imgFields = ${JSON.stringify(a)};
@@ -138,7 +155,7 @@
138
155
  }
139
156
  }
140
157
  })
141
- `:""}function oe(e){let t=[],a={};return e.forEach(e=>{"file"===e.type&&(t.push(e.name),a[e.name]={name:e.name,multiple:e.multiple})}),t.length?`
158
+ `:""}function getScriptForRewriteValueForFileFields(e){let t=[],a={};return e.forEach(e=>{"file"===e.type&&(t.push(e.name),a[e.name]={name:e.name,multiple:e.multiple})}),t.length?`
142
159
  // file字段值重写以便编辑时正常显示附件名、点击附件名正常下载附件
143
160
  let fileFieldsKeys = ${JSON.stringify(t)};
144
161
  let fileFields = ${JSON.stringify(a)};
@@ -167,26 +184,53 @@
167
184
  }
168
185
  }
169
186
  })
170
- `:""}function ne(e,t,a){return{method:"post",url:m(),data:{objectName:e.name,$:"$$",recordId:t,modalName:"${modalName}"},requestAdaptor:`
171
- ${X(a)}
172
- api.data = {query: query.replace('{__saveData}', __saveData)};
173
- return api;
174
- `,responseData:{recordId:"${record._id}"},adaptor:`
187
+ `:""}async function getEditFormInitApi(e,t,a){return{method:"post",url:getApi$2(),sendOn:"!!this.recordId",cache:API_CACHE,adaptor:`
188
+ if(payload.data.data){
189
+ var data = payload.data.data[0];
190
+ if(data){
191
+ ${getScriptForAddUrlPrefixForImgFields(a)}
192
+ ${getScriptForRewriteValueForFileFields(a)}
193
+ //初始化接口返回的字段移除字段值为null的字段
194
+ for (key in data){
195
+ if(data[key] === null){
196
+ delete data[key];
197
+ }
198
+ }
199
+ };
200
+ payload.data = data;
201
+ delete payload.extensions;
202
+ }
203
+ return payload;
204
+ `,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:`
175
205
  if(payload.errors){
176
206
  payload.status = 2;
177
207
  payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;
178
208
  }
179
209
  return payload;
180
- `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const de=e=>{let r=[];return r.length=0,g.forEach(e.fields,(e,t)=>{g.has(e,"name")||(e.name=t)}),g.forEach(g.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||r.push(Object.assign({name:t},e,{permission:{allowEdit:!0}}))}),r},ce=async(t,e,a,r)=>{e=g.filter(e,{group:a});if(e.length!=g.filter(e,["hidden",!0]).length){var i,l=[];for(const s of e){let e=s;"grid"===s.type?e=await it(s,t):"object"===s.type&&(e=await rt(s,t)),e.name.indexOf(".")<0&&((i=await O(e,e.readonly,r))&&l.push(i))}e=g.map(g.compact(g.map(l,"visibleOn")),e=>`(${e.substring(2,e.length-1)})`),a={type:"fieldSet",title:a,collapsable:!0,body:l};return 0<e.length&&l.length===e.length&&(a.visibleOn=`\${${e.join(" || ")}}`),a}},pe=async(e,t,a)=>{var r=de(t),i=[];for(const s in g.groupBy(r,"group")){var l=await ce(e,r,s,a);0<l.body.length&&i.push(l)}return i};async function ue(e,t,a){return pe(e,t,a)}async function me(e,t){var a=[];for(const i of e){var r=await n(i,t);let e=r?"tpl":"text";i.hidden||i.extra||a.push({name:i.name,label:i.label,sortable:i.sortable,width:i.width,type:e,tpl:r,toggled:i.toggled})}return{type:"hbox",columns:a}}function fe(e){return{perPage:e.top||e.perPage||10}}function ye(e){var t,a;return"string"==typeof e&&(t=/^{{(function.+)}}$/,a=/^{{(.+=>.+)}}$/,!("string"!=typeof e||!e.match(/^{{(.+)}}$/)||e.match(t)||e.match(a)))}function be(t,e,a,r,i={}){var l,s;if(void 0===e&&(e={}),s=_e(a),s=ge(e,s)||{},"string"!=typeof t)return t;l=t.substring(2,t.length-2),i=`
181
- var $user=${JSON.stringify(i)}; return `+l.replace(/\bformData\b/g,JSON.stringify(e).replace(/\bglobal\b/g,he)).replace(/\bglobal\b/g,JSON.stringify(r)).replace(new RegExp("\\b"+he+"\\b","g"),"global").replace(/rootValue/g,JSON.stringify(s));try{return Function(i)()}catch(e){return console.log(e,t,a),t}}const c=(...e)=>{let t={};return b.toArray(e).reverse().forEach(e=>{b.mergeWith(t,e,(e,t)=>b.isArray(t)?t:void 0)}),t},he="__G_L_O_B_A_L__",_e=function(e){return"string"!=typeof e||1===(e=e.split(".")).length?"#":(e.pop(),e.join("."))},ge=function(e,t){return"#"!==t&&t?"string"==typeof t?b.get(e,t):void console.error("path has to be a string"):e||{}};var ve={listView:{newRecordMode:"modal",editRecordMode:"modal",perPage:20}};async function i({type:e,pageId:t,appId:a,objectName:r="",recordId:i,formFactor:l="LARGE"}){e=await s(`/api/pageSchema/${e}?app=${a}&objectApiName=${r=r||""}&recordId=${i=i||""}&pageId=${t=t||""}&formFactor=`+l);if(e&&e.schema)return e}const d={getStandardNew:async(e,t)=>({type:"amis_button",amis_schema:await(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 i({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"}})(e,t)}),getStandardEdit:async(e,t)=>({type:"amis_button",amis_schema:await(async(e,t)=>{e="编辑 "+e.label;let a={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};t=await i({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"}})(e,t)}),getStandardDelete:async(e,t)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"删除",confirmText:"确定要删除此项目?",onEvent:{click:{actions:[{args:{api:{method:"post",url:"${context.rootUrl}/graphql",data:{"&":"$$",recordId:"${recordId}",objectName:"${objectName}"},requestAdaptor:"const {recordId, objectName} = api.body; var deleteArray = []; deleteArray.push(`delete:${objectName}__delete(id: \"${recordId}\")`); api.data = {query: `mutation{${deleteArray.join(',')}}`}; return api;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`
210
+ `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getBatchDelete(e){return{method:"post",url:getApi$2(),requestAdaptor:`
211
+ var ids = api.data.ids.split(",");
212
+ var deleteArray = [];
213
+ ids.forEach((id,index)=>{
214
+ deleteArray.push(\`delete__\${index}:${e}__delete(id: "\${id}")\`);
215
+ })
216
+ api.data = {query: \`mutation{\${deleteArray.join(',')}}\`};
217
+ return api;
218
+ `,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=`
219
+ 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:`
182
220
  if(payload.errors){
183
221
  payload.status = 2;
184
222
  payload.msg = payload.errors[0].message;
185
223
  }
186
224
  return payload;
187
- `},messages:{success:"删除成功",failed:"删除失败"}},actionType:"ajax"},{componentId:"",args:{url:"/app/${app_id}/${objectName}/grid/all",blank:!1},actionType:"link",expression:"!!!listViewId"},{componentId:"listview_"+e.name,actionType:"reload",expression:"!!listViewId"}]}}}],regions:["body"]}}),getStandardDeleteMany:async(e,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{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:"markdown",className:"whitespace-nowrap",html:!0},null],syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,autoFillHeight:!1},joinValues:!1,extractValue:!0,className:"m-1",labelClassName:"text-left",clearValueOnHidden:!0,id:"u:401df27113e0"},{name:"file",label:"Excel文件",required:!0,type:"input-file",className:"m-1",labelClassName:"text-left",clearValueOnHidden:!0,useChunk:!1,receiver:{method:"post",url:"${context.rootUrl}/s3/files",data:{$:"$$",context:"${context}"},adaptor:'\n const { context } = api.body; \n var rootUrl = context.rootUrl + "/api/files/files/";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: payload._id,\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n ',headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}},id:"u:0213f2cc365b"}],id:"u:4899c260d667"}],panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"p-4 sm:p-0 steedos-amis-form",label:"对象表单",objectApiName:"queue_import_history",id:"u:e4ef598eed61",onEvent:{submitSucc:{weight:0,actions:[{args:{api:{url:"${context.rootUrl}/api/data/initiateImport",method:"post",data:{eventData:"${event.data}"},dataType:"json",requestAdaptor:"\napi.data = {\n importObjectHistoryId: api.body.eventData.result.data.recordId\n}\nreturn api;",adaptor:"payload.status = payload.status === 'success' ? 0 : payload.status;\nconsole.log(\"payload ssss==>\", payload)\nreturn payload;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}},messages:{success:"已开始导入...",failed:"导入失败"}},actionType:"ajax",expression:"event.data.result"}]}},closeDialogOnSubmit:!0}],id:"u:dc05498d3bd4",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}},level:"default"}],regions:["body"],className:"p-0",id:"u:bd2f9c4e986f"}}),getStandardOpenView:async(e,t)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"查看",className:"border-none",onEvent:{click:{actions:[{componentId:"",args:{blank:!1,url:"/app/${app_id}/${objectName}/view/${_id}"},actionType:"link"}]}},id:"u:ef35c9ae1d19"}],regions:["body"]}})};function h(e){let t=e.visible;if(e._visible&&(t=e._visible),t=u.default.isBoolean(t)?t.toString():t)return t.trim().startsWith("function")?t+`.apply({
225
+ `},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({
188
226
  object: uiSchema
189
- }, [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}}t={standard_delete_many:function(){var{listViewId:e,uiSchema:t,scopeId:a}=this,a=SteedosUI?.getRef(a||e).getComponentById("listview_"+t.name);u.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])}};const $=(t,a)=>{const r=t.permissions&&t.permissions.disabled_actions;let e=u.default.sortBy(u.default.values(t.actions),"sort");return u.default.has(t,"allow_customActions")&&(e=u.default.filter(e,e=>u.default.include(t.allow_customActions,e.name))),u.default.has(t,"exclude_actions")&&(e=u.default.filter(e,e=>!u.default.include(t.exclude_actions,e.name))),u.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)&&u.default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),u.default.filter(e,e=>u.default.indexOf(r,e.name)<0&&"standard_query"!=e.name)},we=(e,t)=>{e=$(e,t);return u.default.filter(e,e=>"list"==e.on)},$e=(e,t)=>{e=$(e,t),t=u.default.filter(e,e=>"record"==e.on||"record_only"==e.on);return u.default.sortBy(t,"sort")},Fe=(e,t)=>{e=$(e,t),t=u.default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return u.default.sortBy(t,"sort")},F=async(e,t)=>{e=$(e,t);return u.default.filter(e,e=>"record"==e.on||"list_item"==e.on||"record_more"===e.on)},Ne=async(e,t)=>{e=$(e,t);return u.default.filter(e,e=>"list"==e.on)};var Se=(e,t)=>{if(e.todo)return u.default.isString(e.todo)&&u.default.startsWith(u.default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),u.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},ke=Se;function je(a,e,t){var{icon:r,label:i}=a;const l=[];b.each(a.list_views,(e,t)=>{l.push({type:"button",label:e.label,actionType:"link",link:`/app/\${appId}/${a.name}/grid/`+t})});var s=we(a,{}),s=b.map(s,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:h(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-${r&&r.replace(o,"-")} slds-page-header__icon" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${r}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center",valign:"middle"},{body:[{type:"tpl",tpl:""+i,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:l}],md:"",columnClassName:"p-l-xs"}],className:"flex justify-between"}],md:"auto"},{body:{type:"flex",items:s},md:"auto",valign:"middle"}],className:"flex justify-between"}}async function xe(t,e,a){var r=b.keys(t.fields),r=b.sortBy(b.compact(b.map(r,e=>t.fields[e])),"sort_no");return await ct(t,r,a)}async function N(e,t,a){return[{type:"wrapper",body:[je(e)],className:"bg-gray-100 sm:rounded-tl sm:rounded-tr p-4 -mb-4"}]}async function Oe(e,t,a){var{showRecordTitle:a=!0}=a||{},{name:r,label:i,icon:l}=e,s=$e(e,{}),o=Fe(e,{recordId:t,objectName:r}),s=b.map(s,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:h(e),className:"button_"+e.name})),o=b.map(o,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:h(e)})),o=(s.push({type:"steedos-dropdown-button",label:"",buttons:o,className:"slds-icon"}),new RegExp("_","g")),o=l&&l.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/${l}.svg'>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+i,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:s},md:"auto",hiddenOn:"${recordLoaded != true}"}),[{type:"service",body:[{type:"wrapper",className:"bg-gray-100 border-b sm:shadow sm:rounded sm:border border-slate-300 p-4",body:[{type:"grid",columns:n,className:"flex justify-between"}],size:"xs"}],messages:{}}]);return{type:"service",bodyClassName:"",name:"page",data:{"&":"$$",objectName:r,_id:t,recordPermissions:e.permissions,uiSchema:e},body:a}}async function S(e,t){var a=e["icon"],e=await Ne(e,{}),e=b.map(e,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:h(e),className:"button_"+e.name})),r=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(r,"-")}" 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"}}function De(e,t){return"SMALL"===t?[{type:"tpl",tpl:"${count} 个项目"},{type:"reload",align:"right",className:"bg-white p-2 rounded border-gray-300 text-gray-500"}]:["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:`
227
+ }, [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$1(e,t,a){return[{type:"wrapper",body:[getObjectListHeaderFirstLine(e)],className:"bg-gray-100 sm:rounded-tl sm:rounded-tr p-4 -mb-4"}]}async function getObjectRecordDetailHeader(e,t,a){var{showRecordTitle:a=!0}=a||{},{name:i,label:r,icon:s}=e,l=getObjectDetailButtons(e,{}),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=[],o=(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"}),[{type:"service",data:{"&":"$$",objectName:i,_id:t,recordPermissions:"${record.recordPermissions}",uiSchema:e},body:[{type:"grid",columns:n,className:"flex justify-between"}],messages:{},hiddenOn:"${recordLoaded != true}"}]);return a&&o.push({type:"service",body:[{type:"grid",columns:[n[0]],className:"flex justify-between"}],messages:{},hiddenOn:"${recordLoaded == true}"}),{type:"service",bodyClassName:"",name:"page",data:{"&":"$$",objectName:i,_id:t,recordPermissions:e.permissions,uiSchema:e,record:"${record}"},body:o,className:""}}async function getObjectRecordDetailRelatedListHeader(e,t){var a=e["icon"],e=await getObjectRelatedListButtons(e,{}),e=_$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){}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:`
228
+ const scope = event.context.scoped;
229
+ var listView = scope.parent.getComponents().find(function(n){
230
+ return n.props.type === "crud";
231
+ });
232
+ listView.handleChangePage(1);
233
+ `}]}}},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:`
190
234
  const scope = event.context.scoped;
191
235
  const filterForm = scope.getComponents().find(function(n){
192
236
  return n.props.type === "form";
@@ -195,32 +239,7 @@
195
239
  return n.props.type === "service";
196
240
  });
197
241
  filterService.setData({showFieldsFilter: !!!filterService.props.data.showFieldsFilter});
198
- `}]}}}]}function Ie(e,t){return"SMALL"===t?["load-more"]:["statistics","pagination"]}async function Ve(e,t,a){return{title:"",submitText:"",className:"",mode:"normal",wrapWithPanel:!1,body:[await xe(e,0,a)]}}function Ee(e){return[{type:"button",level:"danger",label:"批量删除",actionType:"ajax",confirmText:"确定要删除吗",className:"hidden",id:"batchDelete",api:(e=e.name,{method:"post",url:m(),requestAdaptor:`
199
- var ids = api.data.ids.split(",");
200
- var deleteArray = [];
201
- ids.forEach((id,index)=>{
202
- deleteArray.push(\`delete__\${index}:${e}__delete(id: "\${id}")\`);
203
- })
204
- api.data = {query: \`mutation{\${deleteArray.join(',')}}\`};
205
- return api;
206
- `,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}})}]}async function Ae(e,t,a){var r=a["top"],i=e.paging&&!1===e.paging.enabled,l=Ee(e),s={toolbar:[],bodyClassName:"",headerToolbar:De(0,a.formFactor),headerToolbarClassName:"px-4 py-2 border-gray-300 bg-gray-100 border-solid border-b",footerToolbar:Ie(0,a.formFactor),className:""+(a.className||"")};"SMALL"!==a.formFactor&&Object.assign(s,{filter:!!a.filterVisible&&await Ve(e,0,a),bulkActions:0!=a.bulkActions&&l}),i?(a.top=1e3,s.footerToolbar=[]):r&&(s.footerToolbar=[]);let o=null;l="listview_"+e.name,a.formFactor,i=await Me(t,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},a)),delete i.mode,o=Object.assign({},i,{type:"crud",primaryField:"_id",affixHeader:!1,id:l,name:l,keepItemSelectionOnPageChange:!0,api:await Ue(e,t,a),hiddenOn:a.tableHiddenOn,autoFillHeight:!1},s),r=a.defaults;if(r){i=r.listSchema||{},t=(o=c({},i,o),r.headerSchema),s=r.footerSchema;if(t||s){let e=[o];t&&(u.default.isArray(t)?e=u.default.union(t,e):e.unshift(t)),s&&(u.default.isArray(s)?e=u.default.union(e,s):e.push(s)),o=e}}return{type:"service",className:"",id:"service_"+l,name:"page",data:{$master:"$$",objectName:e.name,_id:null,recordPermissions:e.permissions,uiSchema:e,loaded:!1},body:o}}const Te=e=>{var t=a();return{mode:e,user:t,spaceId:t.spaceId,userId:t.userId}};async function Ce(e,t){var a,r,{recordId:i,layout:l="normal",labelAlign:s,defaults:o}=t,n=u.default.values(e.fields),o=o&&o.formSchema||{},d={type:"service",className:"p-0",name:"page_edit_"+i,api:(d=e,a=i,r=n,await{method:"post",url:m(),sendOn:"!!this.recordId",cache:ie,adaptor:`
207
- if(payload.data.data){
208
- var data = payload.data.data[0];
209
- if(data){
210
- ${se(r)}
211
- ${oe(r)}
212
- //初始化接口返回的字段移除字段值为null的字段
213
- for (key in data){
214
- if(data[key] === null){
215
- delete data[key];
216
- }
217
- }
218
- };
219
- payload.data = data;
220
- delete payload.extensions;
221
- }
222
- return payload;
223
- `,data:await Z(d,a,r),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}),initApi:null,initFetch:null,body:[c({},o,{type:"form",mode:l,labelAlign:s,persistData:!1,promptPageLeave:!0,name:"form_edit_"+i,debug:!1,title:"",submitText:"",api:await ne(e,i,n),initFetch:"new"!=i,body:await ue(n,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:`
242
+ `}]}}},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)}]}function getToolbar(){return[]}async function getObjectList(e,t,a){var{top:i,showDisplayAs:r=!0}=a,s=e.paging&&!1===e.paging.enabled,l=getBulkActions(e),r={toolbar:getToolbar(),bodyClassName:"",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.className||"")};"SMALL"!==a.formFactor&&Object.assign(r,{filter:!!a.filterVisible&&await getObjectFilter(e,t,a),bulkActions:0!=a.bulkActions&&l}),s?(a.top=1e3,r.footerToolbar=[]):i&&(r.footerToolbar=[]);let o=null;l="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,o=Object.assign({},s,{type:"crud",primaryField:"_id",affixHeader:!1,id:l,name:l,keepItemSelectionOnPageChange:!0,api:await getTableApi(e,t,a),hiddenOn:a.tableHiddenOn,autoFillHeight:!1},r),i=a.defaults;if(i){s=i.listSchema||{},t=(o=defaultsDeep({},s,o),i.headerSchema),r=i.footerSchema;if(t||r){let e=[o];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)),o=e}}return{type:"service",className:"",id:"service_"+l,name:"page",data:{$master:"$$",objectName:e.name,_id:null,recordPermissions:e.permissions,uiSchema:e,loaded:!1},body: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:`
224
243
  const { recordId, listViewId } = context.props.data;
225
244
  const data = event.data;
226
245
  const appId = data.appId;
@@ -250,12 +269,12 @@
250
269
  "actionType": "link"
251
270
  });
252
271
  }
253
- `}]}}})]};return o.id&&(d.id="service-"+o.id),d}const qe=["text","date","file","avatar","image","datetime","time","number","currency","percent","password","url","email"];function k(e,t,a){return t?g.includes(["text","image"],e)?"image"===e&&a&&a.multiple?"static-images":"static-"+e:"static":g.includes(qe,e)?"input-"+e:e}const Pe=(e,t)=>k("avatar"===e.type?"image":e.type,t,{multiple:e.multiple}),Le=e=>{var t=e.type,a=Pe(e,!0);return _.includes(["avatar","image"],t)?{type:a,defaultImage:"",enlargeAble:!0,showToolbar:!0}:"file"===t?{type:a,tpl:`
272
+ `}]}}})]};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:`
254
273
  <% let fileData = data.${e.name}; if (fileData) { %>
255
274
  <% if(!Array.isArray(fileData)){ fileData = [fileData]} %>
256
275
  <% fileData.forEach(function(item) { %>
257
276
  <a href='<%= item.url %>' target='_self' class='block'><%= item.name %></a>
258
- <% });} %>`}:void 0},Be=e=>{var t=(e=>{switch(e.type){case"avatar":return"avatars";case"image":return"images";case"file":return"files"}})(e),t={type:Pe(e,!1),useChunk:!1,receiver:{method:"post",url:"${context.rootUrl}/s3/"+t,data:{$:"$$",context:"${context}"},adaptor:`
277
+ <% });} %>`}:void 0},getAmisFileEditSchema=e=>{var t=getFileTableName(e),t={type:getAmisFieldType$1(e,!1),useChunk:!1,receiver:{method:"post",url:"${context.rootUrl}/s3/"+t,data:{$:"$$",context:"${context}"},adaptor:`
259
278
  const { context } = api.body;
260
279
  var rootUrl = context.rootUrl + "/api/files/${t}/";
261
280
  payload = {
@@ -268,10 +287,15 @@
268
287
  }
269
288
  }
270
289
  return payload;
271
- `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(t.multiple=!0,t.joinValues=!1,t.extractValue=!0),t},Re=(e,t)=>(t?Le:Be)(e);async function ze(e,t){var a=[];let r={};var i=[];for(const s of e){let e="";e=(e=s.is_name||s.name===t.labelFieldName?(r=s,t.onlyDisplayLabel=!0,await n(s,t)):"avatar"===s.type||"image"===s.type||"file"===s.type?`\${_display.${s.name}.name}`:("lookup"!==s.type&&"master_detail"!==s.type||(t.onlyDisplayLabel=!0),await n(s,t)))||`\${${s.name}}`,s.hidden||s.extra||i.push({field:s,tpl:e})}var e=ee(r,t),l=function(e){let t=[],a=[],r=!1,i=!0,l="",s="flex items-center justify-between";return e.forEach(function(e){r&&t.length<2&&(t.push({type:"wrapper",body:a,size:"none",className:s}),a=[]),i?(l="steedos-listview-item-left truncate",e.field.is_wide&&(l="steedos-listview-item-wide truncate")):l="steedos-listview-item-right truncate ml-2 flex flex-shrink-0",a.push({type:"tpl",tpl:e.tpl,className:l}),r=e.field.is_wide?i=!0:i=!i}),a.length&&t.length<2&&t.push({type:"wrapper",body:a,size:"none",className:s}),t}(i);return a.push({name:r.name,label:r.label,sortable:r.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:l,size:"none",className:"p-2"}}),a}async function Je(e){e=e.buttons;const t=[];if(b.each(e,e=>{b.isBoolean(e.visible)&&(e.visible=e.visible.toString()),t.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:function(e){let t=e.visible;if(e._visible&&(t=e._visible),t=b.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}}(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:`
290
+ `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(t.multiple=!0,t.joinValues=!1,t.extractValue=!0),t},getAmisFileSchema=(e,t)=>(t?getAmisFileReadonlySchema:getAmisFileEditSchema)(e);async function getTableColumns(e,t){var a=[{name:"_index",type:"text",width:32,placeholder:""}];for(const r of e)if(!r.is_name&&r.name!==t.labelFieldName||"cms_files"!==t.objectName)if("toggle"===r.type)a.push({type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:!0,className:"whitespace-nowrap"});else if("avatar"===r.type||"image"===r.type||"file"===r.type)a.push({type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:!0,className:"whitespace-nowrap",...getAmisFileReadonlySchema(r)});else{var i=await getFieldTpl(r,t);let e="text";i?e="tpl":"html"===r.type&&(e="markdown"),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,className:"textarea"===r.type?"min-w-56 whitespace-pre-wrap textarea":"whitespace-nowrap",html:"html"===r.type||null})}else{i=`
291
+ var data = event.data;
292
+ var file_name = data.versions ? data.name : "${r.label}";
293
+ var file_id = data._id;
294
+ SteedosUI.previewFile && SteedosUI.previewFile({file_name, file_id});
295
+ `;a.push({type:"button",label:`<%=data.versions ? data.name : "${r.label}"%>`,className:"whitespace-nowrap",level:"link",onEvent:{click:{actions:[{args:{api:{url:"${context.rootUrl}/api/files/files/${versions[0]}?download=true",method:"get",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}},actionType:"download",expression:"!!!window?.nw?.require"},{args:{},actionType:"custom",script:i,expression:"!!window?.nw?.require"}]}}})}return a}function getMobileLines(e){let t=[],a=[],i=!1,r=!0,s="",l="flex items-center justify-between h-[20px]";return e.forEach(function(e){i&&t.length<2&&(t.push({type:"wrapper",body:a,size:"none",className:l}),a=[]),r?(s="steedos-listview-item-left truncate",e.field.is_wide&&(s="steedos-listview-item-wide truncate"),0===t.length&&(s+=" font-bold text-gray-800")):s="steedos-listview-item-right truncate ml-2 flex flex-shrink-0",a.push({type:"tpl",tpl:e.tpl,className:s}),i=e.field.is_wide?r=!0:r=!r}),a.length&&t.length<2&&t.push({type:"wrapper",body:a,size:"none",className:l}),t}async function getMobileTableColumns(e,t){var a=[];let i={};var r=[];for(const l of e){let e="";e=(e=l.is_name||l.name===t.labelFieldName?(i=l,t.onlyDisplayLabel=!0,await getFieldTpl(l,t)):"avatar"===l.type||"image"===l.type||"file"===l.type?`\${_display.${l.name}.name}`:("lookup"!==l.type&&"master_detail"!==l.type||(t.onlyDisplayLabel=!0),await getFieldTpl(l,t)))||`\${${l.name}}`,l.hidden||l.extra||r.push({field:l,tpl:e})}var e=getNameTplUrl(i,t),s=getMobileLines(r);return a.push({name:i.name,label:i.label,sortable:i.sortable,type:"button",level:"link",actionType:"link",link:e,innerClassName:"steedos-listview-item block text-gray-500",body:{type:"wrapper",body:s,size:"none",className:"p-1"}}),a}function getDefaultParams(e){return{perPage:e.top||e.perPage||config.listView.perPage}}function getButtonVisibleOn(e){let t=e.visible;if(e._visible&&(t=e._visible),t=_$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:`
272
296
  payload.recordPermissions = payload;
273
297
  return payload;
274
- `}}]}}async function Me(e,t){let a=[];return"SMALL"===(t=t||{}).formFactor?a=await ze(e,t):(a=await async function(e,t){var a=[{name:"_index",type:"text",width:32,placeholder:""}];for(const i of e)if(!i.is_name&&i.name!==t.labelFieldName||"cms_files"!==t.objectName)if("toggle"===i.type)a.push({type:"switch",name:i.name,label:i.label,width:i.width,toggled:i.toggled,disabled:!0,className:"whitespace-nowrap"});else if("avatar"===i.type||"image"===i.type||"file"===i.type)a.push({type:"switch",name:i.name,label:i.label,width:i.width,toggled:i.toggled,disabled:!0,className:"whitespace-nowrap",...Le(i)});else{var r=await n(i,t);let e="text";r?e="tpl":"html"===i.type&&(e="markdown"),i.hidden||i.extra||a.push({name:i.name,label:i.label,sortable:i.sortable,width:i.width,type:e,tpl:r,toggled:i.toggled,className:"textarea"===i.type?"min-w-56 whitespace-pre-wrap textarea":"whitespace-nowrap",html:"html"===i.type||null})}else a.push({type:"button",className:"whitespace-nowrap",label:`<%=data.versions ? data.name : "${i.label}"%>`,type:"button",actionType:"ajax",api:{url:"${context.rootUrl}/api/files/files/${versions[0]}?download=true",method:"get",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},responseType:"blob",dataType:"form-data"},id:"u:6c8291d1029f",level:"link"});return a}(e,t)).push(await Je(t)),{mode:"table",name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 bg-gray-100 border-solid border-b",className:"",draggable:!1,defaultParams:{perPage:(e=t).top||e.perPage||ve.listView.perPage},columns:a,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:`\${${t.labelFieldName}}`,autoFillHeight:!1}}async function Ue(e,t,a){const r=[];let{globalFilter:i,filter:l,filtersFunction:s,sort:o,top:n,setDataToComponentId:d=""}=a,c=(l=(l=g.isArray(l)?g.map(l,function(e){return e.operation?[e.field,e.operation,e.value]:e}):l)||[],null);b.isEmpty(i)||b.isEmpty(l)?i?c=i:l&&(c=l):c=[i,"and",l],g.each(t,function(e){e.searchable&&r.push(e.name)});const p={},u=[];t.forEach(e=>{g.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 He(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=`
298
+ `}}]}}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=`
275
299
  let selfData = JSON.parse(JSON.stringify(api.data.$self));
276
300
  try{
277
301
  // TODO: 不应该直接在这里取localStorage,应该从外面传入
@@ -298,7 +322,7 @@
298
322
  console.error("本地存储中crud参数解析异常:", ex);
299
323
  }
300
324
  ${c?`var systemFilters = ${JSON.stringify(c)};`:"var systemFilters = [];"}
301
- const filtersFunction = ${s};
325
+ const filtersFunction = ${l};
302
326
  if(filtersFunction){
303
327
  const _filters = filtersFunction(systemFilters, selfData);
304
328
  if(_filters && _filters.length > 0){
@@ -324,12 +348,12 @@
324
348
  var orderBy = api.data.orderBy || '';
325
349
  var orderDir = api.data.orderDir || '';
326
350
  var sort = orderBy + ' ' + orderDir;
327
- sort = orderBy ? sort : "${o}";
328
- var allowSearchFields = ${JSON.stringify(r)};
351
+ sort = orderBy ? sort : "${o||""}";
352
+ var allowSearchFields = ${JSON.stringify(i)};
329
353
  if(api.data.$term){
330
354
  userFilters = [["name", "contains", "'+ api.data.$term +'"]];
331
355
  }else if(selfData.op === 'loadOptions' && selfData.value){
332
- userFilters = [["${m.name}", "=", selfData.value]];
356
+ userFilters = [["${u.name}", "=", selfData.value]];
333
357
  }
334
358
  var searchableFilter = [];
335
359
  _.each(selfData, (value, key)=>{
@@ -474,7 +498,9 @@
474
498
  // 第一次加载组件,比如刷新浏览器时因为api.data.pageNo有默认值1
475
499
  // 所以会把localSearchableFilter中已经存过的页码覆盖
476
500
  // 如果是第一次加载组件始终让翻页页码从本地存储中取值
477
- selfData.page = localListViewProps.page || 1;
501
+ let formFactor = "${a.formFactor}";
502
+ // 移动端不识别本地存储中的翻页页码,否则点击加载更多按钮后无法刷新回第一页
503
+ selfData.page = formFactor === "SMALL" ? 1 : (localListViewProps.page || 1);
478
504
  }
479
505
  }
480
506
  delete selfData.context;
@@ -495,11 +521,7 @@
495
521
  }
496
522
 
497
523
  return payload;
498
- `,t}async function He(e,t,a,r){e=await l(e,t,a,r);return{method:"post",url:m(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function Ke(e,t,a){e=function(e,t,a){let r="",i=(t&&(r=`(filters:["${e.idFieldName}", "=", "${t}"])`),"data"),l=(a&&(a.alias&&(i=a.alias),a.filters&&(r=`(filters:${a.filters})`),a.queryOptions&&(r=`(${a.queryOptions})`)),G());return a?.fields&&a.fields.length&&(l=`
499
- recordPermissions: _permissions{
500
- ${a.fields.join(",")}
501
- }
502
- `),{query:`{${i}:${e.name}${r}{${e.idFieldName},${l}}}`}}(e,t,a);return{method:"post",url:m(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const j="space_users",x="organizations";function Ye(e){e=g.find(e.list_views,(e,t)=>"all"===t);let t="";return t=e?I(e):t}async function We(t,a,r){if(!t)return{};r=r||{};var i={type:k("select",a)};if(a)i.tpl=await w(t,r);else{a=await V(j),a=(r.usersSort=Ye(a),await V(x));r.orgsSort=Ye(a),Object.assign(i,{labelField:"name",valueField:"user",multiple:t.multiple,searchable:t.searchable,selectMode:"associated",leftMode:"tree",extractValue:!0,clearable:!0,source:await async function(e,t){var a=await l({name:x},null,[{name:"_id",alias:"value"},{name:"name",alias:"label"},{name:"children"}],{alias:"leftOptions",filters:"{__filters}"}),r=(a.query=a.query.replace(/,count\:.+/,"}"),await l({name:x},null,[{name:"_id",alias:"ref"}],{alias:"children",filters:"{__filters}"}));r.query=r.query.replace(/,count\:.+/,"}"),a.query=a.query.replace(/}$/,","+r.query.replace(/{(.+)}/,"$1}")),(r=await l({name:j},null,[{name:"user"},{name:"name"}],{alias:"defaultValueOptions",filters:"{__options_filters}"})).query=r.query.replace(/,count\:.+/,"}"),a.query=a.query.replace(/}$/,","+r.query.replace(/{(.+)}/,"$1}"));let i=""+e.name;return t.fieldNamePrefix&&(i=""+t.fieldNamePrefix+e.name),a.$value="$"+i,a.__selectUserLoaded__="${__selectUserLoaded__}",r=`
524
+ `,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=`
503
525
  console.log("select user field '${e.name}' requestAdaptor api:", api);
504
526
  var filters = [['parent', '=', null]];
505
527
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters));
@@ -511,7 +533,7 @@
511
533
  }
512
534
  api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));
513
535
  return api;
514
- `,{method:"post",url:m()+`?value=\${${e.multiple?i+"|join":i}}`,requestAdaptor:r,adaptor:`
536
+ `;return{method:"post",url:getApi$2()+`?value=\${${e.multiple?r+"|join":r}}`,requestAdaptor:i,adaptor:`
515
537
  const data = payload.data;
516
538
  data.children = data.children.map(function (child) {
517
539
  // child.defer = !!(child.children && child.children.length);
@@ -529,7 +551,7 @@
529
551
  delete data.defaultValueOptions;
530
552
  payload.data = { options: [data] };
531
553
  return payload;
532
- `,data:a,sendOn:"!this.__selectUserLoaded__",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}(t,r),deferApi:await async function(e,t){var a=await l({name:"{__object_name}"},null,[],{alias:"options",queryOptions:'filters: {__filters}, sort: "{__sort}"'});let r=e.filters;return"function"==typeof(r="string"==typeof r?(r=new Function("return "+r))():r)&&(r=r(e)),a.query=a.query.replace(/,count\:.+/,"}"),a.query=a.query.replace("{_id}","{{__fields}}"),e=`
554
+ `,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=`
533
555
  var dep = api.query.dep;
534
556
  var ref = api.query.ref;
535
557
  var term = api.query.term;
@@ -538,17 +560,17 @@
538
560
  var fields;
539
561
  var sort = "";
540
562
  if (dep) {
541
- objectName = "${x}";
563
+ objectName = "${refOrgsObjectName}";
542
564
  fields = "value:_id,label:name,children";
543
565
  filters = [['parent', '=', dep]];
544
566
  sort = "${t.orgsSort}";
545
567
  }
546
568
  else if (ref) {
547
- objectName = "${j}";
569
+ objectName = "${refUsersObjectName}";
548
570
  // 这里要额外把字段转为value和label是因为valueField和labelField在deferApi/searchApi中不生效,所以字段要取两次
549
571
  fields = "user,name,value:user,label:name";
550
572
  filters = [['user_accepted', '=', true]];
551
- var defaultFilters = ${r&&JSON.stringify(r)};
573
+ var defaultFilters = ${i&&JSON.stringify(i)};
552
574
  if(defaultFilters){
553
575
  filters.push(defaultFilters);
554
576
  }
@@ -557,7 +579,7 @@
557
579
  }
558
580
  api.data.query = api.data.query.replace(/{__object_name}/g, objectName).replace(/{__fields}/g, fields).replace(/{__filters}/g, JSON.stringify(filters)).replace('{__sort}', sort.trim());
559
581
  return api;
560
- `,{method:"post",url:m()+"?ref=${ref}&dep=${value}",requestAdaptor:e,adaptor:`
582
+ `;return{method:"post",url:getApi$2()+"?ref=${ref}&dep=${value}",requestAdaptor:e,adaptor:`
561
583
  if (api.query.dep) {
562
584
  // 展开组织时才需要根据children值设置defer属性
563
585
  const data = payload.data;
@@ -569,13 +591,13 @@
569
591
  payload.data = data;
570
592
  }
571
593
  return payload;
572
- `,data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}(t,r),searchApi:await async function(e,t){var a=await l({name:j},null,[{name:"user"},{name:"name"},{name:"user",alias:"value"},{name:"name",alias:"label"}],{alias:"options",queryOptions:'filters: {__filters}, sort: "{__sort}"'});a.query=a.query.replace(/,count\:.+/,"}");e=`
594
+ `,data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getSearchApi(e,t){var a=await getFindQuery({name:refUsersObjectName},null,[{name:"user"},{name:"name"},{name:"user",alias:"value"},{name:"name",alias:"label"}],{alias:"options",queryOptions:'filters: {__filters}, sort: "{__sort}"'}),e=(a.query=a.query.replace(/,count\:.+/,"}"),e.filters),e=`
573
595
  var term = api.query.term;
574
596
  var filters;
575
597
  var sort = "";
576
598
  if (term) {
577
599
  filters = [['user_accepted', '=', true]];
578
- var defaultFilters = ${(e=e.filters)&&JSON.stringify(e)};
600
+ var defaultFilters = ${e&&JSON.stringify(e)};
579
601
  if(defaultFilters){
580
602
  filters.push(defaultFilters);
581
603
  }
@@ -591,7 +613,7 @@
591
613
  }
592
614
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__sort}', sort.trim());
593
615
  return api;
594
- `;return{method:"post",url:m()+"?term=${term}",requestAdaptor:e,data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}(t,r)}),t.multiple&&Object.assign(i,{joinValues:!1});let e=t.defaultValue;!g.has(t,"defaultValue")||g.isString(e)&&e.startsWith("{")||(g.isString(e)&&e.startsWith("{{")&&(e="$"+e.substring(1,e.length-1)),i.value=e),"boolean"!=typeof i.searchable&&(i.searchable=!0);a=t.onEvent,r=(a&&(i.onEvent=a),{actionType:"custom",script:`
616
+ `;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:`
595
617
  // 往上找到form,设置__selectUserLoaded__标记已经加载过选人字段不能再调用source接口初始化选人组件了
596
618
  const getClosestAmisComponentByType = function(scope, type){
597
619
  const re = scope.getComponents().find(function(n){
@@ -606,7 +628,7 @@
606
628
  }
607
629
  const form = getClosestAmisComponentByType(event.context.scoped, "form");
608
630
  form.setData({"__selectUserLoaded__":true});
609
- `});i.onEvent?i.onEvent.change?.actions?.length?i.onEvent.change.actions.unshift(r):i.onEvent.change={weight:0,actions:[r]}:Object.assign(i,{onEvent:{change:{weight:0,actions:[r]}}})}return i}const Ge=async a=>{let r=a.reference_to;if(r){"users"===r&&(r="space_users",a.reference_to_field="user");var i=await V(r);let e=null,t=a.reference_to_field;return t=t||i.idFieldName||"_id",e="_id"===t?{name:"_id",label:"ID",type:"text",toggled:!1}:i.fields[t]||{name:t},{objectName:r,valueField:e,labelField:i.fields[i.NAME_FIELD_KEY||"name"],NAME_FIELD_KEY:i.NAME_FIELD_KEY||"name"}}};async function Ze(i,l,s){var o=await Ge(i);if(o){const p=await V(o.objectName),u=[];let e=0;const m=[],f=[];var n=g.find(p.list_views,(e,t)=>"all"===t);n&&n.columns?g.each(n.columns,function(e){g.isString(e)&&p.fields[e]?f.push(p.fields[e]):g.isObject(e)&&p.fields[e.field]&&f.push(Object.assign({},p.fields[e.field],{width:e.width,wrap:e.wrap}))}):g.each(p.fields,(e,t)=>{"_id"==t||e.hidden||(g.has(e,"name")||(e.name=t),f.push(e))}),g.each(g.sortBy(f,"sort_no"),function(t){e<5&&(g.find(u,function(e){return e.name===t.name})||(e++,u.push(t),t.searchable&&m.push(t.name)))});const y={[o.labelField.name]:o.labelField,[o.valueField.name]:o.valueField};g.each(u,e=>{e.hidden||(y[e.name]=e)});let t="";n&&(t=I(n));var d,n=await Qe(p,null,y,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});if(n.url){const b=[],h=[];g.each(i.depend_on,e=>{b.push(`depend_on_${e}=\${${e}}`),h.push("this."+e)}),0<b.length&&(n.url=n.url+"?"+b.join("&"),n.sendOn=""+h.join(" && "))}n.data.$term="$term",n.data.$self="$$",n.requestAdaptor=`
631
+ `});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=`
610
632
  const selfData = JSON.parse(JSON.stringify(api.data.$self));
611
633
  var filters = [];
612
634
  var pageSize = api.data.pageSize || 10;
@@ -659,7 +681,7 @@
659
681
  })
660
682
  }
661
683
 
662
- const filtersFunction = ${i._filtersFunction};
684
+ const filtersFunction = ${r._filtersFunction};
663
685
 
664
686
  if(filtersFunction){
665
687
  const _filters = filtersFunction(filters, api.data.$self.__super.__super);
@@ -671,7 +693,7 @@
671
693
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());
672
694
  return api;
673
695
  `,n.adaptor=`
674
- const enable_tree = ${p.enable_tree};
696
+ const enable_tree = ${c.enable_tree};
675
697
  if(enable_tree){
676
698
  const records = payload.data.rows;
677
699
  const treeRecords = [];
@@ -698,14 +720,25 @@
698
720
  payload.data.rows = treeRecords;
699
721
  }
700
722
  return payload;
701
- `;let a=20,r=(p.paging&&!1===p.paging.enabled&&(a=1e3),null);"SMALL"===s.formFactor?r=(d=u,c={top:a,...s,actions:!1},d=(await me(d,c)).columns,await{mode:"list",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:fe(c),syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:"${name}",listItem:{body:[...d],actions:!1===c.actions?null:[{icon:"fa fa-eye",label:"查看",type:"button",actionType:"link",link:v.getObjectDetailPath({formFactor:c.formFactor,appId:c.appId,objectName:c.tabId,listView:c.listView,recordId:"${_id}"})}]}}):((r=await Me(u,{labelFieldName:p.NAME_FIELD_KEY,top:a,...s})).headerToolbar=De(p,s.formFactor),r.footerToolbar=Ie(),!1!==s.filterVisible&&(d=s.filterLoopCount||0,d++,r.filter=await Ve(p,y,{isLookup:!0,...s,filterLoopCount:d})),r.data=Object.assign({},r.data,{"&":"$$",objectName:p.name,uiSchema:p,listName:"all",isLookup:!0}));var c={type:k("picker",l),labelField:o.labelField.name,valueField:o.valueField.name,modalMode:"dialog",source:n,size:"lg",pickerSchema:r,joinValues:!1,extractValue:!0};return i.multiple&&(c.multiple=!0,c.extractValue=!0),l&&(c.tpl=await w(i,s)),c}}async function Xe(e,t,a){var r=await Ge(e);let i;i=r?await Qe({name:r.objectName},null,{[r.labelField.name]:Object.assign({},r.labelField,{alias:"label"}),[r.valueField.name]:Object.assign({},r.valueField,{alias:"value"})},{expand:!1,alias:"options",queryOptions:'filters: {__filters}, top: {__top}, sort: "{__sort}"'}):{method:"post",url:m(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"}};var l=r&&await V(r.objectName),l=l&&g.find(l.list_views,(e,t)=>"all"===t);let s="";if(l&&(s=I(l)),i.url){const n=[],d=[];g.each(e.depend_on,e=>{n.push(`depend_on_${e}=\${${e}}`),d.push("this."+e)}),0<n.length&&(i.url=i.url+"?"+n.join("&"),i.sendOn=""+d.join(" && "))}i.data.$term="$term",i.data.$value=`$${e.name}.`+(r?r.valueField.name:"_id"),g.each(e.depend_on,function(e){i.data[e]="$"+e}),i.data.$="$$",i.data.rfield="${object_name}",i.requestAdaptor=`
723
+ `;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),r=i&&i.valueField?.name||"_id";let s;i?(l=await getFindQuery({name:i.objectName},null,{[i.labelField.name]:Object.assign({},i.labelField,{alias:"label"}),[i.valueField.name]:Object.assign({},i.valueField,{alias:"value"})},{alias:"defaultValueOptions",filters:"{__options_filters}",count:!1}),(s=await getApi({name:i.objectName},null,{[i.labelField.name]:Object.assign({},i.labelField,{alias:"label"}),[i.valueField.name]:Object.assign({},i.valueField,{alias:"value"})},{expand:!1,alias:"options",queryOptions:'filters: {__filters}, top: {__top}, sort: "{__sort}"',moreQueries:[l.query]})).adaptor=`
724
+ const data = payload.data;
725
+ var defaultValueOptions = data.defaultValueOptions;
726
+ // 字段值下拉选项合并到options中
727
+ data.options = _.unionWith(defaultValueOptions, data.options, function(a,b){
728
+ return a["${r}"]=== b["${r}"];
729
+ });
730
+ delete data.defaultValueOptions;
731
+ payload.data.options = data.options;
732
+ return payload;
733
+ `):s={method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"}};var l=i&&await getUISchema(i.objectName),l=l&&___namespace.find(l.list_views,(e,t)=>"all"===t);let o="";if(l&&(o=getListViewSort(l)),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="$"+e.name,___namespace.each(e.depend_on,function(e){s.data[e]="$"+e}),s.data.$="$$",s.data.rfield="${object_name}",s.requestAdaptor=`
702
734
  var filters = [];
703
735
  var top = 10;
704
736
  if(api.data.$term){
705
- filters = [["${r?.NAME_FIELD_KEY||"name"}", "contains", api.data.$term]];
706
- }else if(api.data.$value){
707
- filters = [["_id", "=", api.data.$value]];
737
+ filters = [["${i?.NAME_FIELD_KEY||"name"}", "contains", api.data.$term]];
708
738
  }
739
+ // else if(api.data.$value){
740
+ // filters = [["_id", "=", api.data.$value]];
741
+ // }
709
742
 
710
743
  const filtersFunction = ${e._filtersFunction};
711
744
 
@@ -715,13 +748,22 @@
715
748
  filters.push(_filters);
716
749
  }
717
750
  }
718
- var sort = "${s}";
751
+ var sort = "${o}";
719
752
  api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', top).replace('{__sort}', sort.trim());
753
+
754
+ var defaultValue = api.data.$value;
755
+ var optionsFiltersOp = "${e.multiple?"in":"="}";
756
+ var optionsFilters = [["${r}", optionsFiltersOp, []]];
757
+ if (defaultValue && !api.data.$term) {
758
+ // 字段值单独请求,没值的时候在请求中返回空
759
+ optionsFilters = [["${r}", optionsFiltersOp, defaultValue]];
760
+ }
761
+ api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));
720
762
  return api;
721
- `,r&&r.labelField.name,r&&r.valueField.name,e._optionsFunction&&(i.adaptor=`
722
- payload.data.options = eval(${e._optionsFunction})(api.data);
763
+ `,i&&i.labelField.name,i&&i.valueField.name,e._optionsFunction&&(s.adaptor=`
764
+ payload.data.options = eval(${e._optionsFunction})(api.data.$);
723
765
  return payload;
724
- `);l={type:k("select",t),joinValues:!1,extractValue:!0,source:i,autoComplete:i,searchable:!0};let o=e.defaultValue;return!g.has(e,"defaultValue")||g.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(g.isString(o)&&o.startsWith("{{")&&(o="$"+o.substring(1,o.length-1)),l.value=o),e.multiple&&(l.multiple=!0,l.extractValue=!0),t&&(l.tpl=await w(e,a)),l}async function Qe(e,t,a,r){e=await l(e,t,a,r);return{method:"post",url:m(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function et(e,t,a){var r,i;return t?{type:k("picker",t),tpl:te(e,a)}:!e.reference_to||g.isString(e.reference_to)||t?((r=await Ge(e))?(i=await V(r.objectName),"space_users"===r.objectName?tt:1==i.enable_enhanced_lookup&&g.isEmpty(e.depend_on)?Ze:Xe):Xe)(e,t,a):{type:"steedos-field-lookup",field:e,readonly:t,ctx:{}}}async function tt(e,t,a){return We(e,t,a)}const at=["created","created_by","modified","modified_by"];function rt(t,e){var a=Object.assign({subFields:[]},t),e=g.filter(e,function(e){return e.name.startsWith(t.name+".")});return a.subFields=e,a}function it(t,e){var a=Object.assign({subFields:[]},t),e=g.filter(e,function(e){return e.name.startsWith(t.name+".")});return a.subFields=e,a}function lt(e){const t=e.data_type||"text",a=[];return g.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 O(a,r,i){if(!g.includes(at,a.name)||1==i.showSystemFields){var l,s,o={name:i.fieldNamePrefix?""+i.fieldNamePrefix+a.name:a.name,label:a.label,labelRemark:a.inlineHelpText,required:(g.has(i,"required")?i:a).required};let t={};switch(a.type){case"text":t.type=k("text",r);break;case"textarea":t.type=k("textarea",r),t.tpl=`<%=(data.${a.name} || "").split("\\n").join('<br>')%>`;break;case"html":t=(s=a,r?{type:"html",name:s.name}:{type:"input-rich-text",name:s.name});break;case"markdown":t=(s=a,r?{type:"markdown",name:s.name,options:{linkify:!0,html:!0,breaks:!0}}:{type:"group",body:[{type:"editor",name:s.name,language:"markdown"},{type:"markdown",name:s.name,options:{linkify:!0,html:!0,breaks:!0}}]});break;case"select":t={type:k("select",r),joinValues:!1,options:lt(a),extractValue:!0,clearable:!0,labelField:"label",valueField:"value",tpl:r?y(a):null};let e=a.defaultValue;!g.has(a,"defaultValue")||g.isString(a.defaultValue)&&a.defaultValue.startsWith("{")||(g.isString(e)&&e.startsWith("{{")&&(e="$"+e.substring(1,e.length-1)),l=a.data_type||"text",null!=e&&("text"===l?t.value=String(e):"number"===l?t.value=Number(e):"boolean"===l&&(t.value="false"!==e))),a.multiple&&(t.multiple=!0,t.extractValue=!0);break;case"boolean":t={type:k("checkbox",r),tpl:r?ae(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:r?p(a):null,joinValues:!1};break;case"date":t={type:k("date",r),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:r?p(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:r?f(a):null,utc:!0,joinValues:!1};break;case"datetime":t={type:k("datetime",r),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSSZ",tpl:r?f(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:r?f(a):null,joinValues:!1};break;case"time":t={type:k("time",r),inputFormat:"HH:mm",timeFormat:"HH:mm",format:"1970-01-01THH:mm:00.000[Z]",tpl:r?f(a):null};break;case"currency":case"number":t=r?{type:"static-tpl",tpl:Q(a)}:{type:k("number",r),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:k("number",r),min:a.min,max:a.max,precision:a.scale};break;case"password":t={type:k("password",r),tpl:r?re(a):null};break;case"lookup":case"master_detail":t=await et(a,r,i);break;case"autonumber":r&&(t={type:"static-text"});break;case"url":t={type:k("url",r)};break;case"email":t={type:k("email",r)};break;case"avatar":case"image":case"file":t=Re(a,r);break;case"formula":case"summary":r&&(t.type=k(a.data_type,r));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:r};break;case"grid":t={type:"input-table",strictMode:!1,affixHeader:!1,editable:!r,addable:!r,removable:!r,draggable:!r,columns:[]};for(const c of a.subFields){var n=c.name.replace(a.name+".$.","").replace(a.name+".",""),d=await O(Object.assign({},c,{name:n}),r,i);d&&(delete d.name,delete d.label,t.columns.push({name:n,label:c.label,quickEdit:!r&&d}))}}return g.isEmpty(t)?void 0:(a.is_wide||"group"===t.type?t.className="col-span-2 m-1":t.className="m-1",r&&(t.className=t.className+" md:border-b"),r&&(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 st(e,t,a){var r=a.filterLoopCount||0;let i=e,l=("grid"===i.type?i=await it(e,t):"object"===e.type&&(i=await rt(e,t)),"__searchable__");if(i.name.indexOf(".")<0){e=b.cloneDeep(i),t=(b.includes(["textarea","html","code","autonumber"],i.type)&&(e.type="text"),"number"!==i.type&&"currency"!==i.type||(e.type="input-array",e.inline=!0,e.addable=!1,e.removable=!1,e.value=[null,null],e.items={type:"input-number"},e.is_wide=!0,l+="between__"),"date"===i.type&&(e.type="input-date-range",e.is_wide=!0,l+="between__"),"datetime"===i.type&&(e.type="input-datetime-range",e.is_wide=!0,l+="between__"),"time"===i.type&&(e.type="input-time-range",e.is_wide=!0,l+="between__"),"users"===i.reference_to&&(e.reference_to="space_users",e.reference_to_field="user"),e.readonly=!1,e.disabled=!1,e.multiple=!0,e.is_wide=!1,e.defaultValue=void 0,await O(e,!1,Object.assign({},a,{fieldNamePrefix:l,required:!1,showSystemFields:!0,filterVisible:r<5})));if(t)return t}}var ot=Object.freeze({__proto__:null,OMIT_FIELDS:at,getBaseFields:function(e){let t="m-1";return[{name:"createdInfo",label:"创建人",type:"static",labelClassName:"text-left",className:t=e?""+t:t,tpl:`<div><a href='${v.getObjectDetailPath({formFactor:r,appId:"admin",objectName:"users",recordId:"${created_by._id}"})}'>\${_display.created_by.label}</a>\${_display.created}</div>`},{name:"modifiedInfo",label:"修改人",type:"static",labelClassName:"text-left",className:t,tpl:`<div><a href='${v.getObjectDetailPath({formFactor:a,appId:"admin",objectName:"users",recordId:"${modified_by._id}"})}'>\${_display.modified_by.label}</a>\${_display.modified}</div>`}];var a,r},getAmisFieldType:function(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)}},getObjectFieldSubFields:rt,getGridFieldSubFields:it,getPermissionFields:function(e,t){const a=[],r=[];return g.each(e.fields,(e,t)=>{g.has(e,"name")||(e.name=t),r.push(e)}),g.each(g.sortBy(r,"sort_no"),function(e){e.hidden||a.push(Object.assign({},e,{permission:{allowEdit:!0}}))}),a},getSelectFieldOptions:lt,convertSFieldToAmisField:O,getFieldSearchable:st,getAmisStaticFieldType:k});async function nt(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 dt(e,t,a){a=a||{};var r,i,l=[];for(r of t)b.includes(["grid","avatar","image","object","[object]","[Object]","[grid]","[text]","audio","file"],r.type)||(delete r.defaultValue,delete r.required,delete r.is_wide,delete r.readonly,delete r.hidden,delete r.omit,(i=await st(r,t,a))&&l.push(i));return b.map(l,"name"),a.enableSearchableFieldsVisibleOn&&l.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:l}}async function ct(e,t,a){a=a||{};t=await dt(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:`
766
+ `);l={type:getAmisStaticFieldType("select",t),joinValues:!1,extractValue:!0,source:s,autoComplete:s,searchable:!0};let n=e.defaultValue;return!___namespace.has(e,"defaultValue")||___namespace.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(___namespace.isString(n)&&n.startsWith("{{")&&(n="$"+n.substring(1,n.length-1)),l.value=n),e.multiple&&(l.multiple=!0,l.extractValue=!0),t&&(l.tpl=await getLookupTpl(e,a)),l}async function getApi(e,t,a,i){e=await getFindQuery(e,t,a,i);return{method:"post",url:getApi$2(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function lookupToAmis(e,t,a){var i,r;return t?{type:getAmisStaticFieldType("picker",t),tpl:getRelatedFieldTpl(e,a)}:!e.reference_to||___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 p of a.subFields){var o=p.name.replace(`${a._prefix||""}${a.name}.$.`,"").replace(a.name+".",""),n=await convertSFieldToAmisField(Object.assign({},p,{name:o}),i,r);n&&(delete n.name,delete n.label,t.columns.push({name:o,label:p.label,quickEdit:!i&&n}))}}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({},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:`
725
767
  const objectName = data.objectName;
726
768
  const isLookup = data.isLookup;
727
769
  const listViewId = data.listViewId;
@@ -885,17 +927,17 @@
885
927
  localStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));
886
928
  }
887
929
  // ===END===
888
- `},{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 pt={startDateExpr:"start",endDateExpr:"end",allDayExpr:"is_all_day",textExpr:"name"};async function ut(t,e,a){var r=t.permissions,i=(a=a||{},(e=Object.assign({},pt,b.omitBy(e,b.isNil))).title||[e.startDateExpr,e.endDateExpr,e.allDayExpr,e.textExpr]);let l=[],s=(b.each(i,function(e){t.fields[e]&&l.push(t.fields[e])}),t.fields[e.allDayExpr]&&l.push(t.fields[e.allDayExpr]),a.sort||(i=a.sortField,a.sortOrder,i&&0),e.currentView);if(s)switch(s){case"day":s="timeGridDay";break;case"week":s="timeGridWeek";break;case"month":s="dayGridMonth";break;case"agenda":s="timeGridDay"}else s="timeGridWeek";a.calendarOptions=e;var o,n,i=await async function(e,t,a){var r=(a=a||{}).calendarOptions;const i=[];let{globalFilter:l,filter:s,sort:o,top:n,setDataToComponentId:d=""}=a;n=n||200,s=(s=u.default.isArray(s)?u.default.map(s,function(e){return e.operation?[e.field,e.operation,e.value]:e}):s)||[],u.default.each(t,function(e){e.searchable&&i.push(e.name)});var a=e.idFieldName||"_id",c=e.key_field||"_id";return(e=await He(e,null,t,{alias:"rows",limit:n,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'})).data.$term="$term",e.data.$self="$$",e.data.filter="$filter",e.data.pageSize=n||10,e.requestAdaptor=`
930
+ `},{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=`
889
931
  let selfData = JSON.parse(JSON.stringify(api.data.$self));
890
- ${l?`var filters = ${JSON.stringify(l)};`:"var filters = [];"}
932
+ ${s?`var filters = ${JSON.stringify(s)};`:"var filters = [];"}
891
933
  if(_.isEmpty(filters)){
892
- filters = api.data.filter || ${JSON.stringify(s)};
934
+ filters = api.data.filter || ${JSON.stringify(l)};
893
935
  }else{
894
- filters = [filters, 'and', api.data.filter || ${JSON.stringify(s)}]
936
+ filters = [filters, 'and', api.data.filter || ${JSON.stringify(l)}]
895
937
  }
896
938
  const eventFetchInfo = selfData.fetchInfo;
897
- const startDateExpr = "${r.startDateExpr}";
898
- const endDateExpr = "${r.endDateExpr}";
939
+ const startDateExpr = "${i.startDateExpr}";
940
+ const endDateExpr = "${i.endDateExpr}";
899
941
  const eventDurationFilters = [[endDateExpr, ">=", eventFetchInfo.start], [startDateExpr, "<=", eventFetchInfo.end]];
900
942
  if(_.isEmpty(filters)){
901
943
  filters = eventDurationFilters;
@@ -909,7 +951,7 @@
909
951
  var orderDir = api.data.orderDir || '';
910
952
  var sort = orderBy + ' ' + orderDir;
911
953
  sort = orderBy ? sort : "${o}";
912
- var allowSearchFields = ${JSON.stringify(i)};
954
+ var allowSearchFields = ${JSON.stringify(r)};
913
955
  if(api.data.$term){
914
956
  filters = [["name", "contains", "'+ api.data.$term +'"]];
915
957
  }else if(selfData.op === 'loadOptions' && selfData.value){
@@ -981,18 +1023,48 @@
981
1023
  const events = rows.map(function(n){
982
1024
  return {
983
1025
  id: n["${a}"],
984
- title: n["${r.textExpr}"],
985
- start: n["${r.startDateExpr}"],
986
- end: n["${r.endDateExpr}"],
987
- allDay: n["${r.allDayExpr}"]
1026
+ title: n["${i.textExpr}"],
1027
+ start: n["${i.startDateExpr}"],
1028
+ end: n["${i.endDateExpr}"],
1029
+ allDay: n["${i.allDayExpr}"]
988
1030
  }
989
1031
  });
990
1032
  const successCallback = selfData.successCallback;
991
1033
  const failureCallback = selfData.failureCallback;
992
1034
  successCallback(events);
993
1035
  return payload;
994
- `,e}(t,l,a),a=`
995
- const api = ${JSON.stringify(i)};
1036
+ `,e}function getCalendarRecordPermissionsApi(e,t){e=getRecordPermissionsApi(e,t,{alias:"rows",limit:1,fields:["allowEdit"]});return e.data.$self="$$",e.adaptor=`
1037
+ const rows = payload.data.rows || [];
1038
+ const selfData = api.data.$self;
1039
+ const revert = selfData.revert;
1040
+ const recordPermissions = rows[0] && rows[0].recordPermissions;
1041
+ const editable = !!(recordPermissions && recordPermissions.allowEdit);
1042
+ if(!editable){
1043
+ // 没有权限时还原
1044
+ revert && revert();
1045
+ }
1046
+ payload.data.editable = editable;
1047
+ return payload;
1048
+ `,e}function getCalendarRecordSaveApi(e,t){var a={},i=e.idFieldName||"_id",e=(a[i]="${event.data.event.id}",e.NAME_FIELD_KEY||"name"),e=(a[e]="${event.data.event.title}",a[t.startDateExpr]="${event.data.event.start}",a[t.endDateExpr]="${event.data.event.end}",a[t.allDayExpr]="${event.data.event.allDay}",{objectName:"${objectName}",$:a,$self:"$$"}),t=`
1049
+ ${`
1050
+ const formData = api.data.$;
1051
+ const objectName = api.data.objectName;
1052
+ let query = \`mutation{record: \${objectName}__update(id: "\${formData.${i}}", doc: {__saveData}){${i}}}\`;
1053
+ delete formData.${i};
1054
+ let __saveData = JSON.stringify(JSON.stringify(formData));
1055
+ `}
1056
+ api.data.query = query.replace('{__saveData}', __saveData);
1057
+ return api;
1058
+ `;return{method:"post",url:getApi$2(),data:e,requestAdaptor:t,adaptor:`
1059
+ if(payload.errors){
1060
+ payload.status = 2;
1061
+ payload.msg = payload.errors[0].message;
1062
+ const revert = api.data.$self.event.data.revert;
1063
+ revert && revert();
1064
+ }
1065
+ return payload;
1066
+ `,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
+ const api = ${JSON.stringify(r)};
996
1068
  event.data.calendarOptions = ${JSON.stringify(e)};
997
1069
  doAction({
998
1070
  "actionType": 'ajax',
@@ -1000,7 +1072,7 @@
1000
1072
  "api": api
1001
1073
  },
1002
1074
  });
1003
- `,i=`
1075
+ `,r=`
1004
1076
  const data = event.data;
1005
1077
  const doc = {};
1006
1078
  doc["${e.startDateExpr}"] = data.start;
@@ -1042,37 +1114,7 @@
1042
1114
  "size": "lg"
1043
1115
  }
1044
1116
  });
1045
- `,d=((n=Ke(n=t,"${event.id}",{alias:"rows",limit:1,fields:["allowEdit"]})).data.$self="$$",n.adaptor=`
1046
- const rows = payload.data.rows || [];
1047
- const selfData = api.data.$self;
1048
- const revert = selfData.revert;
1049
- const recordPermissions = rows[0] && rows[0].recordPermissions;
1050
- const editable = !!(recordPermissions && recordPermissions.allowEdit);
1051
- if(!editable){
1052
- // 没有权限时还原
1053
- revert && revert();
1054
- }
1055
- payload.data.editable = editable;
1056
- return payload;
1057
- `,d=e,c={},o=(p=t).idFieldName||"_id",c[o]="${event.data.event.id}",p=p.NAME_FIELD_KEY||"name",c[p]="${event.data.event.title}",c[d.startDateExpr]="${event.data.event.start}",c[d.endDateExpr]="${event.data.event.end}",c[d.allDayExpr]="${event.data.event.allDay}",p={objectName:"${objectName}",$:c,$self:"$$"},{method:"post",url:m(),data:p,requestAdaptor:`
1058
- ${`
1059
- const formData = api.data.$;
1060
- const objectName = api.data.objectName;
1061
- let query = \`mutation{record: \${objectName}__update(id: "\${formData.${o}}", doc: {__saveData}){${o}}}\`;
1062
- delete formData.${o};
1063
- let __saveData = JSON.stringify(JSON.stringify(formData));
1064
- `}
1065
- api.data.query = query.replace('{__saveData}', __saveData);
1066
- return api;
1067
- `,adaptor:`
1068
- if(payload.errors){
1069
- payload.status = 2;
1070
- payload.msg = payload.errors[0].message;
1071
- const revert = api.data.$self.event.data.revert;
1072
- revert && revert();
1073
- }
1074
- return payload;
1075
- `,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}),c={daysOfWeek:[1,2,3,4,5],startTime:"08:00",endTime:"18:00"},p=(b.isEmpty(e.startDayHour)||(c.startTime=e.startDayHour+":00"),b.isEmpty(e.endDayHour)||(c.endTime=e.endDayHour+":00"),{type:"steedos-fullcalendar",label:"",name:"fullcalendar",editable:r.allowEdit,selectable:r.allowCreate,selectMirror:r.allowCreate,initialView:s,businessHours:c,onEvent:{getEvents:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:a}]},select:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:i}]},eventClick:{weight:0,actions:[{componentId:"",args:{},actionType:"custom",script:`
1117
+ `,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:`
1076
1118
  const data = event.data;
1077
1119
  const eventData = data.event;
1078
1120
  const appId = data.appId;
@@ -1097,16 +1139,16 @@
1097
1139
  "actions": []
1098
1140
  }
1099
1141
  });
1100
- `}]},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:d,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 p}const mt=(e,t,a)=>{e=e.replace(/\./g,"_");a=(e=>{const t=["_id"];return e.push("record_permissions"),b.each(e,e=>{-1<e.indexOf(".")&&(e=e.split(".")[0]),t.push(""+e)}),""+t.join(" ")})(a);let r="";t=[`id: "${t}"`];return`{record:${e}__findOne${r=0<t.length?`(${t.join(",")})`:r}{${a}}}`},ft=async(e,t,a)=>{return(await s("/graphql",{method:"post",body:JSON.stringify({query:mt(e,t,a)})})).data.record};let D={},yt;"undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=D),D=window.UI_SCHEMA_CACHE);const bt=(e,t)=>{D[e]=t},ht=e=>b.cloneDeep(D[e]),_t=e=>b.has(D,e);function gt(e,t){let a=[];return a="SMALL"===t?b.isEmpty(e.mobile_columns)?b.slice(e.columns,0,4):e.mobile_columns:e.columns}function I(e){let r="";return e&&e.sort&&e.sort.length&&b.each(e.sort,function(e,t){var a;b.isArray(e)?(a=e[0]+" "+(e[1]||""),a=0<t?","+a:a,r+=a):(a=e.field_name+" "+e.order,a=0<t?","+a:a,r+=a)}),r}function vt(t){if(t){var a=Y();let e=t.filters;return"mine"===t.filter_scope&&(u.default.isEmpty(e)?e=[["owner","=",a]]:e.push(["owner","=",a])),e}}async function V(t,e){if(t){if(!_t(t)||e){let a=null;try{if(!(a=yt?await yt(t,e):await s(`/service/api/@${t.replace(/\./g,"_")}/uiSchema`,{method:"get"})))return;bt(t,a),b.each(a.list_views,(e,t)=>{e.name=t,b.has(e,"columns")||(e.columns=a.list_views.all.columns)})}catch(e){console.error("getUISchema",t,e),bt(t,null)}}return ht(t)}}async function E(e,t){return(await V(e))?.fields[t]}async function wt(e,t){e=await V(e);return{uiSchema:e,amisSchema:await Ce(e,t)}}async function A(e,t,a,r={}){var i=await V(t),l=b.find(i.list_views,(e,t)=>t===(a=a||t)||e._id===a);if(!l)return{uiSchema:i};if(l.enable_amis_schema&&l.amis_schema){const f=b.isString(l.amis_schema)?JSON.parse(l.amis_schema):l.amis_schema;return{uiSchema:i,isCustomAmisSchema:!0,amisSchema:f}}var s=gt(l,r.formFactor),o=I(l),n=vt(l),d=l&&l._filters;if("calendar"===l.type){const f={type:"steedos-object-calendar",objectApiName:t,filters:n,filtersFunction:d,sort:o,...l.options};return{uiSchema:i,isCalendar:!0,amisSchema:f}}var c=r.defaults||{};!c.headerSchema&&r.showHeader&&(c.headerSchema=await N(i)),r.showHeader||(c.headerSchema=null);try{var p,u=location.pathname+"/crud/"+r.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=b.defaultsDeep({},p,c.listSchema||{}))}catch(e){console.error("本地存储中crud参数解析异常:",e)}r.defaults=c;const f={type:"steedos-object-table",objectApiName:t,columns:s,extraColumns:l.extra_columns,filters:n,filtersFunction:d,sort:o,ctx:r};return{uiSchema:i,amisSchema:f}}async function $t(e,t,a,r={}){const i=await V(t);let l=r.sort;l||(o=r.sortField,n=r.sortOrder,o&&(l=o+" "+n||"asc"));let s=[];b.each(a,function(e){b.isString(e)&&i.fields[e]?s.push(i.fields[e]):b.isObject(e)&&i.fields[e.field]&&s.push(Object.assign({},i.fields[e.field],{width:e.width,wrap:e.wrap}))});var o=r.extraColumns,n=(o&&b.each(o,function(e){b.isString(e)?s.push({extra:!0,name:e}):b.isObject(e)&&s.push({extra:!0,name:e.field})}),await Ae(i,s,{tabId:t,appId:e,objectName:t,...r,filter:r.filters,sort:l,buttons:await F(i,r)}));return{uiSchema:i,amisSchema:n}}const Ft=(e,t,a,r)=>{a=b.find(a.fields,e=>r===e?.name);return b.isString(a.reference_to)?a.multiple?[t]:t:{o:e,ids:[t]}};async function Nt(t,r,a,i){var e=await V(r),l=[],s=[].concat(e.related_lists||[]);if(b.isEmpty(s))for(const m of[].concat(e.details||[])){var o,n,d=m.split("."),c=await V(d[0]);c&&(((o=await E(d[0],d[1]))._reference_to||o.reference_to&&!b.isString(o.reference_to))&&d[1],d[1],n=(o=await A(0,d[0],"all",{formFactor:i,buttons:await F(c,{isMobile:!1})})).amisSchema,c=await S(c),n.headerSchema=c,n.headerToolbar=[],n.columnsTogglable=!1,delete n.ctx,o.amisSchema={type:"service",className:"b-a m-b",data:{masterObjectName:r,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]]:Ft(r,a,o.uiSchema,d[1])}}}]},l.push({masterObjectName:r,object_name:d[0],foreign_key:d[1],schema:o}))}else for(const f of s){var p=f.related_field_fullname.split(".");let e=null;var u=await E(p[0],p[1]);if(u){e=u._reference_to||u.reference_to&&!b.isString(u.reference_to)?[[p[1]+"/o","=",r],[p[1]+"/ids","=",a]]:[""+p[1],"=",a];const y=await V(p[0]);if(y){let a=[];b.forEach(f.field_names,t=>{var e=b.find(y.fields,e=>e.name===t);e&&a.push(e)}),l.push({masterObjectName:r,object_name:p[0],foreign_key:p[1],schema:{uiSchema:y,amisSchema:await Ae(y,a,{tabId:r,appId:t,objectName:p[0],formFactor:i,globalFilter:e,buttons:await F(y,{isMobile:!1})})}})}}}return l}const T={};async function St(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"}}const kt=["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"],jt={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"},xt=e=>_.has(e,"conjunction"),Ot=e=>{const a=[],{conjunction:r,children:t}=e;return r&&t&&t.forEach(e=>{var t;0<a.length&&a.push(r),xt(e)?(t=Ot(e))&&0<t.length&&a.push(t):(t=Dt(e))&&a.push(t)}),a},Dt=e=>{var t,{left:e,op:a,right:r}=e;if(e&&"field"===e.type&&a)return a.startsWith("between:")?(t=a.split(":"),[e.field,t[0],t[1]]):null!=r?[e.field,jt[a],r]:void 0},It=t=>{var e;if(3===t.length)return"between"===(e=u.default.findKey(jt,e=>e===t[1]))&&u.default.includes(kt,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))},Vt=e=>!u.default.isArray(e)&&u.default.isObject(e)?[e.field,e.operation,e.value]:e,Et=e=>{e=Vt(e);const t={conjunction:"and",children:[]};return e&&0!=e.length&&e.forEach(e=>{"or"===(e=Vt(e))||"and"===e?t.conjunction=e:3===e.length&&-1==e.indexOf("and")&&-1==e.indexOf("or")?t.children.push(It(e)):t.children.push(Et(e))}),t};const At=e=>{const a=[];return b.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},Tt=(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=At(e);break;case"user":case"group":a.type="input-text";break;case"radio":a.type="radios",a.options=At(e);break;case"multiSelect":a.type="checkboxes",a.options=At(e);break;case"odata":var r=e.formula.substr(1,e.formula.length-2);a.type="select",a.multiple=e.is_multiselect,a.labelField=r,a.valueField="$$",a.source={url:b.startsWith(e.url,"http")?e.url:"${context.rootUrl}"+e.url,method:"get",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};break;case"html":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=[],b.each(e.sfields,e=>{"hidden"!=e.type&&a.columns.push(Tt(e,!0))});break;case"section":a.type="input-text"}return a},Ct=a=>{const r=[];return b.each(a,e=>{var t;"table"!=e.type&&r.push({className:"td-title",align:"section"!=e.type?"center":"left",width:"section"!=e.type?"16%":"",colspan:"section"==e.type?4:"",body:[{type:"tpl",tpl:`<div style='font-size:20px'>${e.name}</div>`}]}),"section"!=e.type&&r.push((e=e,t=a.length,{background:"readonly"===e.permission?"":"rgba(255,255,0,.1)",colspan:"table"===e.type?4:3-2*(t-1),align:"left",className:"td-field",body:[Tt(e)],style:{marginTop:"0",paddingTop:"0",paddingRight:"0",paddingBottom:"0",paddingLeft:"0",marginRight:"0",marginBottom:"0",marginLeft:"0"}}))}),r},qt=a=>{const t=[],r=[];let i=[];return b.each(a.fields,(e,t)=>{e.is_wide?(0!=i.length&&r.push(i),"table"==e.type&&r.push([Object.assign({},e,{type:"section"})]),(i=[]).push(e),r.push(i),i=[]):(i.push(e),2!=i.length&&t!==a.fields.length-1||(r.push(i),i=[]))}),b.each(r,e=>{t.push({background:"#F7F7F7",tds:Ct(e)})}),t};function Pt(e){var i=[];return e.charCodeAt(0)===".".charCodeAt(0)&&i.push(""),e.replace(new RegExp("[^.[\\]]+|\\[(?:([^\"'][^[]*)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g"),function(e,t,a,r){return a?e=r.replace(/\\(\\)?/g,"$1"):t&&(e=t.trim()),i.push(e),""}),i}var C=function(){return(C=Object.assign||function(e){for(var t,a=1,r=arguments.length;a<r;a++)for(var i in t=arguments[a])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};function Lt(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 Bt(e){var t=typeof e;return e&&"string"!=t&&"number"!=t&&"boolean"!=t&&"function"!=t&&!Array.isArray(e)}e.Field=ot,e.absoluteUrl=function(e){return""+o()+e},e.amisRender=(e,t,a={},r={},i)=>{var l=amisRequire("amis/embed"),{router:i,assets:s}=i;return J(s),l.embed(e,t,a,Object.assign(z(i),r))},e.amisRootClick=(e,t)=>{"a"===t.target.nodeName.toLocaleLowerCase()&&t.target.href&&(t.preventDefault(),e.push(t.target.href))},e.cloneObject=Lt,e.conditionsToFilters=e=>Ot(e),e.createObject=function(e,t,a){var r=(e=e&&Object.isFrozen(e)?Lt(e):e)?Object.create(e,C(C({},a),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,a);return t&&Bt(t)&&Object.keys(t).forEach(function(e){return r[e]=t[e]}),r},e.defaultsDeep=c,e.deleteVariable=function(e,t){if(e)if(e.hasOwnProperty(t))delete e[t];else{for(var a=Pt(t),t=a.pop();a.length;){var r=a.shift();if(!L.default(e[r])){if(e[r])throw new Error("目标路径不是纯对象,不能修改");break}e=e[r]=C({},e[r])}e&&e.hasOwnProperty&&e.hasOwnProperty(t)&&delete e[t]}},e.execute=Se,e.executeButton=ke,e.extendObject=function(e,t,a){var r=Lt(e,a=void 0===a?!0:a);return t&&Object.keys(t).forEach(function(e){return r[e]=t[e]}),r},e.fetchAPI=s,e.filtersToConditions=e=>Et(e),e.getAmisObjectRelatedList=Nt,e.getApp=async function(e){return await s(`/service/api/apps/${e}/menus`)},e.getApps=async function(){return await s("/service/api/apps/menus")},e.getAuthToken=H,e.getAuthorization=K,e.getButton=async(e,t,a)=>{var r=await V(e);if(r){var i=await $(r,a),i=u.default.find(i,e=>e.name===t);if(i)return"standard_edit"==i.name?{label:i.label,name:i.name,on:i.on,...await d.getStandardEdit(r,a)}:"cms_files"!=e&&"standard_new"==i.name?{label:i.label,name:i.name,on:i.on,...await d.getStandardNew(r,a)}:"standard_delete"==i.name?{label:i.label,name:i.name,on:i.on,sort:i.sort,...await d.getStandardDelete(r,a)}:r.hasImportTemplates&&"standard_import_data"===i.name?{label:i.label,name:i.name,on:i.on,sort:i.sort,...await d.getStandardImportData(r,a)}:"standard_open_view"===i.name?{label:i.label,name:i.name,on:i.on,sort:i.sort,...await d.getStandardOpenView(r,a)}:"standard_delete_many"===i.name?{label:i.label,name:i.name,on:i.on,sort:i.sort,...await d.getStandardDeleteMany(r,a)}:i}},e.getButtonVisible=(t,e)=>{if(t._visible&&(u.default.startsWith(u.default.trim(t._visible),"function")?(window.eval("var fun = "+t._visible),t.visible=fun):ye(t._visible)&&(t.visible=e=>{be(t._visible,e.record,"#",{now:new Date},e.userSession)})),!u.default.isFunction(t.visible))return t.visible;try{return t.visible(e)}catch(e){}},e.getButtonVisibleOn=h,e.getButtons=$,e.getCalendarSchema=async function(e,t,a,r={}){var i=await V(t);return{uiSchema:i,amisSchema:await ut(i,a,{tabId:t,appId:e,objectName:t,...r})}},e.getDefaultRenderData=function(){var e=a();return{context:{rootUrl:o(),userId:e.userId,tenantId:e.spaceId,authToken:e.authToken,user:e},global:{userId:e.userId,spaceId:e.spaceId,user:e,now:new Date}}},e.getEnv=e=>T[e],e.getEnvs=()=>T,e.getEvn=z,e.getField=E,e.getFileSrc=function(e){return o()+"/api/files/files/"+e},e.getFlowFormSchema=e=>{return{type:"page",body:[{type:"service",data:{beijing:"20",tianjing:"19"},body:[{type:"tpl",id:"u:f5bb0ad602a6",tpl:`<div style='font-size:20px'>${e.title}</div>`,inline:!0,wrapperComponent:"",style:{fontFamily:"",fontSize:12,textAlign:"center"}},(e=e,{type:"table-view",trs:qt(e),id:"u:047f3669468b"})],id:"u:a381684e042b"}],id:"u:63849ea39e12",messages:{},pullRefresh:{},regions:["body"]}},e.getFormPageInitSchema=async function(e){return{type:"page",bodyClassName:"",regions:["body"],body:[(await wt(e,{recordId:"${recordId}"})).amisSchema]}},e.getFormSchema=wt,e.getImageSrc=function(e){return o()+"/api/files/images/"+e},e.getListPageInitSchema=async function(e,t,a){return{type:"page",bodyClassName:"",regions:["body"],body:[{type:"steedos-object-listview",objectApiName:e,columnsTogglable:!1,showHeader:!0}]}},e.getListSchema=A,e.getListViewButtons=we,e.getListViewColumns=gt,e.getListViewFilter=vt,e.getListViewItemButtons=F,e.getListViewSort=I,e.getListviewInitSchema=async function(t,a,r){r=r||{};var i=await V(t),l=b.find(i.list_views,(e,t)=>t===a);let s={};if(l){var o=gt(l,r.formFactor),l=I(l),n=r.defaults||{};n.headerSchema||(i=await N(i),n.headerSchema=i),r.defaults=n;let e=r.setDataToComponentId;e=e||"service_listview_"+t;i=await $t(null,t,o,{sort:l,...r,setDataToComponentId:e});delete(s=i.amisSchema).data.$master,delete s.data._id,delete s.data.recordPermissions,delete s.data.uiSchema}return s},e.getNotifications=async()=>{var e=a(),e=`
1142
+ `}]},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
+ {
1144
+ ${a.join(",")}
1145
+ }
1146
+ `;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=function(js){try{return eval(js)}catch(e){console.error(e,js)}}(`(${field._reference_to})`))}catch(exception){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 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$1(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 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 getObjectRelatedList(e,t,a,i){var r=await getUISchema(t),s=[],l=[].concat(r.related_lists||[]);if(_$1.isEmpty(l))for(const d of[].concat(r.details||[])){var o=d.split(".");s.push({masterObjectName:t,object_name:o[0],foreign_key:o[1]})}else for(const c of l){var n=c.related_field_fullname.split(".");s.push({masterObjectName:t,object_name:n[0],foreign_key:n[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:l,hiddenEmptyTable:o,appId:n,label:d,className:c}=r;var p=await getUISchema(a),{list_views:m,label:u,fields:f}=p;d=d||u,_$1.keys(m).includes("all")||_$1.keys(m)[0];let g=null;u=await getField(a,i=i||_$1.findKey(f,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===t}));let _=e;u.reference_to_field&&"_id"!=u.reference_to_field&&(m=await getRecord(t,e,[u.reference_to_field]),_=m[u.reference_to_field]),g=u._reference_to||u.reference_to&&!_$1.isString(u.reference_to)?[[i+"/o","=",t],[i+"/ids","=",_]]:[""+i,"=",_];f=await getObjectRecordDetailRelatedListHeader(p,d),e="steedos-record-related-list-"+a,m=(await getRelatedListSchema(null,a,null,{globalFilter:g,defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:f},showHeader:!0,top:s,perPage:l,setDataToComponentId:e,tableHiddenOn:o?"this.$count === 0":null,appId:n,...r})).amisSchema;if(m)return{uiSchema:p,amisSchema:{type:"service",id:e,className:"steedos-record-related-list sm:rounded sm: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:[{...m,data:{"&":"$$",appId:"${appId}",app_id:"${appId}",relatedKey:i,objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[i]:getRelatedFieldValue(t,_,p,i)}}}]}}}function getDefaultRelatedListProps(e,a,t){console.log("getDefaultRelatedListProps==>",e,a,t);var i=_$1.find(e.list_views,(e,t)=>"calendar"!==e.type&&t===(a=a||t));let r=[],s="",l=null,o=null;return i?(r=getListViewColumns(i,t.formFactor),s=getListViewSort(i),l=getListViewFilter(i),o=i&&i._filters):(t=_$1.find(e.fields,(e,t)=>e.is_name),r=t?[t.name]:["name"]),{columns:r,sort:s,filter:l,filtersFunction:o}}function getRelatedListProps(e,t,a){if(a.columns){var i=getListViewSort(a.sort);let e=a.filters?[e,a.globalFilter]:a.globalFilter;return{columns:a.columns,sort:i,filter:e,filtersFunction:a.filtersFunction}}return getDefaultRelatedListProps(e,t,a)}async function getRelatedListSchema(e,t,a,i={}){var r=await getUISchema(t),s=r.list_views,{columns:l,sort:o,filter:n,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:l,extraColumns:s.extra_columns,filters:n,filtersFunction:d,sort:o,ctx:i});return{uiSchema:r,amisSchema:a}}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,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 _$1.map(t,e=>e.schema.amisSchema).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`,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$1(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=`
1101
1147
  {
1102
1148
  notifications(filters: ["owner","=","${e.userId}"], sort: "created desc,name", top : 10){
1103
1149
  _id,name,body,related_to,related_name,url,owner,is_read,from,created
1104
1150
  },
1105
1151
  unReadCount: notifications__count(filters: [["owner","=","${e.userId}"], ["is_read", "!=", true]])
1106
1152
  }
1107
- `;return(await s("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getObjectDetailButtons=$e,e.getObjectDetailMoreButtons=Fe,e.getObjectFieldsFilterBarSchema=ct,e.getObjectFieldsFilterButtonSchema=nt,e.getObjectFieldsFilterFormSchema=dt,e.getObjectListHeader=N,e.getObjectListHeaderFieldsFilterBar=xe,e.getObjectListHeaderFirstLine=je,e.getObjectListHeaderSecordLine=async function(e,t,a){return e="listview_"+e.name,{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 nt(),{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"}},e.getObjectRecordDetailHeader=Oe,e.getObjectRecordDetailRelatedListHeader=S,e.getObjectRelated=async function({masterObjectName:e,objectName:t,relatedFieldName:a,recordId:r,formFactor:i}){let l=null;var s=await E(t,a),s=(l=s._reference_to||s.reference_to&&!b.isString(s.reference_to)?[[a+"/o","=",e],[a+"/ids","=",r]]:[""+a,"=",r],await V(e));return{masterObjectName:e,object_name:t,foreign_key:a,schema:await A(0,t,"all",{globalFilter:l,formFactor:i}),record:await ft(e,r,[s.NAME_FIELD_KEY]),masterObjectUISchema:s}},e.getObjectRelatedList=async function(t,r,a,i){var e=await V(r),l=[],s=[].concat(e.related_lists||[]);if(b.isEmpty(s))for(const u of[].concat(e.details||[])){var o=u.split("."),n=await V(o[0]);if(n){let e=null;var d=await E(o[0],o[1]);e=d._reference_to||d.reference_to&&!b.isString(d.reference_to)?[[o[1]+"/o","=",r],[o[1]+"/ids","=",a]]:[""+o[1],"=",a],l.push({masterObjectName:r,object_name:o[0],foreign_key:o[1],schema:await A(0,o[0],"all",{globalFilter:e,formFactor:i,buttons:await F(n,{isMobile:!1})})})}}else for(const m of s){var c=m.related_field_fullname.split(".");let e=null;var p=await E(c[0],c[1]);if(p){e=p._reference_to||p.reference_to&&!b.isString(p.reference_to)?[[c[1]+"/o","=",r],[c[1]+"/ids","=",a]]:[""+c[1],"=",a];const f=await V(c[0]);if(f){let a=[];b.forEach(m.field_names,t=>{var e=b.find(f.fields,e=>e.name===t);e&&a.push(e)}),l.push({masterObjectName:r,object_name:c[0],foreign_key:c[1],label:m.label,schema:{uiSchema:f,amisSchema:await Ae(f,a,{tabId:r,appId:t,objectName:c[0],formFactor:i,globalFilter:e,buttons:await F(f,{isMobile:!1})})}})}}}return l},e.getObjectRelatedListButtons=Ne,e.getObjectRelatedListHeader=async function(e,t,a){},e.getPage=i,e.getRecord=ft,e.getRecordDetailHeaderSchema=async function(e,t,a){return{uiSchema:e=await V(e),amisSchema:await Oe(e,t,a)}},e.getRecordDetailRelatedListSchema=async function(t,e,a,r,i,l,s,o,n,d){var c=await V(a),{list_views:p,label:u,fields:m}=c,u=(n=n||u,b.keys(p)[0]);let f=null,y=(p=await E(a,r=r||b.findKey(m,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===t})),e);return p.reference_to_field&&"_id"!=p.reference_to_field&&(m=await ft(t,e,[p.reference_to_field]),y=m[p.reference_to_field]),f=p._reference_to||p.reference_to&&!b.isString(p.reference_to)?[[r+"/o","=",t],[r+"/ids","=",y]]:[""+r,"=",y],e=await S(c,n),m="steedos-record-related-list-"+a,p=(await A(0,a,u,{globalFilter:f,defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:e},showHeader:!0,top:i,perPage:l,setDataToComponentId:m,tableHiddenOn:s?"this.$count === 0":null,appId:o})).amisSchema,{uiSchema:c,amisSchema:{type:"service",id:m,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:r,objectName:a,listViewId:`amis-\${appId}-${a}-listview`},body:[{...p,data:{"&":"$$",appId:"${appId}",app_id:"${appId}",relatedKey:r,objectName:"${objectName}",recordId:"${masterRecordId}",defaultData:{[r]:Ft(t,y,c,r)}}}]}}},e.getRecordDetailSchema=async function(e,t){return{uiSchema:e=await V(e),amisSchema:{type:"service",body:[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:48d2c28eb755",onEvent:{recordLoaded:{actions:[{actionType:"reload",data:{name:`\${record.${e?.NAME_FIELD_KEY||"name"}}`,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"}]}}},e.getRecordPageInitSchema=async function(e){var t=await Nt(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 V(e))?.NAME_FIELD_KEY||"name"}}`,record:"${record}",recordLoaded:!0}}]}}}],r={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=b.map(t,e=>e.schema.amisSchema)).length&&r.tabs.push({title:"相关",body:t}),a.push(r),{type:"page",id:`page_${e}_record_detail`,bodyClassName:"",regions:["body"],body:a}},e.getRecordPermissions=async(e,t)=>{return await s(`/service/api/@${e}/recordPermissions/`+t,{method:"GET"})},e.getRelatedFieldValue=Ft,e.getRelatedsCount=async(t,e)=>{const a=[];b.each(e,e=>{a.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${t}"]])`)});e=`
1108
- {
1109
- ${a.join(",")}
1110
- }
1111
- `;return(await s("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getRootUrl=o,e.getSearchableFieldsFilterSchema=async function(e,t,a){return dt(e,t,a)},e.getSelectUserSchema=We,e.getSpaceUsersPickerAmisSchema=St,e.getSpaceUsersPickerSchema=async function(e,t){var a=await V("space_users");return{uiSchema:a,amisSchema:await St(0,e,t)}},e.getSteedosAuth=a,e.getTableSchema=$t,e.getTenantId=U,e.getUISchema=V,e.getUserId=Y,e.getViewSchema=async function(e,t,a){return{uiSchema:e=await V(e),amisSchema:await async function(e,t,a){var{layout:r="normal",labelAlign:i,formInitProps:l}=a,s=u.default.values(e.fields);return{type:"service",name:"page_readonly_"+t,id:"detail_"+t,data:{global:Te("read"),context:{rootUrl:o(),tenantId:U(),authToken:H()}},api:await le(e,t,s,l),body:[{type:"form",mode:r,labelAlign:i,persistData:!1,promptPageLeave:!1,name:"form_readonly_"+t,debug:!1,title:"",data:{formData:"$$"},wrapWithPanel:!1,body:await ue(b.map(s,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}}}]}}}}(e,t,a)}},e.isExpression=ye,e.isObject=Bt,e.lookupToAmis=et,e.lookupToAmisPicker=Ze,e.lookupToAmisSelect=Xe,e.lookupToAmisSelectUser=tt,e.markReadAll=async()=>s("/api/v4/notifications/all/markReadAll",{method:"POST"}),e.parseSingleExpression=be,e.registerRemoteAssets=async t=>{if(t&&0<t.length){let e=t;b.isString(e)&&(e=e.split(",")),await Builder.registerRemoteAssets(e);t=b.filter(Builder.registry["meta-components"],function(e){return e.componentName&&e.amis?.render});return b.map(t,e=>({componentType:e.componentType,componentName:e.componentName,...e.amis.render}))}return[]},e.registerRenders=J,e.setEnv=(e,t)=>{T[e]=t},e.setEnvs=e=>{b.map(e,(e,t)=>{T[t]=e})},e.setRootUrl=function(e){b.endsWith(e,"/")&&(e=e.substring(0,e.length-1)),localStorage.setItem("steedos:rootUrl",e)},e.setSteedosAuth=e=>{Object.assign(M,e)},e.setUISchemaFunction=function(e){yt=e},e.setVariable=function(e,t,a,r){if(t in(e=e||{}))e[t]=a;else{for(var i=!1!==r?Pt(t):[t],r=i.pop();i.length;){var l=i.shift();e=L.default(e[l])?e[l]=C({},e[l]):(Array.isArray(e[l])?e[l]=e[l].concat():(e[l],e[l]={}),e[l])}e[r]=a}},e.standardButtonsTodo=t,Object.defineProperty(e,"__esModule",{value:!0})});
1153
+ `;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.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$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,Object.defineProperty(exports,"__esModule",{value:!0})});
1112
1154
  //# sourceMappingURL=index.umd.js.map