@steedos-widgets/amis-lib 0.0.9 → 0.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/index.cjs.js +155 -115
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.esm.js +155 -115
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +164 -124
- package/dist/index.umd.js.map +1 -1
- package/dist/index.umd.min.js +164 -124
- package/dist/types/index.d.ts +2 -0
- package/dist/types/lib/converter/amis/fields/index.d.ts +3 -1
- package/dist/types/lib/converter/amis/fields/lookup.d.ts +19 -19
- package/dist/types/lib/converter/amis/fields/sections.d.ts +1 -0
- package/dist/types/lib/converter/amis/fields_filter.d.ts +138 -0
- package/dist/types/lib/converter/amis/form.d.ts +1 -0
- package/dist/types/lib/converter/amis/header.d.ts +21 -2
- package/dist/types/lib/converter/amis/index.d.ts +16 -0
- package/dist/types/lib/objects.d.ts +21 -1
- package/dist/types/lib/page_init.d.ts +30 -1
- package/package.json +1 -1
package/dist/index.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports,require("lodash"),require("lodash/isPlainObject")):"function"==typeof define&&define.amd?define(["exports","lodash","lodash/isPlainObject"],a):a((e="undefined"!=typeof globalThis?globalThis:e||self)["amis-lib"]={},e._$1,e.isPlainObject)}(this,function(e,b,a){window;function C(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function B(t){var i;return t&&t.__esModule?t:(i=Object.create(null),t&&Object.keys(t).forEach(function(e){var a;"default"!==e&&(a=Object.getOwnPropertyDescriptor(t,e),Object.defineProperty(i,e,a.get?a:{enumerable:!0,get:function(){return t[e]}}))}),i.default=t,Object.freeze(i))}var y=B(b),c=C(b),P=C(a);const z=[],
|
|
1
|
+
!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports,require("lodash"),require("lodash/isPlainObject")):"function"==typeof define&&define.amd?define(["exports","lodash","lodash/isPlainObject"],a):a((e="undefined"!=typeof globalThis?globalThis:e||self)["amis-lib"]={},e._$1,e.isPlainObject)}(this,function(e,b,a){window;function C(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function B(t){var i;return t&&t.__esModule?t:(i=Object.create(null),t&&Object.keys(t).forEach(function(e){var a;"default"!==e&&(a=Object.getOwnPropertyDescriptor(t,e),Object.defineProperty(i,e,a.get?a:{enumerable:!0,get:function(){return t[e]}}))}),i.default=t,Object.freeze(i))}var y=B(b),c=C(b),P=C(a);const z=[],L=(e,a=window.location)=>{(e=e||"")&&"#"===e[0]?e=a.pathname+a.search+e:e&&"?"===e[0]&&(e=a.pathname+e);var t=e.indexOf("?"),i=e.indexOf("#");let r=~t?e.substring(0,t):~i?e.substring(0,i):e;t=~t?e.substring(t,~i?i:void 0):"",e=~i?e.substring(i):a.hash;if(r){if("/"!=r[0]&&!/^https?\:\/\//.test(r)){var n,l=a.pathname.split("/");for(l.pop();n=/^\.\.?\//.exec(r);)"../"===n[0]&&l.pop(),r=r.substring(n[0].length);r=l.concat(r).join("/")}}else r=a.pathname;return r+t+e};const R=t=>({theme:"antd",notify:(e,a)=>{a.props?.schema.tpl?SteedosUI.message[e](a.props?.schema.tpl):"string"==typeof a?SteedosUI.message[e](a):console.warn("notify",e,a)},confirm:t=>new Promise((e,a)=>SteedosUI.Modal.confirm({title:t,onOk:()=>{e(!0)},okText:"确认",cancelText:"取消"})),jumpTo:(e,a)=>{if("goBack"===e)return window.history.back();e=L(e),a&&"url"===a.actionType?!1===a.blank?t.push(e):window.open(e):a&&e&&a.target?window.open(e,a.target):/^https?:\/\//.test(e)?window.location.replace(e):t.push(e)}}),U=e=>{if(!b.isEmpty(e)&&b.isArray(e)){var a=amisRequire("amis");const t={renderer:a.Renderer,formitem:a.FormItem,options:a.OptionsControl};let l=amisRequire("react");b.each(e,a=>{if(!b.find(z,e=>e===a.componentName)){let n=Builder.components.find(e=>e.name===a.componentName),e=n.class;"amisSchema"===a.componentType&&(e=a=>{var{body:e,render:t}=a;const[i,r]=l.useState(null);return l.useEffect(()=>{var e=n.class(a);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&&t?t("body",i):""),l.createElement(l.Fragment,null,t?t("body",e):""))}),t[a.usage]?(t[a.usage]({test:new RegExp("(^|/)"+a.type),type:a.type,weight:a.weight,autoVar:!0})(e),console.info("注册了一个自定义amis组件:",{type:a.type,weight:a.weight,component:e,framework:a.framework,usage:a.usage})):console.error(`${consoleTag}自定义组件注册失败,不存在${a.usage}自定义组件类型。`),z.push(a.componentName)}})}};const M={},i=()=>"undefined"==typeof window?{}:Builder.settings.context||Builder.settings;async function l(e,a={credentials:"include"}){var t={"Content-Type":"application/json"},i=J(),i=(i&&(t.Authorization=i),a.headers=Object.assign({},t,a.headers),a.credentials="include",await fetch(""+p()+e,a));if(401===i.status)throw new Error(401);t=await i.json();if(t.errors)throw console.error(t.errors),new Error("Failed to fetch API");return t}function s(){try{let e=i().tenantId;var a;return(window.location.search&&!e&&(a=new URLSearchParams(window.location.search),e=a.get("X-Space-Id")),e)?e:null}catch(e){console.error(e)}}function d(){try{var e=i().authToken;return e?e:null}catch(e){console.error(e)}}function J(){try{var e=i(),a=e.tenantId,t=e.authToken;return a&&t?`Bearer ${a},`+t:null}catch(e){console.error(e)}}function p(e){var a=i();return a.rootUrl||("undefined"!=typeof window?window.localStorage.getItem("steedos:rootUrl"):"")||e}const t=()=>b.cloneDeep(M);async function H(e,a){0!=a&&(a=!0);let t=["_id"],i=[],r=[];for(const n of r=y.isArray(e)?e:y.values(e))n.name.indexOf(".")<0&&(!a||"lookup"!=n.type&&"master_detail"!=n.type?t.push(n.alias?n.alias+":"+n.name:n.name):(t.push(""+n.name),i.push(""+n.name)),b.includes(["time","date","datetime","boolean","number","currency"],n.type)&&t.push(""+n.name),b.includes(["time","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary"],n.type)&&i.push(""+n.name));return i=y.uniq(i),t=y.uniq(t),0<i.length?`${t.join(",")},_display:_ui{${i.join(",")}}`:""+t.join(" ")}async function Y(e,a,t,i){let r="",n=(a&&(r=`(filters:["${e.idFieldName}", "=", "${a}"])`),"data");return i&&(i.alias&&(n=i.alias),i.filters&&(r=`(filters:${i.filters})`),i.queryOptions&&(r=`(${i.queryOptions})`)),{query:`{${n}:${e.name}${r}{${await H(t)}}}`}}function K(e){return`
|
|
2
2
|
const formData = api.data.$;
|
|
3
3
|
for (key in formData){
|
|
4
4
|
// image、select等字段清空值后保存的空字符串转换为null。
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
};
|
|
65
65
|
delete formData._id;
|
|
66
66
|
let __saveData = JSON.stringify(JSON.stringify(formData));
|
|
67
|
-
`;var a,t}async function u(e,a,t,i){var r=i.limit||10;let n=`(top: ${r})`,l=(a&&(n=`(filters:["_id", "=", "${a}"], top: ${r})`),"data");i&&(i.alias&&(l=i.alias),i.filters&&(n=`(filters:${i.filters})`),i.queryOptions&&(n=`(${i.queryOptions})`));a="",e.enable_tree&&y.includes(y.keys(e.fields),"parent")&&y.includes(y.keys(e.fields),"children")&&(a=",parent,children"),r="";return"cms_files"===e.name&&(r=",versions"),{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:`{${l}:${e.name}${n}{${await H(t,i.expand)}${a}${r}},count:${e.name}__count(filters:{__filters})}`}}function
|
|
67
|
+
`;var a,t}async function u(e,a,t,i){var r=i.limit||10;let n=`(top: ${r})`,l=(a&&(n=`(filters:["_id", "=", "${a}"], top: ${r})`),"data");i&&(i.alias&&(l=i.alias),i.filters&&(n=`(filters:${i.filters})`),i.queryOptions&&(n=`(${i.queryOptions})`));a="",e.enable_tree&&y.includes(y.keys(e.fields),"parent")&&y.includes(y.keys(e.fields),"children")&&(a=",parent,children"),r="";return"cms_files"===e.name&&(r=",versions"),{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:`{${l}:${e.name}${n}{${await H(t,i.expand)}${a}${r}},count:${e.name}__count(filters:{__filters})}`}}function m(e){if(!e)return"${context.rootUrl}/graphql"}const h={getAppPath({appId:e}){return"/app/"+e},getPagePath(){},getObjectListViewPath({appId:e,objectName:a,listViewName:t}){return`/app/${e}/${a}/grid/`+t},getObjectDetailPath({appId:e,objectName:a,recordId:t,listViewName:i}){return"instances"===a?`/workflow/space/\${context.tenantId}/${i}/`+t:`/app/${e}/${a}/view/`+t},getObjectRelatedViewPath({appId:e,masterObjectName:a,masterRecordId:t,objectName:i,foreignKey:r}){return`/app/${e}/${a}/${t}/${i}/grid?related_field_name=`+r}};function W(e){return`<div>\${_display.${e.name}}</div>`}function o(e){return`<div>\${_display.${e.name}}</div>`}function f(e){return`<div>\${_display.${e.name}}</div>`}function g(e){return`<div>\${_display.${e.name}}</div>`}function Z(e,a){let t="";var i;return t=_.isString(e.reference_to)||!e.reference_to?e.multiple?(i=h.getObjectDetailPath({formFactor:a.formFactor,appId:a.appId,objectName:"<%=item.objectName%>",recordId:"<%=item.value%>"}),`
|
|
68
68
|
<% if (data._display.${e.name} && data._display.${e.name}.length) { %><% data._display.${e.name}.forEach(function(item) { %> <a href="${i}"><%=item.label%></a> <% }); %><% } %>
|
|
69
69
|
`):`<a href="${h.getObjectDetailPath({formFactor:a.formFactor,appId:a.appId,objectName:`\${_display.${e.name}.objectName}`,recordId:`\${_display.${e.name}.value}`})}">\${_display.${e.name}.label}</a>`:(i=h.getObjectDetailPath({formFactor:a.formFactor,appId:a.appId,objectName:"<%=item.objectName%>",recordId:"<%=item.value%>"}),`
|
|
70
70
|
<% if (data._display.${e.name} && data._display.${e.name}.length) { %><% data._display.${e.name}.forEach(function(item) { %> <a href="${i}"><%=item.label%></a> <% }); %><% } %>
|
|
@@ -76,12 +76,112 @@
|
|
|
76
76
|
</span>
|
|
77
77
|
<% } %>`}function X(e){return`<% if (data.${e.name}) { %>
|
|
78
78
|
<span>······</span>
|
|
79
|
-
<% } %>`}async function w(e,a){if(e.is_name||e.name===a.labelFieldName)return t=e,"cms_files"===(i=a).objectName?`<a href="\${context.rootUrl}/api/files/files/\${versions[0]}?download=true">\${${t.name}}</a>`:`<a href="${h.getObjectDetailPath({...i,formFactor:i.formFactor,appId:i.appId,objectName:i.objectName,recordId:`\${${i.idFieldName}}`})}">\${${t.name}}</a>`;var t,i;switch(e.type){case"password":return X(e);case"boolean":return G(e);case"select":return g(e);case"time":return`<div>\${_display.${e.name}}</div>`;case"date":return
|
|
79
|
+
<% } %>`}async function w(e,a){if(e.is_name||e.name===a.labelFieldName)return t=e,"cms_files"===(i=a).objectName?`<a href="\${context.rootUrl}/api/files/files/\${versions[0]}?download=true">\${${t.name}}</a>`:`<a href="${h.getObjectDetailPath({...i,formFactor:i.formFactor,appId:i.appId,objectName:i.objectName,recordId:`\${${i.idFieldName}}`})}">\${${t.name}}</a>`;var t,i;switch(e.type){case"password":return X(e);case"boolean":return G(e);case"select":return g(e);case"time":return`<div>\${_display.${e.name}}</div>`;case"date":return o(e);case"datetime":return f(e);case"lookup":case"master_detail":return Z(e,a);case"number":case"currency":return W(e);case"formula":case"summary":return`<div>\${_display.${e.name}}</div>`}}const Q=100;async function ee(e,a,t,i){return{method:"post",url:m()+"?rf="+(new Date).getTime(),cache:Q,adaptor:function(e){let t="";var a=y.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 y.each(a,function(e){var a;y.includes(ke,e.name)||(e.name,e.options?(a=JSON.stringify({options:e.options}),t+=`var ${e.name}Options= (${a}).options;`):e.optionsFunction?t+=`var ${e.name}Options = eval(${e.optionsFunction.toString()})(api.data);`:e._optionsFunction&&(t+=`var ${e.name}Options = eval(${e._optionsFunction})(api.data);`),e.multiple?t+=`data.${e.name}__label = _.map(_.filter(${e.name}Options, function(option){return _.includes(data.${e.name}, option.value)}), 'label');`:t=(t+=`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;`)}),`
|
|
80
|
+
if(payload.data.data){
|
|
81
|
+
var data = payload.data.data[0];
|
|
82
|
+
try{
|
|
83
|
+
${t}
|
|
84
|
+
${ae(e)}
|
|
85
|
+
${te(e)}
|
|
86
|
+
}catch(e){
|
|
87
|
+
console.error(e)
|
|
88
|
+
}
|
|
89
|
+
payload.data = data;
|
|
90
|
+
window.postMessage(Object.assign({type: "record.loaded"}, {record: data}), "*")
|
|
91
|
+
}
|
|
92
|
+
if(payload.errors){
|
|
93
|
+
payload.status = 2;
|
|
94
|
+
payload.msg = payload.errors[0].message;
|
|
95
|
+
}
|
|
96
|
+
return payload;
|
|
97
|
+
`}(t),data:await Y(e,a,t,i),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function ae(e){let a=[],t={};return e.forEach(e=>{y.includes(["image","avatar"],e.type)&&(a.push(e.name),t[e.name]={name:e.name,type:e.type,multiple:e.multiple})}),a.length?`
|
|
98
|
+
// image字段值添加URL前缀
|
|
99
|
+
let imgFieldsKeys = ${JSON.stringify(a)};
|
|
100
|
+
let imgFields = ${JSON.stringify(t)};
|
|
101
|
+
imgFieldsKeys.forEach((item)=>{
|
|
102
|
+
let imgFieldValue = data[item];
|
|
103
|
+
let imgFieldDisplayValue = data._display && data._display[item];
|
|
104
|
+
if(imgFieldValue && imgFieldValue.length){
|
|
105
|
+
let fieldProps = imgFields[item];
|
|
106
|
+
if(fieldProps.multiple){
|
|
107
|
+
if(imgFieldDisplayValue instanceof Array){
|
|
108
|
+
data[item] = imgFieldDisplayValue.map((i)=>{ return i.url });
|
|
109
|
+
}
|
|
110
|
+
}else{
|
|
111
|
+
data[item] = imgFieldDisplayValue && imgFieldDisplayValue.url;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
})
|
|
115
|
+
`:""}function te(e){let a=[],t={};return e.forEach(e=>{"file"===e.type&&(a.push(e.name),t[e.name]={name:e.name,multiple:e.multiple})}),a.length?`
|
|
116
|
+
// file字段值重写以便编辑时正常显示附件名、点击附件名正常下载附件
|
|
117
|
+
let fileFieldsKeys = ${JSON.stringify(a)};
|
|
118
|
+
let fileFields = ${JSON.stringify(t)};
|
|
119
|
+
fileFieldsKeys.forEach((item)=>{
|
|
120
|
+
let fileFieldValue = data[item];
|
|
121
|
+
let fileFieldDisplayValue = data._display && data._display[item];
|
|
122
|
+
if(fileFieldValue && fileFieldValue.length){
|
|
123
|
+
if(fileFields[item].multiple){
|
|
124
|
+
if(fileFieldDisplayValue instanceof Array){
|
|
125
|
+
data[item] = fileFieldDisplayValue.map((item, index)=>{
|
|
126
|
+
return {
|
|
127
|
+
value: fileFieldValue[index],
|
|
128
|
+
name: item.name,
|
|
129
|
+
url: item.url + "?download=true",
|
|
130
|
+
state: "uploaded"
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
}else{
|
|
135
|
+
data[item] = {
|
|
136
|
+
value: fileFieldValue,
|
|
137
|
+
name: fileFieldDisplayValue.name,
|
|
138
|
+
url: fileFieldDisplayValue.url + "?download=true",
|
|
139
|
+
state: "uploaded"
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
})
|
|
144
|
+
`:""}function ie(e,a,t){return{method:"post",url:m(),data:{objectName:"${objectName}",$:"$$",recordId:"${recordId}",modalName:"${modalName}"},requestAdaptor:`
|
|
145
|
+
${K(t)}
|
|
146
|
+
api.data = {query: query.replace('{__saveData}', __saveData)};
|
|
147
|
+
return api;
|
|
148
|
+
`,responseData:{recordId:"${record._id}"},adaptor:`
|
|
149
|
+
if(payload.errors){
|
|
150
|
+
payload.status = 2;
|
|
151
|
+
payload.msg = payload.errors[0].message;
|
|
152
|
+
}
|
|
153
|
+
return payload;
|
|
154
|
+
`,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const re=e=>{let i=[];return i.length=0,y.forEach(e.fields,(e,a)=>{y.has(e,"name")||(e.name=a)}),y.forEach(y.sortBy(e.fields,"sort_no"),e=>{e.group&&"null"!=e.group&&"-"!=e.group||(e.group="通用");var a=e.name,t=/\w+\.\w+/.test(a);"grid"!=e.type&&"object"!=e.type||(e.is_wide=!0),t||e.hidden||i.push(Object.assign({name:a},e,{permission:{allowEdit:!0}}))}),i},ne=async(a,e,t,i)=>{e=y.filter(e,{group:t});if(e.length!=y.filter(e,["hidden",!0]).length){var r,n=[];for(const l of e){let e=l;"grid"===l.type?e=await Oe(l,a):"object"===l.type&&(e=await xe(l,a)),e.name.indexOf(".")<0&&((r=await j(e,e.readonly,i))&&n.push(r))}return{type:"fieldSet",title:t,collapsable:!0,body:n}}},le=async(e,a,t)=>{var i=re(a),r=[];for(const l in y.groupBy(i,"group")){var n=await ne(e,i,l,t);0<n.body.length&&r.push(n)}return r};async function oe(e,a,t){return le(e,a,t)}async function se(e,a){var t=[];for(const r of e){var i=await w(r,a);let e=i?"tpl":"text";r.hidden||r.extra||t.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:e,tpl:i,toggled:r.toggled})}return{type:"hbox",columns:t}}function de(e){return{perPage:e.top||10}}const $=(...e)=>{let a={};return b.toArray(e).reverse().forEach(e=>{b.mergeWith(a,e,(e,a)=>b.isArray(a)?a:void 0)}),a};function ce(e){return[{type:"button",level:"danger",label:"批量删除",actionType:"ajax",confirmText:"确定要删除吗",id:"batchDelete",api:(e=e.name,{method:"post",url:m(),requestAdaptor:`
|
|
155
|
+
var ids = api.data.ids.split(",");
|
|
156
|
+
var deleteArray = [];
|
|
157
|
+
ids.forEach((id,index)=>{
|
|
158
|
+
deleteArray.push(\`delete__\${index}:${e}__delete(id: "\${id}")\`);
|
|
159
|
+
})
|
|
160
|
+
api.data = {query: \`mutation{\${deleteArray.join(',')}}\`};
|
|
161
|
+
return api;
|
|
162
|
+
`,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}})}]}async function F(e,a,t){var i=ce(e),i={toolbar:[],footerToolbar:["statistics","pagination"],headerToolbar:"SMALL"===t.formFactor?["bulkActions",{type:"reload",align:"right"},{type:"search-box",align:"right",name:"__keywords",placeholder:"请输入关键字",mini:!0}]:["filter-toggler","bulkActions",{type:"search-box",align:"right",name:"__keywords",placeholder:"请输入关键字",mini:!0}],bulkActions:0!=t.bulkActions&&i,bodyClassName:""};let r=null;var n="listview_"+e.name,l=(r="SMALL"===t.formFactor?(delete i.bulkActions,delete i.headerToolbar,delete i.footerToolbar,l=await async function(e,a){let t=null;(i=_.find(e,e=>e.name===a.labelFieldName))&&(t=await w(i,a));var i=await se(_.filter(e,e=>e.name!=a.labelFieldName),a);return{mode:"cards",name:"cards",draggable:!1,headerToolbar:["statistics","pagination"],defaultParams:de(a),syncLocation:!1,keepItemSelectionOnPageChange:!1,checkOnItemClick:!1,labelTpl:`\${${a.labelFieldName}}`,card:{type:"card",header:{title:t},body:[...i.columns]}}}(a,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},t,{actions:!1})),Object.assign({},l,{type:"crud",primaryField:"_id",id:n,name:n,keepItemSelectionOnPageChange:!1,api:await we(e,a,t)},i)):(delete(l=await ve(a,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},t))).mode,Object.assign({},l,{type:"crud",primaryField:"_id",affixHeader:!1,id:n,name:n,keepItemSelectionOnPageChange:!0,api:await we(e,a,t)},i)),t.defaults);return l&&(a=l.listSchema||{},r=$({},a,r),i=l.headerSchema,t=l.footerSchema,(i||t)&&(a=[r],i&&a.unshift(i),t&&a.push(t),r=a)),{type:"service",className:"mb-2",id:"service_"+n,name:"page",data:{context:{rootUrl:p(),tenantId:s(),authToken:d()},objectName:e.name,_id:null,recordPermissions:e.permissions,uiSchema:e},body:r}}const pe=e=>{var a=t();return{mode:e,user:a,spaceId:a.spaceId,userId:a.userId}};async function ue(e,a){var t,i,{recordId:r,formFactor:n,layout:n="SMALL"===n?"normal":"horizontal",labelAlign:l,defaults:o}=a,s=c.default.values(e.fields),o=o&&o.formSchema||{},d={type:"service",className:"p-0",name:"page_edit_"+r,api:(d=e,t=r,i=s,await{method:"post",url:m(),sendOn:"!!this.recordId",cache:Q,adaptor:`
|
|
163
|
+
if(payload.data.data){
|
|
164
|
+
var data = payload.data.data[0];
|
|
165
|
+
if(data){
|
|
166
|
+
${ae(i)}
|
|
167
|
+
${te(i)}
|
|
168
|
+
//初始化接口返回的字段移除字段值为null的字段
|
|
169
|
+
for (key in data){
|
|
170
|
+
if(data[key] === null){
|
|
171
|
+
delete data[key];
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
payload.data = data;
|
|
176
|
+
delete payload.extensions;
|
|
177
|
+
}
|
|
178
|
+
return payload;
|
|
179
|
+
`,data:await Y(d,t,i),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}),initApi:null,initFetch:null,body:[$({},o,{type:"form",mode:n,labelAlign:l,persistData:!1,promptPageLeave:!0,name:"form_edit_"+r,debug:!1,title:"",submitText:"",api:await ie(0,0,s),initFetch:"new"!=r,body:await oe(s,e,a),panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"steedos-amis-form",onEvent:{submitSucc:{weight:0,actions:[{componentId:"listview_"+e.name,actionType:"reload",expression:"!!listViewId"},{componentId:"detail_"+r,actionType:"reload",expression:"!!!listViewId"}]}}})]};return o.id&&(d.id="service-"+o.id),d}var me={newRecordMode:"modal",editRecordMode:"modal",perPage:20};const fe=["text","date","file","avatar","image","datetime","time","number","currency","percent","password","url","email"];function N(e,a,t){return a?y.includes(["text","image"],e)?"image"===e&&t&&t.multiple?"static-images":"static-"+e:"static":y.includes(fe,e)?"input-"+e:e}const ye=(e,a)=>N("avatar"===e.type?"image":e.type,a,{multiple:e.multiple}),be=e=>{var a=e.type,t=ye(e,!0);return _.includes(["avatar","image"],a)?{type:t,defaultImage:"",enlargeAble:!0,showToolbar:!0}:"file"===a?{type:t,tpl:`
|
|
80
180
|
<% let fileData = data.${e.name}; if (fileData) { %>
|
|
81
181
|
<% if(!Array.isArray(fileData)){ fileData = [fileData]} %>
|
|
82
182
|
<% fileData.forEach(function(item) { %>
|
|
83
183
|
<a href='<%= item.url %>' target='_self' class='block'><%= item.name %></a>
|
|
84
|
-
<% });} %>`}:void 0},
|
|
184
|
+
<% });} %>`}:void 0},he=e=>{var a=(e=>{switch(e.type){case"avatar":return"avatars";case"image":return"images";case"file":return"files"}})(e),a={type:ye(e,!1),useChunk:!1,receiver:{method:"post",url:"${context.rootUrl}/s3/"+a,data:{$:"$$",context:"${context}"},adaptor:`
|
|
85
185
|
const { context } = api.body;
|
|
86
186
|
var rootUrl = context.rootUrl + "/api/files/${a}/";
|
|
87
187
|
payload = {
|
|
@@ -94,10 +194,10 @@
|
|
|
94
194
|
}
|
|
95
195
|
}
|
|
96
196
|
return payload;
|
|
97
|
-
`,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(a.multiple=!0,a.joinValues=!1,a.extractValue=!0),a},
|
|
197
|
+
`,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(a.multiple=!0,a.joinValues=!1,a.extractValue=!0),a},_e=(e,a)=>(a?be:he)(e);async function ge(e){e=e.buttons;const a=[];if(b.each(e,e=>{b.isBoolean(e.visible)&&(e.visible=e.visible.toString()),a.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:function(e){let a=e.visible;if(e._visible&&(a=e._visible),a=b.isBoolean(a)?a.toString():a)return 0<a.indexOf("Meteor.")||0<a.indexOf("Creator.")||0<a.indexOf("Session.")?(console.warn("无效的visible",a),"false"):a.trim().startsWith("function")?a+"(objectName, _id, recordPermissions, data)":a;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}(e),className:"antd-Button--default"})}),!(a.length<1))return{type:"operation",label:"操作",fixed:"right",labelClassName:"text-center",className:"text-center steedos-listview-operation",buttons:[{type:"steedos-dropdown-button",label:"xxx",buttons:a,placement:"bottomLeft",id:"u:c2140a365019",onOpenApi:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",data:{$:"$$",objectName:"${objectName}",listViewId:"${listViewId}",appId:"${appId}",formFactor:"${formFactor}",context:"${context}"},responseData:{recordPermissions:"$$"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`
|
|
98
198
|
payload.recordPermissions = payload;
|
|
99
199
|
return payload;
|
|
100
|
-
`}}]}}async function
|
|
200
|
+
`}}]}}async function ve(e,a){e=await async function(e,a){var t=[{name:"_index",type:"text",width:32,placeholder:""}];for(const r of e)if(!r.is_name&&r.name!==a.labelFieldName||"cms_files"!==a.objectName)if("toggle"===r.type)t.push({type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:!0,className:"whitespace-nowrap"});else if("avatar"===r.type||"image"===r.type||"file"===r.type)t.push({type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:!0,className:"whitespace-nowrap",...be(r)});else{var i=await w(r,a);let e="text";i?e="tpl":"html"===r.type&&(e="markdown"),r.hidden||r.extra||t.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:e,tpl:i,toggled:r.toggled,className:"textarea"===r.type?"w-56 whitespace-pre-wrap textarea":"whitespace-nowrap",html:"html"===r.type||null})}else t.push({type:"button",className:"whitespace-nowrap",label:`\${${r.name}}`,type:"button",actionType:"ajax",api:{url:"${context.rootUrl}/api/files/files/${versions[0]}?download=true",method:"get",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},responseType:"blob",dataType:"form-data"},id:"u:6c8291d1029f",level:"link"});return t}(e,a=a||{});return e.push(await ge(a)),{mode:"table",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:{perPage:a.top||me.perPage},columns:e,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:`\${${a.labelFieldName}}`,autoFillHeight:!1}}async function we(e,a,t){const i=[];let{globalFilter:r,filter:n,sort:l,top:o}=t;n=(n=y.isArray(n)?y.map(n,function(e){return e.operation?[e.field,e.operation,e.value]:e}):n)||[],y.each(a,function(e){e.searchable&&i.push(e.name)});const s={},d=[];a.forEach(e=>{y.includes(["image","avatar","file"],e.type)&&(d.push(e.name),s[e.name]={name:e.name,type:e.type,multiple:e.multiple})});t=e.key_field||"_id",a=await async function(e,a,t,i){e=await u(e,a,t,i);return{method:"post",url:m(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}(e,null,a,{alias:"rows",limit:o,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});return a.data.$term="$term",a.data.$self="$$",a.data.filter="$filter",a.requestAdaptor=`
|
|
101
201
|
const selfData = JSON.parse(JSON.stringify(api.data.$self));
|
|
102
202
|
${r?`var filters = ${JSON.stringify(r)};`:"var filters = [];"}
|
|
103
203
|
if(_.isEmpty(filters)){
|
|
@@ -218,7 +318,7 @@
|
|
|
218
318
|
payload.data.rows = treeRecords;
|
|
219
319
|
}
|
|
220
320
|
return payload;
|
|
221
|
-
`,a}async function
|
|
321
|
+
`,a}async function $e(e,a,t){if(!e)return{};t=t||{};var i={type:N("select",a)};return a?i.tpl=await v(e,t):(Object.assign(i,{labelField:"name",valueField:"user",multiple:e.multiple,searchable:e.searchable,selectMode:"associated",leftMode:"tree",joinValues:!1,extractValue:!0,clearable:!0,source:await async function(e){var a=await u({name:"organizations"},null,[{name:"_id",alias:"value"},{name:"name",alias:"label"},{name:"children"}],{alias:"leftOptions",filters:"{__filters}"});a.query=a.query.replace(/,count\:.+/,"}"),(t=await u({name:"organizations"},null,[{name:"_id",alias:"ref"}],{alias:"children",filters:"{__filters}"})).query=t.query.replace(/,count\:.+/,"}"),a.query=a.query.replace(/}$/,","+t.query.replace(/{(.+)}/,"$1}"));(t=await u({name:"space_users"},null,[{name:"user"},{name:"name"}],{alias:"defaultValueOptions",filters:"{__options_filters}"})).query=t.query.replace(/,count\:.+/,"}"),a.query=a.query.replace(/}$/,","+t.query.replace(/{(.+)}/,"$1}")),a.$value="$"+e.name;var t=`
|
|
222
322
|
var filters = [['parent', '=', null]];
|
|
223
323
|
api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters));
|
|
224
324
|
var defaultValue = api.data.$value;
|
|
@@ -229,7 +329,7 @@
|
|
|
229
329
|
}
|
|
230
330
|
api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));
|
|
231
331
|
return api;
|
|
232
|
-
`;return{method:"post",url:
|
|
332
|
+
`;return{method:"post",url:m()+"?_id=${_id}",requestAdaptor:t,adaptor:`
|
|
233
333
|
const data = payload.data;
|
|
234
334
|
data.children = data.children.map(function (child) {
|
|
235
335
|
// child.defer = !!(child.children && child.children.length);
|
|
@@ -272,7 +372,7 @@
|
|
|
272
372
|
}
|
|
273
373
|
api.data.query = api.data.query.replace(/{__object_name}/g, objectName).replace(/{__fields}/g, fields).replace(/{__filters}/g, JSON.stringify(filters));
|
|
274
374
|
return api;
|
|
275
|
-
`,{method:"post",url:
|
|
375
|
+
`,{method:"post",url:m()+"?ref=${ref}&dep=${value}",requestAdaptor:e,adaptor:`
|
|
276
376
|
if (api.query.dep) {
|
|
277
377
|
// 展开组织时才需要根据children值设置defer属性
|
|
278
378
|
const data = payload.data;
|
|
@@ -304,7 +404,7 @@
|
|
|
304
404
|
}
|
|
305
405
|
api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters));
|
|
306
406
|
return api;
|
|
307
|
-
`;return{method:"post",url:
|
|
407
|
+
`;return{method:"post",url:m()+"?term=${term}",requestAdaptor:e,data:a,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}(e)}),!_.has(e,"defaultValue")||_.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(i.value=e.defaultValue),"boolean"!=typeof i.searchable&&(i.searchable=!0),(a=e.onEvent)&&(i.onEvent=a)),i}const S=async t=>{let i=t.reference_to;if(i){"users"===i&&(i="space_users",t.reference_to_field="user");var r=await V(i);let e=null,a=t.reference_to_field;return a=a||r.idFieldName||"_id",e="_id"===a?{name:"_id",label:"ID",type:"text",toggled:!1}:r.fields[a]||{name:a},{objectName:i,valueField:e,labelField:r.fields[r.NAME_FIELD_KEY||"name"]}}};async function Fe(i,r,n){var l=await S(i);if(l){const c=await V(l.objectName),p=[];let e=0;const u=[],m=[];var o=y.find(c.list_views,(e,a)=>"all"===a);o&&o.columns?y.each(o.columns,function(e){y.isString(e)&&c.fields[e]?m.push(c.fields[e]):y.isObject(e)&&c.fields[e.field]&&m.push(Object.assign({},c.fields[e.field],{width:e.width,wrap:e.wrap}))}):y.each(c.fields,(e,a)=>{"_id"==a||e.hidden||(y.has(e,"name")||(e.name=a),m.push(e))}),y.each(y.sortBy(m,"sort_no"),function(a){e<5&&(y.find(p,function(e){return e.name===a.name})||(e++,p.push(a),a.searchable&&u.push(a.name)))});const f={[l.labelField.name]:l.labelField,[l.valueField.name]:l.valueField};y.each(p,e=>{e.hidden||(f[e.name]=e)});var s,o=await Ne(c,null,f,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});o.data.$term="$term",o.data.$self="$$",o.requestAdaptor=`
|
|
308
408
|
const selfData = JSON.parse(JSON.stringify(api.data.$self));
|
|
309
409
|
var filters = [];
|
|
310
410
|
var pageSize = api.data.pageSize || 10;
|
|
@@ -313,7 +413,7 @@
|
|
|
313
413
|
var orderBy = api.data.orderBy || '';
|
|
314
414
|
var orderDir = api.data.orderDir || '';
|
|
315
415
|
var sort = orderBy + ' ' + orderDir;
|
|
316
|
-
var allowSearchFields = ${JSON.stringify(
|
|
416
|
+
var allowSearchFields = ${JSON.stringify(u)};
|
|
317
417
|
if(api.data.$term){
|
|
318
418
|
filters = [["name", "contains", "'+ api.data.$term +'"]];
|
|
319
419
|
}else if(selfData.op === 'loadOptions' && selfData.value){
|
|
@@ -371,7 +471,7 @@
|
|
|
371
471
|
payload.data.rows = treeRecords;
|
|
372
472
|
}
|
|
373
473
|
return payload;
|
|
374
|
-
`;let a=20,t=(c.paging&&!1===c.paging.enabled&&(a=1e3),null);t="SMALL"===n.formFactor?(d=
|
|
474
|
+
`;let a=20,t=(c.paging&&!1===c.paging.enabled&&(a=1e3),null);t="SMALL"===n.formFactor?(d=p,s={top:a,...n,actions:!1},d=(await se(d,s)).columns,await{mode:"list",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:de(s),syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:"${name}",listItem:{body:[...d],actions:!1===s.actions?null:[{icon:"fa fa-eye",label:"查看",type:"button",actionType:"link",link:h.getObjectDetailPath({formFactor:s.formFactor,appId:s.appId,objectName:s.tabId,listView:s.listView,recordId:"${_id}"})}]}}):await ve(p,{labelFieldName:c.NAME_FIELD_KEY,top:a,...n});var d={type:N("picker",r),labelField:l.labelField.name,valueField:l.valueField.name,modalMode:"dialog",source:o,size:"lg",pickerSchema:t,joinValues:!1,extractValue:!0};return i.multiple&&(d.multiple=!0,d.extractValue=!0),r&&(d.tpl=await v(i,n)),d}}async function n(e,a,t){var i=await S(e);let r;(r=i?await Ne({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}"}):{method:"post",url:m(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"}}).data.$term="$term",r.data.$value=`$${e.name}.`+(i?i.valueField.name:"_id"),y.each(e.depend_on,function(e){r.data[e]="$"+e}),r.data.$="$$",r.data.rfield="${object_name}",r.requestAdaptor=`
|
|
375
475
|
var filters = '[]';
|
|
376
476
|
var top = 10;
|
|
377
477
|
if(api.data.$term){
|
|
@@ -384,108 +484,48 @@
|
|
|
384
484
|
`,i&&i.labelField.name,i&&i.valueField.name,e._optionsFunction&&(r.adaptor=`
|
|
385
485
|
payload.data.options = eval(${e._optionsFunction})(api.data);
|
|
386
486
|
return payload;
|
|
387
|
-
`);i={type
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
let fileFieldDisplayValue = data._display && data._display[item];
|
|
430
|
-
if(fileFieldValue && fileFieldValue.length){
|
|
431
|
-
if(fileFields[item].multiple){
|
|
432
|
-
if(fileFieldDisplayValue instanceof Array){
|
|
433
|
-
data[item] = fileFieldDisplayValue.map((item, index)=>{
|
|
434
|
-
return {
|
|
435
|
-
value: fileFieldValue[index],
|
|
436
|
-
name: item.name,
|
|
437
|
-
url: item.url + "?download=true",
|
|
438
|
-
state: "uploaded"
|
|
439
|
-
}
|
|
440
|
-
});
|
|
441
|
-
}
|
|
442
|
-
}else{
|
|
443
|
-
data[item] = {
|
|
444
|
-
value: fileFieldValue,
|
|
445
|
-
name: fileFieldDisplayValue.name,
|
|
446
|
-
url: fileFieldDisplayValue.url + "?download=true",
|
|
447
|
-
state: "uploaded"
|
|
448
|
-
};
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
})
|
|
452
|
-
`:""}function $e(e,a,t){return{method:"post",url:p(),data:{objectName:"${objectName}",$:"$$",recordId:"${recordId}",modalName:"${modalName}"},requestAdaptor:`
|
|
453
|
-
${K(t)}
|
|
454
|
-
api.data = {query: query.replace('{__saveData}', __saveData)};
|
|
455
|
-
return api;
|
|
456
|
-
`,responseData:{recordId:"${record._id}"},adaptor:`
|
|
457
|
-
if(payload.errors){
|
|
458
|
-
payload.status = 2;
|
|
459
|
-
payload.msg = payload.errors[0].message;
|
|
460
|
-
}
|
|
461
|
-
return payload;
|
|
462
|
-
`,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const Ne=e=>{let i=[];return i.length=0,y.forEach(e.fields,(e,a)=>{y.has(e,"name")||(e.name=a)}),y.forEach(y.sortBy(e.fields,"sort_no"),e=>{e.group&&"null"!=e.group&&"-"!=e.group||(e.group="通用");var a=e.name,t=/\w+\.\w+/.test(a);"grid"!=e.type&&"object"!=e.type||(e.is_wide=!0),t||e.hidden||i.push(Object.assign({name:a},e,{permission:{allowEdit:!0}}))}),i},Fe=async(a,e,t,i)=>{e=y.filter(e,{group:t});if(e.length!=y.filter(e,["hidden",!0]).length){var r,n=[];for(const l of e){let e=l;"grid"===l.type?e=await he(l,a):"object"===l.type&&(e=await be(l,a)),e.name.indexOf(".")<0&&((r=await F(e,e.readonly,i))&&n.push(r))}return{type:"fieldSet",title:t,collapsable:!0,body:n}}},Se=async(e,a,t)=>{var i=Ne(a),r=[];for(const l in y.groupBy(i,"group")){var n=await Fe(e,i,l,t);0<n.body.length&&r.push(n)}return r};async function je(e,a,t){return Se(e,a,t)}const S=(...e)=>{let a={};return b.toArray(e).reverse().forEach(e=>{b.mergeWith(a,e,(e,a)=>b.isArray(a)?a:void 0)}),a};function ke(e){return[{type:"button",level:"danger",label:"批量删除",actionType:"ajax",confirmText:"确定要删除吗",id:"batchDelete",api:(e=e.name,{method:"post",url:p(),requestAdaptor:`
|
|
463
|
-
var ids = api.data.ids.split(",");
|
|
464
|
-
var deleteArray = [];
|
|
465
|
-
ids.forEach((id,index)=>{
|
|
466
|
-
deleteArray.push(\`delete__\${index}:${e}__delete(id: "\${id}")\`);
|
|
467
|
-
})
|
|
468
|
-
api.data = {query: \`mutation{\${deleteArray.join(',')}}\`};
|
|
469
|
-
return api;
|
|
470
|
-
`,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}})}]}async function j(e,a,t){var i=ke(e),i={toolbar:[],footerToolbar:["statistics","pagination"],headerToolbar:"SMALL"===t.formFactor?["bulkActions",{type:"reload",align:"right"},{type:"search-box",align:"right",name:"__keywords",placeholder:"请输入关键字",mini:!0}]:["filter-toggler","bulkActions",{type:"search-box",align:"right",name:"__keywords",placeholder:"请输入关键字",mini:!0}],bulkActions:0!=t.bulkActions&&i,bodyClassName:""};let r=null;var n="listview_"+e.name,l=(r="SMALL"===t.formFactor?(delete i.bulkActions,delete i.headerToolbar,delete i.footerToolbar,l=await async function(e,a){let t=null;var i=_.find(e,e=>e.name===a.labelFieldName);i&&(t=await w(i,a));e=(i=await se(_.filter(e,e=>e.name!=a.labelFieldName),a)).columns;return{mode:"cards",name:"cards",draggable:!1,headerToolbar:["statistics","pagination"],defaultParams:de(a),syncLocation:!1,keepItemSelectionOnPageChange:!1,checkOnItemClick:!1,labelTpl:`\${${a.labelFieldName}}`,card:{type:"card",header:{title:t},body:[...e]}}}(a,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},t,{actions:!1})),Object.assign({},l,{type:"crud",primaryField:"_id",id:n,name:n,keepItemSelectionOnPageChange:!1,api:await oe(e,a,t)},i)):(delete(l=await le(a,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},t))).mode,Object.assign({},l,{type:"crud",primaryField:"_id",affixHeader:!1,id:n,name:n,keepItemSelectionOnPageChange:!0,api:await oe(e,a,t)},i)),t.defaults);return l&&(a=l.listSchema||{},r=S({},a,r),i=l.headerSchema,t=l.footerSchema,(i||t)&&(a=[r],i&&a.unshift(i),t&&a.push(t),r=a)),{type:"service",className:"border mb-2",id:"service_"+n,name:"page",data:{context:{rootUrl:d(),tenantId:o(),authToken:s()},objectName:e.name,_id:null,recordPermissions:e.permissions,uiSchema:e},body:r}}const xe=e=>{var a=t();return{mode:e,user:a,spaceId:a.spaceId,userId:a.userId}};async function Oe(e,a){var t,i,{recordId:r,formFactor:n,layout:n="SMALL"===n?"normal":"horizontal",labelAlign:l,defaults:o}=a,s=c.default.values(e.fields),o=o&&o.formSchema||{},d={type:"service",className:"p-0",name:"page_edit_"+r,api:(d=e,t=r,i=s,await{method:"post",url:p(),sendOn:"!!this.recordId",cache:_e,adaptor:`
|
|
471
|
-
if(payload.data.data){
|
|
472
|
-
var data = payload.data.data[0];
|
|
473
|
-
if(data){
|
|
474
|
-
${ve(i)}
|
|
475
|
-
${we(i)}
|
|
476
|
-
//初始化接口返回的字段移除字段值为null的字段
|
|
477
|
-
for (key in data){
|
|
478
|
-
if(data[key] === null){
|
|
479
|
-
delete data[key];
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
|
-
};
|
|
483
|
-
payload.data = data;
|
|
484
|
-
delete payload.extensions;
|
|
485
|
-
}
|
|
486
|
-
return payload;
|
|
487
|
-
`,data:await Y(d,t,i),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}),initApi:null,initFetch:null,body:[S({},o,{type:"form",mode:n,labelAlign:l,persistData:!1,promptPageLeave:!0,name:"form_edit_"+r,debug:!1,title:"",submitText:"",api:await $e(0,0,s),initFetch:"new"!=r,body:await je(s,e,a),panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"steedos-amis-form",onEvent:{submitSucc:{weight:0,actions:[{componentId:"listview_"+e.name,actionType:"reload",expression:"!!listViewId"},{componentId:"detail_"+r,actionType:"reload",expression:"!!!listViewId"}]}}})]};return o.id&&(d.id="service-"+o.id),d}function Ie(e){var a,t;return"string"==typeof e&&(a=/^{{(function.+)}}$/,t=/^{{(.+=>.+)}}$/,!("string"!=typeof e||!e.match(/^{{(.+)}}$/)||e.match(a)||e.match(t)))}function De(a,e,t,i,r={}){var n,l;if(void 0===e&&(e={}),l=Ae(t),l=qe(e,l)||{},"string"!=typeof a)return a;n=a.substring(2,a.length-2),r=`
|
|
488
|
-
var $user=${JSON.stringify(r)}; return `+n.replace(/\bformData\b/g,JSON.stringify(e).replace(/\bglobal\b/g,Ve)).replace(/\bglobal\b/g,JSON.stringify(i)).replace(new RegExp("\\b"+Ve+"\\b","g"),"global").replace(/rootValue/g,JSON.stringify(l));try{return Function(r)()}catch(e){return console.log(e,a,t),a}}const Ve="__G_L_O_B_A_L__",Ae=function(e){return"string"!=typeof e||1===(e=e.split(".")).length?"#":(e.pop(),e.join("."))},qe=function(e,a){return"#"!==a&&a?"string"==typeof a?b.get(e,a):void console.error("path has to be a string"):e||{}};async function r({type:e,pageId:a,appId:t,objectName:i="",recordId:r,formFactor:n="LARGE"}){e=await l(`/api/pageSchema/${e}?app=${t}&objectApiName=${i=i||""}&recordId=${r=r||""}&pageId=${a=a||""}&formFactor=`+n);if(e&&e.schema)return e}const k={getStandardNew:async(e,a)=>({type:"amis_button",amis_schema:await(async(e,a)=>{e="新建 "+e.label;let t={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"",id:"u:f8ad8ddf153a",mode:"edit",layout:"horizontal"};a=await r({type:"form",appId:a.appId,objectName:a.objectName,formFactor:a.formFactor});return{type:"service",body:[{type:"button",label:"新建",id:"u:standard_new",level:"default",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:e,bodyClassName:"",body:[t=a?_.isString(a.schema)?JSON.parse(a.schema):a.schema:t],id:"u:0b96577db93c",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"p-0",id:"u:aef99d937b10"}})(e,a)}),getStandardEdit:async(e,a)=>({type:"amis_button",amis_schema:await(async(e,a)=>{e="编辑 "+e.label;let t={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};a=await r({type:"form",appId:a.appId,objectName:a.objectName,formFactor:a.formFactor});return{type:"service",body:[{type:"button",label:"编辑",id:"u:standard_edit",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:e,bodyClassName:"",body:[t=a?_.isString(a.schema)?JSON.parse(a.schema):a.schema:t],id:"u:ee95697baa4f",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"p-0",id:"u:3c5cbc0429bb"}})(e,a)}),getStandardDelete:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"删除",confirmText:"确定要删除此项目?",onEvent:{click:{actions:[{args:{api:{method:"post",url:"${context.rootUrl}/graphql",data:{"&":"$$",recordId:"${recordId}",objectName:"${objectName}"},requestAdaptor:"const {recordId, objectName} = api.body; var deleteArray = []; deleteArray.push(`delete:${objectName}__delete(id: \"${recordId}\")`); api.data = {query: `mutation{${deleteArray.join(',')}}`}; return api;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`
|
|
487
|
+
`);i={type:N("select",a),joinValues:!1,extractValue:!0,autoComplete:r};return!y.has(e,"defaultValue")||y.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(i.value=e.defaultValue),e.multiple&&(i.multiple=!0,i.extractValue=!0),a&&(i.tpl=await v(e,t)),i}async function Ne(e,a,t,i){e=await u(e,a,t,i);return{method:"post",url:m(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function Se(e,a,t){var i,r;return a?{type:N("picker",a),tpl:Z(e,t)}:y.isString(e.reference_to)||a?((i=await S(e))?(r=await V(i.objectName),"space_users"===i.objectName?je:1==r.enable_enhanced_lookup?Fe:n):n)(e,a,t):{type:"steedos-field-lookup",field:e,readonly:a,ctx:{},onEvent:{change:{weight:0,actions:[{actionType:"custom",script:"console.log('======', event)"}]}}}}async function je(e,a,t){return $e(e,a,t)}const ke=["created","created_by","modified","modified_by"];function xe(a,e){var t=Object.assign({subFields:[]},a),e=y.filter(e,function(e){return e.name.startsWith(a.name+".")});return t.subFields=e,t}function Oe(a,e){var t=Object.assign({subFields:[]},a),e=y.filter(e,function(e){return e.name.startsWith(a.name+".")});return t.subFields=e,t}async function j(r,n,e){if(!y.includes(ke,r.name)||1==e.showSystemFields){var a,t={name:e.fieldNamePrefix?""+e.fieldNamePrefix+r.name:r.name,label:r.label,labelRemark:r.inlineHelpText,required:(y.has(e,"required")?e:r).required};let i={};switch(r.type){case"text":i.type=N("text",n);break;case"textarea":i.type=N("textarea",n),i.tpl=`<b><%=data.${r.name}%></b>`;break;case"html":i={type:"editor",language:"html",value:r.defaultValue||""};break;case"select":i={type:N("select",n),joinValues:!1,options:function(e){const a=e.data_type||"text",t=[];return y.each(e.options,e=>{switch(a){case"number":t.push({label:e.label,value:Number(e.value)});break;case"text":t.push({label:e.label,value:String(e.value)});break;case"boolean":t.push({label:e.label,value:"false"!==e.value})}}),t}(r),extractValue:!0,clearable:!0,labelField:"label",valueField:"value",tpl:n?g(r):null},!y.has(r,"defaultValue")||y.isString(r.defaultValue)&&r.defaultValue.startsWith("{")||(a=r.data_type||"text",null!=r.defaultValue&&("text"===a?i.value=String(r.defaultValue):"number"===a?i.value=Number(r.defaultValue):"boolean"===a&&(i.value="false"!==r.defaultValue))),r.multiple&&(i.multiple=!0,i.extractValue=!0);break;case"boolean":i={type:N("checkbox",n),option:r.inlineHelpText,tpl:n?G(r):null};break;case"input-date-range":i={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:n?o(r):null};break;case"date":i={type:N("date",n),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:n?o(r):null};break;case"input-datetime-range":i={type:"input-datetime-range",inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSS[Z]",tpl:n?f(r):null,utc:!0};break;case"datetime":i={type:N("datetime",n),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSS[Z]",tpl:n?f(r):null,utc:!0};break;case"input-time-range":i={type:"input-time-range",inputFormat:"HH:mm",timeFormat:"1970-01-01THH:mm:00.000[Z]",format:"1970-01-01THH:mm:00.000[Z]",tpl:n?f(r):null};break;case"time":i={type:N("time",n),inputFormat:"HH:mm",timeFormat:"1970-01-01THH:mm:00.000[Z]",format:"1970-01-01THH:mm:00.000[Z]",tpl:n?f(r):null};break;case"currency":case"number":i=n?{type:"static-tpl",tpl:W(r)}:{type:N("number",n),min:r.min,max:r.max,precision:r.scale};break;case"input-array":i=Object.assign({},r,t);break;case"input-range":i={type:"input-range",min:r.min,max:r.max,value:[0,0],multiple:!0,showInput:!0};break;case"percent":i={type:N("number",n),min:r.min,max:r.max,precision:r.scale};break;case"password":i={type:N("password",n),tpl:n?X(r):null};break;case"lookup":case"master_detail":i=await Se(r,n,e);break;case"autonumber":n&&(i={type:"static-text"});break;case"url":i={type:N("url",n)};break;case"email":i={type:N("email",n)};break;case"avatar":case"image":case"file":i=_e(r,n);break;case"formula":case"summary":n&&(i.type=N(r.data_type,n));break;case"code":i={type:"editor",language:r.language,value:r.defaultValue||""};break;case"toggle":i={type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:n};break;case"grid":i={type:"input-table",strictMode:!1,affixHeader:!1,editable:!n,addable:!n,removable:!n,draggable:!n,columns:[]},y.each(r.subFields,function(e){var a=e.name.replace(r.name+".$.","").replace(r.name+".",""),t=j(Object.assign({},e,{name:a}),n);t&&(delete t.name,delete t.label,i.columns.push({name:a,label:e.label,quickEdit:!n&&t}))})}return y.isEmpty(i)?void 0:(r.is_wide?i.className="col-span-2 m-1":i.className="m-1",n&&(i.className=i.className+" md:border-b"),i.labelClassName="text-left",n&&(i.quickEdit=!1),r.visible_on&&(i.visibleOn="$"+r.visible_on.substring(1,r.visible_on.length-1).replace(/formData./g,"")),Object.assign({},t,i,{clearValueOnHidden:!0,fieldName:r.name}))}}async function Ie(e){return{type:"button",label:"",icon:"fa fa-search",className:"bg-transparent p-0 ml-1",onEvent:{click:{actions:[{actionType:"setValue",args:{value:{showFieldsFilter:"${!showFieldsFilter}"}},componentId:"service_"+("listview_"+e.name)}]}}}}async function De(e,a,t){t=t||{};var i,r,n=[];for(i of a)b.includes(["grid","avatar","image","object","[object]","[Object]","[grid]","[text]","audio","file"],i.type)||(delete i.defaultValue,delete i.required,delete i.is_wide,delete i.readonly,delete i.hidden,delete i.omit,(r=await async function(e,a,t){let i=e,r=("grid"===i.type?i=await Oe(e,a):"object"===e.type&&(i=await xe(e,a)),"__searchable__");if(i.name.indexOf(".")<0){e=b.cloneDeep(i),a=(b.includes(["textarea","html","code","autonumber"],i.type)&&(e.type="text"),"number"!==i.type&&"currency"!==i.type||(e.type="input-array",e.inline=!0,e.addable=!1,e.removable=!1,e.value=[null,null],e.items={type:"input-number"},e.is_wide=!0,r+="between__"),"date"===i.type&&(e.type="input-date-range",e.is_wide=!0,r+="between__"),"datetime"===i.type&&(e.type="input-datetime-range",e.is_wide=!0,r+="between__"),"time"===i.type&&(e.type="input-time-range",e.is_wide=!0,r+="between__"),"users"===i.reference_to&&(e.reference_to="space_users",e.reference_to_field="user"),e.readonly=!1,e.disabled=!1,e.multiple=!0,e.is_wide=!1,e.defaultValue=void 0,await j(e,!1,Object.assign({},t,{fieldNamePrefix:r,required:!1,showSystemFields:!0})));if(a)return a}}(i,a,{}))&&n.push(r));return t.enableSearchableFieldsVisibleOn&&n.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",body:n}}async function Ve(e,a,t){t=t||{};var a=await De(e,a,Object.assign({},{enableSearchableFieldsVisibleOn:!0},t)),i=`
|
|
488
|
+
const appId = event.data.appId;
|
|
489
|
+
const objectName = event.data.objectName;
|
|
490
|
+
const listViewId = SteedosUI.getRefId({
|
|
491
|
+
type: "listview",
|
|
492
|
+
appId: appId,
|
|
493
|
+
name: objectName,
|
|
494
|
+
});
|
|
495
|
+
const pageId = listViewId + "-page";
|
|
496
|
+
const scope = SteedosUI.getRef(${t.isListviewInit?"listViewId":"pageId"});
|
|
497
|
+
var filterForm = scope.getComponentById("listview_filter_form_" + objectName);
|
|
498
|
+
var filterFormValues = filterForm.getValues();
|
|
499
|
+
var listView = scope.getComponentById("listview_" + objectName);
|
|
500
|
+
listView.handleFilterSubmit(filterFormValues);
|
|
501
|
+
`,t=`
|
|
502
|
+
const appId = event.data.appId;
|
|
503
|
+
const objectName = event.data.objectName;
|
|
504
|
+
const listViewId = SteedosUI.getRefId({
|
|
505
|
+
type: "listview",
|
|
506
|
+
appId: appId,
|
|
507
|
+
name: objectName,
|
|
508
|
+
});
|
|
509
|
+
const pageId = listViewId + "-page";
|
|
510
|
+
const scope = SteedosUI.getRef(${t.isListviewInit?"listViewId":"pageId"});
|
|
511
|
+
var filterFormService = scope.getComponentById("service_listview_filter_form_" + objectName);
|
|
512
|
+
const searchableFields = filterFormService.props.data?.filterFormSearchableFields;
|
|
513
|
+
SteedosUI.Field.showFieldsTransfer({
|
|
514
|
+
objectName: "${e.name}",
|
|
515
|
+
data: {
|
|
516
|
+
fields: searchableFields,
|
|
517
|
+
},
|
|
518
|
+
onOk: (values) => {
|
|
519
|
+
filterFormService.setData({
|
|
520
|
+
filterFormSearchableFields: values.fields
|
|
521
|
+
});
|
|
522
|
+
},
|
|
523
|
+
onCancel: () => {
|
|
524
|
+
},
|
|
525
|
+
title: '设置搜索项'
|
|
526
|
+
});
|
|
527
|
+
`;return{type:"service",id:"service_listview_filter_form_"+e.name,body:{type:"wrapper",body:{type:"wrapper",body:[{type:"wrapper",body:[a],size:"xs",visibleOn:"this.filterFormSearchableFields && this.filterFormSearchableFields.length",className:"slds-filters__body p-0"},{type:"wrapper",body:{type:"wrapper",body:[{type:"button",label:"搜索",icon:"fa fa-search",visibleOn:"this.filterFormSearchableFields && this.filterFormSearchableFields.length",onEvent:{click:{actions:[{actionType:"custom",script:i}]}}},{type:"button",label:"设置搜索项",className:"ml-1",level:"link",onEvent:{click:{actions:[{actionType:"custom",script:t}]}}}],size:"xs",className:"space-x-4"},size:"xs",className:"slds-filters__footer slds-grid slds-shrink-none flex justify-between p-0"}],size:"xs",className:"slds-filters"},size:"xs",className:"border-gray slds-grid slds-grid_vertical slds-nowrap"},visibleOn:"this.showFieldsFilter",className:"px-1 py-1 bg-white b-b"}}function Ae(e){var a,t;return"string"==typeof e&&(a=/^{{(function.+)}}$/,t=/^{{(.+=>.+)}}$/,!("string"!=typeof e||!e.match(/^{{(.+)}}$/)||e.match(a)||e.match(t)))}function qe(a,e,t,i,r={}){var n,l;if(void 0===e&&(e={}),l=Ee(t),l=Ce(e,l)||{},"string"!=typeof a)return a;n=a.substring(2,a.length-2),r=`
|
|
528
|
+
var $user=${JSON.stringify(r)}; return `+n.replace(/\bformData\b/g,JSON.stringify(e).replace(/\bglobal\b/g,Te)).replace(/\bglobal\b/g,JSON.stringify(i)).replace(new RegExp("\\b"+Te+"\\b","g"),"global").replace(/rootValue/g,JSON.stringify(l));try{return Function(r)()}catch(e){return console.log(e,a,t),a}}const Te="__G_L_O_B_A_L__",Ee=function(e){return"string"!=typeof e||1===(e=e.split(".")).length?"#":(e.pop(),e.join("."))},Ce=function(e,a){return"#"!==a&&a?"string"==typeof a?b.get(e,a):void console.error("path has to be a string"):e||{}};async function Be({type:e,pageId:a,appId:t,objectName:i="",recordId:r,formFactor:n="LARGE"}){e=await l(`/api/pageSchema/${e}?app=${t}&objectApiName=${i=i||""}&recordId=${r=r||""}&pageId=${a=a||""}&formFactor=`+n);if(e&&e.schema)return e}const k={getStandardNew:async(e,a)=>({type:"amis_button",amis_schema:await(async(e,a)=>{e="新建 "+e.label;let t={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"",id:"u:f8ad8ddf153a",mode:"edit",layout:"horizontal"};a=await Be({type:"form",appId:a.appId,objectName:a.objectName,formFactor:a.formFactor});return{type:"service",body:[{type:"button",label:"新建",id:"u:standard_new",level:"default",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:e,bodyClassName:"",body:[t=a?_.isString(a.schema)?JSON.parse(a.schema):a.schema:t],id:"u:0b96577db93c",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"p-0",id:"u:aef99d937b10"}})(e,a)}),getStandardEdit:async(e,a)=>({type:"amis_button",amis_schema:await(async(e,a)=>{e="编辑 "+e.label;let t={type:"steedos-object-form",label:"对象表单",objectApiName:"${objectName}",recordId:"${recordId}",id:"u:d2b0c083c38f",mode:"edit"};a=await Be({type:"form",appId:a.appId,objectName:a.objectName,formFactor:a.formFactor});return{type:"service",body:[{type:"button",label:"编辑",id:"u:standard_edit",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:e,bodyClassName:"",body:[t=a?_.isString(a.schema)?JSON.parse(a.schema):a.schema:t],id:"u:ee95697baa4f",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}}}],regions:["body"],className:"p-0",id:"u:3c5cbc0429bb"}})(e,a)}),getStandardDelete:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"删除",confirmText:"确定要删除此项目?",onEvent:{click:{actions:[{args:{api:{method:"post",url:"${context.rootUrl}/graphql",data:{"&":"$$",recordId:"${recordId}",objectName:"${objectName}"},requestAdaptor:"const {recordId, objectName} = api.body; var deleteArray = []; deleteArray.push(`delete:${objectName}__delete(id: \"${recordId}\")`); api.data = {query: `mutation{${deleteArray.join(',')}}`}; return api;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:`
|
|
489
529
|
if(payload.errors){
|
|
490
530
|
payload.status = 2;
|
|
491
531
|
payload.msg = payload.errors[0].message;
|
|
@@ -493,14 +533,7 @@
|
|
|
493
533
|
return payload;
|
|
494
534
|
`},messages:{success:"删除成功",failed:"删除失败"}},actionType:"ajax"},{componentId:"",args:{url:"/app/${app_id}/${objectName}/grid/all",blank:!1},actionType:"link",expression:"!!!listViewId"},{componentId:"listview_"+e.name,actionType:"reload",expression:"!!listViewId"}]}}}],regions:["body"]}}),getStandardDeleteMany:async(e,a)=>({type:"amis_button"}),getStandardImportData:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",body:[{type:"button",label:"导入数据",id:"u:import_data",onEvent:{click:{actions:[{actionType:"dialog",dialog:{type:"dialog",title:"导入数据",body:[{type:"form",mode:"edit",persistData:!1,promptPageLeave:!0,name:"form_edit_data_import",debug:!1,title:"",submitText:"",api:{method:"post",url:"${context.rootUrl}/graphql",data:{objectName:"queue_import_history",$:"$$"},requestAdaptor:"\n const formData = api.data.$;\n for (key in formData){\n // image、select等字段清空值后保存的空字符串转换为null。\n if(formData[key] === ''){\n formData[key] = null;\n }\n }\n const objectName = api.data.objectName;\n const fieldsName = Object.keys(formData);\n delete formData.created;\n delete formData.created_by;\n delete formData.modified;\n delete formData.modified_by;\n delete formData._display;\n delete formData.success_count;\ndelete formData.failure_count;\ndelete formData.total_count;\ndelete formData.start_time;\ndelete formData.end_time;\ndelete formData.state;\ndelete formData.error;\ndelete formData.created;\ndelete formData.created_by;\ndelete formData.modified;\ndelete formData.modified_by;\n \n \n let fileFieldsKeys = [\"file\"];\n let fileFields = {\"file\":{\"name\":\"file\"}};\n fileFieldsKeys.forEach((item)=>{\n let fileFieldValue = formData[item];\n if(fileFieldValue){\n // 因为表单初始化接口的接收适配器中为file字段值重写了值及格式(为了字段编辑时正常显示附件名、点击附件名正常下载),所以保存时还原(为了字段值保存时正常保存id)。\n if(fileFields[item].multiple){\n if(fileFieldValue instanceof Array && fileFieldValue.length){\n formData[item] = fileFieldValue.map((value)=>{ \n if(typeof value === 'object'){\n return value.value;\n }else{\n return value;\n }\n });\n }\n }else{\n formData[item] = typeof fileFieldValue === 'object' ? fileFieldValue.value : fileFieldValue;\n }\n }\n })\n \n let query = `mutation{record: ${objectName}__insert(doc: {__saveData}){_id}}`;\n if(formData.recordId && formData.recordId !='new'){\n query = `mutation{record: ${objectName}__update(id: \"${formData._id}\", doc: {__saveData}){_id}}`;\n };\n delete formData._id;\n let __saveData = JSON.stringify(JSON.stringify(formData));\n \n api.data = {query: query.replace('{__saveData}', __saveData)};\n return api;\n ",responseData:{recordId:"${record._id}"},adaptor:"console.log('payload', payload)\n return payload;\n ",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},dataType:"json"},initFetch:!0,body:[{type:"fieldSet",title:"通用",collapsable:!0,body:[{name:"object_name",label:"导入对象",required:!1,type:"select",joinValues:!1,extractValue:!0,autoComplete:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:"{options:objects(filters: {__filters}, top: {__top}){_id label:label value:name},count:objects__count(filters:{__filters})}",$term:"$term",$value:"$object_name.name",$:"$$",rfield:"${object_name}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:"\n var filters = '[]';\n var top = 10;\n if(api.data.$term){\n filters = '[\"name\", \"contains\", \"'+ api.data.$term +'\"]';\n }else if(api.data.$value){\n filters = '[\"_id\", \"=\", \"'+ api.data.$value +'\"]';\n }\n api.data.query = api.data.query.replace(/{__filters}/g, filters).replace('{__top}', top);\n return api;\n "},className:"m-1",labelClassName:"text-left",clearValueOnHidden:!1,id:"u:04295fee3896",multiple:!1,hidden:!0},{name:"queue_import",label:"数据导入",required:!0,type:"picker",labelField:"description",valueField:"_id",modalMode:"dialog",source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:queue_import(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,description,object_name,encoding,template_url,_display:_ui{object_name,encoding}},count:queue_import__count(filters:{__filters})}',$term:"$term",$self:"$$"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n var allowSearchFields = [\"description\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value?.indexOf(',') > 0){\n filters = [[\"_id\", \"=\", selfData.value.split(',')]];\n }else{\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\n })\n }\n\n const filtersFunction = function(filters, values){return ['object_name', '=', values.object_name]};\n\n if(filtersFunction){\n const _filters = filtersFunction(filters, api.data.$self.__super.__super);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n ",adaptor:"\n const enable_tree = undefined;\n if(enable_tree){\n const records = payload.data.rows;\n const treeRecords = [];\n const getChildren = (records, childrenIds)=>{\n if(!childrenIds){\n return;\n }\n const children = _.filter(records, (record)=>{\n return _.includes(childrenIds, record._id)\n });\n _.each(children, (item)=>{\n if(item.children){\n item.children = getChildren(records, item.children)\n }\n })\n return children;\n }\n\n _.each(records, (record)=>{\n if(!record.parent){\n treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));\n }\n });\n payload.data.rows = treeRecords;\n }\n return payload;\n "},size:"lg",pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:{perPage:20},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"description",label:"导入描述",type:"tpl",tpl:'<a href="/app/undefined/undefined/view/${undefined}">${description}</a>',className:"whitespace-nowrap",html:null},{name:"object_name",label:"导入对象",type:"tpl",tpl:'<a href="/app/undefined/${_display.object_name.objectName}/view/${_display.object_name.value}">${_display.object_name.label}</a>',className:"whitespace-nowrap",html:null},{name:"encoding",label:"字符代码",type:"tpl",tpl:"<div>${_display.encoding}</div>",className:"whitespace-nowrap",html:null},{name:"template_url",label:"导入模板",type:"markdown",className:"whitespace-nowrap",html:!0},null],syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,autoFillHeight:!1},joinValues:!1,extractValue:!0,className:"m-1",labelClassName:"text-left",clearValueOnHidden:!0,id:"u:401df27113e0"},{name:"file",label:"Excel文件",required:!0,type:"input-file",className:"m-1",labelClassName:"text-left",clearValueOnHidden:!0,useChunk:!1,receiver:{method:"post",url:"${context.rootUrl}/s3/files",data:{$:"$$",context:"${context}"},adaptor:'\n const { context } = api.body; \n var rootUrl = context.rootUrl + "/api/files/files/";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: payload._id,\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n ',headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}},id:"u:0213f2cc365b"}],id:"u:4899c260d667"}],panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"p-4 sm:p-0 steedos-amis-form",label:"对象表单",objectApiName:"queue_import_history",id:"u:e4ef598eed61",onEvent:{submitSucc:{weight:0,actions:[{args:{api:{url:"${context.rootUrl}/api/data/initiateImport",method:"post",data:{eventData:"${event.data}"},dataType:"json",requestAdaptor:"\napi.data = {\n importObjectHistoryId: api.body.eventData.result.data.recordId\n}\nreturn api;",adaptor:"payload.status = payload.status === 'success' ? 0 : payload.status;\nconsole.log(\"payload ssss==>\", payload)\nreturn payload;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}},messages:{success:"已开始导入...",failed:"导入失败"}},actionType:"ajax",expression:"event.data.result"}]}},closeDialogOnSubmit:!0}],id:"u:dc05498d3bd4",closeOnEsc:!1,closeOnOutside:!1,showCloseButton:!0,size:"lg"}}],weight:0}},level:"default"}],regions:["body"],className:"p-0",id:"u:bd2f9c4e986f"}}),getStandardOpenView:async(e,a)=>({type:"amis_button",amis_schema:await{type:"service",className:"p-0",body:[{type:"button",label:"查看",className:"border-none",onEvent:{click:{actions:[{componentId:"",args:{blank:!1,url:"/app/${app_id}/${objectName}/view/${_id}"},actionType:"link"}]}},id:"u:ef35c9ae1d19"}],regions:["body"]}})};function x(e){let a=e.visible;if(e._visible&&(a=e._visible),a=c.default.isBoolean(a)?a.toString():a)return 0<a.indexOf("Meteor.")||0<a.indexOf("Creator.")||0<a.indexOf("Session.")?(console.warn("无效的visible",a),"false"):a.trim().startsWith("function")?a+`.apply({
|
|
495
535
|
object: uiSchema
|
|
496
|
-
}, [objectName, _id, recordPermissions, data])`:a;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}a={standard_delete_many:function(){var{listViewId:e,uiSchema:a}=this,e=SteedosUI?.getRef(e).getComponentByName("page.listview_"+a.name);c.default.isEmpty(e.props.store.toJSON().selectedItems)?e.handleAction({},{actionType:"toast",toast:{items:[{position:"top-right",body:"请选择要删除的项"}]}}):e.handleBulkAction(e.props.store.toJSON().selectedItems,[],{},e.props.bulkActions[0])}};const O=(a,t)=>{const i=a.permissions&&a.permissions.disabled_actions;let e=c.default.sortBy(c.default.values(a.actions),"sort");return c.default.has(a,"allow_customActions")&&(e=c.default.filter(e,e=>c.default.include(a.allow_customActions,e.name))),c.default.has(a,"exclude_actions")&&(e=c.default.filter(e,e=>!c.default.include(a.exclude_actions,e.name))),c.default.each(e,e=>{e.objectName=a.name,t.isMobile&&-1<["record","record_only"].indexOf(e.on)&&"standard_edit"!=e.name&&("record_only"==e.on?e.on="record_only_more":e.on="record_more")}),t.isMobile&&-1<["cms_files","cfs.files.filerecord"].indexOf(a.name)&&c.default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),c.default.filter(e,e=>c.default.indexOf(i,e.name)<0&&"standard_query"!=e.name)},Te=(e,a)=>{e=O(e,a);return c.default.filter(e,e=>"list"==e.on)},Ee=(e,a)=>{e=O(e,a),a=c.default.filter(e,e=>"record"==e.on||"record_only"==e.on);return c.default.sortBy(a,"sort")},Ce=(e,a)=>{e=O(e,a),a=c.default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return c.default.sortBy(a,"sort")},I=async(e,a)=>{e=O(e,a);return c.default.filter(e,e=>"record"==e.on||"list_item"==e.on||"record_more"===e.on)},Be=async(e,a)=>{e=O(e,a);return c.default.filter(e,e=>{if("cms_files"!==e.objectName)return"standard_new"==e.name})};var Pe=(e,a)=>{if(e.todo)return c.default.isString(e.todo)&&c.default.startsWith(c.default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),c.default.isFunction(e.todo)?(a={objectName:a.objectName,object_name:a.objectName,object:a.uiSchema,record:a.record,recordId:a.recordId,record_id:a.recordId,...a,action:e},e.todo.apply(a,[a.objectName,a.recordId])):void 0},ze=Pe;async function Re(t){var{icon:e,label:a}=t;const i=[];b.each(t.list_views,(e,a)=>{i.push({type:"button",label:e.label,actionType:"link",link:`/app/\${appId}/${t.name}/grid/`+a})});var r=Te(t,{}),r=b.map(r,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:x(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),n=new RegExp("_","g");return{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<p><img class="slds-icon slds-icon_container slds-icon-standard-${e&&e.replace(n,"-")} slds-page-header__icon" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${e}.svg" /></p>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+a,inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:13,fontWeight:"bold"}},{type:"dropdown-button",className:"leading-none",label:"${uiSchema.list_views[listName].label}",rightIcon:"fa fa-caret-down",hideCaret:!0,btnClassName:"bg-transparent border-none text-lg font-bold p-0",buttons:i}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:r,md:"auto"}],align:"between"},{type:"grid",align:"between",columns:[{body:[],md:"auto"},{body:[{type:"button",label:"",icon:"fa fa-refresh",actionType:"reload",target:"listview_"+t.name,className:"bg-transparent p-0"},{type:"button",label:"",icon:"fa fa-filter",actionType:"custom",className:"bg-transparent p-0 ml-1",id:"u:c20cb87d96c9",onEvent:{click:{actions:[{actionType:"custom",script:'const eventData = event.data;\nconst uiSchema = eventData.uiSchema;\nconst listview_id = eventData.listName;\nvar selectedListView = uiSchema.list_views[listview_id]\nvar filter = eventData.filter;\n\nSteedosUI.ListView.showFilter(uiSchema.name, {\n listView: selectedListView,\n data: {\n filters: SteedosUI.ListView.getVisibleFilter(selectedListView, filter),\n },\n onFilterChange: (filter) => {\n doAction({\n componentId: `service_listview_${uiSchema.name}`,\n actionType: \'setValue\',\n "args": {\n "value": {\n filter: filter\n }\n }\n });\n doAction({\n componentId: `listview_${uiSchema.name}`,\n actionType: \'reload\',\n "args": {\n filter: filter\n }\n });\n }\n});'}],weight:0}}}],md:"auto"}]}],size:"xs",className:"bg-white p-t-sm p-b-sm p-l pr-4"}}async function Me(e){var{icon:a,label:t}=e,e=await Be(e,{}),e=b.map(e,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:x(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),i=new RegExp("_","g");return{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class="slds-icon_small slds-icon_container slds-icon-standard-${a&&a.replace(i,"-")}" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${a}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+t,inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:13,fontWeight:"bold"}}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:e,md:"auto"}],align:"between"}],size:"xs",className:"bg-white p-t-sm p-b-sm px-4 border-b"}}const Ue=(e,a,t)=>{e=e.replace(/\./g,"_");t=(e=>{const a=["_id"];return e.push("record_permissions"),b.each(e,e=>{-1<e.indexOf(".")&&(e=e.split(".")[0]),a.push(""+e)}),""+a.join(" ")})(t);let i="";a=[`id: "${a}"`];return`{record:${e}__findOne${i=0<a.length?`(${a.join(",")})`:i}{${t}}}`},Je=async(e,a,t)=>{return(await l("/graphql",{method:"post",body:JSON.stringify({query:Ue(e,a,t)})})).data.record};let D={},Le;"undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=D),D=window.UI_SCHEMA_CACHE);const He=(e,a)=>{D[e]=a},Ye=e=>b.cloneDeep(D[e]),Ke=e=>b.has(D,e),We=(e,a)=>{let t=[];return t="SMALL"===a?b.isEmpty(e.mobile_columns)?b.slice(e.columns,0,4):e.mobile_columns:e.columns};async function V(a,e){if(a){if(!Ke(a)||e){let t=null;try{if(!(t=Le?await Le(a,e):await l(`/service/api/@${a.replace(/\./g,"_")}/uiSchema`,{method:"get"})))return;He(a,t),b.each(t.list_views,(e,a)=>{e.name=a,b.has(e,"columns")||(e.columns=t.list_views.all.columns)})}catch(e){console.error("getUISchema",a,e),He(a,null)}}return Ye(a)}}async function A(e,a){return(await V(e))?.fields[a]}async function Ze(e,a){e=await V(e);return{uiSchema:e,amisSchema:await Oe(e,a)}}async function q(e,a,t,i={}){var r=await V(a),n=b.find(r.list_views,(e,a)=>a===(t=t||a));if(!n)return{uiSchema:r};if(n.amis_schema)return{uiSchema:r,isCustom:!0,amisSchema:b.isString(n.amis_schema)?JSON.parse(n.amis_schema):n.amis_schema};var l=We(n,i.formFactor);let o="";n&&n.sort&&n.sort.length&&b.each(n.sort,function(e,a){var t;b.isArray(e)?(t=e[0]+" "+(e[1]||""),t=0<a?","+t:t,o+=t):(t=e.field_name+" "+e.order,t=0<a?","+t:t,o+=t)});var s=i.defaults||{},s=(!s.headerSchema&&i.showHeader&&(s.headerSchema=await Re(r)),i.showHeader||(s.headerSchema=null),i.defaults=s,{type:"steedos-object-table",objectApiName:a,columns:l,extraColumns:n.extra_columns,filters:n.filters,sort:o,ctx:i});return{uiSchema:r,amisSchema:s}}async function Ge(a,i,t,r){var e=await V(i),n=[],l=[].concat(e.related_lists||[]);if(b.isEmpty(l))for(const m of[].concat(e.details||[])){var o,s,d=m.split("."),c=await V(d[0]);c&&(((o=await A(d[0],d[1]))._reference_to||o.reference_to&&!b.isString(o.reference_to))&&d[1],d[1],s=(o=await q(0,d[0],"all",{formFactor:r,buttons:await I(c,{isMobile:!1})})).amisSchema,c=await Me(c),s.ctx.defaults=Object.assign(s.ctx.defaults,{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:c}),s.ctx.globalFilter=s.filters,o.amisSchema={type:"service",data:{masterObjectName:i,masterRecordId:"${recordId}",relatedKey:d[1],objectName:d[0]},body:[{...s,data:{filter:["${relatedKey}","=","${masterRecordId}"],objectName:"${objectName}",recordId:"${masterRecordId}"}}]},n.push({masterObjectName:i,object_name:d[0],foreign_key:d[1],schema:o}))}else for(const f of l){var u=f.related_field_fullname.split(".");let e=null;var p=await A(u[0],u[1]);if(p){e=p._reference_to||p.reference_to&&!b.isString(p.reference_to)?[[u[1]+"/o","=",i],[u[1]+"/ids","=",t]]:[""+u[1],"=",t];const y=await V(u[0]);if(y){let t=[];b.forEach(f.field_names,a=>{var e=b.find(y.fields,e=>e.name===a);e&&t.push(e)}),n.push({masterObjectName:i,object_name:u[0],foreign_key:u[1],schema:{uiSchema:y,amisSchema:await j(y,t,{tabId:i,appId:a,objectName:u[0],formFactor:r,globalFilter:e,buttons:await I(y,{isMobile:!1})})}})}}}return n}const T={};async function Xe(e,a,t){return{type:"picker",label:"人员",name:a,id:t.id,modalMode:"dialog",joinValues:!1,source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:space_users(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,name,email,mobile},count:space_users__count(filters:{__filters})}',$term:"$term",$self:"$$"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n var allowSearchFields = [\"name\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\n })\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n "},pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["switch-per-page","pagination"],defaultParams:{perPage:50},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"_id",label:"ID",type:"text",toggled:!1},{name:"name",label:"姓名",sortable:!0,searchable:!0,type:"text"},{name:"email",label:"邮件",sortable:!0,type:"text",searchable:!0},{name:"mobile",label:"手机",type:"text",sortable:!0,searchable:!0}],syncLocation:!1,keepItemSelectionOnPageChange:!0},labelField:"name",valueField:"_id",size:"lg",extractValue:!0,className:"m-0",labelClassName:"text-left"}}const Qe=["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"],ea={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"},aa=e=>_.has(e,"conjunction"),ta=e=>{const t=[],{conjunction:i,children:a}=e;return i&&a&&a.forEach(e=>{var a;0<t.length&&t.push(i),aa(e)?(a=ta(e))&&0<a.length&&t.push(a):(a=ia(e))&&t.push(a)}),t},ia=e=>{var a,{left:e,op:t,right:i}=e;if(e&&"field"===e.type&&t)return t.startsWith("between:")?(a=t.split(":"),[e.field,a[0],a[1]]):null!=i?[e.field,ea[t],i]:void 0},ra=a=>{var e;if(3===a.length)return"between"===(e=c.default.findKey(ea,e=>e===a[1]))&&c.default.includes(Qe,a[2])?{left:{type:"field",field:a[0]},op:e+":"+a[2]}:{left:{type:"field",field:a[0]},op:e,right:a[2]};console.warn("无效的filter:"+JSON.stringify(a))},na=e=>!c.default.isArray(e)&&c.default.isObject(e)?[e.field,e.operation,e.value]:e,la=e=>{e=na(e);const a={conjunction:"and",children:[]};return e&&0!=e.length&&e.forEach(e=>{"or"===(e=na(e))||"and"===e?a.conjunction=e:3===e.length&&-1==e.indexOf("and")&&-1==e.indexOf("or")?a.children.push(ra(e)):a.children.push(la(e))}),a};const oa=e=>{const t=[];return b.each(e.options.split("\n"),e=>{var a=e.split(":");2==a.length?t.push({label:a[0],value:a[1]}):t.push({label:e,value:e})}),t},sa=(e,a)=>{const t={label:!0===a&&e.name,name:e.code,mode:"horizontal",className:"m-none p-none",disabled:"readonly"===e.permission};switch(e.type){case"input":e.is_textarea?t.type="textarea":t.type="input-text";break;case"number":t.type="input-number";break;case"date":t.type="input-date";break;case"dateTime":t.type="input-datetime";break;case"checkbox":t.type="checkbox";break;case"email":t.type="input-email",t.validations={isEmail:!0};break;case"url":t.type="input-url",t.validations={isUrl:!0};break;case"password":t.type="input-password",t.showCounter=!0;break;case"select":t.type="select",t.options=oa(e);break;case"user":case"group":t.type="input-text";break;case"radio":t.type="radios",t.options=oa(e);break;case"multiSelect":t.type="checkboxes",t.options=oa(e);break;case"odata":var i=e.formula.substr(1,e.formula.length-2);t.type="select",t.multiple=e.is_multiselect,t.labelField=i,t.valueField="$$",t.source={url:b.startsWith(e.url,"http")?e.url:"${context.rootUrl}"+e.url,method:"get",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};break;case"html":t.type="html";break;case"table":t.type="input-table",t.addable="readonly"!=e.permission,t.editable=t.addable,t.copyable=t.addable,t.columns=[],b.each(e.sfields,e=>{"hidden"!=e.type&&t.columns.push(sa(e,!0))});break;case"section":t.type="input-text"}return t},da=t=>{const i=[];return b.each(t,e=>{var a;"table"!=e.type&&i.push({className:"td-title",align:"section"!=e.type?"center":"left",width:"section"!=e.type?"16%":"",colspan:"section"==e.type?4:"",body:[{type:"tpl",tpl:`<div style='font-size:20px'>${e.name}</div>`}]}),"section"!=e.type&&i.push((e=e,a=t.length,{background:"readonly"===e.permission?"":"rgba(255,255,0,.1)",colspan:"table"===e.type?4:3-2*(a-1),align:"left",className:"td-field",body:[sa(e)],style:{marginTop:"0",paddingTop:"0",paddingRight:"0",paddingBottom:"0",paddingLeft:"0",marginRight:"0",marginBottom:"0",marginLeft:"0"}}))}),i},ca=t=>{const a=[],i=[];let r=[];return b.each(t.fields,(e,a)=>{e.is_wide?(0!=r.length&&i.push(r),"table"==e.type&&i.push([Object.assign({},e,{type:"section"})]),(r=[]).push(e),i.push(r),r=[]):(r.push(e),2!=r.length&&a!==t.fields.length-1||(i.push(r),r=[]))}),b.each(i,e=>{a.push({background:"#F7F7F7",tds:da(e)})}),a};function ua(e){var r=[];return e.charCodeAt(0)===".".charCodeAt(0)&&r.push(""),e.replace(new RegExp("[^.[\\]]+|\\[(?:([^\"'][^[]*)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g"),function(e,a,t,i){return t?e=i.replace(/\\(\\)?/g,"$1"):a&&(e=a.trim()),r.push(e),""}),r}var E=function(){return(E=Object.assign||function(e){for(var a,t=1,i=arguments.length;t<i;t++)for(var r in a=arguments[t])Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r]);return e}).apply(this,arguments)};function pa(a,e){void 0===e&&(e=!0);var t=a&&a.__super?Object.create(a.__super,{__super:{value:a.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return e&&a&&Object.keys(a).forEach(function(e){return t[e]=a[e]}),t}function ma(e){var a=typeof e;return e&&"string"!=a&&"number"!=a&&"boolean"!=a&&"function"!=a&&!Array.isArray(e)}e.absoluteUrl=function(e){return""+d()+e},e.amisRender=(e,a,t={},i={},r)=>{var n=amisRequire("amis/embed"),{router:r,assets:l}=r;return U(l),n.embed(e,a,t,Object.assign(M(r),i))},e.amisRootClick=(e,a)=>{"a"===a.target.nodeName.toLocaleLowerCase()&&a.target.href&&(a.preventDefault(),e.push(a.target.href))},e.cloneObject=pa,e.conditionsToFilters=e=>ta(e),e.createObject=function(e,a,t){var i=(e=e&&Object.isFrozen(e)?pa(e):e)?Object.create(e,E(E({},t),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,t);return a&&ma(a)&&Object.keys(a).forEach(function(e){return i[e]=a[e]}),i},e.defaultsDeep=S,e.deleteVariable=function(e,a){if(e)if(e.hasOwnProperty(a))delete e[a];else{for(var t=ua(a),a=t.pop();t.length;){var i=t.shift();if(!P.default(e[i])){if(e[i])throw new Error("目标路径不是纯对象,不能修改");break}e=e[i]=E({},e[i])}e&&e.hasOwnProperty&&e.hasOwnProperty(a)&&delete e[a]}},e.execute=Pe,e.executeButton=ze,e.extendObject=function(e,a,t){var i=pa(e,t=void 0===t?!0:t);return a&&Object.keys(a).forEach(function(e){return i[e]=a[e]}),i},e.fetchAPI=l,e.filtersToConditions=e=>la(e),e.getAmisObjectRelatedList=Ge,e.getApp=async function(e){return await l(`/service/api/apps/${e}/menus`)},e.getApps=async function(){return await l("/service/api/apps/menus")},e.getAuthToken=s,e.getAuthorization=L,e.getButton=async(e,a,t)=>{var i=await V(e);if(i){var r=await O(i,t),r=c.default.find(r,e=>e.name===a);if(r)return"standard_edit"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_edit.visible.apply")?{label:r.label,name:r.name,on:r.on,...await k.getStandardEdit(i,t)}:"cms_files"!=e&&"standard_new"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_new.visible.apply")?{label:r.label,name:r.name,on:r.on,...await k.getStandardNew(i,t)}:"standard_delete"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_delete.visible.apply")?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await k.getStandardDelete(i,t)}:i.hasImportTemplates&&"standard_import_data"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await k.getStandardImportData(i,t)}:"standard_open_view"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await k.getStandardOpenView(i,t)}:r}},e.getButtonVisible=(a,e)=>{if(a._visible&&(c.default.startsWith(c.default.trim(a._visible),"function")?(window.eval("var fun = "+a._visible),a.visible=fun):Ie(a._visible)&&(a.visible=e=>{De(a._visible,e.record,"#",{now:new Date},e.userSession)})),!c.default.isFunction(a.visible))return a.visible;try{return a.visible(e)}catch(e){}},e.getButtonVisibleOn=x,e.getButtons=O,e.getEnv=e=>T[e],e.getEnvs=()=>T,e.getEvn=M,e.getField=A,e.getFileSrc=function(e){return d()+"/api/files/files/"+e},e.getFlowFormSchema=e=>{return{type:"page",body:[{type:"service",data:{beijing:"20",tianjing:"19"},body:[{type:"tpl",id:"u:f5bb0ad602a6",tpl:`<div style='font-size:20px'>${e.title}</div>`,inline:!0,wrapperComponent:"",style:{fontFamily:"",fontSize:12,textAlign:"center"}},(e=e,{type:"table-view",trs:ca(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 Ze(e,{recordId:"${recordId}"})).amisSchema]}},e.getFormSchema=Ze,e.getImageSrc=function(e){return d()+"/api/files/images/"+e},e.getListPageInitSchema=async function(e,a,t){var i=await V(e),i=(b.first(b.keys(i.list_views)),await Re(i));return{type:"page",bodyClassName:"p-0",regions:["body"],body:[{type:"steedos-object-listview",objectApiName:e,columnsTogglable:!1,showHeader:!0,headerSchema:i}]}},e.getListSchema=q,e.getListViewButtons=Te,e.getListViewItemButtons=I,e.getNotifications=async()=>{var e=t(),e=`
|
|
497
|
-
{
|
|
498
|
-
notifications(filters: ["owner","=","${e.userId}"], sort: "created desc,name", top : 10){
|
|
499
|
-
_id,name,body,related_to,related_name,url,owner,is_read,from,created
|
|
500
|
-
},
|
|
501
|
-
unReadCount: notifications__count(filters: [["owner","=","${e.userId}"], ["is_read", "!=", true]])
|
|
502
|
-
}
|
|
503
|
-
`;return(await l("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getObjectDetailButtons=Ee,e.getObjectDetailMoreButtons=Ce,e.getObjectRelated=async function({masterObjectName:e,objectName:a,relatedFieldName:t,recordId:i,formFactor:r}){let n=null;var l=await A(a,t),l=(n=l._reference_to||l.reference_to&&!b.isString(l.reference_to)?[[t+"/o","=",e],[t+"/ids","=",i]]:[""+t,"=",i],await V(e));return{masterObjectName:e,object_name:a,foreign_key:t,schema:await q(0,a,"all",{globalFilter:n,formFactor:r}),record:await Je(e,i,[l.NAME_FIELD_KEY]),masterObjectUISchema:l}},e.getObjectRelatedList=async function(a,i,t,r){var e=await V(i),n=[],l=[].concat(e.related_lists||[]);if(b.isEmpty(l))for(const p of[].concat(e.details||[])){var o=p.split("."),s=await V(o[0]);if(s){let e=null;var d=await A(o[0],o[1]);e=d._reference_to||d.reference_to&&!b.isString(d.reference_to)?[[o[1]+"/o","=",i],[o[1]+"/ids","=",t]]:[""+o[1],"=",t],n.push({masterObjectName:i,object_name:o[0],foreign_key:o[1],schema:await q(0,o[0],"all",{globalFilter:e,formFactor:r,buttons:await I(s,{isMobile:!1})})})}}else for(const m of l){var c=m.related_field_fullname.split(".");let e=null;var u=await A(c[0],c[1]);if(u){e=u._reference_to||u.reference_to&&!b.isString(u.reference_to)?[[c[1]+"/o","=",i],[c[1]+"/ids","=",t]]:[""+c[1],"=",t];const f=await V(c[0]);if(f){let t=[];b.forEach(m.field_names,a=>{var e=b.find(f.fields,e=>e.name===a);e&&t.push(e)}),n.push({masterObjectName:i,object_name:c[0],foreign_key:c[1],schema:{uiSchema:f,amisSchema:await j(f,t,{tabId:i,appId:a,objectName:c[0],formFactor:r,globalFilter:e,buttons:await I(f,{isMobile:!1})})}})}}}return n},e.getObjectRelatedListButtons=Be,e.getPage=r,e.getRecord=Je,e.getRecordDetailHeaderSchema=async function(e,a){return{uiSchema:e=await V(e),amisSchema:await async function(e,a){var{name:t,label:i,icon:r}=e,n=Ee(e,{}),l=Ce(e,{recordId:a,objectName:t}),n=b.map(n,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:x(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),l=b.map(l,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:x(e)})),l=(n.push({type:"steedos-dropdown-button",label:"",buttons:l,className:"slds-icon"}),new RegExp("_","g")),l=[{type:"service",body:[{type:"panel",title:"标题",body:[],header:{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class='slds-icon slds-icon_container slds-icon-standard-${r&&r.replace(l,"-")}' src='\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${r}.svg'>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+i,inline:!1,wrapperComponent:"",style:{fontFamily:"",fontSize:13},className:"leading-none"},{type:"tpl",tpl:"${name}",inline:!1,wrapperComponent:"",style:{fontFamily:"",fontSize:20,fontWeight:"bold",textAlign:"left"},className:"leading-none"}]}]}],md:"auto"},{body:n,md:"auto"}],align:"between"}],size:"xs"},affixFooter:!1,headerClassName:"",bodyClassName:"p-none"}],messages:{},api:{method:"post",url:"${context.rootUrl}/graphql",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},data:{query:`{rows:${t}(filters: ["_id","=","${a}"]){_id, name} }`},sendOn:""+!!a,requestAdaptor:"",adaptor:`
|
|
536
|
+
}, [objectName, _id, recordPermissions, data])`:a;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}a={standard_delete_many:function(){var{listViewId:e,uiSchema:a}=this,e=SteedosUI?.getRef(e).getComponentByName("page.listview_"+a.name);c.default.isEmpty(e.props.store.toJSON().selectedItems)?e.handleAction({},{actionType:"toast",toast:{items:[{position:"top-right",body:"请选择要删除的项"}]}}):e.handleBulkAction(e.props.store.toJSON().selectedItems,[],{},e.props.bulkActions[0])}};const O=(a,t)=>{const i=a.permissions&&a.permissions.disabled_actions;let e=c.default.sortBy(c.default.values(a.actions),"sort");return c.default.has(a,"allow_customActions")&&(e=c.default.filter(e,e=>c.default.include(a.allow_customActions,e.name))),c.default.has(a,"exclude_actions")&&(e=c.default.filter(e,e=>!c.default.include(a.exclude_actions,e.name))),c.default.each(e,e=>{e.objectName=a.name,t.isMobile&&-1<["record","record_only"].indexOf(e.on)&&"standard_edit"!=e.name&&("record_only"==e.on?e.on="record_only_more":e.on="record_more")}),t.isMobile&&-1<["cms_files","cfs.files.filerecord"].indexOf(a.name)&&c.default.map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record")}),c.default.filter(e,e=>c.default.indexOf(i,e.name)<0&&"standard_query"!=e.name)},Pe=(e,a)=>{e=O(e,a);return c.default.filter(e,e=>"list"==e.on)},ze=(e,a)=>{e=O(e,a),a=c.default.filter(e,e=>"record"==e.on||"record_only"==e.on);return c.default.sortBy(a,"sort")},Le=(e,a)=>{e=O(e,a),a=c.default.filter(e,e=>"record_more"==e.on||"record_only_more"==e.on);return c.default.sortBy(a,"sort")},I=async(e,a)=>{e=O(e,a);return c.default.filter(e,e=>"record"==e.on||"list_item"==e.on||"record_more"===e.on)},Re=async(e,a)=>{e=O(e,a);return c.default.filter(e,e=>{if("cms_files"!==e.objectName)return"standard_new"==e.name})};var Ue=(e,a)=>{if(e.todo)return c.default.isString(e.todo)&&c.default.startsWith(c.default.trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),c.default.isFunction(e.todo)?(a={objectName:a.objectName,object_name:a.objectName,object:a.uiSchema,record:a.record,recordId:a.recordId,record_id:a.recordId,...a,action:e},e.todo.apply(a,[a.objectName,a.recordId])):void 0},Me=Ue;async function D(t,e,a){a=a||{};var{icon:i,label:r}=t;const n=[];b.each(t.list_views,(e,a)=>{n.push({type:"button",label:e.label,actionType:"link",link:`/app/\${appId}/${t.name}/grid/`+a})});var l=Pe(t,{}),l=b.map(l,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:x(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),o=new RegExp("_","g"),o=i&&i.replace(o,"-"),s="listview_"+t.name,o={type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<p><img class="slds-icon slds-icon_container slds-icon-standard-${o} slds-page-header__icon" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${i}.svg" /></p>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+r,inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:13,fontWeight:"bold"}},{type:"dropdown-button",className:"leading-none",label:"${uiSchema.list_views[listName].label}",rightIcon:"fa fa-caret-down",hideCaret:!0,btnClassName:"bg-transparent border-none text-lg font-bold p-0",buttons:n}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:l,md:"auto"}],align:"between"},i={type:"grid",align:"between",columns:[{body:[],md:"auto"},{body:[await Ie(t),{type:"button",label:"",icon:"fa fa-refresh",actionType:"reload",target:s,className:"bg-transparent p-0 ml-1"},{type:"button",label:"",icon:"fa fa-filter",actionType:"custom",className:"bg-transparent p-0 ml-1",id:"u:c20cb87d96c9",onEvent:{click:{actions:[{actionType:"custom",script:'const eventData = event.data;\nconst uiSchema = eventData.uiSchema;\nconst listview_id = eventData.listName;\nvar selectedListView = uiSchema.list_views[listview_id]\nvar filter = eventData.filter;\n\nSteedosUI.ListView.showFilter(uiSchema.name, {\n listView: selectedListView,\n data: {\n filters: SteedosUI.ListView.getVisibleFilter(selectedListView, filter),\n },\n onFilterChange: (filter) => {\n doAction({\n componentId: `service_listview_${uiSchema.name}`,\n actionType: \'setValue\',\n "args": {\n "value": {\n filter: filter\n }\n }\n });\n doAction({\n componentId: `listview_${uiSchema.name}`,\n actionType: \'reload\',\n "args": {\n filter: filter\n }\n });\n }\n});'}],weight:0}}}],md:"auto"}],className:"-mt-3"};let d=[o,i];a.onlyFirstLine?d=[o]:a.onlySecordLine&&(d=[i]);r=[{type:"wrapper",body:d,size:"xs",className:"p-t-sm p-b-sm p-l pr-4 border-b py-4"}],l=b.keys(t.fields),s=b.sortBy(b.compact(b.map(l,e=>t.fields[e])),"sort_no"),o=await Ve(t,s,{isListviewInit:a.isListviewInit});return r.push(o),r}async function Je(e,a){var{name:t,label:i,icon:r,NAME_FIELD_KEY:n}=e,l=ze(e,{}),o=Le(e,{recordId:a,objectName:t}),l=b.map(l,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:x(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),o=b.map(o,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:x(e)})),o=(l.push({type:"steedos-dropdown-button",label:"",buttons:o,className:"slds-icon"}),new RegExp("_","g")),o=[{type:"service",body:[{type:"panel",title:"标题",body:[],header:{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class='slds-icon slds-icon_container slds-icon-standard-${r&&r.replace(o,"-")}' src='\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${r}.svg'>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+i,inline:!1,wrapperComponent:"",style:{fontFamily:"",fontSize:13},className:"leading-none"},{type:"tpl",tpl:"${(record && uiSchema && record[uiSchema.NAME_FIELD_KEY]) || name}",inline:!1,wrapperComponent:"",style:{fontFamily:"",fontSize:20,fontWeight:"bold",textAlign:"left"},className:"leading-none"}]}]}],md:"auto"},{body:l,md:"auto"}],align:"between"}],size:"xs"},affixFooter:!1,headerClassName:"",bodyClassName:"p-none"}],messages:{},api:{method:"post",url:"${context.rootUrl}/graphql",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},data:{query:`{rows:${t}(filters: ["_id","=","${a}"]){_id, ${n||"name"}} }`},sendOn:""+!!a,requestAdaptor:"",adaptor:`
|
|
504
537
|
const rows = payload.data.rows;
|
|
505
538
|
let label = null;
|
|
506
539
|
if (rows.length) {
|
|
@@ -512,9 +545,16 @@
|
|
|
512
545
|
name: label
|
|
513
546
|
}
|
|
514
547
|
return payload;
|
|
515
|
-
`}}];return{type:"service",bodyClassName:"",name:"page",data:{context:{rootUrl:d(),tenantId:o(),authToken:s()},objectName:t,_id:a,recordPermissions:e.permissions,uiSchema:e},body:l}}(e,a)}},e.getRecordDetailRelatedListSchema=async function(a,e,t){var i=await V(t),{list_views:r,fields:n}=i;return{uiSchema:i,amisSchema:(await q(0,t,b.keys(r)[0],{globalFilter:[b.findKey(n,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===a}),"=",e],defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:await Me(i)},showHeader:!0})).amisSchema}},e.getRecordPageInitSchema=async function(e){var e=await Ge(null,e,"${recordId}",null),a=[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}"}],t={type:"tabs",tabs:[{title:"详情",body:[{type:"steedos-object-form",label:"对象表单",mode:"read",objectApiName:"${objectName}",recordId:"${recordId}",labelAlign:"left"}]}],className:"bg-white mb-4",linksClassName:"pl-4 pt-2"};return(e=b.map(e,e=>e.schema.amisSchema)).length&&t.tabs.push({title:"相关",body:e}),a.push(t),{type:"page",bodyClassName:"",regions:["body"],body:a}},e.getRecordPermissions=async(e,a)=>{return await l(`/service/api/@${e}/recordPermissions/`+a,{method:"GET"})},e.getRelatedsCount=async(a,e)=>{const t=[];b.each(e,e=>{t.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${a}"]])`)});e=`
|
|
548
|
+
`}}];return{type:"service",bodyClassName:"",name:"page",data:{context:{rootUrl:p(),tenantId:s(),authToken:d()},objectName:t,_id:a,recordPermissions:e.permissions,uiSchema:e},body:o}}async function He(e){var{icon:a,label:t}=e,e=await Re(e,{}),e=b.map(e,e=>({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:x(e),className:`button_${e.name} border-gray-200 inline-block ml-1`})),i=new RegExp("_","g");return{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<img class="slds-icon_small slds-icon_container slds-icon-standard-${a&&a.replace(i,"-")}" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${a}.svg" />`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+t,inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:13,fontWeight:"bold"}}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:"auto"},{body:e,md:"auto"}],align:"between"}],size:"xs",className:"bg-white p-t-sm p-b-sm px-4 border-b"}}const Ye=(e,a,t)=>{e=e.replace(/\./g,"_");t=(e=>{const a=["_id"];return e.push("record_permissions"),b.each(e,e=>{-1<e.indexOf(".")&&(e=e.split(".")[0]),a.push(""+e)}),""+a.join(" ")})(t);let i="";a=[`id: "${a}"`];return`{record:${e}__findOne${i=0<a.length?`(${a.join(",")})`:i}{${t}}}`},Ke=async(e,a,t)=>{return(await l("/graphql",{method:"post",body:JSON.stringify({query:Ye(e,a,t)})})).data.record};let r={},We;"undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=r),r=window.UI_SCHEMA_CACHE);const Ze=(e,a)=>{r[e]=a},Ge=e=>b.cloneDeep(r[e]),Xe=e=>b.has(r,e);function Qe(e,a){let t=[];return t="SMALL"===a?b.isEmpty(e.mobile_columns)?b.slice(e.columns,0,4):e.mobile_columns:e.columns}function ea(e){let i="";return e&&e.sort&&e.sort.length&&b.each(e.sort,function(e,a){var t;b.isArray(e)?(t=e[0]+" "+(e[1]||""),t=0<a?","+t:t,i+=t):(t=e.field_name+" "+e.order,t=0<a?","+t:t,i+=t)}),i}async function V(a,e){if(a){if(!Xe(a)||e){let t=null;try{if(!(t=We?await We(a,e):await l(`/service/api/@${a.replace(/\./g,"_")}/uiSchema`,{method:"get"})))return;Ze(a,t),b.each(t.list_views,(e,a)=>{e.name=a,b.has(e,"columns")||(e.columns=t.list_views.all.columns)})}catch(e){console.error("getUISchema",a,e),Ze(a,null)}}return Ge(a)}}async function A(e,a){return(await V(e))?.fields[a]}async function aa(e,a){e=await V(e);return{uiSchema:e,amisSchema:await ue(e,a)}}async function q(e,a,t,i={}){var r,n,l,o=await V(a),s=b.find(o.list_views,(e,a)=>a===(t=t||a));return s?s.enable_amis_schema&&s.amis_schema?{uiSchema:o,isCustom:!0,amisSchema:b.isString(s.amis_schema)?JSON.parse(s.amis_schema):s.amis_schema}:(r=Qe(s,i.formFactor),n=ea(s),!(l=i.defaults||{}).headerSchema&&i.showHeader&&(l.headerSchema=await D(o)),i.showHeader||(l.headerSchema=null),i.defaults=l,{uiSchema:o,amisSchema:{type:"steedos-object-table",objectApiName:a,columns:r,extraColumns:s.extra_columns,filters:s.filters,sort:n,ctx:i}}):{uiSchema:o}}async function ta(a,i,t,r){var e=await V(i),n=[],l=[].concat(e.related_lists||[]);if(b.isEmpty(l))for(const m of[].concat(e.details||[])){var o,s,d=m.split("."),c=await V(d[0]);c&&(((o=await A(d[0],d[1]))._reference_to||o.reference_to&&!b.isString(o.reference_to))&&d[1],d[1],s=(o=await q(0,d[0],"all",{formFactor:r,buttons:await I(c,{isMobile:!1})})).amisSchema,c=await He(c),s.headerSchema=c,s.headerToolbar=[],s.columnsTogglable=!1,s.globalFilter=s.filters,delete s.ctx,o.amisSchema={type:"service",data:{masterObjectName:i,masterRecordId:"${recordId}",relatedKey:d[1],objectName:d[0],listViewId:`amis-\${appId}-${d[0]}-listview`},body:[{...s,data:{filter:["${relatedKey}","=","${masterRecordId}"],objectName:"${objectName}",recordId:"${masterRecordId}",[d[1]]:((e,a,t,i)=>{t=b.find(t.fields,e=>i===e?.name);return b.isString(t.reference_to)?t.multiple?[a]:a:{o:e,ids:[a]}})(i,"${recordId}",o.uiSchema,d[1])}}]},n.push({masterObjectName:i,object_name:d[0],foreign_key:d[1],schema:o}))}else for(const f of l){var p=f.related_field_fullname.split(".");let e=null;var u=await A(p[0],p[1]);if(u){e=u._reference_to||u.reference_to&&!b.isString(u.reference_to)?[[p[1]+"/o","=",i],[p[1]+"/ids","=",t]]:[""+p[1],"=",t];const y=await V(p[0]);if(y){let t=[];b.forEach(f.field_names,a=>{var e=b.find(y.fields,e=>e.name===a);e&&t.push(e)}),n.push({masterObjectName:i,object_name:p[0],foreign_key:p[1],schema:{uiSchema:y,amisSchema:await F(y,t,{tabId:i,appId:a,objectName:p[0],formFactor:r,globalFilter:e,buttons:await I(y,{isMobile:!1})})}})}}}return n}const T={};async function ia(e,a,t){return{type:"picker",label:"人员",name:a,id:t.id,modalMode:"dialog",joinValues:!1,source:{method:"post",url:"${context.rootUrl}/graphql",data:{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:'{rows:space_users(filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"){_id,name,email,mobile},count:space_users__count(filters:{__filters})}',$term:"$term",$self:"$$"},requestAdaptor:"\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n var allowSearchFields = [\"name\"];\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n filters = [[\"_id\", \"=\", selfData.value]];\n }\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(keyValue){\n filters.push([key, \"contains\", keyValue]);\n }\n })\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n "},pickerSchema:{mode:"table",name:"thelist",draggable:!1,headerToolbar:["switch-per-page","pagination"],defaultParams:{perPage:50},columns:[{name:"_index",type:"text",width:32,placeholder:""},{name:"_id",label:"ID",type:"text",toggled:!1},{name:"name",label:"姓名",sortable:!0,searchable:!0,type:"text"},{name:"email",label:"邮件",sortable:!0,type:"text",searchable:!0},{name:"mobile",label:"手机",type:"text",sortable:!0,searchable:!0}],syncLocation:!1,keepItemSelectionOnPageChange:!0},labelField:"name",valueField:"_id",size:"lg",extractValue:!0,className:"m-0",labelClassName:"text-left"}}const ra=["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"],na={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"},la=e=>_.has(e,"conjunction"),oa=e=>{const t=[],{conjunction:i,children:a}=e;return i&&a&&a.forEach(e=>{var a;0<t.length&&t.push(i),la(e)?(a=oa(e))&&0<a.length&&t.push(a):(a=sa(e))&&t.push(a)}),t},sa=e=>{var a,{left:e,op:t,right:i}=e;if(e&&"field"===e.type&&t)return t.startsWith("between:")?(a=t.split(":"),[e.field,a[0],a[1]]):null!=i?[e.field,na[t],i]:void 0},da=a=>{var e;if(3===a.length)return"between"===(e=c.default.findKey(na,e=>e===a[1]))&&c.default.includes(ra,a[2])?{left:{type:"field",field:a[0]},op:e+":"+a[2]}:{left:{type:"field",field:a[0]},op:e,right:a[2]};console.warn("无效的filter:"+JSON.stringify(a))},ca=e=>!c.default.isArray(e)&&c.default.isObject(e)?[e.field,e.operation,e.value]:e,pa=e=>{e=ca(e);const a={conjunction:"and",children:[]};return e&&0!=e.length&&e.forEach(e=>{"or"===(e=ca(e))||"and"===e?a.conjunction=e:3===e.length&&-1==e.indexOf("and")&&-1==e.indexOf("or")?a.children.push(da(e)):a.children.push(pa(e))}),a};const ua=e=>{const t=[];return b.each(e.options.split("\n"),e=>{var a=e.split(":");2==a.length?t.push({label:a[0],value:a[1]}):t.push({label:e,value:e})}),t},ma=(e,a)=>{const t={label:!0===a&&e.name,name:e.code,mode:"horizontal",className:"m-none p-none",disabled:"readonly"===e.permission};switch(e.type){case"input":e.is_textarea?t.type="textarea":t.type="input-text";break;case"number":t.type="input-number";break;case"date":t.type="input-date";break;case"dateTime":t.type="input-datetime";break;case"checkbox":t.type="checkbox";break;case"email":t.type="input-email",t.validations={isEmail:!0};break;case"url":t.type="input-url",t.validations={isUrl:!0};break;case"password":t.type="input-password",t.showCounter=!0;break;case"select":t.type="select",t.options=ua(e);break;case"user":case"group":t.type="input-text";break;case"radio":t.type="radios",t.options=ua(e);break;case"multiSelect":t.type="checkboxes",t.options=ua(e);break;case"odata":var i=e.formula.substr(1,e.formula.length-2);t.type="select",t.multiple=e.is_multiselect,t.labelField=i,t.valueField="$$",t.source={url:b.startsWith(e.url,"http")?e.url:"${context.rootUrl}"+e.url,method:"get",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};break;case"html":t.type="html";break;case"table":t.type="input-table",t.addable="readonly"!=e.permission,t.editable=t.addable,t.copyable=t.addable,t.columns=[],b.each(e.sfields,e=>{"hidden"!=e.type&&t.columns.push(ma(e,!0))});break;case"section":t.type="input-text"}return t},fa=t=>{const i=[];return b.each(t,e=>{var a;"table"!=e.type&&i.push({className:"td-title",align:"section"!=e.type?"center":"left",width:"section"!=e.type?"16%":"",colspan:"section"==e.type?4:"",body:[{type:"tpl",tpl:`<div style='font-size:20px'>${e.name}</div>`}]}),"section"!=e.type&&i.push((e=e,a=t.length,{background:"readonly"===e.permission?"":"rgba(255,255,0,.1)",colspan:"table"===e.type?4:3-2*(a-1),align:"left",className:"td-field",body:[ma(e)],style:{marginTop:"0",paddingTop:"0",paddingRight:"0",paddingBottom:"0",paddingLeft:"0",marginRight:"0",marginBottom:"0",marginLeft:"0"}}))}),i},ya=t=>{const a=[],i=[];let r=[];return b.each(t.fields,(e,a)=>{e.is_wide?(0!=r.length&&i.push(r),"table"==e.type&&i.push([Object.assign({},e,{type:"section"})]),(r=[]).push(e),i.push(r),r=[]):(r.push(e),2!=r.length&&a!==t.fields.length-1||(i.push(r),r=[]))}),b.each(i,e=>{a.push({background:"#F7F7F7",tds:fa(e)})}),a};function ba(e){var r=[];return e.charCodeAt(0)===".".charCodeAt(0)&&r.push(""),e.replace(new RegExp("[^.[\\]]+|\\[(?:([^\"'][^[]*)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g"),function(e,a,t,i){return t?e=i.replace(/\\(\\)?/g,"$1"):a&&(e=a.trim()),r.push(e),""}),r}var E=function(){return(E=Object.assign||function(e){for(var a,t=1,i=arguments.length;t<i;t++)for(var r in a=arguments[t])Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r]);return e}).apply(this,arguments)};function ha(a,e){void 0===e&&(e=!0);var t=a&&a.__super?Object.create(a.__super,{__super:{value:a.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return e&&a&&Object.keys(a).forEach(function(e){return t[e]=a[e]}),t}function _a(e){var a=typeof e;return e&&"string"!=a&&"number"!=a&&"boolean"!=a&&"function"!=a&&!Array.isArray(e)}e.absoluteUrl=function(e){return""+p()+e},e.amisRender=(e,a,t={},i={},r)=>{var n=amisRequire("amis/embed"),{router:r,assets:l}=r;return U(l),n.embed(e,a,t,Object.assign(R(r),i))},e.amisRootClick=(e,a)=>{"a"===a.target.nodeName.toLocaleLowerCase()&&a.target.href&&(a.preventDefault(),e.push(a.target.href))},e.cloneObject=ha,e.conditionsToFilters=e=>oa(e),e.createObject=function(e,a,t){var i=(e=e&&Object.isFrozen(e)?ha(e):e)?Object.create(e,E(E({},t),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,t);return a&&_a(a)&&Object.keys(a).forEach(function(e){return i[e]=a[e]}),i},e.defaultsDeep=$,e.deleteVariable=function(e,a){if(e)if(e.hasOwnProperty(a))delete e[a];else{for(var t=ba(a),a=t.pop();t.length;){var i=t.shift();if(!P.default(e[i])){if(e[i])throw new Error("目标路径不是纯对象,不能修改");break}e=e[i]=E({},e[i])}e&&e.hasOwnProperty&&e.hasOwnProperty(a)&&delete e[a]}},e.execute=Ue,e.executeButton=Me,e.extendObject=function(e,a,t){var i=ha(e,t=void 0===t?!0:t);return a&&Object.keys(a).forEach(function(e){return i[e]=a[e]}),i},e.fetchAPI=l,e.filtersToConditions=e=>pa(e),e.getAmisObjectRelatedList=ta,e.getApp=async function(e){return await l(`/service/api/apps/${e}/menus`)},e.getApps=async function(){return await l("/service/api/apps/menus")},e.getAuthToken=d,e.getAuthorization=J,e.getButton=async(e,a,t)=>{var i=await V(e);if(i){var r=await O(i,t),r=c.default.find(r,e=>e.name===a);if(r)return"standard_edit"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_edit.visible.apply")?{label:r.label,name:r.name,on:r.on,...await k.getStandardEdit(i,t)}:"cms_files"!=e&&"standard_new"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_new.visible.apply")?{label:r.label,name:r.name,on:r.on,...await k.getStandardNew(i,t)}:"standard_delete"==r.name&&0<r._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_delete.visible.apply")?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await k.getStandardDelete(i,t)}:i.hasImportTemplates&&"standard_import_data"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await k.getStandardImportData(i,t)}:"standard_open_view"===r.name?{label:r.label,name:r.name,on:r.on,sort:r.sort,...await k.getStandardOpenView(i,t)}:r}},e.getButtonVisible=(a,e)=>{if(a._visible&&(c.default.startsWith(c.default.trim(a._visible),"function")?(window.eval("var fun = "+a._visible),a.visible=fun):Ae(a._visible)&&(a.visible=e=>{qe(a._visible,e.record,"#",{now:new Date},e.userSession)})),!c.default.isFunction(a.visible))return a.visible;try{return a.visible(e)}catch(e){}},e.getButtonVisibleOn=x,e.getButtons=O,e.getEnv=e=>T[e],e.getEnvs=()=>T,e.getEvn=R,e.getField=A,e.getFileSrc=function(e){return p()+"/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:ya(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 aa(e,{recordId:"${recordId}"})).amisSchema]}},e.getFormSchema=aa,e.getImageSrc=function(e){return p()+"/api/files/images/"+e},e.getListPageInitSchema=async function(e,a,t){var i=await V(e),i=(b.first(b.keys(i.list_views)),await D(i));return{type:"page",bodyClassName:"p-0",regions:["body"],body:[{type:"steedos-object-listview",objectApiName:e,columnsTogglable:!1,showHeader:!0,headerSchema:i}]}},e.getListSchema=q,e.getListViewButtons=Pe,e.getListViewColumns=Qe,e.getListViewItemButtons=I,e.getListViewSort=ea,e.getListviewInitSchema=async function(e,t,a){a=a||{};var i,r=await V(e),n=b.find(r.list_views,(e,a)=>a===t);let l={};return n&&(a=Qe(n,a.formFactor),i=ea(n),r=await D(r,0,{onlySecordLine:!0,isListviewInit:!0}),l={type:"steedos-object-table",objectApiName:e,columns:a,extraColumns:n.extra_columns,filters:n.filters,sort:i,headerSchema:r}),{type:"page",bodyClassName:"p-0",regions:["body"],body:[l],data:{listName:t}}},e.getNotifications=async()=>{var e=t(),e=`
|
|
549
|
+
{
|
|
550
|
+
notifications(filters: ["owner","=","${e.userId}"], sort: "created desc,name", top : 10){
|
|
551
|
+
_id,name,body,related_to,related_name,url,owner,is_read,from,created
|
|
552
|
+
},
|
|
553
|
+
unReadCount: notifications__count(filters: [["owner","=","${e.userId}"], ["is_read", "!=", true]])
|
|
554
|
+
}
|
|
555
|
+
`;return(await l("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getObjectDetailButtons=ze,e.getObjectDetailMoreButtons=Le,e.getObjectFieldsFilterBarSchema=Ve,e.getObjectFieldsFilterButtonSchema=Ie,e.getObjectFieldsFilterFormSchema=De,e.getObjectListHeader=D,e.getObjectRecordDetailHeader=Je,e.getObjectRecordDetailRelatedListHeader=He,e.getObjectRelated=async function({masterObjectName:e,objectName:a,relatedFieldName:t,recordId:i,formFactor:r}){let n=null;var l=await A(a,t),l=(n=l._reference_to||l.reference_to&&!b.isString(l.reference_to)?[[t+"/o","=",e],[t+"/ids","=",i]]:[""+t,"=",i],await V(e));return{masterObjectName:e,object_name:a,foreign_key:t,schema:await q(0,a,"all",{globalFilter:n,formFactor:r}),record:await Ke(e,i,[l.NAME_FIELD_KEY]),masterObjectUISchema:l}},e.getObjectRelatedList=async function(a,i,t,r){var e=await V(i),n=[],l=[].concat(e.related_lists||[]);if(b.isEmpty(l))for(const u of[].concat(e.details||[])){var o=u.split("."),s=await V(o[0]);if(s){let e=null;var d=await A(o[0],o[1]);e=d._reference_to||d.reference_to&&!b.isString(d.reference_to)?[[o[1]+"/o","=",i],[o[1]+"/ids","=",t]]:[""+o[1],"=",t],n.push({masterObjectName:i,object_name:o[0],foreign_key:o[1],schema:await q(0,o[0],"all",{globalFilter:e,formFactor:r,buttons:await I(s,{isMobile:!1})})})}}else for(const m of l){var c=m.related_field_fullname.split(".");let e=null;var p=await A(c[0],c[1]);if(p){e=p._reference_to||p.reference_to&&!b.isString(p.reference_to)?[[c[1]+"/o","=",i],[c[1]+"/ids","=",t]]:[""+c[1],"=",t];const f=await V(c[0]);if(f){let t=[];b.forEach(m.field_names,a=>{var e=b.find(f.fields,e=>e.name===a);e&&t.push(e)}),n.push({masterObjectName:i,object_name:c[0],foreign_key:c[1],schema:{uiSchema:f,amisSchema:await F(f,t,{tabId:i,appId:a,objectName:c[0],formFactor:r,globalFilter:e,buttons:await I(f,{isMobile:!1})})}})}}}return n},e.getObjectRelatedListButtons=Re,e.getObjectRelatedListHeader=async function(e,a,t){},e.getPage=Be,e.getRecord=Ke,e.getRecordDetailHeaderSchema=async function(e,a){return{uiSchema:e=await V(e),amisSchema:await Je(e,a)}},e.getRecordDetailRelatedListSchema=async function(a,e,t){var i=await V(t),{list_views:r,fields:n}=i;return{uiSchema:i,amisSchema:(await q(0,t,b.keys(r)[0],{globalFilter:[b.findKey(n,function(e){return-1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===a}),"=",e],defaults:{listSchema:{headerToolbar:[],columnsTogglable:!1},headerSchema:await He(i)},showHeader:!0})).amisSchema}},e.getRecordPageInitSchema=async function(e){var a=await ta(null,e,"${recordId}",null),t=[{type:"steedos-record-detail-header",label:"标题面板",objectApiName:"${objectName}",recordId:"${recordId}"}],i={type:"tabs",tabs:[{title:"详情",body:[{type:"steedos-object-form",label:"对象表单",mode:"read",objectApiName:"${objectName}",recordId:"${recordId}",labelAlign:"left"}]}],className:"bg-white mb-4",linksClassName:"pl-4 pt-2"};return(a=b.map(a,e=>e.schema.amisSchema)).length&&i.tabs.push({title:"相关",body:a}),t.push(i),{type:"page",id:`page_${e}_record_detail`,bodyClassName:"",regions:["body"],body:t}},e.getRecordPermissions=async(e,a)=>{return await l(`/service/api/@${e}/recordPermissions/`+a,{method:"GET"})},e.getRelatedsCount=async(a,e)=>{const t=[];b.each(e,e=>{t.push(`${e.object_name}: ${e.object_name}__count(filters: [["${e.foreign_key}","=","${a}"]])`)});e=`
|
|
516
556
|
{
|
|
517
557
|
${t.join(",")}
|
|
518
558
|
}
|
|
519
|
-
`;return(await l("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getRootUrl=
|
|
559
|
+
`;return(await l("/graphql",{method:"POST",body:JSON.stringify({query:e})})).data},e.getRootUrl=p,e.getSearchableFieldsFilterSchema=async function(e,a,t){return De(e,a,t)},e.getSelectUserSchema=$e,e.getSpaceUsersPickerAmisSchema=ia,e.getSpaceUsersPickerSchema=async function(e,a){var t=await V("space_users");return{uiSchema:t,amisSchema:await ia(0,e,a)}},e.getSteedosAuth=t,e.getTableSchema=async function(e,a,t,i={}){const r=await V(a);let n=i.sort,l=(n||(o=i.sortField,s=i.sortOrder,o&&(n=o+" "+s||"asc")),[]);b.each(t,function(e){b.isString(e)&&r.fields[e]?l.push(r.fields[e]):b.isObject(e)&&r.fields[e.field]&&l.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}))});var o=i.extraColumns,s=(o&&b.each(o,function(e){b.isString(e)?l.push({extra:!0,name:e}):b.isObject(e)&&l.push({extra:!0,name:e.field})}),await F(r,l,{tabId:a,appId:e,objectName:a,...i,filter:i.filters,sort:n,buttons:await I(r,i)}));return{uiSchema:r,amisSchema:s}},e.getTenantId=s,e.getUISchema=V,e.getViewSchema=async function(e,a,t){return{uiSchema:e=await V(e),amisSchema:await async function(e,a,t){var{formFactor:i,layout:i="SMALL"===i?"normal":"horizontal",labelAlign:r,formInitProps:n}=t,l=c.default.values(e.fields);return{type:"service",name:"page_readonly_"+a,id:"detail_"+a,data:{global:pe("read"),context:{rootUrl:p(),tenantId:s(),authToken:d()}},api:await ee(e,a,l,n),body:[{type:"form",mode:i,labelAlign:r,persistData:!1,promptPageLeave:!1,name:"form_readonly_"+a,debug:!1,title:"",data:{formData:"$$"},wrapWithPanel:!1,body:await oe(b.map(l,e=>{e.readonly=!0}),e,Object.assign({},t,{showSystemFields:!0})),className:"steedos-amis-form bg-white pt-2 px-2",actions:[]}],onEvent:{fetchInited:{weight:0,actions:[{componentId:`page_${e.name}_record_detail`,actionType:"setValue",args:{value:{record:"${event.data}",uiSchema:e}}}]}}}}(e,a,t)}},e.isExpression=Ae,e.isObject=_a,e.lookupToAmis=Se,e.lookupToAmisPicker=Fe,e.lookupToAmisSelect=n,e.lookupToAmisSelectUser=je,e.markReadAll=async()=>l("/api/v4/notifications/all/markReadAll",{method:"POST"}),e.parseSingleExpression=qe,e.registerRemoteAssets=async a=>{if(a&&0<a.length){let e=a;b.isString(e)&&(e=e.split(",")),await Builder.registerRemoteAssets(e);a=b.filter(Builder.registry["meta-components"],function(e){return e.componentName&&e.amis?.render});return b.map(a,e=>({componentType:e.componentType,componentName:e.componentName,...e.amis.render}))}return[]},e.registerRenders=U,e.setEnv=(e,a)=>{T[e]=a},e.setEnvs=e=>{b.map(e,(e,a)=>{T[a]=e})},e.setRootUrl=function(e){b.endsWith(e,"/")&&(e=e.substring(0,e.length-1)),localStorage.setItem("steedos:rootUrl",e)},e.setSteedosAuth=e=>{Object.assign(M,e)},e.setUISchemaFunction=function(e){We=e},e.setVariable=function(e,a,t,i){if(a in(e=e||{}))e[a]=t;else{for(var r=!1!==i?ba(a):[a],i=r.pop();r.length;){var n=r.shift();e=P.default(e[n])?e[n]=E({},e[n]):(Array.isArray(e[n])?e[n]=e[n].concat():(e[n],e[n]={}),e[n])}e[i]=t}},e.standardButtonsTodo=a,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
520
560
|
//# sourceMappingURL=index.umd.js.map
|