vxe-table 4.21.2 → 4.21.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/dist/all.esm.js +142 -97
- package/dist/style.css +1 -1
- package/es/style.css +1 -1
- package/es/table/module/custom/hook.js +4 -0
- package/es/table/module/export/export-panel.js +3 -2
- package/es/table/module/export/hook.js +13 -7
- package/es/table/module/filter/hook.js +97 -79
- package/es/table/render/index.js +16 -6
- package/es/table/src/table.js +5 -0
- 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 +157 -103
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/custom/hook.js +6 -0
- package/lib/table/module/custom/hook.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/hook.js +15 -7
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/module/filter/hook.js +111 -86
- package/lib/table/module/filter/hook.min.js +1 -1
- package/lib/table/render/index.js +17 -4
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/table.js +1 -1
- package/lib/table/src/table.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/hook.ts +4 -0
- package/packages/table/module/export/export-panel.ts +3 -2
- package/packages/table/module/export/hook.ts +12 -7
- package/packages/table/module/filter/hook.ts +94 -75
- package/packages/table/render/index.ts +16 -6
- package/packages/table/src/table.ts +5 -0
- package/packages/table/src/util.ts +1 -0
- package/packages/ui/src/dom.ts +1 -1
- /package/es/{iconfont.1787677402393.ttf → iconfont.1788399047071.ttf} +0 -0
- /package/es/{iconfont.1787677402393.woff → iconfont.1788399047071.woff} +0 -0
- /package/es/{iconfont.1787677402393.woff2 → iconfont.1788399047071.woff2} +0 -0
- /package/lib/{iconfont.1787677402393.ttf → iconfont.1788399047071.ttf} +0 -0
- /package/lib/{iconfont.1787677402393.woff → iconfont.1788399047071.woff} +0 -0
- /package/lib/{iconfont.1787677402393.woff2 → iconfont.1788399047071.woff2} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
var _vue=require("vue"),_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,hooks}=_ui.VxeUI,tableFilterMethodKeys=["openFilter","setFilter","clearFilter","saveFilter","saveFilterByEvent","saveFilterPanel","saveFilterPanelByEvent","resetFilter","resetFilterByEvent","resetFilterPanel","resetFilterPanelByEvent","getCheckedFilters","updateFilterOptionStatus"],sourceType="table";hooks.add("tableFilterModule",{setupTable(
|
|
1
|
+
var _vue=require("vue"),_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,hooks}=_ui.VxeUI,tableFilterMethodKeys=["openFilter","setFilter","clearFilter","saveFilter","saveFilterByEvent","saveFilterPanel","saveFilterPanelByEvent","resetFilter","resetFilterByEvent","resetFilterPanel","resetFilterPanelByEvent","getCheckedFilters","updateFilterOptionStatus"],sourceType="table";hooks.add("tableFilterModule",{setupTable(s){let a=s.xeGrid,u=s.xeGantt,C=a||u,{props:h,reactData:x,internalData:k}=s,{refElem:e,refTableFilter:t}=s.getRefMaps(),{computeFilterOpts:E,computeMouseOpts:f}=s.getComputeMaps(),o=()=>{var r=x.filterStore,i=k.elemStore,{column:n,targetEl:a}=r;if(n&&a){var u=e.value,{scrollTop:o,scrollLeft:d,visibleHeight:c,visibleWidth:s}=(0,_dom.getDomNode)(),{maxHeight:h,transfer:f,zIndex:v}=E.value,F=u.getBoundingClientRect(),m=n?n.filterRender:null,m=m&&(0,_utils.isEnableConf)(m)?renderer.get(m.name):null;if((0,_util.getRefElem)(i["main-header-scroll"])){i=t.value,i=i?i.getRefMaps().refElem.value:null;if(i){var p=a.getBoundingClientRect(),g=i.querySelector(".vxe-table--filter-header"),_=i.querySelector(".vxe-table--filter-footer"),i=i.offsetWidth,n=a?i/2:(i-n.renderWidth)/2;let e=0,t=0,l=0;f?(e=p.left-n+d,t=p.top+a.clientHeight+o,l=Math.min(Math.max(F.height,Math.floor(c/2)),Math.max(80,c-t-(g?g.clientHeight:0)-(_?_.clientHeight:0)-28)),e<16?e=16:e>s-i-16&&(e=s-i-16)):(e=p.left-F.left-n,t=p.top-F.top+a.clientHeight,l=Math.max(40,u.clientHeight-t-(g?g.clientHeight:0)-(_?_.clientHeight:0)-14),e<1?e=1:e>u.clientWidth-i-1&&(e=u.clientWidth-i-1),C&&(f=C.getRefMaps().refElem.value)&&(d=f.getBoundingClientRect(),t+=F.top-d.top));o={top:(0,_dom.toCssUnit)(t),left:(0,_dom.toCssUnit)(e)};v&&(o.zIndex=v),r.style=o,m&&!m.tableFilterAutoHeight?l=0:h&&(l=h>l?l:h),r.maxHeight=l}}}return(0,_vue.nextTick)()};var l={checkFilterOptions(){var e=x.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,r,i){var{initStore:n,filterStore:a}=x;a.column===r&&a.visible?a.visible=!1:(t=t||l,s.handleFilterOptions(r),k._currFilterParams=i,a.targetEl=t,a.style=null,a.visible=!0,n.filter=!0),(0,_vue.nextTick)(()=>{o()}),s.dispatchEvent("filter-visible",{column:r,field:r.field,property:r.field,filterList:s.getCheckedFilters(),visible:a.visible},e)},triggerFilterEvent(e,t,l){var r=k.elemStore,i=t.fixed,i=(0,_util.getRefElem)(r[`${i||"main"}-header-wrapper`]||r["main-header-wrapper"]),r=e.currentTarget,i=i?i.querySelector(".vxe-header--column."+t.id):null;s.handleOpenFilterColumn(e,r,i||r,t,l)},handleClearFilter(e){if(e){var{filters:l,filterRender:r}=e;if(l){r=(0,_utils.isEnableConf)(r)?renderer.get(r.name):null;let t=e.filterResetMethod||(r?r.tableFilterResetMethod||r.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:s})}}},handleColumnConfirmFilter(e,t){var l=h.mouseConfig;let{scrollXLoad:r,scrollYLoad:i}=x;var n=E.value,a=f.value,{field:u,filters:o}=e;let d=[],c=[];(o||[]).forEach(e=>{e.checked&&(d.push(e.value),c.push(e.data))});o=s.getCheckedFilters(),e={$table:s,$event:t,column:e,field:u,property:u,values:d,datas:c,filters:o,filterList:o};return n.remote||(s.handleTableData(!0),s.checkSelectionStatus()),l&&a.area&&s.handleFilterEvent&&s.handleFilterEvent(t,e),t&&s.dispatchEvent("filter-change",e,t),s.closeFilter(),s.updateFooter().then(()=>{var{scrollXLoad:e,scrollYLoad:t}=x;if(r||e||i||t)return(r||e)&&s.updateScrollXSpace(),(i||t)&&s.updateScrollYSpace(),s.refreshScroll()}).then(()=>(s.updateCellAreas(),s.recalculate(!0))).then(()=>{setTimeout(()=>s.recalculate(),50)})},confirmFilterEvent(e,t){t&&s.handleColumnConfirmFilter(t,e)},handleFilterChangeRadioOption(e,t,l){var r=x.filterStore,r=r.column;r&&((r.filters||[]).forEach(e=>{e._checked=!1}),l._checked=t,s.checkFilterOptions(),s.handleFilterConfirmFilter(e,r))},handleFilterChangeMultipleOption(e,t,l){l._checked=t,s.checkFilterOptions()},handleFilterChangeOption(e,t,l){var r=x.filterStore,i=k.fullColumnIdData;let n=r.column;n||(i=i[l._colId])&&(n=i.column,r.column=n),n&&(n.filterMultiple?s.handleFilterChangeMultipleOption(e,t,l):s.handleFilterChangeRadioOption(e,t,l))},handleFilterConfirmFilter(e,t){t&&((t.filters||[]).forEach(e=>{e.checked=e._checked}),s.confirmFilterEvent(e,t))},handleFilterResetFilter(e,t){t&&(s.handleClearFilter(t),s.confirmFilterEvent(e,t),e)&&s.dispatchEvent("clear-filter",{filterList:[]},e)},handleFilterStyle(){var e=x.filterStore;return(e.visible?o:(0,_vue.nextTick))()}};return Object.assign(Object.assign({},{openFilter(e){let n=(0,_util.handleFieldOrColumn)(s,e);if(n&&n.filters){let e=k.elemStore,{fixed:r,filters:i}=n;return s.scrollToColumn(n).then(()=>{var t=(0,_util.getRefElem)(e[`${r||"main"}-header-wrapper`]||e["main-header-wrapper"]);if(t){var l=t.querySelector(`.vxe-header--column.${n.id} .vxe-cell--filter`);if(l)(0,_dom.triggerEvent)(l,"click");else{l=t.querySelector(".vxe-header--column."+n.id);if(l){let e=null;i&&(e=i[0]);t={$table:s,$grid:a,$gantt:u,$rowIndex:-1,column:n,columnIndex:s.getColumnIndex(n),$columnIndex:s.getVMColumnIndex(n),_columnIndex:s.getVTColumnIndex(n),firstFilterOption:e,fixed:r,source:sourceType,type:"header"};s.handleOpenFilterColumn(new Event("click"),null,l,n,t)}}}})}return(0,_vue.nextTick)()},setFilter(e,t,l){var r=x.filterStore,e=(0,_util.handleFieldOrColumn)(s,e);if(e&&e.filters){if(e.filters=(0,_util.toFilters)(t||[],e.id),l)return s.handleColumnConfirmFilter(e,null);r.visible&&s.handleFilterOptions(e)}return(0,_vue.nextTick)()},clearFilter(e){var t=x.filterStore,l=k.tableFullColumn,r=E.value;let i;return e?(i=(0,_util.handleFieldOrColumn)(s,e))&&s.handleClearFilter(i):l.forEach(s.handleClearFilter),e&&i===t.column||Object.assign(t,{isAllSelected:!1,isIndeterminate:!1,style:null,options:[],column:null,multiple:!1,visible:!1}),r.remote?(0,_vue.nextTick)():s.updateData()},saveFilter(e){return e&&(e=(0,_util.handleFieldOrColumn)(s,e),s.handleFilterConfirmFilter(null,e)),(0,_vue.nextTick)()},saveFilterByEvent(e,t){return t&&(t=(0,_util.handleFieldOrColumn)(s,t),s.handleFilterConfirmFilter(e,t)),(0,_vue.nextTick)()},resetFilter(e){return e&&(e=(0,_util.handleFieldOrColumn)(s,e),s.handleFilterResetFilter(null,e)),(0,_vue.nextTick)()},resetFilterByEvent(e,t){return t&&(t=(0,_util.handleFieldOrColumn)(s,t),s.handleFilterResetFilter(e,t)),(0,_vue.nextTick)()},saveFilterPanel(){var e=x.filterStore;return s.handleFilterConfirmFilter(null,e.column||null),(0,_vue.nextTick)()},saveFilterPanelByEvent(e){var t=x.filterStore;return s.handleFilterConfirmFilter(e,t.column||null),(0,_vue.nextTick)()},resetFilterPanel(){var e=x.filterStore;return s.handleFilterResetFilter(null,e.column||null),(0,_vue.nextTick)()},resetFilterPanelByEvent(e){var t=x.filterStore;return s.handleFilterResetFilter(e,t.column||null),(0,_vue.nextTick)()},getCheckedFilters(){var e=k.tableFullColumn;let n=[];return e.forEach(e=>{var{field:t,filters:l}=e,l=l||[];let r=[],i=[];l&&(l.forEach(e=>{e.checked&&(r.push(e.value),i.push(e.data))}),r.length)&&n.push({column:e,field:t,property:t,values:r,datas:i})}),n},updateFilterOptionStatus(e,t){return e._checked=t,e.checked=t,(0,_vue.nextTick)()}}),l)},setupGrid(e){return e.extendTableMethods(tableFilterMethodKeys)},setupGantt(e){return e.extendTableMethods(tableFilterMethodKeys)}});
|
|
@@ -1839,17 +1839,30 @@ renderer.mixin({
|
|
|
1839
1839
|
},
|
|
1840
1840
|
renderTableCell(renderOpts, params) {
|
|
1841
1841
|
const {
|
|
1842
|
+
$table,
|
|
1842
1843
|
row,
|
|
1843
1844
|
column
|
|
1844
1845
|
} = params;
|
|
1846
|
+
const {
|
|
1847
|
+
props
|
|
1848
|
+
} = renderOpts;
|
|
1849
|
+
const {
|
|
1850
|
+
computeSize
|
|
1851
|
+
} = $table.getComputeMaps();
|
|
1852
|
+
const customSize = props ? props.size : null;
|
|
1853
|
+
const vSize = customSize || computeSize.value;
|
|
1845
1854
|
const cellValue = _xeUtils.default.get(row, column.field);
|
|
1846
1855
|
return (0, _vue.h)('span', {
|
|
1847
|
-
class: 'vxe-color-picker--readonly'
|
|
1856
|
+
class: ['vxe-color-picker--readonly', {
|
|
1857
|
+
[`size--${vSize}`]: vSize
|
|
1858
|
+
}]
|
|
1848
1859
|
}, [(0, _vue.h)('div', {
|
|
1849
|
-
class: 'vxe-color-picker--readonly-color',
|
|
1850
|
-
|
|
1860
|
+
class: ['vxe-color-picker--readonly-color', {
|
|
1861
|
+
'is--empty': !cellValue
|
|
1862
|
+
}],
|
|
1863
|
+
style: cellValue ? {
|
|
1851
1864
|
backgroundColor: cellValue
|
|
1852
|
-
}
|
|
1865
|
+
} : undefined
|
|
1853
1866
|
})]);
|
|
1854
1867
|
}
|
|
1855
1868
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("../../table/src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let errLog=(0,_log.createComponentLog)("table").errLog,{getConfig,renderer,getI18n,getComponent}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={};function handleDefaultValue(e,t,l){return _xeUtils.default.eqNull(e)?_xeUtils.default.eqNull(t)?l:t:e}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,l){var{dateConfig:n={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),n.labelFormat||l)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+(t.type||"date")))}function getOldComponentName(e){return"vxe-"+e.replace("$","")}function getDefaultComponent({name:e}){return getComponent(e)}function getOldComponent({name:e}){return(0,_vue.resolveComponent)(getOldComponentName(e))}function updateFilterChangeOption(e,t,l){e=e.$table;e.updateFilterOptionStatus(l,t)}function saveFilterEvent(e){var{$table:e,column:t}=e;e.saveFilterByEvent(new Event("change"),t)}function getNativeAttrs(e){let{name:t,attrs:l}=e;return l="input"===t?Object.assign({type:"text"},l):l}function getInputImmediateModel(e){var{name:e,immediate:t,props:l}=e;return t||("VxeInput"===e||"$input"===e?(t=(l||{}).type,!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,l,n){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,n,e.props,{[componentDefaultModelProp]:l})}function getCellEditFilterProps(e,t,l,n){return _xeUtils.default.assign({},defaultCompProps,n,e.props,{[componentDefaultModelProp]:l})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,l,n){e=e.placeholder;return[(0,_vue.h)("span",{key:1,class:["vxe-cell--label",n?n.class:""]},e&&(0,_utils.isEmptyValue)(l)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(e),1))]:(0,_utils.formatText)(l,1))]}function getNativeElementOns(e,l,t){let n=e.events,a=(0,_vn.getModelEvent)(e),r=(0,_vn.getChangeEvent)(e),{model:u,change:o,blur:i}=t||{},d=r===a,s={};return n&&_xeUtils.default.objectEach(n,(t,e)=>{s[(0,_vn.getOnName)(e)]=function(...e){t(l,...e)}}),u&&(s[(0,_vn.getOnName)(a)]=function(e){u(e),d&&o&&o(e),n&&n[a]&&n[a](l,e)}),!d&&o&&(s[(0,_vn.getOnName)(r)]=function(e){o(e),n&&n[r]&&n[r](l,e)}),i&&(s[(0,_vn.getOnName)(blurEvent)]=function(e){i(e),n&&n[blurEvent]&&n[blurEvent](l,e)}),s}let blurEvent="blur",clearEvent="clear";function getComponentOns(e,l,t,n){let a=e.events,r=(0,_vn.getModelEvent)(e),u=(0,_vn.getChangeEvent)(e),{model:o,change:i,blur:d,clear:s}=t||{},c={};return _xeUtils.default.objectEach(a,(t,e)=>{c[(0,_vn.getOnName)(e)]=function(...e){_xeUtils.default.isFunction(t)||errLog("vxe.error.errFunc",[t]),t(l,...e)}}),o&&(c[(0,_vn.getOnName)(r)]=function(e){o(e),a&&a[r]&&a[r](l,e)}),i&&(c[(0,_vn.getOnName)(u)]=function(...e){i(...e),a&&a[u]&&a[u](l,...e)}),d&&(c[(0,_vn.getOnName)(blurEvent)]=function(...e){d(...e),a&&a[blurEvent]&&a[blurEvent](l,...e)}),s&&(c[(0,_vn.getOnName)(clearEvent)]=function(...e){s(...e),a&&a[clearEvent]&&a[clearEvent](l,...e)}),n?Object.assign(c,n):c}function getEditOns(e,t){let{$table:l,row:n,column:a}=t,r=e.name,u=a.model,o=isImmediateCell(e,t);return getComponentOns(e,t,{model(e){u.update=!0,u.value=e,o&&(0,_util.setCellValue)(n,a,e)},change(e){!o&&r&&["VxeInput","VxeNumberInput","VxeTextarea","$input","$textarea"].includes(r)?(e=e.value,u.update=!0,u.value=e,l.updateStatus(t,e)):l.updateStatus(t)},blur(){o?l.handleCellRuleUpdateStatus("blur",t):l.handleCellRuleUpdateStatus("blur",t,u.value)}})}function getFilterOns(e,t,l){return getComponentOns(e,t,{model(e){l.data=e},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)},blur(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)}})}function getFloatingFilterOns(e,t,l){let{$table:n,column:a}=t;return(0,_vn.hasInputType)(e)?getComponentOns(e,t,{model(e){l.data=e},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)},clear(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)},blur(){n.saveFilterByEvent(new Event("change"),a)}},"VxeNumberInput"===e.name?{[(0,_vn.getOnName)("plus-number")](){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)},[(0,_vn.getOnName)("minus-number")](){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)}}:{}):getComponentOns(e,t,{model(e){l.data=e},clear(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),n.saveFilterByEvent(new Event("change"),a)},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),n.saveFilterByEvent(new Event("change"),a)}})}function getNativeEditOns(t,l){let{$table:n,row:a,column:r}=l,u=r.model;return getNativeElementOns(t,l,{model(e){var e=e.target;e&&(e=e.value,isImmediateCell(t,l)?(0,_util.setCellValue)(a,r,e):(u.update=!0,u.value=e))},change(e){var e=e.target;e&&(e=e.value,n.updateStatus(l,e))},blur(e){var e=e.target;e&&(e=e.value,n.updateStatus(l,e))}})}function getNativeFilterOns(e,t,l){return getNativeElementOns(e,t,{model(e){e=e.target;e&&(l.data=e.value)},change(){updateFilterChangeOption(t,!_xeUtils.default.eqNull(l.data),l)},blur(){updateFilterChangeOption(t,!_xeUtils.default.eqNull(l.data),l)}})}function nativeInputCellRender(e,t){var{row:l,column:n}=t,l=_xeUtils.default.get(l,n.field);return getNativeInputRenderCellVNs(l,[(0,_vue.h)("span",{key:1},l)],e,t)}function nativeInputEditRender(e,t){var{row:l,column:n}=t,a=e.name,l=isImmediateCell(e,t)?(0,_util.getCellValue)(l,n):n.model.value;return[(0,_vue.h)(""+a,Object.assign(Object.assign(Object.assign({key:2,class:"vxe-default-"+a},getNativeAttrs(e)),{value:l}),getNativeEditOns(e,t)))]}function buttonCellRender(e,t){return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function defaultInputEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({key:2},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function defaultEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function checkboxEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function radioAndCheckboxGroupEditRender(e,t){var l=e.options,{row:n,column:a}=t,n=(0,_util.getCellValue)(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({options:l},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function oldButtonEditRender(e,t){return[(0,_vue.h)(getComponent("vxe-button"),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function oldButtonsEditRender(e,t){e=e.children;return e?e.map(e=>oldButtonEditRender(e,t)[0]):[]}function renderNativeOptgroups(l,n,a){var{optionGroups:e,optionGroupProps:t={}}=l;let r=t.options||"options",u=t.label||"label";return e?e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[u]},a(e[r],l,n))):[]}function renderNativeOptions(e,t,l){var{optionProps:n={}}=t,{row:a,column:r}=l;let u=n.label||"label",o=n.value||"value",i=n.disabled||"disabled",d=isImmediateCell(t,l)?(0,_util.getCellValue)(a,r):r.model.value;return e?e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[o],disabled:e[i],selected:e[o]==d},e[u])):[]}function nativeFilterRender(l,n){var e=n.column;let a=l.name,r=getNativeAttrs(l);return e.filters.map((e,t)=>(0,_vue.h)(""+a,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+a},r),{value:e.data}),getNativeFilterOns(l,n,e))))}function defaultFilterRender(n,a){var e=a.column;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getDefaultComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,n,l)),getFilterOns(n,a,e)))})}function defaultFloatingFilterRender(e,t){var l=t.option,n=l.data;return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditFilterProps(e,e,n)),getFloatingFilterOns(e,t,l)))]}function defaultFilterOptions(){return[{data:null}]}function oldFilterRender(n,a){var e=a.column;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getOldComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,n,l)),getFilterOns(n,a,e)))})}function handleFilterMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e}function handleInputFilterMethod({option:e,row:t,column:l}){e=e.data,t=_xeUtils.default.get(t,l.field);return-1<_xeUtils.default.toValueString(t).indexOf(e)}function nativeSelectEditRender(e,t){return[(0,_vue.h)("select",Object.assign(Object.assign({class:"vxe-default-select"},getNativeAttrs(e)),getNativeEditOns(e,t)),e.optionGroups?renderNativeOptgroups(e,t,renderNativeOptions):renderNativeOptions(e.options,e,t))]}function defaultSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o})),getEditOns(e,t)))]}function defaultTableOrTreeSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o})),getEditOns(e,t)))]}function handleSelectCellValue(t,e){let{options:l,optionGroups:n,optionProps:a={},optionGroupProps:r={},props:u={}}=e,o,i=a.label||"label",d=a.value||"value";if(null==t)return"";{let e=[];return e=_xeUtils.default.isArray(t)?t:u.multiple&&-1<(""+t).indexOf(",")?(""+t).split(","):[t],_xeUtils.default.map(e,n?t=>{var l=r.options||"options";for(let e=0;e<n.length&&!(o=_xeUtils.default.find(n[e][l],e=>e[d]==t));e++);return o?o[i]:t}:t=>(o=_xeUtils.default.find(l,e=>e[d]==t))?o[i]:t).join(", ")}}function getSelectCellValue(e,{row:t,column:l}){return handleSelectCellValue(_xeUtils.default.get(t,l.field),e)}function handleExportSelectMethod(e){var{row:t,column:l,options:n}=e;return n.original?(0,_util.getCellValue)(t,l):getSelectCellValue(l.editRender||l.cellRender,e)}function handleTreeSelectCellValue(e,l){var{options:l,optionProps:n={}}=l;let a=n.label||"label",r=n.value||"value";if(null==e)return"";{let t={};return _xeUtils.default.eachTree(l,e=>{t[_xeUtils.default.get(e,r)]=e},{children:n.children||"children"}),_xeUtils.default.map(_xeUtils.default.isArray(e)?e:[e],e=>{e=t[e];return e&&_xeUtils.default.get(e,a)}).join(", ")}}function getTreeSelectCellValue(e,{row:t,column:l}){return handleTreeSelectCellValue(_xeUtils.default.get(t,l.field),e)}function handleExportTreeSelectMethod(e){var{row:t,column:l,options:n}=e;return n.original?(0,_util.getCellValue)(t,l):getTreeSelectCellValue(l.editRender||l.cellRender,e)}function handleNumberCell(e,t,l){var n,a,r,u,{props:o={},showNegativeStatus:i}=t,d=o.type;let s=!1;return(0,_utils.isEmptyValue)(e)||(n=getConfig().numberInput||{},"float"===d?(r=handleDefaultValue(o.autoFill,n.autoFill,!0),u=handleDefaultValue(o.digits,n.digits,1),e=_xeUtils.default.toFixed(_xeUtils.default.floor(e,u),u),r||(e=_xeUtils.default.toNumber(e)),i&&e<0&&(s=!0)):"amount"===d?(u=handleDefaultValue(o.autoFill,n.autoFill,!0),r=handleDefaultValue(o.digits,n.digits,2),a=handleDefaultValue(o.showCurrency,n.showCurrency,!1),e=_xeUtils.default.toNumber(e),i&&e<0&&(s=!0),e=_xeUtils.default.commafy(e,{digits:r}),u||([r,u]=e.split("."),u&&(e=(u=u.replace(/0+$/,""))?[r,".",u].join(""):r)),a&&(e=""+(o.currencySymbol||n.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+e)):("integer"===d&&(e=_xeUtils.default.toInteger(e)),i&&_xeUtils.default.toNumber(e)<0&&(s=!0))),getCellLabelVNs(t,l,e,s?{class:"is--negative"}:{})}function handleFormatDatePicker(e,t){var{props:e={}}=e,t=t.cellValue;return t&&"time"!==e.type?getLabelFormatDate(t,e):t}function handleFormatSelect(e,t){t=t.cellValue;return handleSelectCellValue(t,e)}function handleSetSelectValue(e,t){var{row:a,column:t,cellValue:r}=t,u=t.field;if(u){var{options:o,optionGroups:i,optionProps:t={},optionGroupProps:e={},props:l}=e;if((0,_utils.isEmptyValue)(r))_xeUtils.default.set(a,u,l&&l.multiple?[]:null);else{var d=-1<_xeUtils.default.indexOf(""+r,","),s=t.label||"label";let l=t.value||"value",n={};if(i&&i.length){var c=e.options||"options";for(let e=0;e<i.length;e++){var p=i[e][c]||{};for(let e=0;e<p.length;e++){var g=p[e];if(d)n[g[s]]=g;else if(g[s]==r)return void _xeUtils.default.set(a,u,g[l])}}}else if(o)for(let e=0;e<o.length;e++){var f=o[e];if(d)n[f[s]]=f;else if(f[s]==r)return void _xeUtils.default.set(a,u,f[l])}d?_xeUtils.default.set(a,u,(d?r.split(","):[r]).map(e=>{var t=n[e];return t?t[l]:e})):_xeUtils.default.set(a,u,r)}}}function handleFormatTreeSelect(e,t){t=t.cellValue;return handleTreeSelectCellValue(t,e)}function handleSetTreeSelectValue(e,l){let{row:n,column:t,cellValue:a}=l;l=t.field;if(l){var{options:e,optionProps:r={}}=e;let t=r.label||"label";var u=r.value||"value",e=_xeUtils.default.findTree(e||[],e=>_xeUtils.default.get(e,t)===a,{children:r.children||"children"});if(e){r=e.item;if(r)return void _xeUtils.default.set(n,l,r[u])}_xeUtils.default.set(n,l,a)}}function getNativeInputRenderCellVNs(e,t,l,n){var{$table:a,row:r,column:u}=n,o=l.name,{editConfig:i,mouseConfig:d}=a.props;let s=!1,c=!1;return((c=i&&d&&(i=a.reactData.editStore,d=i.selected,s=r===d.row&&u===d.column,a.getActiveCellArea)&&(i=a.getActiveCellArea())?r===i.row&&u===i.column:c)||s)&&t.push((0,_vue.h)(""+o,Object.assign(Object.assign({key:2,class:`vxe-default-${o} vxe-reusekeep-control`,value:e},getNativeAttrs(l)),getNativeEditOns(l,n)))),t}function getInputRenderCellVNs(e,t,l,n){var{$table:a,row:r,column:u}=n,{editConfig:o,mouseConfig:i}=a.props;let d=!1,s=!1;return((s=o&&i&&(o=a.reactData.editStore,i=a.getComputeMaps().computeEditOpts,i.value.isReuseKeep)&&(i=o.selected,d=r===i.row&&u===i.column,a.getActiveCellArea)&&(o=a.getActiveCellArea())?r===o.row&&u===o.column:s)||d)&&({className:a,inputClassName:r}=i=getCellEditProps(l,n,e),t.push((0,_vue.h)(getDefaultComponent(l),Object.assign(Object.assign(Object.assign({key:2},i),{className:"vxe-reusekeep-control"+(a?" "+a:""),inputClassName:"vxe-reusekeep-control"+(r?" "+r:"")}),getEditOns(l,n))))),t}renderer.mixin({input:{tableAutoFocus:!0,renderTableEdit:nativeInputEditRender,renderTableCell:nativeInputCellRender,renderTableDefault:nativeInputEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:nativeFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},textarea:{tableAutoFocus:!0,renderTableEdit:nativeInputEditRender,renderTableCell:nativeInputCellRender,renderTableDefault:nativeInputEditRender},select:{renderTableEdit:nativeSelectEditRender,renderTableDefault:nativeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},createTableFilterOptions:defaultFilterOptions,renderTableFilter(l,n){var e=n.column;return e.filters.map((e,t)=>(0,_vue.h)("select",Object.assign(Object.assign({key:t,class:"vxe-default-select"},getNativeAttrs(l)),getNativeFilterOns(l,n,e)),l.optionGroups?renderNativeOptgroups(l,n,renderNativeOptions):renderNativeOptions(l.options,l,n)))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeInput:{tableAutoFocus:!0,renderTableEdit:defaultInputEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:a}=t,r=getConfig().input||{},u=l.digits||r.digits||2;let o=_xeUtils.default.get(n,a.field);if(o)switch(l.type){case"date":case"week":case"month":case"quarter":case"year":o=getLabelFormatDate(o,l);break;case"float":o=_xeUtils.default.toFixed(_xeUtils.default.floor(o,u),u)}r=getCellLabelVNs(e,t,o);return getInputRenderCellVNs(o,r,e,t)},renderTableDefault:defaultInputEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},FormatNumberInput:{renderTableDefault(e,t){var{row:l,column:n}=t;return handleNumberCell(_xeUtils.default.get(l,n.field),e,t)},tableFilterDefaultMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e},tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeNumberInput:{tableAutoFocus:!0,renderTableEdit:defaultInputEditRender,renderTableCell(e,t){var{row:l,column:n}=t,l=_xeUtils.default.get(l,n.field);return getInputRenderCellVNs(l,handleNumberCell(l,e,t),e,t)},renderTableFooter(t,l){var{props:t={}}=t,{row:l,column:n,_columnIndex:a}=l,r=t.type,a=_xeUtils.default.isArray(l)?l[a]:_xeUtils.default.get(l,n.field);if(_xeUtils.default.isNumber(a)){l=getConfig().numberInput||{};if("float"===r){var n=handleDefaultValue(t.autoFill,l.autoFill,!0),u=handleDefaultValue(t.digits,l.digits,1);let e=_xeUtils.default.toFixed(_xeUtils.default.floor(a,u),u);return e=n?e:""+_xeUtils.default.toNumber(e)}if("amount"===r){var u=handleDefaultValue(t.autoFill,l.autoFill,!0),n=handleDefaultValue(t.digits,l.digits,2),r=handleDefaultValue(t.showCurrency,l.showCurrency,!1);let e=_xeUtils.default.commafy(_xeUtils.default.toNumber(a),{digits:n});return u||([n,u]=e.split("."),u&&(u=u.replace(/0+$/,""),e=u?[n,".",u].join(""):n)),e=r?""+(t.currencySymbol||l.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+e:e}}return(0,_utils.getFuncText)(a,1)},renderTableDefault:defaultInputEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e},tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeDatePicker:{tableAutoFocus:!0,renderTableEdit:defaultEditRender,renderTableCell(e,t){let l=e.props||{};var{$table:n,row:a,column:r}=t,n=n.effectCellData(a,r,{key:"render_table_cell",getResult({cellValue:e}){return e&&"time"!==l.type?getLabelFormatDate(e,l):e}}).cellResult;return getCellLabelVNs(e,t,n)},tableCellFormatter:handleFormatDatePicker,renderTableDefault:defaultEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleFilterMethod},VxeDateRangePicker:{tableAutoFocus:!0,renderTableEdit(e,t){let{startField:l,endField:n}=e,{$table:a,row:r,column:u}=t,o=u.model;var i=(0,_util.getCellValue)(r,u),d={},s={};return l&&n&&(d.startValue=_xeUtils.default.get(r,l),d.endValue=_xeUtils.default.get(r,n),s["onUpdate:startValue"]=e=>{l&&_xeUtils.default.set(r,l,e)},s["onUpdate:endValue"]=e=>{n&&_xeUtils.default.set(r,n,e)}),[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,i,d)),getComponentOns(e,t,{model(e){o.update=!0,o.value=e,(0,_util.setCellValue)(r,u,e)},change(){a.updateStatus(t)},blur(){a.handleCellRuleUpdateStatus("blur",t)}},s)))]},renderTableDefault(e,t){let{startField:l,endField:n}=e,{row:a,column:r}=t,u=r.model;var o=(0,_util.getCellValue)(a,r),i={},d={};return l&&n&&(i.startValue=_xeUtils.default.get(a,l),i.endValue=_xeUtils.default.get(a,n),d["onUpdate:startValue"]=e=>{l&&_xeUtils.default.set(a,l,e)},d["onUpdate:endValue"]=e=>{n&&_xeUtils.default.set(a,n,e)}),[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,o,i)),getComponentOns(e,t,{model(e){u.update=!0,u.value=e,(0,_util.setCellValue)(a,r,e)}},d)))]},renderTableCell(e,t){var{startField:l,endField:n}=e,{row:a,column:r}=t;let u="",o="",i=(l&&n?(u=_xeUtils.default.get(a,l),o=_xeUtils.default.get(a,n)):(l=_xeUtils.default.get(a,r.field))&&(o=(_xeUtils.default.isArray(l)?(u=l[0],l):(n=(""+l).split(","),u=n[0],n))[1]),"");return getCellLabelVNs(e,t,i=u&&o?u+" ~ "+o:i)}},VxeTextarea:{tableAutoFocus:!0,renderTableDefault:defaultInputEditRender,renderTableCell(e,t){var{row:l,column:n}=t,l=_xeUtils.default.get(l,n.field);return getInputRenderCellVNs(l,getCellLabelVNs(e,t,l),e,t)},renderTableEdit:defaultInputEditRender},VxeButton:{renderTableDefault:buttonCellRender},VxeButtonGroup:{renderTableDefault(e,t){var l=e.options;return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({options:l},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}},VxeSelect:{tableAutoFocus:!0,renderTableEdit:defaultSelectEditRender,renderTableDefault:defaultSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},createTableFilterOptions:defaultFilterOptions,renderTableFilter(n,a){var e=a.column;let{options:r,optionProps:u,optionGroups:o,optionGroupProps:i}=n;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getDefaultComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,a,l,{options:r,optionProps:u,optionGroups:o,optionGroupProps:i})),getFilterOns(n,a,e)))})},renderTableFloatingFilter(e,t){var l=t.option,{options:n,optionProps:a,optionGroups:r,optionGroupProps:u}=e,o=l.data;return(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditFilterProps(e,t,o,{options:n,optionProps:a,optionGroups:r,optionGroupProps:u})),getFloatingFilterOns(e,t,l)))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeText:{renderTableDefault(e,t){var{$table:l,row:n,column:a}=t,r=e.props,l=l.getCellLabel(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r||{}),{content:l}),getComponentOns(e,t)))]}},VxeLink:{renderTableDefault(e,t){var{$table:l,row:n,column:a}=t,r=e.props,u=(r||{}).href,l=l.getCellLabel(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r||{}),{content:l,href:_xeUtils.default.toFormatString(u,t)}),getComponentOns(e,t)))]}},formatOption:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))}},FormatSelect:{renderTableDefault(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeTreeSelect:{tableAutoFocus:!0,renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},formatTree:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))}},FormatTreeSelect:{renderTableDefault(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeCascader:{tableAutoFocus:!0,renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeTableSelect:{tableAutoFocus:!0,renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeColorPicker:{tableAutoFocus:!0,renderTableEdit(e,t){var{row:l,column:n}=t,a=e.options,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{colors:a})),getEditOns(e,t)))]},renderTableCell(e,t){var{row:t,column:l}=t,t=_xeUtils.default.get(t,l.field);return(0,_vue.h)("span",{class:"vxe-color-picker--readonly"},[(0,_vue.h)("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:t}})])}},VxeIconPicker:{tableAutoFocus:!0,renderTableEdit(e,t){var{row:l,column:n}=t,a=e.options,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{icons:a})),getEditOns(e,t)))]},renderTableCell(e,t){var{row:t,column:l}=t,t=_xeUtils.default.get(t,l.field);return(0,_vue.h)("i",{class:t})}},VxeRadioGroup:{renderTableDefault:radioAndCheckboxGroupEditRender},VxeCheckbox:{renderTableDefault:checkboxEditRender},VxeCheckboxGroup:{renderTableDefault:radioAndCheckboxGroupEditRender},VxeSwitch:{tableAutoFocus:"button",renderTableEdit:defaultEditRender,renderTableDefault:defaultEditRender},VxeUpload:{renderTableEdit:defaultEditRender,renderTableCell:defaultEditRender,renderTableDefault:defaultEditRender},VxeImage:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{src:l}),getEditOns(e,t)))]}},VxeImageGroup:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{urlList:l}),getEditOns(e,t)))]}},VxeTextEllipsis:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{content:l}),getEditOns(e,t)))]}},VxeRate:{renderTableDefault:defaultEditRender},VxeSlider:{renderTableDefault:defaultEditRender},$input:{tableAutoFocus:"input",renderTableEdit:oldEditRender,renderTableCell(e,t){var l,{props:n={}}=e,{row:a,column:r}=t,u=n.digits||(null==(l=getConfig().input)?void 0:l.digits)||2;let o=_xeUtils.default.get(a,r.field);if(o)switch(n.type){case"date":case"week":case"month":case"year":o=getLabelFormatDate(o,n);break;case"float":o=_xeUtils.default.toFixed(_xeUtils.default.floor(o,u),u)}return getCellLabelVNs(e,t,o)},renderTableDefault:oldEditRender,renderTableFilter:oldFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},$textarea:{tableAutoFocus:"textarea"},$button:{renderTableDefault:oldButtonEditRender},$buttons:{renderTableDefault:oldButtonsEditRender},$select:{tableAutoFocus:"input",renderTableEdit:oldSelectEditRender,renderTableDefault:oldSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderTableFilter(n,a){var e=a.column;let{options:r,optionProps:u,optionGroups:o,optionGroupProps:i}=n;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getOldComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,a,l,{options:r,optionProps:u,optionGroups:o,optionGroupProps:i})),getFilterOns(n,a,e)))})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},$radio:{tableAutoFocus:"input"},$checkbox:{tableAutoFocus:"input"},$switch:{tableAutoFocus:"button",renderTableEdit:oldEditRender,renderTableDefault:oldEditRender}});
|
|
1
|
+
var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("../../table/src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let errLog=(0,_log.createComponentLog)("table").errLog,{getConfig,renderer,getI18n,getComponent}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={};function handleDefaultValue(e,t,l){return _xeUtils.default.eqNull(e)?_xeUtils.default.eqNull(t)?l:t:e}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,l){var{dateConfig:n={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),n.labelFormat||l)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+(t.type||"date")))}function getOldComponentName(e){return"vxe-"+e.replace("$","")}function getDefaultComponent({name:e}){return getComponent(e)}function getOldComponent({name:e}){return(0,_vue.resolveComponent)(getOldComponentName(e))}function updateFilterChangeOption(e,t,l){e=e.$table;e.updateFilterOptionStatus(l,t)}function saveFilterEvent(e){var{$table:e,column:t}=e;e.saveFilterByEvent(new Event("change"),t)}function getNativeAttrs(e){let{name:t,attrs:l}=e;return l="input"===t?Object.assign({type:"text"},l):l}function getInputImmediateModel(e){var{name:e,immediate:t,props:l}=e;return t||("VxeInput"===e||"$input"===e?(t=(l||{}).type,!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,l,n){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,n,e.props,{[componentDefaultModelProp]:l})}function getCellEditFilterProps(e,t,l,n){return _xeUtils.default.assign({},defaultCompProps,n,e.props,{[componentDefaultModelProp]:l})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,l,n){e=e.placeholder;return[(0,_vue.h)("span",{key:1,class:["vxe-cell--label",n?n.class:""]},e&&(0,_utils.isEmptyValue)(l)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(e),1))]:(0,_utils.formatText)(l,1))]}function getNativeElementOns(e,l,t){let n=e.events,a=(0,_vn.getModelEvent)(e),r=(0,_vn.getChangeEvent)(e),{model:u,change:o,blur:i}=t||{},d=r===a,s={};return n&&_xeUtils.default.objectEach(n,(t,e)=>{s[(0,_vn.getOnName)(e)]=function(...e){t(l,...e)}}),u&&(s[(0,_vn.getOnName)(a)]=function(e){u(e),d&&o&&o(e),n&&n[a]&&n[a](l,e)}),!d&&o&&(s[(0,_vn.getOnName)(r)]=function(e){o(e),n&&n[r]&&n[r](l,e)}),i&&(s[(0,_vn.getOnName)(blurEvent)]=function(e){i(e),n&&n[blurEvent]&&n[blurEvent](l,e)}),s}let blurEvent="blur",clearEvent="clear";function getComponentOns(e,l,t,n){let a=e.events,r=(0,_vn.getModelEvent)(e),u=(0,_vn.getChangeEvent)(e),{model:o,change:i,blur:d,clear:s}=t||{},p={};return _xeUtils.default.objectEach(a,(t,e)=>{p[(0,_vn.getOnName)(e)]=function(...e){_xeUtils.default.isFunction(t)||errLog("vxe.error.errFunc",[t]),t(l,...e)}}),o&&(p[(0,_vn.getOnName)(r)]=function(e){o(e),a&&a[r]&&a[r](l,e)}),i&&(p[(0,_vn.getOnName)(u)]=function(...e){i(...e),a&&a[u]&&a[u](l,...e)}),d&&(p[(0,_vn.getOnName)(blurEvent)]=function(...e){d(...e),a&&a[blurEvent]&&a[blurEvent](l,...e)}),s&&(p[(0,_vn.getOnName)(clearEvent)]=function(...e){s(...e),a&&a[clearEvent]&&a[clearEvent](l,...e)}),n?Object.assign(p,n):p}function getEditOns(e,t){let{$table:l,row:n,column:a}=t,r=e.name,u=a.model,o=isImmediateCell(e,t);return getComponentOns(e,t,{model(e){u.update=!0,u.value=e,o&&(0,_util.setCellValue)(n,a,e)},change(e){!o&&r&&["VxeInput","VxeNumberInput","VxeTextarea","$input","$textarea"].includes(r)?(e=e.value,u.update=!0,u.value=e,l.updateStatus(t,e)):l.updateStatus(t)},blur(){o?l.handleCellRuleUpdateStatus("blur",t):l.handleCellRuleUpdateStatus("blur",t,u.value)}})}function getFilterOns(e,t,l){return getComponentOns(e,t,{model(e){l.data=e},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)},blur(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)}})}function getFloatingFilterOns(e,t,l){let{$table:n,column:a}=t;return(0,_vn.hasInputType)(e)?getComponentOns(e,t,{model(e){l.data=e},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)},clear(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)},blur(){n.saveFilterByEvent(new Event("change"),a)}},"VxeNumberInput"===e.name?{[(0,_vn.getOnName)("plus-number")](){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)},[(0,_vn.getOnName)("minus-number")](){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)}}:{}):getComponentOns(e,t,{model(e){l.data=e},clear(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),n.saveFilterByEvent(new Event("change"),a)},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),n.saveFilterByEvent(new Event("change"),a)}})}function getNativeEditOns(t,l){let{$table:n,row:a,column:r}=l,u=r.model;return getNativeElementOns(t,l,{model(e){var e=e.target;e&&(e=e.value,isImmediateCell(t,l)?(0,_util.setCellValue)(a,r,e):(u.update=!0,u.value=e))},change(e){var e=e.target;e&&(e=e.value,n.updateStatus(l,e))},blur(e){var e=e.target;e&&(e=e.value,n.updateStatus(l,e))}})}function getNativeFilterOns(e,t,l){return getNativeElementOns(e,t,{model(e){e=e.target;e&&(l.data=e.value)},change(){updateFilterChangeOption(t,!_xeUtils.default.eqNull(l.data),l)},blur(){updateFilterChangeOption(t,!_xeUtils.default.eqNull(l.data),l)}})}function nativeInputCellRender(e,t){var{row:l,column:n}=t,l=_xeUtils.default.get(l,n.field);return getNativeInputRenderCellVNs(l,[(0,_vue.h)("span",{key:1},l)],e,t)}function nativeInputEditRender(e,t){var{row:l,column:n}=t,a=e.name,l=isImmediateCell(e,t)?(0,_util.getCellValue)(l,n):n.model.value;return[(0,_vue.h)(""+a,Object.assign(Object.assign(Object.assign({key:2,class:"vxe-default-"+a},getNativeAttrs(e)),{value:l}),getNativeEditOns(e,t)))]}function buttonCellRender(e,t){return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function defaultInputEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({key:2},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function defaultEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function checkboxEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function radioAndCheckboxGroupEditRender(e,t){var l=e.options,{row:n,column:a}=t,n=(0,_util.getCellValue)(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({options:l},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function oldButtonEditRender(e,t){return[(0,_vue.h)(getComponent("vxe-button"),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function oldButtonsEditRender(e,t){e=e.children;return e?e.map(e=>oldButtonEditRender(e,t)[0]):[]}function renderNativeOptgroups(l,n,a){var{optionGroups:e,optionGroupProps:t={}}=l;let r=t.options||"options",u=t.label||"label";return e?e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[u]},a(e[r],l,n))):[]}function renderNativeOptions(e,t,l){var{optionProps:n={}}=t,{row:a,column:r}=l;let u=n.label||"label",o=n.value||"value",i=n.disabled||"disabled",d=isImmediateCell(t,l)?(0,_util.getCellValue)(a,r):r.model.value;return e?e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[o],disabled:e[i],selected:e[o]==d},e[u])):[]}function nativeFilterRender(l,n){var e=n.column;let a=l.name,r=getNativeAttrs(l);return e.filters.map((e,t)=>(0,_vue.h)(""+a,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+a},r),{value:e.data}),getNativeFilterOns(l,n,e))))}function defaultFilterRender(n,a){var e=a.column;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getDefaultComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,n,l)),getFilterOns(n,a,e)))})}function defaultFloatingFilterRender(e,t){var l=t.option,n=l.data;return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditFilterProps(e,e,n)),getFloatingFilterOns(e,t,l)))]}function defaultFilterOptions(){return[{data:null}]}function oldFilterRender(n,a){var e=a.column;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getOldComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,n,l)),getFilterOns(n,a,e)))})}function handleFilterMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e}function handleInputFilterMethod({option:e,row:t,column:l}){e=e.data,t=_xeUtils.default.get(t,l.field);return-1<_xeUtils.default.toValueString(t).indexOf(e)}function nativeSelectEditRender(e,t){return[(0,_vue.h)("select",Object.assign(Object.assign({class:"vxe-default-select"},getNativeAttrs(e)),getNativeEditOns(e,t)),e.optionGroups?renderNativeOptgroups(e,t,renderNativeOptions):renderNativeOptions(e.options,e,t))]}function defaultSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o})),getEditOns(e,t)))]}function defaultTableOrTreeSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o})),getEditOns(e,t)))]}function handleSelectCellValue(t,e){let{options:l,optionGroups:n,optionProps:a={},optionGroupProps:r={},props:u={}}=e,o,i=a.label||"label",d=a.value||"value";if(null==t)return"";{let e=[];return e=_xeUtils.default.isArray(t)?t:u.multiple&&-1<(""+t).indexOf(",")?(""+t).split(","):[t],_xeUtils.default.map(e,n?t=>{var l=r.options||"options";for(let e=0;e<n.length&&!(o=_xeUtils.default.find(n[e][l],e=>e[d]==t));e++);return o?o[i]:t}:t=>(o=_xeUtils.default.find(l,e=>e[d]==t))?o[i]:t).join(", ")}}function getSelectCellValue(e,{row:t,column:l}){return handleSelectCellValue(_xeUtils.default.get(t,l.field),e)}function handleExportSelectMethod(e){var{row:t,column:l,options:n}=e;return n.original?(0,_util.getCellValue)(t,l):getSelectCellValue(l.editRender||l.cellRender,e)}function handleTreeSelectCellValue(e,l){var{options:l,optionProps:n={}}=l;let a=n.label||"label",r=n.value||"value";if(null==e)return"";{let t={};return _xeUtils.default.eachTree(l,e=>{t[_xeUtils.default.get(e,r)]=e},{children:n.children||"children"}),_xeUtils.default.map(_xeUtils.default.isArray(e)?e:[e],e=>{e=t[e];return e&&_xeUtils.default.get(e,a)}).join(", ")}}function getTreeSelectCellValue(e,{row:t,column:l}){return handleTreeSelectCellValue(_xeUtils.default.get(t,l.field),e)}function handleExportTreeSelectMethod(e){var{row:t,column:l,options:n}=e;return n.original?(0,_util.getCellValue)(t,l):getTreeSelectCellValue(l.editRender||l.cellRender,e)}function handleNumberCell(e,t,l){var n,a,r,u,{props:o={},showNegativeStatus:i}=t,d=o.type;let s=!1;return(0,_utils.isEmptyValue)(e)||(n=getConfig().numberInput||{},"float"===d?(r=handleDefaultValue(o.autoFill,n.autoFill,!0),u=handleDefaultValue(o.digits,n.digits,1),e=_xeUtils.default.toFixed(_xeUtils.default.floor(e,u),u),r||(e=_xeUtils.default.toNumber(e)),i&&e<0&&(s=!0)):"amount"===d?(u=handleDefaultValue(o.autoFill,n.autoFill,!0),r=handleDefaultValue(o.digits,n.digits,2),a=handleDefaultValue(o.showCurrency,n.showCurrency,!1),e=_xeUtils.default.toNumber(e),i&&e<0&&(s=!0),e=_xeUtils.default.commafy(e,{digits:r}),u||([r,u]=e.split("."),u&&(e=(u=u.replace(/0+$/,""))?[r,".",u].join(""):r)),a&&(e=""+(o.currencySymbol||n.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+e)):("integer"===d&&(e=_xeUtils.default.toInteger(e)),i&&_xeUtils.default.toNumber(e)<0&&(s=!0))),getCellLabelVNs(t,l,e,s?{class:"is--negative"}:{})}function handleFormatDatePicker(e,t){var{props:e={}}=e,t=t.cellValue;return t&&"time"!==e.type?getLabelFormatDate(t,e):t}function handleFormatSelect(e,t){t=t.cellValue;return handleSelectCellValue(t,e)}function handleSetSelectValue(e,t){var{row:a,column:t,cellValue:r}=t,u=t.field;if(u){var{options:o,optionGroups:i,optionProps:t={},optionGroupProps:e={},props:l}=e;if((0,_utils.isEmptyValue)(r))_xeUtils.default.set(a,u,l&&l.multiple?[]:null);else{var d=-1<_xeUtils.default.indexOf(""+r,","),s=t.label||"label";let l=t.value||"value",n={};if(i&&i.length){var p=e.options||"options";for(let e=0;e<i.length;e++){var c=i[e][p]||{};for(let e=0;e<c.length;e++){var g=c[e];if(d)n[g[s]]=g;else if(g[s]==r)return void _xeUtils.default.set(a,u,g[l])}}}else if(o)for(let e=0;e<o.length;e++){var f=o[e];if(d)n[f[s]]=f;else if(f[s]==r)return void _xeUtils.default.set(a,u,f[l])}d?_xeUtils.default.set(a,u,(d?r.split(","):[r]).map(e=>{var t=n[e];return t?t[l]:e})):_xeUtils.default.set(a,u,r)}}}function handleFormatTreeSelect(e,t){t=t.cellValue;return handleTreeSelectCellValue(t,e)}function handleSetTreeSelectValue(e,l){let{row:n,column:t,cellValue:a}=l;l=t.field;if(l){var{options:e,optionProps:r={}}=e;let t=r.label||"label";var u=r.value||"value",e=_xeUtils.default.findTree(e||[],e=>_xeUtils.default.get(e,t)===a,{children:r.children||"children"});if(e){r=e.item;if(r)return void _xeUtils.default.set(n,l,r[u])}_xeUtils.default.set(n,l,a)}}function getNativeInputRenderCellVNs(e,t,l,n){var{$table:a,row:r,column:u}=n,o=l.name,{editConfig:i,mouseConfig:d}=a.props;let s=!1,p=!1;return((p=i&&d&&(i=a.reactData.editStore,d=i.selected,s=r===d.row&&u===d.column,a.getActiveCellArea)&&(i=a.getActiveCellArea())?r===i.row&&u===i.column:p)||s)&&t.push((0,_vue.h)(""+o,Object.assign(Object.assign({key:2,class:`vxe-default-${o} vxe-reusekeep-control`,value:e},getNativeAttrs(l)),getNativeEditOns(l,n)))),t}function getInputRenderCellVNs(e,t,l,n){var{$table:a,row:r,column:u}=n,{editConfig:o,mouseConfig:i}=a.props;let d=!1,s=!1;return((s=o&&i&&(o=a.reactData.editStore,i=a.getComputeMaps().computeEditOpts,i.value.isReuseKeep)&&(i=o.selected,d=r===i.row&&u===i.column,a.getActiveCellArea)&&(o=a.getActiveCellArea())?r===o.row&&u===o.column:s)||d)&&({className:a,inputClassName:r}=i=getCellEditProps(l,n,e),t.push((0,_vue.h)(getDefaultComponent(l),Object.assign(Object.assign(Object.assign({key:2},i),{className:"vxe-reusekeep-control"+(a?" "+a:""),inputClassName:"vxe-reusekeep-control"+(r?" "+r:"")}),getEditOns(l,n))))),t}renderer.mixin({input:{tableAutoFocus:!0,renderTableEdit:nativeInputEditRender,renderTableCell:nativeInputCellRender,renderTableDefault:nativeInputEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:nativeFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},textarea:{tableAutoFocus:!0,renderTableEdit:nativeInputEditRender,renderTableCell:nativeInputCellRender,renderTableDefault:nativeInputEditRender},select:{renderTableEdit:nativeSelectEditRender,renderTableDefault:nativeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},createTableFilterOptions:defaultFilterOptions,renderTableFilter(l,n){var e=n.column;return e.filters.map((e,t)=>(0,_vue.h)("select",Object.assign(Object.assign({key:t,class:"vxe-default-select"},getNativeAttrs(l)),getNativeFilterOns(l,n,e)),l.optionGroups?renderNativeOptgroups(l,n,renderNativeOptions):renderNativeOptions(l.options,l,n)))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeInput:{tableAutoFocus:!0,renderTableEdit:defaultInputEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:a}=t,r=getConfig().input||{},u=l.digits||r.digits||2;let o=_xeUtils.default.get(n,a.field);if(o)switch(l.type){case"date":case"week":case"month":case"quarter":case"year":o=getLabelFormatDate(o,l);break;case"float":o=_xeUtils.default.toFixed(_xeUtils.default.floor(o,u),u)}r=getCellLabelVNs(e,t,o);return getInputRenderCellVNs(o,r,e,t)},renderTableDefault:defaultInputEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},FormatNumberInput:{renderTableDefault(e,t){var{row:l,column:n}=t;return handleNumberCell(_xeUtils.default.get(l,n.field),e,t)},tableFilterDefaultMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e},tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeNumberInput:{tableAutoFocus:!0,renderTableEdit:defaultInputEditRender,renderTableCell(e,t){var{row:l,column:n}=t,l=_xeUtils.default.get(l,n.field);return getInputRenderCellVNs(l,handleNumberCell(l,e,t),e,t)},renderTableFooter(t,l){var{props:t={}}=t,{row:l,column:n,_columnIndex:a}=l,r=t.type,a=_xeUtils.default.isArray(l)?l[a]:_xeUtils.default.get(l,n.field);if(_xeUtils.default.isNumber(a)){l=getConfig().numberInput||{};if("float"===r){var n=handleDefaultValue(t.autoFill,l.autoFill,!0),u=handleDefaultValue(t.digits,l.digits,1);let e=_xeUtils.default.toFixed(_xeUtils.default.floor(a,u),u);return e=n?e:""+_xeUtils.default.toNumber(e)}if("amount"===r){var u=handleDefaultValue(t.autoFill,l.autoFill,!0),n=handleDefaultValue(t.digits,l.digits,2),r=handleDefaultValue(t.showCurrency,l.showCurrency,!1);let e=_xeUtils.default.commafy(_xeUtils.default.toNumber(a),{digits:n});return u||([n,u]=e.split("."),u&&(u=u.replace(/0+$/,""),e=u?[n,".",u].join(""):n)),e=r?""+(t.currencySymbol||l.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+e:e}}return(0,_utils.getFuncText)(a,1)},renderTableDefault:defaultInputEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e},tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeDatePicker:{tableAutoFocus:!0,renderTableEdit:defaultEditRender,renderTableCell(e,t){let l=e.props||{};var{$table:n,row:a,column:r}=t,n=n.effectCellData(a,r,{key:"render_table_cell",getResult({cellValue:e}){return e&&"time"!==l.type?getLabelFormatDate(e,l):e}}).cellResult;return getCellLabelVNs(e,t,n)},tableCellFormatter:handleFormatDatePicker,renderTableDefault:defaultEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleFilterMethod},VxeDateRangePicker:{tableAutoFocus:!0,renderTableEdit(e,t){let{startField:l,endField:n}=e,{$table:a,row:r,column:u}=t,o=u.model;var i=(0,_util.getCellValue)(r,u),d={},s={};return l&&n&&(d.startValue=_xeUtils.default.get(r,l),d.endValue=_xeUtils.default.get(r,n),s["onUpdate:startValue"]=e=>{l&&_xeUtils.default.set(r,l,e)},s["onUpdate:endValue"]=e=>{n&&_xeUtils.default.set(r,n,e)}),[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,i,d)),getComponentOns(e,t,{model(e){o.update=!0,o.value=e,(0,_util.setCellValue)(r,u,e)},change(){a.updateStatus(t)},blur(){a.handleCellRuleUpdateStatus("blur",t)}},s)))]},renderTableDefault(e,t){let{startField:l,endField:n}=e,{row:a,column:r}=t,u=r.model;var o=(0,_util.getCellValue)(a,r),i={},d={};return l&&n&&(i.startValue=_xeUtils.default.get(a,l),i.endValue=_xeUtils.default.get(a,n),d["onUpdate:startValue"]=e=>{l&&_xeUtils.default.set(a,l,e)},d["onUpdate:endValue"]=e=>{n&&_xeUtils.default.set(a,n,e)}),[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,o,i)),getComponentOns(e,t,{model(e){u.update=!0,u.value=e,(0,_util.setCellValue)(a,r,e)}},d)))]},renderTableCell(e,t){var{startField:l,endField:n}=e,{row:a,column:r}=t;let u="",o="",i=(l&&n?(u=_xeUtils.default.get(a,l),o=_xeUtils.default.get(a,n)):(l=_xeUtils.default.get(a,r.field))&&(o=(_xeUtils.default.isArray(l)?(u=l[0],l):(n=(""+l).split(","),u=n[0],n))[1]),"");return getCellLabelVNs(e,t,i=u&&o?u+" ~ "+o:i)}},VxeTextarea:{tableAutoFocus:!0,renderTableDefault:defaultInputEditRender,renderTableCell(e,t){var{row:l,column:n}=t,l=_xeUtils.default.get(l,n.field);return getInputRenderCellVNs(l,getCellLabelVNs(e,t,l),e,t)},renderTableEdit:defaultInputEditRender},VxeButton:{renderTableDefault:buttonCellRender},VxeButtonGroup:{renderTableDefault(e,t){var l=e.options;return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({options:l},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}},VxeSelect:{tableAutoFocus:!0,renderTableEdit:defaultSelectEditRender,renderTableDefault:defaultSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},createTableFilterOptions:defaultFilterOptions,renderTableFilter(n,a){var e=a.column;let{options:r,optionProps:u,optionGroups:o,optionGroupProps:i}=n;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getDefaultComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,a,l,{options:r,optionProps:u,optionGroups:o,optionGroupProps:i})),getFilterOns(n,a,e)))})},renderTableFloatingFilter(e,t){var l=t.option,{options:n,optionProps:a,optionGroups:r,optionGroupProps:u}=e,o=l.data;return(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditFilterProps(e,t,o,{options:n,optionProps:a,optionGroups:r,optionGroupProps:u})),getFloatingFilterOns(e,t,l)))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeText:{renderTableDefault(e,t){var{$table:l,row:n,column:a}=t,r=e.props,l=l.getCellLabel(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r||{}),{content:l}),getComponentOns(e,t)))]}},VxeLink:{renderTableDefault(e,t){var{$table:l,row:n,column:a}=t,r=e.props,u=(r||{}).href,l=l.getCellLabel(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r||{}),{content:l,href:_xeUtils.default.toFormatString(u,t)}),getComponentOns(e,t)))]}},formatOption:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))}},FormatSelect:{renderTableDefault(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeTreeSelect:{tableAutoFocus:!0,renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},formatTree:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))}},FormatTreeSelect:{renderTableDefault(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeCascader:{tableAutoFocus:!0,renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeTableSelect:{tableAutoFocus:!0,renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeColorPicker:{tableAutoFocus:!0,renderTableEdit(e,t){var{row:l,column:n}=t,a=e.options,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{colors:a})),getEditOns(e,t)))]},renderTableCell(e,t){var{$table:t,row:l,column:n}=t,e=e.props,t=t.getComputeMaps().computeSize,e=(e?e.size:null)||t.value,t=_xeUtils.default.get(l,n.field);return(0,_vue.h)("span",{class:["vxe-color-picker--readonly",{["size--"+e]:e}]},[(0,_vue.h)("div",{class:["vxe-color-picker--readonly-color",{"is--empty":!t}],style:t?{backgroundColor:t}:void 0})])}},VxeIconPicker:{tableAutoFocus:!0,renderTableEdit(e,t){var{row:l,column:n}=t,a=e.options,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{icons:a})),getEditOns(e,t)))]},renderTableCell(e,t){var{row:t,column:l}=t,t=_xeUtils.default.get(t,l.field);return(0,_vue.h)("i",{class:t})}},VxeRadioGroup:{renderTableDefault:radioAndCheckboxGroupEditRender},VxeCheckbox:{renderTableDefault:checkboxEditRender},VxeCheckboxGroup:{renderTableDefault:radioAndCheckboxGroupEditRender},VxeSwitch:{tableAutoFocus:"button",renderTableEdit:defaultEditRender,renderTableDefault:defaultEditRender},VxeUpload:{renderTableEdit:defaultEditRender,renderTableCell:defaultEditRender,renderTableDefault:defaultEditRender},VxeImage:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{src:l}),getEditOns(e,t)))]}},VxeImageGroup:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{urlList:l}),getEditOns(e,t)))]}},VxeTextEllipsis:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{content:l}),getEditOns(e,t)))]}},VxeRate:{renderTableDefault:defaultEditRender},VxeSlider:{renderTableDefault:defaultEditRender},$input:{tableAutoFocus:"input",renderTableEdit:oldEditRender,renderTableCell(e,t){var l,{props:n={}}=e,{row:a,column:r}=t,u=n.digits||(null==(l=getConfig().input)?void 0:l.digits)||2;let o=_xeUtils.default.get(a,r.field);if(o)switch(n.type){case"date":case"week":case"month":case"year":o=getLabelFormatDate(o,n);break;case"float":o=_xeUtils.default.toFixed(_xeUtils.default.floor(o,u),u)}return getCellLabelVNs(e,t,o)},renderTableDefault:oldEditRender,renderTableFilter:oldFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},$textarea:{tableAutoFocus:"textarea"},$button:{renderTableDefault:oldButtonEditRender},$buttons:{renderTableDefault:oldButtonsEditRender},$select:{tableAutoFocus:"input",renderTableEdit:oldSelectEditRender,renderTableDefault:oldSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderTableFilter(n,a){var e=a.column;let{options:r,optionProps:u,optionGroups:o,optionGroupProps:i}=n;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getOldComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,a,l,{options:r,optionProps:u,optionGroups:o,optionGroupProps:i})),getFilterOns(n,a,e)))})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},$radio:{tableAutoFocus:"input"},$checkbox:{tableAutoFocus:"input"},$switch:{tableAutoFocus:"button",renderTableEdit:oldEditRender,renderTableDefault:oldEditRender}});
|
package/lib/table/src/table.js
CHANGED
|
@@ -631,7 +631,7 @@ if($xeTable.closeMenu){if(ctxMenuStore.visible&&tableMenu&&!(0,_dom.getEventTarg
|
|
|
631
631
|
if(!isActivated&&editRules&&validOpts.autoClear){reactData.validErrorMaps={};}// 最后激活的表格
|
|
632
632
|
internalData.isActivated=isActivated;}};/**
|
|
633
633
|
* 窗口失焦事件处理
|
|
634
|
-
*/const handleGlobalBlurEvent=()=>{$xeTable.closeFilter();if($xeTable.closeMenu){$xeTable.closeMenu();}};const reUpdateCustomStyleEvent=evnt=>{const{customStore}=reactData;const customOpts=computeCustomOpts.value;const{popupOptions}=customOpts;const{transfer}=popupOptions||{};if(transfer&&customStore.visible){const tableCustom=refTableCustom.value;if(tableCustom&&$xeTable.handleCustomStyle&&!(0,_dom.checkTargetElement)(evnt.target,[tableCustom.getRefMaps().refElem.value],evnt.currentTarget)){$xeTable.handleCustomStyle().then(()=>{$xeTable.handleCustomStyle();});}}};const handleGlobalScrollEvent=evnt=>{reUpdateCustomStyleEvent(evnt);};/**
|
|
634
|
+
*/const handleGlobalBlurEvent=()=>{$xeTable.closeFilter();if($xeTable.closeMenu){$xeTable.closeMenu();}};const reUpdateCustomStyleEvent=evnt=>{const{customStore}=reactData;const customOpts=computeCustomOpts.value;const{popupOptions}=customOpts;const{transfer}=popupOptions||{};if(transfer&&customStore.visible){const tableCustom=refTableCustom.value;if(tableCustom&&$xeTable.handleCustomStyle&&!(0,_dom.checkTargetElement)(evnt.target,[tableCustom.getRefMaps().refElem.value],evnt.currentTarget)){$xeTable.handleCustomStyle().then(()=>{$xeTable.handleCustomStyle();});}}};const handleGlobalScrollEvent=evnt=>{const{filterStore}=reactData;const filterOpts=computeFilterOpts.value;if(filterStore.visible&&filterOpts.transfer){$xeTable.handleFilterStyle();}reUpdateCustomStyleEvent(evnt);};/**
|
|
635
635
|
* 全局滚动事件
|
|
636
636
|
*/const handleGlobalMousewheelEvent=()=>{$xeTable.closeTooltip();if($xeTable.closeMenu){$xeTable.closeMenu();}};/**
|
|
637
637
|
* 表格键盘事件
|