vxe-table 3.15.0-beta.2 → 3.15.0-beta.4
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/grid/src/grid.js +8 -8
- package/es/style.css +1 -1
- package/es/table/module/filter/mixin.js +11 -38
- package/es/table/src/cell.js +8 -8
- package/es/table/src/methods.js +27 -9
- package/es/table/src/table.js +6 -0
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +10 -10
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +74 -74
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/filter/mixin.js +10 -39
- package/lib/table/module/filter/mixin.min.js +1 -1
- package/lib/table/src/cell.js +6 -6
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/methods.js +38 -17
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +6 -0
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.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/grid/src/grid.ts +21 -21
- package/packages/table/module/filter/mixin.ts +10 -34
- package/packages/table/src/cell.ts +8 -8
- package/packages/table/src/methods.ts +29 -13
- package/packages/table/src/table.ts +6 -0
- /package/es/{iconfont.1743992159333.ttf → iconfont.1744095177947.ttf} +0 -0
- /package/es/{iconfont.1743992159333.woff → iconfont.1744095177947.woff} +0 -0
- /package/es/{iconfont.1743992159333.woff2 → iconfont.1744095177947.woff2} +0 -0
- /package/lib/{iconfont.1743992159333.ttf → iconfont.1744095177947.ttf} +0 -0
- /package/lib/{iconfont.1743992159333.woff → iconfont.1744095177947.woff} +0 -0
- /package/lib/{iconfont.1743992159333.woff2 → iconfont.1744095177947.woff2} +0 -0
|
@@ -31,7 +31,7 @@ var _default = exports.default = {
|
|
|
31
31
|
return this.scrollToColumn(column).then(() => {
|
|
32
32
|
const headerWrapperElem = elemStore[`${fixed || 'main'}-header-wrapper`] || elemStore['main-header-wrapper'];
|
|
33
33
|
if (headerWrapperElem) {
|
|
34
|
-
const filterBtnElem = headerWrapperElem.querySelector(`.vxe-header--column.${column.id} .vxe-filter
|
|
34
|
+
const filterBtnElem = headerWrapperElem.querySelector(`.vxe-header--column.${column.id} .vxe-cell--filter`);
|
|
35
35
|
(0, _dom.triggerEvent)(filterBtnElem, 'click');
|
|
36
36
|
}
|
|
37
37
|
});
|
|
@@ -90,16 +90,9 @@ var _default = exports.default = {
|
|
|
90
90
|
if (filterStore.column === column && filterStore.visible) {
|
|
91
91
|
filterStore.visible = false;
|
|
92
92
|
} else {
|
|
93
|
-
const {
|
|
94
|
-
clientY,
|
|
95
|
-
pageX
|
|
96
|
-
} = evnt;
|
|
97
93
|
const el = $xeTable.$refs.refElem;
|
|
98
94
|
const tableRect = el.getBoundingClientRect();
|
|
99
|
-
const
|
|
100
|
-
const {
|
|
101
|
-
visibleWidth
|
|
102
|
-
} = (0, _dom.getDomNode)();
|
|
95
|
+
const btnElem = evnt.currentTarget;
|
|
103
96
|
const {
|
|
104
97
|
filters,
|
|
105
98
|
filterMultiple,
|
|
@@ -144,41 +137,19 @@ var _default = exports.default = {
|
|
|
144
137
|
if (!filterWrapperElem) {
|
|
145
138
|
return;
|
|
146
139
|
}
|
|
140
|
+
const btnRect = btnElem.getBoundingClientRect();
|
|
147
141
|
const filterWidth = filterWrapperElem.offsetWidth;
|
|
148
142
|
const filterHeadElem = filterWrapperElem.querySelector('.vxe-table--filter-header');
|
|
149
143
|
const filterFootElem = filterWrapperElem.querySelector('.vxe-table--filter-footer');
|
|
150
144
|
const centerWidth = filterWidth / 2;
|
|
151
|
-
const
|
|
152
|
-
const
|
|
153
|
-
let left, right;
|
|
154
|
-
const thEl = targetElem.offsetParent;
|
|
155
|
-
const trEl = thEl.offsetParent;
|
|
156
|
-
const style = {
|
|
157
|
-
top: `${targetElem.offsetTop + thEl.offsetTop + targetElem.offsetHeight}px`
|
|
158
|
-
};
|
|
145
|
+
const left = btnRect.left - tableRect.left - centerWidth;
|
|
146
|
+
const top = btnRect.top - tableRect.top + btnElem.clientHeight;
|
|
159
147
|
// 判断面板不能大于表格高度
|
|
160
|
-
const maxHeight = Math.max(40, el.clientHeight -
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
} else {
|
|
166
|
-
left = targetElem.offsetLeft + thEl.offsetLeft - centerWidth - headerScrollElem.scrollLeft;
|
|
167
|
-
}
|
|
168
|
-
if (left) {
|
|
169
|
-
const overflowWidth = pageX + filterWidth - centerWidth + minMargin - visibleWidth;
|
|
170
|
-
if (overflowWidth > 0) {
|
|
171
|
-
left -= overflowWidth;
|
|
172
|
-
}
|
|
173
|
-
style.left = `${Math.min(maxLeft, Math.max(minMargin, left))}px`;
|
|
174
|
-
} else if (right) {
|
|
175
|
-
const overflowWidth = pageX + filterWidth - centerWidth + minMargin - visibleWidth;
|
|
176
|
-
if (overflowWidth > 0) {
|
|
177
|
-
right += overflowWidth;
|
|
178
|
-
}
|
|
179
|
-
style.right = `${Math.max(minMargin, right)}px`;
|
|
180
|
-
}
|
|
181
|
-
filterStore.style = style;
|
|
148
|
+
const maxHeight = Math.max(40, el.clientHeight - top - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 14);
|
|
149
|
+
filterStore.style = {
|
|
150
|
+
top: (0, _dom.toCssUnit)(top),
|
|
151
|
+
left: (0, _dom.toCssUnit)(left)
|
|
152
|
+
};
|
|
182
153
|
filterStore.maxHeight = maxHeight;
|
|
183
154
|
});
|
|
184
155
|
}
|
|
@@ -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;var _default=exports.default={methods:{_openFilter(e){let i=(0,_util.handleFieldOrColumn)(this,e);if(i&&i.filters){let t=this.elemStore,l=i.fixed;return this.scrollToColumn(i).then(()=>{var e=t[`${l||"main"}-header-wrapper`]||t["main-header-wrapper"];e&&(e=e.querySelector(`.vxe-header--column.${i.id} .vxe-filter
|
|
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;var _default=exports.default={methods:{_openFilter(e){let i=(0,_util.handleFieldOrColumn)(this,e);if(i&&i.filters){let t=this.elemStore,l=i.fixed;return this.scrollToColumn(i).then(()=>{var e=t[`${l||"main"}-header-wrapper`]||t["main-header-wrapper"];e&&(e=e.querySelector(`.vxe-header--column.${i.id} .vxe-cell--filter`),(0,_dom.triggerEvent)(e,"click"))})}return this.$nextTick()},_setFilter(e,t,l){e=(0,_util.handleFieldOrColumn)(this,e);return e&&e.filters&&(e.filters=(0,_util.toFilters)(t||[]),l)?this.handleColumnConfirmFilter(e,new Event("click")):this.$nextTick()},checkFilterOptions(){var e=this.filterStore;e.isAllSelected=e.options.every(e=>e._checked),e.isIndeterminate=!e.isAllSelected&&e.options.some(e=>e._checked)},triggerFilterEvent(t,c,l){let h=this;var u=h,d=h;let e=this.filterStore;if(e.column===c&&e.visible)e.visible=!1;else{let{initStore:e,filterStore:o}=u,a=d.elemStore;if(o.column===c&&o.visible)o.visible=!1;else{let r=h.$refs.refElem,n=r.getBoundingClientRect(),s=t.currentTarget;var{filters:u,filterMultiple:f,filterRender:m}=c,m=(0,_utils.isEnableConf)(m)?renderer.get(m.name):null;let i=c.filterRecoverMethod||(m?m.tableFilterRecoverMethod||m.filterRecoverMethod:null);d._currFilterParams=l,Object.assign(o,{multiple:f,options:u,column:c,style:null}),o.options.forEach(e=>{var{_checked:t,checked:l}=e;(e._checked=l)||t===l||i&&i({option:e,column:c,$table:h})}),this.checkFilterOptions(),o.visible=!0,e.filter=!0,h.$nextTick(()=>{var e,t,l,i;(0,_util.getRefElem)(a["main-header-scroll"])&&(e=(e=h.$refs.refTableFilter)?e.$el:null)&&(l=s.getBoundingClientRect(),t=e.offsetWidth,i=e.querySelector(".vxe-table--filter-header"),e=e.querySelector(".vxe-table--filter-footer"),t=t/2,t=l.left-n.left-t,l=l.top-n.top+s.clientHeight,i=Math.max(40,r.clientHeight-l-(i?i.clientHeight:0)-(e?e.clientHeight:0)-14),o.style={top:(0,_dom.toCssUnit)(l),left:(0,_dom.toCssUnit)(t)},o.maxHeight=i)})}h.dispatchEvent("filter-visible",{column:c,field:c.field,property:c.field,filterList:h.getCheckedFilters(),visible:o.visible},t)}},handleFilterConfirmFilter(e){var t=this.filterStore;t.options.forEach(e=>{e.checked=e._checked}),this.confirmFilterEvent(e)},_saveFilterPanel(){return this.handleFilterConfirmFilter(null),this.$nextTick()},_resetFilterPanel(){return this.handleFilterResetFilter(null),this.$nextTick()},_getCheckedFilters(){var e=this.tableFullColumn;let n=[];return e.forEach(e=>{var{field:t,filters:l}=e;let i=[],r=[];l&&l.length&&(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.mouseConfig;let{scrollXLoad:r,scrollYLoad:n}=l;var s=l.computeFilterOpts,o=l.computeMouseOpts,a=e.field;let c=[],h=[];e.filters.forEach(e=>{e.checked&&(c.push(e.value),h.push(e.data))});var u=this.getCheckedFilters(),e={$table:this,$event:t,column:e,field:a,property:a,values:c,datas:h,filters:u,filterList:u};return s.remote||(this.handleTableData(!0),this.checkSelectionStatus()),i&&o.area&&this.handleFilterEvent&&l.handleFilterEvent(t,e),t&&l.emitEvent("filter-change",e,t),l.closeFilter(),l.updateFooter().then(()=>{var{scrollXLoad:e,scrollYLoad:t}=this;if(r||e||n||t)return(r||e)&&l.updateScrollXSpace(),(n||t)&&l.updateScrollYSpace(),l.refreshScroll()}).then(()=>(l.updateCellAreas(),l.recalculate(!0))).then(()=>{setTimeout(()=>l.recalculate(),50)})},confirmFilterEvent(e){var t=this.filterStore,t=t.column;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){this.handleClearFilter(this.filterStore.column),this.confirmFilterEvent(e)},_clearFilter(e){var t=this.filterStore;let l;return e?(l=(0,_util.handleFieldOrColumn)(this,e))&&this.handleClearFilter(l):this.visibleColumn.forEach(this.handleClearFilter),e&&l===t.column||Object.assign(t,{isAllSelected:!1,isIndeterminate:!1,style:null,options:[],column:null,multiple:!1,visible:!1}),this.updateData()},_updateFilterOptionStatus(e,t){return e._checked=t,e.checked=t,this.$nextTick()}}};
|
package/lib/table/src/cell.js
CHANGED
|
@@ -1101,12 +1101,7 @@ const Cell = exports.Cell = {
|
|
|
1101
1101
|
return [h('span', {
|
|
1102
1102
|
class: ['vxe-cell--filter', {
|
|
1103
1103
|
'is--active': filterStore.visible && filterStore.column === column
|
|
1104
|
-
}]
|
|
1105
|
-
}, [h('i', {
|
|
1106
|
-
class: ['vxe-filter--btn', hasFilter ? iconMatch || getIcon().TABLE_FILTER_MATCH : iconNone || getIcon().TABLE_FILTER_NONE],
|
|
1107
|
-
attrs: {
|
|
1108
|
-
title: getI18n('vxe.table.filter')
|
|
1109
|
-
},
|
|
1104
|
+
}],
|
|
1110
1105
|
on: {
|
|
1111
1106
|
click(evnt) {
|
|
1112
1107
|
if ($table.triggerFilterEvent) {
|
|
@@ -1114,6 +1109,11 @@ const Cell = exports.Cell = {
|
|
|
1114
1109
|
}
|
|
1115
1110
|
}
|
|
1116
1111
|
}
|
|
1112
|
+
}, [h('i', {
|
|
1113
|
+
class: ['vxe-filter--btn', hasFilter ? iconMatch || getIcon().TABLE_FILTER_MATCH : iconNone || getIcon().TABLE_FILTER_NONE],
|
|
1114
|
+
attrs: {
|
|
1115
|
+
title: getI18n('vxe.table.filter')
|
|
1116
|
+
}
|
|
1117
1117
|
})])];
|
|
1118
1118
|
}
|
|
1119
1119
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(e,l){let{$table:r,column:t}=l,n=t.titlePrefix||t.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.icon||getIcon().TABLE_TITLE_PREFIX],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}}):renderEmptyElement(r)}function renderTitleSuffixIcon(e,l){let{$table:r,column:t}=l,n=t.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.icon||getIcon().TABLE_TITLE_SUFFIX],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}}):renderEmptyElement(r)}function renderCellDragIcon(e,l){let r=l.$table;var t=r.$scopedSlots,n=r.dragConfig,{icon:a,trigger:o,disabledMethod:d}=r.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let s=d&&d(l);d=t.rowDragIcon||t["row-drag-icon"],t={};return"cell"!==o&&(t.mousedown=e=>{s||r.handleCellDragMousedownEvent(e,l)},t.mouseup=r.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":s}],on:t},d?r.callSlot(d,l,e):[e("i",{class:a||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,r){var{$table:t,column:n,level:a}=l,n=n.dragSort,{treeConfig:o,dragConfig:d}=t,s=t.computeRowOpts,i=t.computeTreeOpts,{showIcon:t,isPeerDrag:c,isCrossDrag:u,visibleMethod:C}=t.computeRowDragOpts,C=C||(d?d.rowVisibleMethod:null),r=_xeUtils.default.isArray(r)?r:[r];return n&&s.drag&&(t||d&&d.showRowIcon)&&(!C||C(l))&&(!o||i.transform&&(c||u||!a))&&r.unshift(renderCellDragIcon(e,l)),r}function renderHeaderCellDragIcon(e,r){let{$table:t,column:l}=r;var n=t.$scopedSlots,a=l.slots,o=t.computeColumnOpts,{showIcon:d,icon:s,trigger:i,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:g}=t.computeColumnDragOpts;if(!o.drag||!d||C&&!C(r)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(t);{let l=g&&g(r);o=(a?a.columnDragIcon||a["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==i&&(d.mousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.mouseup=t.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},o?t.callSlot(o,r,e):[e("i",{class:s||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,r){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(r)?r:[r],renderTitleSuffixIcon(e,l)]}function renderTitleContent(e,l,r){let{$table:t,column:n}=l;var{type:a,showHeaderOverflow:o}=n,d=t;let s=t;d=d.showHeaderOverflow;let i=t.computeTooltipOpts.showAll;d=_xeUtils.default.isUndefined(o)||_xeUtils.default.isNull(o)?d:o;let c="title"===d,u=!0===d||"tooltip"===d;o={};return(c||u||i)&&(o.mouseenter=e=>{s.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||i)&&t.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(o.mouseleave=e=>{s.isDragResize||(u||i)&&t.handleTargetLeaveEvent(e)}),["html"===a&&_xeUtils.default.isString(r)?e("span",{class:"vxe-cell--title",domProps:{innerHTML:r},on:o}):e("span",{class:"vxe-cell--title",on:o},(0,_vn.getSlotVNs)(r))]}function getFooterContent(e,l){var{$table:r,column:t,_columnIndex:n,row:a,items:o}=l,{slots:d,editRender:s,cellRender:i,footerFormatter:c}=t,s=s||i;if(d&&d.footer)return r.callSlot(d.footer,l,e);let u="";u=_xeUtils.default.isArray(o)?o[n]:_xeUtils.default.get(a,t.field);i=Object.assign(l,{itemValue:u});if(c)return _xeUtils.default.isFunction(c)?""+c(i):(n=(o=(d=_xeUtils.default.isArray(c))?formats.get(c[0]):formats.get(c))?o.tableFooterCellFormatMethod:null)?""+(d?n(i,...c.slice(1)):n(i)):"";if(s){a=renderer.get(s.name),t=a?a.renderTableFooter||a.renderFooter:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,s,i))}return[(0,_utils.formatText)(u,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e,l){var{column:r,$table:t}=l,n=t.editConfig,{type:r,treeNode:a,editRender:o}=r,d=t.computeCheckboxOpts,t=t.computeEditOpts;switch(r){case"seq":return a?Cell.renderTreeIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return a?Cell.renderTreeRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return d.checkField?a?Cell.renderTreeSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):a?Cell.renderTreeSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return a?Cell.renderTreeHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return(0,_utils.isEnableConf)(n)&&o?"cell"===t.mode?a?Cell.renderTreeCellEdit(e,l):Cell.renderCellEdit(e,l):a?Cell.renderTreeRowEdit(e,l):Cell.renderRowEdit(e,l):a?Cell.renderTreeCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:r,$table:t}=l,t=t.editConfig,{type:r,filters:n,sortable:a,editRender:o}=r;switch(r){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(n&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(n)return Cell.renderFilterHeader(e,l)}return t&&o?Cell.renderEditHeader(e,l):n&&a?Cell.renderSortAndFilterHeader(e,l):a?Cell.renderSortHeader(e,l):n?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e,l){var{$table:r,column:t}=l,{slots:n,editRender:a,cellRender:o}=t,a=a||o;if(n&&n.header)return renderTitleContent(e,l,r.callSlot(n.header,l,e));if(a){o=renderer.get(a.name),n=o?o.renderTableHeader||o.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(r,e,a,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(t.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:r,row:t,column:n}=l,{slots:a,editRender:o,cellRender:d}=n,d=o||d;if(a&&a.default)return renderCellBaseVNs(e,l,r.callSlot(a.default,l,e));if(d){var a=renderer.get(d.name),s=a?a.renderTableDefault||a.renderDefault:null,a=a?a.renderTableCell||a.renderCell:null,a=o?a:s;if(a)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(a.call(r,e,d,Object.assign({$type:o?"edit":"cell"},l))))}s=r.getCellLabel(t,n),a=o?o.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[o&&(0,_utils.eqEmptyValue)(s)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(a),1)):e("span",(0,_utils.formatText)(s,1))])])},renderTreeCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return getFooterContent(e,l)},renderTreeIcon(e,l,r){let{$table:t,isHidden:n}=l;var a=t.treeExpandedFlag,{fullAllDataRowIdData:o,treeExpandedMaps:d,treeExpandLazyLoadedMaps:s}=t,i=t.computeTreeOpts,{row:c,column:u,level:C}=l,u=u.slots,{indent:g,lazy:p,trigger:E,iconLoaded:b,showIcon:x,iconOpen:f,iconClose:v}=i,m=i.children||i.childrenField,i=i.hasChild||i.hasChildField,m=c[m],m=m&&m.length,u=u?u.icon:null;let T=!1,h=!1,_=!1,I=!1;var H={};return u?t.callSlot(u,l,e):(n||(u=(0,_util.getRowid)(t,c),h=!!a&&!!d[u],p&&(a=o[u],_=!!s[u],T=c[i],I=!!a.treeLoaded)),E&&"default"!==E||(H.click=e=>{t.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":h}],style:{paddingLeft:C*g+"px"}},[x&&(!p||I?m:m||T)?[e("div",{class:"vxe-tree--btn-wrapper",on:H},[e("i",{class:["vxe-tree--node-btn",_?b||getIcon().TABLE_TREE_LOADED:h?f||getIcon().TABLE_TREE_OPEN:v||getIcon().TABLE_TREE_CLOSE]})])]:null,e("div",{class:"vxe-tree-cell"},r)])])},renderSeqHeader(e,l){var{$table:r,column:t}=l,n=t.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?r.callSlot(n.header,l,e):(0,_utils.formatText)(t.getTitle(),1)))},renderSeqCell(e,l){var{$table:r,column:t}=l,n=r.treeConfig,a=r.computeSeqOpts,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):(r=l.seq,t=a.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(t?t(l):n?r:(a.startIndex||0)+r,1))]))},renderTreeIndexCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:r,column:t}=l,n=t.slots,a=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,a?r.callSlot(a,l,e):[e("span",{class:"vxe-radio--label"},n?r.callSlot(n,l,e):(0,_utils.formatText)(t.getTitle(),1))]))},renderRadioCell(e,l){let{$table:r,column:t,isHidden:n}=l;var a=r.selectRadioRow,o=t.slots,{labelField:d,checkMethod:s,visibleMethod:i}=r.computeRadioOpts,c=l.row,u=o?o.default:null,o=o?o.radio:null,a=c===a;let C=!i||i({row:c}),g=!!s,p;n||(p={click(e){!g&&C&&r.triggerRadioRowEvent(e,l)}},s&&(g=!s({row:c})));i=Object.assign(Object.assign({},l),{checked:a,disabled:g,visible:C});return o?renderCellBaseVNs(e,l,r.callSlot(o,i,e)):(s=[],C&&s.push(e("span",{class:["vxe-radio--icon",a?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&s.push(e("span",{class:"vxe-radio--label"},u?r.callSlot(u,i,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":a,"is--disabled":g}],on:p},s)]))},renderTreeRadioCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:r,column:t,isHidden:n}=l;let{isAllSelected:a,isIndeterminate:o}=r,d=r.computeIsAllCheckboxDisabled;var s=t.slots,i=s?s.header:null,s=s?s.title:null,{checkStrictly:c,showHeader:u,headerTitle:C}=r.computeCheckboxOpts,g=t.getTitle(),p={},E=(n||(p.click=e=>{d||r.triggerCheckAllEvent(e,!a)}),Object.assign(Object.assign({},l),{checked:a,disabled:d,indeterminate:o}));return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,i?r.callSlot(i,E,e):(c?u:!1!==u)?[e("span",{class:["vxe-cell--checkbox",{"is--checked":a,"is--disabled":d,"is--indeterminate":o}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:p},[e("span",{class:["vxe-checkbox--icon",o?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(s||g?[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):g)]:[]))]:[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):g)]))},renderCheckboxCell(e,l){let{$table:r,row:t,column:n,isHidden:a}=l;var o=r.treeConfig,d=r.updateCheckboxFlag,{selectCheckboxMaps:s,treeIndeterminateRowMaps:i}=r,{labelField:c,checkMethod:u,visibleMethod:C}=r.computeCheckboxOpts,g=n.slots,p=g?g.default:null,g=g?g.checkbox:null;let E=!1,b=!1,x=!C||C({row:t}),f=!!u;var v,C={},d=(a||(v=(0,_util.getRowid)(r,t),b=!!d&&!!s[v],C.click=e=>{!f&&x&&r.triggerCheckRowEvent(e,l,!b)},u&&(f=!u({row:t})),o&&(E=!!i[v])),Object.assign(Object.assign({},l),{checked:b,disabled:f,visible:x,indeterminate:E}));return g?renderCellBaseVNs(e,l,r.callSlot(g,d,e)):(s=[],x&&s.push(e("span",{class:["vxe-checkbox--icon",E?getIcon().TABLE_CHECKBOX_INDETERMINATE:b?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(p||c)&&s.push(e("span",{class:"vxe-checkbox--label"},p?r.callSlot(p,d,e):_xeUtils.default.get(t,c))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":b,"is--disabled":f,"is--indeterminate":E,"is--hidden":!x}],on:C},s)]))},renderTreeSelectionCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:r,row:t,column:n,isHidden:a}=l;var o=r.treeConfig,d=r.updateCheckboxFlag,s=r.treeIndeterminateRowMaps,i=r.computeCheckboxOpts,{labelField:c,checkField:u,checkMethod:C,visibleMethod:g}=i,i=i.indeterminateField||i.halfField,p=n.slots,E=p?p.default:null,p=p?p.checkbox:null;let b=!1,x=!1,f=!g||g({row:t}),v=!!C;var m,g={},d=(a||(m=(0,_util.getRowid)(r,t),x=!!d&&_xeUtils.default.get(t,u),g.click=e=>{!v&&f&&r.triggerCheckRowEvent(e,l,!x)},C&&(v=!C({row:t})),o&&(b=!!s[m])),Object.assign(Object.assign({},l),{checked:x,disabled:v,visible:f,indeterminate:b}));return p?renderCellBaseVNs(e,l,r.callSlot(p,d,e)):(u=[],f&&u.push(e("span",{class:["vxe-checkbox--icon",b?getIcon().TABLE_CHECKBOX_INDETERMINATE:x?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(E||c)&&u.push(e("span",{class:"vxe-checkbox--label"},E?r.callSlot(E,d,e):_xeUtils.default.get(t,c))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":x,"is--disabled":v,"is--indeterminate":i&&!x?t[i]:b,"is--hidden":!f}],on:g},u)]))},renderTreeSelectionCellByProp(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:r,isHidden:t,row:n,column:a}=l;var{rowExpandedMaps:o,rowExpandLazyLoadedMaps:d}=r,{lazy:s,labelField:i,iconLoaded:c,showIcon:u,iconOpen:C,iconClose:g,visibleMethod:p}=r.computeExpandOpts,E=a.slots,b=E?E.default:null,E=E?E.icon:null;let x=!1,f=!1;return E?renderCellBaseVNs(e,l,r.callSlot(E,l,e)):(t||(E=(0,_util.getRowid)(r,n),x=!!o[E],s&&(f=!!d[E])),renderCellBaseVNs(e,l,[!u||p&&!p(l)?renderEmptyElement(r):e("span",{class:["vxe-table--expanded",{"is--active":x}],on:{mousedown(e){e.stopPropagation()},click(e){r.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",f?c||getIcon().TABLE_EXPAND_LOADED:x?C||getIcon().TABLE_EXPAND_OPEN:g||getIcon().TABLE_EXPAND_CLOSE]})]),b||i?e("span",{class:"vxe-table--expand-label"},b?r.callSlot(b,l,e):_xeUtils.default.get(n,i)):renderEmptyElement(r)]))},renderExpandData(e,l){var{$table:r,column:t}=l,{slots:t,contentRender:n}=t;if(t&&t.content)return r.callSlot(t.content,l,e);if(n){t=renderer.get(n.name),t=t?t.renderTableExpand||t.renderExpand:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:r,column:t}=l,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderTreeHTMLCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:r,column:t}=l;var{showIcon:n,allowBtn:a,ascTitle:o,descTitle:d,iconLayout:s,iconAsc:i,iconDesc:c,iconVisibleMethod:u}=r.computeSortOpts;return!n||u&&!u(l)?[]:[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${s}-layout`]},[e("i",{class:["vxe-sort--asc-btn",i||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===t.order}],attrs:{title:_xeUtils.default.eqNull(o)?getI18n("vxe.table.sortAsc"):""+(o||"")},on:a?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"asc")}}:void 0}),e("i",{class:["vxe-sort--desc-btn",c||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===t.order}],attrs:{title:_xeUtils.default.eqNull(d)?getI18n("vxe.table.sortDesc"):""+(d||"")},on:a?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"desc")}}:void 0})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:r,column:t,hasFilter:n}=l;var a=r.filterStore,{showIcon:o,iconNone:d,iconMatch:s,iconVisibleMethod:i}=r.computeFilterOpts;return!o||i&&!i(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":a.visible&&a.column===t}]},[e("i",{class:["vxe-filter--btn",n?s||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")},on:{click(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}}})])]},renderEditHeader(e,l){var{$table:r,column:t}=l,{editConfig:n,editRules:a}=r,o=r.computeEditOpts,{sortable:d,filters:s,editRender:i}=t;let c=!1,u=(a&&(a=_xeUtils.default.get(a,t.field))&&(c=a.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&(u=[c&&o.showAsterisk?e("i",{class:"vxe-cell--required-icon"}):renderEmptyElement(r),(0,_utils.isEnableConf)(i)&&o.showIcon?e("i",{class:["vxe-cell--edit-icon",o.icon||getIcon().TABLE_EDIT]}):renderEmptyElement(r)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(s?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row)},renderTreeRowEdit(e,l){return Cell.renderTreeIcon(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row&&r.column===l.column)},renderTreeCellEdit(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,r,t){var{$table:n,column:a}=l,{slots:a,editRender:o,formatter:d}=a,s=renderer.get(o.name),s=s?s.renderTableEdit||s.renderEdit:null,i=Object.assign({$type:"",isEdit:t},l);return t?a&&a.edit?n.callSlot(a.edit,i,e):s?(0,_vn.getSlotVNs)(s.call(n,e,o,i)):[]:a&&a.default?renderCellBaseVNs(e,l,n.callSlot(a.default,i,e)):d?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(i)])]):Cell.renderDefaultCell.call(r,e,i)}};var _default=exports.default=Cell;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(e,l){let{$table:r,column:t}=l,n=t.titlePrefix||t.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.icon||getIcon().TABLE_TITLE_PREFIX],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}}):renderEmptyElement(r)}function renderTitleSuffixIcon(e,l){let{$table:r,column:t}=l,n=t.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.icon||getIcon().TABLE_TITLE_SUFFIX],on:{mouseenter(e){r.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){r.handleTargetLeaveEvent(e)}}}):renderEmptyElement(r)}function renderCellDragIcon(e,l){let r=l.$table;var t=r.$scopedSlots,n=r.dragConfig,{icon:a,trigger:o,disabledMethod:d}=r.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let s=d&&d(l);d=t.rowDragIcon||t["row-drag-icon"],t={};return"cell"!==o&&(t.mousedown=e=>{s||r.handleCellDragMousedownEvent(e,l)},t.mouseup=r.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":s}],on:t},d?r.callSlot(d,l,e):[e("i",{class:a||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,r){var{$table:t,column:n,level:a}=l,n=n.dragSort,{treeConfig:o,dragConfig:d}=t,s=t.computeRowOpts,i=t.computeTreeOpts,{showIcon:t,isPeerDrag:c,isCrossDrag:u,visibleMethod:C}=t.computeRowDragOpts,C=C||(d?d.rowVisibleMethod:null),r=_xeUtils.default.isArray(r)?r:[r];return n&&s.drag&&(t||d&&d.showRowIcon)&&(!C||C(l))&&(!o||i.transform&&(c||u||!a))&&r.unshift(renderCellDragIcon(e,l)),r}function renderHeaderCellDragIcon(e,r){let{$table:t,column:l}=r;var n=t.$scopedSlots,a=l.slots,o=t.computeColumnOpts,{showIcon:d,icon:s,trigger:i,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:g}=t.computeColumnDragOpts;if(!o.drag||!d||C&&!C(r)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(t);{let l=g&&g(r);o=(a?a.columnDragIcon||a["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==i&&(d.mousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.mouseup=t.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},o?t.callSlot(o,r,e):[e("i",{class:s||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,r){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(r)?r:[r],renderTitleSuffixIcon(e,l)]}function renderTitleContent(e,l,r){let{$table:t,column:n}=l;var{type:a,showHeaderOverflow:o}=n,d=t;let s=t;d=d.showHeaderOverflow;let i=t.computeTooltipOpts.showAll;d=_xeUtils.default.isUndefined(o)||_xeUtils.default.isNull(o)?d:o;let c="title"===d,u=!0===d||"tooltip"===d;o={};return(c||u||i)&&(o.mouseenter=e=>{s.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||i)&&t.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(o.mouseleave=e=>{s.isDragResize||(u||i)&&t.handleTargetLeaveEvent(e)}),["html"===a&&_xeUtils.default.isString(r)?e("span",{class:"vxe-cell--title",domProps:{innerHTML:r},on:o}):e("span",{class:"vxe-cell--title",on:o},(0,_vn.getSlotVNs)(r))]}function getFooterContent(e,l){var{$table:r,column:t,_columnIndex:n,row:a,items:o}=l,{slots:d,editRender:s,cellRender:i,footerFormatter:c}=t,s=s||i;if(d&&d.footer)return r.callSlot(d.footer,l,e);let u="";u=_xeUtils.default.isArray(o)?o[n]:_xeUtils.default.get(a,t.field);i=Object.assign(l,{itemValue:u});if(c)return _xeUtils.default.isFunction(c)?""+c(i):(n=(o=(d=_xeUtils.default.isArray(c))?formats.get(c[0]):formats.get(c))?o.tableFooterCellFormatMethod:null)?""+(d?n(i,...c.slice(1)):n(i)):"";if(s){a=renderer.get(s.name),t=a?a.renderTableFooter||a.renderFooter:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,s,i))}return[(0,_utils.formatText)(u,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e,l){var{column:r,$table:t}=l,n=t.editConfig,{type:r,treeNode:a,editRender:o}=r,d=t.computeCheckboxOpts,t=t.computeEditOpts;switch(r){case"seq":return a?Cell.renderTreeIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return a?Cell.renderTreeRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return d.checkField?a?Cell.renderTreeSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):a?Cell.renderTreeSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return a?Cell.renderTreeHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return(0,_utils.isEnableConf)(n)&&o?"cell"===t.mode?a?Cell.renderTreeCellEdit(e,l):Cell.renderCellEdit(e,l):a?Cell.renderTreeRowEdit(e,l):Cell.renderRowEdit(e,l):a?Cell.renderTreeCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:r,$table:t}=l,t=t.editConfig,{type:r,filters:n,sortable:a,editRender:o}=r;switch(r){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(n&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(n)return Cell.renderFilterHeader(e,l)}return t&&o?Cell.renderEditHeader(e,l):n&&a?Cell.renderSortAndFilterHeader(e,l):a?Cell.renderSortHeader(e,l):n?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e,l){var{$table:r,column:t}=l,{slots:n,editRender:a,cellRender:o}=t,a=a||o;if(n&&n.header)return renderTitleContent(e,l,r.callSlot(n.header,l,e));if(a){o=renderer.get(a.name),n=o?o.renderTableHeader||o.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(r,e,a,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(t.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:r,row:t,column:n}=l,{slots:a,editRender:o,cellRender:d}=n,d=o||d;if(a&&a.default)return renderCellBaseVNs(e,l,r.callSlot(a.default,l,e));if(d){var a=renderer.get(d.name),s=a?a.renderTableDefault||a.renderDefault:null,a=a?a.renderTableCell||a.renderCell:null,a=o?a:s;if(a)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(a.call(r,e,d,Object.assign({$type:o?"edit":"cell"},l))))}s=r.getCellLabel(t,n),a=o?o.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[o&&(0,_utils.eqEmptyValue)(s)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(a),1)):e("span",(0,_utils.formatText)(s,1))])])},renderTreeCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return getFooterContent(e,l)},renderTreeIcon(e,l,r){let{$table:t,isHidden:n}=l;var a=t.treeExpandedFlag,{fullAllDataRowIdData:o,treeExpandedMaps:d,treeExpandLazyLoadedMaps:s}=t,i=t.computeTreeOpts,{row:c,column:u,level:C}=l,u=u.slots,{indent:g,lazy:p,trigger:E,iconLoaded:b,showIcon:x,iconOpen:f,iconClose:v}=i,m=i.children||i.childrenField,i=i.hasChild||i.hasChildField,m=c[m],m=m&&m.length,u=u?u.icon:null;let T=!1,h=!1,_=!1,I=!1;var H={};return u?t.callSlot(u,l,e):(n||(u=(0,_util.getRowid)(t,c),h=!!a&&!!d[u],p&&(a=o[u],_=!!s[u],T=c[i],I=!!a.treeLoaded)),E&&"default"!==E||(H.click=e=>{t.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":h}],style:{paddingLeft:C*g+"px"}},[x&&(!p||I?m:m||T)?[e("div",{class:"vxe-tree--btn-wrapper",on:H},[e("i",{class:["vxe-tree--node-btn",_?b||getIcon().TABLE_TREE_LOADED:h?f||getIcon().TABLE_TREE_OPEN:v||getIcon().TABLE_TREE_CLOSE]})])]:null,e("div",{class:"vxe-tree-cell"},r)])])},renderSeqHeader(e,l){var{$table:r,column:t}=l,n=t.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?r.callSlot(n.header,l,e):(0,_utils.formatText)(t.getTitle(),1)))},renderSeqCell(e,l){var{$table:r,column:t}=l,n=r.treeConfig,a=r.computeSeqOpts,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):(r=l.seq,t=a.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(t?t(l):n?r:(a.startIndex||0)+r,1))]))},renderTreeIndexCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:r,column:t}=l,n=t.slots,a=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,a?r.callSlot(a,l,e):[e("span",{class:"vxe-radio--label"},n?r.callSlot(n,l,e):(0,_utils.formatText)(t.getTitle(),1))]))},renderRadioCell(e,l){let{$table:r,column:t,isHidden:n}=l;var a=r.selectRadioRow,o=t.slots,{labelField:d,checkMethod:s,visibleMethod:i}=r.computeRadioOpts,c=l.row,u=o?o.default:null,o=o?o.radio:null,a=c===a;let C=!i||i({row:c}),g=!!s,p;n||(p={click(e){!g&&C&&r.triggerRadioRowEvent(e,l)}},s&&(g=!s({row:c})));i=Object.assign(Object.assign({},l),{checked:a,disabled:g,visible:C});return o?renderCellBaseVNs(e,l,r.callSlot(o,i,e)):(s=[],C&&s.push(e("span",{class:["vxe-radio--icon",a?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&s.push(e("span",{class:"vxe-radio--label"},u?r.callSlot(u,i,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":a,"is--disabled":g}],on:p},s)]))},renderTreeRadioCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:r,column:t,isHidden:n}=l;let{isAllSelected:a,isIndeterminate:o}=r,d=r.computeIsAllCheckboxDisabled;var s=t.slots,i=s?s.header:null,s=s?s.title:null,{checkStrictly:c,showHeader:u,headerTitle:C}=r.computeCheckboxOpts,g=t.getTitle(),p={},E=(n||(p.click=e=>{d||r.triggerCheckAllEvent(e,!a)}),Object.assign(Object.assign({},l),{checked:a,disabled:d,indeterminate:o}));return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,i?r.callSlot(i,E,e):(c?u:!1!==u)?[e("span",{class:["vxe-cell--checkbox",{"is--checked":a,"is--disabled":d,"is--indeterminate":o}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:p},[e("span",{class:["vxe-checkbox--icon",o?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(s||g?[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):g)]:[]))]:[e("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,E,e):g)]))},renderCheckboxCell(e,l){let{$table:r,row:t,column:n,isHidden:a}=l;var o=r.treeConfig,d=r.updateCheckboxFlag,{selectCheckboxMaps:s,treeIndeterminateRowMaps:i}=r,{labelField:c,checkMethod:u,visibleMethod:C}=r.computeCheckboxOpts,g=n.slots,p=g?g.default:null,g=g?g.checkbox:null;let E=!1,b=!1,x=!C||C({row:t}),f=!!u;var v,C={},d=(a||(v=(0,_util.getRowid)(r,t),b=!!d&&!!s[v],C.click=e=>{!f&&x&&r.triggerCheckRowEvent(e,l,!b)},u&&(f=!u({row:t})),o&&(E=!!i[v])),Object.assign(Object.assign({},l),{checked:b,disabled:f,visible:x,indeterminate:E}));return g?renderCellBaseVNs(e,l,r.callSlot(g,d,e)):(s=[],x&&s.push(e("span",{class:["vxe-checkbox--icon",E?getIcon().TABLE_CHECKBOX_INDETERMINATE:b?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(p||c)&&s.push(e("span",{class:"vxe-checkbox--label"},p?r.callSlot(p,d,e):_xeUtils.default.get(t,c))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":b,"is--disabled":f,"is--indeterminate":E,"is--hidden":!x}],on:C},s)]))},renderTreeSelectionCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:r,row:t,column:n,isHidden:a}=l;var o=r.treeConfig,d=r.updateCheckboxFlag,s=r.treeIndeterminateRowMaps,i=r.computeCheckboxOpts,{labelField:c,checkField:u,checkMethod:C,visibleMethod:g}=i,i=i.indeterminateField||i.halfField,p=n.slots,E=p?p.default:null,p=p?p.checkbox:null;let b=!1,x=!1,f=!g||g({row:t}),v=!!C;var m,g={},d=(a||(m=(0,_util.getRowid)(r,t),x=!!d&&_xeUtils.default.get(t,u),g.click=e=>{!v&&f&&r.triggerCheckRowEvent(e,l,!x)},C&&(v=!C({row:t})),o&&(b=!!s[m])),Object.assign(Object.assign({},l),{checked:x,disabled:v,visible:f,indeterminate:b}));return p?renderCellBaseVNs(e,l,r.callSlot(p,d,e)):(u=[],f&&u.push(e("span",{class:["vxe-checkbox--icon",b?getIcon().TABLE_CHECKBOX_INDETERMINATE:x?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(E||c)&&u.push(e("span",{class:"vxe-checkbox--label"},E?r.callSlot(E,d,e):_xeUtils.default.get(t,c))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":x,"is--disabled":v,"is--indeterminate":i&&!x?t[i]:b,"is--hidden":!f}],on:g},u)]))},renderTreeSelectionCellByProp(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:r,isHidden:t,row:n,column:a}=l;var{rowExpandedMaps:o,rowExpandLazyLoadedMaps:d}=r,{lazy:s,labelField:i,iconLoaded:c,showIcon:u,iconOpen:C,iconClose:g,visibleMethod:p}=r.computeExpandOpts,E=a.slots,b=E?E.default:null,E=E?E.icon:null;let x=!1,f=!1;return E?renderCellBaseVNs(e,l,r.callSlot(E,l,e)):(t||(E=(0,_util.getRowid)(r,n),x=!!o[E],s&&(f=!!d[E])),renderCellBaseVNs(e,l,[!u||p&&!p(l)?renderEmptyElement(r):e("span",{class:["vxe-table--expanded",{"is--active":x}],on:{mousedown(e){e.stopPropagation()},click(e){r.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",f?c||getIcon().TABLE_EXPAND_LOADED:x?C||getIcon().TABLE_EXPAND_OPEN:g||getIcon().TABLE_EXPAND_CLOSE]})]),b||i?e("span",{class:"vxe-table--expand-label"},b?r.callSlot(b,l,e):_xeUtils.default.get(n,i)):renderEmptyElement(r)]))},renderExpandData(e,l){var{$table:r,column:t}=l,{slots:t,contentRender:n}=t;if(t&&t.content)return r.callSlot(t.content,l,e);if(n){t=renderer.get(n.name),t=t?t.renderTableExpand||t.renderExpand:null;if(t)return(0,_vn.getSlotVNs)(t.call(r,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:r,column:t}=l,t=t.slots;return t&&t.default?renderCellBaseVNs(e,l,r.callSlot(t.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderTreeHTMLCell(e,l){return Cell.renderTreeIcon(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:r,column:t}=l;var{showIcon:n,allowBtn:a,ascTitle:o,descTitle:d,iconLayout:s,iconAsc:i,iconDesc:c,iconVisibleMethod:u}=r.computeSortOpts;return!n||u&&!u(l)?[]:[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${s}-layout`]},[e("i",{class:["vxe-sort--asc-btn",i||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===t.order}],attrs:{title:_xeUtils.default.eqNull(o)?getI18n("vxe.table.sortAsc"):""+(o||"")},on:a?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"asc")}}:void 0}),e("i",{class:["vxe-sort--desc-btn",c||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===t.order}],attrs:{title:_xeUtils.default.eqNull(d)?getI18n("vxe.table.sortDesc"):""+(d||"")},on:a?{click(e){e.stopPropagation(),r.triggerSortEvent(e,t,"desc")}}:void 0})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:r,column:t,hasFilter:n}=l;var a=r.filterStore,{showIcon:o,iconNone:d,iconMatch:s,iconVisibleMethod:i}=r.computeFilterOpts;return!o||i&&!i(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":a.visible&&a.column===t}],on:{click(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}}},[e("i",{class:["vxe-filter--btn",n?s||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")}})])]},renderEditHeader(e,l){var{$table:r,column:t}=l,{editConfig:n,editRules:a}=r,o=r.computeEditOpts,{sortable:d,filters:s,editRender:i}=t;let c=!1,u=(a&&(a=_xeUtils.default.get(a,t.field))&&(c=a.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&(u=[c&&o.showAsterisk?e("i",{class:"vxe-cell--required-icon"}):renderEmptyElement(r),(0,_utils.isEnableConf)(i)&&o.showIcon?e("i",{class:["vxe-cell--edit-icon",o.icon||getIcon().TABLE_EDIT]}):renderEmptyElement(r)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(s?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row)},renderTreeRowEdit(e,l){return Cell.renderTreeIcon(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:r,column:t}=l,r=r.editStore,r=r.actived,t=t.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(t)&&r&&r.row===l.row&&r.column===l.column)},renderTreeCellEdit(e,l){return Cell.renderTreeIcon(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,r,t){var{$table:n,column:a}=l,{slots:a,editRender:o,formatter:d}=a,s=renderer.get(o.name),s=s?s.renderTableEdit||s.renderEdit:null,i=Object.assign({$type:"",isEdit:t},l);return t?a&&a.edit?n.callSlot(a.edit,i,e):s?(0,_vn.getSlotVNs)(s.call(n,e,o,i)):[]:a&&a.default?renderCellBaseVNs(e,l,n.callSlot(a.default,i,e)):d?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(i)])]):Cell.renderDefaultCell.call(r,e,i)}};var _default=exports.default=Cell;
|
package/lib/table/src/methods.js
CHANGED
|
@@ -7441,13 +7441,14 @@ const Methods = {
|
|
|
7441
7441
|
*/
|
|
7442
7442
|
triggerRadioRowEvent(evnt, params) {
|
|
7443
7443
|
const $xeTable = this;
|
|
7444
|
+
const reactData = $xeTable;
|
|
7444
7445
|
const {
|
|
7445
|
-
selectRadioRow: oldValue
|
|
7446
|
-
|
|
7447
|
-
} = this;
|
|
7446
|
+
selectRadioRow: oldValue
|
|
7447
|
+
} = reactData;
|
|
7448
7448
|
const {
|
|
7449
7449
|
row
|
|
7450
7450
|
} = params;
|
|
7451
|
+
const radioOpts = $xeTable.computeRadioOpts;
|
|
7451
7452
|
const {
|
|
7452
7453
|
trigger
|
|
7453
7454
|
} = radioOpts;
|
|
@@ -7463,11 +7464,11 @@ const Methods = {
|
|
|
7463
7464
|
isChange = oldValue === newValue;
|
|
7464
7465
|
if (isChange) {
|
|
7465
7466
|
newValue = null;
|
|
7466
|
-
|
|
7467
|
+
$xeTable.clearRadioRow();
|
|
7467
7468
|
}
|
|
7468
7469
|
}
|
|
7469
7470
|
if (isChange) {
|
|
7470
|
-
|
|
7471
|
+
$xeTable.dispatchEvent('radio-change', Object.assign({
|
|
7471
7472
|
oldValue,
|
|
7472
7473
|
newValue
|
|
7473
7474
|
}, params), evnt);
|
|
@@ -7475,17 +7476,30 @@ const Methods = {
|
|
|
7475
7476
|
},
|
|
7476
7477
|
triggerCurrentColumnEvent(evnt, params) {
|
|
7477
7478
|
const $xeTable = this;
|
|
7478
|
-
const
|
|
7479
|
+
const reactData = $xeTable;
|
|
7479
7480
|
const {
|
|
7480
|
-
|
|
7481
|
-
} =
|
|
7481
|
+
currentColumn: oldValue
|
|
7482
|
+
} = reactData;
|
|
7483
|
+
const columnOpts = $xeTable.computeColumnOpts;
|
|
7484
|
+
const currentColumnOpts = $xeTable.computeCurrentColumnOpts;
|
|
7485
|
+
const beforeRowMethod = currentColumnOpts.beforeSelectMethod || columnOpts.currentMethod;
|
|
7482
7486
|
const {
|
|
7483
|
-
column
|
|
7487
|
+
column: newValue
|
|
7484
7488
|
} = params;
|
|
7485
|
-
|
|
7486
|
-
|
|
7489
|
+
const isChange = oldValue !== newValue;
|
|
7490
|
+
if (!beforeRowMethod || beforeRowMethod({
|
|
7491
|
+
column: newValue,
|
|
7492
|
+
$table: $xeTable
|
|
7487
7493
|
})) {
|
|
7488
|
-
$xeTable.setCurrentColumn(
|
|
7494
|
+
$xeTable.setCurrentColumn(newValue);
|
|
7495
|
+
if (isChange) {
|
|
7496
|
+
$xeTable.dispatchEvent('current-column-change', Object.assign({
|
|
7497
|
+
oldValue,
|
|
7498
|
+
newValue
|
|
7499
|
+
}, params), evnt);
|
|
7500
|
+
}
|
|
7501
|
+
} else {
|
|
7502
|
+
$xeTable.dispatchEvent('current-column-disabled', params, evnt);
|
|
7489
7503
|
}
|
|
7490
7504
|
},
|
|
7491
7505
|
triggerCurrentRowEvent(evnt, params) {
|
|
@@ -7495,23 +7509,30 @@ const Methods = {
|
|
|
7495
7509
|
currentRow: oldValue
|
|
7496
7510
|
} = reactData;
|
|
7497
7511
|
const rowOpts = $xeTable.computeRowOpts;
|
|
7498
|
-
const
|
|
7499
|
-
|
|
7500
|
-
} = rowOpts;
|
|
7512
|
+
const currentRowOpts = $xeTable.computeCurrentRowOpts;
|
|
7513
|
+
const beforeRowMethod = currentRowOpts.beforeSelectMethod || rowOpts.currentMethod;
|
|
7501
7514
|
const {
|
|
7502
7515
|
row: newValue
|
|
7503
7516
|
} = params;
|
|
7504
7517
|
const isChange = oldValue !== newValue;
|
|
7505
|
-
if (!
|
|
7506
|
-
row: newValue
|
|
7518
|
+
if (!beforeRowMethod || beforeRowMethod({
|
|
7519
|
+
row: newValue,
|
|
7520
|
+
$table: $xeTable
|
|
7507
7521
|
})) {
|
|
7508
7522
|
$xeTable.setCurrentRow(newValue);
|
|
7509
7523
|
if (isChange) {
|
|
7524
|
+
$xeTable.dispatchEvent('current-row-change', Object.assign({
|
|
7525
|
+
oldValue,
|
|
7526
|
+
newValue
|
|
7527
|
+
}, params), evnt);
|
|
7528
|
+
// 已废弃
|
|
7510
7529
|
$xeTable.dispatchEvent('current-change', Object.assign({
|
|
7511
7530
|
oldValue,
|
|
7512
7531
|
newValue
|
|
7513
7532
|
}, params), evnt);
|
|
7514
7533
|
}
|
|
7534
|
+
} else {
|
|
7535
|
+
$xeTable.dispatchEvent('current-row-disabled', params, evnt);
|
|
7515
7536
|
}
|
|
7516
7537
|
},
|
|
7517
7538
|
/**
|