vxe-table 4.7.81 → 4.7.83
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 +15 -15
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/edit/hook.js +25 -16
- package/es/table/render/index.js +9 -3
- package/es/table/src/body.js +1 -0
- package/es/table/src/props.js +5 -0
- package/es/table/src/table.js +1 -0
- package/es/table/style.css +35 -21
- package/es/table/style.min.css +1 -1
- package/es/toolbar/src/toolbar.js +11 -2
- package/es/ui/index.js +5 -3
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +35 -21
- package/es/vxe-table/style.min.css +1 -1
- package/lib/grid/src/grid.js +15 -15
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +75 -38
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/edit/hook.js +24 -15
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/render/index.js +12 -2
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/body.js +1 -0
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/props.js +5 -0
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +1 -0
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +35 -21
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/src/toolbar.js +11 -2
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +5 -3
- 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/lib/vxe-table/style/style.css +35 -21
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +16 -17
- package/packages/table/module/edit/hook.ts +24 -15
- package/packages/table/render/index.ts +9 -3
- package/packages/table/src/body.ts +1 -0
- package/packages/table/src/props.ts +5 -0
- package/packages/table/src/table.ts +1 -0
- package/packages/toolbar/src/toolbar.ts +11 -2
- package/packages/ui/index.ts +3 -1
- package/styles/components/table.scss +76 -15
- /package/es/{iconfont.1727054403308.ttf → iconfont.1727355554097.ttf} +0 -0
- /package/es/{iconfont.1727054403308.woff → iconfont.1727355554097.woff} +0 -0
- /package/es/{iconfont.1727054403308.woff2 → iconfont.1727355554097.woff2} +0 -0
- /package/lib/{iconfont.1727054403308.ttf → iconfont.1727355554097.ttf} +0 -0
- /package/lib/{iconfont.1727054403308.woff → iconfont.1727355554097.woff} +0 -0
- /package/lib/{iconfont.1727054403308.woff2 → iconfont.1727355554097.woff2} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";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}}const{getConfig,renderer,getI18n}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={transfer:!0};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(0,_vue.resolveComponent)(e)}function getOldComponent({name:e}){return(0,_vue.resolveComponent)(getOldComponentName(e))}function handleConfirmFilter(e,t,l){e=e.$panel;e.changeOption({},t,l)}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){e=e.placeholder;return[(0,_vue.h)("span",{class:"vxe-cell--label"},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,n){const r=e["events"],o=(0,_vn.getModelEvent)(e),a=(0,_vn.getChangeEvent)(e),i=a===o,u={};return r&&_xeUtils.default.objectEach(r,(t,e)=>{u[(0,_vn.getOnName)(e)]=function(...e){t(l,...e)}}),t&&(u[(0,_vn.getOnName)(o)]=function(e){t(e),i&&n&&n(e),r&&r[o]&&r[o](l,e)}),!i&&n&&(u[(0,_vn.getOnName)(a)]=function(...e){n(...e),r&&r[a]&&r[a](l,...e)}),u}function getComponentOns(e,l,t,n){const r=e["events"],o=(0,_vn.getModelEvent)(e),a=(0,_vn.getChangeEvent)(e),i={};return _xeUtils.default.objectEach(r,(t,e)=>{i[(0,_vn.getOnName)(e)]=function(...e){"development"!==process.env.NODE_ENV||_xeUtils.default.isFunction(t)||(0,_log.errLog)("vxe.error.errFunc",[t]),t(l,...e)}}),t&&(i[(0,_vn.getOnName)(o)]=function(e){t(e),r&&r[o]&&r[o](l,e)}),n&&(i[(0,_vn.getOnName)(a)]=function(...e){n(...e),r&&r[a]&&r[a](l,...e)}),i}function getEditOns(e,t){const{$table:l,row:n,column:r}=t,o=e["name"],a=r["model"],i=isImmediateCell(e,t);return getComponentOns(e,t,e=>{a.update=!0,a.value=e,i&&(0,_util.setCellValue)(n,r,e)},e=>{!i&&["VxeInput","VxeNumberInput","VxeTextarea","$input","$textarea"].includes(o)?(e=e.value,a.update=!0,a.value=e,l.updateStatus(t,e)):l.updateStatus(t)})}function getFilterOns(e,t,l){return getComponentOns(e,t,e=>{l.data=e},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)})}function getNativeEditOns(t,l){const{$table:n,row:r,column:o}=l,a=o["model"];return getNativeElementOns(t,l,e=>{e=e.target.value;isImmediateCell(t,l)?(0,_util.setCellValue)(r,o,e):(a.update=!0,a.value=e)},e=>{e=e.target.value;n.updateStatus(l,e)})}function getNativeFilterOns(e,t,l){return getNativeElementOns(e,t,e=>{l.data=e.target.value},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)})}function nativeEditRender(e,t){var{row:l,column:n}=t,r=e["name"],l=isImmediateCell(e,t)?(0,_util.getCellValue)(l,n):n.model.value;return[(0,_vue.h)(r,Object.assign(Object.assign(Object.assign({class:"vxe-default-"+r},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 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 radioAndCheckboxEditRender(e,t){var l=e["options"],{row:n,column:r}=t,n=(0,_util.getCellValue)(n,r);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)((0,_vue.resolveComponent)("vxe-button"),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function oldButtonsEditRender(e,t){return e.children.map(e=>oldButtonEditRender(e,t)[0])}function renderNativeOptgroups(l,n,r){var{optionGroups:e,optionGroupProps:t={}}=l;const o=t.options||"options",a=t.label||"label";return e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[a]},r(e[o],l,n)))}function renderNativeOptions(e,t,l){var{optionProps:n={}}=t,{row:r,column:o}=l;const a=n.label||"label",i=n.value||"value",u=n.disabled||"disabled",d=isImmediateCell(t,l)?(0,_util.getCellValue)(r,o):o.model.value;return e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[i],disabled:e[u],selected:e[i]==d},e[a]))}function nativeFilterRender(l,n){var e=n["column"];const r=l["name"],o=getNativeAttrs(l);return e.filters.map((e,t)=>(0,_vue.h)(r,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+r},o),{value:e.data}),getNativeFilterOns(l,n,e))))}function defaultFilterRender(n,r){var e=r["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,r,e)))})}function oldFilterRender(n,r){var e=r["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,r,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:r,optionProps:o,optionGroups:a,optionGroupProps:i}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:r,optionProps:o,optionGroups:a,optionGroupProps:i})),getEditOns(e,t)))]}function defaultTreeSelectEditRender(e,t){var{row:l,column:n}=t,{options:r,optionProps:o}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:r,optionProps:o})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:l,column:n}=t,{options:r,optionProps:o,optionGroups:a,optionGroupProps:i}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:r,optionProps:o,optionGroups:a,optionGroupProps:i})),getEditOns(e,t)))]}function getSelectCellValue(e,{row:t,column:l}){const{options:n,optionGroups:r,optionProps:o={},optionGroupProps:a={}}=e;e=_xeUtils.default.get(t,l.field);let i;const u=o.label||"label",d=o.value||"value";return null!=e?_xeUtils.default.map(_xeUtils.default.isArray(e)?e:[e],r?t=>{var l=a.options||"options";for(let e=0;e<r.length&&!(i=_xeUtils.default.find(r[e][l],e=>e[d]==t));e++);return i?i[u]:t}:t=>(i=_xeUtils.default.find(n,e=>e[d]==t))?i[u]:t).join(", "):""}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 getTreeSelectCellValue(e,{row:t,column:l}){var{options:e,optionProps:n={}}=e,t=_xeUtils.default.get(t,l.field);const r=n.label||"label",o=n.value||"value";l=n.children||"children";if(null==t)return"";{const a={};return _xeUtils.default.eachTree(e,e=>{a[_xeUtils.default.get(e,o)]=e},{children:l}),_xeUtils.default.map(_xeUtils.default.isArray(t)?t:[t],e=>{e=a[e];return e&&_xeUtils.default.get(e,r)}).join(", ")}}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)}renderer.mixin({input:{tableAutoFocus:"input",renderTableEdit:nativeEditRender,renderTableDefault:nativeEditRender,renderTableFilter:nativeFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},textarea:{tableAutoFocus:"textarea",renderTableEdit:nativeEditRender},select:{renderTableEdit:nativeSelectEditRender,renderTableDefault:nativeSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},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)))},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var l,{props:n={}}=e,{row:r,column:o}=t,a=n.digits||(null==(l=getConfig().input)?void 0:l.digits)||2;let i=_xeUtils.default.get(r,o.field);if(i)switch(n.type){case"date":case"week":case"month":case"quarter":case"year":i=getLabelFormatDate(i,n);break;case"float":i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,a),a)}return getCellLabelVNs(e,t,i)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},VxeNumberInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:r}=t,o=l.digits||(null==(o=getConfig().numberInput)?void 0:o.digits)||2;let a=_xeUtils.default.get(n,r.field);return getCellLabelVNs(e,t,a=a&&"float"===l.type?_xeUtils.default.toFixed(_xeUtils.default.floor(a,o),o):a)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},VxeDatePicker:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:r}=t;let o=_xeUtils.default.get(n,r.field);return getCellLabelVNs(e,t,o=o&&getLabelFormatDate(o,l))},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleFilterMethod},VxeTextarea:{tableAutoFocus:"VxeTextarea"},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:"input",renderTableEdit:defaultSelectEditRender,renderTableDefault:defaultSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderTableFilter(n,r){var e=r["column"];const{options:o,optionProps:a,optionGroups:i,optionGroupProps:u}=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,r,l,{options:o,optionProps:a,optionGroups:i,optionGroupProps:u})),getFilterOns(n,r,e)))})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeTreeSelect:{tableAutoFocus:"input",renderTableEdit:defaultTreeSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))},tableExportMethod:handleExportTreeSelectMethod},VxeIconPicker:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,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:radioAndCheckboxEditRender},VxeCheckboxGroup:{renderTableDefault:radioAndCheckboxEditRender},VxeSwitch:{tableAutoFocus:"button",renderTableEdit:defaultEditRender,renderTableDefault:defaultEditRender},VxeUpload:{renderTableEdit:defaultEditRender,renderTableCell:defaultEditRender,renderTableDefault:defaultEditRender},VxeImage:{renderTableDefault(e,t){var{row:l,column:n}=t,r=e["props"],l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r),{src:l}),getEditOns(e,t)))]}},VxeImageGroup:{renderTableDefault(e,t){var{row:l,column:n}=t,r=e["props"],l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r),{urlList:l}),getEditOns(e,t)))]}},$input:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldEditRender,renderTableCell(e,t){var l,{props:n={}}=e,{row:r,column:o}=t,a=n.digits||(null==(l=getConfig().input)?void 0:l.digits)||2;let i=_xeUtils.default.get(r,o.field);if(i)switch(n.type){case"date":case"week":case"month":case"year":i=getLabelFormatDate(i,n);break;case"float":i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,a),a)}return getCellLabelVNs(e,t,i)},renderTableDefault:oldEditRender,renderTableFilter:oldFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},$textarea:{tableAutoFocus:".vxe-textarea--inner"},$button:{renderTableDefault:oldButtonEditRender},$buttons:{renderTableDefault:oldButtonsEditRender},$select:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldSelectEditRender,renderTableDefault:oldSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderTableFilter(n,r){var e=r["column"];const{options:o,optionProps:a,optionGroups:i,optionGroupProps:u}=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,r,l,{options:o,optionProps:a,optionGroups:i,optionGroupProps:u})),getFilterOns(n,r,e)))})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},$radio:{tableAutoFocus:".vxe-radio--input"},$checkbox:{tableAutoFocus:".vxe-checkbox--input"},$switch:{tableAutoFocus:".vxe-switch--button",renderTableEdit:oldEditRender,renderTableDefault:oldEditRender}});
|
|
1
|
+
"use strict";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}}const{getConfig,renderer,getI18n}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={transfer:!0};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(0,_vue.resolveComponent)(e)}function getOldComponent({name:e}){return(0,_vue.resolveComponent)(getOldComponentName(e))}function handleConfirmFilter(e,t,l){e=e.$panel;e.changeOption({},t,l)}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){var{name:e,placeholder:n}=e;return[(0,_vue.h)("span",{class:["vxe-cell--label",["VxeTextarea","textarea"].includes(e)?"is--textarea":""]},n&&(0,_utils.isEmptyValue)(l)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(n),1))]:(0,_utils.formatText)(l,1))]}function getNativeElementOns(e,l,t,n){const r=e["events"],o=(0,_vn.getModelEvent)(e),a=(0,_vn.getChangeEvent)(e),i=a===o,u={};return r&&_xeUtils.default.objectEach(r,(t,e)=>{u[(0,_vn.getOnName)(e)]=function(...e){t(l,...e)}}),t&&(u[(0,_vn.getOnName)(o)]=function(e){t(e),i&&n&&n(e),r&&r[o]&&r[o](l,e)}),!i&&n&&(u[(0,_vn.getOnName)(a)]=function(...e){n(...e),r&&r[a]&&r[a](l,...e)}),u}function getComponentOns(e,l,t,n){const r=e["events"],o=(0,_vn.getModelEvent)(e),a=(0,_vn.getChangeEvent)(e),i={};return _xeUtils.default.objectEach(r,(t,e)=>{i[(0,_vn.getOnName)(e)]=function(...e){"development"!==process.env.NODE_ENV||_xeUtils.default.isFunction(t)||(0,_log.errLog)("vxe.error.errFunc",[t]),t(l,...e)}}),t&&(i[(0,_vn.getOnName)(o)]=function(e){t(e),r&&r[o]&&r[o](l,e)}),n&&(i[(0,_vn.getOnName)(a)]=function(...e){n(...e),r&&r[a]&&r[a](l,...e)}),i}function getEditOns(e,t){const{$table:l,row:n,column:r}=t,o=e["name"],a=r["model"],i=isImmediateCell(e,t);return getComponentOns(e,t,e=>{a.update=!0,a.value=e,i&&(0,_util.setCellValue)(n,r,e)},e=>{!i&&["VxeInput","VxeNumberInput","VxeTextarea","$input","$textarea"].includes(o)?(e=e.value,a.update=!0,a.value=e,l.updateStatus(t,e)):l.updateStatus(t)})}function getFilterOns(e,t,l){return getComponentOns(e,t,e=>{l.data=e},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)})}function getNativeEditOns(t,l){const{$table:n,row:r,column:o}=l,a=o["model"];return getNativeElementOns(t,l,e=>{e=e.target.value;isImmediateCell(t,l)?(0,_util.setCellValue)(r,o,e):(a.update=!0,a.value=e)},e=>{e=e.target.value;n.updateStatus(l,e)})}function getNativeFilterOns(e,t,l){return getNativeElementOns(e,t,e=>{l.data=e.target.value},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(l.data),l)})}function nativeEditRender(e,t){var{row:l,column:n}=t,r=e["name"],l=isImmediateCell(e,t)?(0,_util.getCellValue)(l,n):n.model.value;return[(0,_vue.h)(r,Object.assign(Object.assign(Object.assign({class:"vxe-default-"+r},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 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 radioAndCheckboxEditRender(e,t){var l=e["options"],{row:n,column:r}=t,n=(0,_util.getCellValue)(n,r);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)((0,_vue.resolveComponent)("vxe-button"),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function oldButtonsEditRender(e,t){return e.children.map(e=>oldButtonEditRender(e,t)[0])}function renderNativeOptgroups(l,n,r){var{optionGroups:e,optionGroupProps:t={}}=l;const o=t.options||"options",a=t.label||"label";return e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[a]},r(e[o],l,n)))}function renderNativeOptions(e,t,l){var{optionProps:n={}}=t,{row:r,column:o}=l;const a=n.label||"label",i=n.value||"value",u=n.disabled||"disabled",d=isImmediateCell(t,l)?(0,_util.getCellValue)(r,o):o.model.value;return e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[i],disabled:e[u],selected:e[i]==d},e[a]))}function nativeFilterRender(l,n){var e=n["column"];const r=l["name"],o=getNativeAttrs(l);return e.filters.map((e,t)=>(0,_vue.h)(r,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+r},o),{value:e.data}),getNativeFilterOns(l,n,e))))}function defaultFilterRender(n,r){var e=r["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,r,e)))})}function oldFilterRender(n,r){var e=r["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,r,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:r,optionProps:o,optionGroups:a,optionGroupProps:i}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:r,optionProps:o,optionGroups:a,optionGroupProps:i})),getEditOns(e,t)))]}function defaultTreeSelectEditRender(e,t){var{row:l,column:n}=t,{options:r,optionProps:o}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:r,optionProps:o})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:l,column:n}=t,{options:r,optionProps:o,optionGroups:a,optionGroupProps:i}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:r,optionProps:o,optionGroups:a,optionGroupProps:i})),getEditOns(e,t)))]}function getSelectCellValue(e,{row:t,column:l}){const{options:n,optionGroups:r,optionProps:o={},optionGroupProps:a={}}=e;e=_xeUtils.default.get(t,l.field);let i;const u=o.label||"label",d=o.value||"value";return null!=e?_xeUtils.default.map(_xeUtils.default.isArray(e)?e:[e],r?t=>{var l=a.options||"options";for(let e=0;e<r.length&&!(i=_xeUtils.default.find(r[e][l],e=>e[d]==t));e++);return i?i[u]:t}:t=>(i=_xeUtils.default.find(n,e=>e[d]==t))?i[u]:t).join(", "):""}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 getTreeSelectCellValue(e,{row:t,column:l}){var{options:e,optionProps:n={}}=e,t=_xeUtils.default.get(t,l.field);const r=n.label||"label",o=n.value||"value";l=n.children||"children";if(null==t)return"";{const a={};return _xeUtils.default.eachTree(e,e=>{a[_xeUtils.default.get(e,o)]=e},{children:l}),_xeUtils.default.map(_xeUtils.default.isArray(t)?t:[t],e=>{e=a[e];return e&&_xeUtils.default.get(e,r)}).join(", ")}}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)}renderer.mixin({input:{tableAutoFocus:"input",renderTableEdit:nativeEditRender,renderTableDefault:nativeEditRender,renderTableFilter:nativeFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},textarea:{tableAutoFocus:"textarea",renderTableEdit:nativeEditRender},select:{renderTableEdit:nativeSelectEditRender,renderTableDefault:nativeSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},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)))},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var l,{props:n={}}=e,{row:r,column:o}=t,a=n.digits||(null==(l=getConfig().input)?void 0:l.digits)||2;let i=_xeUtils.default.get(r,o.field);if(i)switch(n.type){case"date":case"week":case"month":case"quarter":case"year":i=getLabelFormatDate(i,n);break;case"float":i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,a),a)}return getCellLabelVNs(e,t,i)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},VxeNumberInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:r}=t,o=l.digits||(null==(o=getConfig().numberInput)?void 0:o.digits)||2;let a=_xeUtils.default.get(n,r.field);return getCellLabelVNs(e,t,a=a&&"float"===l.type?_xeUtils.default.toFixed(_xeUtils.default.floor(a,o),o):a)},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},VxeDatePicker:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:r}=t;let o=_xeUtils.default.get(n,r.field);return getCellLabelVNs(e,t,o=o&&getLabelFormatDate(o,l))},renderTableDefault:defaultEditRender,renderTableFilter:defaultFilterRender,tableFilterDefaultMethod:handleFilterMethod},VxeTextarea:{tableAutoFocus:"textarea",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{row:l,column:n}=t;return getCellLabelVNs(e,t,_xeUtils.default.get(l,n.field))}},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:"input",renderTableEdit:defaultSelectEditRender,renderTableDefault:defaultSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderTableFilter(n,r){var e=r["column"];const{options:o,optionProps:a,optionGroups:i,optionGroupProps:u}=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,r,l,{options:o,optionProps:a,optionGroups:i,optionGroupProps:u})),getFilterOns(n,r,e)))})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeTreeSelect:{tableAutoFocus:"input",renderTableEdit:defaultTreeSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))},tableExportMethod:handleExportTreeSelectMethod},VxeIconPicker:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,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:radioAndCheckboxEditRender},VxeCheckboxGroup:{renderTableDefault:radioAndCheckboxEditRender},VxeSwitch:{tableAutoFocus:"button",renderTableEdit:defaultEditRender,renderTableDefault:defaultEditRender},VxeUpload:{renderTableEdit:defaultEditRender,renderTableCell:defaultEditRender,renderTableDefault:defaultEditRender},VxeImage:{renderTableDefault(e,t){var{row:l,column:n}=t,r=e["props"],l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r),{src:l}),getEditOns(e,t)))]}},VxeImageGroup:{renderTableDefault(e,t){var{row:l,column:n}=t,r=e["props"],l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r),{urlList:l}),getEditOns(e,t)))]}},$input:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldEditRender,renderTableCell(e,t){var l,{props:n={}}=e,{row:r,column:o}=t,a=n.digits||(null==(l=getConfig().input)?void 0:l.digits)||2;let i=_xeUtils.default.get(r,o.field);if(i)switch(n.type){case"date":case"week":case"month":case"year":i=getLabelFormatDate(i,n);break;case"float":i=_xeUtils.default.toFixed(_xeUtils.default.floor(i,a),a)}return getCellLabelVNs(e,t,i)},renderTableDefault:oldEditRender,renderTableFilter:oldFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},$textarea:{tableAutoFocus:".vxe-textarea--inner"},$button:{renderTableDefault:oldButtonEditRender},$buttons:{renderTableDefault:oldButtonsEditRender},$select:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldSelectEditRender,renderTableDefault:oldSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderTableFilter(n,r){var e=r["column"];const{options:o,optionProps:a,optionGroups:i,optionGroupProps:u}=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,r,l,{options:o,optionProps:a,optionGroups:i,optionGroupProps:u})),getFilterOns(n,r,e)))})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},$radio:{tableAutoFocus:".vxe-radio--input"},$checkbox:{tableAutoFocus:".vxe-checkbox--input"},$switch:{tableAutoFocus:".vxe-switch--button",renderTableEdit:oldEditRender,renderTableDefault:oldEditRender}});
|
package/lib/table/src/body.js
CHANGED
|
@@ -402,6 +402,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
402
402
|
'col--tree-node': treeNode,
|
|
403
403
|
'col--edit': isEdit,
|
|
404
404
|
'col--ellipsis': hasEllipsis,
|
|
405
|
+
'col--height': !!rowOpts.height,
|
|
405
406
|
'fixed--hidden': fixedHiddenColumn,
|
|
406
407
|
'col--dirty': isDirty,
|
|
407
408
|
'col--active': editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,renderer}=_ui.VxeUI,renderType="body",lineOffsetSizes={mini:3,small:2,medium:1};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){const se=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:w,props:ie,context:y,reactData:ne,internalData:ue}=se,{refTableHeader:_,refTableBody:b,refTableFooter:q,refTableLeftBody:T,refTableRightBody:S,refValidTooltip:j}=se.getRefMaps(),{computeEditOpts:ce,computeMouseOpts:B,computeSYOpts:de,computeEmptyOpts:N,computeKeyboardOpts:Y,computeTooltipOpts:ge,computeRadioOpts:e,computeExpandOpts:A,computeTreeOpts:d,computeCheckboxOpts:pe,computeValidOpts:xe,computeRowOpts:ve,computeColumnOpts:me}=se.getComputeMaps(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),H=(0,_vue.ref)(),$=(0,_vue.ref)(),E=(0,_vue.ref)(),p=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},he=()=>{var e=ie["delayHover"],{lastScrollTime:l,_isResize:t}=ne;return!!(t||l&&Date.now()<l+e)},v=(e,l)=>{let t=1;if(e){var o=d.value,r=e[o.children||o.childrenField];if(r&&se.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=v(r[e],l)}return t},fe=e=>{var{row:l,column:t}=e,o=ue["afterFullData"],r=ie["treeConfig"],a=d.value,{slots:t,treeNode:s}=t,i=ue["fullAllDataRowIdData"],i=i[(0,_util.getRowid)(se,l)];let n=0,u=0,c=[];return i&&(n=i.level,u=i._index,c=i.items),t&&t.line?se.callSlot(t.line,e):(i=se.eqRow(o[0],l),r&&s&&(a.showLine||a.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${i?1:((e,l,t)=>{let o=1;return t&&(o=v(l[t-1],e)),ne.rowHeight*o-(t?1:12-p())})(e,c,u)}px`,left:n*a.indent+(n?2-p():0)+16+"px"}})])]:[])},P=(e,l,t,o,r,a,s,i,n,u,U,q)=>{var{columnKey:j,height:c,showOverflow:d,cellClassName:B,cellStyle:p,align:v,spanMethod:N,mouseConfig:Y,editConfig:W,editRules:h,tooltipConfig:F}=ie,{tableData:V,overflowX:g,scrollYLoad:A,currentColumn:P,mergeList:x,editStore:m,isAllOverflow:X,validErrorMaps:f}=ne,K=ue["afterFullData"],w=xe.value,z=pe.value,y=ce.value,_=ge.value,b=ve.value,T=de.value,G=me.value,{type:J,cellRender:Q,editRender:S,align:C,showOverflow:O,className:Z,treeNode:ee,slots:le}=n,m=m["actived"],T=T["rHeight"],b=b["height"],L=n.id,R=S||Q,R=R?renderer.get(R.name):null,te=R?R.tableCellClassName||R.cellClassName:null,R=R?R.tableCellStyle||R.cellStyle:"";const H=_.showAll;var _=se.getColumnIndex(n),oe=se.getVTColumnIndex(n),re=(0,_utils.isEnableConf)(S);let $=t?n.fixed!==t:n.fixed&&g;g=_xeUtils.default.isUndefined(O)||_xeUtils.default.isNull(O)?d:O;let E="ellipsis"===g;const M="title"===g,I=!0===g||"tooltip"===g;let D=M||I||E,ae;O={},g=C||v,C=f[l+":"+L],v=h&&w.showMessage&&("default"===w.message?c||1<V.length:"inline"===w.message),f={colid:L};const k={$table:se,$grid:se.xegrid,isEdit:!1,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:i,column:n,columnIndex:_,$columnIndex:u,_columnIndex:oe,fixed:t,type:renderType,isHidden:$,level:o,visibleData:K,data:V,items:q};if(A&&!D&&(E=D=!0),(M||I||H||F)&&(O.onMouseenter=e=>{he()||(M?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||H)&&se.triggerBodyTooltipEvent(e,k),se.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(I||H||F)&&(O.onMouseleave=e=>{he()||((I||H)&&se.handleTargetLeaveEvent(e),se.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(z.range||Y)&&(O.onMousedown=e=>{se.triggerCellMousedownEvent(e,k)}),O.onClick=e=>{se.triggerCellClickEvent(e,k)},O.onDblclick=e=>{se.triggerCellDblclickEvent(e,k)},x.length){h=(0,_util.mergeBodyMethod)(x,i,oe);if(h){var{rowspan:c,colspan:e}=h;if(!c||!e)return null;1<c&&(f.rowspan=c),1<e&&(f.colspan=e)}}else if(N){var{rowspan:l=1,colspan:a=1}=N(k)||{};if(!l||!a)return null;1<l&&(f.rowspan=l),1<a&&(f.colspan=a)}!($=$&&x&&(1<f.colspan||1<f.rowspan)?!1:$)&&W&&(S||Q)&&(y.showStatus||y.showUpdateStatus)&&(ae=se.isUpdateByRow(r,n.field));s=[];return $&&d&&X?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(T||b)?`${T||b}px`:""}})):(s.push(...fe(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(T||b)?`${T||b}px`:""},title:M?se.getCellLabel(r,n):null},n.renderCell(k))),v&&C&&(_=C.rule,t=le?le.valid:null,o=Object.assign(Object.assign({},k),C),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-hint",(0,_dom.getPropClass)(w.className,o)],style:_&&_.maxWidth?{width:_.maxWidth+"px"}:null},t?se.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},C.content)])))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",L,{["col--"+g]:g,["col--"+J]:J,"col--last":u===U.length-1,"col--tree-node":ee,"col--edit":re,"col--ellipsis":D,"fixed--hidden":$,"col--dirty":ae,"col--active":W&&re&&m.row===r&&(m.column===n||"row"===y.mode),"col--valid-error":!!C,"col--current":P===n},(0,_dom.getPropClass)(te,k),(0,_dom.getPropClass)(Z,k),(0,_dom.getPropClass)(B,k)],key:j||G.useKey?L:u},f),{style:Object.assign({height:D&&(T||b)?`${T||b}px`:""},_xeUtils.default.isFunction(R)?R(k):R,_xeUtils.default.isFunction(p)?p(k):p)}),O),s)},V=(x,m,f)=>{const{stripe:w,rowKey:y,highlightHoverRow:_,rowClassName:b,rowStyle:T,showOverflow:S,editConfig:C,treeConfig:O}=ie,{hasFixedColumn:L,treeExpandedMaps:R,scrollYLoad:H,rowExpandedMaps:$,expandColumn:E,selectRadioRow:M,pendingRowMaps:I,pendingRowList:D}=ne,k=ue["fullAllDataRowIdData"],U=pe.value,q=e.value,j=d.value,B=ce.value,N=ve.value,Y=j["transform"],W=j.children||j.childrenField,F=[];return m.forEach((t,o)=>{var e={};let r;r=se.getRowIndex(t),(N.isHover||_)&&(e.onMouseenter=e=>{he()||se.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{he()||se.clearHoverRow()});const a=(0,_util.getRowid)(se,t);var l=k[a];let s=0,i=-1,n=0;l&&(s=l.level,i=l.seq,n=l._index);var u,c,d,l={$table:se,seq:i,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},p=E&&!!$[a];let v=!1,h=[],g=!1;C&&(g=se.isInsertByRow(t)),!O||H||Y||(h=t[W],v=h&&0<h.length&&!!R[a]),F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--row",O?"row--level-"+s:"",{"row--stripe":w&&(se.getVTRowIndex(t)+1)%2==0,"is--new":g,"is--expand-row":p,"is--expand-tree":v,"row--new":g&&(B.showStatus||B.showInsertStatus),"row--radio":q.highlight&&se.eqRow(M,t),"row--checked":U.highlight&&se.isCheckedByCheckboxRow(t),"row--pending":D.length&&!!I[a]},(0,_dom.getPropClass)(b,l)],rowid:a,style:T?_xeUtils.default.isFunction(T)?T(l):T:null,key:y||N.useKey||O?a:o},e),f.map((e,l)=>P(i,a,x,s,t,r,o,n,e,l,f,m)))),p&&({height:l,padding:p}=A.value,u={},c=(l&&(u.height=l+"px"),O&&(u.paddingLeft=s*j.indent+30+"px"),E)["showOverflow"],c=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?S:c,d={$table:se,seq:i,column:E,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":p}],key:"expand_"+a,style:T?_xeUtils.default.isFunction(T)?T(d):T:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!L,"col--ellipsis":c},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":l},style:u},[E.renderData(d)])])]))),v&&F.push(...V(x,h,f))}),F};let r;const M=(e,l,t,o)=>{(t||o)&&(t&&((0,_util.removeScrollListener)(t),t.scrollTop=l),o&&((0,_util.removeScrollListener)(o),o.scrollTop=l),clearTimeout(r),r=setTimeout(()=>{(0,_util.restoreScrollListener)(t),(0,_util.restoreScrollListener)(o),ne.lastScrollTime=Date.now()},300))},o=e=>{var l=f["fixedType"],t=ie["highlightHoverRow"],{scrollXLoad:o,scrollYLoad:r}=ne,{elemStore:a,lastScrollTop:s,lastScrollLeft:i}=ue,n=ve.value,u=_.value,c=b.value,d=q.value,p=T.value,v=S.value,h=j.value,g=C.value,u=u?u.$el:null,d=d?d.$el:null,c=c.$el,p=p?p.$el:null,v=v?v.$el:null,x=a["main-body-ySpace"],x=x?x.value:null,a=a["main-body-xSpace"],a=a?a.value:null,x=(r&&x?x:c).clientHeight,a=(o&&a?a:c).clientWidth;let m=g.scrollTop;g=c.scrollLeft,i=g!==i,s=m!==s;ue.lastScrollTop=m,ue.lastScrollLeft=g,ne.lastScrollTime=Date.now(),(n.isHover||t)&&se.clearHoverRow(),p&&"left"===l?(m=p.scrollTop,M(0,m,c,v)):v&&"right"===l?(m=v.scrollTop,M(0,m,c,p)):(i&&(u&&(u.scrollLeft=c.scrollLeft),d)&&(d.scrollLeft=c.scrollLeft),(p||v)&&(se.checkScrolling(),s)&&M(0,m,p,v)),o&&i&&se.triggerScrollXEvent(e),r&&s&&se.triggerScrollYEvent(e),i&&h&&h.reactData.visible&&h.updatePlacement(),se.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:m,scrollLeft:g,scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth,bodyHeight:x,bodyWidth:a,isX:i,isY:s},e)};let m,I=0,D=0,k=0,U=!1;const h=(r,a,e,s,i)=>{var l=ue["elemStore"],{scrollXLoad:t,scrollYLoad:o}=ne,n=b.value,u=T.value,c=S.value;const d=u?u.$el:null,p=c?c.$el:null,v=n.$el;u=l["main-body-ySpace"],c=u?u.value:null,n=l["main-body-xSpace"],u=n?n.value:null;const h=(o&&c?c:v).clientHeight,g=(t&&u?u:v).clientWidth;l=U===a?Math.max(0,I-k):0;U=a,I=Math.abs(a?e-l:e+l),D=0,k=0,clearTimeout(m);const x=()=>{var e,l,t,o;k<I&&(e=f["fixedType"],{scrollTop:o,clientHeight:l,scrollHeight:t}=(D=Math.max(5,Math.floor(1.5*D)),(k+=D)>I&&(D-=k-I),v),o=o+D*(a?-1:1),v.scrollTop=o,d&&(d.scrollTop=o),p&&(p.scrollTop=o),(a?o<t-l:0<=o)&&(m=setTimeout(x,10)),se.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:v.scrollTop,scrollLeft:v.scrollLeft,scrollHeight:v.scrollHeight,scrollWidth:v.scrollWidth,bodyHeight:h,bodyWidth:g,isX:s,isY:i},r))};x()},W=e=>{var{deltaY:l,deltaX:t}=e,o=ie["highlightHoverRow"],r=ne["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=ue,i=ve.value,n=b.value,u=C.value,n=n.$el,c=l<0;(c?u.scrollTop<=0:u.scrollTop>=u.scrollHeight-u.clientHeight)||(u=u.scrollTop+l,t=(n=n.scrollLeft+t)!==s,(s=u!==a)&&(e.preventDefault(),ue.lastScrollTop=u,ue.lastScrollLeft=n,ne.lastScrollTime=Date.now(),(i.isHover||o)&&se.clearHoverRow(),h(e,c,l,t,s),r)&&se.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f["fixedType"],l=ue["elemStore"],e=`${e||"main"}-body-`,t=C.value;l[e+"wrapper"]=C,l[e+"table"]=O,l[e+"colgroup"]=L,l[e+"list"]=R,l[e+"xSpace"]=H,l[e+"ySpace"]=$,l[e+"emptyBlock"]=E,t&&(t.onscroll=o,t._onscroll=o)})}),(0,_vue.onBeforeUnmount)(()=>{var e=C.value;clearTimeout(m),e&&(e._onscroll=null,e.onscroll=null)}),(0,_vue.onUnmounted)(()=>{var e=f["fixedType"],l=ue["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{let{fixedColumn:e,fixedType:l,tableColumn:t}=f;var{keyboardConfig:o,showOverflow:r,spanMethod:a,mouseConfig:s}=ie,{tableData:i,mergeList:n,scrollYLoad:u,isAllOverflow:c}=ne,d=ue["visibleColumn"],p=y["slots"],v=de.value,h=N.value,g=Y.value,x=B.value;l&&(t=ne.expandColumn||!(u||r&&c)||n.length||a||o&&g.isMerge?d:e);let m;u=p?p.empty:null;return m=u?se.callSlot(u,{$table:se,$grid:se.xegrid}):(c=(r=h.name?renderer.get(h.name):null)?r.renderTableEmpty||r.renderTableEmptyView||r.renderEmpty:null)?(0,_vn.getSlotVNs)(c(h,{$table:se})):ie.emptyText||getI18n("vxe.table.emptyText"),(0,_vue.h)("div",Object.assign({ref:C,class:["vxe-table--body-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:w},"wheel"===v.mode?{onWheel:W}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:$,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:O,class:"vxe-table--body",xid:w,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:L},t.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("tbody",{ref:R},V(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){se.triggerCellExtendMousedownEvent(e,{$table:se,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:E},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},m)])])}}});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,renderer}=_ui.VxeUI,renderType="body",lineOffsetSizes={mini:3,small:2,medium:1};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){const ie=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:w,props:ne,context:y,reactData:ue,internalData:ce}=ie,{refTableHeader:_,refTableBody:b,refTableFooter:q,refTableLeftBody:T,refTableRightBody:S,refValidTooltip:j}=ie.getRefMaps(),{computeEditOpts:de,computeMouseOpts:B,computeSYOpts:pe,computeEmptyOpts:N,computeKeyboardOpts:Y,computeTooltipOpts:xe,computeRadioOpts:e,computeExpandOpts:A,computeTreeOpts:d,computeCheckboxOpts:ve,computeValidOpts:me,computeRowOpts:he,computeColumnOpts:fe}=ie.getComputeMaps(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),H=(0,_vue.ref)(),$=(0,_vue.ref)(),E=(0,_vue.ref)(),p=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},ge=()=>{var e=ne["delayHover"],{lastScrollTime:l,_isResize:t}=ue;return!!(t||l&&Date.now()<l+e)},v=(e,l)=>{let t=1;if(e){var o=d.value,r=e[o.children||o.childrenField];if(r&&ie.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=v(r[e],l)}return t},we=e=>{var{row:l,column:t}=e,o=ce["afterFullData"],r=ne["treeConfig"],a=d.value,{slots:t,treeNode:s}=t,i=ce["fullAllDataRowIdData"],i=i[(0,_util.getRowid)(ie,l)];let n=0,u=0,c=[];return i&&(n=i.level,u=i._index,c=i.items),t&&t.line?ie.callSlot(t.line,e):(i=ie.eqRow(o[0],l),r&&s&&(a.showLine||a.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${i?1:((e,l,t)=>{let o=1;return t&&(o=v(l[t-1],e)),ue.rowHeight*o-(t?1:12-p())})(e,c,u)}px`,left:n*a.indent+(n?2-p():0)+16+"px"}})])]:[])},P=(e,l,t,o,r,a,s,i,n,u,U,q)=>{var{columnKey:j,height:c,showOverflow:d,cellClassName:B,cellStyle:p,align:v,spanMethod:N,mouseConfig:Y,editConfig:W,editRules:h,tooltipConfig:F}=ne,{tableData:V,overflowX:g,scrollYLoad:A,currentColumn:P,mergeList:x,editStore:m,isAllOverflow:X,validErrorMaps:f}=ue,K=ce["afterFullData"],w=me.value,z=ve.value,y=de.value,_=xe.value,G=he.value,b=pe.value,J=fe.value,{type:Q,cellRender:Z,editRender:T,align:S,showOverflow:C,className:ee,treeNode:le,slots:te}=n,m=m["actived"],b=b["rHeight"],O=G["height"],L=n.id,R=T||Z,R=R?renderer.get(R.name):null,oe=R?R.tableCellClassName||R.cellClassName:null,R=R?R.tableCellStyle||R.cellStyle:"";const H=_.showAll;var _=ie.getColumnIndex(n),re=ie.getVTColumnIndex(n),ae=(0,_utils.isEnableConf)(T);let $=t?n.fixed!==t:n.fixed&&g;g=_xeUtils.default.isUndefined(C)||_xeUtils.default.isNull(C)?d:C;let E="ellipsis"===g;const M="title"===g,I=!0===g||"tooltip"===g;let D=M||I||E,se;C={},g=S||v,S=f[l+":"+L],v=h&&w.showMessage&&("default"===w.message?c||1<V.length:"inline"===w.message),f={colid:L};const k={$table:ie,$grid:ie.xegrid,isEdit:!1,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:i,column:n,columnIndex:_,$columnIndex:u,_columnIndex:re,fixed:t,type:renderType,isHidden:$,level:o,visibleData:K,data:V,items:q};if(A&&!D&&(E=D=!0),(M||I||H||F)&&(C.onMouseenter=e=>{ge()||(M?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||H)&&ie.triggerBodyTooltipEvent(e,k),ie.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(I||H||F)&&(C.onMouseleave=e=>{ge()||((I||H)&&ie.handleTargetLeaveEvent(e),ie.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(z.range||Y)&&(C.onMousedown=e=>{ie.triggerCellMousedownEvent(e,k)}),C.onClick=e=>{ie.triggerCellClickEvent(e,k)},C.onDblclick=e=>{ie.triggerCellDblclickEvent(e,k)},x.length){h=(0,_util.mergeBodyMethod)(x,i,re);if(h){var{rowspan:c,colspan:e}=h;if(!c||!e)return null;1<c&&(f.rowspan=c),1<e&&(f.colspan=e)}}else if(N){var{rowspan:l=1,colspan:a=1}=N(k)||{};if(!l||!a)return null;1<l&&(f.rowspan=l),1<a&&(f.colspan=a)}!($=$&&x&&(1<f.colspan||1<f.rowspan)?!1:$)&&W&&(T||Z)&&(y.showStatus||y.showUpdateStatus)&&(se=ie.isUpdateByRow(r,n.field));s=[];return $&&d&&X?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(b||O)?`${b||O}px`:""}})):(s.push(...we(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(b||O)?`${b||O}px`:""},title:M?ie.getCellLabel(r,n):null},n.renderCell(k))),v&&S&&(_=S.rule,t=te?te.valid:null,o=Object.assign(Object.assign({},k),S),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-hint",(0,_dom.getPropClass)(w.className,o)],style:_&&_.maxWidth?{width:_.maxWidth+"px"}:null},t?ie.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},S.content)])))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",L,{["col--"+g]:g,["col--"+Q]:Q,"col--last":u===U.length-1,"col--tree-node":le,"col--edit":ae,"col--ellipsis":D,"col--height":!!G.height,"fixed--hidden":$,"col--dirty":se,"col--active":W&&ae&&m.row===r&&(m.column===n||"row"===y.mode),"col--valid-error":!!S,"col--current":P===n},(0,_dom.getPropClass)(oe,k),(0,_dom.getPropClass)(ee,k),(0,_dom.getPropClass)(B,k)],key:j||J.useKey?L:u},f),{style:Object.assign({height:D&&(b||O)?`${b||O}px`:""},_xeUtils.default.isFunction(R)?R(k):R,_xeUtils.default.isFunction(p)?p(k):p)}),C),s)},V=(x,m,f)=>{const{stripe:w,rowKey:y,highlightHoverRow:_,rowClassName:b,rowStyle:T,showOverflow:S,editConfig:C,treeConfig:O}=ne,{hasFixedColumn:L,treeExpandedMaps:R,scrollYLoad:H,rowExpandedMaps:$,expandColumn:E,selectRadioRow:M,pendingRowMaps:I,pendingRowList:D}=ue,k=ce["fullAllDataRowIdData"],U=ve.value,q=e.value,j=d.value,B=de.value,N=he.value,Y=j["transform"],W=j.children||j.childrenField,F=[];return m.forEach((t,o)=>{var e={};let r;r=ie.getRowIndex(t),(N.isHover||_)&&(e.onMouseenter=e=>{ge()||ie.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{ge()||ie.clearHoverRow()});const a=(0,_util.getRowid)(ie,t);var l=k[a];let s=0,i=-1,n=0;l&&(s=l.level,i=l.seq,n=l._index);var u,c,d,l={$table:ie,seq:i,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},p=E&&!!$[a];let v=!1,h=[],g=!1;C&&(g=ie.isInsertByRow(t)),!O||H||Y||(h=t[W],v=h&&0<h.length&&!!R[a]),F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--row",O?"row--level-"+s:"",{"row--stripe":w&&(ie.getVTRowIndex(t)+1)%2==0,"is--new":g,"is--expand-row":p,"is--expand-tree":v,"row--new":g&&(B.showStatus||B.showInsertStatus),"row--radio":q.highlight&&ie.eqRow(M,t),"row--checked":U.highlight&&ie.isCheckedByCheckboxRow(t),"row--pending":D.length&&!!I[a]},(0,_dom.getPropClass)(b,l)],rowid:a,style:T?_xeUtils.default.isFunction(T)?T(l):T:null,key:y||N.useKey||O?a:o},e),f.map((e,l)=>P(i,a,x,s,t,r,o,n,e,l,f,m)))),p&&({height:l,padding:p}=A.value,u={},c=(l&&(u.height=l+"px"),O&&(u.paddingLeft=s*j.indent+30+"px"),E)["showOverflow"],c=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?S:c,d={$table:ie,seq:i,column:E,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":p}],key:"expand_"+a,style:T?_xeUtils.default.isFunction(T)?T(d):T:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!L,"col--ellipsis":c},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":l},style:u},[E.renderData(d)])])]))),v&&F.push(...V(x,h,f))}),F};let r;const M=(e,l,t,o)=>{(t||o)&&(t&&((0,_util.removeScrollListener)(t),t.scrollTop=l),o&&((0,_util.removeScrollListener)(o),o.scrollTop=l),clearTimeout(r),r=setTimeout(()=>{(0,_util.restoreScrollListener)(t),(0,_util.restoreScrollListener)(o),ue.lastScrollTime=Date.now()},300))},o=e=>{var l=f["fixedType"],t=ne["highlightHoverRow"],{scrollXLoad:o,scrollYLoad:r}=ue,{elemStore:a,lastScrollTop:s,lastScrollLeft:i}=ce,n=he.value,u=_.value,c=b.value,d=q.value,p=T.value,v=S.value,h=j.value,g=C.value,u=u?u.$el:null,d=d?d.$el:null,c=c.$el,p=p?p.$el:null,v=v?v.$el:null,x=a["main-body-ySpace"],x=x?x.value:null,a=a["main-body-xSpace"],a=a?a.value:null,x=(r&&x?x:c).clientHeight,a=(o&&a?a:c).clientWidth;let m=g.scrollTop;g=c.scrollLeft,i=g!==i,s=m!==s;ce.lastScrollTop=m,ce.lastScrollLeft=g,ue.lastScrollTime=Date.now(),(n.isHover||t)&&ie.clearHoverRow(),p&&"left"===l?(m=p.scrollTop,M(0,m,c,v)):v&&"right"===l?(m=v.scrollTop,M(0,m,c,p)):(i&&(u&&(u.scrollLeft=c.scrollLeft),d)&&(d.scrollLeft=c.scrollLeft),(p||v)&&(ie.checkScrolling(),s)&&M(0,m,p,v)),o&&i&&ie.triggerScrollXEvent(e),r&&s&&ie.triggerScrollYEvent(e),i&&h&&h.reactData.visible&&h.updatePlacement(),ie.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:m,scrollLeft:g,scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth,bodyHeight:x,bodyWidth:a,isX:i,isY:s},e)};let m,I=0,D=0,k=0,U=!1;const h=(r,a,e,s,i)=>{var l=ce["elemStore"],{scrollXLoad:t,scrollYLoad:o}=ue,n=b.value,u=T.value,c=S.value;const d=u?u.$el:null,p=c?c.$el:null,v=n.$el;u=l["main-body-ySpace"],c=u?u.value:null,n=l["main-body-xSpace"],u=n?n.value:null;const h=(o&&c?c:v).clientHeight,g=(t&&u?u:v).clientWidth;l=U===a?Math.max(0,I-k):0;U=a,I=Math.abs(a?e-l:e+l),D=0,k=0,clearTimeout(m);const x=()=>{var e,l,t,o;k<I&&(e=f["fixedType"],{scrollTop:o,clientHeight:l,scrollHeight:t}=(D=Math.max(5,Math.floor(1.5*D)),(k+=D)>I&&(D-=k-I),v),o=o+D*(a?-1:1),v.scrollTop=o,d&&(d.scrollTop=o),p&&(p.scrollTop=o),(a?o<t-l:0<=o)&&(m=setTimeout(x,10)),ie.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:v.scrollTop,scrollLeft:v.scrollLeft,scrollHeight:v.scrollHeight,scrollWidth:v.scrollWidth,bodyHeight:h,bodyWidth:g,isX:s,isY:i},r))};x()},W=e=>{var{deltaY:l,deltaX:t}=e,o=ne["highlightHoverRow"],r=ue["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=ce,i=he.value,n=b.value,u=C.value,n=n.$el,c=l<0;(c?u.scrollTop<=0:u.scrollTop>=u.scrollHeight-u.clientHeight)||(u=u.scrollTop+l,t=(n=n.scrollLeft+t)!==s,(s=u!==a)&&(e.preventDefault(),ce.lastScrollTop=u,ce.lastScrollLeft=n,ue.lastScrollTime=Date.now(),(i.isHover||o)&&ie.clearHoverRow(),h(e,c,l,t,s),r)&&ie.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f["fixedType"],l=ce["elemStore"],e=`${e||"main"}-body-`,t=C.value;l[e+"wrapper"]=C,l[e+"table"]=O,l[e+"colgroup"]=L,l[e+"list"]=R,l[e+"xSpace"]=H,l[e+"ySpace"]=$,l[e+"emptyBlock"]=E,t&&(t.onscroll=o,t._onscroll=o)})}),(0,_vue.onBeforeUnmount)(()=>{var e=C.value;clearTimeout(m),e&&(e._onscroll=null,e.onscroll=null)}),(0,_vue.onUnmounted)(()=>{var e=f["fixedType"],l=ce["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{let{fixedColumn:e,fixedType:l,tableColumn:t}=f;var{keyboardConfig:o,showOverflow:r,spanMethod:a,mouseConfig:s}=ne,{tableData:i,mergeList:n,scrollYLoad:u,isAllOverflow:c}=ue,d=ce["visibleColumn"],p=y["slots"],v=pe.value,h=N.value,g=Y.value,x=B.value;l&&(t=ue.expandColumn||!(u||r&&c)||n.length||a||o&&g.isMerge?d:e);let m;u=p?p.empty:null;return m=u?ie.callSlot(u,{$table:ie,$grid:ie.xegrid}):(c=(r=h.name?renderer.get(h.name):null)?r.renderTableEmpty||r.renderTableEmptyView||r.renderEmpty:null)?(0,_vn.getSlotVNs)(c(h,{$table:ie})):ne.emptyText||getI18n("vxe.table.emptyText"),(0,_vue.h)("div",Object.assign({ref:C,class:["vxe-table--body-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:w},"wheel"===v.mode?{onWheel:W}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:$,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:O,class:"vxe-table--body",xid:w,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:L},t.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("tbody",{ref:R},V(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){ie.triggerCellExtendMousedownEvent(e,{$table:ie,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:E},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},m)])])}}});
|
package/lib/table/src/props.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../ui");const getConfig=_ui.VxeUI["getConfig"];var _default=exports.default={id:[String,Function],data:Array,height:[Number,String],minHeight:{type:[Number,String],default:()=>getConfig().table.minHeight},maxHeight:[Number,String],resizable:{type:Boolean,default:()=>getConfig().table.resizable},stripe:{type:Boolean,default:()=>getConfig().table.stripe},border:{type:[Boolean,String],default:()=>getConfig().table.border},round:{type:Boolean,default:()=>getConfig().table.round},size:{type:String,default:()=>getConfig().table.size||getConfig().size},fit:{type:Boolean,default:()=>getConfig().table.fit},loading:Boolean,align:{type:String,default:()=>getConfig().table.align},headerAlign:{type:String,default:()=>getConfig().table.headerAlign},footerAlign:{type:String,default:()=>getConfig().table.footerAlign},showHeader:{type:Boolean,default:()=>getConfig().table.showHeader},highlightCurrentRow:{type:Boolean,default:()=>getConfig().table.highlightCurrentRow},highlightHoverRow:{type:Boolean,default:()=>getConfig().table.highlightHoverRow},highlightCurrentColumn:{type:Boolean,default:()=>getConfig().table.highlightCurrentColumn},highlightHoverColumn:{type:Boolean,default:()=>getConfig().table.highlightHoverColumn},highlightCell:Boolean,showFooter:Boolean,footerData:Array,footerMethod:Function,rowClassName:[String,Function],cellClassName:[String,Function],headerRowClassName:[String,Function],headerCellClassName:[String,Function],footerRowClassName:[String,Function],footerCellClassName:[String,Function],cellStyle:[Object,Function],headerCellStyle:[Object,Function],footerCellStyle:[Object,Function],rowStyle:[Object,Function],headerRowStyle:[Object,Function],footerRowStyle:[Object,Function],mergeCells:Array,mergeFooterItems:Array,spanMethod:Function,footerSpanMethod:Function,showOverflow:{type:[Boolean,String],default:()=>getConfig().table.showOverflow},showHeaderOverflow:{type:[Boolean,String],default:()=>getConfig().table.showHeaderOverflow},showFooterOverflow:{type:[Boolean,String],default:()=>getConfig().table.showFooterOverflow},columnKey:Boolean,rowKey:Boolean,rowId:{type:String,default:()=>getConfig().table.rowId},zIndex:Number,emptyText:{type:String,default:()=>getConfig().table.emptyText},keepSource:{type:Boolean,default:()=>getConfig().table.keepSource},autoResize:{type:Boolean,default:()=>getConfig().table.autoResize},syncResize:[Boolean,String,Number],resizeConfig:Object,columnConfig:Object,rowConfig:Object,resizableConfig:Object,seqConfig:Object,sortConfig:Object,filterConfig:Object,radioConfig:Object,checkboxConfig:Object,tooltipConfig:Object,exportConfig:Object,importConfig:Object,printConfig:Object,expandConfig:Object,treeConfig:Object,menuConfig:Object,mouseConfig:Object,areaConfig:Object,keyboardConfig:Object,clipConfig:Object,fnrConfig:Object,editConfig:Object,validConfig:Object,editRules:Object,loadingConfig:Object,emptyRender:Object,customConfig:Object,scrollX:Object,scrollY:Object,animat:{type:Boolean,default:()=>getConfig().table.animat},delayHover:{type:Number,default:()=>getConfig().table.delayHover},params:Object};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../ui");const getConfig=_ui.VxeUI["getConfig"];var _default=exports.default={id:[String,Function],data:Array,height:[Number,String],minHeight:{type:[Number,String],default:()=>getConfig().table.minHeight},maxHeight:[Number,String],resizable:{type:Boolean,default:()=>getConfig().table.resizable},stripe:{type:Boolean,default:()=>getConfig().table.stripe},border:{type:[Boolean,String],default:()=>getConfig().table.border},padding:{type:Boolean,default:()=>getConfig().table.padding},round:{type:Boolean,default:()=>getConfig().table.round},size:{type:String,default:()=>getConfig().table.size||getConfig().size},fit:{type:Boolean,default:()=>getConfig().table.fit},loading:Boolean,align:{type:String,default:()=>getConfig().table.align},headerAlign:{type:String,default:()=>getConfig().table.headerAlign},footerAlign:{type:String,default:()=>getConfig().table.footerAlign},showHeader:{type:Boolean,default:()=>getConfig().table.showHeader},highlightCurrentRow:{type:Boolean,default:()=>getConfig().table.highlightCurrentRow},highlightHoverRow:{type:Boolean,default:()=>getConfig().table.highlightHoverRow},highlightCurrentColumn:{type:Boolean,default:()=>getConfig().table.highlightCurrentColumn},highlightHoverColumn:{type:Boolean,default:()=>getConfig().table.highlightHoverColumn},highlightCell:Boolean,showFooter:Boolean,footerData:Array,footerMethod:Function,rowClassName:[String,Function],cellClassName:[String,Function],headerRowClassName:[String,Function],headerCellClassName:[String,Function],footerRowClassName:[String,Function],footerCellClassName:[String,Function],cellStyle:[Object,Function],headerCellStyle:[Object,Function],footerCellStyle:[Object,Function],rowStyle:[Object,Function],headerRowStyle:[Object,Function],footerRowStyle:[Object,Function],mergeCells:Array,mergeFooterItems:Array,spanMethod:Function,footerSpanMethod:Function,showOverflow:{type:[Boolean,String],default:()=>getConfig().table.showOverflow},showHeaderOverflow:{type:[Boolean,String],default:()=>getConfig().table.showHeaderOverflow},showFooterOverflow:{type:[Boolean,String],default:()=>getConfig().table.showFooterOverflow},columnKey:Boolean,rowKey:Boolean,rowId:{type:String,default:()=>getConfig().table.rowId},zIndex:Number,emptyText:{type:String,default:()=>getConfig().table.emptyText},keepSource:{type:Boolean,default:()=>getConfig().table.keepSource},autoResize:{type:Boolean,default:()=>getConfig().table.autoResize},syncResize:[Boolean,String,Number],resizeConfig:Object,columnConfig:Object,rowConfig:Object,resizableConfig:Object,seqConfig:Object,sortConfig:Object,filterConfig:Object,radioConfig:Object,checkboxConfig:Object,tooltipConfig:Object,exportConfig:Object,importConfig:Object,printConfig:Object,expandConfig:Object,treeConfig:Object,menuConfig:Object,mouseConfig:Object,areaConfig:Object,keyboardConfig:Object,clipConfig:Object,fnrConfig:Object,editConfig:Object,validConfig:Object,editRules:Object,loadingConfig:Object,emptyRender:Object,customConfig:Object,scrollX:Object,scrollY:Object,animat:{type:Boolean,default:()=>getConfig().table.animat},delayHover:{type:Number,default:()=>getConfig().table.delayHover},params:Object};
|
package/lib/table/src/table.js
CHANGED
|
@@ -8159,6 +8159,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
8159
8159
|
'is--fixed-left': leftList.length,
|
|
8160
8160
|
'is--fixed-right': rightList.length,
|
|
8161
8161
|
'is--animat': !!props.animat,
|
|
8162
|
+
'is--padding': props.padding,
|
|
8162
8163
|
'is--round': props.round,
|
|
8163
8164
|
'is--stripe': !treeConfig && stripe,
|
|
8164
8165
|
'is--loading': currLoading,
|