vxe-table 4.12.1 → 4.12.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/style.css +1 -1
- package/es/table/module/edit/hook.js +3 -2
- package/es/table/module/keyboard/hook.js +3 -2
- package/es/table/module/menu/hook.js +1 -1
- package/es/table/src/table.js +54 -30
- package/es/ui/index.js +1 -1
- package/es/ui/src/dom.js +0 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +56 -31
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/edit/hook.js +2 -1
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/keyboard/hook.js +2 -1
- package/lib/table/module/keyboard/hook.min.js +1 -1
- package/lib/table/module/menu/hook.js +1 -1
- package/lib/table/module/menu/hook.min.js +1 -1
- package/lib/table/src/table.js +49 -25
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +0 -2
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/table/module/edit/hook.ts +4 -2
- package/packages/table/module/keyboard/hook.ts +4 -2
- package/packages/table/module/menu/hook.ts +1 -1
- package/packages/table/src/table.ts +56 -30
- package/packages/ui/src/dom.ts +0 -2
- /package/es/{iconfont.1743045589885.ttf → iconfont.1743389164894.ttf} +0 -0
- /package/es/{iconfont.1743045589885.woff → iconfont.1743389164894.woff} +0 -0
- /package/es/{iconfont.1743045589885.woff2 → iconfont.1743389164894.woff2} +0 -0
- /package/lib/{iconfont.1743045589885.ttf → iconfont.1743389164894.ttf} +0 -0
- /package/lib/{iconfont.1743045589885.woff → iconfont.1743389164894.woff} +0 -0
- /package/lib/{iconfont.1743045589885.woff2 → iconfont.1743389164894.woff2} +0 -0
package/lib/ui/index.js
CHANGED
|
@@ -13,7 +13,7 @@ Object.defineProperty(exports, "VxeUI", {
|
|
|
13
13
|
exports.version = exports.validators = exports.use = exports.t = exports.setup = exports.setTheme = exports.setLanguage = exports.setIcon = exports.setI18n = exports.setConfig = exports.saveFile = exports.renderer = exports.readFile = exports.print = exports.modal = exports.menus = exports.log = exports.interceptor = exports.hooks = exports.globalResize = exports.globalEvents = exports.getTheme = exports.getIcon = exports.getI18n = exports.getConfig = exports.formats = exports.default = exports.config = exports.commands = exports.clipboard = exports._t = void 0;
|
|
14
14
|
var _core = require("@vxe-ui/core");
|
|
15
15
|
var _utils = require("./src/utils");
|
|
16
|
-
const version = exports.version = "4.12.
|
|
16
|
+
const version = exports.version = "4.12.3";
|
|
17
17
|
_core.VxeUI.version = version;
|
|
18
18
|
_core.VxeUI.tableVersion = version;
|
|
19
19
|
_core.VxeUI.setConfig({
|
package/lib/ui/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="4.12.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="4.12.3",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,minHeight:144,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},treeConfig:{rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{enabled:!0,gt:60,preSize:1,oSize:0},virtualYConfig:{enabled:!0,gt:100,preSize:1,oSize:0},scrollbarConfig:{}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,hooks=exports.hooks=_core.VxeUI.hooks,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});var _default=exports.default=_core.VxeUI;
|
package/lib/ui/src/dom.js
CHANGED
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.addClass = addClass;
|
|
7
|
-
exports.browse = void 0;
|
|
8
7
|
exports.getAbsolutePos = getAbsolutePos;
|
|
9
8
|
exports.getDomNode = getDomNode;
|
|
10
9
|
exports.getEventTargetNode = getEventTargetNode;
|
|
@@ -28,7 +27,6 @@ exports.updateCellTitle = updateCellTitle;
|
|
|
28
27
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
29
28
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
30
29
|
const reClsMap = {};
|
|
31
|
-
const browse = exports.browse = _xeUtils.default.browse();
|
|
32
30
|
let tpImgEl;
|
|
33
31
|
function initTpImg() {
|
|
34
32
|
if (!tpImgEl) {
|
package/lib/ui/src/dom.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.addClass=addClass,exports.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.addClass=addClass,exports.getAbsolutePos=getAbsolutePos,exports.getDomNode=getDomNode,exports.getEventTargetNode=getEventTargetNode,exports.getOffsetHeight=getOffsetHeight,exports.getOffsetPos=getOffsetPos,exports.getPaddingTopBottomSize=getPaddingTopBottomSize,exports.getPropClass=getPropClass,exports.getTpImg=getTpImg,exports.hasClass=hasClass,exports.initTpImg=initTpImg,exports.isNodeElement=isNodeElement,exports.isPx=isPx,exports.isScale=isScale,exports.removeClass=removeClass,exports.scrollToView=scrollToView,exports.setScrollLeft=setScrollLeft,exports.setScrollTop=setScrollTop,exports.toCssUnit=toCssUnit,exports.triggerEvent=triggerEvent,exports.updateCellTitle=updateCellTitle;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let reClsMap={},tpImgEl;function initTpImg(){return tpImgEl||((tpImgEl=new Image).src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),tpImgEl}function getTpImg(){return tpImgEl||initTpImg()}function getPropClass(e,t){return e?_xeUtils.default.isFunction(e)?e(t):e:""}function getClsRE(e){return reClsMap[e]||(reClsMap[e]=new RegExp(`(?:^|\\s)${e}(?!\\S)`,"g")),reClsMap[e]}function getNodeOffset(e,t,o){if(e){var s=e.parentNode;if(o.top+=e.offsetTop,o.left+=e.offsetLeft,s&&s!==document.documentElement&&s!==document.body&&(o.top-=s.scrollTop,o.left-=s.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return getNodeOffset(e.offsetParent,t,o)}return o}function isPx(e){return e&&/^\d+(px)?$/.test(e)}function isScale(e){return e&&/^\d+%$/.test(e)}function hasClass(e,t){return e&&e.className&&e.className.match&&e.className.match(getClsRE(t))}function removeClass(e,t){e&&hasClass(e,t)&&(e.className=e.className.replace(getClsRE(t),""))}function addClass(e,t){e&&!hasClass(e,t)&&(removeClass(e,t),e.className=e.className+" "+t)}function toCssUnit(e,t="px"){return _xeUtils.default.isNumber(e)||/^\d+$/.test(""+e)?""+e+t:""+(e||"")}function getDomNode(){var e=document.documentElement,t=document.body;return{scrollTop:e.scrollTop||t.scrollTop,scrollLeft:e.scrollLeft||t.scrollLeft,visibleHeight:e.clientHeight||t.clientHeight,visibleWidth:e.clientWidth||t.clientWidth}}function getOffsetHeight(e){return e?e.offsetHeight:0}function getPaddingTopBottomSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingTop)+_xeUtils.default.toNumber(e.paddingBottom)):0}function setScrollTop(e,t){e&&(e.scrollTop=t)}function setScrollLeft(e,t){e&&(e.scrollLeft=t)}function updateCellTitle(e,t){t="html"===t.type?e.innerText:e.textContent;e.getAttribute("title")!==t&&e.setAttribute("title",t)}function getEventTargetNode(e,t,o,s){let l,n=e.target.shadowRoot&&e.composed&&e.composedPath()[0]||e.target;for(;n&&n.nodeType&&n!==document;){if(o&&hasClass(n,o)&&(!s||s(n)))l=n;else if(n===t)return{flag:!o||!!l,container:t,targetElem:l};n=n.parentNode}return{flag:!1}}function getOffsetPos(e,t){return getNodeOffset(e,t,{left:0,top:0})}function getAbsolutePos(e){var e=e.getBoundingClientRect(),t=e.top,e=e.left,{scrollTop:o,scrollLeft:s,visibleHeight:l,visibleWidth:n}=getDomNode();return{boundingTop:t,top:o+t,boundingLeft:e,left:s+e,visibleHeight:l,visibleWidth:n}}let scrollIntoViewIfNeeded="scrollIntoViewIfNeeded",scrollIntoView="scrollIntoView";function scrollToView(e){e&&(e[scrollIntoViewIfNeeded]?e[scrollIntoViewIfNeeded]():e[scrollIntoView]&&e[scrollIntoView]())}function triggerEvent(e,t){e&&e.dispatchEvent(new Event(t))}function isNodeElement(e){return e&&1===e.nodeType}
|
package/lib/ui/src/log.js
CHANGED
|
@@ -8,6 +8,6 @@ var _core = require("@vxe-ui/core");
|
|
|
8
8
|
const {
|
|
9
9
|
log
|
|
10
10
|
} = _core.VxeUI;
|
|
11
|
-
const version = `table v${"4.12.
|
|
11
|
+
const version = `table v${"4.12.3"}`;
|
|
12
12
|
const warnLog = exports.warnLog = log.create('warn', version);
|
|
13
13
|
const errLog = exports.errLog = log.create('error', version);
|
package/lib/ui/src/log.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v4.12.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v4.12.3",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxe-table",
|
|
3
|
-
"version": "4.12.
|
|
3
|
+
"version": "4.12.3",
|
|
4
4
|
"description": "一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟树、拖拽排序,懒加载、快捷菜单、数据校验、树形结构、打印、导入导出、自定义模板、渲染器、JSON 配置式...",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"update": "npm install --legacy-peer-deps",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"style": "lib/style.css",
|
|
29
29
|
"typings": "types/index.d.ts",
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"vxe-pc-ui": "^4.5.
|
|
31
|
+
"vxe-pc-ui": "^4.5.8"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/resize-observer-browser": "^0.1.11",
|
|
@@ -3,7 +3,7 @@ import XEUtils from 'xe-utils'
|
|
|
3
3
|
import { VxeUI } from '../../../ui'
|
|
4
4
|
import { isEnableConf } from '../../../ui/src/utils'
|
|
5
5
|
import { getCellValue, setCellValue, getRowid } from '../../src/util'
|
|
6
|
-
import {
|
|
6
|
+
import { removeClass, addClass } from '../../../ui/src/dom'
|
|
7
7
|
import { warnLog, errLog } from '../../../ui/src/log'
|
|
8
8
|
|
|
9
9
|
import type { TableEditMethods, TableEditPrivateMethods, VxeTableDefines } from '../../../../types'
|
|
@@ -18,6 +18,8 @@ hooks.add('tableEditModule', {
|
|
|
18
18
|
const { refElem } = $xeTable.getRefMaps()
|
|
19
19
|
const { computeMouseOpts, computeEditOpts, computeCheckboxOpts, computeTreeOpts, computeValidOpts } = $xeTable.getComputeMaps()
|
|
20
20
|
|
|
21
|
+
const browseObj = XEUtils.browse()
|
|
22
|
+
|
|
21
23
|
let editMethods = {} as TableEditMethods
|
|
22
24
|
let editPrivateMethods = {} as TableEditPrivateMethods
|
|
23
25
|
|
|
@@ -879,7 +881,7 @@ hooks.add('tableEditModule', {
|
|
|
879
881
|
inputElem.select()
|
|
880
882
|
} else {
|
|
881
883
|
// 保持一致行为,光标移到末端
|
|
882
|
-
if (
|
|
884
|
+
if (browseObj.msie) {
|
|
883
885
|
const textRange = inputElem.createTextRange()
|
|
884
886
|
textRange.collapse(false)
|
|
885
887
|
textRange.select()
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import XEUtils from 'xe-utils'
|
|
2
2
|
import { VxeUI } from '../../../ui'
|
|
3
3
|
import { getRefElem } from '../../src/util'
|
|
4
|
-
import {
|
|
4
|
+
import { hasClass, getAbsolutePos, addClass, removeClass } from '../../../ui/src/dom'
|
|
5
5
|
|
|
6
6
|
import type { TableKeyboardPrivateMethods, VxeTableDefines } from '../../../../types'
|
|
7
7
|
|
|
8
8
|
const { hooks } = VxeUI
|
|
9
9
|
|
|
10
|
+
const browseObj = XEUtils.browse()
|
|
11
|
+
|
|
10
12
|
function getTargetOffset (target: any, container: any) {
|
|
11
13
|
let offsetTop = 0
|
|
12
14
|
let offsetLeft = 0
|
|
13
|
-
const triggerCheckboxLabel = !
|
|
15
|
+
const triggerCheckboxLabel = !browseObj.firefox && hasClass(target, 'vxe-checkbox--label')
|
|
14
16
|
if (triggerCheckboxLabel) {
|
|
15
17
|
const checkboxLabelStyle = getComputedStyle(target)
|
|
16
18
|
offsetTop -= XEUtils.toNumber(checkboxLabelStyle.paddingTop)
|
|
@@ -140,7 +140,7 @@ hooks.add('tableMenuModule', {
|
|
|
140
140
|
}
|
|
141
141
|
ctxMenuStore[property] = selectItem || menuList[0]
|
|
142
142
|
} else if (ctxMenuStore[property] && (globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.ENTER) || globalEvents.hasKey(evnt, GLOBAL_EVENT_KEYS.SPACEBAR))) {
|
|
143
|
-
|
|
143
|
+
$xeTable.ctxMenuLinkEvent(evnt, ctxMenuStore[property])
|
|
144
144
|
}
|
|
145
145
|
},
|
|
146
146
|
handleOpenMenuEvent,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, h, ComponentPublicInstance, reactive, ref, Ref, provide, inject, nextTick, onActivated, onDeactivated, onBeforeUnmount, onUnmounted, watch, computed, onMounted } from 'vue'
|
|
2
2
|
import XEUtils from 'xe-utils'
|
|
3
|
-
import {
|
|
3
|
+
import { initTpImg, getTpImg, isPx, isScale, hasClass, addClass, removeClass, getEventTargetNode, getPaddingTopBottomSize, getOffsetPos, setScrollTop, setScrollLeft, toCssUnit } from '../../ui/src/dom'
|
|
4
4
|
import { getLastZIndex, nextZIndex, hasChildrenList, getFuncText, isEnableConf, formatText, eqEmptyValue } from '../../ui/src/utils'
|
|
5
5
|
import { VxeUI } from '../../ui'
|
|
6
6
|
import Cell from './cell'
|
|
@@ -37,6 +37,8 @@ export default defineComponent({
|
|
|
37
37
|
|
|
38
38
|
const xID = XEUtils.uniqueId()
|
|
39
39
|
|
|
40
|
+
const browseObj = XEUtils.browse()
|
|
41
|
+
|
|
40
42
|
// 使用已安装的组件,如果未安装则不渲染
|
|
41
43
|
const VxeUILoadingComponent = VxeUI.getComponent<VxeLoadingComponent>('VxeLoading')
|
|
42
44
|
const VxeUITooltipComponent = VxeUI.getComponent<VxeTooltipComponent>('VxeTooltip')
|
|
@@ -1949,11 +1951,11 @@ export default defineComponent({
|
|
|
1949
1951
|
}
|
|
1950
1952
|
if (xLeftCornerEl) {
|
|
1951
1953
|
xLeftCornerEl.style.width = scrollbarXToTop ? `${osbWidth}px` : ''
|
|
1952
|
-
xLeftCornerEl.style.display = scrollbarXToTop ? (
|
|
1954
|
+
xLeftCornerEl.style.display = scrollbarXToTop ? (overflowX && osbHeight ? 'block' : '') : ''
|
|
1953
1955
|
}
|
|
1954
1956
|
if (xRightCornerEl) {
|
|
1955
1957
|
xRightCornerEl.style.width = scrollbarXToTop ? '' : `${osbWidth}px`
|
|
1956
|
-
xRightCornerEl.style.display = scrollbarXToTop ? '' : (
|
|
1958
|
+
xRightCornerEl.style.display = scrollbarXToTop ? '' : (overflowX && osbHeight ? 'block' : '')
|
|
1957
1959
|
}
|
|
1958
1960
|
|
|
1959
1961
|
const scrollYVirtualEl = refScrollYVirtualElem.value
|
|
@@ -1965,7 +1967,7 @@ export default defineComponent({
|
|
|
1965
1967
|
const yTopCornerEl = refScrollYTopCornerElem.value
|
|
1966
1968
|
if (yTopCornerEl) {
|
|
1967
1969
|
yTopCornerEl.style.height = `${headerHeight}px`
|
|
1968
|
-
yTopCornerEl.style.display = headerHeight ? 'block' : ''
|
|
1970
|
+
yTopCornerEl.style.display = overflowY && headerHeight ? 'block' : ''
|
|
1969
1971
|
}
|
|
1970
1972
|
const yWrapperEl = refScrollYWrapperElem.value
|
|
1971
1973
|
if (yWrapperEl) {
|
|
@@ -1976,7 +1978,7 @@ export default defineComponent({
|
|
|
1976
1978
|
if (yBottomCornerEl) {
|
|
1977
1979
|
yBottomCornerEl.style.height = `${footerHeight}px`
|
|
1978
1980
|
yBottomCornerEl.style.top = `${headerHeight + bodyHeight}px`
|
|
1979
|
-
yBottomCornerEl.style.display = footerHeight ? 'block' : ''
|
|
1981
|
+
yBottomCornerEl.style.display = overflowY && footerHeight ? 'block' : ''
|
|
1980
1982
|
}
|
|
1981
1983
|
|
|
1982
1984
|
const rowExpandEl = refRowExpandElem.value
|
|
@@ -2105,7 +2107,7 @@ export default defineComponent({
|
|
|
2105
2107
|
if (tableElem) {
|
|
2106
2108
|
tableElem.style.width = tWidth ? `${tWidth}px` : ''
|
|
2107
2109
|
// 兼容性处理
|
|
2108
|
-
tableElem.style.paddingRight = osbWidth && fixedType && (
|
|
2110
|
+
tableElem.style.paddingRight = osbWidth && fixedType && (browseObj['-moz'] || browseObj.safari) ? `${osbWidth}px` : ''
|
|
2109
2111
|
}
|
|
2110
2112
|
const emptyBlockElem = getRefElem(elemStore[`${name}-${layout}-emptyBlock`])
|
|
2111
2113
|
if (emptyBlockElem) {
|
|
@@ -6229,8 +6231,8 @@ export default defineComponent({
|
|
|
6229
6231
|
const handleGlobalKeydownEvent = (evnt: KeyboardEvent) => {
|
|
6230
6232
|
// 该行为只对当前激活的表格有效
|
|
6231
6233
|
if (internalData.isActivated) {
|
|
6232
|
-
|
|
6233
|
-
const { mouseConfig, keyboardConfig, treeConfig, editConfig, highlightCurrentRow } = props
|
|
6234
|
+
$xeTable.preventEvent(evnt, 'event.keydown', null, () => {
|
|
6235
|
+
const { mouseConfig, keyboardConfig, treeConfig, editConfig, highlightCurrentRow, highlightCurrentColumn } = props
|
|
6234
6236
|
const { ctxMenuStore, editStore, currentRow } = reactData
|
|
6235
6237
|
const { afterFullData } = internalData
|
|
6236
6238
|
const isMenu = computeIsMenu.value
|
|
@@ -6241,6 +6243,7 @@ export default defineComponent({
|
|
|
6241
6243
|
const treeOpts = computeTreeOpts.value
|
|
6242
6244
|
const menuList = computeMenuList.value
|
|
6243
6245
|
const rowOpts = computeRowOpts.value
|
|
6246
|
+
const columnOpts = computeColumnOpts.value
|
|
6244
6247
|
const { selected, actived } = editStore
|
|
6245
6248
|
const childrenField = treeOpts.children || treeOpts.childrenField
|
|
6246
6249
|
const keyCode = evnt.keyCode
|
|
@@ -6279,7 +6282,7 @@ export default defineComponent({
|
|
|
6279
6282
|
if ($xeTable.closeMenu) {
|
|
6280
6283
|
$xeTable.closeMenu()
|
|
6281
6284
|
}
|
|
6282
|
-
|
|
6285
|
+
$xeTable.closeFilter()
|
|
6283
6286
|
if (keyboardConfig && keyboardOpts.isEsc) {
|
|
6284
6287
|
// 如果是激活编辑状态,则取消编辑
|
|
6285
6288
|
if (actived.row) {
|
|
@@ -6385,20 +6388,29 @@ export default defineComponent({
|
|
|
6385
6388
|
const params = {
|
|
6386
6389
|
$table: $xeTable,
|
|
6387
6390
|
row: targetRow,
|
|
6388
|
-
rowIndex:
|
|
6389
|
-
$rowIndex:
|
|
6391
|
+
rowIndex: $xeTable.getRowIndex(targetRow),
|
|
6392
|
+
$rowIndex: $xeTable.getVMRowIndex(targetRow)
|
|
6390
6393
|
}
|
|
6391
|
-
|
|
6392
|
-
.then(() =>
|
|
6393
|
-
.then(() =>
|
|
6394
|
+
$xeTable.setTreeExpand(currentRow, true)
|
|
6395
|
+
.then(() => $xeTable.scrollToRow(targetRow))
|
|
6396
|
+
.then(() => $xeTable.triggerCurrentRowEvent(evnt, params))
|
|
6394
6397
|
}
|
|
6395
6398
|
}
|
|
6396
6399
|
}
|
|
6397
6400
|
} else if (operArrow && keyboardConfig && keyboardOpts.isArrow) {
|
|
6398
6401
|
if (!isEditStatus) {
|
|
6399
6402
|
// 如果按下了方向键
|
|
6400
|
-
if (selected.row && selected.column) {
|
|
6403
|
+
if (mouseOpts.selected && selected.row && selected.column) {
|
|
6401
6404
|
$xeTable.moveArrowSelected(selected.args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt)
|
|
6405
|
+
} else {
|
|
6406
|
+
// 当前行按键上下移动
|
|
6407
|
+
if ((isUpArrow || isDwArrow) && (rowOpts.isCurrent || highlightCurrentRow)) {
|
|
6408
|
+
$xeTable.moveCurrentRow(isUpArrow, isDwArrow, evnt)
|
|
6409
|
+
}
|
|
6410
|
+
// 当前行按键左右移动
|
|
6411
|
+
if ((isLeftArrow || isRightArrow) && (columnOpts.isCurrent || highlightCurrentColumn)) {
|
|
6412
|
+
$xeTable.moveCurrentColumn(isLeftArrow, isRightArrow, evnt)
|
|
6413
|
+
}
|
|
6402
6414
|
}
|
|
6403
6415
|
}
|
|
6404
6416
|
} else if (isTab && keyboardConfig && keyboardOpts.isTab) {
|
|
@@ -6439,9 +6451,9 @@ export default defineComponent({
|
|
|
6439
6451
|
if (keyboardOpts.isDel && isEnableConf(editConfig) && (selected.row || selected.column)) {
|
|
6440
6452
|
const params = {
|
|
6441
6453
|
row: selected.row,
|
|
6442
|
-
rowIndex:
|
|
6454
|
+
rowIndex: $xeTable.getRowIndex(selected.row),
|
|
6443
6455
|
column: selected.column,
|
|
6444
|
-
columnIndex:
|
|
6456
|
+
columnIndex: $xeTable.getColumnIndex(selected.column),
|
|
6445
6457
|
$table: $xeTable,
|
|
6446
6458
|
$grid: $xeGrid
|
|
6447
6459
|
}
|
|
@@ -6464,14 +6476,14 @@ export default defineComponent({
|
|
|
6464
6476
|
evnt.preventDefault()
|
|
6465
6477
|
const params = {
|
|
6466
6478
|
row: parentRow,
|
|
6467
|
-
rowIndex:
|
|
6468
|
-
$rowIndex:
|
|
6479
|
+
rowIndex: $xeTable.getRowIndex(parentRow),
|
|
6480
|
+
$rowIndex: $xeTable.getVMRowIndex(parentRow),
|
|
6469
6481
|
$table: $xeTable,
|
|
6470
6482
|
$grid: $xeGrid
|
|
6471
6483
|
}
|
|
6472
|
-
|
|
6473
|
-
.then(() =>
|
|
6474
|
-
.then(() =>
|
|
6484
|
+
$xeTable.setTreeExpand(parentRow, false)
|
|
6485
|
+
.then(() => $xeTable.scrollToRow(parentRow))
|
|
6486
|
+
.then(() => $xeTable.triggerCurrentRowEvent(evnt, params))
|
|
6475
6487
|
}
|
|
6476
6488
|
} else if (keyboardConfig && isEnableConf(editConfig) && keyboardOpts.isEdit && !hasCtrlKey && !hasMetaKey && (isSpacebar || (keyCode >= 48 && keyCode <= 57) || (keyCode >= 65 && keyCode <= 90) || (keyCode >= 96 && keyCode <= 111) || (keyCode >= 186 && keyCode <= 192) || (keyCode >= 219 && keyCode <= 222))) {
|
|
6477
6489
|
const { editMode, editMethod } = keyboardOpts
|
|
@@ -6484,9 +6496,9 @@ export default defineComponent({
|
|
|
6484
6496
|
const beforeEditMethod = editOpts.beforeEditMethod || editOpts.activeMethod
|
|
6485
6497
|
const params = {
|
|
6486
6498
|
row: selected.row,
|
|
6487
|
-
rowIndex:
|
|
6499
|
+
rowIndex: $xeTable.getRowIndex(selected.row),
|
|
6488
6500
|
column: selected.column,
|
|
6489
|
-
columnIndex:
|
|
6501
|
+
columnIndex: $xeTable.getColumnIndex(selected.column),
|
|
6490
6502
|
$table: $xeTable,
|
|
6491
6503
|
$grid: $xeGrid
|
|
6492
6504
|
}
|
|
@@ -6776,7 +6788,7 @@ export default defineComponent({
|
|
|
6776
6788
|
* @param {Event} evnt 事件
|
|
6777
6789
|
* @param {Row} row 行对象
|
|
6778
6790
|
*/
|
|
6779
|
-
const handleTooltip = (evnt: MouseEvent, tdEl: HTMLTableCellElement, overflowElem: HTMLElement | null, params: any) => {
|
|
6791
|
+
const handleTooltip = (evnt: MouseEvent, tdEl: HTMLTableCellElement, overflowElem: HTMLElement | null, tipElem: HTMLElement | null, params: any) => {
|
|
6780
6792
|
const tipOverEl = overflowElem || tdEl
|
|
6781
6793
|
if (!tipOverEl) {
|
|
6782
6794
|
return nextTick()
|
|
@@ -6789,7 +6801,8 @@ export default defineComponent({
|
|
|
6789
6801
|
const customContent = contentMethod ? contentMethod(params) : null
|
|
6790
6802
|
const useCustom = contentMethod && !XEUtils.eqNull(customContent)
|
|
6791
6803
|
const content = useCustom ? customContent : XEUtils.toString(column.type === 'html' ? tipOverEl.innerText : tipOverEl.textContent).trim()
|
|
6792
|
-
|
|
6804
|
+
const isOver = tipOverEl.scrollWidth > tipOverEl.clientWidth
|
|
6805
|
+
if (content && (showAll || useCustom || isOver)) {
|
|
6793
6806
|
Object.assign(tooltipStore, {
|
|
6794
6807
|
row,
|
|
6795
6808
|
column,
|
|
@@ -6799,7 +6812,7 @@ export default defineComponent({
|
|
|
6799
6812
|
nextTick(() => {
|
|
6800
6813
|
const $tooltip = refTooltip.value
|
|
6801
6814
|
if ($tooltip && $tooltip.open) {
|
|
6802
|
-
$tooltip.open(tipOverEl, formatText(content))
|
|
6815
|
+
$tooltip.open(isOver ? tipOverEl : tipElem, formatText(content))
|
|
6803
6816
|
}
|
|
6804
6817
|
})
|
|
6805
6818
|
}
|
|
@@ -7760,7 +7773,7 @@ export default defineComponent({
|
|
|
7760
7773
|
return
|
|
7761
7774
|
}
|
|
7762
7775
|
if (tooltipStore.column !== column || !tooltipStore.visible) {
|
|
7763
|
-
handleTooltip(evnt, thEl, thEl.querySelector<HTMLElement>('.vxe-cell--title') || cellEl, params)
|
|
7776
|
+
handleTooltip(evnt, thEl, thEl.querySelector<HTMLElement>('.vxe-cell--wrapper'), thEl.querySelector<HTMLElement>('.vxe-cell--title') || cellEl, params)
|
|
7764
7777
|
}
|
|
7765
7778
|
},
|
|
7766
7779
|
/**
|
|
@@ -7787,7 +7800,7 @@ export default defineComponent({
|
|
|
7787
7800
|
}
|
|
7788
7801
|
}
|
|
7789
7802
|
if (tooltipStore.column !== column || tooltipStore.row !== row || !tooltipStore.visible) {
|
|
7790
|
-
handleTooltip(evnt, tdEl, tdEl.querySelector<HTMLElement>('.vxe-cell--label') || tdEl.querySelector<HTMLElement>('.vxe-cell--wrapper'), params)
|
|
7803
|
+
handleTooltip(evnt, tdEl, tdEl.querySelector<HTMLElement>('.vxe-cell--wrapper'), tdEl.querySelector<HTMLElement>('.vxe-cell--label') || tdEl.querySelector<HTMLElement>('.vxe-cell--wrapper'), params)
|
|
7791
7804
|
}
|
|
7792
7805
|
},
|
|
7793
7806
|
/**
|
|
@@ -7799,7 +7812,7 @@ export default defineComponent({
|
|
|
7799
7812
|
const tdEl = evnt.currentTarget as HTMLTableCellElement
|
|
7800
7813
|
handleTargetEnterEvent(tooltipStore.column !== column || !!tooltipStore.row)
|
|
7801
7814
|
if (tooltipStore.column !== column || !tooltipStore.visible) {
|
|
7802
|
-
handleTooltip(evnt, tdEl, tdEl.querySelector<HTMLElement>('.vxe-cell--label') || tdEl.querySelector('.vxe-cell--wrapper') as HTMLElement, params)
|
|
7815
|
+
handleTooltip(evnt, tdEl, tdEl.querySelector<HTMLElement>('.vxe-cell--wrapper'), tdEl.querySelector<HTMLElement>('.vxe-cell--label') || tdEl.querySelector('.vxe-cell--wrapper') as HTMLElement, params)
|
|
7803
7816
|
}
|
|
7804
7817
|
},
|
|
7805
7818
|
handleTargetLeaveEvent () {
|
|
@@ -9351,6 +9364,7 @@ export default defineComponent({
|
|
|
9351
9364
|
updateScrollXSpace () {
|
|
9352
9365
|
const { isGroup, scrollXLoad, overflowX, scrollXWidth } = reactData
|
|
9353
9366
|
const { visibleColumn, scrollXStore, elemStore, fullColumnIdData } = internalData
|
|
9367
|
+
const mouseOpts = computeMouseOpts.value
|
|
9354
9368
|
const tableBody = refTableBody.value
|
|
9355
9369
|
const tableBodyElem = tableBody ? tableBody.$el as HTMLDivElement : null
|
|
9356
9370
|
if (tableBodyElem) {
|
|
@@ -9414,6 +9428,10 @@ export default defineComponent({
|
|
|
9414
9428
|
if (scrollXSpaceEl) {
|
|
9415
9429
|
scrollXSpaceEl.style.width = `${ySpaceWidth}px`
|
|
9416
9430
|
}
|
|
9431
|
+
|
|
9432
|
+
if (isScrollXBig && mouseOpts.area) {
|
|
9433
|
+
errLog('vxe.error.notProp', ['mouse-config.area'])
|
|
9434
|
+
}
|
|
9417
9435
|
nextTick(() => {
|
|
9418
9436
|
updateStyle()
|
|
9419
9437
|
})
|
|
@@ -9424,6 +9442,7 @@ export default defineComponent({
|
|
|
9424
9442
|
const { isAllOverflow, scrollYLoad, expandColumn } = reactData
|
|
9425
9443
|
const { scrollYStore, elemStore, isResizeCellHeight, afterFullData, fullAllDataRowIdData, rowExpandedMaps } = internalData
|
|
9426
9444
|
const { startIndex } = scrollYStore
|
|
9445
|
+
const mouseOpts = computeMouseOpts.value
|
|
9427
9446
|
const expandOpts = computeExpandOpts.value
|
|
9428
9447
|
const rowOpts = computeRowOpts.value
|
|
9429
9448
|
const cellOpts = computeCellOpts.value
|
|
@@ -9505,6 +9524,10 @@ export default defineComponent({
|
|
|
9505
9524
|
reactData.scrollYTop = scrollYTop
|
|
9506
9525
|
reactData.scrollYHeight = scrollYHeight
|
|
9507
9526
|
reactData.isScrollYBig = isScrollYBig
|
|
9527
|
+
|
|
9528
|
+
if (isScrollYBig && mouseOpts.area) {
|
|
9529
|
+
errLog('vxe.error.notProp', ['mouse-config.area'])
|
|
9530
|
+
}
|
|
9508
9531
|
return nextTick().then(() => {
|
|
9509
9532
|
updateStyle()
|
|
9510
9533
|
})
|
|
@@ -10316,6 +10339,9 @@ export default defineComponent({
|
|
|
10316
10339
|
watch(computeScrollbarYToLeft, () => {
|
|
10317
10340
|
reLayoutFlag.value++
|
|
10318
10341
|
})
|
|
10342
|
+
watch(() => VxeUI.getLanguage(), () => {
|
|
10343
|
+
reLayoutFlag.value++
|
|
10344
|
+
})
|
|
10319
10345
|
watch(reLayoutFlag, () => {
|
|
10320
10346
|
nextTick(() => tableMethods.recalculate(true))
|
|
10321
10347
|
})
|
package/packages/ui/src/dom.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|