vxe-table 4.7.3 → 4.7.5
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/colgroup/index.js +1 -1
- package/es/column/index.js +1 -1
- package/es/grid/index.js +1 -1
- package/es/grid/src/grid.js +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/index.js +1 -1
- package/es/table/module/custom/hook.js +19 -3
- package/es/table/module/custom/panel.js +264 -160
- package/es/table/module/edit/hook.js +1 -1
- package/es/table/module/export/export-panel.js +1 -1
- package/es/table/module/export/hook.js +1 -1
- package/es/table/module/export/import-panel.js +1 -1
- package/es/table/module/filter/hook.js +1 -1
- package/es/table/module/filter/panel.js +1 -1
- package/es/table/module/menu/hook.js +1 -1
- package/es/table/module/validator/hook.js +1 -1
- package/es/table/render/index.js +1 -1
- package/es/table/src/body.js +1 -1
- package/es/table/src/cell.js +1 -1
- package/es/table/src/columnInfo.js +3 -1
- package/es/table/src/props.js +1 -1
- package/es/table/src/table.js +9 -3
- package/es/table/style.css +69 -9
- package/es/table/style.min.css +1 -1
- package/es/toolbar/index.js +1 -1
- package/es/toolbar/src/toolbar.js +2 -2
- package/es/ui/index.js +4 -2
- package/es/vxe-table/style.css +69 -9
- package/es/vxe-table/style.min.css +1 -1
- package/lib/colgroup/index.js +4 -4
- package/lib/colgroup/index.min.js +1 -1
- package/lib/column/index.js +4 -4
- package/lib/column/index.min.js +1 -1
- package/lib/grid/index.js +3 -3
- package/lib/grid/index.min.js +1 -1
- package/lib/grid/src/grid.js +20 -20
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +864 -737
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/index.js +3 -3
- package/lib/table/index.min.js +1 -1
- package/lib/table/module/custom/hook.js +25 -4
- package/lib/table/module/custom/hook.min.js +1 -1
- package/lib/table/module/custom/panel.js +178 -84
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/hook.js +2 -2
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/export/export-panel.js +2 -2
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/hook.js +20 -20
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/module/export/import-panel.js +2 -2
- package/lib/table/module/export/import-panel.min.js +1 -1
- package/lib/table/module/filter/hook.js +2 -2
- package/lib/table/module/filter/hook.min.js +1 -1
- package/lib/table/module/filter/panel.js +2 -2
- package/lib/table/module/filter/panel.min.js +1 -1
- package/lib/table/module/menu/hook.js +2 -2
- package/lib/table/module/menu/hook.min.js +1 -1
- package/lib/table/module/validator/hook.js +2 -2
- package/lib/table/module/validator/hook.min.js +1 -1
- package/lib/table/render/index.js +2 -2
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/body.js +2 -2
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +2 -2
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/columnInfo.js +4 -2
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/props.js +2 -2
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +15 -6
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +69 -9
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/index.js +3 -3
- package/lib/toolbar/index.min.js +1 -1
- package/lib/toolbar/src/toolbar.js +3 -3
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +4 -2
- package/lib/ui/index.min.js +1 -1
- package/lib/vxe-table/style/style.css +69 -9
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/colgroup/index.ts +1 -1
- package/packages/column/index.ts +1 -1
- package/packages/grid/index.ts +1 -1
- package/packages/grid/src/grid.ts +1 -1
- package/packages/table/index.ts +1 -1
- package/packages/table/module/custom/hook.ts +20 -4
- package/packages/table/module/custom/panel.ts +273 -166
- package/packages/table/module/edit/hook.ts +1 -1
- package/packages/table/module/export/export-panel.ts +1 -1
- package/packages/table/module/export/hook.ts +1 -1
- package/packages/table/module/export/import-panel.ts +1 -1
- package/packages/table/module/filter/hook.ts +1 -1
- package/packages/table/module/filter/panel.ts +1 -1
- package/packages/table/module/menu/hook.ts +1 -1
- package/packages/table/module/validator/hook.ts +1 -1
- package/packages/table/render/index.ts +1 -1
- package/packages/table/src/body.ts +1 -1
- package/packages/table/src/cell.ts +1 -1
- package/packages/table/src/columnInfo.ts +5 -1
- package/packages/table/src/props.ts +1 -1
- package/packages/table/src/table.ts +9 -3
- package/packages/toolbar/index.ts +1 -1
- package/packages/toolbar/src/toolbar.ts +2 -2
- package/packages/ui/index.ts +2 -0
- package/styles/components/table-module/custom.scss +78 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vxePcUi=require("vxe-pc-ui"),_util=require("../../table/src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,renderer,getI18n,log}=_vxePcUi.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={transfer:!0};function getModelEvent(e){switch(e.name){case"input":case"textarea":return"input"}return"update:modelValue"}function getChangeEvent(e){switch(e.name){case"input":case"textarea":case"VxeInput":case"VxeTextarea":case"$input":case"$textarea":return"input"}return"change"}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,n){var{dateConfig:r={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),r.labelFormat||n)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+t.type))}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,n){e=e.$panel;e.changeOption({},t,n)}function getNativeAttrs(e){let{name:t,attrs:n}=e;return n="input"===t?Object.assign({type:"text"},n):n}function getInputImmediateModel(e){var{name:e,immediate:t,props:n}=e;return t||("VxeInput"===e||"$input"===e?(t=(n||{})["type"],!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,n,r){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,r,e.props,{[componentDefaultModelProp]:n})}function getCellEditFilterProps(e,t,n,r){return _xeUtils.default.assign({},defaultCompProps,r,e.props,{[componentDefaultModelProp]:n})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,n){e=e.placeholder;return[(0,_vue.h)("span",{class:"vxe-cell--label"},e&&(0,_utils.isEmptyValue)(n)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(e),1))]:(0,_utils.formatText)(n,1))]}function getElementOns(e,n,t,r){const o=e["events"],l=getModelEvent(e),i=getChangeEvent(e),a=i===l,u={};return o&&_xeUtils.default.objectEach(o,(t,e)=>{u[(0,_vn.getOnName)(e)]=function(...e){t(n,...e)}}),t&&(u[(0,_vn.getOnName)(l)]=function(e){t(e),a&&r&&r(e),o&&o[l]&&o[l](n,e)}),!a&&r&&(u[(0,_vn.getOnName)(i)]=function(...e){r(...e),o&&o[i]&&o[i](n,...e)}),u}function getComponentOns(e,n,t,r){const o=e["events"],l=getModelEvent(e),i=getChangeEvent(e),a={};return _xeUtils.default.objectEach(o,(t,e)=>{a[(0,_vn.getOnName)(e)]=function(...e){"development"!==process.env.NODE_ENV||_xeUtils.default.isFunction(t)||log.err("vxe.error.errFunc",[t]),t(n,...e)}}),t&&(a[(0,_vn.getOnName)(l)]=function(e){t(e),o&&o[l]&&o[l](n,e)}),r&&(a[(0,_vn.getOnName)(i)]=function(...e){r(...e),o&&o[i]&&o[i](n,...e)}),a}function getEditOns(e,t){const{$table:n,row:r,column:o}=t,l=e["name"],i=o["model"],a=isImmediateCell(e,t);return getComponentOns(e,t,e=>{a?(0,_util.setCellValue)(r,o,e):(i.update=!0,i.value=e)},e=>{!a&&["VxeInput","VxeTextarea","$input","$textarea"].includes(l)?(e=e.value,i.update=!0,i.value=e,n.updateStatus(t,e)):n.updateStatus(t)})}function getFilterOns(e,t,n){return getComponentOns(e,t,e=>{n.data=e},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(n.data),n)})}function getNativeEditOns(t,n){const{$table:r,row:o,column:l}=n,i=l["model"];return getElementOns(t,n,e=>{e=e.target.value;isImmediateCell(t,n)?(0,_util.setCellValue)(o,l,e):(i.update=!0,i.value=e)},e=>{e=e.target.value;r.updateStatus(n,e)})}function getNativeFilterOns(e,t,n){return getElementOns(e,t,e=>{n.data=e.target.value},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(n.data),n)})}function nativeEditRender(e,t){var{row:n,column:r}=t,o=e["name"],n=isImmediateCell(e,t)?(0,_util.getCellValue)(n,r):r.model.value;return[(0,_vue.h)(o,Object.assign(Object.assign(Object.assign({class:"vxe-default-"+o},getNativeAttrs(e)),{value:n}),getNativeEditOns(e,t)))]}function defaultCellRender(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:n,column:r}=t,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldEditRender(e,t){var{row:n,column:r}=t,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n)),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(n,r,o){var{optionGroups:e,optionGroupProps:t={}}=n;const l=t.options||"options",i=t.label||"label";return e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[i]},o(e[l],n,r)))}function renderNativeOptions(e,t,n){var{optionProps:r={}}=t,{row:o,column:l}=n;const i=r.label||"label",a=r.value||"value",u=r.disabled||"disabled",s=isImmediateCell(t,n)?(0,_util.getCellValue)(o,l):l.model.value;return e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[a],disabled:e[u],selected:e[a]==s},e[i]))}function nativeFilterRender(n,r){var e=r["column"];const o=n["name"],l=getNativeAttrs(n);return e.filters.map((e,t)=>(0,_vue.h)(o,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+o},l),{value:e.data}),getNativeFilterOns(n,r,e))))}function defaultFilterRender(r,o){var e=o["column"];return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getDefaultComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,r,n)),getFilterOns(r,o,e)))})}function oldFilterRender(r,o){var e=o["column"];return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getOldComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,r,n)),getFilterOns(r,o,e)))})}function handleFilterMethod({option:e,row:t,column:n}){e=e.data;return _xeUtils.default.get(t,n.property)==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:n,column:r}=t,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a}=e,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:n,column:r}=t,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a}=e,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a})),getEditOns(e,t)))]}function getSelectCellValue(e,{row:t,column:n}){const{props:r={},options:o,optionGroups:l,optionProps:i={},optionGroupProps:a={}}=e;e=_xeUtils.default.get(t,n.property);let u;const s=i.label||"label",d=i.value||"value";return(0,_utils.isEmptyValue)(e)?"":_xeUtils.default.map(r.multiple?e:[e],l?t=>{var n=a.options||"options";for(let e=0;e<l.length&&!(u=_xeUtils.default.find(l[e][n],e=>e[d]==t));e++);return u?u[s]:t}:t=>(u=_xeUtils.default.find(o,e=>e[d]==t))?u[s]:t).join(", ")}function handleExportSelectMethod(e){var{row:t,column:n,options:r}=e;return r.original?(0,_util.getCellValue)(t,n):getSelectCellValue(n.editRender||n.cellRender,e)}renderer.mixin({input:{autofocus:"input",renderEdit:nativeEditRender,renderDefault:nativeEditRender,renderFilter:nativeFilterRender,defaultFilterMethod:handleFilterMethod},textarea:{autofocus:"textarea",renderEdit:nativeEditRender},select:{renderEdit:nativeSelectEditRender,renderDefault:nativeSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(n,r){var e=r["column"];return e.filters.map((e,t)=>(0,_vue.h)("select",Object.assign(Object.assign({key:t,class:"vxe-default-select"},getNativeAttrs(n)),getNativeFilterOns(n,r,e)),n.optionGroups?renderNativeOptgroups(n,r,renderNativeOptions):renderNativeOptions(n.options,n,r)))},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},VxeInput:{autofocus:".vxe-input--inner",renderEdit:defaultEditRender,renderCell(e,t){var n,{props:r={}}=e,{row:o,column:l}=t,i=r.digits||(null==(n=getConfig().input)?void 0:n.digits)||2;let a=_xeUtils.default.get(o,l.property);if(a)switch(r.type){case"date":case"week":case"month":case"year":a=getLabelFormatDate(a,r);break;case"float":a=_xeUtils.default.toFixed(_xeUtils.default.floor(a,i),i)}return getCellLabelVNs(e,t,a)},renderDefault:defaultEditRender,renderFilter:defaultFilterRender,defaultFilterMethod:handleFilterMethod},VxeTextarea:{autofocus:".vxe-textarea--inner"},VxeButton:{renderDefault:defaultCellRender},VxeButtonGroup:{renderDefault:defaultCellRender},VxeSelect:{autofocus:".vxe-input--inner",renderEdit:defaultSelectEditRender,renderDefault:defaultSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(r,o){var e=o["column"];const{options:l,optionProps:i,optionGroups:a,optionGroupProps:u}=r;return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getDefaultComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,o,n,{options:l,optionProps:i,optionGroups:a,optionGroupProps:u})),getFilterOns(r,o,e)))})},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},VxeRadio:{autofocus:".vxe-radio--input"},VxeRadioGroup:{autofocus:".vxe-radio--input"},VxeCheckbox:{autofocus:".vxe-checkbox--input"},VxeCheckboxGroup:{autofocus:".vxe-checkbox--input"},VxeSwitch:{autofocus:".vxe-switch--button",renderEdit:defaultEditRender,renderDefault:defaultEditRender},$input:{autofocus:".vxe-input--inner",renderEdit:oldEditRender,renderCell(e,t){var n,{props:r={}}=e,{row:o,column:l}=t,i=r.digits||(null==(n=getConfig().input)?void 0:n.digits)||2;let a=_xeUtils.default.get(o,l.property);if(a)switch(r.type){case"date":case"week":case"month":case"year":a=getLabelFormatDate(a,r);break;case"float":a=_xeUtils.default.toFixed(_xeUtils.default.floor(a,i),i)}return getCellLabelVNs(e,t,a)},renderDefault:oldEditRender,renderFilter:oldFilterRender,defaultFilterMethod:handleFilterMethod},$textarea:{autofocus:".vxe-textarea--inner"},$button:{renderDefault:oldButtonEditRender},$buttons:{renderDefault:oldButtonsEditRender},$select:{autofocus:".vxe-input--inner",renderEdit:oldSelectEditRender,renderDefault:oldSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(r,o){var e=o["column"];const{options:l,optionProps:i,optionGroups:a,optionGroupProps:u}=r;return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getOldComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,o,n,{options:l,optionProps:i,optionGroups:a,optionGroupProps:u})),getFilterOns(r,o,e)))})},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},$radio:{autofocus:".vxe-radio--input"},$checkbox:{autofocus:".vxe-checkbox--input"},$switch:{autofocus:".vxe-switch--button",renderEdit:oldEditRender,renderDefault: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");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getConfig,renderer,getI18n,log}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={transfer:!0};function getModelEvent(e){switch(e.name){case"input":case"textarea":return"input"}return"update:modelValue"}function getChangeEvent(e){switch(e.name){case"input":case"textarea":case"VxeInput":case"VxeTextarea":case"$input":case"$textarea":return"input"}return"change"}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,n){var{dateConfig:r={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),r.labelFormat||n)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+t.type))}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,n){e=e.$panel;e.changeOption({},t,n)}function getNativeAttrs(e){let{name:t,attrs:n}=e;return n="input"===t?Object.assign({type:"text"},n):n}function getInputImmediateModel(e){var{name:e,immediate:t,props:n}=e;return t||("VxeInput"===e||"$input"===e?(t=(n||{})["type"],!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,n,r){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,r,e.props,{[componentDefaultModelProp]:n})}function getCellEditFilterProps(e,t,n,r){return _xeUtils.default.assign({},defaultCompProps,r,e.props,{[componentDefaultModelProp]:n})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,n){e=e.placeholder;return[(0,_vue.h)("span",{class:"vxe-cell--label"},e&&(0,_utils.isEmptyValue)(n)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(e),1))]:(0,_utils.formatText)(n,1))]}function getElementOns(e,n,t,r){const o=e["events"],l=getModelEvent(e),i=getChangeEvent(e),a=i===l,u={};return o&&_xeUtils.default.objectEach(o,(t,e)=>{u[(0,_vn.getOnName)(e)]=function(...e){t(n,...e)}}),t&&(u[(0,_vn.getOnName)(l)]=function(e){t(e),a&&r&&r(e),o&&o[l]&&o[l](n,e)}),!a&&r&&(u[(0,_vn.getOnName)(i)]=function(...e){r(...e),o&&o[i]&&o[i](n,...e)}),u}function getComponentOns(e,n,t,r){const o=e["events"],l=getModelEvent(e),i=getChangeEvent(e),a={};return _xeUtils.default.objectEach(o,(t,e)=>{a[(0,_vn.getOnName)(e)]=function(...e){"development"!==process.env.NODE_ENV||_xeUtils.default.isFunction(t)||log.err("vxe.error.errFunc",[t]),t(n,...e)}}),t&&(a[(0,_vn.getOnName)(l)]=function(e){t(e),o&&o[l]&&o[l](n,e)}),r&&(a[(0,_vn.getOnName)(i)]=function(...e){r(...e),o&&o[i]&&o[i](n,...e)}),a}function getEditOns(e,t){const{$table:n,row:r,column:o}=t,l=e["name"],i=o["model"],a=isImmediateCell(e,t);return getComponentOns(e,t,e=>{a?(0,_util.setCellValue)(r,o,e):(i.update=!0,i.value=e)},e=>{!a&&["VxeInput","VxeTextarea","$input","$textarea"].includes(l)?(e=e.value,i.update=!0,i.value=e,n.updateStatus(t,e)):n.updateStatus(t)})}function getFilterOns(e,t,n){return getComponentOns(e,t,e=>{n.data=e},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(n.data),n)})}function getNativeEditOns(t,n){const{$table:r,row:o,column:l}=n,i=l["model"];return getElementOns(t,n,e=>{e=e.target.value;isImmediateCell(t,n)?(0,_util.setCellValue)(o,l,e):(i.update=!0,i.value=e)},e=>{e=e.target.value;r.updateStatus(n,e)})}function getNativeFilterOns(e,t,n){return getElementOns(e,t,e=>{n.data=e.target.value},()=>{handleConfirmFilter(t,!_xeUtils.default.eqNull(n.data),n)})}function nativeEditRender(e,t){var{row:n,column:r}=t,o=e["name"],n=isImmediateCell(e,t)?(0,_util.getCellValue)(n,r):r.model.value;return[(0,_vue.h)(o,Object.assign(Object.assign(Object.assign({class:"vxe-default-"+o},getNativeAttrs(e)),{value:n}),getNativeEditOns(e,t)))]}function defaultCellRender(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:n,column:r}=t,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldEditRender(e,t){var{row:n,column:r}=t,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n)),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(n,r,o){var{optionGroups:e,optionGroupProps:t={}}=n;const l=t.options||"options",i=t.label||"label";return e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[i]},o(e[l],n,r)))}function renderNativeOptions(e,t,n){var{optionProps:r={}}=t,{row:o,column:l}=n;const i=r.label||"label",a=r.value||"value",u=r.disabled||"disabled",s=isImmediateCell(t,n)?(0,_util.getCellValue)(o,l):l.model.value;return e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[a],disabled:e[u],selected:e[a]==s},e[i]))}function nativeFilterRender(n,r){var e=r["column"];const o=n["name"],l=getNativeAttrs(n);return e.filters.map((e,t)=>(0,_vue.h)(o,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+o},l),{value:e.data}),getNativeFilterOns(n,r,e))))}function defaultFilterRender(r,o){var e=o["column"];return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getDefaultComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,r,n)),getFilterOns(r,o,e)))})}function oldFilterRender(r,o){var e=o["column"];return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getOldComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,r,n)),getFilterOns(r,o,e)))})}function handleFilterMethod({option:e,row:t,column:n}){e=e.data;return _xeUtils.default.get(t,n.property)==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:n,column:r}=t,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a}=e,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:n,column:r}=t,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a}=e,n=(0,_util.getCellValue)(n,r);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,n,{options:o,optionProps:l,optionGroups:i,optionGroupProps:a})),getEditOns(e,t)))]}function getSelectCellValue(e,{row:t,column:n}){const{props:r={},options:o,optionGroups:l,optionProps:i={},optionGroupProps:a={}}=e;e=_xeUtils.default.get(t,n.property);let u;const s=i.label||"label",d=i.value||"value";return(0,_utils.isEmptyValue)(e)?"":_xeUtils.default.map(r.multiple?e:[e],l?t=>{var n=a.options||"options";for(let e=0;e<l.length&&!(u=_xeUtils.default.find(l[e][n],e=>e[d]==t));e++);return u?u[s]:t}:t=>(u=_xeUtils.default.find(o,e=>e[d]==t))?u[s]:t).join(", ")}function handleExportSelectMethod(e){var{row:t,column:n,options:r}=e;return r.original?(0,_util.getCellValue)(t,n):getSelectCellValue(n.editRender||n.cellRender,e)}renderer.mixin({input:{autofocus:"input",renderEdit:nativeEditRender,renderDefault:nativeEditRender,renderFilter:nativeFilterRender,defaultFilterMethod:handleFilterMethod},textarea:{autofocus:"textarea",renderEdit:nativeEditRender},select:{renderEdit:nativeSelectEditRender,renderDefault:nativeSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(n,r){var e=r["column"];return e.filters.map((e,t)=>(0,_vue.h)("select",Object.assign(Object.assign({key:t,class:"vxe-default-select"},getNativeAttrs(n)),getNativeFilterOns(n,r,e)),n.optionGroups?renderNativeOptgroups(n,r,renderNativeOptions):renderNativeOptions(n.options,n,r)))},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},VxeInput:{autofocus:".vxe-input--inner",renderEdit:defaultEditRender,renderCell(e,t){var n,{props:r={}}=e,{row:o,column:l}=t,i=r.digits||(null==(n=getConfig().input)?void 0:n.digits)||2;let a=_xeUtils.default.get(o,l.property);if(a)switch(r.type){case"date":case"week":case"month":case"year":a=getLabelFormatDate(a,r);break;case"float":a=_xeUtils.default.toFixed(_xeUtils.default.floor(a,i),i)}return getCellLabelVNs(e,t,a)},renderDefault:defaultEditRender,renderFilter:defaultFilterRender,defaultFilterMethod:handleFilterMethod},VxeTextarea:{autofocus:".vxe-textarea--inner"},VxeButton:{renderDefault:defaultCellRender},VxeButtonGroup:{renderDefault:defaultCellRender},VxeSelect:{autofocus:".vxe-input--inner",renderEdit:defaultSelectEditRender,renderDefault:defaultSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(r,o){var e=o["column"];const{options:l,optionProps:i,optionGroups:a,optionGroupProps:u}=r;return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getDefaultComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,o,n,{options:l,optionProps:i,optionGroups:a,optionGroupProps:u})),getFilterOns(r,o,e)))})},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},VxeRadio:{autofocus:".vxe-radio--input"},VxeRadioGroup:{autofocus:".vxe-radio--input"},VxeCheckbox:{autofocus:".vxe-checkbox--input"},VxeCheckboxGroup:{autofocus:".vxe-checkbox--input"},VxeSwitch:{autofocus:".vxe-switch--button",renderEdit:defaultEditRender,renderDefault:defaultEditRender},$input:{autofocus:".vxe-input--inner",renderEdit:oldEditRender,renderCell(e,t){var n,{props:r={}}=e,{row:o,column:l}=t,i=r.digits||(null==(n=getConfig().input)?void 0:n.digits)||2;let a=_xeUtils.default.get(o,l.property);if(a)switch(r.type){case"date":case"week":case"month":case"year":a=getLabelFormatDate(a,r);break;case"float":a=_xeUtils.default.toFixed(_xeUtils.default.floor(a,i),i)}return getCellLabelVNs(e,t,a)},renderDefault:oldEditRender,renderFilter:oldFilterRender,defaultFilterMethod:handleFilterMethod},$textarea:{autofocus:".vxe-textarea--inner"},$button:{renderDefault:oldButtonEditRender},$buttons:{renderDefault:oldButtonsEditRender},$select:{autofocus:".vxe-input--inner",renderEdit:oldSelectEditRender,renderDefault:oldSelectEditRender,renderCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderFilter(r,o){var e=o["column"];const{options:l,optionProps:i,optionGroups:a,optionGroupProps:u}=r;return e.filters.map((e,t)=>{var n=e.data;return(0,_vue.h)(getOldComponent(r),Object.assign(Object.assign({key:t},getCellEditFilterProps(r,o,n,{options:l,optionProps:i,optionGroups:a,optionGroupProps:u})),getFilterOns(r,o,e)))})},defaultFilterMethod:handleFilterMethod,exportMethod:handleExportSelectMethod},$radio:{autofocus:".vxe-radio--input"},$checkbox:{autofocus:".vxe-checkbox--input"},$switch:{autofocus:".vxe-switch--button",renderEdit:oldEditRender,renderDefault:oldEditRender}});
|
package/lib/table/src/body.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _vue = require("vue");
|
|
8
8
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
9
|
-
var
|
|
9
|
+
var _ui = require("../../ui");
|
|
10
10
|
var _util = require("./util");
|
|
11
11
|
var _dom = require("../../ui/src/dom");
|
|
12
12
|
var _utils = require("../../ui/src/utils");
|
|
@@ -15,7 +15,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
15
15
|
const {
|
|
16
16
|
getI18n,
|
|
17
17
|
renderer
|
|
18
|
-
} =
|
|
18
|
+
} = _ui.VxeUI;
|
|
19
19
|
const renderType = 'body';
|
|
20
20
|
const lineOffsetSizes = {
|
|
21
21
|
mini: 3,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vxePcUi=require("vxe-pc-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}=_vxePcUi.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 ae=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:w,props:se,context:y,reactData:ie,internalData:ne}=ae,{refTableHeader:_,refTableBody:b,refTableFooter:q,refTableLeftBody:T,refTableRightBody:S,refValidTooltip:j}=ae.getRefMaps(),{computeEditOpts:ce,computeMouseOpts:B,computeSYOpts:ue,computeEmptyOpts:Y,computeKeyboardOpts:N,computeTooltipOpts:he,computeRadioOpts:e,computeExpandOpts:P,computeTreeOpts:d,computeCheckboxOpts:de,computeValidOpts:xe,computeRowOpts:ve,computeColumnOpts:ge}=ae.getComputeMaps(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),H=(0,_vue.ref)(),$=(0,_vue.ref)(),M=(0,_vue.ref)(),v=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},pe=()=>{var e=se["delayHover"],{lastScrollTime:l,_isResize:t}=ie;return!!(t||l&&Date.now()<l+e)},p=(e,l)=>{let t=1;if(e){var o=d.value,r=e[o.children||o.childrenField];if(r&&ae.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=p(r[e],l)}return t},me=e=>{var{row:l,column:t}=e,o=ne["afterFullData"],r=se["treeConfig"],a=d.value,{slots:t,treeNode:s}=t,i=ne["fullAllDataRowIdData"],i=i[(0,_util.getRowid)(ae,l)];let n=0,c=0,u=[];return i&&(n=i.level,c=i._index,u=i.items),t&&t.line?ae.callSlot(t.line,e):(i=ae.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=p(l[t-1],e)),ie.rowHeight*o-(t?1:12-v())})(e,u,c)}px`,left:n*a.indent+(n?2-v():0)+16+"px"}})])]:[])},V=(e,l,t,o,r,a,s,i,n,c,U,q)=>{var{columnKey:j,height:u,showOverflow:d,cellClassName:B,cellStyle:v,align:p,spanMethod:h,mouseConfig:Y,editConfig:N,editRules:x,tooltipConfig:W}=se,{tableData:F,overflowX:g,scrollYLoad:P,currentColumn:V,mergeList:m,editStore:f,isAllOverflow:A,validErrorMaps:w}=ie,X=ne["afterFullData"],y=xe.value,K=de.value,_=ce.value,b=he.value,T=ve.value,S=ue.value,z=ge.value,{type:G,cellRender:J,editRender:C,align:O,showOverflow:L,className:Q,treeNode:Z,slots:ee}=n,f=f["actived"],S=S["rHeight"],T=T["height"],R=C||J,R=R?renderer.get(R.name):null,le=R?R.cellClassName:"",R=R?R.cellStyle:"";const H=b.showAll;var b=ae.getColumnIndex(n),te=ae.getVTColumnIndex(n),oe=(0,_utils.isEnableConf)(C);let $=t?n.fixed!==t:n.fixed&&g;g=_xeUtils.default.isUndefined(L)||_xeUtils.default.isNull(L)?d:L;let M="ellipsis"===g;const E="title"===g,I=!0===g||"tooltip"===g;let D=E||I||M,re;L={},g=O||p,O=w[l+":"+n.id],p=x&&y.showMessage&&("default"===y.message?u||1<F.length:"inline"===y.message),w={colid:n.id};const k={$table:ae,$grid:ae.xegrid,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:i,column:n,columnIndex:b,$columnIndex:c,_columnIndex:te,fixed:t,type:renderType,isHidden:$,level:o,visibleData:X,data:F,items:q};if(P&&!D&&(M=D=!0),(E||I||H||W)&&(L.onMouseenter=e=>{pe()||(E?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||H)&&ae.triggerBodyTooltipEvent(e,k),ae.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(I||H||W)&&(L.onMouseleave=e=>{pe()||((I||H)&&ae.handleTargetLeaveEvent(e),ae.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(K.range||Y)&&(L.onMousedown=e=>{ae.triggerCellMousedownEvent(e,k)}),L.onClick=e=>{ae.triggerCellClickEvent(e,k)},L.onDblclick=e=>{ae.triggerCellDblclickEvent(e,k)},m.length){x=(0,_util.mergeBodyMethod)(m,i,te);if(x){var{rowspan:u,colspan:e}=x;if(!u||!e)return null;1<u&&(w.rowspan=u),1<e&&(w.colspan=e)}}else if(h){var{rowspan:l=1,colspan:a=1}=h(k)||{};if(!l||!a)return null;1<l&&(w.rowspan=l),1<a&&(w.colspan=a)}!($=$&&m&&(1<w.colspan||1<w.rowspan)?!1:$)&&N&&(C||J)&&(_.showStatus||_.showUpdateStatus)&&(re=ae.isUpdateByRow(r,n.field));s=[];return $&&d&&A?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":E,"c--tooltip":I,"c--ellipsis":M}],style:{maxHeight:D&&(S||T)?`${S||T}px`:""}})):(s.push(...me(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":E,"c--tooltip":I,"c--ellipsis":M}],style:{maxHeight:D&&(S||T)?`${S||T}px`:""},title:E?ae.getCellLabel(r,n):null},n.renderCell(k))),p&&O&&(b=O.rule,t=ee?ee.valid:null,o=Object.assign(Object.assign({},k),O),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-hint",(0,_dom.getPropClass)(y.className,o)],style:b&&b.maxWidth?{width:b.maxWidth+"px"}:null},t?ae.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},O.content)])))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",n.id,{["col--"+g]:g,["col--"+G]:G,"col--last":c===U.length-1,"col--tree-node":Z,"col--edit":oe,"col--ellipsis":D,"fixed--hidden":$,"col--dirty":re,"col--active":N&&oe&&f.row===r&&(f.column===n||"row"===_.mode),"col--valid-error":!!O,"col--current":V===n},(0,_dom.getPropClass)(le,k),(0,_dom.getPropClass)(Q,k),(0,_dom.getPropClass)(B,k)],key:j||z.useKey?n.id:c},w),{style:Object.assign({height:D&&(S||T)?`${S||T}px`:""},_xeUtils.default.isFunction(R)?R(k):R,_xeUtils.default.isFunction(v)?v(k):v)}),L),s)},F=(x,g,m)=>{const{stripe:f,rowKey:w,highlightHoverRow:y,rowClassName:_,rowStyle:b,showOverflow:T,editConfig:S,treeConfig:C}=se,{hasFixedColumn:O,treeExpandedMaps:L,scrollYLoad:R,rowExpandedMaps:H,expandColumn:$,selectRadioRow:M,pendingRowMaps:E,pendingRowList:I}=ie,D=ne["fullAllDataRowIdData"],k=de.value,U=e.value,q=d.value,j=ce.value,B=ve.value,Y=q["transform"],N=q.children||q.childrenField,W=[];return g.forEach((t,o)=>{var e={};let r;r=ae.getRowIndex(t),(B.isHover||y)&&(e.onMouseenter=e=>{pe()||ae.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{pe()||ae.clearHoverRow()});const a=(0,_util.getRowid)(ae,t);var l=D[a];let s=0,i=-1,n=0;l&&(s=l.level,i=l.seq,n=l._index);var c,u,l={$table:ae,seq:i,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},d=$&&!!H[a];let v=!1,p=[],h=!1;S&&(h=ae.isInsertByRow(t)),!C||R||Y||(p=t[N],v=p&&0<p.length&&!!L[a]),W.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--row",C?"row--level-"+s:"",{"row--stripe":f&&(ae.getVTRowIndex(t)+1)%2==0,"is--new":h,"is--expand-row":d,"is--expand-tree":v,"row--new":h&&(j.showStatus||j.showInsertStatus),"row--radio":U.highlight&&ae.eqRow(M,t),"row--checked":k.highlight&&ae.isCheckedByCheckboxRow(t),"row--pending":I.length&&!!E[a]},(0,_dom.getPropClass)(_,l)],rowid:a,style:b?_xeUtils.default.isFunction(b)?b(l):b:null,key:w||B.useKey||C?a:o},e),m.map((e,l)=>V(i,a,x,s,t,r,o,n,e,l,m,g)))),d&&(l=P.value["height"],d={},c=(l&&(d.height=l+"px"),C&&(d.paddingLeft=s*q.indent+30+"px"),$)["showOverflow"],c=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?T:c,u={$table:ae,seq:i,column:$,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},W.push((0,_vue.h)("tr",Object.assign({class:"vxe-body--expanded-row",key:"expand_"+a,style:b?_xeUtils.default.isFunction(b)?b(u):b:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!O,"col--ellipsis":c},colspan:m.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":l},style:d},[$.renderData(u)])])]))),v&&W.push(...F(x,p,m))}),W};let r;const E=(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),ie.lastScrollTime=Date.now()},300))},o=e=>{var l=f["fixedType"],t=se["highlightHoverRow"],{scrollXLoad:o,scrollYLoad:r}=ie,{elemStore:a,lastScrollTop:s,lastScrollLeft:i}=ne,n=ve.value,c=_.value,u=b.value,d=q.value,v=T.value,p=S.value,h=j.value,x=C.value,c=c?c.$el:null,d=d?d.$el:null,u=u.$el,v=v?v.$el:null,p=p?p.$el:null,g=a["main-body-ySpace"],g=g?g.value:null,a=a["main-body-xSpace"],a=a?a.value:null,g=(r&&g?g:u).clientHeight,a=(o&&a?a:u).clientWidth;let m=x.scrollTop;x=u.scrollLeft,i=x!==i,s=m!==s;ne.lastScrollTop=m,ne.lastScrollLeft=x,ie.lastScrollTime=Date.now(),(n.isHover||t)&&ae.clearHoverRow(),v&&"left"===l?(m=v.scrollTop,E(0,m,u,p)):p&&"right"===l?(m=p.scrollTop,E(0,m,u,v)):(i&&(c&&(c.scrollLeft=u.scrollLeft),d)&&(d.scrollLeft=u.scrollLeft),(v||p)&&(ae.checkScrolling(),s)&&E(0,m,v,p)),o&&i&&ae.triggerScrollXEvent(e),r&&s&&ae.triggerScrollYEvent(e),i&&h&&h.reactData.visible&&h.updatePlacement(),ae.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:m,scrollLeft:x,scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,bodyHeight:g,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=ne["elemStore"],{scrollXLoad:t,scrollYLoad:o}=ie,n=b.value,c=T.value,u=S.value;const d=c?c.$el:null,v=u?u.$el:null,p=n.$el;c=l["main-body-ySpace"],u=c?c.value:null,n=l["main-body-xSpace"],c=n?n.value:null;const h=(o&&u?u:p).clientHeight,x=(t&&c?c:p).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 g=()=>{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),p),o=o+D*(a?-1:1),p.scrollTop=o,d&&(d.scrollTop=o),v&&(v.scrollTop=o),(a?o<t-l:0<=o)&&(m=setTimeout(g,10)),ae.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:p.scrollTop,scrollLeft:p.scrollLeft,scrollHeight:p.scrollHeight,scrollWidth:p.scrollWidth,bodyHeight:h,bodyWidth:x,isX:s,isY:i},r))};g()},W=e=>{var{deltaY:l,deltaX:t}=e,o=se["highlightHoverRow"],r=ie["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=ne,i=ve.value,n=b.value,c=C.value,n=n.$el,u=l<0;(u?c.scrollTop<=0:c.scrollTop>=c.scrollHeight-c.clientHeight)||(c=c.scrollTop+l,t=(n=n.scrollLeft+t)!==s,(s=c!==a)&&(e.preventDefault(),ne.lastScrollTop=c,ne.lastScrollLeft=n,ie.lastScrollTime=Date.now(),(i.isHover||o)&&ae.clearHoverRow(),h(e,u,l,t,s),r)&&ae.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f["fixedType"],l=ne["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"]=M,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=ne["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}=se,{tableData:i,mergeList:n,scrollYLoad:c,isAllOverflow:u}=ie,d=ne["visibleColumn"],v=y["slots"],p=ue.value,h=Y.value,x=N.value,g=B.value;l&&(t=ie.expandColumn||!(c||r&&u)||n.length||a||o&&x.isMerge?d:e);let m;c=v?v.empty:null;return m=c?ae.callSlot(c,{$table:ae,$grid:ae.xegrid}):(u=(r=h.name?renderer.get(h.name):null)?r.renderTableEmptyView||r.renderEmpty:null)?(0,_vn.getSlotVNs)(u(h,{$table:ae})):se.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"===p.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},F(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&g.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},g.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){ae.triggerCellExtendMousedownEvent(e,{$table:ae,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:M},[(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 ae=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:w,props:se,context:y,reactData:ie,internalData:ne}=ae,{refTableHeader:_,refTableBody:b,refTableFooter:q,refTableLeftBody:T,refTableRightBody:S,refValidTooltip:j}=ae.getRefMaps(),{computeEditOpts:ue,computeMouseOpts:B,computeSYOpts:ce,computeEmptyOpts:Y,computeKeyboardOpts:N,computeTooltipOpts:he,computeRadioOpts:e,computeExpandOpts:V,computeTreeOpts:d,computeCheckboxOpts:de,computeValidOpts:ge,computeRowOpts:ve,computeColumnOpts:xe}=ae.getComputeMaps(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),H=(0,_vue.ref)(),$=(0,_vue.ref)(),M=(0,_vue.ref)(),v=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},pe=()=>{var e=se["delayHover"],{lastScrollTime:l,_isResize:t}=ie;return!!(t||l&&Date.now()<l+e)},p=(e,l)=>{let t=1;if(e){var o=d.value,r=e[o.children||o.childrenField];if(r&&ae.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=p(r[e],l)}return t},me=e=>{var{row:l,column:t}=e,o=ne["afterFullData"],r=se["treeConfig"],a=d.value,{slots:t,treeNode:s}=t,i=ne["fullAllDataRowIdData"],i=i[(0,_util.getRowid)(ae,l)];let n=0,u=0,c=[];return i&&(n=i.level,u=i._index,c=i.items),t&&t.line?ae.callSlot(t.line,e):(i=ae.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=p(l[t-1],e)),ie.rowHeight*o-(t?1:12-v())})(e,c,u)}px`,left:n*a.indent+(n?2-v():0)+16+"px"}})])]:[])},A=(e,l,t,o,r,a,s,i,n,u,U,q)=>{var{columnKey:j,height:c,showOverflow:d,cellClassName:B,cellStyle:v,align:p,spanMethod:h,mouseConfig:Y,editConfig:N,editRules:g,tooltipConfig:W}=se,{tableData:F,overflowX:x,scrollYLoad:V,currentColumn:A,mergeList:m,editStore:f,isAllOverflow:P,validErrorMaps:w}=ie,X=ne["afterFullData"],y=ge.value,K=de.value,_=ue.value,b=he.value,T=ve.value,S=ce.value,z=xe.value,{type:G,cellRender:J,editRender:C,align:O,showOverflow:L,className:Q,treeNode:Z,slots:ee}=n,f=f["actived"],S=S["rHeight"],T=T["height"],R=C||J,R=R?renderer.get(R.name):null,le=R?R.cellClassName:"",R=R?R.cellStyle:"";const H=b.showAll;var b=ae.getColumnIndex(n),te=ae.getVTColumnIndex(n),oe=(0,_utils.isEnableConf)(C);let $=t?n.fixed!==t:n.fixed&&x;x=_xeUtils.default.isUndefined(L)||_xeUtils.default.isNull(L)?d:L;let M="ellipsis"===x;const E="title"===x,I=!0===x||"tooltip"===x;let D=E||I||M,re;L={},x=O||p,O=w[l+":"+n.id],p=g&&y.showMessage&&("default"===y.message?c||1<F.length:"inline"===y.message),w={colid:n.id};const k={$table:ae,$grid:ae.xegrid,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:i,column:n,columnIndex:b,$columnIndex:u,_columnIndex:te,fixed:t,type:renderType,isHidden:$,level:o,visibleData:X,data:F,items:q};if(V&&!D&&(M=D=!0),(E||I||H||W)&&(L.onMouseenter=e=>{pe()||(E?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||H)&&ae.triggerBodyTooltipEvent(e,k),ae.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(I||H||W)&&(L.onMouseleave=e=>{pe()||((I||H)&&ae.handleTargetLeaveEvent(e),ae.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(K.range||Y)&&(L.onMousedown=e=>{ae.triggerCellMousedownEvent(e,k)}),L.onClick=e=>{ae.triggerCellClickEvent(e,k)},L.onDblclick=e=>{ae.triggerCellDblclickEvent(e,k)},m.length){g=(0,_util.mergeBodyMethod)(m,i,te);if(g){var{rowspan:c,colspan:e}=g;if(!c||!e)return null;1<c&&(w.rowspan=c),1<e&&(w.colspan=e)}}else if(h){var{rowspan:l=1,colspan:a=1}=h(k)||{};if(!l||!a)return null;1<l&&(w.rowspan=l),1<a&&(w.colspan=a)}!($=$&&m&&(1<w.colspan||1<w.rowspan)?!1:$)&&N&&(C||J)&&(_.showStatus||_.showUpdateStatus)&&(re=ae.isUpdateByRow(r,n.field));s=[];return $&&d&&P?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":E,"c--tooltip":I,"c--ellipsis":M}],style:{maxHeight:D&&(S||T)?`${S||T}px`:""}})):(s.push(...me(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":E,"c--tooltip":I,"c--ellipsis":M}],style:{maxHeight:D&&(S||T)?`${S||T}px`:""},title:E?ae.getCellLabel(r,n):null},n.renderCell(k))),p&&O&&(b=O.rule,t=ee?ee.valid:null,o=Object.assign(Object.assign({},k),O),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-hint",(0,_dom.getPropClass)(y.className,o)],style:b&&b.maxWidth?{width:b.maxWidth+"px"}:null},t?ae.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},O.content)])))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",n.id,{["col--"+x]:x,["col--"+G]:G,"col--last":u===U.length-1,"col--tree-node":Z,"col--edit":oe,"col--ellipsis":D,"fixed--hidden":$,"col--dirty":re,"col--active":N&&oe&&f.row===r&&(f.column===n||"row"===_.mode),"col--valid-error":!!O,"col--current":A===n},(0,_dom.getPropClass)(le,k),(0,_dom.getPropClass)(Q,k),(0,_dom.getPropClass)(B,k)],key:j||z.useKey?n.id:u},w),{style:Object.assign({height:D&&(S||T)?`${S||T}px`:""},_xeUtils.default.isFunction(R)?R(k):R,_xeUtils.default.isFunction(v)?v(k):v)}),L),s)},F=(g,x,m)=>{const{stripe:f,rowKey:w,highlightHoverRow:y,rowClassName:_,rowStyle:b,showOverflow:T,editConfig:S,treeConfig:C}=se,{hasFixedColumn:O,treeExpandedMaps:L,scrollYLoad:R,rowExpandedMaps:H,expandColumn:$,selectRadioRow:M,pendingRowMaps:E,pendingRowList:I}=ie,D=ne["fullAllDataRowIdData"],k=de.value,U=e.value,q=d.value,j=ue.value,B=ve.value,Y=q["transform"],N=q.children||q.childrenField,W=[];return x.forEach((t,o)=>{var e={};let r;r=ae.getRowIndex(t),(B.isHover||y)&&(e.onMouseenter=e=>{pe()||ae.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{pe()||ae.clearHoverRow()});const a=(0,_util.getRowid)(ae,t);var l=D[a];let s=0,i=-1,n=0;l&&(s=l.level,i=l.seq,n=l._index);var u,c,l={$table:ae,seq:i,rowid:a,fixed:g,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},d=$&&!!H[a];let v=!1,p=[],h=!1;S&&(h=ae.isInsertByRow(t)),!C||R||Y||(p=t[N],v=p&&0<p.length&&!!L[a]),W.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--row",C?"row--level-"+s:"",{"row--stripe":f&&(ae.getVTRowIndex(t)+1)%2==0,"is--new":h,"is--expand-row":d,"is--expand-tree":v,"row--new":h&&(j.showStatus||j.showInsertStatus),"row--radio":U.highlight&&ae.eqRow(M,t),"row--checked":k.highlight&&ae.isCheckedByCheckboxRow(t),"row--pending":I.length&&!!E[a]},(0,_dom.getPropClass)(_,l)],rowid:a,style:b?_xeUtils.default.isFunction(b)?b(l):b:null,key:w||B.useKey||C?a:o},e),m.map((e,l)=>A(i,a,g,s,t,r,o,n,e,l,m,x)))),d&&(l=V.value["height"],d={},u=(l&&(d.height=l+"px"),C&&(d.paddingLeft=s*q.indent+30+"px"),$)["showOverflow"],u=_xeUtils.default.isUndefined(u)||_xeUtils.default.isNull(u)?T:u,c={$table:ae,seq:i,column:$,fixed:g,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},W.push((0,_vue.h)("tr",Object.assign({class:"vxe-body--expanded-row",key:"expand_"+a,style:b?_xeUtils.default.isFunction(b)?b(c):b:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":g&&!O,"col--ellipsis":u},colspan:m.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":l},style:d},[$.renderData(c)])])]))),v&&W.push(...F(g,p,m))}),W};let r;const E=(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),ie.lastScrollTime=Date.now()},300))},o=e=>{var l=f["fixedType"],t=se["highlightHoverRow"],{scrollXLoad:o,scrollYLoad:r}=ie,{elemStore:a,lastScrollTop:s,lastScrollLeft:i}=ne,n=ve.value,u=_.value,c=b.value,d=q.value,v=T.value,p=S.value,h=j.value,g=C.value,u=u?u.$el:null,d=d?d.$el:null,c=c.$el,v=v?v.$el:null,p=p?p.$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;ne.lastScrollTop=m,ne.lastScrollLeft=g,ie.lastScrollTime=Date.now(),(n.isHover||t)&&ae.clearHoverRow(),v&&"left"===l?(m=v.scrollTop,E(0,m,c,p)):p&&"right"===l?(m=p.scrollTop,E(0,m,c,v)):(i&&(u&&(u.scrollLeft=c.scrollLeft),d)&&(d.scrollLeft=c.scrollLeft),(v||p)&&(ae.checkScrolling(),s)&&E(0,m,v,p)),o&&i&&ae.triggerScrollXEvent(e),r&&s&&ae.triggerScrollYEvent(e),i&&h&&h.reactData.visible&&h.updatePlacement(),ae.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=ne["elemStore"],{scrollXLoad:t,scrollYLoad:o}=ie,n=b.value,u=T.value,c=S.value;const d=u?u.$el:null,v=c?c.$el:null,p=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:p).clientHeight,g=(t&&u?u:p).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),p),o=o+D*(a?-1:1),p.scrollTop=o,d&&(d.scrollTop=o),v&&(v.scrollTop=o),(a?o<t-l:0<=o)&&(m=setTimeout(x,10)),ae.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:p.scrollTop,scrollLeft:p.scrollLeft,scrollHeight:p.scrollHeight,scrollWidth:p.scrollWidth,bodyHeight:h,bodyWidth:g,isX:s,isY:i},r))};x()},W=e=>{var{deltaY:l,deltaX:t}=e,o=se["highlightHoverRow"],r=ie["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=ne,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(),ne.lastScrollTop=u,ne.lastScrollLeft=n,ie.lastScrollTime=Date.now(),(i.isHover||o)&&ae.clearHoverRow(),h(e,c,l,t,s),r)&&ae.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f["fixedType"],l=ne["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"]=M,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=ne["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}=se,{tableData:i,mergeList:n,scrollYLoad:u,isAllOverflow:c}=ie,d=ne["visibleColumn"],v=y["slots"],p=ce.value,h=Y.value,g=N.value,x=B.value;l&&(t=ie.expandColumn||!(u||r&&c)||n.length||a||o&&g.isMerge?d:e);let m;u=v?v.empty:null;return m=u?ae.callSlot(u,{$table:ae,$grid:ae.xegrid}):(c=(r=h.name?renderer.get(h.name):null)?r.renderTableEmptyView||r.renderEmpty:null)?(0,_vn.getSlotVNs)(c(h,{$table:ae})):se.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"===p.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},F(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){ae.triggerCellExtendMousedownEvent(e,{$table:ae,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:M},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},m)])])}}});
|
package/lib/table/src/cell.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = exports.Cell = void 0;
|
|
7
7
|
var _vue = require("vue");
|
|
8
8
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
9
|
-
var
|
|
9
|
+
var _ui = require("../../ui");
|
|
10
10
|
var _utils = require("../../ui/src/utils");
|
|
11
11
|
var _dom = require("../../ui/src/dom");
|
|
12
12
|
var _util = require("./util");
|
|
@@ -16,7 +16,7 @@ const {
|
|
|
16
16
|
getI18n,
|
|
17
17
|
getIcon,
|
|
18
18
|
renderer
|
|
19
|
-
} =
|
|
19
|
+
} = _ui.VxeUI;
|
|
20
20
|
function renderTitlePrefixIcon(params) {
|
|
21
21
|
const {
|
|
22
22
|
$table,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vxePcUi=require("vxe-pc-ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,getIcon,renderer}=_vxePcUi.VxeUI;function renderTitlePrefixIcon(l){const{$table:r,column:e}=l,t=e.titlePrefix||e.titleHelp;return t?[(0,_vue.h)("i",{class:["vxe-cell-title-prefix-icon",t.icon||getIcon().TABLE_TITLE_PREFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}})]:[]}function renderTitleSuffixIcon(l){const{$table:r,column:e}=l,t=e.titleSuffix;return t?[(0,_vue.h)("i",{class:["vxe-cell-title-suffix-icon",t.icon||getIcon().TABLE_TITLE_SUFFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}})]:[]}function renderTitleContent(l,e){const{$table:r,column:t}=l,{props:n,reactData:a}=r;var o=r.getComputeMaps()["computeTooltipOpts"],d=n["showHeaderOverflow"],{type:i,showHeaderOverflow:c}=t;const s=o.value.showAll;o=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?d:c;const u="title"===o,C=!0===o||"tooltip"===o;d={};return(u||C||s)&&(d.onMouseenter=e=>{a._isResize||(u?(0,_dom.updateCellTitle)(e.currentTarget,t):(C||s)&&r.triggerHeaderTooltipEvent(e,l))}),(C||s)&&(d.onMouseleave=e=>{a._isResize||(C||s)&&r.handleTargetLeaveEvent(e)}),["html"===i&&_xeUtils.default.isString(e)?(0,_vue.h)("span",Object.assign({class:"vxe-cell--title",innerHTML:e},d)):(0,_vue.h)("span",Object.assign({class:"vxe-cell--title"},d),(0,_vn.getSlotVNs)(e))]}function getFooterContent(e){var{$table:l,column:r,_columnIndex:t,items:n,row:a}=e,{slots:o,editRender:d,cellRender:i}=r,d=d||i,i=o?o.footer:null;if(i)return l.callSlot(i,e);if(d){o=renderer.get(d.name);if(o&&o.renderFooter)return(0,_vn.getSlotVNs)(o.renderFooter(d,e))}return _xeUtils.default.isArray(n)?[(0,_utils.formatText)(n[t],1)]:[(0,_utils.formatText)(_xeUtils.default.get(a,r.field),1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}const Cell=exports.Cell={createColumn(e,l){var{type:r,sortable:t,filters:n,editRender:a,treeNode:o}=l,d=e["props"],i=d["editConfig"],{computeEditOpts:d,computeCheckboxOpts:c}=e.getComputeMaps(),s=c.value,u=d.value,C={renderHeader:Cell.renderDefaultHeader,renderCell:o?Cell.renderTreeCell:Cell.renderDefaultCell,renderFooter:Cell.renderDefaultFooter};switch(r){case"seq":C.renderHeader=Cell.renderSeqHeader,C.renderCell=o?Cell.renderTreeIndexCell:Cell.renderSeqCell;break;case"radio":C.renderHeader=Cell.renderRadioHeader,C.renderCell=o?Cell.renderTreeRadioCell:Cell.renderRadioCell;break;case"checkbox":C.renderHeader=Cell.renderCheckboxHeader,C.renderCell=s.checkField?o?Cell.renderTreeSelectionCellByProp:Cell.renderCheckboxCellByProp:o?Cell.renderTreeSelectionCell:Cell.renderCheckboxCell;break;case"expand":C.renderCell=Cell.renderExpandCell,C.renderData=Cell.renderExpandData;break;case"html":C.renderCell=o?Cell.renderTreeHTMLCell:Cell.renderHTMLCell,n&&t?C.renderHeader=Cell.renderSortAndFilterHeader:t?C.renderHeader=Cell.renderSortHeader:n&&(C.renderHeader=Cell.renderFilterHeader);break;default:i&&a?(C.renderHeader=Cell.renderEditHeader,C.renderCell="cell"===u.mode?o?Cell.renderTreeCellEdit:Cell.renderCellEdit:o?Cell.renderTreeRowEdit:Cell.renderRowEdit):n&&t?C.renderHeader=Cell.renderSortAndFilterHeader:t?C.renderHeader=Cell.renderSortHeader:n&&(C.renderHeader=Cell.renderFilterHeader)}return(0,_util.createColumn)(e,l,C)},renderHeaderTitle(e){var{$table:l,column:r}=e,{slots:t,editRender:n,cellRender:a}=r,n=n||a,a=t?t.header:null;if(a)return renderTitleContent(e,l.callSlot(a,e));if(n){t=renderer.get(n.name);if(t&&t.renderHeader)return renderTitleContent(e,(0,_vn.getSlotVNs)(t.renderHeader(n,e)))}return renderTitleContent(e,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e){return renderTitlePrefixIcon(e).concat(Cell.renderHeaderTitle(e)).concat(renderTitleSuffixIcon(e))},renderDefaultCell(e){var{$table:l,row:r,column:t}=e,{slots:n,editRender:a,cellRender:o}=t,o=a||o,n=n?n.default:null;if(n)return l.callSlot(n,e);if(o){var n=a?"renderCell":"renderDefault",d=renderer.get(o.name),d=d?d[n]:null;if(d)return(0,_vn.getSlotVNs)(d(o,Object.assign({$type:a?"edit":"cell"},e)))}n=l.getCellLabel(r,t),d=a?a.placeholder:"";return[(0,_vue.h)("span",{class:"vxe-cell--label"},a&&(0,_utils.eqEmptyValue)(n)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(d),1))]:(0,_utils.formatText)(n,1))]},renderTreeCell(e){return Cell.renderTreeIcon(e,Cell.renderDefaultCell(e))},renderDefaultFooter(e){return[(0,_vue.h)("span",{class:"vxe-cell--item"},getFooterContent(e))]},renderTreeIcon(l,e){const{$table:r,isHidden:t}=l;var n=r["reactData"],a=r.getComputeMaps()["computeTreeOpts"],{treeExpandedMaps:n,treeExpandLazyLoadedMaps:o}=n,a=a.value,{row:d,column:i,level:c}=l,i=i["slots"],{indent:s,lazy:u,trigger:C,iconLoaded:v,showIcon:p,iconOpen:g,iconClose:_}=a,h=a.children||a.childrenField,a=a.hasChild||a.hasChildField,h=d[h],i=i?i.icon:null;let x=!1,E=!1,b=!1;var T={};return i?r.callSlot(i,l):(t||(i=(0,_util.getRowid)(r,d),E=!!n[i],u&&(b=!!o[i],x=d[a])),C&&"default"!==C||(T.onClick=e=>{e.stopPropagation(),r.triggerTreeExpandEvent(e,l)}),[(0,_vue.h)("div",{class:["vxe-cell--tree-node",{"is--active":E}],style:{paddingLeft:c*s+"px"}},[p&&(h&&h.length||x)?[(0,_vue.h)("div",Object.assign({class:"vxe-tree--btn-wrapper"},T),[(0,_vue.h)("i",{class:["vxe-tree--node-btn",b?v||getIcon().TABLE_TREE_LOADED:E?g||getIcon().TABLE_TREE_OPEN:_||getIcon().TABLE_TREE_CLOSE]})])]:null,(0,_vue.h)("div",{class:"vxe-tree-cell"},e)])])},renderSeqHeader(e){var{$table:l,column:r}=e,t=r["slots"],t=t?t.header:null;return renderTitleContent(e,t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1))},renderSeqCell(e){var{$table:l,column:r}=e,t=l["props"],t=t["treeConfig"],n=l.getComputeMaps()["computeSeqOpts"],n=n.value,r=r["slots"],r=r?r.default:null;return r?l.callSlot(r,e):(l=e["seq"],r=n.seqMethod,[(0,_utils.formatText)(r?r(e):t?l:(n.startIndex||0)+l,1)])},renderTreeIndexCell(e){return Cell.renderTreeIcon(e,Cell.renderSeqCell(e))},renderRadioHeader(e){var{$table:l,column:r}=e,t=r["slots"],n=t?t.header:null,t=t?t.title:null;return renderTitleContent(e,n?l.callSlot(n,e):[(0,_vue.h)("span",{class:"vxe-radio--label"},t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1))])},renderRadioCell(l){const{$table:r,column:e,isHidden:t}=l;var n=r["reactData"],a=r.getComputeMaps()["computeRadioOpts"],n=n["selectRadioRow"],o=e["slots"],{labelField:a,checkMethod:d,visibleMethod:i}=a.value,c=l["row"],s=o?o.default:null,o=o?o.radio:null,n=r.eqRow(c,n);const u=!i||i({row:c});let C=!!d,v;t||(v={onClick(e){!C&&u&&(e.stopPropagation(),r.triggerRadioRowEvent(e,l))}},d&&(C=!d({row:c})));i=Object.assign(Object.assign({},l),{checked:n,disabled:C,visible:u});return o?r.callSlot(o,i):(d=[],u&&d.push((0,_vue.h)("span",{class:["vxe-radio--icon",n?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(s||a)&&d.push((0,_vue.h)("span",{class:"vxe-radio--label"},s?r.callSlot(s,i):_xeUtils.default.get(c,a))),[(0,_vue.h)("span",Object.assign({class:["vxe-cell--radio",{"is--checked":n,"is--disabled":C}]},v),d)])},renderTreeRadioCell(e){return Cell.renderTreeIcon(e,Cell.renderRadioCell(e))},renderCheckboxHeader(e){const{$table:l,column:r,isHidden:t}=e;var n=l["reactData"],{computeIsAllCheckboxDisabled:a,computeCheckboxOpts:o}=l.getComputeMaps();const{isAllSelected:d,isIndeterminate:i}=n,c=a.value;var n=r["slots"],a=n?n.header:null,n=n?n.title:null,o=o.value,s=r.getTitle();let u;t||(u={onClick(e){c||(e.stopPropagation(),l.triggerCheckAllEvent(e,!d))}});e=Object.assign(Object.assign({},e),{checked:d,disabled:c,indeterminate:i});return a?renderTitleContent(e,l.callSlot(a,e)):(o.checkStrictly?o.showHeader:!1!==o.showHeader)?renderTitleContent(e,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":d,"is--disabled":c,"is--indeterminate":i}],title:getI18n("vxe.table.allTitle")},u),[(0,_vue.h)("span",{class:["vxe-checkbox--icon",i?getIcon().TABLE_CHECKBOX_INDETERMINATE:d?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(n||s?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,e):s)]:[]))]):renderTitleContent(e,[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,e):s)])},renderCheckboxCell(l){const{$table:r,row:e,column:t,isHidden:n}=l;var{props:a,reactData:o}=r,a=a["treeConfig"],{selectCheckboxMaps:o,treeIndeterminateMaps:d}=o,i=r.getComputeMaps()["computeCheckboxOpts"],{labelField:i,checkMethod:c,visibleMethod:s}=i.value,u=t["slots"],C=u?u.default:null,u=u?u.checkbox:null;let v=!1,p=!1;const g=!s||s({row:e});let _=!!c,h;n||(s=(0,_util.getRowid)(r,e),p=!!o[s],h={onClick(e){!_&&g&&(e.stopPropagation(),r.triggerCheckRowEvent(e,l,!p))}},c&&(_=!c({row:e})),a&&(v=!!d[s]));o=Object.assign(Object.assign({},l),{checked:p,disabled:_,visible:g,indeterminate:v});return u?r.callSlot(u,o):(c=[],g&&c.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:p?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(C||i)&&c.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},C?r.callSlot(C,o):_xeUtils.default.get(e,i))),[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":p,"is--disabled":_,"is--indeterminate":v,"is--hidden":!g}]},h),c)])},renderTreeSelectionCell(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCell(e))},renderCheckboxCellByProp(l){const{$table:r,row:e,column:t,isHidden:n}=l;var{props:a,reactData:o}=r,a=a["treeConfig"],o=o["treeIndeterminateMaps"],d=r.getComputeMaps()["computeCheckboxOpts"],d=d.value,{labelField:i,checkField:c,checkMethod:s,visibleMethod:u}=d,d=d.indeterminateField||d.halfField,C=t["slots"],v=C?C.default:null,C=C?C.checkbox:null;let p=!1,g=!1;const _=!u||u({row:e});let h=!!s,x;n||(u=(0,_util.getRowid)(r,e),g=_xeUtils.default.get(e,c),x={onClick(e){!h&&_&&(e.stopPropagation(),r.triggerCheckRowEvent(e,l,!g))}},s&&(h=!s({row:e})),a&&(p=!!o[u]));c=Object.assign(Object.assign({},l),{checked:g,disabled:h,visible:_,indeterminate:p});return C?r.callSlot(C,c):(s=[],_&&(s.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",p?getIcon().TABLE_CHECKBOX_INDETERMINATE:g?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),v||i)&&s.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},v?r.callSlot(v,c):_xeUtils.default.get(e,i))),[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":g,"is--disabled":h,"is--indeterminate":d&&!g?e[d]:p,"is--hidden":!_}]},x),s)])},renderTreeSelectionCellByProp(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCellByProp(e))},renderExpandCell(l){const{$table:r,isHidden:e,row:t,column:n}=l;var a=r["reactData"],{rowExpandedMaps:a,rowExpandLazyLoadedMaps:o}=a,d=r.getComputeMaps()["computeExpandOpts"],{lazy:d,labelField:i,iconLoaded:c,showIcon:s,iconOpen:u,iconClose:C,visibleMethod:v}=d.value,p=n["slots"],g=p?p.default:null,p=p?p.icon:null;let _=!1,h=!1;return p?r.callSlot(p,l):(e||(p=(0,_util.getRowid)(r,t),_=!!a[p],d&&(h=!!o[p])),[!s||v&&!v(l)?null:(0,_vue.h)("span",{class:["vxe-table--expanded",{"is--active":_}],onClick(e){e.stopPropagation(),r.triggerRowExpandEvent(e,l)}},[(0,_vue.h)("i",{class:["vxe-table--expand-btn",h?c||getIcon().TABLE_EXPAND_LOADED:_?u||getIcon().TABLE_EXPAND_OPEN:C||getIcon().TABLE_EXPAND_CLOSE]})]),g||i?(0,_vue.h)("span",{class:"vxe-table--expand-label"},g?r.callSlot(g,l):_xeUtils.default.get(t,i)):null])},renderExpandData(e){var{$table:l,column:r}=e,{slots:r,contentRender:t}=r,r=r?r.content:null;if(r)return l.callSlot(r,e);if(t){l=renderer.get(t.name);if(l&&l.renderExpand)return(0,_vn.getSlotVNs)(l.renderExpand(t,e))}return[]},renderHTMLCell(e){var{$table:l,column:r}=e,r=r["slots"],r=r?r.default:null;return r?l.callSlot(r,e):[(0,_vue.h)("span",{class:"vxe-cell--html",innerHTML:getDefaultCellLabel(e)})]},renderTreeHTMLCell(e){return Cell.renderTreeIcon(e,Cell.renderHTMLCell(e))},renderSortAndFilterHeader(e){return Cell.renderDefaultHeader(e).concat(Cell.renderSortIcon(e)).concat(Cell.renderFilterIcon(e))},renderSortHeader(e){return Cell.renderDefaultHeader(e).concat(Cell.renderSortIcon(e))},renderSortIcon(e){const{$table:l,column:r}=e;var e=l.getComputeMaps()["computeSortOpts"],{showIcon:e,iconLayout:t,iconAsc:n,iconDesc:a}=e.value,o=r["order"];return e?[(0,_vue.h)("span",{class:["vxe-cell--sort",`vxe-cell--sort-${t}-layout`]},[(0,_vue.h)("i",{class:["vxe-sort--asc-btn",n||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===o}],title:getI18n("vxe.table.sortAsc"),onClick(e){e.stopPropagation(),l.triggerSortEvent(e,r,"asc")}}),(0,_vue.h)("i",{class:["vxe-sort--desc-btn",a||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===o}],title:getI18n("vxe.table.sortDesc"),onClick(e){e.stopPropagation(),l.triggerSortEvent(e,r,"desc")}})])]:[]},renderFilterHeader(e){return Cell.renderDefaultHeader(e).concat(Cell.renderFilterIcon(e))},renderFilterIcon(l){const{$table:r,column:e,hasFilter:t}=l;var n=r["reactData"],n=n["filterStore"],a=r.getComputeMaps()["computeFilterOpts"],{showIcon:a,iconNone:o,iconMatch:d}=a.value;return a?[(0,_vue.h)("span",{class:["vxe-cell--filter",{"is--active":n.visible&&n.column===e}]},[(0,_vue.h)("i",{class:["vxe-filter--btn",t?d||getIcon().TABLE_FILTER_MATCH:o||getIcon().TABLE_FILTER_NONE],title:getI18n("vxe.table.filter"),onClick(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}})])]:[]},renderEditHeader(e){var{$table:l,column:r}=e,t=l["props"],l=l.getComputeMaps()["computeEditOpts"],{editConfig:t,editRules:n}=t,l=l.value,{sortable:a,filters:o,editRender:d}=r;let i=!1;return n&&(n=_xeUtils.default.get(n,r.field))&&(i=n.some(e=>e.required)),((0,_utils.isEnableConf)(t)?[i&&l.showAsterisk?(0,_vue.h)("i",{class:"vxe-cell--required-icon"}):null,(0,_utils.isEnableConf)(d)&&l.showIcon?(0,_vue.h)("i",{class:["vxe-cell--edit-icon",l.icon||getIcon().TABLE_EDIT]}):null]:[]).concat(Cell.renderDefaultHeader(e)).concat(a?Cell.renderSortIcon(e):[]).concat(o?Cell.renderFilterIcon(e):[])},renderRowEdit(e){var{$table:l,column:r}=e,l=l["reactData"],l=l["editStore"],l=l["actived"],r=r["editRender"];return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row)},renderTreeRowEdit(e){return Cell.renderTreeIcon(e,Cell.renderRowEdit(e))},renderCellEdit(e){var{$table:l,column:r}=e,l=l["reactData"],l=l["editStore"],l=l["actived"],r=r["editRender"];return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row&&l.column===e.column)},renderTreeCellEdit(e){return Cell.renderTreeIcon(e,Cell.renderCellEdit(e))},runRenderer(e,l){var{$table:r,column:t}=e,{slots:t,editRender:n,formatter:a}=t,o=t?t.default:null,t=t?t.edit:null,d=renderer.get(n.name);return l?t?r.callSlot(t,e):d&&d.renderEdit?(0,_vn.getSlotVNs)(d.renderEdit(n,Object.assign({$type:"edit"},e))):[]:o?r.callSlot(o,e):a?[(0,_vue.h)("span",{class:"vxe-cell--label"},getDefaultCellLabel(e))]:Cell.renderDefaultCell(e)}};var _default=exports.default=Cell;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,getIcon,renderer}=_ui.VxeUI;function renderTitlePrefixIcon(l){const{$table:r,column:e}=l,t=e.titlePrefix||e.titleHelp;return t?[(0,_vue.h)("i",{class:["vxe-cell-title-prefix-icon",t.icon||getIcon().TABLE_TITLE_PREFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}})]:[]}function renderTitleSuffixIcon(l){const{$table:r,column:e}=l,t=e.titleSuffix;return t?[(0,_vue.h)("i",{class:["vxe-cell-title-suffix-icon",t.icon||getIcon().TABLE_TITLE_SUFFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}})]:[]}function renderTitleContent(l,e){const{$table:r,column:t}=l,{props:n,reactData:a}=r;var o=r.getComputeMaps()["computeTooltipOpts"],d=n["showHeaderOverflow"],{type:i,showHeaderOverflow:c}=t;const s=o.value.showAll;o=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?d:c;const u="title"===o,C=!0===o||"tooltip"===o;d={};return(u||C||s)&&(d.onMouseenter=e=>{a._isResize||(u?(0,_dom.updateCellTitle)(e.currentTarget,t):(C||s)&&r.triggerHeaderTooltipEvent(e,l))}),(C||s)&&(d.onMouseleave=e=>{a._isResize||(C||s)&&r.handleTargetLeaveEvent(e)}),["html"===i&&_xeUtils.default.isString(e)?(0,_vue.h)("span",Object.assign({class:"vxe-cell--title",innerHTML:e},d)):(0,_vue.h)("span",Object.assign({class:"vxe-cell--title"},d),(0,_vn.getSlotVNs)(e))]}function getFooterContent(e){var{$table:l,column:r,_columnIndex:t,items:n,row:a}=e,{slots:o,editRender:d,cellRender:i}=r,d=d||i,i=o?o.footer:null;if(i)return l.callSlot(i,e);if(d){o=renderer.get(d.name);if(o&&o.renderFooter)return(0,_vn.getSlotVNs)(o.renderFooter(d,e))}return _xeUtils.default.isArray(n)?[(0,_utils.formatText)(n[t],1)]:[(0,_utils.formatText)(_xeUtils.default.get(a,r.field),1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}const Cell=exports.Cell={createColumn(e,l){var{type:r,sortable:t,filters:n,editRender:a,treeNode:o}=l,d=e["props"],i=d["editConfig"],{computeEditOpts:d,computeCheckboxOpts:c}=e.getComputeMaps(),s=c.value,u=d.value,C={renderHeader:Cell.renderDefaultHeader,renderCell:o?Cell.renderTreeCell:Cell.renderDefaultCell,renderFooter:Cell.renderDefaultFooter};switch(r){case"seq":C.renderHeader=Cell.renderSeqHeader,C.renderCell=o?Cell.renderTreeIndexCell:Cell.renderSeqCell;break;case"radio":C.renderHeader=Cell.renderRadioHeader,C.renderCell=o?Cell.renderTreeRadioCell:Cell.renderRadioCell;break;case"checkbox":C.renderHeader=Cell.renderCheckboxHeader,C.renderCell=s.checkField?o?Cell.renderTreeSelectionCellByProp:Cell.renderCheckboxCellByProp:o?Cell.renderTreeSelectionCell:Cell.renderCheckboxCell;break;case"expand":C.renderCell=Cell.renderExpandCell,C.renderData=Cell.renderExpandData;break;case"html":C.renderCell=o?Cell.renderTreeHTMLCell:Cell.renderHTMLCell,n&&t?C.renderHeader=Cell.renderSortAndFilterHeader:t?C.renderHeader=Cell.renderSortHeader:n&&(C.renderHeader=Cell.renderFilterHeader);break;default:i&&a?(C.renderHeader=Cell.renderEditHeader,C.renderCell="cell"===u.mode?o?Cell.renderTreeCellEdit:Cell.renderCellEdit:o?Cell.renderTreeRowEdit:Cell.renderRowEdit):n&&t?C.renderHeader=Cell.renderSortAndFilterHeader:t?C.renderHeader=Cell.renderSortHeader:n&&(C.renderHeader=Cell.renderFilterHeader)}return(0,_util.createColumn)(e,l,C)},renderHeaderTitle(e){var{$table:l,column:r}=e,{slots:t,editRender:n,cellRender:a}=r,n=n||a,a=t?t.header:null;if(a)return renderTitleContent(e,l.callSlot(a,e));if(n){t=renderer.get(n.name);if(t&&t.renderHeader)return renderTitleContent(e,(0,_vn.getSlotVNs)(t.renderHeader(n,e)))}return renderTitleContent(e,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e){return renderTitlePrefixIcon(e).concat(Cell.renderHeaderTitle(e)).concat(renderTitleSuffixIcon(e))},renderDefaultCell(e){var{$table:l,row:r,column:t}=e,{slots:n,editRender:a,cellRender:o}=t,o=a||o,n=n?n.default:null;if(n)return l.callSlot(n,e);if(o){var n=a?"renderCell":"renderDefault",d=renderer.get(o.name),d=d?d[n]:null;if(d)return(0,_vn.getSlotVNs)(d(o,Object.assign({$type:a?"edit":"cell"},e)))}n=l.getCellLabel(r,t),d=a?a.placeholder:"";return[(0,_vue.h)("span",{class:"vxe-cell--label"},a&&(0,_utils.eqEmptyValue)(n)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(d),1))]:(0,_utils.formatText)(n,1))]},renderTreeCell(e){return Cell.renderTreeIcon(e,Cell.renderDefaultCell(e))},renderDefaultFooter(e){return[(0,_vue.h)("span",{class:"vxe-cell--item"},getFooterContent(e))]},renderTreeIcon(l,e){const{$table:r,isHidden:t}=l;var n=r["reactData"],a=r.getComputeMaps()["computeTreeOpts"],{treeExpandedMaps:n,treeExpandLazyLoadedMaps:o}=n,a=a.value,{row:d,column:i,level:c}=l,i=i["slots"],{indent:s,lazy:u,trigger:C,iconLoaded:v,showIcon:p,iconOpen:g,iconClose:_}=a,h=a.children||a.childrenField,a=a.hasChild||a.hasChildField,h=d[h],i=i?i.icon:null;let E=!1,b=!1,x=!1;var T={};return i?r.callSlot(i,l):(t||(i=(0,_util.getRowid)(r,d),b=!!n[i],u&&(x=!!o[i],E=d[a])),C&&"default"!==C||(T.onClick=e=>{e.stopPropagation(),r.triggerTreeExpandEvent(e,l)}),[(0,_vue.h)("div",{class:["vxe-cell--tree-node",{"is--active":b}],style:{paddingLeft:c*s+"px"}},[p&&(h&&h.length||E)?[(0,_vue.h)("div",Object.assign({class:"vxe-tree--btn-wrapper"},T),[(0,_vue.h)("i",{class:["vxe-tree--node-btn",x?v||getIcon().TABLE_TREE_LOADED:b?g||getIcon().TABLE_TREE_OPEN:_||getIcon().TABLE_TREE_CLOSE]})])]:null,(0,_vue.h)("div",{class:"vxe-tree-cell"},e)])])},renderSeqHeader(e){var{$table:l,column:r}=e,t=r["slots"],t=t?t.header:null;return renderTitleContent(e,t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1))},renderSeqCell(e){var{$table:l,column:r}=e,t=l["props"],t=t["treeConfig"],n=l.getComputeMaps()["computeSeqOpts"],n=n.value,r=r["slots"],r=r?r.default:null;return r?l.callSlot(r,e):(l=e["seq"],r=n.seqMethod,[(0,_utils.formatText)(r?r(e):t?l:(n.startIndex||0)+l,1)])},renderTreeIndexCell(e){return Cell.renderTreeIcon(e,Cell.renderSeqCell(e))},renderRadioHeader(e){var{$table:l,column:r}=e,t=r["slots"],n=t?t.header:null,t=t?t.title:null;return renderTitleContent(e,n?l.callSlot(n,e):[(0,_vue.h)("span",{class:"vxe-radio--label"},t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1))])},renderRadioCell(l){const{$table:r,column:e,isHidden:t}=l;var n=r["reactData"],a=r.getComputeMaps()["computeRadioOpts"],n=n["selectRadioRow"],o=e["slots"],{labelField:a,checkMethod:d,visibleMethod:i}=a.value,c=l["row"],s=o?o.default:null,o=o?o.radio:null,n=r.eqRow(c,n);const u=!i||i({row:c});let C=!!d,v;t||(v={onClick(e){!C&&u&&(e.stopPropagation(),r.triggerRadioRowEvent(e,l))}},d&&(C=!d({row:c})));i=Object.assign(Object.assign({},l),{checked:n,disabled:C,visible:u});return o?r.callSlot(o,i):(d=[],u&&d.push((0,_vue.h)("span",{class:["vxe-radio--icon",n?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(s||a)&&d.push((0,_vue.h)("span",{class:"vxe-radio--label"},s?r.callSlot(s,i):_xeUtils.default.get(c,a))),[(0,_vue.h)("span",Object.assign({class:["vxe-cell--radio",{"is--checked":n,"is--disabled":C}]},v),d)])},renderTreeRadioCell(e){return Cell.renderTreeIcon(e,Cell.renderRadioCell(e))},renderCheckboxHeader(e){const{$table:l,column:r,isHidden:t}=e;var n=l["reactData"],{computeIsAllCheckboxDisabled:a,computeCheckboxOpts:o}=l.getComputeMaps();const{isAllSelected:d,isIndeterminate:i}=n,c=a.value;var n=r["slots"],a=n?n.header:null,n=n?n.title:null,o=o.value,s=r.getTitle();let u;t||(u={onClick(e){c||(e.stopPropagation(),l.triggerCheckAllEvent(e,!d))}});e=Object.assign(Object.assign({},e),{checked:d,disabled:c,indeterminate:i});return a?renderTitleContent(e,l.callSlot(a,e)):(o.checkStrictly?o.showHeader:!1!==o.showHeader)?renderTitleContent(e,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":d,"is--disabled":c,"is--indeterminate":i}],title:getI18n("vxe.table.allTitle")},u),[(0,_vue.h)("span",{class:["vxe-checkbox--icon",i?getIcon().TABLE_CHECKBOX_INDETERMINATE:d?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(n||s?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,e):s)]:[]))]):renderTitleContent(e,[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,e):s)])},renderCheckboxCell(l){const{$table:r,row:e,column:t,isHidden:n}=l;var{props:a,reactData:o}=r,a=a["treeConfig"],{selectCheckboxMaps:o,treeIndeterminateMaps:d}=o,i=r.getComputeMaps()["computeCheckboxOpts"],{labelField:i,checkMethod:c,visibleMethod:s}=i.value,u=t["slots"],C=u?u.default:null,u=u?u.checkbox:null;let v=!1,p=!1;const g=!s||s({row:e});let _=!!c,h;n||(s=(0,_util.getRowid)(r,e),p=!!o[s],h={onClick(e){!_&&g&&(e.stopPropagation(),r.triggerCheckRowEvent(e,l,!p))}},c&&(_=!c({row:e})),a&&(v=!!d[s]));o=Object.assign(Object.assign({},l),{checked:p,disabled:_,visible:g,indeterminate:v});return u?r.callSlot(u,o):(c=[],g&&c.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:p?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(C||i)&&c.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},C?r.callSlot(C,o):_xeUtils.default.get(e,i))),[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":p,"is--disabled":_,"is--indeterminate":v,"is--hidden":!g}]},h),c)])},renderTreeSelectionCell(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCell(e))},renderCheckboxCellByProp(l){const{$table:r,row:e,column:t,isHidden:n}=l;var{props:a,reactData:o}=r,a=a["treeConfig"],o=o["treeIndeterminateMaps"],d=r.getComputeMaps()["computeCheckboxOpts"],d=d.value,{labelField:i,checkField:c,checkMethod:s,visibleMethod:u}=d,d=d.indeterminateField||d.halfField,C=t["slots"],v=C?C.default:null,C=C?C.checkbox:null;let p=!1,g=!1;const _=!u||u({row:e});let h=!!s,E;n||(u=(0,_util.getRowid)(r,e),g=_xeUtils.default.get(e,c),E={onClick(e){!h&&_&&(e.stopPropagation(),r.triggerCheckRowEvent(e,l,!g))}},s&&(h=!s({row:e})),a&&(p=!!o[u]));c=Object.assign(Object.assign({},l),{checked:g,disabled:h,visible:_,indeterminate:p});return C?r.callSlot(C,c):(s=[],_&&(s.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",p?getIcon().TABLE_CHECKBOX_INDETERMINATE:g?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),v||i)&&s.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},v?r.callSlot(v,c):_xeUtils.default.get(e,i))),[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":g,"is--disabled":h,"is--indeterminate":d&&!g?e[d]:p,"is--hidden":!_}]},E),s)])},renderTreeSelectionCellByProp(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCellByProp(e))},renderExpandCell(l){const{$table:r,isHidden:e,row:t,column:n}=l;var a=r["reactData"],{rowExpandedMaps:a,rowExpandLazyLoadedMaps:o}=a,d=r.getComputeMaps()["computeExpandOpts"],{lazy:d,labelField:i,iconLoaded:c,showIcon:s,iconOpen:u,iconClose:C,visibleMethod:v}=d.value,p=n["slots"],g=p?p.default:null,p=p?p.icon:null;let _=!1,h=!1;return p?r.callSlot(p,l):(e||(p=(0,_util.getRowid)(r,t),_=!!a[p],d&&(h=!!o[p])),[!s||v&&!v(l)?null:(0,_vue.h)("span",{class:["vxe-table--expanded",{"is--active":_}],onClick(e){e.stopPropagation(),r.triggerRowExpandEvent(e,l)}},[(0,_vue.h)("i",{class:["vxe-table--expand-btn",h?c||getIcon().TABLE_EXPAND_LOADED:_?u||getIcon().TABLE_EXPAND_OPEN:C||getIcon().TABLE_EXPAND_CLOSE]})]),g||i?(0,_vue.h)("span",{class:"vxe-table--expand-label"},g?r.callSlot(g,l):_xeUtils.default.get(t,i)):null])},renderExpandData(e){var{$table:l,column:r}=e,{slots:r,contentRender:t}=r,r=r?r.content:null;if(r)return l.callSlot(r,e);if(t){l=renderer.get(t.name);if(l&&l.renderExpand)return(0,_vn.getSlotVNs)(l.renderExpand(t,e))}return[]},renderHTMLCell(e){var{$table:l,column:r}=e,r=r["slots"],r=r?r.default:null;return r?l.callSlot(r,e):[(0,_vue.h)("span",{class:"vxe-cell--html",innerHTML:getDefaultCellLabel(e)})]},renderTreeHTMLCell(e){return Cell.renderTreeIcon(e,Cell.renderHTMLCell(e))},renderSortAndFilterHeader(e){return Cell.renderDefaultHeader(e).concat(Cell.renderSortIcon(e)).concat(Cell.renderFilterIcon(e))},renderSortHeader(e){return Cell.renderDefaultHeader(e).concat(Cell.renderSortIcon(e))},renderSortIcon(e){const{$table:l,column:r}=e;var e=l.getComputeMaps()["computeSortOpts"],{showIcon:e,iconLayout:t,iconAsc:n,iconDesc:a}=e.value,o=r["order"];return e?[(0,_vue.h)("span",{class:["vxe-cell--sort",`vxe-cell--sort-${t}-layout`]},[(0,_vue.h)("i",{class:["vxe-sort--asc-btn",n||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===o}],title:getI18n("vxe.table.sortAsc"),onClick(e){e.stopPropagation(),l.triggerSortEvent(e,r,"asc")}}),(0,_vue.h)("i",{class:["vxe-sort--desc-btn",a||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===o}],title:getI18n("vxe.table.sortDesc"),onClick(e){e.stopPropagation(),l.triggerSortEvent(e,r,"desc")}})])]:[]},renderFilterHeader(e){return Cell.renderDefaultHeader(e).concat(Cell.renderFilterIcon(e))},renderFilterIcon(l){const{$table:r,column:e,hasFilter:t}=l;var n=r["reactData"],n=n["filterStore"],a=r.getComputeMaps()["computeFilterOpts"],{showIcon:a,iconNone:o,iconMatch:d}=a.value;return a?[(0,_vue.h)("span",{class:["vxe-cell--filter",{"is--active":n.visible&&n.column===e}]},[(0,_vue.h)("i",{class:["vxe-filter--btn",t?d||getIcon().TABLE_FILTER_MATCH:o||getIcon().TABLE_FILTER_NONE],title:getI18n("vxe.table.filter"),onClick(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}})])]:[]},renderEditHeader(e){var{$table:l,column:r}=e,t=l["props"],l=l.getComputeMaps()["computeEditOpts"],{editConfig:t,editRules:n}=t,l=l.value,{sortable:a,filters:o,editRender:d}=r;let i=!1;return n&&(n=_xeUtils.default.get(n,r.field))&&(i=n.some(e=>e.required)),((0,_utils.isEnableConf)(t)?[i&&l.showAsterisk?(0,_vue.h)("i",{class:"vxe-cell--required-icon"}):null,(0,_utils.isEnableConf)(d)&&l.showIcon?(0,_vue.h)("i",{class:["vxe-cell--edit-icon",l.icon||getIcon().TABLE_EDIT]}):null]:[]).concat(Cell.renderDefaultHeader(e)).concat(a?Cell.renderSortIcon(e):[]).concat(o?Cell.renderFilterIcon(e):[])},renderRowEdit(e){var{$table:l,column:r}=e,l=l["reactData"],l=l["editStore"],l=l["actived"],r=r["editRender"];return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row)},renderTreeRowEdit(e){return Cell.renderTreeIcon(e,Cell.renderRowEdit(e))},renderCellEdit(e){var{$table:l,column:r}=e,l=l["reactData"],l=l["editStore"],l=l["actived"],r=r["editRender"];return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row&&l.column===e.column)},renderTreeCellEdit(e){return Cell.renderTreeIcon(e,Cell.renderCellEdit(e))},runRenderer(e,l){var{$table:r,column:t}=e,{slots:t,editRender:n,formatter:a}=t,o=t?t.default:null,t=t?t.edit:null,d=renderer.get(n.name);return l?t?r.callSlot(t,e):d&&d.renderEdit?(0,_vn.getSlotVNs)(d.renderEdit(n,Object.assign({$type:"edit"},e))):[]:o?r.callSlot(o,e):a?[(0,_vue.h)("span",{class:"vxe-cell--label"},getDefaultCellLabel(e))]:Cell.renderDefaultCell(e)}};var _default=exports.default=Cell;
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.ColumnInfo = void 0;
|
|
7
7
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
8
|
-
var
|
|
8
|
+
var _ui = require("../../ui");
|
|
9
9
|
var _util = require("./util");
|
|
10
10
|
var _utils = require("../../ui/src/utils");
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -13,7 +13,7 @@ const {
|
|
|
13
13
|
getI18n,
|
|
14
14
|
formats,
|
|
15
15
|
log
|
|
16
|
-
} =
|
|
16
|
+
} = _ui.VxeUI;
|
|
17
17
|
class ColumnInfo {
|
|
18
18
|
/* eslint-disable @typescript-eslint/no-use-before-define */
|
|
19
19
|
constructor($xeTable, _vm, {
|
|
@@ -134,6 +134,8 @@ class ColumnInfo {
|
|
|
134
134
|
// 列排序
|
|
135
135
|
sortNumber: 0,
|
|
136
136
|
renderSortNumber: 0,
|
|
137
|
+
renderFixed: '',
|
|
138
|
+
renderVisible: false,
|
|
137
139
|
renderWidth: 0,
|
|
138
140
|
renderHeight: 0,
|
|
139
141
|
resizeWidth: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ColumnInfo=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,formats,log}=_ui.VxeUI;class ColumnInfo{constructor(e,r,{renderHeader:t,renderCell:l,renderFooter:o,renderData:i}={}){var d,n=e.xegrid,s=r.formatter,a=!_xeUtils.default.isBoolean(r.visible)||r.visible;"development"===process.env.NODE_ENV&&(d=["seq","checkbox","radio","expand","html"],r.type&&-1===d.indexOf(r.type)&&log.warn("vxe.error.errProp",["type="+r.type,d.join(", ")]),(_xeUtils.default.isBoolean(r.cellRender)||r.cellRender&&!_xeUtils.default.isObject(r.cellRender))&&log.warn("vxe.error.errProp",["column.cell-render="+r.cellRender,"column.cell-render={}"]),(_xeUtils.default.isBoolean(r.editRender)||r.editRender&&!_xeUtils.default.isObject(r.editRender))&&log.warn("vxe.error.errProp",["column.edit-render="+r.editRender,"column.edit-render={}"]),r.cellRender&&r.editRender&&log.warn("vxe.error.errConflicts",["column.cell-render","column.edit-render"]),"expand"===r.type&&(d=e["props"],d=d["treeConfig"],e=e.getComputeMaps()["computeTreeOpts"],e=e.value,d)&&(e.showLine||e.line)&&log.err("vxe.error.errConflicts",["tree-config.showLine","column.type=expand"]),s)&&(_xeUtils.default.isString(s)?(d=formats.get(s)||_xeUtils.default[s])&&_xeUtils.default.isFunction(d.cellFormatMethod)||log.err("vxe.error.notFormats",[s]):!_xeUtils.default.isArray(s)||(e=formats.get(s[0])||_xeUtils.default[s[0]])&&_xeUtils.default.isFunction(e.cellFormatMethod)||log.err("vxe.error.notFormats",[s[0]])),Object.assign(this,{type:r.type,property:r.field,field:r.field,title:r.title,width:r.width,minWidth:r.minWidth,maxWidth:r.maxWidth,resizable:r.resizable,fixed:r.fixed,align:r.align,headerAlign:r.headerAlign,footerAlign:r.footerAlign,showOverflow:r.showOverflow,showHeaderOverflow:r.showHeaderOverflow,showFooterOverflow:r.showFooterOverflow,className:r.className,headerClassName:r.headerClassName,footerClassName:r.footerClassName,formatter:s,sortable:r.sortable,sortBy:r.sortBy,sortType:r.sortType,filters:(0,_util.toFilters)(r.filters),filterMultiple:!_xeUtils.default.isBoolean(r.filterMultiple)||r.filterMultiple,filterMethod:r.filterMethod,filterResetMethod:r.filterResetMethod,filterRecoverMethod:r.filterRecoverMethod,filterRender:r.filterRender,treeNode:r.treeNode,cellType:r.cellType,cellRender:r.cellRender,editRender:r.editRender,contentRender:r.contentRender,headerExportMethod:r.headerExportMethod,exportMethod:r.exportMethod,footerExportMethod:r.footerExportMethod,titleHelp:r.titleHelp,titlePrefix:r.titlePrefix,titleSuffix:r.titleSuffix,params:r.params,id:r.colId||_xeUtils.default.uniqueId("col_"),parentId:null,visible:a,halfVisible:!1,defaultVisible:a,defaultFixed:r.fixed,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderFixed:"",renderVisible:!1,renderWidth:0,renderHeight:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:t||r.renderHeader,renderCell:l||r.renderCell,renderFooter:o||r.renderFooter,renderData:i,slots:r.slots}),n&&(d=n.getComputeMaps()["computeProxyOpts"],(e=d.value).beforeColumn)&&e.beforeColumn({$grid:n,column:this})}getTitle(){return(0,_utils.getFuncText)(this.title||("seq"===this.type?getI18n("vxe.table.seqTitle"):""))}getKey(){return this.field||(this.type?"type="+this.type:null)}update(e,r){"filters"!==e&&("field"===e&&(this.property=r),this[e]=r)}}exports.ColumnInfo=ColumnInfo;
|
package/lib/table/src/props.js
CHANGED
|
@@ -4,10 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var
|
|
7
|
+
var _ui = require("../../ui");
|
|
8
8
|
const {
|
|
9
9
|
getConfig
|
|
10
|
-
} =
|
|
10
|
+
} = _ui.VxeUI;
|
|
11
11
|
var _default = exports.default = {
|
|
12
12
|
/** 基本属性 */
|
|
13
13
|
id: String,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var
|
|
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,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};
|
package/lib/table/src/table.js
CHANGED
|
@@ -8,7 +8,7 @@ var _vue = require("vue");
|
|
|
8
8
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
9
9
|
var _dom = require("../../ui/src/dom");
|
|
10
10
|
var _utils = require("../../ui/src/utils");
|
|
11
|
-
var
|
|
11
|
+
var _ui = require("../../ui");
|
|
12
12
|
var _cell = _interopRequireDefault(require("./cell"));
|
|
13
13
|
var _body = _interopRequireDefault(require("./body"));
|
|
14
14
|
var _header = _interopRequireDefault(require("./header"));
|
|
@@ -36,7 +36,7 @@ const {
|
|
|
36
36
|
GLOBAL_EVENT_KEYS,
|
|
37
37
|
log,
|
|
38
38
|
useFns
|
|
39
|
-
} =
|
|
39
|
+
} = _ui.VxeUI;
|
|
40
40
|
const isWebkit = _dom.browse['-webkit'] && !_dom.browse.edge;
|
|
41
41
|
const resizableStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_WIDTH';
|
|
42
42
|
const visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
|
|
@@ -141,7 +141,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
141
141
|
activeBtn: false,
|
|
142
142
|
activeWrapper: false,
|
|
143
143
|
visible: false,
|
|
144
|
-
maxHeight: 0
|
|
144
|
+
maxHeight: 0,
|
|
145
|
+
oldSortMaps: {},
|
|
146
|
+
oldFixedMaps: {},
|
|
147
|
+
oldVisibleMaps: {}
|
|
145
148
|
},
|
|
146
149
|
customColumnList: [],
|
|
147
150
|
// 当前选中的筛选列
|
|
@@ -913,7 +916,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
913
916
|
} = props;
|
|
914
917
|
const customOpts = computeCustomOpts.value;
|
|
915
918
|
const {
|
|
916
|
-
storage
|
|
919
|
+
storage,
|
|
920
|
+
restoreStore
|
|
917
921
|
} = customOpts;
|
|
918
922
|
const isAllCustom = storage === true;
|
|
919
923
|
const storageOpts = isAllCustom ? {} : Object.assign({}, storage || {});
|
|
@@ -921,6 +925,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
921
925
|
const isCustomVisible = isAllCustom || storageOpts.visible;
|
|
922
926
|
const isCustomFixed = isAllCustom || storageOpts.fixed;
|
|
923
927
|
const isCustomSort = isAllCustom || storageOpts.sort;
|
|
928
|
+
if (storage && id && restoreStore) {
|
|
929
|
+
restoreStore({
|
|
930
|
+
id
|
|
931
|
+
});
|
|
932
|
+
}
|
|
924
933
|
if (customConfig && (isCustomResizable || isCustomVisible || isCustomFixed || isCustomSort)) {
|
|
925
934
|
const customMap = {};
|
|
926
935
|
if (!id) {
|
|
@@ -3761,8 +3770,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
3761
3770
|
if (targetColumn && targetColumn.fixed !== fixed) {
|
|
3762
3771
|
// 是否超过最大固定列数量
|
|
3763
3772
|
if (!targetColumn.fixed && isMaxFixedColumn) {
|
|
3764
|
-
if (
|
|
3765
|
-
|
|
3773
|
+
if (_ui.VxeUI.modal) {
|
|
3774
|
+
_ui.VxeUI.modal.message({
|
|
3766
3775
|
status: 'error',
|
|
3767
3776
|
content: getI18n('vxe.table.maxFixedCol', [maxFixedSize])
|
|
3768
3777
|
});
|