vxe-table 3.23.2 → 3.23.3
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/es/style.css +1 -1
- package/es/table/module/custom/mixin.js +6 -0
- package/es/table/module/export/export-panel.js +3 -2
- package/es/table/module/export/mixin.js +12 -6
- package/es/table/module/filter/mixin.js +102 -76
- package/es/table/src/methods.js +13 -3
- package/es/table/src/util.js +1 -0
- package/es/ui/index.js +1 -1
- package/es/ui/src/dom.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +152 -100
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/custom/mixin.js +8 -0
- package/lib/table/module/custom/mixin.min.js +1 -1
- package/lib/table/module/export/export-panel.js +3 -2
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/mixin.js +15 -6
- package/lib/table/module/export/mixin.min.js +1 -1
- package/lib/table/module/filter/mixin.js +116 -83
- package/lib/table/module/filter/mixin.min.js +1 -1
- package/lib/table/src/methods.js +2 -2
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/util.js +1 -0
- package/lib/table/src/util.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +1 -1
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/table/module/custom/mixin.ts +7 -0
- package/packages/table/module/export/export-panel.ts +3 -2
- package/packages/table/module/export/mixin.ts +11 -6
- package/packages/table/module/filter/mixin.ts +102 -72
- package/packages/table/src/methods.ts +13 -3
- package/packages/table/src/util.ts +1 -0
- package/packages/ui/src/dom.ts +1 -1
- /package/es/{iconfont.1787677388170.ttf → iconfont.1788176636871.ttf} +0 -0
- /package/es/{iconfont.1787677388170.woff → iconfont.1788176636871.woff} +0 -0
- /package/es/{iconfont.1787677388170.woff2 → iconfont.1788176636871.woff2} +0 -0
- /package/lib/{iconfont.1787677388170.ttf → iconfont.1788176636871.ttf} +0 -0
- /package/lib/{iconfont.1787677388170.woff → iconfont.1788176636871.woff} +0 -0
- /package/lib/{iconfont.1787677388170.woff2 → iconfont.1788176636871.woff2} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_utils=require("../../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let renderer=_ui.VxeUI.renderer,sourceType="table";var _default=exports.default={methods:{_openFilter(e){let n=this,a=n.$xeGrid,o=n.$xeGantt,s=(0,_util.handleFieldOrColumn)(this,e);if(s&&s.filters){let e=this.elemStore,{fixed:i,filters:r}=s;return n.scrollToColumn(s).then(()=>{var t=e[`${i||"main"}-header-wrapper`]||e["main-header-wrapper"];if(t){var l=t.querySelector(`.vxe-header--column.${s.id} .vxe-cell--filter`);if(l)(0,_dom.triggerEvent)(l,"click");else{l=t.querySelector(".vxe-header--column."+s.id);if(l){let e=null;r&&(e=r[0]);t={$table:n,$grid:a,$gantt:o,$rowIndex:-1,column:s,columnIndex:n.getColumnIndex(s),$columnIndex:n.getVMColumnIndex(s),_columnIndex:n.getVTColumnIndex(s),firstFilterOption:e,fixed:i,source:sourceType,type:"header"};n.handleOpenFilterColumn(new Event("click"),null,l,s,t)}}}})}return n.$nextTick()},_setFilter(e,t,l){var i=this,r=i.filterStore,e=(0,_util.handleFieldOrColumn)(i,e);if(e&&e.filters){if(e.filters=(0,_util.toFilters)(t||[],e.id),l)return i.handleColumnConfirmFilter(e,null);r.visible&&i.handleFilterOptions(e)}return i.$nextTick()},checkFilterOptions(){var e=this.filterStore,t=e.column;t&&(t=t.filters||[],e.isAllSelected=t.every(e=>e._checked),e.isIndeterminate=!e.isAllSelected&&t.some(e=>e._checked))},handleOpenFilterColumn(e,t,l,i,r){let
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_dom=require("../../../ui/src/dom"),_utils=require("../../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let renderer=_ui.VxeUI.renderer,sourceType="table";function updatePopupStyle(e){var i=e.$xeGrid||e.$xeGantt,r=e.filterStore,n=e.elemStore,{column:a,targetEl:o}=r;if(a&&o){var s=e.$refs.refElem,{scrollTop:u,scrollLeft:h,visibleHeight:d,visibleWidth:c}=(0,_dom.getDomNode)(),{maxHeight:f,transfer:m,zIndex:p}=e.computeFilterOpts,F=s.getBoundingClientRect(),v=a?a.filterRender:null,v=v&&(0,_utils.isEnableConf)(v)?renderer.get(v.name):null;if((0,_util.getRefElem)(n["main-header-scroll"])){n=e.$refs.refTableFilter,n=n?n.$el:null;if(n){var _=o.getBoundingClientRect(),C=n.querySelector(".vxe-table--filter-header"),x=n.querySelector(".vxe-table--filter-footer"),n=n.offsetWidth,a=o?n/2:(n-a.renderWidth)/2;let e=0,t=0,l=0;m?(e=_.left-a+h,t=_.top+o.clientHeight+u,l=Math.min(Math.max(F.height,Math.floor(d/2)),Math.max(80,d-t-(C?C.clientHeight:0)-(x?x.clientHeight:0)-28)),e<16?e=16:e>c-n-16&&(e=c-n-16)):(e=_.left-F.left-a,t=_.top-F.top+o.clientHeight,l=Math.max(40,s.clientHeight-t-(C?C.clientHeight:0)-(x?x.clientHeight:0)-14),e<1?e=1:e>s.clientWidth-n-1&&(e=s.clientWidth-n-1),i&&(m=i.$refs.refElem)&&(h=m.getBoundingClientRect(),t+=F.top-h.top));u={top:(0,_dom.toCssUnit)(t),left:(0,_dom.toCssUnit)(e)};p&&(u.zIndex=p),r.style=u,v&&!v.tableFilterAutoHeight?l=0:f&&(l=f>l?l:f),r.maxHeight=l}}}return e.$nextTick()}var _default=exports.default={methods:{_openFilter(e){let n=this,a=n.$xeGrid,o=n.$xeGantt,s=(0,_util.handleFieldOrColumn)(this,e);if(s&&s.filters){let e=this.elemStore,{fixed:i,filters:r}=s;return n.scrollToColumn(s).then(()=>{var t=e[`${i||"main"}-header-wrapper`]||e["main-header-wrapper"];if(t){var l=t.querySelector(`.vxe-header--column.${s.id} .vxe-cell--filter`);if(l)(0,_dom.triggerEvent)(l,"click");else{l=t.querySelector(".vxe-header--column."+s.id);if(l){let e=null;r&&(e=r[0]);t={$table:n,$grid:a,$gantt:o,$rowIndex:-1,column:s,columnIndex:n.getColumnIndex(s),$columnIndex:n.getVMColumnIndex(s),_columnIndex:n.getVTColumnIndex(s),firstFilterOption:e,fixed:i,source:sourceType,type:"header"};n.handleOpenFilterColumn(new Event("click"),null,l,s,t)}}}})}return n.$nextTick()},_setFilter(e,t,l){var i=this,r=i.filterStore,e=(0,_util.handleFieldOrColumn)(i,e);if(e&&e.filters){if(e.filters=(0,_util.toFilters)(t||[],e.id),l)return i.handleColumnConfirmFilter(e,null);r.visible&&i.handleFilterOptions(e)}return i.$nextTick()},checkFilterOptions(){var e=this.filterStore,t=e.column;t&&(t=t.filters||[],e.isAllSelected=t.every(e=>e._checked),e.isIndeterminate=!e.isAllSelected&&t.some(e=>e._checked))},handleOpenFilterColumn(e,t,l,i,r){let n=this;var a=n,o=n,{initStore:a,filterStore:s}=a;s.column===i&&s.visible?s.visible=!1:(t=t||l,n.handleFilterOptions(i),o._currFilterParams=r,s.targetEl=t,s.style=null,s.visible=!0,a.filter=!0,n.$nextTick(()=>{updatePopupStyle(n)})),n.dispatchEvent("filter-visible",{column:i,field:i.field,property:i.field,filterList:n.getCheckedFilters(),visible:s.visible},e)},triggerFilterEvent(e,t,l){var i=this.elemStore,r=t.fixed,r=(0,_util.getRefElem)(i[`${r||"main"}-header-wrapper`]||i["main-header-wrapper"]),i=e.currentTarget,r=r?r.querySelector(".vxe-header--column."+t.id):null;this.handleOpenFilterColumn(e,i,r||i,t,l)},handleFilterChangeRadioOption(e,t,l){var i=this.filterStore,i=i.column;i&&((i.filters||[]).forEach(e=>{e._checked=!1}),l._checked=t,this.checkFilterOptions(),this.handleFilterConfirmFilter(e,i))},handleFilterChangeMultipleOption(e,t,l){l._checked=t,this.checkFilterOptions()},handleFilterChangeOption(e,t,l){var i=this.filterStore,r=this.fullColumnIdData;let n=i.column;n||(r=r[l._colId])&&(n=r.column,i.column=n),n&&(n.filterMultiple?this.handleFilterChangeMultipleOption(e,t,l):this.handleFilterChangeRadioOption(e,t,l))},handleFilterConfirmFilter(e,t){t&&((t.filters||[]).forEach(e=>{e.checked=e._checked}),this.confirmFilterEvent(e,t))},_saveFilter(e){return e&&(e=(0,_util.handleFieldOrColumn)(this,e),this.handleFilterConfirmFilter(null,e)),this.$nextTick()},_saveFilterByEvent(e,t){return t&&(t=(0,_util.handleFieldOrColumn)(this,t),this.handleFilterConfirmFilter(e,t)),this.$nextTick()},_resetFilter(e){return e&&(e=(0,_util.handleFieldOrColumn)(this,e),this.handleFilterResetFilter(null,e)),this.$nextTick()},_resetFilterByEvent(e,t){return t&&(t=(0,_util.handleFieldOrColumn)(this,t),this.handleFilterResetFilter(e,t)),this.$nextTick()},_saveFilterPanel(){var e=this.filterStore;return this.handleFilterConfirmFilter(null,e.column||null),this.$nextTick()},_saveFilterPanelByEvent(e){var t=this.filterStore;return this.handleFilterConfirmFilter(e,t.column||null),this.$nextTick()},_resetFilterPanel(){var e=this.filterStore;return this.handleFilterResetFilter(null,e.column||null),this.$nextTick()},_resetFilterPanelByEvent(e){var t=this.filterStore;return this.handleFilterResetFilter(e,t.column||null),this.$nextTick()},_getCheckedFilters(){var e=this.tableFullColumn;let n=[];return e.forEach(e=>{var{field:t,filters:l}=e,l=l||[];let i=[],r=[];l&&(l.forEach(e=>{e.checked&&(i.push(e.value),r.push(e.data))}),i.length)&&n.push({column:e,field:t,property:t,values:i,datas:r})}),n},handleColumnConfirmFilter(e,t){let l=this;var i=l;let r=l;i=i.mouseConfig;let{scrollXLoad:n,scrollYLoad:a}=r;var o=l.computeFilterOpts,s=l.computeMouseOpts,{field:u,filters:h}=e;let d=[],c=[];(h||[]).forEach(e=>{e.checked&&(d.push(e.value),c.push(e.data))});h=l.getCheckedFilters(),e={$table:l,$event:t,column:e,field:u,property:u,values:d,datas:c,filters:h,filterList:h};return o.remote||(l.handleTableData(!0),l.checkSelectionStatus()),i&&s.area&&l.handleFilterEvent&&l.handleFilterEvent(t,e),t&&l.dispatchEvent("filter-change",e,t),l.closeFilter(),l.updateFooter().then(()=>{var{scrollXLoad:e,scrollYLoad:t}=r;if(n||e||a||t)return(n||e)&&l.updateScrollXSpace(),(a||t)&&l.updateScrollYSpace(),l.refreshScroll()}).then(()=>(l.updateCellAreas(),l.recalculate(!0))).then(()=>{setTimeout(()=>l.recalculate(),50)})},confirmFilterEvent(e,t){t&&this.handleColumnConfirmFilter(t,e)},handleClearFilter(e){if(e){var{filters:l,filterRender:i}=e;if(l){i=(0,_utils.isEnableConf)(i)?renderer.get(i.name):null;let t=e.filterResetMethod||(i?i.tableFilterResetMethod||i.filterResetMethod:null);l.forEach(e=>{e._checked=!1,e.checked=!1,t||(e.data=_xeUtils.default.clone(e.resetValue,!0))}),t&&t({options:l,column:e,$table:this})}}},handleFilterResetFilter(e,t){t&&(this.handleClearFilter(t),this.confirmFilterEvent(e,t),e)&&this.dispatchEvent("clear-filter",{filterList:[]},e)},handleFilterStyle(){var e=this.filterStore;return e.visible?updatePopupStyle(this):this.$nextTick()},_clearFilter(e){var t=this,l=t.filterStore,i=t.tableFullColumn;let r;return e?(r=(0,_util.handleFieldOrColumn)(t,e))&&t.handleClearFilter(r):i.forEach(t.handleClearFilter),e&&r===l.column||Object.assign(l,{isAllSelected:!1,isIndeterminate:!1,style:null,options:[],column:null,multiple:!1,visible:!1}),t.updateData()},_updateFilterOptionStatus(e,t){return e._checked=t,e.checked=t,this.$nextTick()}}};
|
package/lib/table/src/methods.js
CHANGED
|
@@ -515,11 +515,11 @@ if(ctxMenuStore.visible&&tableMenu&&!(0,_dom.getEventTargetNode)(evnt,tableMenu.
|
|
|
515
515
|
if(!isActivated&&editRules&&validOpts.autoClear){reactData.validErrorMaps={};}// 最后激活的表格
|
|
516
516
|
internalData.isActivated=isActivated;}},/**
|
|
517
517
|
* 窗口失焦事件处理
|
|
518
|
-
*/handleGlobalBlurEvent(){const $xeTable=this;$xeTable.closeFilter();$xeTable.closeMenu();},handleGlobalScrollEvent(evnt){const $xeTable=this;reUpdateCustomStyleEvent($xeTable,evnt);},/**
|
|
518
|
+
*/handleGlobalBlurEvent(){const $xeTable=this;$xeTable.closeFilter();$xeTable.closeMenu();},handleGlobalScrollEvent(evnt){const $xeTable=this;const reactData=$xeTable;const{filterStore}=reactData;const filterOpts=$xeTable.computeFilterOpts;if(filterStore.visible&&filterOpts.transfer){$xeTable.handleFilterStyle();}reUpdateCustomStyleEvent($xeTable,evnt);},/**
|
|
519
519
|
* 全局滚动事件
|
|
520
520
|
*/handleGlobalMousewheelEvent(){const $xeTable=this;$xeTable.closeTooltip();if($xeTable.closeMenu){$xeTable.closeMenu();}},/**
|
|
521
521
|
* 表格键盘事件
|
|
522
|
-
*/keydownEvent(evnt){const $xeTable=this;const{filterStore,ctxMenuStore,editStore
|
|
522
|
+
*/keydownEvent(evnt){const $xeTable=this;const props=$xeTable;const reactData=$xeTable;const{mouseConfig,keyboardConfig}=props;const{filterStore,ctxMenuStore,editStore}=reactData;const mouseOpts=$xeTable.computeMouseOpts;const keyboardOpts=$xeTable.computeKeyboardOpts;const{actived}=editStore;const isEsc=globalEvents.hasKey(evnt,GLOBAL_EVENT_KEYS.ESCAPE);if(isEsc){this.preventEvent(evnt,'event.keydown',null,()=>{$xeTable.dispatchEvent('keydown-start',{},evnt);if(keyboardConfig&&mouseConfig&&mouseOpts.area&&$xeTable.handleKdClAreaEvent){$xeTable.handleKdClAreaEvent(evnt);}else if(actived.row||filterStore.visible||ctxMenuStore.visible){evnt.stopPropagation();// 如果按下了 Esc 键,关闭快捷菜单、筛选
|
|
523
523
|
this.closeFilter();this.closeMenu();if(keyboardConfig&&keyboardOpts.isEsc){// 如果是激活编辑状态,则取消编辑
|
|
524
524
|
if(actived.row){const params=actived.args;this.handleClearEdit(evnt);// 如果配置了选中功能,则为选中状态
|
|
525
525
|
if(mouseConfig&&mouseOpts.selected){this.$nextTick(()=>this.handleSelected(params,evnt));}}}}$xeTable.dispatchEvent('keydown',{},evnt);$xeTable.dispatchEvent('keydown-end',{},evnt);});}},contextMenuEvent(evnt){const $xeTable=this;$xeTable.dispatchEvent('context-menu',{},evnt);},/**
|