vxe-table 4.16.4 → 4.16.6

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.
@@ -576,7 +576,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
576
576
  evnt.preventDefault();
577
577
  const offsetY = evnt.clientY - optEl.getBoundingClientRect().y;
578
578
  const dragPos = offsetY < optEl.clientHeight / 2 ? 'top' : 'bottom';
579
- if (!dragCol || dragCol && dragCol.id === column.id || !isCrossDrag && column.level > 1 || !immediate && column.level > 1 || column.renderFixed) {
579
+ if (!dragCol || dragCol && dragCol.id === column.id || !isCrossDrag && column.level > 1 || !immediate && column.level > 1) {
580
580
  showDropTip(evnt, optEl, false, dragPos);
581
581
  return;
582
582
  }
@@ -723,10 +723,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
723
723
  class: 'vxe-table-custom--sort-option'
724
724
  }, [(0, _vue.h)('span', Object.assign({
725
725
  class: ['vxe-table-custom--sort-btn', {
726
- 'is--disabled': isDisabled || isHidden || column.renderFixed
726
+ 'is--disabled': isDisabled || isHidden
727
727
  }],
728
728
  title: getI18n('vxe.custom.setting.sortHelpTip')
729
- }, isDisabled || isHidden || column.renderFixed ? {} : {
729
+ }, isDisabled || isHidden ? {} : {
730
730
  onMousedown: sortMousedownEvent,
731
731
  onMouseup: sortMouseupEvent
732
732
  }), [(0, _vue.h)('i', {
@@ -968,10 +968,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
968
968
  class: 'vxe-table-custom-popup--name'
969
969
  }, [allowSort ? (isCrossDrag ? immediate : false) || column.level === 1 ? (0, _vue.h)('div', Object.assign({
970
970
  class: ['vxe-table-custom-popup--column-sort-btn', {
971
- 'is--disabled': isDisabled || isHidden || column.renderFixed
971
+ 'is--disabled': isDisabled || isHidden
972
972
  }],
973
973
  title: getI18n('vxe.custom.setting.sortHelpTip')
974
- }, isDisabled || isHidden || column.renderFixed ? {} : {
974
+ }, isDisabled || isHidden ? {} : {
975
975
  onMousedown: sortMousedownEvent,
976
976
  onMouseup: sortMouseupEvent
977
977
  }), [(0, _vue.h)('i', {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.createInternalData=createInternalData,exports.default=void 0;var _vue=require("vue"),_comp=require("../../../ui/src/comp"),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderEmptyElement}=_ui.VxeUI;function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"TableCustomPanel",props:{customStore:{type:Object,default:()=>({})}},setup(M,t){var e=_xeUtils.default.uniqueId();let R=_ui.VxeUI.getComponent("VxeModal"),H=_ui.VxeUI.getComponent("VxeDrawer"),G=_ui.VxeUI.getComponent("VxeButton"),z=_ui.VxeUI.getComponent("VxeNumberInput"),P=_ui.VxeUI.getComponent("VxeRadioGroup"),$=(0,_vue.inject)("$xeTable",{}),{props:W,reactData:K,internalData:r}=$,{computeCustomOpts:X,computeColumnDragOpts:q,computeColumnOpts:de,computeIsMaxFixedColumn:j,computeResizableOpts:ce}=$.getComputeMaps(),S=(0,_vue.ref)(),Y=(0,_vue.ref)(),Z=(0,_vue.ref)(),u=(0,_vue.ref)(),d=(0,_vue.ref)(),f=(0,_vue.reactive)({dragCol:null,dragGroupField:null,dragAggFnCol:null,dragTipText:""}),T=createInternalData(),a={refElem:S,refBodyWrapperElem:Y,refCustomBodyElem:Z,refDragLineElem:u,refDragTipElem:d},i={},k=e=>{var t=M.customStore;t.activeWrapper=!0,$.customOpenEvent(e)},F=e=>{let t=M.customStore;t.activeWrapper=!1,setTimeout(()=>{t.activeBtn||t.activeWrapper||$.customCloseEvent(e)},300)},J=({$event:e})=>{K.isCustomStatus=!0,$.saveCustom(),$.closeCustom(),$.emitCustomEvent("confirm",e)},Q=({$event:e})=>{$.closeCustom(),$.emitCustomEvent("close",e)},ee=({$event:e})=>{$.cancelCustom(),$.closeCustom(),$.emitCustomEvent("cancel",e)},l=e=>{$.resetCustom(!0),$.closeCustom(),$.emitCustomEvent("reset",e)},te=({$event:t})=>{_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&l(t)}):l(t)},o=t=>{var e=K.customColumnList,e=_xeUtils.default.findTree(e,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.renderVisible=e.children.every(e=>e.renderVisible),e.halfVisible=!e.renderVisible&&e.children.some(e=>e.renderVisible||e.halfVisible),o(e))},le=(e,t)=>{let l=!e.renderVisible;X.value.immediate?(_xeUtils.default.eachTree([e],e=>{e.visible=l,e.renderVisible=l,e.halfVisible=!1}),K.isCustomStatus=!0,$.handleCustom(),$.saveCustomStore("update:visible")):_xeUtils.default.eachTree([e],e=>{e.renderVisible=l,e.halfVisible=!1}),o(e),$.checkCustomStatus(),$.dispatchEvent("custom-visible-change",{column:e,checked:l},t)},me=e=>{X.value.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,K.isCustomStatus=!0,$.handleCustom(),$.saveCustomStore("update:width"))},oe=(e,t,l)=>{var o=j.value;let a=null;X.value.immediate?(e.renderFixed===t?(a="",_xeUtils.default.eachTree([e],e=>{e.fixed="",e.renderFixed=""})):o&&!e.renderFixed||(a=t,_xeUtils.default.eachTree([e],e=>{e.fixed=t,e.renderFixed=t})),K.isCustomStatus=!0,$.handleCustom(),$.saveCustomStore("update:fixed")):e.renderFixed===t?(a="",_xeUtils.default.eachTree([e],e=>{e.renderFixed=""})):o&&!e.renderFixed||(a=t,_xeUtils.default.eachTree([e],e=>{e.renderFixed=t})),null!==a&&$.dispatchEvent("custom-fixed-change",{column:e,fixed:a},l)},ae=e=>{var t=K.customStore,t=!t.isAll;$.toggleCustomAllCheckbox(),$.dispatchEvent("custom-visible-all",{checked:t},e)},c=(e,t,l,o)=>{var a,i,s,r,n=Y.value;n&&(r=Z.value)&&(a=T.prevDragToChild,i=n.getBoundingClientRect(),r=r.getBoundingClientRect(),s=u.value,t?s&&(l?(t=t.getBoundingClientRect(),s.style.display="block",s.style.left=Math.max(0,r.x-i.x)+"px",s.style.top=Math.max(1,t.y+n.scrollTop-i.y)+"px",s.style.height=t.height+"px",s.style.width=t.width+"px",s.setAttribute("drag-pos",o),s.setAttribute("drag-to-child",a?"y":"n")):s.style.display=""):s&&(s.style.display="node"),r=d.value)&&(r.style.display="block",r.style.top=Math.min(n.clientHeight+n.scrollTop-r.clientHeight,e.clientY+n.scrollTop-i.y)+"px",r.style.left=Math.min(n.clientWidth+n.scrollLeft-r.clientWidth,e.clientX+n.scrollLeft-i.x)+"px",r.setAttribute("drag-status",l?a?"sub":"normal":"disabled"))},n=()=>{var e=f.dragCol,t=q.value.tooltipMethod;let l="";l=t?""+(t({$table:$,column:e})||""):getI18n("vxe.custom.cstmDragTarget",[e&&"html"!==e.type?e.getTitle():""]),f.dragTipText=l},s=()=>{var e=d.value,t=u.value;e&&(e.style.display=""),t&&(t.style.display="")},ie=e=>{var e=e.currentTarget.parentElement.parentElement.parentElement,t=e.getAttribute("colid"),t=$.getColumnById(t);e.draggable=!0,f.dragCol=t,f.dragGroupField=null,f.dragAggFnCol=null,n(),(0,_dom.addClass)(e,"active--drag-origin")},se=e=>{e=e.currentTarget.parentElement.parentElement.parentElement;s(),e.draggable=!1,f.dragCol=null,f.dragGroupField=null,(f.dragAggFnCol=null,_dom.removeClass)(e,"active--drag-origin")},re=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0),T.prevDragGroupField=null,T.prevDragAggFnColid=null},ne=d=>{let c=W.mouseConfig,m=K.customColumnList,v=r.collectColumn;let p=X.value.immediate;var e=d.currentTarget;let{isCrossDrag:g,isSelfToChildDrag:x,isToChildDrag:h,dragEndMethod:t}=q.value;var l=f.dragCol;let{prevDragCol:o,prevDragGroupField:a,prevDragAggFnColid:i,prevDragPos:_,prevDragToChild:b}=T,C="bottom"===_?1:0;if(a||i)$.handlePivotTableAggregatePanelDragendEvent&&$.handlePivotTableAggregatePanelDragendEvent(d);else if(o&&l&&o!==l){let n=l,u=o;Promise.resolve(!t||t({oldColumn:n,newColumn:u,dragColumn:n,dragPos:_,dragToChild:!!b,offsetIndex:C})).then(a=>{if(a){let e=-1,t=-1,l={},o=(_xeUtils.default.eachTree([n],e=>{l[e.id]=e}),!1);if(p){if(n.parentId&&u.parentId){if(!g)return;if(l[u.id]&&(o=!0,!g||!x))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!g)return}else if(u.parentId){if(!g)return;if(l[u.id]&&(o=!0,!g||!x))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var i,s,r,a=_xeUtils.default.findTree(v,e=>e.id===n.id),a=(o&&g&&x?a&&({items:i,index:r}=a,(s=n.children||[]).forEach(e=>{e.parentId=n.parentId}),i.splice(r,1,...s),n.children=[]):a&&({items:i,index:r,parent:s}=a,i.splice(r,1),s||(e=r)),_xeUtils.default.findTree(v,e=>e.id===u.id));a&&({items:i,index:s,parent:r}=a,g&&h&&b?(n.parentId=u.id,u.children=(u.children||[]).concat([n])):(n.parentId=u.parentId,i.splice(s+C,0,n)),r||(t=s)),_xeUtils.default.eachTree(v,(e,t,l,o,a)=>{a||(e.renderSortNumber=t+1)})}else e=_xeUtils.default.findIndexOf(m,e=>e.id===n.id),m.splice(e,1),t=_xeUtils.default.findIndexOf(m,e=>e.id===u.id),m.splice(t+C,0,n);c&&($.clearSelected&&$.clearSelected(),$.clearCellAreas)&&($.clearCellAreas(),$.clearCopyCellArea()),$.dispatchEvent("column-dragend",{oldColumn:n,newColumn:u,dragColumn:n,dragPos:_,offsetIndex:C,_index:{newIndex:t,oldIndex:e}},d),p&&(K.customColumnList=v.slice(0),$.handleColDragSwapColumn())}}).catch(()=>{})}s(),f.dragCol=null,f.dragGroupField=null,f.dragAggFnCol=null,T.prevDragGroupField=null,T.prevDragAggFnColid=null,e.draggable=!1,e.removeAttribute("drag-pos"),(0,_dom.removeClass)(e,"active--drag-target"),(0,_dom.removeClass)(e,"active--drag-origin")},ue=e=>{var t,l=X.value.immediate,{isCrossDrag:o,isToChildDrag:a}=q.value,i=e.currentTarget,s=(0,_dom.hasControlKey)(e),r=i.getAttribute("colid"),r=$.getColumnById(r),n=f.dragCol;T.prevDragGroupField=null,T.prevDragAggFnColid=null,r&&(o||1===r.level)&&(e.preventDefault(),t=e.clientY-i.getBoundingClientRect().y<i.clientHeight/2?"top":"bottom",!n||n.id===r.id||!o&&1<r.level||!l&&1<r.level||r.renderFixed?c(e,i,!1,t):(T.prevDragToChild=!!(o&&a&&s&&l),T.prevDragCol=r,T.prevDragPos=t,c(e,i,!0,t)))},ve=()=>{var e=f.dragTipText,t=q.value;return(0,_vue.h)("div",{},[(0,_vue.h)("div",{ref:u,class:["vxe-table-custom-popup--drag-line",{"is--guides":t.showGuidesStatus}]}),(0,_vue.h)("div",{ref:d,class:"vxe-table-custom-popup--drag-tip"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-wrapper"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-status"},[(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-normal-status",getIcon().TABLE_DRAG_STATUS_ROW]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-sub-status",getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-group-status",getIcon().TABLE_DRAG_STATUS_AGG_GROUP]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-values-status",getIcon().TABLE_DRAG_STATUS_AGG_VALUES]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-disabled-status",getIcon().TABLE_DRAG_DISABLED]})]),(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-content"},""+(e||""))])])])};(0,_vue.nextTick)(()=>{var e=X.value.mode;R||"modal"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),H||"drawer"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-drawer"]),G||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),z||(0,_log.errLog)("vxe.error.reqComp",["vxe-number-input"]),P||(0,_log.errLog)("vxe.error.reqComp",["vxe-radio-group"])});e={xID:e,props:M,context:t,reactData:f,internalData:T,xeTable:$,getRefMaps:()=>a,getComputeMaps:()=>i,renderVN:()=>{var e=X.value;return(["modal","drawer","popup"].includes(""+e.mode)?()=>{var e=$.xeGrid,t=$.xeGantt;let l=M.customStore,{treeConfig:o,rowGroupConfig:a,aggregateConfig:i,resizable:d}=W,{isCustomStatus:s,customColumnList:r}=K,n=X.value,c=n.immediate;var u=q.value;let{mode:m,modalOptions:v,drawerOptions:p,allowVisible:g,allowSort:N,allowFixed:x,allowResizable:h,checkMethod:_,visibleMethod:b}=n,C=de.value,f=C.maxFixedSize,{minWidth:T,maxWidth:I}=ce.value;var E=Object.assign({},v),V=Object.assign({},p);let A=j.value,L=u.isCrossDrag;u=n.slots||{};let D=u.header,y=u.top,S=u.bottom,k=u.default,F=u.footer,B=[],w=l.isAll,O=l.isIndeterminate,U={$table:$,$grid:e,$gantt:t,columns:r,isAllChecked:w,isAllIndeterminate:O,isCustomStatus:s};_xeUtils.default.eachTree(r,(o,a,e,t,i)=>{if(!b||b({$table:$,column:o})){let e=0,t=0;h&&(a={$table:$,column:o,columnIndex:a,$columnIndex:a,$rowIndex:-1},T&&(e=_xeUtils.default.toNumber(_xeUtils.default.isFunction(T)?T(a):T)),I)&&(t=_xeUtils.default.toNumber(_xeUtils.default.isFunction(I)?I(a):I));var a=o.renderVisible,s=o.halfVisible,r=(0,_utils.formatText)(o.getTitle(),1),n=o.children&&o.children.length;let l=!!_&&!_({$table:$,column:o});var u=!a;B.push((0,_vue.h)("tr",{key:o.id,colid:o.id,class:["vxe-table-custom-popup--row level--"+o.level,{"is--group":n}],onDragstart:re,onDragend:ne,onDragover:ue},[g?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--visible"},[(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":a,"is--indeterminate":s,"is--disabled":l}],title:getI18n("vxe.custom.setting.colVisible"),onClick:e=>{l||le(o,e)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--name"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--name"},[N?L&&c||1===o.level?(0,_vue.h)("div",Object.assign({class:["vxe-table-custom-popup--column-sort-btn",{"is--disabled":l||u||o.renderFixed}],title:getI18n("vxe.custom.setting.sortHelpTip")},l||u||o.renderFixed?{}:{onMousedown:ie,onMouseup:se}),[(0,_vue.h)("i",{class:getIcon().TABLE_CUSTOM_SORT})]):(0,_vue.h)("div",{class:"vxe-table-custom-popup--column-sort-placeholder"}):(0,_vue.createCommentVNode)(),"html"===o.type?(0,_vue.h)("div",{key:"1",class:"vxe-table-custom-popup--title",innerHTML:r}):(0,_vue.h)("div",{key:"0",class:"vxe-table-custom-popup--title",title:r},r)])]),h?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--resizable"},[o.children&&o.children.length||!(_xeUtils.default.isBoolean(o.resizable)?o.resizable:C.resizable||d)?(0,_vue.h)("span","-"):z?(0,_vue.h)(z,{type:"integer",immediate:!1,disabled:l||u,modelValue:o.renderResizeWidth,min:e||void 0,max:t||void 0,"onUpdate:modelValue"(e){e=Math.max(0,Number(e));o.renderResizeWidth=e},onChange(){me(o)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--fixed"},[i?(0,_vue.h)("span","-"):P?(0,_vue.h)(P,{modelValue:o.renderFixed||"",type:"button",size:"mini",disabled:l||u,options:[{label:getI18n("vxe.custom.setting.fixedLeft"),value:"left",disabled:l||u||A},{label:getI18n("vxe.custom.setting.fixedUnset"),value:"",disabled:l||u},{label:getI18n("vxe.custom.setting.fixedRight"),value:"right",disabled:l||u||A}],onChange({label:e,$event:t}){oe(o,e,t)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()]))}});u={default:()=>(0,_vue.h)("div",{ref:Y,class:"vxe-table-custom-popup--body-wrapper"},k?$.callSlot(k,U):[(0,_vue.h)("div",{ref:Z,class:"vxe-table-custom-popup--handle-wrapper"},[y?(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-top"},$.callSlot(y,U)):renderEmptyElement($),(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-wrapper"},[(0,_vue.h)("table",{},[(0,_vue.h)("colgroup",{},[g?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-seq"}):(0,_vue.createCommentVNode)(),(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-title"}),h?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-width"}):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-fixed"}):(0,_vue.createCommentVNode)()]),(0,_vue.h)("thead",{},[(0,_vue.h)("tr",{},[g?(0,_vue.h)("th",{},[(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":w,"is--indeterminate":O}],title:getI18n("vxe.table.allTitle"),onClick:ae},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",O?getIcon().TABLE_CHECKBOX_INDETERMINATE:w?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("th",{},getI18n("vxe.custom.setting.colTitle")),h?(0,_vue.h)("th",{},getI18n("vxe.custom.setting.colResizable")):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("th",{},getI18n("vxe.custom.setting."+(f?"colFixedMax":"colFixed"),[f])):(0,_vue.createCommentVNode)()])]),(0,_vue.h)(_vue.TransitionGroup,{class:"vxe-table-custom--panel-list",tag:"tbody",name:"vxe-table-custom--list"},{default:()=>B})])]),S?(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-bottom"},$.callSlot(S,U)):renderEmptyElement($),ve()]),!o&&(i||a)&&$.getPivotTableAggregatePopupPanel?(0,_vue.h)($.getPivotTableAggregatePopupPanel(),{customStore:l}):renderEmptyElement($)]),footer:()=>F?$.callSlot(F,U):(0,_vue.h)("div",{class:"vxe-table-custom-popup--footer"},[G?(0,_vue.h)(G,{content:n.resetButtonText||getI18n("vxe.custom.cstmRestore"),disabled:!s,onClick:te}):(0,_vue.createCommentVNode)(),c?G?(0,_vue.h)(G,{content:n.closeButtonText||getI18n("vxe.table.customClose"),onClick:Q}):(0,_vue.createCommentVNode)():G?(0,_vue.h)(G,{content:n.cancelButtonText||getI18n("vxe.table.customCancel"),onClick:ee}):(0,_vue.createCommentVNode)(),!c&&G?(0,_vue.h)(G,{status:"primary",content:n.confirmButtonText||getI18n("vxe.custom.cstmConfirm"),onClick:J}):(0,_vue.createCommentVNode)()])};return D&&(u.header=()=>$.callSlot(D,U)),"drawer"===m?H?(0,_vue.h)(H,{key:"drawer",className:["vxe-table-custom-drawer-wrapper","vxe-table--ignore-clear",V.className||""].join(" "),modelValue:l.visible,title:V.title||getI18n("vxe.custom.cstmTitle"),width:V.width||Math.min(880,Math.floor(.6*document.documentElement.clientWidth)),position:V.position,resize:!!V.resize,escClosable:!!V.escClosable,maskClosable:!!V.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){l.visible=e}},u):(0,_vue.createCommentVNode)():R?(0,_vue.h)(R,{key:"modal",className:["vxe-table-custom-modal-wrapper","vxe-table--ignore-clear",E.className||""].join(" "),modelValue:l.visible,title:E.title||getI18n("vxe.custom.cstmTitle"),width:E.width||Math.min(880,document.documentElement.clientWidth),minWidth:E.minWidth||700,height:E.height||Math.min(680,document.documentElement.clientHeight),minHeight:E.minHeight||400,showZoom:E.showZoom,showMaximize:E.showMaximize,showMinimize:E.showMinimize,mask:E.mask,lockView:E.lockView,resize:E.resize,escClosable:!!E.escClosable,maskClosable:!!E.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){l.visible=e}},u):(0,_vue.createCommentVNode)()}:()=>{var e=$.xeGrid,t=$.xeGantt,l=$.props,o=M.customStore,{treeConfig:l,rowGroupConfig:a,aggregateConfig:i}=l,{isCustomStatus:s,customColumnList:r}=K,n=X.value;let d=n.immediate;var u=q.value,c=o.maxHeight;let{checkMethod:m,visibleMethod:v,allowVisible:p,allowSort:g,allowFixed:x,trigger:h,placement:_}=n,b=j.value,C=u.isCrossDrag;var u=n.slots||{},f=u.header,T=u.top,I=u.bottom,E=u.default,u=u.footer;let V=[];var A={},D=o.isAll,y=o.isIndeterminate,e=("hover"===h&&(A.onMouseenter=k,A.onMouseleave=F),{$table:$,$grid:e,$gantt:t,columns:r,isAllChecked:D,isAllIndeterminate:y,isCustomStatus:s});return _xeUtils.default.eachTree(r,(l,e,t,o,a)=>{if(!v||v({$table:$,column:l})){var i=l.renderVisible,s=l.halfVisible,r=l.children&&l.children.length,n=(0,_utils.formatText)(l.getTitle(),1);let t=!!m&&!m({$table:$,column:l});var u=!i;V.push((0,_vue.h)("li",{key:l.id,colid:l.id,class:["vxe-table-custom--option","level--"+l.level,{"is--hidden":t||u,"is--group":r}],onDragstart:re,onDragend:ne,onDragover:ue},[p?(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":i,"is--indeterminate":s,"is--disabled":t}],title:getI18n("vxe.custom.setting.colVisible"),onClick:e=>{t||le(l,e)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:i?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]):(0,_vue.createCommentVNode)(),(0,_vue.h)("div",{class:"vxe-table-custom--name-option"},[g&&(C&&d||1===l.level)?(0,_vue.h)("div",{class:"vxe-table-custom--sort-option"},[(0,_vue.h)("span",Object.assign({class:["vxe-table-custom--sort-btn",{"is--disabled":t||u||l.renderFixed}],title:getI18n("vxe.custom.setting.sortHelpTip")},t||u||l.renderFixed?{}:{onMousedown:ie,onMouseup:se}),[(0,_vue.h)("i",{class:getIcon().TABLE_CUSTOM_SORT})])]):(0,_vue.createCommentVNode)(),"html"===l.type?(0,_vue.h)("div",{key:"1",class:"vxe-table-custom--checkbox-label",innerHTML:n}):(0,_vue.h)("div",{key:"0",class:"vxe-table-custom--checkbox-label"},n)]),!a&&x?(0,_vue.h)("div",{class:"vxe-table-custom--fixed-option"},[G?(0,_vue.h)(G,{mode:"text",icon:"left"===l.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_LEFT,status:"left"===l.renderFixed?"primary":"",disabled:t||u||b&&!l.renderFixed,title:getI18n("left"===l.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedLeft"),onClick:({$event:e})=>{oe(l,"left",e)}}):(0,_vue.createCommentVNode)(),G?(0,_vue.h)(G,{mode:"text",icon:"right"===l.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,status:"right"===l.renderFixed?"primary":"",disabled:t||u||b&&!l.renderFixed,title:getI18n("right"===l.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedRight"),onClick:({$event:e})=>{oe(l,"right",e)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()]))}}),(0,_vue.h)("div",{ref:S,key:"simple",class:["vxe-table-custom-wrapper","placement--"+_,{"is--active":o.visible}],style:c&&!["left","right"].includes(_||"")?{maxHeight:c+"px"}:{}},o.visible?[(0,_vue.h)("div",{ref:Y,class:"vxe-table-custom-simple--body-wrapper"},[!l&&(i||a)&&$.getPivotTableAggregateSimplePanel?(0,_vue.h)($.getPivotTableAggregateSimplePanel(),{customStore:o}):renderEmptyElement($),(0,_vue.h)("div",{ref:Z,class:"vxe-table-custom--handle-wrapper"},[(0,_vue.h)("div",{class:"vxe-table-custom--header"},f?$.callSlot(f,e):[(0,_vue.h)("ul",{class:"vxe-table-custom--panel-list"},[(0,_vue.h)("li",{class:"vxe-table-custom--option"},[p?(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":D,"is--indeterminate":y}],title:getI18n("vxe.table.allTitle"),onClick:ae},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",y?getIcon().TABLE_CHECKBOX_INDETERMINATE:D?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))]):(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.customTitle"))])])]),(0,_vue.h)("div",{class:"vxe-table-custom--body"},[T?(0,_vue.h)("div",{class:"vxe-table-custom--panel-top"},$.callSlot(T,e)):renderEmptyElement($),E?(0,_vue.h)("div",{class:"vxe-table-custom--panel-body"},$.callSlot(E,e)):(0,_vue.h)(_vue.TransitionGroup,Object.assign({class:"vxe-table-custom--panel-list",name:"vxe-table-custom--list",tag:"ul"},A),{default:()=>V}),I?(0,_vue.h)("div",{class:"vxe-table-custom--panel-bottom"},$.callSlot(I,e)):renderEmptyElement($)]),n.showFooter?(0,_vue.h)("div",{class:"vxe-table-custom--footer"},u?$.callSlot(u,e):[(0,_vue.h)("div",{class:"vxe-table-custom--footer-buttons"},[G?(0,_vue.h)(G,{mode:"text",content:n.resetButtonText||getI18n("vxe.table.customRestore"),disabled:!s,onClick:te}):(0,_vue.createCommentVNode)(),d?G?(0,_vue.h)(G,{mode:"text",content:n.closeButtonText||getI18n("vxe.table.customClose"),onClick:Q}):(0,_vue.createCommentVNode)():G?(0,_vue.h)(G,{mode:"text",content:n.cancelButtonText||getI18n("vxe.table.customCancel"),onClick:ee}):(0,_vue.createCommentVNode)(),!d&&G?(0,_vue.h)(G,{mode:"text",status:"primary",content:n.confirmButtonText||getI18n("vxe.table.customConfirm"),onClick:J}):(0,_vue.createCommentVNode)()])]):null]),ve()])]:[])})()}};return(0,_vue.onUnmounted)(()=>{T=createInternalData()}),(0,_vue.provide)("$xeTableCustomPanel",e),e},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.createInternalData=createInternalData,exports.default=void 0;var _vue=require("vue"),_comp=require("../../../ui/src/comp"),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderEmptyElement}=_ui.VxeUI;function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"TableCustomPanel",props:{customStore:{type:Object,default:()=>({})}},setup(M,t){var e=_xeUtils.default.uniqueId();let R=_ui.VxeUI.getComponent("VxeModal"),H=_ui.VxeUI.getComponent("VxeDrawer"),G=_ui.VxeUI.getComponent("VxeButton"),z=_ui.VxeUI.getComponent("VxeNumberInput"),P=_ui.VxeUI.getComponent("VxeRadioGroup"),$=(0,_vue.inject)("$xeTable",{}),{props:W,reactData:K,internalData:r}=$,{computeCustomOpts:X,computeColumnDragOpts:q,computeColumnOpts:de,computeIsMaxFixedColumn:j,computeResizableOpts:ce}=$.getComputeMaps(),S=(0,_vue.ref)(),Y=(0,_vue.ref)(),Z=(0,_vue.ref)(),u=(0,_vue.ref)(),d=(0,_vue.ref)(),f=(0,_vue.reactive)({dragCol:null,dragGroupField:null,dragAggFnCol:null,dragTipText:""}),T=createInternalData(),a={refElem:S,refBodyWrapperElem:Y,refCustomBodyElem:Z,refDragLineElem:u,refDragTipElem:d},i={},k=e=>{var t=M.customStore;t.activeWrapper=!0,$.customOpenEvent(e)},B=e=>{let t=M.customStore;t.activeWrapper=!1,setTimeout(()=>{t.activeBtn||t.activeWrapper||$.customCloseEvent(e)},300)},J=({$event:e})=>{K.isCustomStatus=!0,$.saveCustom(),$.closeCustom(),$.emitCustomEvent("confirm",e)},Q=({$event:e})=>{$.closeCustom(),$.emitCustomEvent("close",e)},ee=({$event:e})=>{$.cancelCustom(),$.closeCustom(),$.emitCustomEvent("cancel",e)},l=e=>{$.resetCustom(!0),$.closeCustom(),$.emitCustomEvent("reset",e)},te=({$event:t})=>{_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&l(t)}):l(t)},o=t=>{var e=K.customColumnList,e=_xeUtils.default.findTree(e,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.renderVisible=e.children.every(e=>e.renderVisible),e.halfVisible=!e.renderVisible&&e.children.some(e=>e.renderVisible||e.halfVisible),o(e))},le=(e,t)=>{let l=!e.renderVisible;X.value.immediate?(_xeUtils.default.eachTree([e],e=>{e.visible=l,e.renderVisible=l,e.halfVisible=!1}),K.isCustomStatus=!0,$.handleCustom(),$.saveCustomStore("update:visible")):_xeUtils.default.eachTree([e],e=>{e.renderVisible=l,e.halfVisible=!1}),o(e),$.checkCustomStatus(),$.dispatchEvent("custom-visible-change",{column:e,checked:l},t)},me=e=>{X.value.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,K.isCustomStatus=!0,$.handleCustom(),$.saveCustomStore("update:width"))},oe=(e,t,l)=>{var o=j.value;let a=null;X.value.immediate?(e.renderFixed===t?(a="",_xeUtils.default.eachTree([e],e=>{e.fixed="",e.renderFixed=""})):o&&!e.renderFixed||(a=t,_xeUtils.default.eachTree([e],e=>{e.fixed=t,e.renderFixed=t})),K.isCustomStatus=!0,$.handleCustom(),$.saveCustomStore("update:fixed")):e.renderFixed===t?(a="",_xeUtils.default.eachTree([e],e=>{e.renderFixed=""})):o&&!e.renderFixed||(a=t,_xeUtils.default.eachTree([e],e=>{e.renderFixed=t})),null!==a&&$.dispatchEvent("custom-fixed-change",{column:e,fixed:a},l)},ae=e=>{var t=K.customStore,t=!t.isAll;$.toggleCustomAllCheckbox(),$.dispatchEvent("custom-visible-all",{checked:t},e)},c=(e,t,l,o)=>{var a,i,s,r,n=Y.value;n&&(r=Z.value)&&(a=T.prevDragToChild,i=n.getBoundingClientRect(),r=r.getBoundingClientRect(),s=u.value,t?s&&(l?(t=t.getBoundingClientRect(),s.style.display="block",s.style.left=Math.max(0,r.x-i.x)+"px",s.style.top=Math.max(1,t.y+n.scrollTop-i.y)+"px",s.style.height=t.height+"px",s.style.width=t.width+"px",s.setAttribute("drag-pos",o),s.setAttribute("drag-to-child",a?"y":"n")):s.style.display=""):s&&(s.style.display="node"),r=d.value)&&(r.style.display="block",r.style.top=Math.min(n.clientHeight+n.scrollTop-r.clientHeight,e.clientY+n.scrollTop-i.y)+"px",r.style.left=Math.min(n.clientWidth+n.scrollLeft-r.clientWidth,e.clientX+n.scrollLeft-i.x)+"px",r.setAttribute("drag-status",l?a?"sub":"normal":"disabled"))},n=()=>{var e=f.dragCol,t=q.value.tooltipMethod;let l="";l=t?""+(t({$table:$,column:e})||""):getI18n("vxe.custom.cstmDragTarget",[e&&"html"!==e.type?e.getTitle():""]),f.dragTipText=l},s=()=>{var e=d.value,t=u.value;e&&(e.style.display=""),t&&(t.style.display="")},ie=e=>{var e=e.currentTarget.parentElement.parentElement.parentElement,t=e.getAttribute("colid"),t=$.getColumnById(t);e.draggable=!0,f.dragCol=t,f.dragGroupField=null,f.dragAggFnCol=null,n(),(0,_dom.addClass)(e,"active--drag-origin")},se=e=>{e=e.currentTarget.parentElement.parentElement.parentElement;s(),e.draggable=!1,f.dragCol=null,f.dragGroupField=null,(f.dragAggFnCol=null,_dom.removeClass)(e,"active--drag-origin")},re=e=>{e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0),T.prevDragGroupField=null,T.prevDragAggFnColid=null},ne=d=>{let c=W.mouseConfig,m=K.customColumnList,v=r.collectColumn;let p=X.value.immediate;var e=d.currentTarget;let{isCrossDrag:g,isSelfToChildDrag:x,isToChildDrag:h,dragEndMethod:t}=q.value;var l=f.dragCol;let{prevDragCol:o,prevDragGroupField:a,prevDragAggFnColid:i,prevDragPos:_,prevDragToChild:b}=T,C="bottom"===_?1:0;if(a||i)$.handlePivotTableAggregatePanelDragendEvent&&$.handlePivotTableAggregatePanelDragendEvent(d);else if(o&&l&&o!==l){let n=l,u=o;Promise.resolve(!t||t({oldColumn:n,newColumn:u,dragColumn:n,dragPos:_,dragToChild:!!b,offsetIndex:C})).then(a=>{if(a){let e=-1,t=-1,l={},o=(_xeUtils.default.eachTree([n],e=>{l[e.id]=e}),!1);if(p){if(n.parentId&&u.parentId){if(!g)return;if(l[u.id]&&(o=!0,!g||!x))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!g)return}else if(u.parentId){if(!g)return;if(l[u.id]&&(o=!0,!g||!x))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var i,s,r,a=_xeUtils.default.findTree(v,e=>e.id===n.id),a=(o&&g&&x?a&&({items:i,index:r}=a,(s=n.children||[]).forEach(e=>{e.parentId=n.parentId}),i.splice(r,1,...s),n.children=[]):a&&({items:i,index:r,parent:s}=a,i.splice(r,1),s||(e=r)),_xeUtils.default.findTree(v,e=>e.id===u.id));a&&({items:i,index:s,parent:r}=a,g&&h&&b?(n.parentId=u.id,u.children=(u.children||[]).concat([n])):(n.parentId=u.parentId,i.splice(s+C,0,n)),r||(t=s)),_xeUtils.default.eachTree(v,(e,t,l,o,a)=>{a||(e.renderSortNumber=t+1)})}else e=_xeUtils.default.findIndexOf(m,e=>e.id===n.id),m.splice(e,1),t=_xeUtils.default.findIndexOf(m,e=>e.id===u.id),m.splice(t+C,0,n);c&&($.clearSelected&&$.clearSelected(),$.clearCellAreas)&&($.clearCellAreas(),$.clearCopyCellArea()),$.dispatchEvent("column-dragend",{oldColumn:n,newColumn:u,dragColumn:n,dragPos:_,offsetIndex:C,_index:{newIndex:t,oldIndex:e}},d),p&&(K.customColumnList=v.slice(0),$.handleColDragSwapColumn())}}).catch(()=>{})}s(),f.dragCol=null,f.dragGroupField=null,f.dragAggFnCol=null,T.prevDragGroupField=null,T.prevDragAggFnColid=null,e.draggable=!1,e.removeAttribute("drag-pos"),(0,_dom.removeClass)(e,"active--drag-target"),(0,_dom.removeClass)(e,"active--drag-origin")},ue=e=>{var t,l=X.value.immediate,{isCrossDrag:o,isToChildDrag:a}=q.value,i=e.currentTarget,s=(0,_dom.hasControlKey)(e),r=i.getAttribute("colid"),r=$.getColumnById(r),n=f.dragCol;T.prevDragGroupField=null,T.prevDragAggFnColid=null,r&&(o||1===r.level)&&(e.preventDefault(),t=e.clientY-i.getBoundingClientRect().y<i.clientHeight/2?"top":"bottom",!n||n.id===r.id||!o&&1<r.level||!l&&1<r.level?c(e,i,!1,t):(T.prevDragToChild=!!(o&&a&&s&&l),T.prevDragCol=r,T.prevDragPos=t,c(e,i,!0,t)))},ve=()=>{var e=f.dragTipText,t=q.value;return(0,_vue.h)("div",{},[(0,_vue.h)("div",{ref:u,class:["vxe-table-custom-popup--drag-line",{"is--guides":t.showGuidesStatus}]}),(0,_vue.h)("div",{ref:d,class:"vxe-table-custom-popup--drag-tip"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-wrapper"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-status"},[(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-normal-status",getIcon().TABLE_DRAG_STATUS_ROW]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-sub-status",getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-group-status",getIcon().TABLE_DRAG_STATUS_AGG_GROUP]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-values-status",getIcon().TABLE_DRAG_STATUS_AGG_VALUES]}),(0,_vue.h)("span",{class:["vxe-table-custom-popup--drag-tip-disabled-status",getIcon().TABLE_DRAG_DISABLED]})]),(0,_vue.h)("div",{class:"vxe-table-custom-popup--drag-tip-content"},""+(e||""))])])])};(0,_vue.nextTick)(()=>{var e=X.value.mode;R||"modal"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),H||"drawer"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-drawer"]),G||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),z||(0,_log.errLog)("vxe.error.reqComp",["vxe-number-input"]),P||(0,_log.errLog)("vxe.error.reqComp",["vxe-radio-group"])});e={xID:e,props:M,context:t,reactData:f,internalData:T,xeTable:$,getRefMaps:()=>a,getComputeMaps:()=>i,renderVN:()=>{var e=X.value;return(["modal","drawer","popup"].includes(""+e.mode)?()=>{var e=$.xeGrid,t=$.xeGantt;let l=M.customStore,{treeConfig:o,rowGroupConfig:a,aggregateConfig:i,resizable:d}=W,{isCustomStatus:s,customColumnList:r}=K,n=X.value,c=n.immediate;var u=q.value;let{mode:m,modalOptions:v,drawerOptions:p,allowVisible:g,allowSort:N,allowFixed:x,allowResizable:h,checkMethod:_,visibleMethod:b}=n,C=de.value,f=C.maxFixedSize,{minWidth:T,maxWidth:I}=ce.value;var E=Object.assign({},v),V=Object.assign({},p);let A=j.value,L=u.isCrossDrag;u=n.slots||{};let D=u.header,y=u.top,S=u.bottom,k=u.default,B=u.footer,w=[],O=l.isAll,F=l.isIndeterminate,U={$table:$,$grid:e,$gantt:t,columns:r,isAllChecked:O,isAllIndeterminate:F,isCustomStatus:s};_xeUtils.default.eachTree(r,(o,a,e,t,i)=>{if(!b||b({$table:$,column:o})){let e=0,t=0;h&&(a={$table:$,column:o,columnIndex:a,$columnIndex:a,$rowIndex:-1},T&&(e=_xeUtils.default.toNumber(_xeUtils.default.isFunction(T)?T(a):T)),I)&&(t=_xeUtils.default.toNumber(_xeUtils.default.isFunction(I)?I(a):I));var a=o.renderVisible,s=o.halfVisible,r=(0,_utils.formatText)(o.getTitle(),1),n=o.children&&o.children.length;let l=!!_&&!_({$table:$,column:o});var u=!a;w.push((0,_vue.h)("tr",{key:o.id,colid:o.id,class:["vxe-table-custom-popup--row level--"+o.level,{"is--group":n}],onDragstart:re,onDragend:ne,onDragover:ue},[g?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--visible"},[(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":a,"is--indeterminate":s,"is--disabled":l}],title:getI18n("vxe.custom.setting.colVisible"),onClick:e=>{l||le(o,e)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--name"},[(0,_vue.h)("div",{class:"vxe-table-custom-popup--name"},[N?L&&c||1===o.level?(0,_vue.h)("div",Object.assign({class:["vxe-table-custom-popup--column-sort-btn",{"is--disabled":l||u}],title:getI18n("vxe.custom.setting.sortHelpTip")},l||u?{}:{onMousedown:ie,onMouseup:se}),[(0,_vue.h)("i",{class:getIcon().TABLE_CUSTOM_SORT})]):(0,_vue.h)("div",{class:"vxe-table-custom-popup--column-sort-placeholder"}):(0,_vue.createCommentVNode)(),"html"===o.type?(0,_vue.h)("div",{key:"1",class:"vxe-table-custom-popup--title",innerHTML:r}):(0,_vue.h)("div",{key:"0",class:"vxe-table-custom-popup--title",title:r},r)])]),h?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--resizable"},[o.children&&o.children.length||!(_xeUtils.default.isBoolean(o.resizable)?o.resizable:C.resizable||d)?(0,_vue.h)("span","-"):z?(0,_vue.h)(z,{type:"integer",immediate:!1,disabled:l||u,modelValue:o.renderResizeWidth,min:e||void 0,max:t||void 0,"onUpdate:modelValue"(e){e=Math.max(0,Number(e));o.renderResizeWidth=e},onChange(){me(o)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("td",{class:"vxe-table-custom-popup--column-item col--fixed"},[i?(0,_vue.h)("span","-"):P?(0,_vue.h)(P,{modelValue:o.renderFixed||"",type:"button",size:"mini",disabled:l||u,options:[{label:getI18n("vxe.custom.setting.fixedLeft"),value:"left",disabled:l||u||A},{label:getI18n("vxe.custom.setting.fixedUnset"),value:"",disabled:l||u},{label:getI18n("vxe.custom.setting.fixedRight"),value:"right",disabled:l||u||A}],onChange({label:e,$event:t}){oe(o,e,t)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()]))}});u={default:()=>(0,_vue.h)("div",{ref:Y,class:"vxe-table-custom-popup--body-wrapper"},k?$.callSlot(k,U):[(0,_vue.h)("div",{ref:Z,class:"vxe-table-custom-popup--handle-wrapper"},[y?(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-top"},$.callSlot(y,U)):renderEmptyElement($),(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-wrapper"},[(0,_vue.h)("table",{},[(0,_vue.h)("colgroup",{},[g?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-seq"}):(0,_vue.createCommentVNode)(),(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-title"}),h?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-width"}):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("col",{class:"vxe-table-custom-popup--table-col-fixed"}):(0,_vue.createCommentVNode)()]),(0,_vue.h)("thead",{},[(0,_vue.h)("tr",{},[g?(0,_vue.h)("th",{},[(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":O,"is--indeterminate":F}],title:getI18n("vxe.table.allTitle"),onClick:ae},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",F?getIcon().TABLE_CHECKBOX_INDETERMINATE:O?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))])]):(0,_vue.createCommentVNode)(),(0,_vue.h)("th",{},getI18n("vxe.custom.setting.colTitle")),h?(0,_vue.h)("th",{},getI18n("vxe.custom.setting.colResizable")):(0,_vue.createCommentVNode)(),x?(0,_vue.h)("th",{},getI18n("vxe.custom.setting."+(f?"colFixedMax":"colFixed"),[f])):(0,_vue.createCommentVNode)()])]),(0,_vue.h)(_vue.TransitionGroup,{class:"vxe-table-custom--panel-list",tag:"tbody",name:"vxe-table-custom--list"},{default:()=>w})])]),S?(0,_vue.h)("div",{class:"vxe-table-custom-popup--table-bottom"},$.callSlot(S,U)):renderEmptyElement($),ve()]),!o&&(i||a)&&$.getPivotTableAggregatePopupPanel?(0,_vue.h)($.getPivotTableAggregatePopupPanel(),{customStore:l}):renderEmptyElement($)]),footer:()=>B?$.callSlot(B,U):(0,_vue.h)("div",{class:"vxe-table-custom-popup--footer"},[G?(0,_vue.h)(G,{content:n.resetButtonText||getI18n("vxe.custom.cstmRestore"),disabled:!s,onClick:te}):(0,_vue.createCommentVNode)(),c?G?(0,_vue.h)(G,{content:n.closeButtonText||getI18n("vxe.table.customClose"),onClick:Q}):(0,_vue.createCommentVNode)():G?(0,_vue.h)(G,{content:n.cancelButtonText||getI18n("vxe.table.customCancel"),onClick:ee}):(0,_vue.createCommentVNode)(),!c&&G?(0,_vue.h)(G,{status:"primary",content:n.confirmButtonText||getI18n("vxe.custom.cstmConfirm"),onClick:J}):(0,_vue.createCommentVNode)()])};return D&&(u.header=()=>$.callSlot(D,U)),"drawer"===m?H?(0,_vue.h)(H,{key:"drawer",className:["vxe-table-custom-drawer-wrapper","vxe-table--ignore-clear",V.className||""].join(" "),modelValue:l.visible,title:V.title||getI18n("vxe.custom.cstmTitle"),width:V.width||Math.min(880,Math.floor(.6*document.documentElement.clientWidth)),position:V.position,resize:!!V.resize,escClosable:!!V.escClosable,maskClosable:!!V.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){l.visible=e}},u):(0,_vue.createCommentVNode)():R?(0,_vue.h)(R,{key:"modal",className:["vxe-table-custom-modal-wrapper","vxe-table--ignore-clear",E.className||""].join(" "),modelValue:l.visible,title:E.title||getI18n("vxe.custom.cstmTitle"),width:E.width||Math.min(880,document.documentElement.clientWidth),minWidth:E.minWidth||700,height:E.height||Math.min(680,document.documentElement.clientHeight),minHeight:E.minHeight||400,showZoom:E.showZoom,showMaximize:E.showMaximize,showMinimize:E.showMinimize,mask:E.mask,lockView:E.lockView,resize:E.resize,escClosable:!!E.escClosable,maskClosable:!!E.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){l.visible=e}},u):(0,_vue.createCommentVNode)()}:()=>{var e=$.xeGrid,t=$.xeGantt,l=$.props,o=M.customStore,{treeConfig:l,rowGroupConfig:a,aggregateConfig:i}=l,{isCustomStatus:s,customColumnList:r}=K,n=X.value;let d=n.immediate;var u=q.value,c=o.maxHeight;let{checkMethod:m,visibleMethod:v,allowVisible:p,allowSort:g,allowFixed:x,trigger:h,placement:_}=n,b=j.value,C=u.isCrossDrag;var u=n.slots||{},f=u.header,T=u.top,I=u.bottom,E=u.default,u=u.footer;let V=[];var A={},D=o.isAll,y=o.isIndeterminate,e=("hover"===h&&(A.onMouseenter=k,A.onMouseleave=B),{$table:$,$grid:e,$gantt:t,columns:r,isAllChecked:D,isAllIndeterminate:y,isCustomStatus:s});return _xeUtils.default.eachTree(r,(l,e,t,o,a)=>{if(!v||v({$table:$,column:l})){var i=l.renderVisible,s=l.halfVisible,r=l.children&&l.children.length,n=(0,_utils.formatText)(l.getTitle(),1);let t=!!m&&!m({$table:$,column:l});var u=!i;V.push((0,_vue.h)("li",{key:l.id,colid:l.id,class:["vxe-table-custom--option","level--"+l.level,{"is--hidden":t||u,"is--group":r}],onDragstart:re,onDragend:ne,onDragover:ue},[p?(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":i,"is--indeterminate":s,"is--disabled":t}],title:getI18n("vxe.custom.setting.colVisible"),onClick:e=>{t||le(l,e)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:i?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]):(0,_vue.createCommentVNode)(),(0,_vue.h)("div",{class:"vxe-table-custom--name-option"},[g&&(C&&d||1===l.level)?(0,_vue.h)("div",{class:"vxe-table-custom--sort-option"},[(0,_vue.h)("span",Object.assign({class:["vxe-table-custom--sort-btn",{"is--disabled":t||u}],title:getI18n("vxe.custom.setting.sortHelpTip")},t||u?{}:{onMousedown:ie,onMouseup:se}),[(0,_vue.h)("i",{class:getIcon().TABLE_CUSTOM_SORT})])]):(0,_vue.createCommentVNode)(),"html"===l.type?(0,_vue.h)("div",{key:"1",class:"vxe-table-custom--checkbox-label",innerHTML:n}):(0,_vue.h)("div",{key:"0",class:"vxe-table-custom--checkbox-label"},n)]),!a&&x?(0,_vue.h)("div",{class:"vxe-table-custom--fixed-option"},[G?(0,_vue.h)(G,{mode:"text",icon:"left"===l.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_LEFT,status:"left"===l.renderFixed?"primary":"",disabled:t||u||b&&!l.renderFixed,title:getI18n("left"===l.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedLeft"),onClick:({$event:e})=>{oe(l,"left",e)}}):(0,_vue.createCommentVNode)(),G?(0,_vue.h)(G,{mode:"text",icon:"right"===l.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,status:"right"===l.renderFixed?"primary":"",disabled:t||u||b&&!l.renderFixed,title:getI18n("right"===l.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedRight"),onClick:({$event:e})=>{oe(l,"right",e)}}):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()]))}}),(0,_vue.h)("div",{ref:S,key:"simple",class:["vxe-table-custom-wrapper","placement--"+_,{"is--active":o.visible}],style:c&&!["left","right"].includes(_||"")?{maxHeight:c+"px"}:{}},o.visible?[(0,_vue.h)("div",{ref:Y,class:"vxe-table-custom-simple--body-wrapper"},[!l&&(i||a)&&$.getPivotTableAggregateSimplePanel?(0,_vue.h)($.getPivotTableAggregateSimplePanel(),{customStore:o}):renderEmptyElement($),(0,_vue.h)("div",{ref:Z,class:"vxe-table-custom--handle-wrapper"},[(0,_vue.h)("div",{class:"vxe-table-custom--header"},f?$.callSlot(f,e):[(0,_vue.h)("ul",{class:"vxe-table-custom--panel-list"},[(0,_vue.h)("li",{class:"vxe-table-custom--option"},[p?(0,_vue.h)("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":D,"is--indeterminate":y}],title:getI18n("vxe.table.allTitle"),onClick:ae},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",y?getIcon().TABLE_CHECKBOX_INDETERMINATE:D?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))]):(0,_vue.h)("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.customTitle"))])])]),(0,_vue.h)("div",{class:"vxe-table-custom--body"},[T?(0,_vue.h)("div",{class:"vxe-table-custom--panel-top"},$.callSlot(T,e)):renderEmptyElement($),E?(0,_vue.h)("div",{class:"vxe-table-custom--panel-body"},$.callSlot(E,e)):(0,_vue.h)(_vue.TransitionGroup,Object.assign({class:"vxe-table-custom--panel-list",name:"vxe-table-custom--list",tag:"ul"},A),{default:()=>V}),I?(0,_vue.h)("div",{class:"vxe-table-custom--panel-bottom"},$.callSlot(I,e)):renderEmptyElement($)]),n.showFooter?(0,_vue.h)("div",{class:"vxe-table-custom--footer"},u?$.callSlot(u,e):[(0,_vue.h)("div",{class:"vxe-table-custom--footer-buttons"},[G?(0,_vue.h)(G,{mode:"text",content:n.resetButtonText||getI18n("vxe.table.customRestore"),disabled:!s,onClick:te}):(0,_vue.createCommentVNode)(),d?G?(0,_vue.h)(G,{mode:"text",content:n.closeButtonText||getI18n("vxe.table.customClose"),onClick:Q}):(0,_vue.createCommentVNode)():G?(0,_vue.h)(G,{mode:"text",content:n.cancelButtonText||getI18n("vxe.table.customCancel"),onClick:ee}):(0,_vue.createCommentVNode)(),!d&&G?(0,_vue.h)(G,{mode:"text",status:"primary",content:n.confirmButtonText||getI18n("vxe.table.customConfirm"),onClick:J}):(0,_vue.createCommentVNode)()])]):null]),ve()])]:[])})()}};return(0,_vue.onUnmounted)(()=>{T=createInternalData()}),(0,_vue.provide)("$xeTableCustomPanel",e),e},render(){return this.renderVN()}});
@@ -15,6 +15,24 @@ const {
15
15
  renderEmptyElement
16
16
  } = _ui.VxeUI;
17
17
  const renderType = 'header';
18
+ function getColumnFirstChild(column) {
19
+ const {
20
+ children
21
+ } = column;
22
+ if (children && children.length) {
23
+ return getColumnFirstChild(children[0]);
24
+ }
25
+ return column;
26
+ }
27
+ function getColumnLastChild(column) {
28
+ const {
29
+ children
30
+ } = column;
31
+ if (children && children.length) {
32
+ return getColumnLastChild(children[children.length - 1]);
33
+ }
34
+ return column;
35
+ }
18
36
  var _default = exports.default = (0, _comp.defineVxeComponent)({
19
37
  name: 'VxeTableHeader',
20
38
  props: {
@@ -239,6 +257,17 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
239
257
  } else {
240
258
  tcStyle.minHeight = `${currCellHeight}px`;
241
259
  }
260
+ if (isColGroup && !isLastRow) {
261
+ const firstCol = getColumnFirstChild(column);
262
+ const lastCol = getColumnLastChild(column);
263
+ if (firstCol && lastCol && firstCol.id !== lastCol.id) {
264
+ const firstColRest = fullColumnIdData[firstCol.id];
265
+ const lastColRest = fullColumnIdData[lastCol.id];
266
+ if (firstColRest && lastColRest) {
267
+ tcStyle.width = `${lastColRest.oLeft - firstColRest.oLeft + lastCol.renderWidth}px`;
268
+ }
269
+ }
270
+ }
242
271
  return (0, _vue.h)('th', Object.assign(Object.assign(Object.assign({
243
272
  class: ['vxe-table--column vxe-header--column', colid, fixedHiddenColumn ? 'fixed--hidden' : 'fixed--visible', {
244
273
  [`col--${headAlign}`]: headAlign,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="header";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){let ue=(0,_vue.inject)("$xeTable",{}),{xID:_,props:b,reactData:C,internalData:w}=ue,{computeColumnOpts:a,computeColumnDragOpts:r,computeCellOpts:t,computeMouseOpts:y,computeHeaderCellOpts:n,computeDefaultRowHeight:i,computeVirtualXOpts:o}=ue.getComputeMaps(),D=(0,_vue.ref)([]),H=(0,_vue.ref)(),E=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),O=(0,_vue.ref)(),T=(0,_vue.ref)(),d=(0,_vue.ref)(),u=()=>{var e=b.showCustomHeader,{collectColumn:l,visibleColumn:a}=w,r=f.tableGroupColumn,t=C.isGroup;let n=t?(0,_util.convertHeaderColumnToRows)(r):[],i=[];e&&1<n.length&&(i=(0,_util.convertHeaderToGridRows)(n),n=i),D.value=n,ue.dispatchEvent("columns-change",{visibleColgroups:i,collectColumn:l,visibleColumn:a},null)},I=(E,S,e,M,O)=>{let T=ue.xeGrid,I=ue.xeGantt,k=f.fixedType,{resizable:R,columnKey:U,showCustomHeader:$,headerCellClassName:z,headerCellStyle:q,showHeaderOverflow:A,headerAlign:F,align:G,mouseConfig:X}=b,{currentColumn:j,dragCol:L,scrollXLoad:N,scrollYLoad:V,overflowX:W,mergeHeadFlag:B,tableColumn:K}=C,{fullColumnIdData:P,scrollXStore:Y,mergeHeaderList:J,mergeHeaderCellMaps:Q}=w,Z=o.value,ee=a.value,le=r.value,ae=t.value;var l=i.value;let re=n.value,te=(0,_util.getCalcHeight)(re.height)||l,{disabledMethod:ne,isCrossDrag:oe,isPeerDrag:de}=le,ie=M===e.length-1;return O.map((e,l)=>{var{type:a,showHeaderOverflow:r,headerAlign:t,align:n,filters:i,headerClassName:o,editRender:d,cellRender:u}=e,s=e.id,c=P[s]||{},d=d||u,u=d?renderer.get(d.name):null,d=e.children&&e.children.length,p=W&&!d&&(k?e.fixed!==k:!!e.fixed),v=(_xeUtils.default.isBoolean(re.padding)?re:ae).padding,r=_xeUtils.default.eqNull(r)?A:r,t=t||(u?u.tableHeaderCellAlign:"")||F||n||(u?u.tableCellAlign:"")||G,n="ellipsis"===r,u="title"===r,r=!0===r||"tooltip"===r,x=u||r||n;let h=!1,g=null;i&&(g=i[0],h=i.some(e=>e.checked));var m=c.index,c=c._index;let f={$table:ue,$grid:T,$gantt:I,$rowIndex:M,column:e,columnIndex:m,$columnIndex:l,_columnIndex:c,firstFilterOption:g,fixed:k,type:renderType,isHidden:p,hasFilter:h};m={colid:s};let _=!1;if($||(m.colspan=1<e.colSpan?e.colSpan:null,m.rowspan=1<e.rowSpan?e.rowSpan:null),B&&J.length&&($||ie)){var b=Q[M+":"+($?l:c)];if(b){var{rowspan:b,colspan:C}=b;if(!b||!C)return null;1<b&&(_=!0,m.rowspan=b),1<C&&(_=!0,m.colspan=C)}}b={onClick:e=>ue.triggerHeaderCellClickEvent(e,f),onDblclick:e=>ue.triggerHeaderCellDblclickEvent(e,f)},C=ee.drag&&"cell"===le.trigger;let w=!1;C&&(w=!(!ne||!ne(f))),(X||C)&&(b.onMousedown=e=>ue.triggerHeaderCellMousedownEvent(e,f)),ee.drag&&(b.onDragstart=ue.handleHeaderCellDragDragstartEvent,b.onDragend=ue.handleHeaderCellDragDragendEvent,b.onDragover=ue.handleHeaderCellDragDragoverEvent,C)&&(b.onMouseup=ue.handleHeaderCellDragMouseupEvent);var C=l===O.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:ee.resizable||R,D=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let H=!1;!S||!W||E||_||L&&L.id===s||N&&10<K.length&&!e.fixed&&!Z.immediate&&(c<Y.visibleStartIndex-Y.preloadSize||c>Y.visibleEndIndex+Y.preloadSize)&&(H=!0);c={};return x?c.height=te+"px":c.minHeight=te+"px",(0,_vue.h)("th",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-header--column",s,p?"fixed--hidden":"fixed--visible",{["col--"+t]:t,["col--"+a]:a,"col--last":C,"col--fixed":e.fixed,"col--group":d,"col--ellipsis":x,"fixed--width":!D,"is--padding":v,"is--sortable":e.sortable,"col--filter":!!i,"is--filter-active":h,"is--drag-active":ee.drag&&!e.fixed&&!w&&(oe||de||!e.parentId),"is--drag-disabled":ee.drag&&w,"col--current":j===e},o?_xeUtils.default.isFunction(o)?o(f):o:"",z?_xeUtils.default.isFunction(z)?z(f):z:""],style:q?_xeUtils.default.isFunction(q)?q(f):q:null},m),b),{key:$?""+s+l:U||N||V||ee.useKey||ee.drag||d?s:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":u,"c--tooltip":r,"c--ellipsis":n}],style:c},H||S&&p?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(f))]),p||!y||$&&!ie?renderEmptyElement(ue):(0,_vue.h)("div",{class:"vxe-cell--col-resizable",onMousedown:e=>ue.handleColResizeMousedownEvent(e,k,f),onDblclick:e=>ue.handleColResizeDblclickEvent(e,f)})])})};return(0,_vue.watch)(()=>f.tableColumn,u),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f.fixedType,l=ue.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=H,l[e+"scroll"]=E,l[e+"table"]=S,l[e+"colgroup"]=M,l[e+"list"]=O,l[e+"xSpace"]=T,l[e+"repair"]=d,u()})}),(0,_vue.onUnmounted)(()=>{var e=f.fixedType,l=ue.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:a}=f;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:n,footerSpanMethod:i}=b,{isGroup:o,isColLoading:d,overflowX:u,scrollXLoad:s,dragCol:c}=C,{visibleColumn:p,fullColumnIdData:v}=w,x=y.value;let h=D.value||[],g=a,m=!1;return o?g=p:(s&&t&&(n||i||(m=!0)),m&&(d||!l&&u)||(g=p),l&&m&&(g=e||[]),h=[g]),l||o||s&&c&&2<g.length&&(t=v[c.id])&&(n=t._index,i=g[0],d=g[g.length-1],u=v[i.id],p=v[d.id],u)&&p&&(s=u._index,t=p._index,n<s?(g=[c].concat(g),h=[[c].concat(h[0])].concat(h.slice(1))):t<n&&(g=g.concat([c]),h=[h[0].concat([c])].concat(h.slice(1)))),(0,_vue.h)("div",{ref:H,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:_},[(0,_vue.h)("div",{ref:E,class:"vxe-table--header-inner-wrapper",onScroll(e){ue.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(ue):(0,_vue.h)("div",{ref:T,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:S,class:"vxe-table--header",xid:_,cellspacing:0,cellpadding:0,border:0,xvm:m?"1":null},[(0,_vue.h)("colgroup",{ref:M},g.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("thead",{ref:O},((r,t,n)=>{let i=f.fixedType,{headerRowClassName:o,headerRowStyle:d}=b;return n.map((e,l)=>{var a={$table:ue,$rowIndex:l,fixed:i,type:renderType};return(0,_vue.h)("tr",{key:l,class:["vxe-header--row",o?_xeUtils.default.isFunction(o)?o(a):o:""],style:d?_xeUtils.default.isFunction(d)?d(a):d:null},I(r,t,n,l,e))})})(o,m,h))]),r&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(ue)])])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="header";function getColumnFirstChild(e){var l=e.children;return l&&l.length?getColumnFirstChild(l[0]):e}function getColumnLastChild(e){var l=e.children;return l&&l.length?getColumnLastChild(l[l.length-1]):e}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){let pe=(0,_vue.inject)("$xeTable",{}),{xID:C,props:_,reactData:b,internalData:w}=pe,{computeColumnOpts:a,computeColumnDragOpts:r,computeCellOpts:t,computeMouseOpts:y,computeHeaderCellOpts:n,computeDefaultRowHeight:i,computeVirtualXOpts:o}=pe.getComputeMaps(),D=(0,_vue.ref)([]),H=(0,_vue.ref)(),E=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),O=(0,_vue.ref)(),T=(0,_vue.ref)(),d=(0,_vue.ref)(),u=()=>{var e=_.showCustomHeader,{collectColumn:l,visibleColumn:a}=w,r=f.tableGroupColumn,t=b.isGroup;let n=t?(0,_util.convertHeaderColumnToRows)(r):[],i=[];e&&1<n.length&&(i=(0,_util.convertHeaderToGridRows)(n),n=i),D.value=n,pe.dispatchEvent("columns-change",{visibleColgroups:i,collectColumn:l,visibleColumn:a},null)},I=(O,T,e,I,k)=>{let F=pe.xeGrid,R=pe.xeGantt,U=f.fixedType,{resizable:$,columnKey:z,showCustomHeader:L,headerCellClassName:q,headerCellStyle:A,showHeaderOverflow:G,headerAlign:X,align:j,mouseConfig:N}=_,{currentColumn:V,dragCol:W,scrollXLoad:B,scrollYLoad:K,overflowX:P,mergeHeadFlag:Y,tableColumn:J}=b,{fullColumnIdData:Q,scrollXStore:Z,mergeHeaderList:ee,mergeHeaderCellMaps:le}=w,ae=o.value,re=a.value,te=r.value,ne=t.value;var l=i.value;let ie=n.value,oe=(0,_util.getCalcHeight)(ie.height)||l,{disabledMethod:de,isCrossDrag:se,isPeerDrag:ce}=te,ue=I===e.length-1;return k.map((e,l)=>{var{type:a,showHeaderOverflow:r,headerAlign:t,align:n,filters:i,headerClassName:o,editRender:d,cellRender:u}=e,s=e.id,c=Q[s]||{},d=d||u,u=d?renderer.get(d.name):null,d=e.children&&e.children.length,p=P&&!d&&(U?e.fixed!==U:!!e.fixed),v=(_xeUtils.default.isBoolean(ie.padding)?ie:ne).padding,r=_xeUtils.default.eqNull(r)?G:r,t=t||(u?u.tableHeaderCellAlign:"")||X||n||(u?u.tableCellAlign:"")||j,n="ellipsis"===r,u="title"===r,r=!0===r||"tooltip"===r,h=u||r||n;let g=!1,m=null;i&&(m=i[0],g=i.some(e=>e.checked));var x=c.index,c=c._index;let f={$table:pe,$grid:F,$gantt:R,$rowIndex:I,column:e,columnIndex:x,$columnIndex:l,_columnIndex:c,firstFilterOption:m,fixed:U,type:renderType,isHidden:p,hasFilter:g};x={colid:s};let C=!1;if(L||(x.colspan=1<e.colSpan?e.colSpan:null,x.rowspan=1<e.rowSpan?e.rowSpan:null),Y&&ee.length&&(L||ue)){var _=le[I+":"+(L?l:c)];if(_){var{rowspan:_,colspan:b}=_;if(!_||!b)return null;1<_&&(C=!0,x.rowspan=_),1<b&&(C=!0,x.colspan=b)}}_={onClick:e=>pe.triggerHeaderCellClickEvent(e,f),onDblclick:e=>pe.triggerHeaderCellDblclickEvent(e,f)},b=re.drag&&"cell"===te.trigger;let w=!1;b&&(w=!(!de||!de(f))),(N||b)&&(_.onMousedown=e=>pe.triggerHeaderCellMousedownEvent(e,f)),re.drag&&(_.onDragstart=pe.handleHeaderCellDragDragstartEvent,_.onDragend=pe.handleHeaderCellDragDragendEvent,_.onDragover=pe.handleHeaderCellDragDragoverEvent,b)&&(_.onMouseup=pe.handleHeaderCellDragMouseupEvent);var b=l===k.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:re.resizable||$,D=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let H=!1;!T||!P||O||C||W&&W.id===s||B&&10<J.length&&!e.fixed&&!ae.immediate&&(c<Z.visibleStartIndex-Z.preloadSize||c>Z.visibleEndIndex+Z.preloadSize)&&(H=!0);var E,S,M,c={};return h?c.height=oe+"px":c.minHeight=oe+"px",d&&!ue&&(S=getColumnFirstChild(e),E=getColumnLastChild(e),S)&&E&&S.id!==E.id&&(S=Q[S.id],M=Q[E.id],S)&&M&&(c.width=M.oLeft-S.oLeft+E.renderWidth+"px"),(0,_vue.h)("th",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-header--column",s,p?"fixed--hidden":"fixed--visible",{["col--"+t]:t,["col--"+a]:a,"col--last":b,"col--fixed":e.fixed,"col--group":d,"col--ellipsis":h,"fixed--width":!D,"is--padding":v,"is--sortable":e.sortable,"col--filter":!!i,"is--filter-active":g,"is--drag-active":re.drag&&!e.fixed&&!w&&(se||ce||!e.parentId),"is--drag-disabled":re.drag&&w,"col--current":V===e},o?_xeUtils.default.isFunction(o)?o(f):o:"",q?_xeUtils.default.isFunction(q)?q(f):q:""],style:A?_xeUtils.default.isFunction(A)?A(f):A:null},x),_),{key:L?""+s+l:z||B||K||re.useKey||re.drag||d?s:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":u,"c--tooltip":r,"c--ellipsis":n}],style:c},H||T&&p?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(f))]),p||!y||L&&!ue?renderEmptyElement(pe):(0,_vue.h)("div",{class:"vxe-cell--col-resizable",onMousedown:e=>pe.handleColResizeMousedownEvent(e,U,f),onDblclick:e=>pe.handleColResizeDblclickEvent(e,f)})])})};return(0,_vue.watch)(()=>f.tableColumn,u),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f.fixedType,l=pe.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=H,l[e+"scroll"]=E,l[e+"table"]=S,l[e+"colgroup"]=M,l[e+"list"]=O,l[e+"xSpace"]=T,l[e+"repair"]=d,u()})}),(0,_vue.onUnmounted)(()=>{var e=f.fixedType,l=pe.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:a}=f;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:n,footerSpanMethod:i}=_,{isGroup:o,isColLoading:d,overflowX:u,scrollXLoad:s,dragCol:c}=b,{visibleColumn:p,fullColumnIdData:v}=w,h=y.value;let g=D.value||[],m=a,x=!1;return o?m=p:(s&&t&&(n||i||(x=!0)),x&&(d||!l&&u)||(m=p),l&&x&&(m=e||[]),g=[m]),l||o||s&&c&&2<m.length&&(t=v[c.id])&&(n=t._index,i=m[0],d=m[m.length-1],u=v[i.id],p=v[d.id],u)&&p&&(s=u._index,t=p._index,n<s?(m=[c].concat(m),g=[[c].concat(g[0])].concat(g.slice(1))):t<n&&(m=m.concat([c]),g=[g[0].concat([c])].concat(g.slice(1)))),(0,_vue.h)("div",{ref:H,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:C},[(0,_vue.h)("div",{ref:E,class:"vxe-table--header-inner-wrapper",onScroll(e){pe.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(pe):(0,_vue.h)("div",{ref:T,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:S,class:"vxe-table--header",xid:C,cellspacing:0,cellpadding:0,border:0,xvm:x?"1":null},[(0,_vue.h)("colgroup",{ref:M},m.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("thead",{ref:O},((r,t,n)=>{let i=f.fixedType,{headerRowClassName:o,headerRowStyle:d}=_;return n.map((e,l)=>{var a={$table:pe,$rowIndex:l,fixed:i,type:renderType};return(0,_vue.h)("tr",{key:l,class:["vxe-header--row",o?_xeUtils.default.isFunction(o)?o(a):o:""],style:d?_xeUtils.default.isFunction(d)?d(a):d:null},I(r,t,n,l,e))})})(o,x,g))]),r&&h.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(pe)])])}}});
package/lib/ui/index.js CHANGED
@@ -13,7 +13,7 @@ Object.defineProperty(exports, "VxeUI", {
13
13
  exports.version = exports.validators = exports.use = exports.t = exports.setup = exports.setTheme = exports.setLanguage = exports.setIcon = exports.setI18n = exports.setConfig = exports.saveFile = exports.renderer = exports.readFile = exports.print = exports.modal = exports.menus = exports.log = exports.interceptor = exports.hooks = exports.globalResize = exports.globalEvents = exports.getTheme = exports.getIcon = exports.getI18n = exports.getConfig = exports.formats = exports.default = exports.config = exports.commands = exports.clipboard = exports._t = void 0;
14
14
  var _core = require("@vxe-ui/core");
15
15
  var _utils = require("./src/utils");
16
- const version = exports.version = "4.16.4";
16
+ const version = exports.version = "4.16.6";
17
17
  _core.VxeUI.version = version;
18
18
  _core.VxeUI.tableVersion = version;
19
19
  _core.VxeUI.setConfig({
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="4.16.4",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{autoOptions:{isCalcHeader:!0,isCalcBody:!0,isCalcFooter:!0},maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",storeOptions:{visible:!0,resizable:!0,sort:!0,fixed:!0},modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{multiple:!0,showIcon:!0},aggregateConfig:{padding:!0,rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0,maxGroupSize:4,showAggFuncTitle:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isAll:!0,isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{gt:24,preSize:1,oSize:0},virtualYConfig:{gt:100,preSize:1,oSize:0},scrollbarConfig:{x:{visible:!0},y:{visible:!0}}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showLoading:!0,showResponseMsg:!0,showActionMsg:!0,response:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{},gantt:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_AGG_GROUP:iconPrefix+"grouping",TABLE_DRAG_STATUS_AGG_VALUES:iconPrefix+"values",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",TABLE_AGGREGATE_GROUPING:iconPrefix+"grouping",TABLE_AGGREGATE_VALUES:iconPrefix+"values",TABLE_AGGREGATE_SORT:iconPrefix+"drag-handle",TABLE_AGGREGATE_DELETE:iconPrefix+"close",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,hooks=exports.hooks=_core.VxeUI.hooks,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});var _default=exports.default=_core.VxeUI;
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="4.16.6",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{autoOptions:{isCalcHeader:!0,isCalcBody:!0,isCalcFooter:!0},maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",storeOptions:{visible:!0,resizable:!0,sort:!0,fixed:!0},modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{multiple:!0,showIcon:!0},aggregateConfig:{padding:!0,rowField:"id",parentField:"_X_ROW_PARENT_KEY",childrenField:"_X_ROW_CHILDREN",mapChildrenField:"_X_ROW_CHILD_LIST",indent:20,showIcon:!0,maxGroupSize:4,showAggFuncTitle:!0},treeConfig:{padding:!0,rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isAll:!0,isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{gt:24,preSize:1,oSize:0},virtualYConfig:{gt:100,preSize:1,oSize:0},scrollbarConfig:{x:{visible:!0},y:{visible:!0}}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showLoading:!0,showResponseMsg:!0,showActionMsg:!0,response:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{},gantt:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_AGG_GROUP:iconPrefix+"grouping",TABLE_DRAG_STATUS_AGG_VALUES:iconPrefix+"values",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TABLE_ROW_GROUP_OPEN:iconPrefix+"arrow-right rotate90",TABLE_ROW_GROUP_CLOSE:iconPrefix+"arrow-right",TABLE_AGGREGATE_GROUPING:iconPrefix+"grouping",TABLE_AGGREGATE_VALUES:iconPrefix+"values",TABLE_AGGREGATE_SORT:iconPrefix+"drag-handle",TABLE_AGGREGATE_DELETE:iconPrefix+"close",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,hooks=exports.hooks=_core.VxeUI.hooks,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});var _default=exports.default=_core.VxeUI;
package/lib/ui/src/log.js CHANGED
@@ -8,6 +8,6 @@ var _core = require("@vxe-ui/core");
8
8
  const {
9
9
  log
10
10
  } = _core.VxeUI;
11
- const version = `table v${"4.16.4"}`;
11
+ const version = `table v${"4.16.6"}`;
12
12
  const warnLog = exports.warnLog = log.create('warn', version);
13
13
  const errLog = exports.errLog = log.create('error', version);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v4.16.4",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v4.16.6",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-table",
3
- "version": "4.16.4",
3
+ "version": "4.16.6",
4
4
  "description": "A PC-end table component based on Vxe UI, supporting copy-paste, data pivot table, and high-performance virtual list table solution.",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -544,8 +544,7 @@ export default defineVxeComponent({
544
544
  !dragCol ||
545
545
  (dragCol && dragCol.id === column.id) ||
546
546
  (!isCrossDrag && column.level > 1) ||
547
- (!immediate && column.level > 1) ||
548
- column.renderFixed
547
+ (!immediate && column.level > 1)
549
548
  ) {
550
549
  showDropTip(evnt, optEl, false, dragPos)
551
550
  return
@@ -689,10 +688,10 @@ export default defineVxeComponent({
689
688
  }, [
690
689
  h('span', {
691
690
  class: ['vxe-table-custom--sort-btn', {
692
- 'is--disabled': isDisabled || isHidden || column.renderFixed
691
+ 'is--disabled': isDisabled || isHidden
693
692
  }],
694
693
  title: getI18n('vxe.custom.setting.sortHelpTip'),
695
- ...(isDisabled || isHidden || column.renderFixed
694
+ ...(isDisabled || isHidden
696
695
  ? {}
697
696
  : {
698
697
  onMousedown: sortMousedownEvent,
@@ -996,10 +995,10 @@ export default defineVxeComponent({
996
995
  ? ((isCrossDrag ? immediate : false) || column.level === 1
997
996
  ? h('div', {
998
997
  class: ['vxe-table-custom-popup--column-sort-btn', {
999
- 'is--disabled': isDisabled || isHidden || column.renderFixed
998
+ 'is--disabled': isDisabled || isHidden
1000
999
  }],
1001
1000
  title: getI18n('vxe.custom.setting.sortHelpTip'),
1002
- ...(isDisabled || isHidden || column.renderFixed
1001
+ ...(isDisabled || isHidden
1003
1002
  ? {}
1004
1003
  : {
1005
1004
  onMousedown: sortMousedownEvent,
@@ -10,6 +10,22 @@ const { renderer, renderEmptyElement } = VxeUI
10
10
 
11
11
  const renderType = 'header'
12
12
 
13
+ function getColumnFirstChild (column: VxeTableDefines.ColumnInfo): VxeTableDefines.ColumnInfo {
14
+ const { children } = column
15
+ if (children && children.length) {
16
+ return getColumnFirstChild(children[0])
17
+ }
18
+ return column
19
+ }
20
+
21
+ function getColumnLastChild (column: VxeTableDefines.ColumnInfo): VxeTableDefines.ColumnInfo {
22
+ const { children } = column
23
+ if (children && children.length) {
24
+ return getColumnLastChild(children[children.length - 1])
25
+ }
26
+ return column
27
+ }
28
+
13
29
  export default defineVxeComponent({
14
30
  name: 'VxeTableHeader',
15
31
  props: {
@@ -180,6 +196,18 @@ export default defineVxeComponent({
180
196
  tcStyle.minHeight = `${currCellHeight}px`
181
197
  }
182
198
 
199
+ if (isColGroup && !isLastRow) {
200
+ const firstCol = getColumnFirstChild(column)
201
+ const lastCol = getColumnLastChild(column)
202
+ if (firstCol && lastCol && firstCol.id !== lastCol.id) {
203
+ const firstColRest = fullColumnIdData[firstCol.id]
204
+ const lastColRest = fullColumnIdData[lastCol.id]
205
+ if (firstColRest && lastColRest) {
206
+ tcStyle.width = `${lastColRest.oLeft - firstColRest.oLeft + lastCol.renderWidth}px`
207
+ }
208
+ }
209
+ }
210
+
183
211
  return h('th', {
184
212
  class: ['vxe-table--column vxe-header--column', colid, fixedHiddenColumn ? 'fixed--hidden' : 'fixed--visible', {
185
213
  [`col--${headAlign}`]: headAlign,