vxe-table 4.6.5 → 4.6.6
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/button/style.css +6 -6
- package/es/checkbox/src/group.js +7 -1
- package/es/custom/src/hook.js +1 -0
- package/es/custom/src/panel.js +207 -45
- package/es/custom/style.css +326 -80
- package/es/export/src/export-panel.js +1 -1
- package/es/export/src/import-panel.js +1 -1
- package/es/icon/style.css +1 -1
- package/es/input/style.css +0 -1
- package/es/loading/src/loading.js +1 -1
- package/es/loading/style.css +1 -1
- package/es/locale/lang/en-US.js +18 -7
- package/es/locale/lang/es-ES.js +18 -7
- package/es/locale/lang/ja-JP.js +18 -6
- package/es/locale/lang/pt-BR.js +18 -7
- package/es/locale/lang/zh-CN.js +18 -7
- package/es/locale/lang/zh-TC.js +18 -7
- package/es/modal/src/modal.js +1 -1
- package/es/radio/src/group.js +7 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/src/columnInfo.js +3 -3
- package/es/table/src/table.js +60 -36
- package/es/table/style.css +4 -4
- package/es/tools/log.js +1 -1
- package/es/v-x-e-table/index.js +1 -1
- package/es/v-x-e-table/style.css +1 -1
- package/es/vxe-button/style.css +6 -6
- package/es/vxe-input/style.css +0 -1
- package/es/vxe-loading/style.css +1 -1
- package/es/vxe-table/style.css +4 -4
- package/es/vxe-table-custom-module/style.css +326 -80
- package/lib/button/style/style.css +6 -6
- package/lib/button/style/style.min.css +1 -1
- package/lib/checkbox/src/group.js +7 -1
- package/lib/checkbox/src/group.min.js +1 -1
- package/lib/custom/src/hook.js +1 -0
- package/lib/custom/src/hook.min.js +1 -1
- package/lib/custom/src/panel.js +185 -30
- package/lib/custom/src/panel.min.js +1 -1
- package/lib/custom/style/style.css +326 -80
- package/lib/custom/style/style.min.css +1 -1
- package/lib/export/src/export-panel.js +1 -1
- package/lib/export/src/export-panel.min.js +1 -1
- package/lib/export/src/import-panel.js +1 -1
- package/lib/export/src/import-panel.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +288 -84
- package/lib/index.umd.min.js +1 -1
- package/lib/input/style/style.css +0 -1
- package/lib/input/style/style.min.css +1 -1
- package/lib/loading/src/loading.js +1 -1
- package/lib/loading/src/loading.min.js +1 -1
- package/lib/loading/style/style.css +1 -1
- package/lib/loading/style/style.min.css +1 -1
- package/lib/locale/lang/en-US.js +18 -7
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +18 -7
- package/lib/locale/lang/es-ES.js +18 -7
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +18 -7
- package/lib/locale/lang/ja-JP.js +18 -6
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +18 -6
- package/lib/locale/lang/pt-BR.js +18 -7
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +18 -7
- package/lib/locale/lang/zh-CN.js +18 -7
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +18 -7
- package/lib/locale/lang/zh-HK.min.js +1 -1
- package/lib/locale/lang/zh-HK.umd.js +18 -7
- package/lib/locale/lang/zh-MO.min.js +1 -1
- package/lib/locale/lang/zh-MO.umd.js +18 -7
- package/lib/locale/lang/zh-TC.js +18 -7
- package/lib/locale/lang/zh-TC.min.js +1 -1
- package/lib/locale/lang/zh-TC.umd.js +18 -7
- package/lib/locale/lang/zh-TW.min.js +1 -1
- package/lib/locale/lang/zh-TW.umd.js +18 -7
- package/lib/modal/src/modal.js +1 -1
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/radio/src/group.js +7 -1
- package/lib/radio/src/group.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/src/columnInfo.js +3 -3
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/table.js +61 -36
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +4 -4
- package/lib/table/style/style.min.css +1 -1
- package/lib/tools/log.js +1 -1
- package/lib/tools/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +1 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/v-x-e-table/style/style.css +1 -1
- package/lib/v-x-e-table/style/style.min.css +1 -1
- package/lib/vxe-button/style/style.css +6 -6
- package/lib/vxe-button/style/style.min.css +1 -1
- package/lib/vxe-input/style/style.css +0 -1
- package/lib/vxe-input/style/style.min.css +1 -1
- package/lib/vxe-loading/style/style.css +1 -1
- package/lib/vxe-loading/style/style.min.css +1 -1
- package/lib/vxe-table/style/style.css +4 -4
- package/lib/vxe-table/style/style.min.css +1 -1
- package/lib/vxe-table-custom-module/style/style.css +326 -80
- package/lib/vxe-table-custom-module/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/checkbox/src/group.ts +8 -1
- package/packages/custom/src/hook.ts +1 -0
- package/packages/custom/src/panel.ts +213 -45
- package/packages/export/src/export-panel.ts +1 -1
- package/packages/export/src/import-panel.ts +1 -1
- package/packages/loading/src/loading.ts +1 -1
- package/packages/locale/lang/en-US.ts +18 -7
- package/packages/locale/lang/es-ES.ts +18 -7
- package/packages/locale/lang/ja-JP.ts +18 -6
- package/packages/locale/lang/pt-BR.ts +18 -7
- package/packages/locale/lang/zh-CN.ts +18 -7
- package/packages/locale/lang/zh-TC.ts +18 -7
- package/packages/modal/src/modal.ts +1 -1
- package/packages/radio/src/group.ts +8 -1
- package/packages/table/src/columnInfo.ts +9 -6
- package/packages/table/src/table.ts +62 -39
- package/packages/table/src/util.ts +1 -1
- package/styles/base/common.scss +4 -4
- package/styles/button.scss +5 -5
- package/styles/custom.scss +192 -86
- package/styles/helpers/mixin.scss +1 -1
- package/styles/input.scss +1 -2
- package/styles/loading.scss +1 -1
- package/styles/modal.scss +2 -2
- package/styles/select.scss +1 -1
- package/styles/table.scss +2 -2
- package/types/table.d.ts +32 -22
- package/types/v-x-e-table/renderer.d.ts +1 -0
- /package/es/icon/style/{iconfont.1714102086168.ttf → iconfont.1714295309081.ttf} +0 -0
- /package/es/icon/style/{iconfont.1714102086168.woff → iconfont.1714295309081.woff} +0 -0
- /package/es/icon/style/{iconfont.1714102086168.woff2 → iconfont.1714295309081.woff2} +0 -0
- /package/es/{iconfont.1714102086168.ttf → iconfont.1714295309081.ttf} +0 -0
- /package/es/{iconfont.1714102086168.woff → iconfont.1714295309081.woff} +0 -0
- /package/es/{iconfont.1714102086168.woff2 → iconfont.1714295309081.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1714102086168.ttf → iconfont.1714295309081.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1714102086168.woff → iconfont.1714295309081.woff} +0 -0
- /package/lib/icon/style/{iconfont.1714102086168.woff2 → iconfont.1714295309081.woff2} +0 -0
- /package/lib/{iconfont.1714102086168.ttf → iconfont.1714295309081.ttf} +0 -0
- /package/lib/{iconfont.1714102086168.woff → iconfont.1714295309081.woff} +0 -0
- /package/lib/{iconfont.1714102086168.woff2 → iconfont.1714295309081.woff2} +0 -0
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import { defineComponent, h, inject, ref, Ref, VNode, PropType, ComponentOptions } from 'vue'
|
|
1
|
+
import { defineComponent, h, inject, ref, Ref, VNode, PropType, ComponentOptions, TransitionGroup } from 'vue'
|
|
2
|
+
import { VXETable } from '../../v-x-e-table'
|
|
2
3
|
import { formatText } from '../../tools/utils'
|
|
4
|
+
import { addClass, removeClass } from '../../tools/dom'
|
|
3
5
|
import GlobalConfig from '../../v-x-e-table/src/conf'
|
|
4
6
|
import VxeModalComponent from '../../modal/src/modal'
|
|
5
7
|
import VxeButtonComponent from '../../button/src/button'
|
|
@@ -19,10 +21,16 @@ export default defineComponent({
|
|
|
19
21
|
setup (props) {
|
|
20
22
|
const $xetable = inject('$xetable', {} as VxeTableConstructor & VxeTableMethods & VxeTablePrivateMethods)
|
|
21
23
|
|
|
22
|
-
const {
|
|
24
|
+
const { reactData } = $xetable
|
|
23
25
|
const { computeCustomOpts, computeIsMaxFixedColumn } = $xetable.getComputeMaps()
|
|
24
26
|
|
|
25
27
|
const refElem = ref() as Ref<HTMLDivElement>
|
|
28
|
+
const bodyElemRef = ref() as Ref<HTMLDivElement>
|
|
29
|
+
const dragHintElemRef = ref() as Ref<HTMLDivElement>
|
|
30
|
+
|
|
31
|
+
const dragColumn = ref<VxeTableDefines.ColumnInfo | null>()
|
|
32
|
+
|
|
33
|
+
let prevDropTrEl: any
|
|
26
34
|
|
|
27
35
|
const handleWrapperMouseenterEvent = (evnt: Event) => {
|
|
28
36
|
const { customStore } = props
|
|
@@ -57,12 +65,24 @@ export default defineComponent({
|
|
|
57
65
|
}
|
|
58
66
|
|
|
59
67
|
const resetPopupCustomEvent = (evnt: Event) => {
|
|
60
|
-
|
|
68
|
+
if (VXETable.modal) {
|
|
69
|
+
VXETable.modal.confirm({
|
|
70
|
+
content: GlobalConfig.i18n('vxe.custom.cstmConfirmRestore'),
|
|
71
|
+
className: 'vxe-table--ignore-clear',
|
|
72
|
+
escClosable: true
|
|
73
|
+
}).then(type => {
|
|
74
|
+
if (type === 'confirm') {
|
|
75
|
+
resetCustomEvent(evnt)
|
|
76
|
+
}
|
|
77
|
+
})
|
|
78
|
+
} else {
|
|
79
|
+
resetCustomEvent(evnt)
|
|
80
|
+
}
|
|
61
81
|
}
|
|
62
82
|
|
|
63
83
|
const handleOptionCheck = (column: VxeTableDefines.ColumnInfo) => {
|
|
64
|
-
const {
|
|
65
|
-
const matchObj = XEUtils.findTree(
|
|
84
|
+
const { customColumnList } = reactData
|
|
85
|
+
const matchObj = XEUtils.findTree(customColumnList, item => item === column)
|
|
66
86
|
if (matchObj && matchObj.parent) {
|
|
67
87
|
const { parent } = matchObj
|
|
68
88
|
if (parent.children && parent.children.length) {
|
|
@@ -107,11 +127,11 @@ export default defineComponent({
|
|
|
107
127
|
|
|
108
128
|
const allCustomEvent = () => {
|
|
109
129
|
const { customStore } = props
|
|
110
|
-
const {
|
|
130
|
+
const { customColumnList } = reactData
|
|
111
131
|
const customOpts = computeCustomOpts.value
|
|
112
132
|
const { checkMethod } = customOpts
|
|
113
133
|
const isAll = !customStore.isAll
|
|
114
|
-
XEUtils.eachTree(
|
|
134
|
+
XEUtils.eachTree(customColumnList, (column) => {
|
|
115
135
|
if (!checkMethod || checkMethod({ column })) {
|
|
116
136
|
column.visible = isAll
|
|
117
137
|
column.halfVisible = false
|
|
@@ -121,9 +141,117 @@ export default defineComponent({
|
|
|
121
141
|
$xetable.checkCustomStatus()
|
|
122
142
|
}
|
|
123
143
|
|
|
144
|
+
const sortMousedownEvent = (evnt: DragEvent) => {
|
|
145
|
+
const btnEl = evnt.currentTarget as HTMLElement
|
|
146
|
+
const tdEl = btnEl.parentNode as HTMLElement
|
|
147
|
+
const trEl = tdEl.parentNode as HTMLElement
|
|
148
|
+
const colid = trEl.getAttribute('colid')
|
|
149
|
+
const column = $xetable.getColumnById(colid)
|
|
150
|
+
trEl.draggable = true
|
|
151
|
+
dragColumn.value = column
|
|
152
|
+
addClass(trEl, 'active--drag-origin')
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
const sortMouseupEvent = (evnt: DragEvent) => {
|
|
156
|
+
const btnEl = evnt.currentTarget as HTMLElement
|
|
157
|
+
const tdEl = btnEl.parentNode as HTMLElement
|
|
158
|
+
const trEl = tdEl.parentNode as HTMLElement
|
|
159
|
+
const dragHintEl = dragHintElemRef.value
|
|
160
|
+
trEl.draggable = false
|
|
161
|
+
dragColumn.value = null
|
|
162
|
+
removeClass(trEl, 'active--drag-origin')
|
|
163
|
+
if (dragHintEl) {
|
|
164
|
+
dragHintEl.style.display = ''
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
const sortDragstartEvent = (evnt: DragEvent) => {
|
|
169
|
+
const img = new Image()
|
|
170
|
+
if (evnt.dataTransfer) {
|
|
171
|
+
evnt.dataTransfer.setDragImage(img, 0, 0)
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
const sortDragendEvent = (evnt: DragEvent) => {
|
|
176
|
+
const { customColumnList } = reactData
|
|
177
|
+
const trEl = evnt.currentTarget as HTMLElement
|
|
178
|
+
const dragHintEl = dragHintElemRef.value
|
|
179
|
+
if (prevDropTrEl) {
|
|
180
|
+
// 判断是否有拖动
|
|
181
|
+
if (prevDropTrEl !== trEl) {
|
|
182
|
+
const dragOffset = prevDropTrEl.getAttribute('drag-pos')
|
|
183
|
+
const colid = trEl.getAttribute('colid')
|
|
184
|
+
const column = $xetable.getColumnById(colid)
|
|
185
|
+
if (!column) {
|
|
186
|
+
return
|
|
187
|
+
}
|
|
188
|
+
const cIndex = XEUtils.findIndexOf(customColumnList, item => item.id === column.id)
|
|
189
|
+
const targetColid = prevDropTrEl.getAttribute('colid')
|
|
190
|
+
const targetColumn = $xetable.getColumnById(targetColid)
|
|
191
|
+
if (!targetColumn) {
|
|
192
|
+
return
|
|
193
|
+
}
|
|
194
|
+
// 移出源位置
|
|
195
|
+
customColumnList.splice(cIndex, 1)
|
|
196
|
+
const tcIndex = XEUtils.findIndexOf(customColumnList, item => item.id === targetColumn.id)
|
|
197
|
+
// 插新位置
|
|
198
|
+
customColumnList.splice(tcIndex + (dragOffset === 'bottom' ? 1 : 0), 0, column)
|
|
199
|
+
}
|
|
200
|
+
prevDropTrEl.draggable = false
|
|
201
|
+
prevDropTrEl.removeAttribute('drag-pos')
|
|
202
|
+
removeClass(prevDropTrEl, 'active--drag-target')
|
|
203
|
+
}
|
|
204
|
+
dragColumn.value = null
|
|
205
|
+
trEl.draggable = false
|
|
206
|
+
trEl.removeAttribute('drag-pos')
|
|
207
|
+
if (dragHintEl) {
|
|
208
|
+
dragHintEl.style.display = ''
|
|
209
|
+
}
|
|
210
|
+
removeClass(trEl, 'active--drag-target')
|
|
211
|
+
removeClass(trEl, 'active--drag-origin')
|
|
212
|
+
// 更新顺序
|
|
213
|
+
customColumnList.forEach((column, index) => {
|
|
214
|
+
column.renderSortNumber = index
|
|
215
|
+
})
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
const sortDragoverEvent = (evnt: DragEvent) => {
|
|
219
|
+
const trEl = evnt.currentTarget as HTMLElement
|
|
220
|
+
if (prevDropTrEl !== trEl) {
|
|
221
|
+
removeClass(prevDropTrEl, 'active--drag-target')
|
|
222
|
+
}
|
|
223
|
+
const colid = trEl.getAttribute('colid')
|
|
224
|
+
const column = $xetable.getColumnById(colid)
|
|
225
|
+
// 是否移入有效元行
|
|
226
|
+
if (column && column.level === 1) {
|
|
227
|
+
evnt.preventDefault()
|
|
228
|
+
const offsetY = evnt.clientY - trEl.getBoundingClientRect().y
|
|
229
|
+
const dragOffset = offsetY < trEl.clientHeight / 2 ? 'top' : 'bottom'
|
|
230
|
+
addClass(trEl, 'active--drag-target')
|
|
231
|
+
trEl.setAttribute('drag-pos', dragOffset)
|
|
232
|
+
prevDropTrEl = trEl
|
|
233
|
+
}
|
|
234
|
+
updateDropHint(evnt)
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
const updateDropHint = (evnt: DragEvent) => {
|
|
238
|
+
const dragHintEl = dragHintElemRef.value
|
|
239
|
+
const bodyEl = bodyElemRef.value
|
|
240
|
+
if (!bodyEl) {
|
|
241
|
+
return
|
|
242
|
+
}
|
|
243
|
+
if (dragHintEl) {
|
|
244
|
+
const warpperEl = bodyEl.parentNode as HTMLElement
|
|
245
|
+
const warpperRect = warpperEl.getBoundingClientRect()
|
|
246
|
+
dragHintEl.style.display = 'block'
|
|
247
|
+
dragHintEl.style.top = `${Math.min(warpperEl.clientHeight - warpperEl.scrollTop - dragHintEl.clientHeight, evnt.clientY - warpperRect.y)}px`
|
|
248
|
+
dragHintEl.style.left = `${Math.min(warpperEl.clientWidth - warpperEl.scrollLeft - dragHintEl.clientWidth - 16, evnt.clientX - warpperRect.x)}px`
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
124
252
|
const renderSimplePanel = () => {
|
|
125
253
|
const { customStore } = props
|
|
126
|
-
const {
|
|
254
|
+
const { customColumnList } = reactData
|
|
127
255
|
const customOpts = computeCustomOpts.value
|
|
128
256
|
const { maxHeight } = customStore
|
|
129
257
|
const { checkMethod, visibleMethod, trigger } = customOpts
|
|
@@ -135,7 +263,7 @@ export default defineComponent({
|
|
|
135
263
|
customWrapperOns.onMouseenter = handleWrapperMouseenterEvent
|
|
136
264
|
customWrapperOns.onMouseleave = handleWrapperMouseleaveEvent
|
|
137
265
|
}
|
|
138
|
-
XEUtils.eachTree(
|
|
266
|
+
XEUtils.eachTree(customColumnList, (column, index, items, path, parent) => {
|
|
139
267
|
const isVisible = visibleMethod ? visibleMethod({ column }) : true
|
|
140
268
|
if (isVisible) {
|
|
141
269
|
const isChecked = column.visible
|
|
@@ -254,12 +382,12 @@ export default defineComponent({
|
|
|
254
382
|
|
|
255
383
|
const renderPopupPanel = () => {
|
|
256
384
|
const { customStore } = props
|
|
257
|
-
const {
|
|
385
|
+
const { customColumnList } = reactData
|
|
258
386
|
const customOpts = computeCustomOpts.value
|
|
259
387
|
const { checkMethod, visibleMethod } = customOpts
|
|
260
388
|
const isMaxFixedColumn = computeIsMaxFixedColumn.value
|
|
261
389
|
const trVNs: VNode[] = []
|
|
262
|
-
XEUtils.eachTree(
|
|
390
|
+
XEUtils.eachTree(customColumnList, (column, index, items, path, parent) => {
|
|
263
391
|
const isVisible = visibleMethod ? visibleMethod({ column }) : true
|
|
264
392
|
if (isVisible) {
|
|
265
393
|
const isChecked = column.visible
|
|
@@ -270,12 +398,29 @@ export default defineComponent({
|
|
|
270
398
|
trVNs.push(
|
|
271
399
|
h('tr', {
|
|
272
400
|
key: column.id,
|
|
273
|
-
|
|
401
|
+
colid: column.id,
|
|
402
|
+
class: [`vxe-table-custom-popup--row level--${column.level}`, {
|
|
274
403
|
'is--group': isColGroup
|
|
275
|
-
}]
|
|
404
|
+
}],
|
|
405
|
+
onDragstart: sortDragstartEvent,
|
|
406
|
+
onDragend: sortDragendEvent,
|
|
407
|
+
onDragover: sortDragoverEvent
|
|
276
408
|
}, [
|
|
277
409
|
h('td', {
|
|
278
|
-
class: 'vxe-table-custom-popup--column-
|
|
410
|
+
class: 'vxe-table-custom-popup--column-item col--sort'
|
|
411
|
+
}, [
|
|
412
|
+
column.level === 1 ? h('span', {
|
|
413
|
+
class: 'vxe-table-custom-popup--column-sort-btn',
|
|
414
|
+
onMousedown: sortMousedownEvent,
|
|
415
|
+
onMouseup: sortMouseupEvent
|
|
416
|
+
}, [
|
|
417
|
+
h('i', {
|
|
418
|
+
class: 'vxe-icon-sort'
|
|
419
|
+
})
|
|
420
|
+
]) : null
|
|
421
|
+
]),
|
|
422
|
+
h('td', {
|
|
423
|
+
class: 'vxe-table-custom-popup--column-item col--name'
|
|
279
424
|
}, [
|
|
280
425
|
h('div', {
|
|
281
426
|
class: 'vxe-table-custom-popup--name',
|
|
@@ -283,7 +428,7 @@ export default defineComponent({
|
|
|
283
428
|
}, colTitle)
|
|
284
429
|
]),
|
|
285
430
|
h('td', {
|
|
286
|
-
class: 'vxe-table-custom-popup--column-
|
|
431
|
+
class: 'vxe-table-custom-popup--column-item col--visible'
|
|
287
432
|
}, [
|
|
288
433
|
h('div', {
|
|
289
434
|
class: ['vxe-table-custom--checkbox-option', {
|
|
@@ -303,17 +448,16 @@ export default defineComponent({
|
|
|
303
448
|
])
|
|
304
449
|
]),
|
|
305
450
|
h('td', {
|
|
306
|
-
class: 'vxe-table-custom-popup--column-fixed'
|
|
451
|
+
class: 'vxe-table-custom-popup--column-item col--fixed'
|
|
307
452
|
}, [
|
|
308
453
|
!parent && customOpts.allowFixed ? h(VxeRadioGroupComponent, {
|
|
309
454
|
modelValue: column.fixed || '',
|
|
310
|
-
disabled: isMaxFixedColumn,
|
|
311
455
|
type: 'button',
|
|
312
456
|
size: 'mini',
|
|
313
457
|
options: [
|
|
314
|
-
{ label: '
|
|
315
|
-
{ label: '
|
|
316
|
-
{ label: '
|
|
458
|
+
{ label: GlobalConfig.i18n('vxe.custom.setting.fixedLeft'), value: 'left', disabled: isMaxFixedColumn },
|
|
459
|
+
{ label: GlobalConfig.i18n('vxe.custom.setting.fixedUnset'), value: '' },
|
|
460
|
+
{ label: GlobalConfig.i18n('vxe.custom.setting.fixedRight'), value: 'right', disabled: isMaxFixedColumn }
|
|
317
461
|
],
|
|
318
462
|
'onUpdate:modelValue' (value: any) {
|
|
319
463
|
column.fixed = value
|
|
@@ -329,47 +473,71 @@ export default defineComponent({
|
|
|
329
473
|
})
|
|
330
474
|
return h(VxeModalComponent as ComponentOptions, {
|
|
331
475
|
key: 'popup',
|
|
332
|
-
className: 'vxe-table-custom-popup-
|
|
476
|
+
className: 'vxe-table-custom-popup-wrapper vxe-table--ignore-clear',
|
|
333
477
|
modelValue: customStore.visible,
|
|
334
478
|
title: GlobalConfig.i18n('vxe.custom.cstmTitle'),
|
|
335
|
-
width:
|
|
336
|
-
|
|
479
|
+
width: '40vw',
|
|
480
|
+
minWidth: 500,
|
|
481
|
+
height: '50vh',
|
|
482
|
+
minHeight: 300,
|
|
337
483
|
mask: true,
|
|
338
484
|
lockView: true,
|
|
339
485
|
showFooter: true,
|
|
486
|
+
resize: true,
|
|
340
487
|
escClosable: true,
|
|
488
|
+
destroyOnClose: true,
|
|
341
489
|
'onUpdate:modelValue' (value: any) {
|
|
342
490
|
customStore.visible = value
|
|
343
491
|
}
|
|
344
492
|
}, {
|
|
345
493
|
default: () => {
|
|
346
494
|
return h('div', {
|
|
495
|
+
ref: bodyElemRef,
|
|
347
496
|
class: 'vxe-table-custom-popup--body'
|
|
348
497
|
}, [
|
|
349
|
-
h('
|
|
498
|
+
h('div', {
|
|
499
|
+
class: 'vxe-table-custom-popup--table-wrapper'
|
|
350
500
|
}, [
|
|
351
|
-
h('
|
|
352
|
-
h('
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
501
|
+
h('table', {}, [
|
|
502
|
+
h('colgroup', {}, [
|
|
503
|
+
h('col', {
|
|
504
|
+
style: {
|
|
505
|
+
width: '60px'
|
|
506
|
+
}
|
|
507
|
+
}),
|
|
508
|
+
h('col'),
|
|
509
|
+
h('col', {
|
|
510
|
+
style: {
|
|
511
|
+
width: '80px'
|
|
512
|
+
}
|
|
513
|
+
}),
|
|
514
|
+
h('col', {
|
|
515
|
+
style: {
|
|
516
|
+
width: '200px'
|
|
517
|
+
}
|
|
518
|
+
})
|
|
519
|
+
]),
|
|
520
|
+
h('thead', {}, [
|
|
521
|
+
h('tr', {}, [
|
|
522
|
+
h('th', {}, GlobalConfig.i18n('vxe.custom.setting.colSort')),
|
|
523
|
+
h('th', {}, GlobalConfig.i18n('vxe.custom.setting.colTitle')),
|
|
524
|
+
h('th', {}, GlobalConfig.i18n('vxe.custom.setting.colVisible')),
|
|
525
|
+
h('th', {}, GlobalConfig.i18n('vxe.custom.setting.colFixed'))
|
|
526
|
+
])
|
|
527
|
+
]),
|
|
528
|
+
h(TransitionGroup, {
|
|
529
|
+
class: 'vxe-table-custom--body',
|
|
530
|
+
tag: 'tbody',
|
|
531
|
+
name: 'vxe-table-custom--flip'
|
|
532
|
+
}, {
|
|
533
|
+
default: () => trVNs
|
|
362
534
|
})
|
|
363
|
-
])
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
])
|
|
370
|
-
]),
|
|
371
|
-
h('tbody', {}, trVNs)
|
|
372
|
-
])
|
|
535
|
+
])
|
|
536
|
+
]),
|
|
537
|
+
h('div', {
|
|
538
|
+
ref: dragHintElemRef,
|
|
539
|
+
class: 'vxe-table-custom-popup--drag-hint'
|
|
540
|
+
}, GlobalConfig.i18n('vxe.custom.cstmDragTarget', [dragColumn.value ? dragColumn.value.getTitle() : '']))
|
|
373
541
|
])
|
|
374
542
|
},
|
|
375
543
|
footer: () => {
|
|
@@ -193,7 +193,7 @@ export default defineComponent({
|
|
|
193
193
|
return h(VxeModalComponent, {
|
|
194
194
|
modelValue: storeData.visible,
|
|
195
195
|
title: GlobalConfig.i18n(isPrint ? 'vxe.export.printTitle' : 'vxe.export.expTitle'),
|
|
196
|
-
className: 'vxe-table-export-popup-
|
|
196
|
+
className: 'vxe-table-export-popup-wrapper',
|
|
197
197
|
width: 660,
|
|
198
198
|
mask: true,
|
|
199
199
|
lockView: true,
|
|
@@ -96,7 +96,7 @@ export default defineComponent({
|
|
|
96
96
|
return h(VxeModalComponent, {
|
|
97
97
|
modelValue: storeData.visible,
|
|
98
98
|
title: GlobalConfig.i18n('vxe.import.impTitle'),
|
|
99
|
-
className: 'vxe-table-import-popup-
|
|
99
|
+
className: 'vxe-table-import-popup-wrapper',
|
|
100
100
|
width: 440,
|
|
101
101
|
mask: true,
|
|
102
102
|
lockView: true,
|
|
@@ -8,7 +8,7 @@ export default {
|
|
|
8
8
|
text: 'Loading...'
|
|
9
9
|
},
|
|
10
10
|
error: {
|
|
11
|
-
groupFixed: 'If you use group headers, the
|
|
11
|
+
groupFixed: 'If you use group headers, the freeze columns must be set by group.',
|
|
12
12
|
groupMouseRange: 'Grouping headers and "{0}" cannot be used at the same time, which may cause errors.',
|
|
13
13
|
groupTag: 'Grouping column header should use "{0}" instead of "{1}", which may cause errors.',
|
|
14
14
|
scrollErrProp: 'The parameter "{0}" is not supported when virtual scrolling is enabled.',
|
|
@@ -61,7 +61,7 @@ export default {
|
|
|
61
61
|
customAll: 'All',
|
|
62
62
|
customConfirm: 'Confirm',
|
|
63
63
|
customRestore: 'Reset',
|
|
64
|
-
maxFixedCol: 'The maximum number of
|
|
64
|
+
maxFixedCol: 'The maximum number of Freeze columns cannot exceed {0}'
|
|
65
65
|
},
|
|
66
66
|
grid: {
|
|
67
67
|
selectOneRecord: 'Please choose at least one piece of record!',
|
|
@@ -96,7 +96,7 @@ export default {
|
|
|
96
96
|
endPageTitle: 'End'
|
|
97
97
|
},
|
|
98
98
|
alert: {
|
|
99
|
-
title: '
|
|
99
|
+
title: 'System messages'
|
|
100
100
|
},
|
|
101
101
|
button: {
|
|
102
102
|
confirm: 'Confirm',
|
|
@@ -109,7 +109,18 @@ export default {
|
|
|
109
109
|
cstmTitle: 'Column Settings',
|
|
110
110
|
cstmRestore: 'Restore default',
|
|
111
111
|
cstmCancel: 'Cancelar',
|
|
112
|
-
cstmConfirm: 'Confirm'
|
|
112
|
+
cstmConfirm: 'Confirm',
|
|
113
|
+
cstmConfirmRestore: 'Please confirm whether to restore the default column configuration?',
|
|
114
|
+
cstmDragTarget: 'Moving target: {0}',
|
|
115
|
+
setting: {
|
|
116
|
+
colSort: 'Sort',
|
|
117
|
+
colTitle: 'Title',
|
|
118
|
+
colVisible: 'Visible',
|
|
119
|
+
colFixed: 'Freeze column',
|
|
120
|
+
fixedLeft: 'Left',
|
|
121
|
+
fixedUnset: 'Unset',
|
|
122
|
+
fixedRight: 'Right'
|
|
123
|
+
}
|
|
113
124
|
},
|
|
114
125
|
import: {
|
|
115
126
|
modes: {
|
|
@@ -188,9 +199,9 @@ export default {
|
|
|
188
199
|
customAll: 'All',
|
|
189
200
|
customConfirm: 'Confirm',
|
|
190
201
|
customRestore: 'Reset',
|
|
191
|
-
fixedLeft: '
|
|
192
|
-
fixedRight: '
|
|
193
|
-
cancelfixed: '
|
|
202
|
+
fixedLeft: 'Freeze on the left',
|
|
203
|
+
fixedRight: 'Freeze on the right',
|
|
204
|
+
cancelfixed: 'Unfreeze column'
|
|
194
205
|
},
|
|
195
206
|
input: {
|
|
196
207
|
date: {
|
|
@@ -8,7 +8,7 @@ export default {
|
|
|
8
8
|
text: 'Cargando...'
|
|
9
9
|
},
|
|
10
10
|
error: {
|
|
11
|
-
groupFixed: '
|
|
11
|
+
groupFixed: 'If you use group headers, the freeze columns must be set by group.',
|
|
12
12
|
groupMouseRange: 'Los encabezados de agrupación y "{0}" no pueden ser utilizados al mismo tiempo, lo que puede causar errores.',
|
|
13
13
|
groupTag: 'El encabezado de columna de agrupación debería utilizar "{0}" en lugar de "{1}", lo que puede causar errores.',
|
|
14
14
|
scrollErrProp: 'El parámetro "{0}" no es compatible cuando el desplazamiento virtual está habilitado.',
|
|
@@ -61,7 +61,7 @@ export default {
|
|
|
61
61
|
customAll: 'Todo',
|
|
62
62
|
customConfirm: 'Confirmar',
|
|
63
63
|
customRestore: 'Restaurar',
|
|
64
|
-
maxFixedCol: '
|
|
64
|
+
maxFixedCol: 'The maximum number of Freeze columns cannot exceed {0}'
|
|
65
65
|
},
|
|
66
66
|
grid: {
|
|
67
67
|
selectOneRecord: '¡Seleccione al menos un registro!',
|
|
@@ -88,7 +88,7 @@ export default {
|
|
|
88
88
|
nextJump: 'Saltar siguiente página'
|
|
89
89
|
},
|
|
90
90
|
alert: {
|
|
91
|
-
title: '
|
|
91
|
+
title: 'System messages'
|
|
92
92
|
},
|
|
93
93
|
button: {
|
|
94
94
|
confirm: 'Confirmar',
|
|
@@ -101,7 +101,18 @@ export default {
|
|
|
101
101
|
cstmTitle: 'Column Settings',
|
|
102
102
|
cstmRestore: 'Restore default',
|
|
103
103
|
cstmCancel: 'Cancelar',
|
|
104
|
-
cstmConfirm: 'Confirm'
|
|
104
|
+
cstmConfirm: 'Confirm',
|
|
105
|
+
cstmConfirmRestore: 'Please confirm whether to restore the default column configuration?',
|
|
106
|
+
cstmDragTarget: 'Moving target: {0}',
|
|
107
|
+
setting: {
|
|
108
|
+
colSort: 'Sort',
|
|
109
|
+
colTitle: 'Title',
|
|
110
|
+
colVisible: 'Visible',
|
|
111
|
+
colFixed: 'Freeze column',
|
|
112
|
+
fixedLeft: 'Left',
|
|
113
|
+
fixedUnset: 'Unset',
|
|
114
|
+
fixedRight: 'Right'
|
|
115
|
+
}
|
|
105
116
|
},
|
|
106
117
|
import: {
|
|
107
118
|
modes: {
|
|
@@ -180,9 +191,9 @@ export default {
|
|
|
180
191
|
customAll: 'Todo',
|
|
181
192
|
customConfirm: 'Confirmar',
|
|
182
193
|
customRestore: 'Restaurar',
|
|
183
|
-
fixedLeft: '
|
|
184
|
-
fixedRight: '
|
|
185
|
-
cancelfixed: '
|
|
194
|
+
fixedLeft: 'Freeze on the left',
|
|
195
|
+
fixedRight: 'Freeze on the right',
|
|
196
|
+
cancelfixed: 'Unfreeze column'
|
|
186
197
|
},
|
|
187
198
|
entrada: {
|
|
188
199
|
fecha: {
|
|
@@ -8,7 +8,7 @@ export default {
|
|
|
8
8
|
text: 'Loading...'
|
|
9
9
|
},
|
|
10
10
|
error: {
|
|
11
|
-
groupFixed: '
|
|
11
|
+
groupFixed: 'If you use group headers, the freeze columns must be set by group.',
|
|
12
12
|
groupMouseRange: 'グループ化ヘッダーと「{0}」は同時に使用できません。これによりエラーが発生する可能性があります',
|
|
13
13
|
groupTag: '分组列头应该使用 "{0}" 而不是 "{1}",这可能会出现错误',
|
|
14
14
|
scrollErrProp: '启用虚拟滚动后不支持该参数 "{0}"',
|
|
@@ -61,7 +61,7 @@ export default {
|
|
|
61
61
|
customAll: '全部',
|
|
62
62
|
customConfirm: '确认',
|
|
63
63
|
customRestore: 'リセット',
|
|
64
|
-
maxFixedCol: '
|
|
64
|
+
maxFixedCol: 'The maximum number of Freeze columns cannot exceed {0}'
|
|
65
65
|
},
|
|
66
66
|
grid: {
|
|
67
67
|
selectOneRecord: '少なくとも1つのレコードを選択してください',
|
|
@@ -96,7 +96,7 @@ export default {
|
|
|
96
96
|
endPageTitle: 'End page'
|
|
97
97
|
},
|
|
98
98
|
alert: {
|
|
99
|
-
title: '
|
|
99
|
+
title: 'System messages'
|
|
100
100
|
},
|
|
101
101
|
button: {
|
|
102
102
|
confirm: '完了',
|
|
@@ -109,7 +109,18 @@ export default {
|
|
|
109
109
|
cstmTitle: 'Column Settings',
|
|
110
110
|
cstmRestore: 'Restore default',
|
|
111
111
|
cstmCancel: 'Cancelar',
|
|
112
|
-
cstmConfirm: 'Confirm'
|
|
112
|
+
cstmConfirm: 'Confirm',
|
|
113
|
+
cstmConfirmRestore: 'Please confirm whether to restore the default column configuration?',
|
|
114
|
+
cstmDragTarget: 'Moving target: {0}',
|
|
115
|
+
setting: {
|
|
116
|
+
colSort: 'Sort',
|
|
117
|
+
colTitle: 'Title',
|
|
118
|
+
colVisible: 'Visible',
|
|
119
|
+
colFixed: 'Freeze column',
|
|
120
|
+
fixedLeft: 'Left',
|
|
121
|
+
fixedUnset: 'Unset',
|
|
122
|
+
fixedRight: 'Right'
|
|
123
|
+
}
|
|
113
124
|
},
|
|
114
125
|
import: {
|
|
115
126
|
modes: {
|
|
@@ -188,8 +199,9 @@ export default {
|
|
|
188
199
|
customAll: '全部',
|
|
189
200
|
customConfirm: '確定',
|
|
190
201
|
customRestore: 'リセット',
|
|
191
|
-
fixedLeft: '
|
|
192
|
-
fixedRight: '
|
|
202
|
+
fixedLeft: 'Freeze on the left',
|
|
203
|
+
fixedRight: 'Freeze on the right',
|
|
204
|
+
cancelfixed: 'Unfreeze column'
|
|
193
205
|
},
|
|
194
206
|
input: {
|
|
195
207
|
date: {
|
|
@@ -8,7 +8,7 @@ export default {
|
|
|
8
8
|
text: 'Carregando...'
|
|
9
9
|
},
|
|
10
10
|
error: {
|
|
11
|
-
groupFixed: '
|
|
11
|
+
groupFixed: 'If you use group headers, the freeze columns must be set by group.',
|
|
12
12
|
groupMouseRange: 'Agrupar cabeçalhos e "{0}" não podem ser usados ao mesmo tempo, o que pode causar erros.',
|
|
13
13
|
groupTag: 'O cabeçalho da coluna de agrupamento deve usar "{0}" em vez de "{1}", o que pode causar erros.',
|
|
14
14
|
scrollErrProp: 'O parâmetro "{0}" não é suportado quando a rolagem virtual está habilitada.',
|
|
@@ -147,7 +147,7 @@ export default {
|
|
|
147
147
|
customAll: 'Todos',
|
|
148
148
|
customConfirm: 'Confirmar',
|
|
149
149
|
customRestore: 'Redefinir',
|
|
150
|
-
maxFixedCol: '
|
|
150
|
+
maxFixedCol: 'The maximum number of Freeze columns cannot exceed {0}'
|
|
151
151
|
},
|
|
152
152
|
grid: {
|
|
153
153
|
selectOneRecord: 'Por favor, selecione pelo menos um registro!',
|
|
@@ -174,7 +174,7 @@ export default {
|
|
|
174
174
|
nextJump: 'Saltar para próxima página'
|
|
175
175
|
},
|
|
176
176
|
alert: {
|
|
177
|
-
title: '
|
|
177
|
+
title: 'System messages'
|
|
178
178
|
},
|
|
179
179
|
button: {
|
|
180
180
|
confirm: 'Confirmar',
|
|
@@ -184,7 +184,18 @@ export default {
|
|
|
184
184
|
cstmTitle: 'Column Settings',
|
|
185
185
|
cstmRestore: 'Restore default',
|
|
186
186
|
cstmCancel: 'Cancelar',
|
|
187
|
-
cstmConfirm: 'Confirm'
|
|
187
|
+
cstmConfirm: 'Confirm',
|
|
188
|
+
cstmConfirmRestore: 'Please confirm whether to restore the default column configuration?',
|
|
189
|
+
cstmDragTarget: 'Moving target: {0}',
|
|
190
|
+
setting: {
|
|
191
|
+
colSort: 'Sort',
|
|
192
|
+
colTitle: 'Title',
|
|
193
|
+
colVisible: 'Visible',
|
|
194
|
+
colFixed: 'Freeze column',
|
|
195
|
+
fixedLeft: 'Left',
|
|
196
|
+
fixedUnset: 'Unset',
|
|
197
|
+
fixedRight: 'Right'
|
|
198
|
+
}
|
|
188
199
|
},
|
|
189
200
|
import: {
|
|
190
201
|
modes: {
|
|
@@ -263,9 +274,9 @@ export default {
|
|
|
263
274
|
customAll: 'Todos',
|
|
264
275
|
customConfirm: 'Confirmar',
|
|
265
276
|
customRestore: 'Redefinir',
|
|
266
|
-
fixedLeft: '
|
|
267
|
-
fixedRight: '
|
|
268
|
-
cancelfixed: '
|
|
277
|
+
fixedLeft: 'Freeze on the left',
|
|
278
|
+
fixedRight: 'Freeze on the right',
|
|
279
|
+
cancelfixed: 'Unfreeze column'
|
|
269
280
|
},
|
|
270
281
|
input: {
|
|
271
282
|
date: {
|