vxe-design
Version:
A PC-based visual designer based on Vxe UI, used for building zero-code and low-code platforms
1 lines • 2.93 kB
JavaScript
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let errLog=(0,_log.createComponentLog)("list-design").errLog;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"ListDesignLayoutView",props:{},emits:[],setup(){let l=_core.VxeUI.getComponent("vxe-grid"),s=_core.VxeUI.getComponent("vxe-form");var e=(0,_vue.inject)("$xeListDesign",null);if(!e)return()=>[];let o=e.reactData,n=(0,_vue.ref)(),a=(0,_vue.ref)([]),u=(0,_vue.computed)(()=>{var e=o.searchFormItems;return e.length?e.concat([{field:"active",title:"",folding:!1,collapseNode:e.some(e=>e.folding),itemRender:{name:"VxeButtonGroup",options:[{content:"查询",icon:"vxe-icon-search",status:"primary",type:"submit"},{content:"重置",icon:"vxe-icon-repeat",type:"reset"}]}}]):e}),v=(0,_vue.computed)(()=>{var{formData:e,listTableColumns:t}=o,{showSeq:e,actionButtonList:i}=e;let r=[];return e&&r.push({type:"seq",field:"_seq",width:70}),t.forEach(e=>{r.push({field:e.field,title:e.title,visible:e.visible,width:e.width})}),i&&i.length&&r.push({field:"_active",title:(0,_core.getI18n)("vxe.table.actionTitle"),fixed:"right",width:"auto",cellRender:{name:"VxeButtonGroup",options:[]}}),r}),c=({column:t,resizeWidth:e})=>{var i=o.listTableColumns,i=_xeUtils.default.findTree(i,e=>e.field===t.field,{children:"children"});i&&(i=i.item,i.width=e)},t=()=>{let e=o.listTableColumns;var t=[{},{}];t.forEach(t=>{e.forEach(e=>{t[e.field]="-"})}),a.value=t},i=(0,_vue.ref)(0);return(0,_vue.watch)(()=>o.listTableColumns?o.listTableColumns.length:-1,()=>{i.value++}),(0,_vue.watch)(()=>o.listTableColumns,()=>{i.value++}),(0,_vue.watch)(i,()=>{t()}),(0,_vue.onMounted)(()=>{t()}),(0,_vue.nextTick)(()=>{l||errLog("vxe.error.reqComp",["vxe-grid"])}),()=>{var{searchFormData:e,searchFormItems:t}=o,i=u.value,r=v.value;return(0,_vue.h)("div",{class:"vxe-list-design--preview"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-wrapper"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-search"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-title"},(0,_core.getI18n)("vxe.listDesign.searchTitle")),t.length?(0,_vue.h)(s,{data:e,items:i}):(0,_vue.h)("div",{class:"vxe-list-design--field-configs-empty-data"},[(0,_vue.h)("span",{},(0,_core.getI18n)("vxe.listDesign.search.emptyText"))])]),(0,_vue.h)("div",{class:"vxe-list-design--preview-table"},[(0,_vue.h)("div",{class:"vxe-list-design--preview-title"},(0,_core.getI18n)("vxe.listDesign.listTitle")),l?(0,_vue.h)(l,{ref:n,columns:r,data:a.value,showOverflow:!0,border:!0,columnConfig:{minWidth:"auto",resizable:!0},rowConfig:{isHover:!0},scrollX:{enabled:!1},scrollY:{enabled:!1},onResizableChange:c}):(0,_vue.createCommentVNode)()])])])}}});