@steedos-widgets/amis-object 0.0.6 → 0.0.8
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/amis/AmisObjectForm.d.ts +0 -1
- package/dist/amis/AmisObjectTable.d.ts +13 -0
- package/dist/amis/AmisRecordDetailRelatedList.d.ts +49 -55
- package/dist/amis/index.d.ts +1 -0
- package/dist/amis-object.cjs.js +349 -20142
- package/dist/amis-object.cjs.js.map +1 -1
- package/dist/amis-object.esm.js +324 -20143
- package/dist/amis-object.esm.js.map +1 -1
- package/dist/amis-object.umd.js +236 -52
- package/dist/assets-dev.json +13 -5
- package/dist/assets.json +13 -5
- package/dist/components/buttons/button.d.ts +2 -0
- package/dist/components/buttons/dropdown-button.d.ts +2 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/meta.js +433 -90
- package/dist/metas/AmisObjectButton.d.ts +2 -0
- package/dist/metas/AmisObjectTable.d.ts +2 -0
- package/dist/metas/SteedosDropdownButton.d.ts +2 -0
- package/package.json +1 -1
package/dist/amis-object.umd.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('lodash')) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['exports', 'react', 'lodash'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.BuilderAmisObject = {}, global.React, global._));
|
|
5
|
-
})(this, (function (exports, React, _$1) {
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('lodash'), require('antd')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['exports', 'react', 'lodash', 'antd'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.BuilderAmisObject = {}, global.React, global._, global.antd));
|
|
5
|
+
})(this, (function (exports, React, _$1, antd) {
|
|
6
6
|
const global = window; const process = {env: {NODE_ENV: "production"}};
|
|
7
7
|
|
|
8
8
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
29
|
-
var _$1__namespace = /*#__PURE__*/_interopNamespace(_$1);
|
|
30
29
|
var _$1__default = /*#__PURE__*/_interopDefaultLegacy(_$1);
|
|
30
|
+
var _$1__namespace = /*#__PURE__*/_interopNamespace(_$1);
|
|
31
31
|
|
|
32
32
|
/******************************************************************************
|
|
33
33
|
Copyright (c) Microsoft Corporation.
|
|
@@ -155,7 +155,7 @@
|
|
|
155
155
|
/** Used to infer the `Object` constructor. */
|
|
156
156
|
funcToString.call(Object);
|
|
157
157
|
|
|
158
|
-
const STEEDOS_AUTH={},getBuilderContext=()=>Builder.settings.context||Builder.settings;async function fetchAPI(e,t={credentials:"include"}){
|
|
158
|
+
const STEEDOS_AUTH={},getBuilderContext=()=>Builder.settings.context||Builder.settings;async function fetchAPI(e,t={credentials:"include"}){var a={"Content-Type":"application/json"},i=getAuthorization(),i=(i&&(a.Authorization=i),t.headers=Object.assign({},a,t.headers),t.credentials="include",await fetch(""+getRootUrl()+e,t));if(401===i.status)throw new Error(401);a=await i.json();if(a.errors)throw console.error(a.errors),new Error("Failed to fetch API");return a}function getTenantId(){try{let e=getBuilderContext().tenantId;var t;return (window.location.search&&!e&&(t=new URLSearchParams(window.location.search),e=t.get("X-Space-Id")),e)?e:null}catch(e){console.error(e);}}function getAuthToken(){try{var e=getBuilderContext().authToken;return e?e:null}catch(e){console.error(e);}}function getAuthorization(){try{var e=getBuilderContext(),t=e.tenantId,a=e.authToken;return t&&a?`Bearer ${t},`+a:null}catch(e){console.error(e);}}function absoluteUrl(e){return ""+getRootUrl()+e}function getRootUrl(e){var t=getBuilderContext();return t.rootUrl||("undefined"!=typeof window?window.localStorage.getItem("steedos:rootUrl"):"")||e}const getSteedosAuth=()=>_$1.cloneDeep(STEEDOS_AUTH);async function getFieldsTemplate(e,t){0!=t&&(t=!0);let a=["_id"],i=[];for(const l of _$1__namespace.isArray(e)?e:_$1__namespace.values(e))l.name.indexOf(".")<0&&(!t||"lookup"!=l.type&&"master_detail"!=l.type?a.push(l.alias?l.alias+":"+l.name:l.name):(a.push(""+l.name),i.push(""+l.name)),_$1.includes(["time","date","datetime","boolean","number","currency"],l.type)&&a.push(""+l.name),_$1.includes(["time","date","datetime","boolean","number","currency","select","file","image","avatar","formula","summary"],l.type)&&i.push(""+l.name));return i=_$1__namespace.uniq(i),a=_$1__namespace.uniq(a),0<i.length?`${a.join(",")},_display:_ui{${i.join(",")}}`:""+a.join(" ")}async function getFindOneQuery$1(e,t,a,i){let r="",l=(t&&(r=`(filters:["${e.idFieldName}", "=", "${t}"])`),"data");return i&&(i.alias&&(l=i.alias),i.filters&&(r=`(filters:${i.filters})`),i.queryOptions&&(r=`(${i.queryOptions})`)),{query:`{${l}:${e.name}${r}{${await getFieldsTemplate(a)}}}`}}function getSaveQuery(e,t,a,i){return {objectName:"${objectName}",$:"$$",recordId:"${recordId}",modalName:"${modalName}"}}function getScriptForReadonlyFields(e){var t=[];return e.forEach(e=>{e.readonly&&t.push(`delete formData.${e.name};`);}),t.join("\r\n")}function getScriptForRemoveUrlPrefixForImgFields(e){let t=[],a={};return e.forEach(e=>{_$1.includes(["image","avatar"],e.type)&&(t.push(e.name),a[e.name]={name:e.name,multiple:e.multiple});}),t.length?`
|
|
159
159
|
let imgFieldsKeys = ${JSON.stringify(t)};
|
|
160
160
|
let imgFields = ${JSON.stringify(a)};
|
|
161
161
|
imgFieldsKeys.forEach((item)=>{
|
|
@@ -225,7 +225,7 @@
|
|
|
225
225
|
${getSaveDataTpl(e)}
|
|
226
226
|
api.data = {query: query.replace('{__saveData}', __saveData)};
|
|
227
227
|
return api;
|
|
228
|
-
`}async function getFindQuery(e,t,a,i){var r=i.limit||10;let l=`(top: ${r})`,n=(t&&(l=`(filters:["_id", "=", "${t}"], top: ${r})`),"data");i&&(i.alias&&(n=i.alias),i.filters&&(l=`(filters:${i.filters})`),i.queryOptions&&(l=`(${i.queryOptions})`));t=""
|
|
228
|
+
`}async function getFindQuery(e,t,a,i){var r=i.limit||10;let l=`(top: ${r})`,n=(t&&(l=`(filters:["_id", "=", "${t}"], top: ${r})`),"data");i&&(i.alias&&(n=i.alias),i.filters&&(l=`(filters:${i.filters})`),i.queryOptions&&(l=`(${i.queryOptions})`));t="",e.enable_tree&&_$1__namespace.includes(_$1__namespace.keys(e.fields),"parent")&&_$1__namespace.includes(_$1__namespace.keys(e.fields),"children")&&(t=",parent,children"),r="";return "cms_files"===e.name&&(r=",versions"),{orderBy:"${orderBy}",orderDir:"${orderDir}",pageNo:"${page}",pageSize:"${perPage}",query:`{${n}:${e.name}${l}{${await getFieldsTemplate(a,i.expand)}${t}${r}},count:${e.name}__count(filters:{__filters})}`}}function getApi$2(e){if(!e)return "${context.rootUrl}/graphql"}const Router={getAppPath({formFactor:e,appId:t}){return `/${"SMALL"===e?"mapp":"app"}/`+t},getPagePath(){},getObjectListViewPath({formFactor:e,appId:t,objectName:a,listViewName:i}){return `/${"SMALL"===e?"mapp":"app"}/${t}/${a}/grid/`+i},getObjectDetailPath({formFactor:e,appId:t,objectName:a,recordId:i,listViewName:r}){return "instances"===a?`/workflow/space/\${context.tenantId}/${r}/`+i:`/${"SMALL"===e?"mapp":"app"}/${t}/${a}/view/`+i},getObjectRelatedViewPath({formFactor:e,appId:t,masterObjectName:a,masterRecordId:i,objectName:r,foreignKey:l}){return `/${"SMALL"===e?"mapp":"app"}/${t}/${a}/${i}/${r}/grid?related_field_name=`+l}};function getNumberTpl(e){return `<div>\${_display.${e.name}}</div>`}function getTimeTpl(e){return `<div>\${_display.${e.name}}</div>`}function getDateTpl(e){return `<div>\${_display.${e.name}}</div>`}function getDateTimeTpl(e){return `<div>\${_display.${e.name}}</div>`}async function getRefObjectNameFieldName(e){return (await getUISchema(e.reference_to)).NAME_FIELD_KEY||"name"}function getSelectTpl(e){return `<div>\${_display.${e.name}}</div>`}function getNameTpl(e,t){return "cms_files"===t.objectName?`<a href="\${context.rootUrl}/api/files/files/\${versions[0]}?download=true">\${${e.name}}</a>`:`<a href="${Router.getObjectDetailPath({...t,formFactor:t.formFactor,appId:t.appId,objectName:t.objectName,recordId:`\${${t.idFieldName}}`})}">\${${e.name}}</a>`}function getRelatedFieldTpl(e,t){var i;return _.isString(e.reference_to)||!e.reference_to?e.multiple?(i=Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:"<%=item.objectName%>",recordId:"<%=item.value%>"}),`
|
|
229
229
|
<% if (data._display.${e.name} && data._display.${e.name}.length) { %><% data._display.${e.name}.forEach(function(item) { %> <a href="${i}"><%=item.label%></a> <% }); %><% } %>
|
|
230
230
|
`):`<a href="${Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:`\${_display.${e.name}.objectName}`,recordId:`\${_display.${e.name}.value}`})}">\${_display.${e.name}.label}</a>`:(i=Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:"<%=item.objectName%>",recordId:"<%=item.value%>"}),`
|
|
231
231
|
<% if (data._display.${e.name} && data._display.${e.name}.length) { %><% data._display.${e.name}.forEach(function(item) { %> <a href="${i}"><%=item.label%></a> <% }); %><% } %>
|
|
@@ -237,7 +237,28 @@
|
|
|
237
237
|
</span>
|
|
238
238
|
<% } %>`}function getPasswordTpl(e){return `<% if (data.${e.name}) { %>
|
|
239
239
|
<span>······</span>
|
|
240
|
-
<% } %>`}async function getFieldTpl(e,t){if(e.is_name||e.name===t.labelFieldName)return getNameTpl(e,t);switch(e.type){case"password":return getPasswordTpl(e);case"boolean":return getSwitchTpl(e);case"select":return getSelectTpl(e);case"date":return getDateTpl(e);case"datetime":return getDateTimeTpl(e);case"lookup":case"master_detail":return getRelatedFieldTpl(e,t)}}var config={listView:{newRecordMode:"modal",editRecordMode:"modal",perPage:20}};
|
|
240
|
+
<% } %>`}async function getFieldTpl(e,t){if(e.is_name||e.name===t.labelFieldName)return getNameTpl(e,t);switch(e.type){case"password":return getPasswordTpl(e);case"boolean":return getSwitchTpl(e);case"select":return getSelectTpl(e);case"time":return getTimeTpl(e);case"date":return getDateTpl(e);case"datetime":return getDateTimeTpl(e);case"lookup":case"master_detail":return getRelatedFieldTpl(e,t);case"number":case"currency":return getNumberTpl(e)}}var config={listView:{newRecordMode:"modal",editRecordMode:"modal",perPage:20}};const AmisFormInputs=["text","date","file","avatar","image","datetime","time","number","currency","percent","password","url","email"];function getAmisStaticFieldType(e,t,a){return t?_.includes(["text","image"],e)?"image"===e&&a&&a.multiple?"static-images":"static-"+e:"static":_.includes(AmisFormInputs,e)?"input-"+e:e}const getFileTableName=e=>{switch(e.type){case"avatar":return "avatars";case"image":return "images";case"file":return "files"}},getAmisFieldType=(e,t)=>getAmisStaticFieldType("avatar"===e.type?"image":e.type,t,{multiple:e.multiple}),getAmisFileReadonlySchema=e=>{var t=e.type,a=getAmisFieldType(e,!0);return _.includes(["avatar","image"],t)?{type:a,defaultImage:"",enlargeAble:!0,showToolbar:!0}:"file"===t?{type:a,tpl:`
|
|
241
|
+
<% let fileData = data.${e.name}; if (fileData) { %>
|
|
242
|
+
<% if(${!e.multiple}){ fileData = [fileData]} %>
|
|
243
|
+
<% fileData.forEach(function(item) { %>
|
|
244
|
+
<a href='<%= item.url %>' target='_self' class='block'><%= item.name %></a>
|
|
245
|
+
<% });} %>`}:void 0},getAmisFileEditSchema=e=>{var t=getFileTableName(e),t={type:getAmisFieldType(e,!1),useChunk:!1,receiver:{method:"post",url:"${context.rootUrl}/s3/"+t,data:{$:"$$",context:"${context}"},adaptor:`
|
|
246
|
+
const { context } = api.body;
|
|
247
|
+
var rootUrl = context.rootUrl + "/api/files/${t}/";
|
|
248
|
+
payload = {
|
|
249
|
+
status: response.status == 200 ? 0 : response.status,
|
|
250
|
+
msg: response.statusText,
|
|
251
|
+
data: {
|
|
252
|
+
value: payload._id,
|
|
253
|
+
name: payload.original.name,
|
|
254
|
+
url: rootUrl + payload._id,
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
return payload;
|
|
258
|
+
`,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};return e.multiple&&(t.multiple=!0,t.joinValues=!1,t.extractValue=!0),t},getAmisFileSchema=(e,t)=>(t?getAmisFileReadonlySchema:getAmisFileEditSchema)(e);async function getTableColumns(e,t){var a=[{name:"_index",type:"text",width:32,placeholder:""}];for(const r of e)if(!r.is_name&&r.name!==t.labelFieldName||"cms_files"!==t.objectName)if("toggle"===r.type)a.push({type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:!0,className:"whitespace-nowrap"});else if("avatar"===r.type||"image"===r.type||"file"===r.type)a.push({type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:!0,className:"whitespace-nowrap",...getAmisFileReadonlySchema(r)});else {var i=await getFieldTpl(r,t);let e="text";i?e="tpl":"html"===r.type&&(e="markdown"),r.hidden||r.extra||a.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:e,tpl:i,toggled:r.toggled,className:"textarea"===r.type?"w-56 whitespace-pre-wrap textarea":"whitespace-nowrap",html:"html"===r.type||null});}else a.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 a}function getDefaultParams$1(e){return {perPage:e.top||config.listView.perPage}}function getButtonVisibleOn(e){let t=e.visible;if(e._visible&&(t=e._visible),t=_$1.isBoolean(t)?t.toString():t)return 0<t.indexOf("Meteor.")||0<t.indexOf("Creator.")||0<t.indexOf("Session.")?(console.warn("无效的visible",t),"false"):t.startsWith("function")?t+"(objectName, _id, recordPermissions, data)":t;if("amis_button"===e.type){e=e.amis_schema;if(e&&e.body&&0<e.body.length)return e.body[0].visibleOn}}async function getTableOperation(e){e=e.buttons;const t=[];if(_$1.each(e,e=>{_$1.isBoolean(e.visible)&&(e.visible=e.visible.toString()),t.push({type:"steedos-object-button",name:e.name,objectName:e.objectName,visibleOn:getButtonVisibleOn(e),className:"border-none antd-Button--link text-left w-full"});}),!(t.length<1))return {type:"operation",label:"操作",fixed:"right",labelClassName:"text-center",className:"text-center",buttons:[{type:"steedos-dropdown-button",label:"",buttons:t,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:`
|
|
259
|
+
payload.recordPermissions = payload;
|
|
260
|
+
return payload;
|
|
261
|
+
`}}]}}async function getTableSchema$1(e,t){e=await getTableColumns(e,t=t||{});return e.push(await getTableOperation(t)),{mode:"table",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:getDefaultParams$1(t),columns:e,syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:`\${${t.labelFieldName}}`,autoFillHeight:!1}}async function getTableApi(e,t,a){const i=[];let{globalFilter:r,filter:l,sort:n,top:o}=a;l=(l=_$1__namespace.isArray(l)?_$1__namespace.map(l,function(e){return e.operation?[e.field,e.operation,e.value]:e}):l)||[],_$1__namespace.each(t,function(e){e.searchable&&i.push(e.name);});const s={},d=[];t.forEach(e=>{_$1__namespace.includes(["image","avatar","file"],e.type)&&(d.push(e.name),s[e.name]={name:e.name,type:e.type,multiple:e.multiple});});a=e.key_field||"_id",t=await getApi$1(e,null,t,{alias:"rows",limit:o,queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});return t.data.$term="$term",t.data.$self="$$",t.data.filter="$filter",t.requestAdaptor=`
|
|
241
262
|
const selfData = JSON.parse(JSON.stringify(api.data.$self));
|
|
242
263
|
${r?`var filters = ${JSON.stringify(r)};`:"var filters = [];"}
|
|
243
264
|
if(_.isEmpty(filters)){
|
|
@@ -307,14 +328,30 @@
|
|
|
307
328
|
}
|
|
308
329
|
api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());
|
|
309
330
|
return api;
|
|
310
|
-
`,
|
|
331
|
+
`,t.adaptor=`
|
|
311
332
|
const enable_tree = ${e.enable_tree};
|
|
312
333
|
if(!enable_tree){
|
|
313
334
|
_.each(payload.data.rows, function(item, index){
|
|
314
335
|
item._index = index + 1;
|
|
315
336
|
})
|
|
316
337
|
}
|
|
317
|
-
window.postMessage(Object.assign({type: "listview.loaded"}), "*")
|
|
338
|
+
window.postMessage(Object.assign({type: "listview.loaded"}), "*");
|
|
339
|
+
let fileFields = ${JSON.stringify(s)};
|
|
340
|
+
_.each(payload.data.rows, function(item, index){
|
|
341
|
+
_.each(fileFields , (field, key)=>{
|
|
342
|
+
if(item[key] && item._display && item._display [key]){
|
|
343
|
+
let value = item._display[key];
|
|
344
|
+
if(!_.isArray(value)){
|
|
345
|
+
value = [value]
|
|
346
|
+
};
|
|
347
|
+
if(field.type === 'file'){
|
|
348
|
+
item[key] = value
|
|
349
|
+
}else{
|
|
350
|
+
item[key] = _.map(value, 'url')
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
})
|
|
354
|
+
})
|
|
318
355
|
|
|
319
356
|
if(enable_tree){
|
|
320
357
|
const records = payload.data.rows;
|
|
@@ -342,7 +379,7 @@
|
|
|
342
379
|
payload.data.rows = treeRecords;
|
|
343
380
|
}
|
|
344
381
|
return payload;
|
|
345
|
-
`,
|
|
382
|
+
`,t}async function getApi$1(e,t,a,i){e=await getFindQuery(e,t,a,i);return {method:"post",url:getApi$2(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getListBody(e,t){var a=[];for(const r of e){var i=await getFieldTpl(r,t);let e=i?"tpl":"text";r.hidden||r.extra||a.push({name:r.name,label:r.label,sortable:r.sortable,width:r.width,type:e,tpl:i,toggled:r.toggled});}return {type:"hbox",columns:a}}function getDefaultParams(e){return {perPage:e.top||10}}async function getListSchema$1(e,t){e=(await getListBody(e,t)).columns;return {mode:"list",name:"thelist",draggable:!1,headerToolbar:["reload"],defaultParams:getDefaultParams(t),syncLocation:!1,keepItemSelectionOnPageChange:!0,checkOnItemClick:!1,labelTpl:"${name}",listItem:{body:[...e],actions:!1===t.actions?null:[{icon:"fa fa-eye",label:"查看",type:"button",actionType:"link",link:Router.getObjectDetailPath({formFactor:t.formFactor,appId:t.appId,objectName:t.tabId,listView:t.listView,recordId:"${_id}"})}]}}}async function getCardSchema(e,t){let a=null;var i=_.find(e,e=>e.name===t.labelFieldName),i=(i&&(a=await getFieldTpl(i,t)),await getListBody(_.filter(e,e=>e.name!=t.labelFieldName),t)),e=i.columns;return {mode:"cards",name:"cards",draggable:!1,headerToolbar:["statistics","pagination"],defaultParams:getDefaultParams(t),syncLocation:!1,keepItemSelectionOnPageChange:!1,checkOnItemClick:!1,labelTpl:`\${${t.labelFieldName}}`,card:{type:"card",header:{title:a},body:[...e]}}}async function getSource(e){var t=await getFindQuery({name:"organizations"},null,[{name:"_id",alias:"value"},{name:"name",alias:"label"},{name:"children"}],{alias:"leftOptions",filters:"{__filters}"}),a=(t.query=t.query.replace(/,count\:.+/,"}"),await getFindQuery({name:"organizations"},null,[{name:"_id",alias:"ref"}],{alias:"children",filters:"{__filters}"})),a=(a.query=a.query.replace(/,count\:.+/,"}"),t.query=t.query.replace(/}$/,","+a.query.replace(/{(.+)}/,"$1}")),await getFindQuery({name:"space_users"},null,[{name:"user"},{name:"name"}],{alias:"defaultValueOptions",filters:"{__options_filters}"})),a=(a.query=a.query.replace(/,count\:.+/,"}"),t.query=t.query.replace(/}$/,","+a.query.replace(/{(.+)}/,"$1}")),t.$value="$"+e.name,`
|
|
346
383
|
var filters = [['parent', '=', null]];
|
|
347
384
|
api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters));
|
|
348
385
|
var defaultValue = api.data.$value;
|
|
@@ -353,7 +390,7 @@
|
|
|
353
390
|
}
|
|
354
391
|
api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));
|
|
355
392
|
return api;
|
|
356
|
-
|
|
393
|
+
`);return {method:"post",url:getApi$2()+"?_id=${_id}",requestAdaptor:a,adaptor:`
|
|
357
394
|
const data = payload.data;
|
|
358
395
|
data.children = data.children.map(function (child) {
|
|
359
396
|
// child.defer = !!(child.children && child.children.length);
|
|
@@ -371,7 +408,7 @@
|
|
|
371
408
|
delete data.defaultValueOptions;
|
|
372
409
|
payload.data = { options: [data] };
|
|
373
410
|
return payload;
|
|
374
|
-
`,data:t,sendOn:"!!this._id || !!!this."+e.name,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getDeferApi(e){
|
|
411
|
+
`,data:t,sendOn:"!!this._id || !!!this."+e.name,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getDeferApi(e){var t=await getFindQuery({name:"{__object_name}"},null,[],{alias:"options",filters:"{__filters}"});let a=e.filters;"function"==typeof(a="string"==typeof a?(a=new Function("return "+a))():a)&&(a=a(e)),t.query=t.query.replace(/,count\:.+/,"}"),t.query=t.query.replace("{_id}","{{__fields}}");e=`
|
|
375
412
|
var dep = api.query.dep;
|
|
376
413
|
var ref = api.query.ref;
|
|
377
414
|
var term = api.query.term;
|
|
@@ -408,7 +445,7 @@
|
|
|
408
445
|
payload.data = data;
|
|
409
446
|
}
|
|
410
447
|
return payload;
|
|
411
|
-
`,data:t,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getSearchApi(e){
|
|
448
|
+
`,data:t,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getSearchApi(e){var t=await getFindQuery({name:"space_users"},null,[{name:"user"},{name:"name"},{name:"user",alias:"value"},{name:"name",alias:"label"}],{alias:"options",filters:"{__filters}"}),e=(t.query=t.query.replace(/,count\:.+/,"}"),e.filters),e=`
|
|
412
449
|
var term = api.query.term;
|
|
413
450
|
var filters;
|
|
414
451
|
if (term) {
|
|
@@ -428,7 +465,7 @@
|
|
|
428
465
|
}
|
|
429
466
|
api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters));
|
|
430
467
|
return api;
|
|
431
|
-
`;return {method:"post",url:getApi$2()+"?term=${term}",requestAdaptor:e,data:t,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getSelectUserSchema(e,t,a){if(!e)return {};a=a||{};
|
|
468
|
+
`;return {method:"post",url:getApi$2()+"?term=${term}",requestAdaptor:e,data:t,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function getSelectUserSchema(e,t,a){if(!e)return {};a=a||{};var i={type:getAmisStaticFieldType("select",t)};return t?i.tpl=await getLookupTpl(e,a):(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 getSource(e),deferApi:await getDeferApi(e),searchApi:await getSearchApi(e)}),!_.has(e,"defaultValue")||_.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(i.value=e.defaultValue),"boolean"!=typeof i.searchable&&(i.searchable=!0),(t=e.onEvent)&&(i.onEvent=t)),i}const getReferenceTo=async a=>{let i=a.reference_to;if(i){"users"===i&&(i="space_users",a.reference_to_field="user");var r=await getUISchema(i);let e=null,t=a.reference_to_field;return t=t||r.idFieldName||"_id",e="_id"===t?{name:"_id",label:"ID",type:"text",toggled:!1}:r.fields[t]||{name:t},{objectName:i,valueField:e,labelField:r.fields[r.NAME_FIELD_KEY||"name"]}}};async function lookupToAmisPicker(i,r,l){var n=await getReferenceTo(i);if(n){const s=await getUISchema(n.objectName),d=[];let e=0;const c=[],p=[];var o=_$1__namespace.find(s.list_views,(e,t)=>"all"===t);o&&o.columns?_$1__namespace.each(o.columns,function(e){_$1__namespace.isString(e)&&s.fields[e]?p.push(s.fields[e]):_$1__namespace.isObject(e)&&s.fields[e.field]&&p.push(Object.assign({},s.fields[e.field],{width:e.width,wrap:e.wrap}));}):_$1__namespace.each(s.fields,(e,t)=>{"_id"==t||e.hidden||(_$1__namespace.has(e,"name")||(e.name=t),p.push(e));}),_$1__namespace.each(_$1__namespace.sortBy(p,"sort_no"),function(t){e<5&&(_$1__namespace.find(d,function(e){return e.name===t.name})||(e++,d.push(t),t.searchable&&c.push(t.name)));});const u={[n.labelField.name]:n.labelField,[n.valueField.name]:n.valueField};_$1__namespace.each(d,e=>{e.hidden||(u[e.name]=e);});o=await getApi(s,null,u,{expand:!0,alias:"rows",queryOptions:'filters: {__filters}, top: {__top}, skip: {__skip}, sort: "{__sort}"'});o.data.$term="$term",o.data.$self="$$",o.requestAdaptor=`
|
|
432
469
|
const selfData = JSON.parse(JSON.stringify(api.data.$self));
|
|
433
470
|
var filters = [];
|
|
434
471
|
var pageSize = api.data.pageSize || 10;
|
|
@@ -437,7 +474,7 @@
|
|
|
437
474
|
var orderBy = api.data.orderBy || '';
|
|
438
475
|
var orderDir = api.data.orderDir || '';
|
|
439
476
|
var sort = orderBy + ' ' + orderDir;
|
|
440
|
-
var allowSearchFields = ${JSON.stringify(
|
|
477
|
+
var allowSearchFields = ${JSON.stringify(c)};
|
|
441
478
|
if(api.data.$term){
|
|
442
479
|
filters = [["name", "contains", "'+ api.data.$term +'"]];
|
|
443
480
|
}else if(selfData.op === 'loadOptions' && selfData.value){
|
|
@@ -457,9 +494,9 @@
|
|
|
457
494
|
}
|
|
458
495
|
|
|
459
496
|
const filtersFunction = ${i._filtersFunction};
|
|
460
|
-
|
|
497
|
+
|
|
461
498
|
if(filtersFunction){
|
|
462
|
-
const _filters = filtersFunction();
|
|
499
|
+
const _filters = filtersFunction(filters, api.data.$self.__super.__super);
|
|
463
500
|
if(_filters && _filters.length > 0){
|
|
464
501
|
filters.push(_filters);
|
|
465
502
|
}
|
|
@@ -467,7 +504,35 @@
|
|
|
467
504
|
|
|
468
505
|
api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());
|
|
469
506
|
return api;
|
|
470
|
-
|
|
507
|
+
`,o.adaptor=`
|
|
508
|
+
const enable_tree = ${s.enable_tree};
|
|
509
|
+
if(enable_tree){
|
|
510
|
+
const records = payload.data.rows;
|
|
511
|
+
const treeRecords = [];
|
|
512
|
+
const getChildren = (records, childrenIds)=>{
|
|
513
|
+
if(!childrenIds){
|
|
514
|
+
return;
|
|
515
|
+
}
|
|
516
|
+
const children = _.filter(records, (record)=>{
|
|
517
|
+
return _.includes(childrenIds, record._id)
|
|
518
|
+
});
|
|
519
|
+
_.each(children, (item)=>{
|
|
520
|
+
if(item.children){
|
|
521
|
+
item.children = getChildren(records, item.children)
|
|
522
|
+
}
|
|
523
|
+
})
|
|
524
|
+
return children;
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
_.each(records, (record)=>{
|
|
528
|
+
if(!record.parent){
|
|
529
|
+
treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));
|
|
530
|
+
}
|
|
531
|
+
});
|
|
532
|
+
payload.data.rows = treeRecords;
|
|
533
|
+
}
|
|
534
|
+
return payload;
|
|
535
|
+
`;let t=20,a=(s.paging&&!1===s.paging.enabled&&(t=1e3),null);a="SMALL"===l.formFactor?await getListSchema$1(d,{top:t,...l,actions:!1}):await getTableSchema$1(d,{labelFieldName:s.NAME_FIELD_KEY,top:t,...l});n={type:getAmisStaticFieldType("picker",r),labelField:n.labelField.name,valueField:n.valueField.name,modalMode:"dialog",source:o,size:"lg",pickerSchema:a,joinValues:!1,extractValue:!0};return i.multiple&&(n.multiple=!0,n.extractValue=!0),r&&(n.tpl=await getLookupTpl(i,l)),n}}async function lookupToAmisSelect(e,t,a){var i=await getReferenceTo(e);let r;(r=i?await getApi({name:i.objectName},null,{[i.labelField.name]:Object.assign({},i.labelField,{alias:"label"}),[i.valueField.name]:Object.assign({},i.valueField,{alias:"value"})},{expand:!1,alias:"options",queryOptions:"filters: {__filters}, top: {__top}"}):{method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"}}).data.$term="$term",r.data.$value=`$${e.name}.`+(i?i.valueField.name:"_id"),_$1__namespace.each(e.depend_on,function(e){r.data[e]="$"+e;}),r.data.$="$$",r.data.rfield="${object_name}",r.requestAdaptor=`
|
|
471
536
|
var filters = '[]';
|
|
472
537
|
var top = 10;
|
|
473
538
|
if(api.data.$term){
|
|
@@ -480,39 +545,17 @@
|
|
|
480
545
|
`,i&&i.labelField.name,i&&i.valueField.name,e._optionsFunction&&(r.adaptor=`
|
|
481
546
|
payload.data.options = eval(${e._optionsFunction})(api.data);
|
|
482
547
|
return payload;
|
|
483
|
-
`);
|
|
484
|
-
var rootUrl = ${JSON.stringify(t)};
|
|
485
|
-
payload = {
|
|
486
|
-
status: response.status == 200 ? 0 : response.status,
|
|
487
|
-
msg: response.statusText,
|
|
488
|
-
data: {
|
|
489
|
-
value: payload._id,
|
|
490
|
-
filename: payload.original.name,
|
|
491
|
-
url: rootUrl + payload._id,
|
|
492
|
-
}
|
|
493
|
-
}
|
|
494
|
-
return payload;
|
|
495
|
-
`,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}},r.multiple&&(i.multiple=!0,i.joinValues=!1,i.extractValue=!0);break;case"file":t=absoluteUrl("/api/files/files/"),i={type:getAmisStaticFieldType("file",l),receiver:{method:"post",url:"${context.rootUrl}/s3/files",adaptor:`
|
|
496
|
-
var rootUrl = ${JSON.stringify(t)};
|
|
497
|
-
payload = {
|
|
498
|
-
status: response.status == 200 ? 0 : response.status,
|
|
499
|
-
msg: response.statusText,
|
|
500
|
-
data: {
|
|
501
|
-
value: payload._id,
|
|
502
|
-
name: payload.original.name,
|
|
503
|
-
url: rootUrl + payload._id,
|
|
504
|
-
}
|
|
505
|
-
}
|
|
506
|
-
return payload;
|
|
507
|
-
`,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}},r.multiple&&(i.multiple=!0,i.joinValues=!1,i.extractValue=!0);break;case"formula":case"summary":break;case"code":i={type:"editor",language:r.language,value:r.defaultValue||""};break;case"toggle":i={type:"switch"};break;case"grid":i={type:"input-table",strictMode:!1,affixHeader:!1,editable:!l,addable:!l,removable:!l,draggable:!l,columns:[]},_$1__namespace.each(r.subFields,function(e){var t=e.name.replace(r.name+".$.","").replace(r.name+".","");const a=convertSFieldToAmisField(Object.assign({},e,{name:t}),l);a&&(delete a.name,delete a.label,i.columns.push({name:t,label:e.label,quickEdit:!l&&a}));});}return _$1__namespace.isEmpty(i)?void 0:(r.is_wide?i.className="col-span-2 m-1":i.className="m-1",l&&(i.className=i.className+" slds-form-element_readonly"),i.labelClassName="text-left",l&&(i.quickEdit=!1),r.visible_on&&(i.visibleOn="$"+r.visible_on.substring(1,r.visible_on.length-1).replace(/formData./g,"")),Object.assign({},n,i,{clearValueOnHidden:!0}))}}const API_CACHE=100;function getReadonlyFormAdaptor(e){let a="";e=_$1__namespace.filter(e,function(e){return e.name.indexOf(".")<0&&("select"==e.type&&e.options||("lookup"==e.type||"master_detail"==e.type)&&!e.reference_to)});return _$1__namespace.each(e,function(e){var t;_$1__namespace.includes(OMIT_FIELDS,e.name)||(e.name,e.options?(t=JSON.stringify({options:e.options}),a+=`var ${e.name}Options= (${t}).options;`):e.optionsFunction&&(a+=`var ${e.name}Options = eval(${e.optionsFunction.toString()})(api.data);`),e.multiple?a+=`data.${e.name}__label = _.map(_.filter(${e.name}Options, function(option){return _.includes(data.${e.name}, option.value)}), 'label');`:a=(a+=`var ${e.name}Selected = _.find(${e.name}Options, function(option){return data.${e.name} == option.value});`)+`data.${e.name}__label = ${e.name}Selected ? ${e.name}Selected.label:null;`);}),`
|
|
548
|
+
`);i={type:getAmisStaticFieldType("select",t),joinValues:!1,extractValue:!0,autoComplete:r};return !_$1__namespace.has(e,"defaultValue")||_$1__namespace.isString(e.defaultValue)&&e.defaultValue.startsWith("{")||(i.value=e.defaultValue),e.multiple&&(i.multiple=!0,i.extractValue=!0),t&&(i.tpl=await getLookupTpl(e,a)),i}async function getApi(e,t,a,i){e=await getFindQuery(e,t,a,i);return {method:"post",url:getApi$2(),data:e,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}async function lookupToAmis(e,t,a){var i,r;return t?{type:getAmisStaticFieldType("picker",t),tpl:getRelatedFieldTpl(e,a)}:_$1__namespace.isString(e.reference_to)||t?((i=await getReferenceTo(e))?(r=await getUISchema(i.objectName),"space_users"===i.objectName?lookupToAmisSelectUser:1==r.enable_enhanced_lookup?lookupToAmisPicker:lookupToAmisSelect):lookupToAmisSelect)(e,t,a):{type:"steedos-field-lookup",field:e,readonly:t,ctx:{},onEvent:{change:{weight:0,actions:[{actionType:"custom",script:"console.log('======', event)"}]}}}}async function lookupToAmisSelectUser(e,t,a){return getSelectUserSchema(e,t,a)}const OMIT_FIELDS=["created","created_by","modified","modified_by"];function getObjectFieldSubFields(t,e){var a=Object.assign({subFields:[]},t),e=_$1__namespace.filter(e,function(e){return e.name.startsWith(t.name+".")});return a.subFields=e,a}function getGridFieldSubFields(t,e){var a=Object.assign({subFields:[]},t),e=_$1__namespace.filter(e,function(e){return e.name.startsWith(t.name+".")});return a.subFields=e,a}function getSelectFieldOptions(e){const t=e.data_type||"text",a=[];return _$1__namespace.each(e.options,e=>{switch(t){case"number":a.push({label:e.label,value:Number(e.value)});break;case"text":a.push({label:e.label,value:String(e.value)});break;case"boolean":a.push({label:e.label,value:"false"!==e.value});}}),a}async function convertSFieldToAmisField(r,l,e){if(!_$1__namespace.includes(OMIT_FIELDS,r.name)||1==e.showSystemFields){var t,a={name:e.fieldNamePrefix?""+e.fieldNamePrefix+r.name:r.name,label:r.label,labelRemark:r.inlineHelpText,required:(_$1__namespace.has(e,"required")?e:r).required};let i={};switch(r.type){case"text":i.type=getAmisStaticFieldType("text",l);break;case"textarea":i.type=getAmisStaticFieldType("textarea",l),i.tpl=`<b><%=data.${r.name}%></b>`;break;case"html":i={type:"editor",language:"html",value:r.defaultValue||""};break;case"select":i={type:getAmisStaticFieldType("select",l),joinValues:!1,options:getSelectFieldOptions(r),extractValue:!0,clearable:!0,labelField:"label",valueField:"value",tpl:l?getSelectTpl(r):null},!_$1__namespace.has(r,"defaultValue")||_$1__namespace.isString(r.defaultValue)&&r.defaultValue.startsWith("{")||(t=r.data_type||"text",null!=r.defaultValue&&("text"===t?i.value=String(r.defaultValue):"number"===t?i.value=Number(r.defaultValue):"boolean"===t&&(i.value="false"!==r.defaultValue))),r.multiple&&(i.multiple=!0,i.extractValue=!0);break;case"boolean":i={type:getAmisStaticFieldType("checkbox",l),option:r.inlineHelpText,tpl:l?getSwitchTpl(r):null};break;case"input-date-range":i={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:l?getDateTpl(r):null};break;case"date":i={type:getAmisStaticFieldType("date",l),inputFormat:"YYYY-MM-DD",format:"YYYY-MM-DDT00:00:00.000[Z]",tpl:l?getDateTpl(r):null};break;case"input-datetime-range":i={type:"input-datetime-range",inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSS[Z]",tpl:l?getDateTimeTpl(r):null,utc:!0};break;case"datetime":i={type:getAmisStaticFieldType("datetime",l),inputFormat:"YYYY-MM-DD HH:mm",format:"YYYY-MM-DDTHH:mm:ss.SSS[Z]",tpl:l?getDateTimeTpl(r):null,utc:!0};break;case"input-time-range":i={type:"input-time-range",inputFormat:"HH:mm",timeFormat:"1970-01-01THH:mm:00.000[Z]",format:"1970-01-01THH:mm:00.000[Z]",tpl:l?getDateTimeTpl(r):null};break;case"time":i={type:getAmisStaticFieldType("time",l),inputFormat:"HH:mm",timeFormat:"1970-01-01THH:mm:00.000[Z]",format:"1970-01-01THH:mm:00.000[Z]",tpl:l?getDateTimeTpl(r):null};break;case"currency":case"number":i=l?{type:"static-tpl",tpl:getNumberTpl(r)}:{type:getAmisStaticFieldType("number",l),min:r.min,max:r.max,precision:r.scale};break;case"input-array":i=Object.assign({},r,a);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:getAmisStaticFieldType("number",l),min:r.min,max:r.max,precision:r.scale};break;case"password":i={type:getAmisStaticFieldType("password",l),tpl:l?getPasswordTpl(r):null};break;case"lookup":case"master_detail":i=await lookupToAmis(r,l,e);break;case"autonumber":l&&(i={type:"static-text"});break;case"url":i={type:getAmisStaticFieldType("url",l)};break;case"email":i={type:getAmisStaticFieldType("email",l)};break;case"avatar":case"image":case"file":i=getAmisFileSchema(r,l);break;case"formula":case"summary":l&&(i.type=getAmisStaticFieldType(r.data_type,l));break;case"code":i={type:"editor",language:r.language,value:r.defaultValue||""};break;case"toggle":i={type:"switch",name:r.name,label:r.label,width:r.width,toggled:r.toggled,disabled:l};break;case"grid":i={type:"input-table",strictMode:!1,affixHeader:!1,editable:!l,addable:!l,removable:!l,draggable:!l,columns:[]},_$1__namespace.each(r.subFields,function(e){var t=e.name.replace(r.name+".$.","").replace(r.name+".",""),a=convertSFieldToAmisField(Object.assign({},e,{name:t}),l);a&&(delete a.name,delete a.label,i.columns.push({name:t,label:e.label,quickEdit:!l&&a}));});}return _$1__namespace.isEmpty(i)?void 0:(r.is_wide?i.className="col-span-2 m-1":i.className="m-1",l&&(i.className=i.className+" slds-form-element_readonly"),i.labelClassName="text-left",l&&(i.quickEdit=!1),r.visible_on&&(i.visibleOn="$"+r.visible_on.substring(1,r.visible_on.length-1).replace(/formData./g,"")),Object.assign({},a,i,{clearValueOnHidden:!0}))}}const API_CACHE=100;function getReadonlyFormAdaptor(e){let a="";var t=_$1__namespace.filter(e,function(e){return e.name.indexOf(".")<0&&("select"==e.type&&e.options||("lookup"==e.type||"master_detail"==e.type)&&!e.reference_to)});return _$1__namespace.each(t,function(e){var t;_$1__namespace.includes(OMIT_FIELDS,e.name)||(e.name,e.options?(t=JSON.stringify({options:e.options}),a+=`var ${e.name}Options= (${t}).options;`):e.optionsFunction&&(a+=`var ${e.name}Options = eval(${e.optionsFunction.toString()})(api.data);`),e.multiple?a+=`data.${e.name}__label = _.map(_.filter(${e.name}Options, function(option){return _.includes(data.${e.name}, option.value)}), 'label');`:a=(a+=`var ${e.name}Selected = _.find(${e.name}Options, function(option){return data.${e.name} == option.value});`)+`data.${e.name}__label = ${e.name}Selected ? ${e.name}Selected.label:null;`);}),`
|
|
508
549
|
if(payload.data.data){
|
|
509
550
|
var data = payload.data.data[0];
|
|
510
551
|
${a}
|
|
552
|
+
${getScriptForAddUrlPrefixForImgFields(e)}
|
|
553
|
+
${getScriptForRewriteValueForFileFields(e)}
|
|
511
554
|
payload.data = data;
|
|
512
555
|
window.postMessage(Object.assign({type: "record.loaded"}, {record: data}), "*")
|
|
513
556
|
}
|
|
514
557
|
return payload;
|
|
515
|
-
`}async function getReadonlyFormInitApi(e,t,a,i){return {method:"post",url:getApi$2()+"?rf="+(new Date).getTime(),cache:API_CACHE,adaptor:getReadonlyFormAdaptor(a),data:await getFindOneQuery$1(e,t,a,i),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getScriptForAddUrlPrefixForImgFields(e){let t=[],a={};var i=absoluteUrl("/api/files/
|
|
558
|
+
`}async function getReadonlyFormInitApi(e,t,a,i){return {method:"post",url:getApi$2()+"?rf="+(new Date).getTime(),cache:API_CACHE,adaptor:getReadonlyFormAdaptor(a),data:await getFindOneQuery$1(e,t,a,i),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}function getScriptForAddUrlPrefixForImgFields(e){let t=[],a={};var i=absoluteUrl("/api/files/");return e.forEach(e=>{_$1__namespace.includes(["image","avatar"],e.type)&&(t.push(e.name),a[e.name]={name:e.name,type:e.type,multiple:e.multiple});}),t.length?`
|
|
516
559
|
// image字段值添加URL前缀
|
|
517
560
|
let imgFieldsKeys = ${JSON.stringify(t)};
|
|
518
561
|
let imgFields = ${JSON.stringify(a)};
|
|
@@ -520,12 +563,19 @@ return payload;
|
|
|
520
563
|
imgFieldsKeys.forEach((item)=>{
|
|
521
564
|
let imgFieldValue = data[item];
|
|
522
565
|
if(imgFieldValue && imgFieldValue.length){
|
|
523
|
-
|
|
566
|
+
let fieldProps = imgFields[item];
|
|
567
|
+
let table_name;
|
|
568
|
+
if(fieldProps.type === 'image'){
|
|
569
|
+
table_name = 'images';
|
|
570
|
+
}else{
|
|
571
|
+
table_name = 'avatars';
|
|
572
|
+
}
|
|
573
|
+
if(fieldProps.multiple){
|
|
524
574
|
if(imgFieldValue instanceof Array){
|
|
525
|
-
data[item] = imgFieldValue.map((value)=>{ return rootUrl + value});
|
|
575
|
+
data[item] = imgFieldValue.map((value)=>{ return rootUrl + table_name + '/' + value});
|
|
526
576
|
}
|
|
527
577
|
}else{
|
|
528
|
-
data[item] = rootUrl + imgFieldValue;
|
|
578
|
+
data[item] = rootUrl + table_name + '/' + imgFieldValue;
|
|
529
579
|
}
|
|
530
580
|
}
|
|
531
581
|
})
|
|
@@ -537,7 +587,7 @@ return payload;
|
|
|
537
587
|
fileFieldsKeys.forEach((item)=>{
|
|
538
588
|
let fileFieldValue = data[item];
|
|
539
589
|
if(fileFieldValue && fileFieldValue.length){
|
|
540
|
-
const fileFieldNames = data._display[item].
|
|
590
|
+
const fileFieldNames = _.map(_.isArray(data._display[item]) ? data._display[item] : [data._display[item]], 'name');
|
|
541
591
|
if(fileFields[item].multiple){
|
|
542
592
|
if(fileFieldValue instanceof Array){
|
|
543
593
|
data[item] = fileFieldValue.map((value, index)=>{
|
|
@@ -586,7 +636,7 @@ return payload;
|
|
|
586
636
|
})
|
|
587
637
|
api.data = {query: \`mutation{\${deleteArray.join(',')}}\`};
|
|
588
638
|
return api;
|
|
589
|
-
`,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const getFieldSchemaArray=e=>{let i=[];return i.length=0,_$1__namespace.forEach(e.fields,(e,t)=>{_$1__namespace.has(e,"name")||(e.name=t);}),_$1__namespace.forEach(_$1__namespace.sortBy(e.fields,"sort_no"),e=>{e.group&&"null"!=e.group&&"-"!=e.group||(e.group="通用");var t=e.name,a=/\w+\.\w+/.test(t);"grid"!=e.type&&"object"!=e.type||(e.is_wide=!0),a||e.hidden||i.push(Object.assign({name:t},e,{permission:{allowEdit:!0}}));}),i},getSection=async(t,e,a,i)=>{
|
|
639
|
+
`,data:{ids:"${ids}"},headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}}const getFieldSchemaArray=e=>{let i=[];return i.length=0,_$1__namespace.forEach(e.fields,(e,t)=>{_$1__namespace.has(e,"name")||(e.name=t);}),_$1__namespace.forEach(_$1__namespace.sortBy(e.fields,"sort_no"),e=>{e.group&&"null"!=e.group&&"-"!=e.group||(e.group="通用");var t=e.name,a=/\w+\.\w+/.test(t);"grid"!=e.type&&"object"!=e.type||(e.is_wide=!0),a||e.hidden||i.push(Object.assign({name:t},e,{permission:{allowEdit:!0}}));}),i},getSection=async(t,e,a,i)=>{e=_$1__namespace.filter(e,{group:a});if(e.length!=_$1__namespace.filter(e,["hidden",!0]).length){var r,l=[];for(const n of e){let e=n;"grid"===n.type?e=await getGridFieldSubFields(n,t):"object"===n.type&&(e=await getObjectFieldSubFields(n,t)),e.name.indexOf(".")<0&&((r=await convertSFieldToAmisField(e,e.readonly,i))&&l.push(r));}return {type:"fieldSet",title:a,collapsable:!0,body:l}}},getSections=async(e,t,a)=>{var i=getFieldSchemaArray(t),r=[];for(const n in _$1__namespace.groupBy(i,"group")){var l=await getSection(e,i,n,a);0<l.body.length&&r.push(l);}return r};async function getFormBody(e,t,a){return getSections(e,t,a)}const defaultsDeep=(...e)=>{let t={};return _$1.toArray(e).reverse().forEach(e=>{_$1.mergeWith(t,e,(e,t)=>_$1.isArray(t)?t:void 0);}),t};function getBulkActions(e){return [{type:"button",level:"danger",label:"批量删除",actionType:"ajax",confirmText:"确定要删除吗",id:"batchDelete",api:getBatchDelete(e.name)}]}function getHeaderToolbar(e,t){return "SMALL"===t?["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}]}function getToolbar(){return []}function footerToolbar(){return ["statistics","pagination"]}async function getObjectList(e,t,a){var i=getBulkActions(e),i={toolbar:getToolbar(),footerToolbar:footerToolbar(),headerToolbar:getHeaderToolbar(e,a.formFactor),bulkActions:0!=a.bulkActions&&i,bodyClassName:""};let r=null;var l="listview_"+e.name,n=(r="SMALL"===a.formFactor?(delete i.bulkActions,delete i.headerToolbar,delete i.footerToolbar,n=await getCardSchema(t,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},a,{actions:!1})),Object.assign({},n,{type:"crud",primaryField:"_id",id:l,name:l,keepItemSelectionOnPageChange:!1,api:await getTableApi(e,t,a)},i)):(delete(n=await getTableSchema$1(t,Object.assign({idFieldName:e.idFieldName,labelFieldName:e.NAME_FIELD_KEY||"name"},a))).mode,Object.assign({},n,{type:"crud",primaryField:"_id",id:l,name:l,keepItemSelectionOnPageChange:!0,api:await getTableApi(e,t,a)},i)),a.defaults),l=n&&n.listSchema||{};return r=defaultsDeep({},l,r),{type:"service",bodyClassName:"",name:"page",data:{context:{rootUrl:getRootUrl(),tenantId:getTenantId(),authToken:getAuthToken()}},body:r}}async function getRecordDetailHeaderAmisSchema(e,t){var{name:e,label:a,icon:i}=e,i=[{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-${i}' src='\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${i}.svg'>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:""+a,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:9},{body:[]}]}],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:${e}(filters: ["_id","=","${t}"]){_id, name} }`},sendOn:""+!!t,requestAdaptor:"",adaptor:`
|
|
590
640
|
const rows = payload.data.rows;
|
|
591
641
|
let label = null;
|
|
592
642
|
if (rows.length) {
|
|
@@ -598,7 +648,12 @@ return payload;
|
|
|
598
648
|
name: label
|
|
599
649
|
}
|
|
600
650
|
return payload;
|
|
601
|
-
`}}];return {type:"service",bodyClassName:"",name:"page",data:{context:{rootUrl:getRootUrl(),tenantId:getTenantId(),authToken:getAuthToken()}},body:i}}const getGlobalData$1=e=>{var t=getSteedosAuth();return {mode:e,user:t,spaceId:t.spaceId,userId:t.userId}};async function getObjectForm(e,t){var{recordId:a,formFactor:i,layout:r,labelAlign:l,defaults:n}=t,o=_$1__default["default"].values(e.fields),n=n&&n.formSchema||{}
|
|
651
|
+
`}}];return {type:"service",bodyClassName:"",name:"page",data:{context:{rootUrl:getRootUrl(),tenantId:getTenantId(),authToken:getAuthToken()}},body:i}}const getGlobalData$1=e=>{var t=getSteedosAuth();return {mode:e,user:t,spaceId:t.spaceId,userId:t.userId}};async function getObjectForm(e,t){var{recordId:a,formFactor:i,layout:r,labelAlign:l,defaults:n}=t,o=_$1__default["default"].values(e.fields),n=n&&n.formSchema||{},i={type:"service",className:"p-0",name:"page_edit_"+a,api:await getEditFormInitApi(e,a,o),data:{global:getGlobalData$1("edit"),recordId:a,objectName:e.name,context:{rootUrl:getRootUrl(),tenantId:getTenantId(),authToken:getAuthToken()}},initApi:null,initFetch:null,body:[defaultsDeep({},n,{type:"form",mode:"SMALL"===i?"normal":r,labelAlign:l,persistData:!1,promptPageLeave:!0,name:"form_edit_"+a,debug:!1,title:"",submitText:"",api:await getSaveApi(e,a,o),initFetch:"new"!=a,body:await getFormBody(o,e,t),panelClassName:"m-0 sm:rounded-lg shadow-none",bodyClassName:"p-0",className:"p-4 sm:p-0 steedos-amis-form"})]};return n.id&&(i.id="service-"+n.id),i}async function getObjectDetail(e,t,a){var{formFactor:i,layout:r,labelAlign:l,formInitProps:n}=a,o=_$1__default["default"].values(e.fields);return {type:"service",name:"page_readonly_"+t,id:"detail_"+t,data:{global:getGlobalData$1("read"),context:{rootUrl:getRootUrl(),tenantId:getTenantId(),authToken:getAuthToken()}},api:await getReadonlyFormInitApi(e,t,o,n),body:[{type:"form",mode:"SMALL"===i?"normal":r,labelAlign:l,persistData:!1,promptPageLeave:!1,name:"form_readonly_"+t,debug:!1,title:"",data:{formData:"$$"},wrapWithPanel:!1,body:await getFormBody(_$1.map(o,e=>{e.readonly=!0;}),e,Object.assign({},a,{showSystemFields:!0})),className:"steedos-amis-form",actions:[]}]}}const standardButtonsTodo={standard_new:function(){const{object:e,record:t,appId:a,listViewId:i,formFactor:r,router:l}=this;var n=config.listView.newRecordMode;SteedosUI?.Object.newRecord({onSubmitted:()=>{SteedosUI.getRef(i).getComponentByName("page.listview_"+e.name).handleAction({},{actionType:"reload"});},onCancel:()=>{SteedosUI.getRef(i).getComponentByName("page.listview_"+e.name).handleAction({},{actionType:"reload"});},appId:a,formFactor:r,name:SteedosUI.getRefId({type:n+"-form"}),title:"新建 "+e.label,objectName:e.name,data:t,recordId:"new",type:n,router:l});},standard_edit:function(){var e=config.listView.newRecordMode;const{object:t,recordId:a,appId:i,listViewId:r,formFactor:l,router:n}=this;SteedosUI?.Object.editRecord({appId:i,name:SteedosUI.getRefId({type:e+"-form"}),title:"编辑 "+t.label,objectName:t.name,recordId:a,type:e,options:"SMALL"===l?{props:{width:"100%",style:{width:"100%"},bodyStyle:{padding:"0px",paddingTop:"0px"}}}:null,router:n,formFactor:l,onSubmitted:()=>{var e=SteedosUI.getRef(SteedosUI.getRefId({type:"detail",appId:i,name:t.name}));e&&e.getComponentById("detail_"+a)?e.getComponentById("detail_"+a).reload():SteedosUI.getRef(r).getComponentByName("page.listview_"+t.name).handleAction({},{actionType:"reload"});}});},standard_delete:function(){},standard_delete_many:function(){var{listViewId:e,object:t}=this,e=SteedosUI?.getRef(e).getComponentByName("page.listview_"+t.name);_$1__default["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]);}},getButtons=(t,a)=>{const i=t.permissions.disabled_actions;let e=_$1__default["default"].sortBy(_$1__default["default"].values(t.actions),"sort");return _$1__default["default"].has(t,"allow_customActions")&&(e=_$1__default["default"].filter(e,e=>_$1__default["default"].include(t.allow_customActions,e.name))),_$1__default["default"].has(t,"exclude_actions")&&(e=_$1__default["default"].filter(e,e=>!_$1__default["default"].include(t.exclude_actions,e.name))),_$1__default["default"].each(e,e=>{e.objectName=t.name,a.isMobile&&-1<["record","record_only"].indexOf(e.on)&&"standard_edit"!=e.name&&("record_only"==e.on?e.on="record_only_more":e.on="record_more");}),a.isMobile&&-1<["cms_files","cfs.files.filerecord"].indexOf(t.name)&&_$1__default["default"].map(e,e=>{"standard_edit"===e.name&&(e.on="record_more"),"download"===e.name&&(e.on="record");}),_$1__default["default"].filter(e,e=>_$1__default["default"].indexOf(i,e.name)<0&&"standard_query"!=e.name)},getListViewItemButtons=async(e,t)=>{e=getButtons(e,t);return _$1__default["default"].filter(e,e=>"record"==e.on||"list_item"==e.on||"record_more"===e.on)},getButton=async(e,t,a)=>{var i=await getUISchema(e),r=a["props"];if(i){i=await getButtons(i,a),i=_$1__default["default"].find(i,e=>e.name===t);if(i)return "standard_edit"==i.name&&0<i._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_edit.visible.apply")?{label:i.label,name:i.name,on:i.on,type:i.type,todo:standardButtonsTodo.standard_edit}:"cms_files"!=e&&"standard_new"==i.name&&0<i._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_new.visible.apply")?{label:i.label,name:i.name,on:i.on,type:i.type,todo:e=>standardButtonsTodo.standard_new}:"standard_delete"==i.name&&0<i._visible.indexOf("Steedos.StandardObjects.Base.Actions.standard_delete.visible.apply")?{label:i.label,name:i.name,on:i.on,type:"amis_button",sort:i.sort,amis_schema:{type:"service",bodyClassName:"p-0",body:[{type:"button",label:"删除",confirmText:"确定要删除此项目?",className:r.className,onEvent:{click:{actions:[{args:{api:{method:"post",url:getApi$2(),requestAdaptor:`
|
|
652
|
+
var deleteArray = [];
|
|
653
|
+
deleteArray.push(\`delete:${a.objectName}__delete(id: "${a.recordId}")\`);
|
|
654
|
+
api.data = {query: \`mutation{\${deleteArray.join(',')}}\`};
|
|
655
|
+
return api;
|
|
656
|
+
`,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}},messages:{success:"删除成功",failed:"删除失败"}},actionType:"ajax"},{componentId:"",args:{url:`/app/${a.appId}/`+a.objectName,blank:!1},actionType:"url"}]}}}],regions:["body"]}}:i}},execute=(e,t)=>{if(e.todo)return _$1__default["default"].isString(e.todo)&&_$1__default["default"].startsWith(_$1__default["default"].trim(e.todo),"function")&&(window.eval("var fun = "+e.todo),e.todo=fun),_$1__default["default"].isFunction(e.todo)?(t={objectName:t.objectName,object_name:t.objectName,object:t.uiSchema,record:t.record,recordId:t.recordId,record_id:t.recordId,...t,action:e},e.todo.apply(t,[t.objectName,t.recordId])):void 0},executeButton=execute;let UI_SCHEMA_CACHE={};"undefined"!=typeof window&&(window.UI_SCHEMA_CACHE||(window.UI_SCHEMA_CACHE=UI_SCHEMA_CACHE),UI_SCHEMA_CACHE=window.UI_SCHEMA_CACHE);const setUISchemaCache=(e,t)=>{UI_SCHEMA_CACHE[e]=t;},getUISchemaCache=e=>_$1.cloneDeep(UI_SCHEMA_CACHE[e]),hasUISchemaCache=e=>_$1.has(UI_SCHEMA_CACHE,e),getListViewColumns=(e,t)=>{return "SMALL"===t?_$1.isEmpty(e.mobile_columns)?_$1.slice(e.columns,0,4):e.mobile_columns:e.columns};async function getUISchema(t,e){if(t){if(!hasUISchemaCache(t)||e){e=`/service/api/@${t.replace(/\./g,"_")}/uiSchema`;let a;try{if(!(a=await fetchAPI(e,{method:"get"})))return;setUISchemaCache(t,a),_$1.each(a.list_views,(e,t)=>{e.name=t,_$1.has(e,"columns")||(e.columns=a.list_views.all.columns);});}catch(e){console.error("getUISchema",t,e),setUISchemaCache(t,null);}}return getUISchemaCache(t)}}async function getFormSchema(e,t){e=await getUISchema(e);return {uiSchema:e,amisSchema:await getObjectForm(e,t)}}async function getViewSchema(e,t,a){e=await getUISchema(e);return {uiSchema:e,amisSchema:await getObjectDetail(e,t,a)}}async function getListSchema(e,t,a,i={}){const r=await getUISchema(t);var l=_$1.find(r.list_views,(e,t)=>t===a);if(!l)return {uiSchema:r};r.fields;const n=[];var o=getListViewColumns(l,i.formFactor);let s="";l&&l.sort&&l.sort.length&&_$1.each(l.sort,function(e,t){var a;_$1.isArray(e)?(a=e[0]+" "+(e[1]||""),a=0<t?","+a:a,s+=a):(a=e.field_name+" "+e.order,a=0<t?","+a:a,s+=a);}),l&&o&&_$1.each(o,function(e){_$1.isString(e)&&r.fields[e]?n.push(r.fields[e]):_$1.isObject(e)&&r.fields[e.field]&&n.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}));}),l&&l.extra_columns&&_$1.each(l.extra_columns,function(e){_$1.isString(e)?n.push({extra:!0,name:e}):_$1.isObject(e)&&n.push({extra:!0,name:e.field});});o=n,o=await getObjectList(r,o,{tabId:t,appId:e,objectName:t,listViewName:a,...i,filter:l.filters,sort:s,buttons:await getListViewItemButtons(r,i)});return {uiSchema:r,amisSchema:o}}async function getTableSchema(e,t,a,i={}){const r=await getUISchema(t);let l="";var n=i.sortField,o=i.sortOrder;n&&(l=n+" "+o||"asc");let s=[];_$1.each(a,function(e){_$1.isString(e)&&r.fields[e]?s.push(r.fields[e]):_$1.isObject(e)&&r.fields[e.field]&&s.push(Object.assign({},r.fields[e.field],{width:e.width,wrap:e.wrap}));});n=await getObjectList(r,s,{tabId:t,appId:e,objectName:t,...i,filter:i.filters,sort:l});return {uiSchema:r,amisSchema:n}}async function getRecordDetailHeaderSchema(e,t){e=await getUISchema(e);return {uiSchema:e,amisSchema:await getRecordDetailHeaderAmisSchema(e,t)}}async function getRecordDetailRelatedListSchema(t,e,a){var i=await getUISchema(a),{list_views:r,label:l,icon:n,fields:o}=i,a=(await getListSchema(null,a,_$1.keys(r)[0],{globalFilter:[_$1.findKey(o,function(e){return -1<["lookup","master_detail"].indexOf(e.type)&&e.reference_to===t}),"=",e]})).amisSchema.body,r=a.api,o=(delete a.api,Object.assign({},a,{bulkActions:[],headerToolbar:[],columnsTogglable:!1,source:"${rows}",className:"b-t"})),e=[{type:"wrapper",body:[{type:"grid",columns:[{body:[{type:"grid",columns:[{body:{type:"tpl",className:"block",tpl:`<p><img class="slds-icon_small slds-icon_container slds-icon-standard-${n}" src="\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${n}.svg" /></p>`},md:"auto",className:"",columnClassName:"flex justify-center items-center"},{body:[{type:"tpl",tpl:l+"(${count ? count : 0})",inline:!1,wrapperComponent:"",className:"leading-none",style:{fontFamily:"",fontSize:13,fontWeight:"bold"}}],md:"",valign:"middle",columnClassName:"p-l-xs"}]}],md:9},{body:[]}]}],size:"xs",className:"bg-white p-t-sm p-b-sm p-l"},o];return {uiSchema:i,amisSchema:{type:"service",className:"r b-a",name:"relatedObject",api:r,data:{context:{rootUrl:getRootUrl(),tenantId:getTenantId(),authToken:getAuthToken()}},body:e}}}const opMaps={equal:"=",not_equal:"!=",less:"<",less_or_equal:"<=",greater:">",greater_or_equal:">=",between:"between",not_between:"not_between",is_empty:"is_empty",is_not_empty:"is_not_empty",select_equals:"=",select_not_equals:"!=",select_any_in:"in",select_not_any_in:"<>",like:"contains",not_like:"notcontains",starts_with:"startswith",ends_with:"endswith"},isGroup=e=>_.has(e,"conjunction"),conditionGroupToFilters=e=>{const a=[],{conjunction:i,children:t}=e;return i&&t&&t.forEach(e=>{var t;0<a.length&&a.push(i),isGroup(e)?(t=conditionGroupToFilters(e))&&0<t.length&&a.push(t):(t=conditionItemToFilters(e))&&a.push(t);}),a},conditionItemToFilters=e=>{var t,{left:e,op:a,right:i}=e;if(e&&"field"===e.type&&a)return a.startsWith("between:")?(t=a.split(":"),[e.field,t[0],t[1]]):null!=i?[e.field,opMaps[a],i]:void 0},conditionsToFilters=e=>conditionGroupToFilters(e);var __assign=function(){return (__assign=Object.assign||function(e){for(var t,a=1,i=arguments.length;a<i;a++)for(var r in t=arguments[a])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function createObject(e,t,a){var i=(e=e&&Object.isFrozen(e)?cloneObject(e):e)?Object.create(e,__assign(__assign({},a),{__super:{value:e,writable:!1,enumerable:!1}})):Object.create(Object.prototype,a);return t&&isObject(t)&&Object.keys(t).forEach(function(e){return i[e]=t[e]}),i}function cloneObject(t,e){void 0===e&&(e=!0);var a=t&&t.__super?Object.create(t.__super,{__super:{value:t.__super,writable:!1,enumerable:!1}}):Object.create(Object.prototype);return e&&t&&Object.keys(t).forEach(function(e){return a[e]=t[e]}),a}function isObject(e){var t=typeof e;return e&&"string"!=t&&"number"!=t&&"boolean"!=t&&"function"!=t&&!Array.isArray(e)}
|
|
602
657
|
|
|
603
658
|
var getSchema = function (field, value, ctx) { return __awaiter(void 0, void 0, void 0, function () {
|
|
604
659
|
var refTo, leftName, options, refTo_1, refTo_1_1, item, refObject_1, e_1_1, refObject, rightSchema;
|
|
@@ -726,6 +781,111 @@ return payload;
|
|
|
726
781
|
}))) : null));
|
|
727
782
|
};
|
|
728
783
|
|
|
784
|
+
var AmisObjectButton = function (props) {
|
|
785
|
+
var objectName = props.objectName, name = props.name, data = props.data, render = props.render, className = props.className, listViewId = props.listViewId;
|
|
786
|
+
var _a = __read(React.useState(), 2), button = _a[0], setButton = _a[1];
|
|
787
|
+
var _b = __read(React.useState(), 2), uiSchema = _b[0], setUiSchema = _b[1];
|
|
788
|
+
//TODO 处理上下文参数
|
|
789
|
+
var appId = data.appId;
|
|
790
|
+
var formFactor = data.formFactor;
|
|
791
|
+
React.useEffect(function () {
|
|
792
|
+
if (objectName) {
|
|
793
|
+
getUISchema(objectName, false).then(function (uiSchema) {
|
|
794
|
+
getButton(objectName, name, {
|
|
795
|
+
objectName: objectName,
|
|
796
|
+
recordId: data._id,
|
|
797
|
+
appId: appId,
|
|
798
|
+
uiSchema: uiSchema,
|
|
799
|
+
formFactor: formFactor,
|
|
800
|
+
router: null,
|
|
801
|
+
listViewId: data.listViewId,
|
|
802
|
+
props: {
|
|
803
|
+
className: "antd-Button antd-Button--link"
|
|
804
|
+
}
|
|
805
|
+
}).then(function (result) {
|
|
806
|
+
setButton(result);
|
|
807
|
+
setUiSchema(uiSchema);
|
|
808
|
+
});
|
|
809
|
+
});
|
|
810
|
+
}
|
|
811
|
+
}, [objectName, name]);
|
|
812
|
+
var buttonClick = function () {
|
|
813
|
+
var dataComponentId = data.dataComponentId;
|
|
814
|
+
//Object.assign({}, data , {scope: (window as any).SteedosUI.getRef(dataComponentId)})
|
|
815
|
+
return executeButton(button, {
|
|
816
|
+
objectName: objectName,
|
|
817
|
+
listViewId: listViewId || data.listViewId,
|
|
818
|
+
uiSchema: uiSchema,
|
|
819
|
+
record: data,
|
|
820
|
+
recordId: data._id,
|
|
821
|
+
appId: appId,
|
|
822
|
+
formFactor: formFactor,
|
|
823
|
+
scope: window.SteedosUI.getRef(dataComponentId)
|
|
824
|
+
});
|
|
825
|
+
};
|
|
826
|
+
if (!button) {
|
|
827
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null, "loading..."));
|
|
828
|
+
}
|
|
829
|
+
if (button.type === "amis_button") {
|
|
830
|
+
var amisSchema = button.amis_schema;
|
|
831
|
+
var schema = _$1.isString(amisSchema) ? JSON.parse(amisSchema) : amisSchema;
|
|
832
|
+
if (schema && schema.body.length > 0) {
|
|
833
|
+
delete schema.body[0]['visibleOn'];
|
|
834
|
+
}
|
|
835
|
+
return (React__default["default"].createElement("div", { className: className }, button && amisSchema ? (React__default["default"].createElement("div", { className: "container" }, render('body', schema, {
|
|
836
|
+
// 这里的信息会作为 props 传递给子组件,一般情况下都不需要这个
|
|
837
|
+
onChange: function () {
|
|
838
|
+
console.log("change....");
|
|
839
|
+
}
|
|
840
|
+
}))) : null));
|
|
841
|
+
}
|
|
842
|
+
else {
|
|
843
|
+
return (React__default["default"].createElement("button", { onClick: buttonClick, className: "antd-Button ".concat(className ? className : '') }, button.label));
|
|
844
|
+
}
|
|
845
|
+
};
|
|
846
|
+
|
|
847
|
+
var getMenu = function (render, buttons, props) {
|
|
848
|
+
return React__default["default"].createElement(antd.Menu, { items: _$1.map(buttons, function (button) {
|
|
849
|
+
button.className = button.className ? "".concat(button.className, " steedos-dropdown-button-item py-1 text-left w-full") : 'steedos-dropdown-button-item py-1 text-left w-full';
|
|
850
|
+
return {
|
|
851
|
+
key: button.name,
|
|
852
|
+
className: 'py-0 min-w-40',
|
|
853
|
+
label: (React__default["default"].createElement(React__default["default"].Fragment, null, render('body', button, props)))
|
|
854
|
+
};
|
|
855
|
+
}) });
|
|
856
|
+
};
|
|
857
|
+
var SteedosDropdownButton = function (props) {
|
|
858
|
+
var data = props.data, render = props.render; props.className; var buttons = props.buttons; props.placement; var onOpenApi = props.onOpenApi; props.store; var env = props.env;
|
|
859
|
+
var _a = __read(React.useState(React__default["default"].createElement(React__default["default"].Fragment, null)), 2), menu = _a[0], setMenu = _a[1];
|
|
860
|
+
var onOpenChange = function (open) {
|
|
861
|
+
if (open) {
|
|
862
|
+
if (onOpenApi) {
|
|
863
|
+
try {
|
|
864
|
+
env.fetcher(onOpenApi, createObject(data, {})).then(function (result) {
|
|
865
|
+
var openData = (result === null || result === void 0 ? void 0 : result.hasOwnProperty('ok')) ? result.data : result;
|
|
866
|
+
setMenu(getMenu(render, buttons, {
|
|
867
|
+
data: createObject(data, _$1.defaultsDeep(openData, data))
|
|
868
|
+
}));
|
|
869
|
+
}).catch(function (e) {
|
|
870
|
+
console.error(e);
|
|
871
|
+
});
|
|
872
|
+
}
|
|
873
|
+
catch (error) {
|
|
874
|
+
console.error(error);
|
|
875
|
+
}
|
|
876
|
+
}
|
|
877
|
+
else {
|
|
878
|
+
setMenu(getMenu(render, buttons, {
|
|
879
|
+
data: data
|
|
880
|
+
}));
|
|
881
|
+
}
|
|
882
|
+
}
|
|
883
|
+
};
|
|
884
|
+
return (React__default["default"].createElement(antd.Dropdown, { overlay: menu, trigger: ['click'], onOpenChange: onOpenChange },
|
|
885
|
+
React__default["default"].createElement("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: "w-5 h-5" },
|
|
886
|
+
React__default["default"].createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19.5 8.25l-7.5 7.5-7.5-7.5" }))));
|
|
887
|
+
};
|
|
888
|
+
|
|
729
889
|
var AmisObjectForm = function (props) { return __awaiter(void 0, void 0, void 0, function () {
|
|
730
890
|
var $schema, recordId, mode, layout, labelAlign, objectApiName, schemaKeys, formSchema, defaults, options;
|
|
731
891
|
return __generator(this, function (_a) {
|
|
@@ -733,7 +893,7 @@ return payload;
|
|
|
733
893
|
case 0:
|
|
734
894
|
$schema = props.$schema, recordId = props.recordId, mode = props.mode, layout = props.layout, labelAlign = props.labelAlign;
|
|
735
895
|
objectApiName = props.objectApiName || "space_users";
|
|
736
|
-
schemaKeys = _$1.difference(_$1.keys($schema), ["type"]);
|
|
896
|
+
schemaKeys = _$1.difference(_$1.keys($schema), ["type", "mode", "layout"]);
|
|
737
897
|
formSchema = _$1.pick(props, schemaKeys);
|
|
738
898
|
defaults = {
|
|
739
899
|
formSchema: formSchema
|
|
@@ -779,6 +939,27 @@ return payload;
|
|
|
779
939
|
});
|
|
780
940
|
}); };
|
|
781
941
|
|
|
942
|
+
var AmisObjectTable = function (props) { return __awaiter(void 0, void 0, void 0, function () {
|
|
943
|
+
var $schema, filters, amisCondition, top, sortField, sortOrder, data, columns, objectApiName, schemaKeys, listSchema, amisFilters, tableFilters, defaults;
|
|
944
|
+
return __generator(this, function (_a) {
|
|
945
|
+
switch (_a.label) {
|
|
946
|
+
case 0:
|
|
947
|
+
$schema = props.$schema, filters = props.filters, amisCondition = props.amisCondition, top = props.top, sortField = props.sortField, sortOrder = props.sortOrder, data = props.data;
|
|
948
|
+
columns = props.columns || [];
|
|
949
|
+
objectApiName = props.objectApiName || "space_users";
|
|
950
|
+
schemaKeys = _$1.difference(_$1.keys($schema), ["type", "objectApiName", "columns"]);
|
|
951
|
+
listSchema = _$1.pick(props, schemaKeys);
|
|
952
|
+
amisFilters = amisCondition && conditionsToFilters(amisCondition);
|
|
953
|
+
tableFilters = filters || amisFilters;
|
|
954
|
+
defaults = {
|
|
955
|
+
listSchema: listSchema
|
|
956
|
+
};
|
|
957
|
+
return [4 /*yield*/, getTableSchema(data.appId, objectApiName, columns, { filters: tableFilters, top: top, sortField: sortField, sortOrder: sortOrder, defaults: defaults })];
|
|
958
|
+
case 1: return [2 /*return*/, (_a.sent()).amisSchema];
|
|
959
|
+
}
|
|
960
|
+
});
|
|
961
|
+
}); };
|
|
962
|
+
|
|
782
963
|
var AmisRecordDetailHeader = function (props) { return __awaiter(void 0, void 0, void 0, function () {
|
|
783
964
|
var recordId, objectApiName;
|
|
784
965
|
return __generator(this, function (_a) {
|
|
@@ -844,13 +1025,16 @@ return payload;
|
|
|
844
1025
|
});
|
|
845
1026
|
}); };
|
|
846
1027
|
|
|
1028
|
+
exports.AmisObjectButton = AmisObjectButton;
|
|
847
1029
|
exports.AmisObjectFieldLookup = AmisObjectFieldLookup;
|
|
848
1030
|
exports.AmisObjectForm = AmisObjectForm;
|
|
849
1031
|
exports.AmisObjectListView = AmisObjectListView;
|
|
1032
|
+
exports.AmisObjectTable = AmisObjectTable;
|
|
850
1033
|
exports.AmisProvider = AmisProvider;
|
|
851
1034
|
exports.AmisRecordDetailHeader = AmisRecordDetailHeader;
|
|
852
1035
|
exports.AmisRecordDetailRelatedList = AmisRecordDetailRelatedList;
|
|
853
1036
|
exports.AmisSelectUser = AmisSelectUser;
|
|
1037
|
+
exports.SteedosDropdownButton = SteedosDropdownButton;
|
|
854
1038
|
|
|
855
1039
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
856
1040
|
|