vxe-table 3.4.5 → 3.4.7-beta.2
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/README.en.md +1 -1
- package/README.md +1 -1
- package/README.zh-TW.md +1 -1
- package/lib/button/src/button.js +15 -14
- package/lib/button/src/button.min.js +1 -1
- package/lib/edit/src/mixin.js +19 -25
- package/lib/edit/src/mixin.min.js +1 -1
- package/lib/export/src/mixin.js +25 -10
- package/lib/export/src/mixin.min.js +1 -1
- package/lib/filter/src/mixin.js +25 -1
- package/lib/filter/src/mixin.min.js +1 -1
- package/lib/grid/src/grid.js +6 -3
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +713 -423
- package/lib/index.umd.min.js +1 -1
- package/lib/select/src/select.js +1 -1
- package/lib/select/src/select.min.js +1 -1
- package/lib/table/src/body.js +9 -17
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +16 -17
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/methods.js +503 -317
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +6 -6
- package/lib/table/src/util.js +7 -0
- package/lib/table/src/util.min.js +1 -1
- package/lib/tools/src/dom.js +2 -9
- package/lib/tools/src/dom.min.js +1 -1
- package/lib/tools/src/utils.js +1 -1
- package/lib/tools/src/utils.min.js +1 -1
- package/lib/v-x-e-table/src/conf.js +5 -1
- package/lib/v-x-e-table/src/conf.min.js +1 -1
- package/package.json +3 -3
- package/packages/button/src/button.js +14 -14
- package/packages/edit/src/mixin.js +18 -21
- package/packages/export/src/mixin.js +17 -6
- package/packages/filter/src/mixin.js +20 -1
- package/packages/grid/src/grid.js +6 -2
- package/packages/select/src/select.js +1 -1
- package/packages/table/src/body.js +12 -16
- package/packages/table/src/cell.js +15 -15
- package/packages/table/src/methods.js +149 -47
- package/packages/table/src/table.js +6 -6
- package/packages/table/src/util.js +4 -0
- package/packages/tools/src/dom.js +2 -7
- package/packages/tools/src/utils.js +1 -1
- package/packages/v-x-e-table/src/conf.js +5 -1
package/README.en.md
CHANGED
|
@@ -79,7 +79,7 @@ A [vue](https://www.npmjs.com/package/vue) based PC form component, support add,
|
|
|
79
79
|
Version:[vue](https://www.npmjs.com/package/vue) 2.6.x, Dependent: [xe-utils](https://www.npmjs.com/package/xe-utils)
|
|
80
80
|
|
|
81
81
|
```shell
|
|
82
|
-
npm install xe-utils vxe-table
|
|
82
|
+
npm install xe-utils vxe-table@3
|
|
83
83
|
```
|
|
84
84
|
|
|
85
85
|
Get on [unpkg](https://unpkg.com/vxe-table/) and [cdnjs](https://cdn.jsdelivr.net/npm/vxe-table/)
|
package/README.md
CHANGED
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
版本:[vue](https://www.npmjs.com/package/vue) 2.6.x, 依赖库:[xe-utils](https://www.npmjs.com/package/xe-utils)
|
|
84
84
|
|
|
85
85
|
```shell
|
|
86
|
-
npm install xe-utils vxe-table
|
|
86
|
+
npm install xe-utils vxe-table@3
|
|
87
87
|
```
|
|
88
88
|
|
|
89
89
|
Get on [unpkg](https://unpkg.com/vxe-table/) and [cdnjs](https://cdn.jsdelivr.net/npm/vxe-table/)
|
package/README.zh-TW.md
CHANGED
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
版本:[vue](https://www.npmjs.com/package/vue) 2.6.x, 依賴庫:[xe-utils](https://www.npmjs.com/package/xe-utils)
|
|
84
84
|
|
|
85
85
|
```shell
|
|
86
|
-
npm install xe-utils vxe-table
|
|
86
|
+
npm install xe-utils vxe-table@3
|
|
87
87
|
```
|
|
88
88
|
|
|
89
89
|
Get on [unpkg](https://unpkg.com/vxe-table/) and [cdnjs](https://cdn.jsdelivr.net/npm/vxe-table/)
|
package/lib/button/src/button.js
CHANGED
|
@@ -324,48 +324,49 @@ var _default2 = {
|
|
|
324
324
|
};
|
|
325
325
|
|
|
326
326
|
var _DomTools$getAbsolute = _tools.DomTools.getAbsolutePos(targetElem),
|
|
327
|
+
top = _DomTools$getAbsolute.top,
|
|
328
|
+
left = _DomTools$getAbsolute.left,
|
|
327
329
|
boundingTop = _DomTools$getAbsolute.boundingTop,
|
|
328
|
-
boundingLeft = _DomTools$getAbsolute.boundingLeft,
|
|
329
330
|
visibleHeight = _DomTools$getAbsolute.visibleHeight,
|
|
330
331
|
visibleWidth = _DomTools$getAbsolute.visibleWidth;
|
|
331
332
|
|
|
332
333
|
var panelPlacement = 'bottom';
|
|
333
334
|
|
|
334
335
|
if (transfer) {
|
|
335
|
-
var
|
|
336
|
-
var
|
|
336
|
+
var btnLeft = left + targetWidth - panelWidth;
|
|
337
|
+
var btnTop = top + targetHeight;
|
|
337
338
|
|
|
338
339
|
if (placement === 'top') {
|
|
339
340
|
panelPlacement = 'top';
|
|
340
|
-
|
|
341
|
+
btnTop = top - panelHeight;
|
|
341
342
|
} else if (!placement) {
|
|
342
343
|
// 如果下面不够放,则向上
|
|
343
|
-
if (
|
|
344
|
+
if (boundingTop + targetHeight + panelHeight + marginSize > visibleHeight) {
|
|
344
345
|
panelPlacement = 'top';
|
|
345
|
-
|
|
346
|
+
btnTop = top - panelHeight;
|
|
346
347
|
} // 如果上面不够放,则向下(优先)
|
|
347
348
|
|
|
348
349
|
|
|
349
|
-
if (
|
|
350
|
+
if (btnTop < marginSize) {
|
|
350
351
|
panelPlacement = 'bottom';
|
|
351
|
-
|
|
352
|
+
btnTop = top + targetHeight;
|
|
352
353
|
}
|
|
353
354
|
} // 如果溢出右边
|
|
354
355
|
|
|
355
356
|
|
|
356
|
-
if (
|
|
357
|
-
|
|
357
|
+
if (btnLeft + panelWidth + marginSize > visibleWidth) {
|
|
358
|
+
btnLeft -= btnLeft + panelWidth + marginSize - visibleWidth;
|
|
358
359
|
} // 如果溢出左边
|
|
359
360
|
|
|
360
361
|
|
|
361
|
-
if (
|
|
362
|
-
|
|
362
|
+
if (btnLeft < marginSize) {
|
|
363
|
+
btnLeft = marginSize;
|
|
363
364
|
}
|
|
364
365
|
|
|
365
366
|
Object.assign(panelStyle, {
|
|
366
|
-
left: "".concat(
|
|
367
|
+
left: "".concat(btnLeft, "px"),
|
|
367
368
|
right: 'auto',
|
|
368
|
-
top: "".concat(
|
|
369
|
+
top: "".concat(btnTop, "px"),
|
|
369
370
|
minWidth: "".concat(targetWidth, "px")
|
|
370
371
|
});
|
|
371
372
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_tools=require("../../tools");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var _default2={name:"VxeButton",mixins:[_size.default],props:{type:String,size:{type:String,default:function(){return _conf.default.button.size||_conf.default.size}},name:[String,Number],content:String,placement:String,status:String,icon:String,round:Boolean,circle:Boolean,disabled:Boolean,loading:Boolean,destroyOnClose:Boolean,className:String,transfer:{type:Boolean,default:function(){return _conf.default.button.transfer}}},data:function(){return{inited:!1,showPanel:!1,animatVisible:!1,panelIndex:0,panelStyle:null,panelPlacement:null}},computed:{isText:function(){return"text"===this.type},isFormBtn:function(){return-1<["submit","reset","button"].indexOf(this.type)},btnType:function(){return this.isText?this.type:"button"}},created:function(){_tools.GlobalEvent.on(this,"mousewheel",this.handleGlobalMousewheelEvent)},beforeDestroy:function(){var e=this.$refs.panel;e&&e.parentNode&&e.parentNode.removeChild(e)},destroyed:function(){_tools.GlobalEvent.off(this,"mousewheel")},render:function(e){var n=this,t=this.$scopedSlots,o=this.$listeners,i=this.className,s=this.inited,a=this.type,r=this.destroyOnClose,l=this.isFormBtn,u=this.status,c=this.btnType,d=this.vSize,f=this.name,p=this.disabled,h=this.loading,m=this.showPanel,v=this.animatVisible,b=this.panelPlacement,_=t.dropdowns;return _?e("div",{class:["vxe-button--dropdown",i,(_defineProperty(t={},"size--".concat(d),d),_defineProperty(t,"is--active",m),t)]},[e("button",{ref:"xBtn",class:["vxe-button","type--".concat(c),(_defineProperty(t={},"size--".concat(d),d),_defineProperty(t,"theme--".concat(u),u),_defineProperty(t,"is--round",this.round),_defineProperty(t,"is--circle",this.circle),_defineProperty(t,"is--disabled",p||h),_defineProperty(t,"is--loading",h),t)],attrs:{name:f,type:l?a:"button",disabled:p||h},on:Object.assign({mouseenter:this.mouseenterTargetEvent,mouseleave:this.mouseleaveEvent},_xeUtils.default.objectMap(o,function(e,t){return function(e){return n.$emit(t,{$event:e})}}))},this.renderContent(e).concat([e("i",{class:"vxe-button--dropdown-arrow ".concat(_conf.default.icon.BUTTON_DROPDOWN)})])),e("div",{ref:"panel",class:["vxe-button--dropdown-panel",(_defineProperty(t={},"size--".concat(d),d),_defineProperty(t,"animat--leave",v),_defineProperty(t,"animat--enter",m),t)],attrs:{placement:b},style:this.panelStyle},s?[e("div",{class:"vxe-button--dropdown-wrapper",on:{mousedown:this.mousedownDropdownEvent,click:this.clickDropdownEvent,mouseenter:this.mouseenterEvent,mouseleave:this.mouseleaveEvent}},r&&!m?[]:_.call(this,{},e))]:null)]):e("button",{ref:"xBtn",class:["vxe-button","type--".concat(c),i,(_defineProperty(i={},"size--".concat(d),d),_defineProperty(i,"theme--".concat(u),u),_defineProperty(i,"is--round",this.round),_defineProperty(i,"is--circle",this.circle),_defineProperty(i,"is--disabled",p||h),_defineProperty(i,"is--loading",h),i)],attrs:{name:f,type:l?a:"button",disabled:p||h},on:_xeUtils.default.objectMap(o,function(e,t){return function(e){return n.$emit(t,{$event:e})}})},this.renderContent(e))},methods:{renderContent:function(e){var t=this.$scopedSlots,n=this.content,o=this.icon,i=[];return this.loading?i.push(e("i",{class:["vxe-button--loading-icon",_conf.default.icon.BUTTON_LOADING]})):o&&i.push(e("i",{class:["vxe-button--icon",o]})),t.default?i.push(e("span",{class:"vxe-button--content"},t.default.call(this))):n&&i.push(e("span",{class:"vxe-button--content"},[_tools.UtilTools.getFuncText(n)])),i},handleGlobalMousewheelEvent:function(e){this.showPanel&&!_tools.DomTools.getEventTargetNode(e,this.$refs.panel).flag&&this.closePanel()},updateZindex:function(){this.panelIndex<_tools.UtilTools.getLastZIndex()&&(this.panelIndex=_tools.UtilTools.nextZIndex())},mousedownDropdownEvent:function(e){0===e.button&&e.stopPropagation()},clickDropdownEvent:function(e){var t=this,n=e.currentTarget,o=this.$refs.panel,i=_tools.DomTools.getEventTargetNode(e,n,"vxe-button"),n=i.flag,i=i.targetElem;n&&(o&&(o.dataset.active="N"),this.showPanel=!1,setTimeout(function(){o&&"Y"===o.dataset.active||(t.animatVisible=!1)},350),this.$emit("dropdown-click",{name:i.getAttribute("name"),$event:e}))},mouseenterTargetEvent:function(){var e=this,t=this.$refs.panel;t.dataset.active="Y",this.inited||(this.inited=!0,this.transfer&&document.body.appendChild(t)),this.showTime=setTimeout(function(){"Y"===t.dataset.active?e.mouseenterEvent():e.animatVisible=!1},250)},mouseenterEvent:function(){var e=this,t=this.$refs.panel;t.dataset.active="Y",this.animatVisible=!0,setTimeout(function(){"Y"===t.dataset.active&&(e.showPanel=!0,e.updateZindex(),e.updatePlacement(),setTimeout(function(){e.showPanel&&e.updatePlacement()},50))},20)},mouseleaveEvent:function(){this.closePanel()},closePanel:function(){var e=this,t=this.$refs.panel;clearTimeout(this.showTime),t?(t.dataset.active="N",setTimeout(function(){"Y"!==t.dataset.active&&(e.showPanel=!1,setTimeout(function(){"Y"!==t.dataset.active&&(e.animatVisible=!1)},350))},100)):(this.animatVisible=!1,this.showPanel=!1)},updatePlacement:function(){var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_tools=require("../../tools");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var _default2={name:"VxeButton",mixins:[_size.default],props:{type:String,size:{type:String,default:function(){return _conf.default.button.size||_conf.default.size}},name:[String,Number],content:String,placement:String,status:String,icon:String,round:Boolean,circle:Boolean,disabled:Boolean,loading:Boolean,destroyOnClose:Boolean,className:String,transfer:{type:Boolean,default:function(){return _conf.default.button.transfer}}},data:function(){return{inited:!1,showPanel:!1,animatVisible:!1,panelIndex:0,panelStyle:null,panelPlacement:null}},computed:{isText:function(){return"text"===this.type},isFormBtn:function(){return-1<["submit","reset","button"].indexOf(this.type)},btnType:function(){return this.isText?this.type:"button"}},created:function(){_tools.GlobalEvent.on(this,"mousewheel",this.handleGlobalMousewheelEvent)},beforeDestroy:function(){var e=this.$refs.panel;e&&e.parentNode&&e.parentNode.removeChild(e)},destroyed:function(){_tools.GlobalEvent.off(this,"mousewheel")},render:function(e){var n=this,t=this.$scopedSlots,o=this.$listeners,i=this.className,s=this.inited,a=this.type,r=this.destroyOnClose,l=this.isFormBtn,u=this.status,c=this.btnType,d=this.vSize,f=this.name,p=this.disabled,h=this.loading,m=this.showPanel,v=this.animatVisible,b=this.panelPlacement,_=t.dropdowns;return _?e("div",{class:["vxe-button--dropdown",i,(_defineProperty(t={},"size--".concat(d),d),_defineProperty(t,"is--active",m),t)]},[e("button",{ref:"xBtn",class:["vxe-button","type--".concat(c),(_defineProperty(t={},"size--".concat(d),d),_defineProperty(t,"theme--".concat(u),u),_defineProperty(t,"is--round",this.round),_defineProperty(t,"is--circle",this.circle),_defineProperty(t,"is--disabled",p||h),_defineProperty(t,"is--loading",h),t)],attrs:{name:f,type:l?a:"button",disabled:p||h},on:Object.assign({mouseenter:this.mouseenterTargetEvent,mouseleave:this.mouseleaveEvent},_xeUtils.default.objectMap(o,function(e,t){return function(e){return n.$emit(t,{$event:e})}}))},this.renderContent(e).concat([e("i",{class:"vxe-button--dropdown-arrow ".concat(_conf.default.icon.BUTTON_DROPDOWN)})])),e("div",{ref:"panel",class:["vxe-button--dropdown-panel",(_defineProperty(t={},"size--".concat(d),d),_defineProperty(t,"animat--leave",v),_defineProperty(t,"animat--enter",m),t)],attrs:{placement:b},style:this.panelStyle},s?[e("div",{class:"vxe-button--dropdown-wrapper",on:{mousedown:this.mousedownDropdownEvent,click:this.clickDropdownEvent,mouseenter:this.mouseenterEvent,mouseleave:this.mouseleaveEvent}},r&&!m?[]:_.call(this,{},e))]:null)]):e("button",{ref:"xBtn",class:["vxe-button","type--".concat(c),i,(_defineProperty(i={},"size--".concat(d),d),_defineProperty(i,"theme--".concat(u),u),_defineProperty(i,"is--round",this.round),_defineProperty(i,"is--circle",this.circle),_defineProperty(i,"is--disabled",p||h),_defineProperty(i,"is--loading",h),i)],attrs:{name:f,type:l?a:"button",disabled:p||h},on:_xeUtils.default.objectMap(o,function(e,t){return function(e){return n.$emit(t,{$event:e})}})},this.renderContent(e))},methods:{renderContent:function(e){var t=this.$scopedSlots,n=this.content,o=this.icon,i=[];return this.loading?i.push(e("i",{class:["vxe-button--loading-icon",_conf.default.icon.BUTTON_LOADING]})):o&&i.push(e("i",{class:["vxe-button--icon",o]})),t.default?i.push(e("span",{class:"vxe-button--content"},t.default.call(this))):n&&i.push(e("span",{class:"vxe-button--content"},[_tools.UtilTools.getFuncText(n)])),i},handleGlobalMousewheelEvent:function(e){this.showPanel&&!_tools.DomTools.getEventTargetNode(e,this.$refs.panel).flag&&this.closePanel()},updateZindex:function(){this.panelIndex<_tools.UtilTools.getLastZIndex()&&(this.panelIndex=_tools.UtilTools.nextZIndex())},mousedownDropdownEvent:function(e){0===e.button&&e.stopPropagation()},clickDropdownEvent:function(e){var t=this,n=e.currentTarget,o=this.$refs.panel,i=_tools.DomTools.getEventTargetNode(e,n,"vxe-button"),n=i.flag,i=i.targetElem;n&&(o&&(o.dataset.active="N"),this.showPanel=!1,setTimeout(function(){o&&"Y"===o.dataset.active||(t.animatVisible=!1)},350),this.$emit("dropdown-click",{name:i.getAttribute("name"),$event:e}))},mouseenterTargetEvent:function(){var e=this,t=this.$refs.panel;t.dataset.active="Y",this.inited||(this.inited=!0,this.transfer&&document.body.appendChild(t)),this.showTime=setTimeout(function(){"Y"===t.dataset.active?e.mouseenterEvent():e.animatVisible=!1},250)},mouseenterEvent:function(){var e=this,t=this.$refs.panel;t.dataset.active="Y",this.animatVisible=!0,setTimeout(function(){"Y"===t.dataset.active&&(e.showPanel=!0,e.updateZindex(),e.updatePlacement(),setTimeout(function(){e.showPanel&&e.updatePlacement()},50))},20)},mouseleaveEvent:function(){this.closePanel()},closePanel:function(){var e=this,t=this.$refs.panel;clearTimeout(this.showTime),t?(t.dataset.active="N",setTimeout(function(){"Y"!==t.dataset.active&&(e.showPanel=!1,setTimeout(function(){"Y"!==t.dataset.active&&(e.animatVisible=!1)},350))},100)):(this.animatVisible=!1,this.showPanel=!1)},updatePlacement:function(){var p=this;return this.$nextTick().then(function(){var e=p.$refs,t=p.transfer,n=p.placement,o=p.panelIndex,i=e.xBtn,s=e.panel;if(s&&i){var a=i.offsetHeight,r=i.offsetWidth,l=s.offsetHeight,u=s.offsetWidth,c={zIndex:o},d=_tools.DomTools.getAbsolutePos(i),f=d.top,e=d.left,s=d.boundingTop,o=d.visibleHeight,i=d.visibleWidth,d="bottom";return t?(t=f+a,"top"===n?(d="top",t=f-l):n||(o<s+a+l+5&&(d="top",t=f-l),t<5&&(d="bottom",t=f+a)),i<(e=e+r-u)+u+5&&(e-=e+u+5-i),e<5&&(e=5),Object.assign(c,{left:"".concat(e,"px"),right:"auto",top:"".concat(t,"px"),minWidth:"".concat(r,"px")})):"top"===n?(d="top",c.bottom="".concat(a,"px")):n||o<s+a+l&&5<s-a-l&&(d="top",c.bottom="".concat(a,"px")),p.panelStyle=c,p.panelPlacement=d,p.$nextTick()}})},focus:function(){return this.$el.focus(),this.$nextTick()},blur:function(){return this.$el.blur(),this.$nextTick()}}};exports.default=_default2;
|
package/lib/edit/src/mixin.js
CHANGED
|
@@ -30,7 +30,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
|
|
|
30
30
|
var getRowid = _tools.UtilTools.getRowid;
|
|
31
31
|
|
|
32
32
|
function insertTreeRow(_vm, newRecords, isAppend) {
|
|
33
|
-
var
|
|
33
|
+
var tableFullTreeData = _vm.tableFullTreeData,
|
|
34
34
|
afterFullData = _vm.afterFullData,
|
|
35
35
|
fullDataRowIdData = _vm.fullDataRowIdData,
|
|
36
36
|
fullAllDataRowIdData = _vm.fullAllDataRowIdData,
|
|
@@ -39,7 +39,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
|
|
|
39
39
|
newRecords.forEach(function (item) {
|
|
40
40
|
var parentRowId = item[treeOpts.parentField];
|
|
41
41
|
var rowid = getRowid(_vm, item);
|
|
42
|
-
var matchObj = parentRowId ? _xeUtils.default.findTree(
|
|
42
|
+
var matchObj = parentRowId ? _xeUtils.default.findTree(tableFullTreeData, function (item) {
|
|
43
43
|
return parentRowId === item[treeOpts.rowField];
|
|
44
44
|
}, treeOpts) : null;
|
|
45
45
|
|
|
@@ -57,6 +57,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
|
|
|
57
57
|
var rest = {
|
|
58
58
|
row: item,
|
|
59
59
|
rowid: rowid,
|
|
60
|
+
seq: -1,
|
|
60
61
|
index: -1,
|
|
61
62
|
_index: -1,
|
|
62
63
|
$index: -1,
|
|
@@ -74,14 +75,15 @@ function insertTreeRow(_vm, newRecords, isAppend) {
|
|
|
74
75
|
}
|
|
75
76
|
|
|
76
77
|
afterFullData[funcName](item);
|
|
77
|
-
|
|
78
|
+
tableFullTreeData[funcName](item);
|
|
78
79
|
var _rest = {
|
|
79
80
|
row: item,
|
|
80
81
|
rowid: rowid,
|
|
82
|
+
seq: -1,
|
|
81
83
|
index: -1,
|
|
82
84
|
_index: -1,
|
|
83
85
|
$index: -1,
|
|
84
|
-
items:
|
|
86
|
+
items: tableFullTreeData,
|
|
85
87
|
parent: null,
|
|
86
88
|
level: 0
|
|
87
89
|
};
|
|
@@ -89,8 +91,6 @@ function insertTreeRow(_vm, newRecords, isAppend) {
|
|
|
89
91
|
fullAllDataRowIdData[rowid] = _rest;
|
|
90
92
|
}
|
|
91
93
|
});
|
|
92
|
-
|
|
93
|
-
_vm.updateVirtualTreeData();
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
var _default = {
|
|
@@ -116,12 +116,10 @@ var _default = {
|
|
|
116
116
|
var _this = this,
|
|
117
117
|
_editStore$insertList;
|
|
118
118
|
|
|
119
|
-
var
|
|
119
|
+
var tableFullTreeData = this.tableFullTreeData,
|
|
120
120
|
mergeList = this.mergeList,
|
|
121
121
|
afterFullData = this.afterFullData,
|
|
122
122
|
editStore = this.editStore,
|
|
123
|
-
sYOpts = this.sYOpts,
|
|
124
|
-
scrollYLoad = this.scrollYLoad,
|
|
125
123
|
tableFullData = this.tableFullData,
|
|
126
124
|
treeConfig = this.treeConfig,
|
|
127
125
|
fullDataRowIdData = this.fullDataRowIdData,
|
|
@@ -174,7 +172,7 @@ var _default = {
|
|
|
174
172
|
} else {
|
|
175
173
|
// 如果为虚拟树
|
|
176
174
|
if (treeConfig && transform) {
|
|
177
|
-
var matchObj = _xeUtils.default.findTree(
|
|
175
|
+
var matchObj = _xeUtils.default.findTree(tableFullTreeData, function (item) {
|
|
178
176
|
return row[treeOpts.rowField] === item[treeOpts.rowField];
|
|
179
177
|
}, treeOpts);
|
|
180
178
|
|
|
@@ -202,6 +200,7 @@ var _default = {
|
|
|
202
200
|
var rest = {
|
|
203
201
|
row: item,
|
|
204
202
|
rowid: rowid,
|
|
203
|
+
seq: -1,
|
|
205
204
|
index: -1,
|
|
206
205
|
_index: -1,
|
|
207
206
|
$index: -1,
|
|
@@ -212,7 +211,6 @@ var _default = {
|
|
|
212
211
|
fullDataRowIdData[rowid] = rest;
|
|
213
212
|
fullAllDataRowIdData[rowid] = rest;
|
|
214
213
|
});
|
|
215
|
-
this.updateVirtualTreeData();
|
|
216
214
|
} else {
|
|
217
215
|
if (process.env.NODE_ENV === 'development') {
|
|
218
216
|
_tools.UtilTools.warn('vxe.error.unableInsert');
|
|
@@ -250,13 +248,13 @@ var _default = {
|
|
|
250
248
|
|
|
251
249
|
(_editStore$insertList = editStore.insertList).unshift.apply(_editStore$insertList, _toConsumableArray(newRecords));
|
|
252
250
|
|
|
253
|
-
this.
|
|
254
|
-
this.handleTableData(transform);
|
|
251
|
+
this.handleTableData(treeConfig && treeOpts.transform);
|
|
255
252
|
this.updateFooter();
|
|
256
253
|
this.cacheRowMap();
|
|
254
|
+
this.updateAfterDataIndex();
|
|
257
255
|
this.checkSelectionStatus();
|
|
258
256
|
|
|
259
|
-
if (scrollYLoad) {
|
|
257
|
+
if (this.scrollYLoad) {
|
|
260
258
|
this.updateScrollYSpace();
|
|
261
259
|
}
|
|
262
260
|
|
|
@@ -283,15 +281,13 @@ var _default = {
|
|
|
283
281
|
|
|
284
282
|
var afterFullData = this.afterFullData,
|
|
285
283
|
tableFullData = this.tableFullData,
|
|
286
|
-
|
|
284
|
+
tableFullTreeData = this.tableFullTreeData,
|
|
287
285
|
treeConfig = this.treeConfig,
|
|
288
286
|
mergeList = this.mergeList,
|
|
289
287
|
editStore = this.editStore,
|
|
290
288
|
checkboxOpts = this.checkboxOpts,
|
|
291
289
|
selection = this.selection,
|
|
292
290
|
isInsertByRow = this.isInsertByRow,
|
|
293
|
-
sYOpts = this.sYOpts,
|
|
294
|
-
scrollYLoad = this.scrollYLoad,
|
|
295
291
|
treeOpts = this.treeOpts;
|
|
296
292
|
var transform = treeOpts.transform;
|
|
297
293
|
var actived = editStore.actived,
|
|
@@ -335,7 +331,7 @@ var _default = {
|
|
|
335
331
|
rows.forEach(function (row) {
|
|
336
332
|
var rowid = getRowid(_this2, row);
|
|
337
333
|
|
|
338
|
-
var matchObj = _xeUtils.default.findTree(
|
|
334
|
+
var matchObj = _xeUtils.default.findTree(tableFullTreeData, function (item) {
|
|
339
335
|
return rowid === getRowid(_this2, item);
|
|
340
336
|
}, treeOpts);
|
|
341
337
|
|
|
@@ -349,8 +345,6 @@ var _default = {
|
|
|
349
345
|
if (afIndex > -1) {
|
|
350
346
|
afterFullData.splice(afIndex, 1);
|
|
351
347
|
}
|
|
352
|
-
|
|
353
|
-
_this2.updateVirtualTreeData();
|
|
354
348
|
});
|
|
355
349
|
} else {
|
|
356
350
|
rows.forEach(function (row) {
|
|
@@ -394,13 +388,13 @@ var _default = {
|
|
|
394
388
|
insertList.splice(iIndex, 1);
|
|
395
389
|
}
|
|
396
390
|
});
|
|
397
|
-
this.
|
|
398
|
-
this.handleTableData(transform);
|
|
391
|
+
this.handleTableData(treeConfig && treeOpts.transform);
|
|
399
392
|
this.updateFooter();
|
|
400
393
|
this.cacheRowMap();
|
|
394
|
+
this.updateAfterDataIndex();
|
|
401
395
|
this.checkSelectionStatus();
|
|
402
396
|
|
|
403
|
-
if (scrollYLoad) {
|
|
397
|
+
if (this.scrollYLoad) {
|
|
404
398
|
this.updateScrollYSpace();
|
|
405
399
|
}
|
|
406
400
|
|
|
@@ -475,7 +469,7 @@ var _default = {
|
|
|
475
469
|
var _this6 = this;
|
|
476
470
|
|
|
477
471
|
var treeConfig = this.treeConfig,
|
|
478
|
-
|
|
472
|
+
tableFullTreeData = this.tableFullTreeData,
|
|
479
473
|
tableFullData = this.tableFullData,
|
|
480
474
|
treeOpts = this.treeOpts;
|
|
481
475
|
var insertList = this.editStore.insertList;
|
|
@@ -487,7 +481,7 @@ var _default = {
|
|
|
487
481
|
insertList.forEach(function (row) {
|
|
488
482
|
var rowid = getRowid(_this6, row);
|
|
489
483
|
|
|
490
|
-
var matchObj = _xeUtils.default.findTree(
|
|
484
|
+
var matchObj = _xeUtils.default.findTree(tableFullTreeData, function (item) {
|
|
491
485
|
return rowid === getRowid(_this6, item);
|
|
492
486
|
}, treeOpts);
|
|
493
487
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_dom=require("../../tools/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(r="Object"===r&&e.constructor?e.constructor.name:r)||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}var getRowid=_tools.UtilTools.getRowid;function insertTreeRow(n,e,t){var s=n.treeFullData,a=n.afterFullData,u=n.fullDataRowIdData,c=n.fullAllDataRowIdData,d=n.treeOpts,h=t?"push":"unshift";e.forEach(function(e){var t,r,o=e[d.parentField],l=getRowid(n,e),i=o?_xeUtils.default.findTree(s,function(e){return o===e[d.rowField]},d):null;i?(t=i.item,i=(r=c[getRowid(n,t)])?r.level:0,r=t[d.children],(r=!_xeUtils.default.isArray(r)?t[d.children]=[]:r)[h](e),i={row:e,rowid:l,index:-1,_index:-1,$index:-1,items:r,parent:parent,level:i+1},u[l]=i,c[l]=i):("development"===process.env.NODE_ENV&&o&&_tools.UtilTools.warn("vxe.error.unableInsert"),a[h](e),s[h](e),e={row:e,rowid:l,index:-1,_index:-1,$index:-1,items:s,parent:null,level:0},u[l]=e,c[l]=e)}),n.updateVirtualTreeData()}var _default={methods:{_insert:function(e){return this.insertAt(e)},_insertAt:function(e,t){var o=this,r=this.treeFullData,l=this.mergeList,i=this.afterFullData,n=this.editStore,s=this.sYOpts,a=this.scrollYLoad,u=this.tableFullData,c=this.treeConfig,d=this.fullDataRowIdData,h=this.fullAllDataRowIdData,f=this.treeOpts,p=f.transform,m=(e=!_xeUtils.default.isArray(e)?[e]:e).map(function(e){return o.defineField(Object.assign({},e))});if(t)if(-1===t)c&&p?insertTreeRow(this,m,!0):(i.push.apply(i,_toConsumableArray(m)),u.push.apply(u,_toConsumableArray(m)),l.forEach(function(e){var t=e.row,r=e.rowspan;t+r>i.length&&(e.rowspan=r+m.length)}));else if(c&&p){var v,w,_,g=_xeUtils.default.findTree(r,function(e){return t[f.rowField]===e[f.rowField]},f);g?(v=g.parent,w=g.items,r=h[getRowid(this,v)],_=r?r.level:0,m.forEach(function(e,t){var r=getRowid(o,e);"development"===process.env.NODE_ENV&&e[f.parentField]&&v&&e[f.parentField]!==v[f.rowField]&&_tools.UtilTools.error("vxe.error.errProp",["".concat(f.parentField,"=").concat(e[f.parentField]),"".concat(f.parentField,"=").concat(v[f.rowField])]),v&&(e[f.parentField]=v[f.rowField]),w.splice(g.index+t,0,e);e={row:e,rowid:r,index:-1,_index:-1,$index:-1,items:w,parent:v,level:_+1};d[r]=e,h[r]=e}),this.updateVirtualTreeData()):("development"===process.env.NODE_ENV&&_tools.UtilTools.warn("vxe.error.unableInsert"),insertTreeRow(this,m,!0))}else{if(c)throw new Error(_tools.UtilTools.getLog("vxe.error.noTree",["insert"]));var C=i.indexOf(t);if(-1===C)throw new Error(_tools.UtilTools.error("vxe.error.unableInsert"));i.splice.apply(i,[C,0].concat(_toConsumableArray(m))),u.splice.apply(u,[u.indexOf(t),0].concat(_toConsumableArray(m))),l.forEach(function(e){var t=e.row,r=e.rowspan;C<t?e.row=t+m.length:C<t+r&&(e.rowspan=r+m.length)})}else c&&p?insertTreeRow(this,m,!1):(i.unshift.apply(i,_toConsumableArray(m)),u.unshift.apply(u,_toConsumableArray(m)),l.forEach(function(e){var t=e.row;0<t&&(e.row=t+m.length)}));return(n=n.insertList).unshift.apply(n,_toConsumableArray(m)),this.scrollYLoad=!c&&-1<s.gt&&s.gt<u.length,this.handleTableData(p),this.updateFooter(),this.cacheRowMap(),this.checkSelectionStatus(),a&&this.updateScrollYSpace(),this.$nextTick().then(function(){return o.updateCellAreas(),o.recalculate()}).then(function(){return{row:m.length?m[m.length-1]:null,rows:m}})},_remove:function(e){var o=this,l=this.afterFullData,r=this.tableFullData,i=this.treeFullData,t=this.treeConfig,n=this.mergeList,s=this.editStore,a=this.checkboxOpts,u=this.selection,c=this.isInsertByRow,d=this.sYOpts,h=this.scrollYLoad,f=this.treeOpts,p=f.transform,m=s.actived,v=s.removeList,w=s.insertList,a=a.checkField,_=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=r,e.forEach(function(e){c(e)||v.push(e)}),a||e.forEach(function(e){e=u.indexOf(e);-1<e&&u.splice(e,1)}),r===e?(e=_=r.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):t&&p?e.forEach(function(e){var t=getRowid(o,e),r=_xeUtils.default.findTree(i,function(e){return t===getRowid(o,e)},f);r&&(r=r.items.splice(r.index,1),_.push(r[0]));e=l.indexOf(e);-1<e&&l.splice(e,1),o.updateVirtualTreeData()}):e.forEach(function(e){var t=r.indexOf(e);-1<t&&(t=r.splice(t,1),_.push(t[0]));var o=l.indexOf(e);-1<o&&(n.forEach(function(e){var t=e.row,r=e.rowspan;o<t?e.row=t-1:o<t+r&&(e.rowspan=r-1)}),l.splice(o,1))}),m.row&&-1<e.indexOf(m.row)&&this.clearActived(),e.forEach(function(e){e=w.indexOf(e);-1<e&&w.splice(e,1)}),this.scrollYLoad=!t&&-1<d.gt&&d.gt<r.length,this.handleTableData(p),this.updateFooter(),this.cacheRowMap(),this.checkSelectionStatus(),h&&this.updateScrollYSpace(),this.$nextTick().then(function(){return o.updateCellAreas(),o.recalculate()}).then(function(){return{row:_.length?_[_.length-1]:null,rows:_}})},_removeCheckboxRow:function(){var t=this;return this.remove(this.getCheckboxRecords()).then(function(e){return t.clearCheckboxRow(),e})},_removeRadioRow:function(){var t=this,e=this.getRadioRecord();return this.remove(e||[]).then(function(e){return t.clearRadioRow(),e})},_removeCurrentRow:function(){var t=this,e=this.getCurrentRecord();return this.remove(e||[]).then(function(e){return t.clearCurrentRow(),e})},_getRecordset:function(){return{insertRecords:this.getInsertRecords(),removeRecords:this.getRemoveRecords(),updateRecords:this.getUpdateRecords()}},_getInsertRecords:function(){var r=this,e=this.treeConfig,o=this.treeFullData,t=this.tableFullData,l=this.treeOpts,i=this.editStore.insertList,n=[];return i.length&&(e&&l.transform?i.forEach(function(e){var t=getRowid(r,e);_xeUtils.default.findTree(o,function(e){return t===getRowid(r,e)},l)&&n.push(e)}):i.forEach(function(e){-1<t.indexOf(e)&&n.push(e)})),n},_getRemoveRecords:function(){return this.editStore.removeList},_getUpdateRecords:function(){var e=this.keepSource,t=this.tableFullData,r=this.isUpdateByRow,o=this.treeConfig,l=this.treeOpts,i=this.editStore;if(e){e=i.actived,i=e.row,e=e.column;return(i||e)&&this._syncActivedCell(),o?_xeUtils.default.filterTree(t,function(e){return r(e)},l):t.filter(function(e){return r(e)})}return[]},handleActived:function(e,t){var r,o=this,l=this.editStore,i=this.editOpts,n=this.tableColumn,s=this.editConfig,a=this.mouseConfig,u=i.mode,c=i.activeMethod,d=l.actived,h=e.row,f=e.column,i=f.editRender,l=e.cell=e.cell||this.getCell(h,f);return(0,_tools.isEnableConf)(s)&&(0,_tools.isEnableConf)(i)&&l&&(d.row!==h||"cell"===u&&d.column!==f?(r="edit-disabled",c&&!c(e)||(a&&(this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t)),this.closeTooltip(),this.clearActived(t),r="edit-actived",f.renderHeight=l.offsetHeight,d.args=e,d.row=h,d.column=f,"row"===u?n.forEach(function(e){return o._getColumnModel(h,e)}):this._getColumnModel(h,f),this.$nextTick(function(){o.handleFocus(e,t)})),this.emitEvent(r,{row:h,rowIndex:this.getRowIndex(h),$rowIndex:this.getVMRowIndex(h),column:f,columnIndex:this.getColumnIndex(f),$columnIndex:this.getVMColumnIndex(f)},t)):(r=d.column,a&&(this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t)),r!==f&&((a=r.model).update&&_tools.UtilTools.setCellValue(h,r,a.value),this.clearValidate()),f.renderHeight=l.offsetHeight,d.args=e,d.column=f,setTimeout(function(){o.handleFocus(e,t)})),this.focus()),this.$nextTick()},_getColumnModel:function(e,t){var r=t.model;t.editRender&&(r.value=_tools.UtilTools.getCellValue(e,t),r.update=!1)},_setColumnModel:function(e,t){var r=t.model;t.editRender&&r.update&&(_tools.UtilTools.setCellValue(e,t,r.value),r.update=!1,r.value=null)},_syncActivedCell:function(){var t=this,e=this.tableColumn,r=this.editStore,o=this.editOpts,r=r.actived,l=r.row,r=r.column;(l||r)&&("row"===o.mode?e.forEach(function(e){return t._setColumnModel(l,e)}):this._setColumnModel(l,r))},_clearActived:function(e){var t=this.editStore.actived,r=t.row,o=t.column;return(r||o)&&(this._syncActivedCell(),t.args=null,t.row=null,t.column=null,this.updateFooter(),this.emitEvent("edit-closed",{row:r,rowIndex:this.getRowIndex(r),$rowIndex:this.getVMRowIndex(r),column:o,columnIndex:this.getColumnIndex(o),$columnIndex:this.getVMColumnIndex(o)},e)),(_vXETable.default._valid?this.clearValidate():this.$nextTick()).then(this.recalculate)},_getActiveRecord:function(){var e=this.$el,t=this.editStore,r=this.afterFullData,o=t.actived,t=o.args,o=o.row;return t&&-1<r.indexOf(o)&&e.querySelectorAll(".vxe-body--column.col--actived").length?Object.assign({},t):null},_isActiveByRow:function(e){return this.editStore.actived.row===e},handleFocus:function(e){var t,r,o=e.row,l=e.column,i=e.cell,n=l.editRender;(0,_tools.isEnableConf)(n)&&(t=_vXETable.default.renderer.get(n.name),e=n.autofocus,n=n.autoselect,(r=!(r=e?i.querySelector(e):r)&&t&&t.autofocus?i.querySelector(t.autofocus):r)?(r.focus(),n?r.select():_dom.browse.msie&&((r=r.createTextRange()).collapse(!1),r.select())):this.scrollToRow(o,l))},_setActiveRow:function(e){return this.setActiveCell(e,_xeUtils.default.find(this.visibleColumn,function(e){return(0,_tools.isEnableConf)(e.editRender)}))},_setActiveCell:function(t,e){var r=this,o=this.editConfig,l=_xeUtils.default.isString(e)?this.getColumnByField(e):e;return t&&l&&(0,_tools.isEnableConf)(o)&&(0,_tools.isEnableConf)(l.editRender)?this.scrollToRow(t,!0).then(function(){var e=r.getCell(t,l);e&&(r.handleActived({row:t,rowIndex:r.getRowIndex(t),column:l,columnIndex:r.getColumnIndex(l),cell:e,$table:r}),r.lastCallTime=Date.now())}):this.$nextTick()},_setSelectCell:function(e,t){var r=this.tableData,o=this.editOpts,l=this.visibleColumn,t=_xeUtils.default.isString(t)?this.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&(-1<(o=r.indexOf(e))&&(r=this.getCell(e,t),r={row:e,rowIndex:o,column:t,columnIndex:l.indexOf(t),cell:r},this.handleSelected(r,{}))),this.$nextTick()},handleSelected:function(e,t){var r=this,o=this.mouseConfig,l=this.mouseOpts,i=this.editOpts,n=this.editStore,s=n.actived,a=n.selected,u=e.row,c=e.column,d=o&&l.selected;return!d||a.row===u&&a.column===c||(s.row!==u||"cell"===i.mode&&s.column!==c)&&(r.clearActived(t),r.clearSelected(t),r.clearCellAreas(t),r.clearCopyCellArea(t),a.args=e,a.row=u,a.column=c,d&&r.addColSdCls(),r.focus(),t&&r.emitEvent("cell-selected",e,t)),r.$nextTick()},_getSelectedCell:function(){var e=this.editStore.selected,t=e.args,e=e.column;return t&&e?Object.assign({},t):null},_clearSelected:function(){var e=this.editStore.selected;return e.row=null,e.column=null,this.reColTitleSdCls(),this.reColSdCls(),this.$nextTick()},reColTitleSdCls:function(){var e=this.elemStore["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),function(e){return _tools.DomTools.removeClass(e,"col--title-selected")})},reColSdCls:function(){var e=this.$el.querySelector(".col--selected");e&&_tools.DomTools.removeClass(e,"col--selected")},addColSdCls:function(){var e=this.editStore.selected,t=e.row,e=e.column;this.reColSdCls(),t&&e&&((e=this.getCell(t,e))&&_tools.DomTools.addClass(e,"col--selected"))}}};exports.default=_default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_dom=require("../../tools/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(r="Object"===r&&e.constructor?e.constructor.name:r)||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}var getRowid=_tools.UtilTools.getRowid;function insertTreeRow(n,e,t){var s=n.tableFullTreeData,a=n.afterFullData,c=n.fullDataRowIdData,u=n.fullAllDataRowIdData,d=n.treeOpts,h=t?"push":"unshift";e.forEach(function(e){var t,r,o=e[d.parentField],l=getRowid(n,e),i=o?_xeUtils.default.findTree(s,function(e){return o===e[d.rowField]},d):null;i?(t=i.item,i=(r=u[getRowid(n,t)])?r.level:0,r=t[d.children],(r=!_xeUtils.default.isArray(r)?t[d.children]=[]:r)[h](e),i={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,items:r,parent:parent,level:i+1},c[l]=i,u[l]=i):("development"===process.env.NODE_ENV&&o&&_tools.UtilTools.warn("vxe.error.unableInsert"),a[h](e),s[h](e),e={row:e,rowid:l,seq:-1,index:-1,_index:-1,$index:-1,items:s,parent:null,level:0},c[l]=e,u[l]=e)})}var _default={methods:{_insert:function(e){return this.insertAt(e)},_insertAt:function(e,t){var o=this,r=this.tableFullTreeData,l=this.mergeList,i=this.afterFullData,n=this.editStore,s=this.tableFullData,a=this.treeConfig,c=this.fullDataRowIdData,u=this.fullAllDataRowIdData,d=this.treeOpts,h=d.transform,f=(e=!_xeUtils.default.isArray(e)?[e]:e).map(function(e){return o.defineField(Object.assign({},e))});if(t)if(-1===t)a&&h?insertTreeRow(this,f,!0):(i.push.apply(i,_toConsumableArray(f)),s.push.apply(s,_toConsumableArray(f)),l.forEach(function(e){var t=e.row,r=e.rowspan;t+r>i.length&&(e.rowspan=r+f.length)}));else if(a&&h){var m,p,v,w=_xeUtils.default.findTree(r,function(e){return t[d.rowField]===e[d.rowField]},d);w?(m=w.parent,p=w.items,r=u[getRowid(this,m)],v=r?r.level:0,f.forEach(function(e,t){var r=getRowid(o,e);"development"===process.env.NODE_ENV&&e[d.parentField]&&m&&e[d.parentField]!==m[d.rowField]&&_tools.UtilTools.error("vxe.error.errProp",["".concat(d.parentField,"=").concat(e[d.parentField]),"".concat(d.parentField,"=").concat(m[d.rowField])]),m&&(e[d.parentField]=m[d.rowField]),p.splice(w.index+t,0,e);e={row:e,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:p,parent:m,level:v+1};c[r]=e,u[r]=e})):("development"===process.env.NODE_ENV&&_tools.UtilTools.warn("vxe.error.unableInsert"),insertTreeRow(this,f,!0))}else{if(a)throw new Error(_tools.UtilTools.getLog("vxe.error.noTree",["insert"]));var _=i.indexOf(t);if(-1===_)throw new Error(_tools.UtilTools.error("vxe.error.unableInsert"));i.splice.apply(i,[_,0].concat(_toConsumableArray(f))),s.splice.apply(s,[s.indexOf(t),0].concat(_toConsumableArray(f))),l.forEach(function(e){var t=e.row,r=e.rowspan;_<t?e.row=t+f.length:_<t+r&&(e.rowspan=r+f.length)})}else a&&h?insertTreeRow(this,f,!1):(i.unshift.apply(i,_toConsumableArray(f)),s.unshift.apply(s,_toConsumableArray(f)),l.forEach(function(e){var t=e.row;0<t&&(e.row=t+f.length)}));return(n=n.insertList).unshift.apply(n,_toConsumableArray(f)),this.handleTableData(a&&d.transform),this.updateFooter(),this.cacheRowMap(),this.updateAfterDataIndex(),this.checkSelectionStatus(),this.scrollYLoad&&this.updateScrollYSpace(),this.$nextTick().then(function(){return o.updateCellAreas(),o.recalculate()}).then(function(){return{row:f.length?f[f.length-1]:null,rows:f}})},_remove:function(e){var o=this,l=this.afterFullData,r=this.tableFullData,i=this.tableFullTreeData,t=this.treeConfig,n=this.mergeList,s=this.editStore,a=this.checkboxOpts,c=this.selection,u=this.isInsertByRow,d=this.treeOpts,h=d.transform,f=s.actived,m=s.removeList,p=s.insertList,a=a.checkField,v=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=r,e.forEach(function(e){u(e)||m.push(e)}),a||e.forEach(function(e){e=c.indexOf(e);-1<e&&c.splice(e,1)}),r===e?(e=v=r.slice(0),this.tableFullData=[],this.afterFullData=[],this.clearMergeCells()):t&&h?e.forEach(function(e){var t=getRowid(o,e),r=_xeUtils.default.findTree(i,function(e){return t===getRowid(o,e)},d);r&&(r=r.items.splice(r.index,1),v.push(r[0]));e=l.indexOf(e);-1<e&&l.splice(e,1)}):e.forEach(function(e){var t=r.indexOf(e);-1<t&&(t=r.splice(t,1),v.push(t[0]));var o=l.indexOf(e);-1<o&&(n.forEach(function(e){var t=e.row,r=e.rowspan;o<t?e.row=t-1:o<t+r&&(e.rowspan=r-1)}),l.splice(o,1))}),f.row&&-1<e.indexOf(f.row)&&this.clearActived(),e.forEach(function(e){e=p.indexOf(e);-1<e&&p.splice(e,1)}),this.handleTableData(t&&d.transform),this.updateFooter(),this.cacheRowMap(),this.updateAfterDataIndex(),this.checkSelectionStatus(),this.scrollYLoad&&this.updateScrollYSpace(),this.$nextTick().then(function(){return o.updateCellAreas(),o.recalculate()}).then(function(){return{row:v.length?v[v.length-1]:null,rows:v}})},_removeCheckboxRow:function(){var t=this;return this.remove(this.getCheckboxRecords()).then(function(e){return t.clearCheckboxRow(),e})},_removeRadioRow:function(){var t=this,e=this.getRadioRecord();return this.remove(e||[]).then(function(e){return t.clearRadioRow(),e})},_removeCurrentRow:function(){var t=this,e=this.getCurrentRecord();return this.remove(e||[]).then(function(e){return t.clearCurrentRow(),e})},_getRecordset:function(){return{insertRecords:this.getInsertRecords(),removeRecords:this.getRemoveRecords(),updateRecords:this.getUpdateRecords()}},_getInsertRecords:function(){var r=this,e=this.treeConfig,o=this.tableFullTreeData,t=this.tableFullData,l=this.treeOpts,i=this.editStore.insertList,n=[];return i.length&&(e&&l.transform?i.forEach(function(e){var t=getRowid(r,e);_xeUtils.default.findTree(o,function(e){return t===getRowid(r,e)},l)&&n.push(e)}):i.forEach(function(e){-1<t.indexOf(e)&&n.push(e)})),n},_getRemoveRecords:function(){return this.editStore.removeList},_getUpdateRecords:function(){var e=this.keepSource,t=this.tableFullData,r=this.isUpdateByRow,o=this.treeConfig,l=this.treeOpts,i=this.editStore;if(e){e=i.actived,i=e.row,e=e.column;return(i||e)&&this._syncActivedCell(),o?_xeUtils.default.filterTree(t,function(e){return r(e)},l):t.filter(function(e){return r(e)})}return[]},handleActived:function(e,t){var r,o=this,l=this.editStore,i=this.editOpts,n=this.tableColumn,s=this.editConfig,a=this.mouseConfig,c=i.mode,u=i.activeMethod,d=l.actived,h=e.row,f=e.column,i=f.editRender,l=e.cell=e.cell||this.getCell(h,f);return(0,_tools.isEnableConf)(s)&&(0,_tools.isEnableConf)(i)&&l&&(d.row!==h||"cell"===c&&d.column!==f?(r="edit-disabled",u&&!u(e)||(a&&(this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t)),this.closeTooltip(),this.clearActived(t),r="edit-actived",f.renderHeight=l.offsetHeight,d.args=e,d.row=h,d.column=f,"row"===c?n.forEach(function(e){return o._getColumnModel(h,e)}):this._getColumnModel(h,f),this.$nextTick(function(){o.handleFocus(e,t)})),this.emitEvent(r,{row:h,rowIndex:this.getRowIndex(h),$rowIndex:this.getVMRowIndex(h),column:f,columnIndex:this.getColumnIndex(f),$columnIndex:this.getVMColumnIndex(f)},t)):(r=d.column,a&&(this.clearSelected(t),this.clearCellAreas(t),this.clearCopyCellArea(t)),r!==f&&((a=r.model).update&&_tools.UtilTools.setCellValue(h,r,a.value),this.clearValidate()),f.renderHeight=l.offsetHeight,d.args=e,d.column=f,setTimeout(function(){o.handleFocus(e,t)})),this.focus()),this.$nextTick()},_getColumnModel:function(e,t){var r=t.model;t.editRender&&(r.value=_tools.UtilTools.getCellValue(e,t),r.update=!1)},_setColumnModel:function(e,t){var r=t.model;t.editRender&&r.update&&(_tools.UtilTools.setCellValue(e,t,r.value),r.update=!1,r.value=null)},_syncActivedCell:function(){var t=this,e=this.tableColumn,r=this.editStore,o=this.editOpts,r=r.actived,l=r.row,r=r.column;(l||r)&&("row"===o.mode?e.forEach(function(e){return t._setColumnModel(l,e)}):this._setColumnModel(l,r))},_clearActived:function(e){var t=this.editStore.actived,r=t.row,o=t.column;return(r||o)&&(this._syncActivedCell(),t.args=null,t.row=null,t.column=null,this.updateFooter(),this.emitEvent("edit-closed",{row:r,rowIndex:this.getRowIndex(r),$rowIndex:this.getVMRowIndex(r),column:o,columnIndex:this.getColumnIndex(o),$columnIndex:this.getVMColumnIndex(o)},e)),(_vXETable.default._valid?this.clearValidate():this.$nextTick()).then(this.recalculate)},_getActiveRecord:function(){var e=this.$el,t=this.editStore,r=this.afterFullData,o=t.actived,t=o.args,o=o.row;return t&&-1<r.indexOf(o)&&e.querySelectorAll(".vxe-body--column.col--actived").length?Object.assign({},t):null},_isActiveByRow:function(e){return this.editStore.actived.row===e},handleFocus:function(e){var t,r,o=e.row,l=e.column,i=e.cell,n=l.editRender;(0,_tools.isEnableConf)(n)&&(t=_vXETable.default.renderer.get(n.name),e=n.autofocus,n=n.autoselect,(r=!(r=e?i.querySelector(e):r)&&t&&t.autofocus?i.querySelector(t.autofocus):r)?(r.focus(),n?r.select():_dom.browse.msie&&((r=r.createTextRange()).collapse(!1),r.select())):this.scrollToRow(o,l))},_setActiveRow:function(e){return this.setActiveCell(e,_xeUtils.default.find(this.visibleColumn,function(e){return(0,_tools.isEnableConf)(e.editRender)}))},_setActiveCell:function(t,e){var r=this,o=this.editConfig,l=_xeUtils.default.isString(e)?this.getColumnByField(e):e;return t&&l&&(0,_tools.isEnableConf)(o)&&(0,_tools.isEnableConf)(l.editRender)?this.scrollToRow(t,!0).then(function(){var e=r.getCell(t,l);e&&(r.handleActived({row:t,rowIndex:r.getRowIndex(t),column:l,columnIndex:r.getColumnIndex(l),cell:e,$table:r}),r.lastCallTime=Date.now())}):this.$nextTick()},_setSelectCell:function(e,t){var r=this.tableData,o=this.editOpts,l=this.visibleColumn,t=_xeUtils.default.isString(t)?this.getColumnByField(t):t;return e&&t&&"manual"!==o.trigger&&(-1<(o=r.indexOf(e))&&(r=this.getCell(e,t),r={row:e,rowIndex:o,column:t,columnIndex:l.indexOf(t),cell:r},this.handleSelected(r,{}))),this.$nextTick()},handleSelected:function(e,t){var r=this,o=this.mouseConfig,l=this.mouseOpts,i=this.editOpts,n=this.editStore,s=n.actived,a=n.selected,c=e.row,u=e.column,d=o&&l.selected;return!d||a.row===c&&a.column===u||(s.row!==c||"cell"===i.mode&&s.column!==u)&&(r.clearActived(t),r.clearSelected(t),r.clearCellAreas(t),r.clearCopyCellArea(t),a.args=e,a.row=c,a.column=u,d&&r.addColSdCls(),r.focus(),t&&r.emitEvent("cell-selected",e,t)),r.$nextTick()},_getSelectedCell:function(){var e=this.editStore.selected,t=e.args,e=e.column;return t&&e?Object.assign({},t):null},_clearSelected:function(){var e=this.editStore.selected;return e.row=null,e.column=null,this.reColTitleSdCls(),this.reColSdCls(),this.$nextTick()},reColTitleSdCls:function(){var e=this.elemStore["main-header-list"];e&&_xeUtils.default.arrayEach(e.querySelectorAll(".col--title-selected"),function(e){return _tools.DomTools.removeClass(e,"col--title-selected")})},reColSdCls:function(){var e=this.$el.querySelector(".col--selected");e&&_tools.DomTools.removeClass(e,"col--selected")},addColSdCls:function(){var e=this.editStore.selected,t=e.row,e=e.column;this.reColSdCls(),t&&e&&((e=this.getCell(t,e))&&_tools.DomTools.addClass(e,"col--selected"))}}};exports.default=_default;
|
package/lib/export/src/mixin.js
CHANGED
|
@@ -67,15 +67,24 @@ function hasTreeChildren($xetable, row) {
|
|
|
67
67
|
return row[treeOpts.children] && row[treeOpts.children].length > 0;
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
function getSeq($xetable, row, rowIndex, column, columnIndex) {
|
|
70
|
+
function getSeq($xetable, row, rowIndex, column, columnIndex, path) {
|
|
71
71
|
var seqOpts = $xetable.seqOpts;
|
|
72
72
|
var seqMethod = seqOpts.seqMethod || column.seqMethod;
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
73
|
+
|
|
74
|
+
if (seqMethod) {
|
|
75
|
+
return seqMethod({
|
|
76
|
+
row: row,
|
|
77
|
+
rowIndex: rowIndex,
|
|
78
|
+
column: column,
|
|
79
|
+
columnIndex: columnIndex
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
if (path) {
|
|
84
|
+
return (0, _util.toTreePathSeq)(path);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
return seqOpts.startIndex + rowIndex + 1;
|
|
79
88
|
}
|
|
80
89
|
|
|
81
90
|
function defaultFilterExportColumn(column) {
|
|
@@ -112,12 +121,13 @@ function getLabelData($xetable, opts, columns, datas) {
|
|
|
112
121
|
if (treeConfig) {
|
|
113
122
|
// 如果是树表格只允许导出数据源
|
|
114
123
|
var rest = [];
|
|
124
|
+
var expandMaps = new Map();
|
|
115
125
|
|
|
116
126
|
_xeUtils.default.eachTree(datas, function (item, rowIndex, items, path, parent, nodes) {
|
|
117
127
|
var row = item._row || item;
|
|
118
128
|
var parentRow = parent && parent._row ? parent._row : parent;
|
|
119
129
|
|
|
120
|
-
if (isAllExpand || !parentRow || $xetable.isTreeExpandByRow(parentRow)) {
|
|
130
|
+
if (isAllExpand || !parentRow || expandMaps.has(parentRow) && $xetable.isTreeExpandByRow(parentRow)) {
|
|
121
131
|
var hasRowChild = hasTreeChildren($xetable, row);
|
|
122
132
|
var _item = {
|
|
123
133
|
_row: row,
|
|
@@ -148,7 +158,7 @@ function getLabelData($xetable, opts, columns, datas) {
|
|
|
148
158
|
} else {
|
|
149
159
|
switch (column.type) {
|
|
150
160
|
case 'seq':
|
|
151
|
-
cellValue = getSeq($xetable, row, rowIndex, column, columnIndex);
|
|
161
|
+
cellValue = getSeq($xetable, row, rowIndex, column, columnIndex, path);
|
|
152
162
|
break;
|
|
153
163
|
|
|
154
164
|
case 'checkbox':
|
|
@@ -190,6 +200,7 @@ function getLabelData($xetable, opts, columns, datas) {
|
|
|
190
200
|
|
|
191
201
|
_item[column.id] = _xeUtils.default.toValueString(cellValue);
|
|
192
202
|
});
|
|
203
|
+
expandMaps.set(row, 1);
|
|
193
204
|
rest.push(Object.assign(_item, row));
|
|
194
205
|
}
|
|
195
206
|
}, treeOpts);
|
|
@@ -224,7 +235,7 @@ function getLabelData($xetable, opts, columns, datas) {
|
|
|
224
235
|
} else {
|
|
225
236
|
switch (column.type) {
|
|
226
237
|
case 'seq':
|
|
227
|
-
cellValue = getSeq($xetable, row, rowIndex, column, columnIndex);
|
|
238
|
+
cellValue = getSeq($xetable, row, rowIndex, column, columnIndex, null);
|
|
228
239
|
break;
|
|
229
240
|
|
|
230
241
|
case 'checkbox':
|
|
@@ -332,6 +343,10 @@ function getFooterData(opts, footerTableData) {
|
|
|
332
343
|
|
|
333
344
|
function getCsvCellTypeLabel(column, cellValue) {
|
|
334
345
|
if (cellValue) {
|
|
346
|
+
if (column.type === 'seq') {
|
|
347
|
+
return "\t".concat(cellValue);
|
|
348
|
+
}
|
|
349
|
+
|
|
335
350
|
switch (column.cellType) {
|
|
336
351
|
case 'string':
|
|
337
352
|
if (!isNaN(cellValue)) {
|