vxe-table 3.9.0-rc.8 → 3.9.0
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.md +1 -1
- package/es/grid/src/grid.js +120 -66
- package/es/grid/style.css +0 -1
- package/es/grid/style.min.css +1 -1
- package/es/index.esm.js +22 -3
- package/es/locale/lang/en-US.js +2 -8
- package/es/locale/lang/es-ES.js +2 -1
- package/es/locale/lang/hu-HU.d.ts +2 -0
- package/es/locale/lang/hu-HU.js +497 -501
- package/es/locale/lang/ja-JP.js +2 -8
- package/es/locale/lang/ko-KR.d.ts +2 -0
- package/es/locale/lang/ko-KR.js +2 -8
- package/es/locale/lang/pt-BR.js +2 -8
- package/es/locale/lang/ru-RU.d.ts +2 -0
- package/es/locale/lang/ru-RU.js +497 -503
- package/es/locale/lang/uk-UA.d.ts +2 -0
- package/es/locale/lang/uk-UA.js +667 -0
- package/es/locale/lang/vi-VN.js +2 -8
- package/es/locale/lang/zh-CHT.d.ts +2 -0
- package/es/locale/lang/zh-CHT.js +667 -0
- package/es/locale/lang/zh-CN.js +2 -8
- package/es/locale/lang/zh-HK.js +2 -2
- package/es/locale/lang/zh-MO.js +2 -2
- package/es/locale/lang/zh-TC.js +2 -673
- package/es/locale/lang/zh-TW.js +2 -2
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/custom/panel.js +183 -173
- package/es/table/module/edit/mixin.js +33 -24
- package/es/table/module/export/export-panel.js +32 -4
- package/es/table/module/export/import-panel.js +25 -6
- package/es/table/module/export/mixin.js +11 -11
- package/es/table/module/menu/mixin.js +2 -2
- package/es/table/module/validator/mixin.js +4 -4
- package/es/table/render/index.js +17 -11
- package/es/table/src/body.js +1 -0
- package/es/table/src/columnInfo.js +3 -3
- package/es/table/src/methods.js +54 -42
- package/es/table/src/props.js +65 -15
- package/es/table/src/table.js +175 -60
- package/es/table/src/util.js +3 -2
- package/es/table/style.css +37 -48
- package/es/table/style.min.css +1 -1
- package/es/toolbar/src/toolbar.js +21 -7
- package/es/toolbar/style.css +0 -1
- package/es/toolbar/style.min.css +1 -1
- package/es/ui/index.js +5 -3
- package/es/ui/src/log.js +1 -1
- package/es/vxe-grid/style.css +0 -1
- package/es/vxe-grid/style.min.css +1 -1
- package/es/vxe-table/style.css +37 -48
- package/es/vxe-table/style.min.css +1 -1
- package/es/vxe-toolbar/style.css +0 -1
- package/es/vxe-toolbar/style.min.css +1 -1
- package/lib/colgroup/index.js +3 -3
- package/lib/colgroup/index.min.js +1 -1
- package/lib/column/index.js +3 -3
- package/lib/column/index.min.js +1 -1
- package/lib/components.js +9 -11
- package/lib/components.min.js +1 -1
- package/lib/grid/index.js +3 -3
- package/lib/grid/index.min.js +1 -1
- package/lib/grid/src/grid.js +581 -491
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/grid/style/style.css +0 -1
- package/lib/grid/style/style.min.css +1 -1
- package/lib/index.common.js +3 -4
- package/lib/index.umd.js +9212 -17224
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/en-US.js +2 -8
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +2 -8
- package/lib/locale/lang/es-ES.js +2 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +2 -1
- package/lib/locale/lang/hu-HU.d.ts +2 -0
- package/lib/locale/lang/hu-HU.js +497 -501
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +687 -0
- package/lib/locale/lang/ja-JP.js +2 -8
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +2 -8
- package/lib/locale/lang/ko-KR.d.ts +2 -0
- package/lib/locale/lang/ko-KR.js +2 -8
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +687 -0
- package/lib/locale/lang/pt-BR.js +2 -8
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +2 -8
- package/lib/locale/lang/ru-RU.d.ts +2 -0
- package/lib/locale/lang/ru-RU.js +497 -503
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +687 -0
- package/lib/locale/lang/uk-UA.d.ts +2 -0
- package/lib/locale/lang/uk-UA.js +673 -0
- package/lib/locale/lang/uk-UA.min.js +1 -0
- package/lib/locale/lang/uk-UA.umd.js +687 -0
- package/lib/locale/lang/vi-VN.js +2 -8
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/zh-CHT.d.ts +2 -0
- package/lib/locale/lang/zh-CHT.js +673 -0
- package/lib/locale/lang/zh-CHT.min.js +1 -0
- package/lib/locale/lang/zh-CHT.umd.js +687 -0
- package/lib/locale/lang/zh-CN.js +2 -8
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +2 -8
- package/lib/locale/lang/zh-HK.js +2 -2
- package/lib/locale/lang/zh-HK.min.js +1 -1
- package/lib/locale/lang/zh-HK.umd.js +7 -677
- package/lib/locale/lang/zh-MO.js +2 -2
- package/lib/locale/lang/zh-MO.min.js +1 -1
- package/lib/locale/lang/zh-MO.umd.js +7 -677
- package/lib/locale/lang/zh-TC.js +3 -673
- package/lib/locale/lang/zh-TC.min.js +1 -1
- package/lib/locale/lang/zh-TC.umd.js +7 -677
- package/lib/locale/lang/zh-TW.js +2 -2
- package/lib/locale/lang/zh-TW.min.js +1 -1
- package/lib/locale/lang/zh-TW.umd.js +7 -677
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/index.js +4 -4
- package/lib/table/index.min.js +1 -1
- package/lib/table/module/custom/mixin.js +53 -44
- package/lib/table/module/custom/mixin.min.js +1 -1
- package/lib/table/module/custom/panel.js +310 -239
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/mixin.js +436 -371
- package/lib/table/module/edit/mixin.min.js +1 -1
- package/lib/table/module/export/export-panel.js +136 -106
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/import-panel.js +75 -54
- package/lib/table/module/export/import-panel.min.js +1 -1
- package/lib/table/module/export/mixin.js +592 -597
- package/lib/table/module/export/mixin.min.js +1 -1
- package/lib/table/module/export/util.js +6 -4
- package/lib/table/module/export/util.min.js +1 -1
- package/lib/table/module/filter/mixin.js +147 -118
- package/lib/table/module/filter/mixin.min.js +1 -1
- package/lib/table/module/filter/panel.js +86 -65
- package/lib/table/module/filter/panel.min.js +1 -1
- package/lib/table/module/keyboard/mixin.js +163 -151
- package/lib/table/module/keyboard/mixin.min.js +1 -1
- package/lib/table/module/menu/mixin.js +125 -114
- package/lib/table/module/menu/mixin.min.js +1 -1
- package/lib/table/module/menu/panel.js +36 -34
- package/lib/table/module/menu/panel.min.js +1 -1
- package/lib/table/module/validator/mixin.js +225 -214
- package/lib/table/module/validator/mixin.min.js +1 -1
- package/lib/table/render/index.js +401 -297
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/body.js +411 -349
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +470 -344
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/column.js +10 -10
- package/lib/table/src/column.min.js +1 -1
- package/lib/table/src/columnInfo.js +46 -55
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/footer.js +157 -132
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/group.js +1 -1
- package/lib/table/src/group.min.js +1 -1
- package/lib/table/src/header.js +170 -153
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/methods.js +2758 -2478
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/props.js +33 -74
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +519 -397
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +143 -131
- package/lib/table/src/util.min.js +1 -1
- package/lib/table/style/style.css +37 -48
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/index.js +3 -3
- package/lib/toolbar/index.min.js +1 -1
- package/lib/toolbar/src/toolbar.js +332 -284
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/toolbar/style/style.css +0 -1
- package/lib/toolbar/style/style.min.css +1 -1
- package/lib/ui/index.js +50 -41
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/comp.js +2 -3
- package/lib/ui/src/comp.min.js +1 -1
- package/lib/ui/src/dom.js +29 -28
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +6 -4
- package/lib/ui/src/log.min.js +1 -1
- package/lib/ui/src/utils.js +7 -7
- package/lib/v-x-e-table/index.js +3 -4
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/vxe-colgroup/index.js +3 -4
- package/lib/vxe-colgroup/index.min.js +1 -1
- package/lib/vxe-column/index.js +3 -4
- package/lib/vxe-column/index.min.js +1 -1
- package/lib/vxe-grid/index.js +3 -4
- package/lib/vxe-grid/index.min.js +1 -1
- package/lib/vxe-grid/style/style.css +0 -1
- package/lib/vxe-grid/style/style.min.css +1 -1
- package/lib/vxe-table/index.js +3 -4
- package/lib/vxe-table/index.min.js +1 -1
- package/lib/vxe-table/style/style.css +37 -48
- package/lib/vxe-table/style/style.min.css +1 -1
- package/lib/vxe-toolbar/index.js +3 -4
- package/lib/vxe-toolbar/index.min.js +1 -1
- package/lib/vxe-toolbar/style/style.css +0 -1
- package/lib/vxe-toolbar/style/style.min.css +1 -1
- package/lib/vxe-ui/index.js +3 -4
- package/lib/vxe-ui/index.min.js +1 -1
- package/lib/vxe-v-x-e-table/index.js +3 -4
- package/lib/vxe-v-x-e-table/index.min.js +1 -1
- package/package.json +5 -4
- package/packages/grid/src/grid.ts +127 -65
- package/packages/locale/lang/en-US.ts +2 -10
- package/packages/locale/lang/es-ES.ts +2 -1
- package/packages/locale/lang/hu-HU.ts +497 -503
- package/packages/locale/lang/ja-JP.ts +2 -10
- package/packages/locale/lang/ko-KR.ts +2 -10
- package/packages/locale/lang/pt-BR.ts +2 -10
- package/packages/locale/lang/ru-RU.ts +497 -505
- package/packages/locale/lang/uk-UA.ts +667 -0
- package/packages/locale/lang/vi-VN.ts +2 -10
- package/packages/locale/lang/zh-CHT.ts +667 -0
- package/packages/locale/lang/zh-CN.ts +2 -10
- package/packages/locale/lang/zh-HK.ts +2 -2
- package/packages/locale/lang/zh-MO.ts +2 -2
- package/packages/locale/lang/zh-TC.ts +2 -674
- package/packages/locale/lang/zh-TW.ts +2 -2
- package/packages/table/module/custom/panel.ts +186 -175
- package/packages/table/module/edit/mixin.ts +32 -23
- package/packages/table/module/export/export-panel.ts +36 -4
- package/packages/table/module/export/import-panel.ts +29 -6
- package/packages/table/module/export/mixin.ts +11 -11
- package/packages/table/module/menu/mixin.ts +2 -2
- package/packages/table/module/validator/mixin.ts +4 -4
- package/packages/table/render/index.ts +20 -11
- package/packages/table/src/body.ts +1 -0
- package/packages/table/src/columnInfo.ts +3 -3
- package/packages/table/src/methods.ts +53 -42
- package/packages/table/src/props.ts +68 -15
- package/packages/table/src/table.ts +183 -57
- package/packages/table/src/util.ts +3 -2
- package/packages/toolbar/src/toolbar.ts +21 -7
- package/packages/ui/index.ts +3 -1
- package/styles/components/table.scss +82 -17
- package/types/all.d.ts +1 -0
- /package/es/{iconfont.1726318179195.ttf → iconfont.1728348263835.ttf} +0 -0
- /package/es/{iconfont.1726318179195.woff → iconfont.1728348263835.woff} +0 -0
- /package/es/{iconfont.1726318179195.woff2 → iconfont.1728348263835.woff2} +0 -0
- /package/lib/{iconfont.1726318179195.ttf → iconfont.1728348263835.ttf} +0 -0
- /package/lib/{iconfont.1726318179195.woff → iconfont.1728348263835.woff} +0 -0
- /package/lib/{iconfont.1726318179195.woff2 → iconfont.1728348263835.woff2} +0 -0
|
@@ -7,30 +7,36 @@ exports.default = void 0;
|
|
|
7
7
|
var _ui = require("../../../ui");
|
|
8
8
|
var _utils = require("../../../ui/src/utils");
|
|
9
9
|
var _vn = require("../../../ui/src/vn");
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
const {
|
|
11
|
+
getI18n,
|
|
12
|
+
getIcon,
|
|
13
|
+
renderer
|
|
14
|
+
} = _ui.VxeUI;
|
|
13
15
|
var _default = exports.default = {
|
|
14
16
|
name: 'VxeTableFilterPanel',
|
|
15
17
|
props: {
|
|
16
18
|
filterStore: Object
|
|
17
19
|
},
|
|
18
20
|
computed: {
|
|
19
|
-
hasCheckOption
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
hasCheckOption() {
|
|
22
|
+
const {
|
|
23
|
+
filterStore
|
|
24
|
+
} = this;
|
|
25
|
+
return filterStore && filterStore.options.some(option => option.checked);
|
|
24
26
|
}
|
|
25
27
|
},
|
|
26
|
-
render
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
28
|
+
render(h) {
|
|
29
|
+
const {
|
|
30
|
+
$parent: $xetable,
|
|
31
|
+
filterStore
|
|
32
|
+
} = this;
|
|
33
|
+
const {
|
|
34
|
+
args,
|
|
35
|
+
column
|
|
36
|
+
} = filterStore;
|
|
37
|
+
const filterRender = column ? column.filterRender : null;
|
|
38
|
+
const compConf = (0, _utils.isEnableConf)(filterRender) ? renderer.get(filterRender.name) : null;
|
|
39
|
+
const filterClassName = compConf ? compConf.tableFilterClassName || compConf.filterClassName : '';
|
|
34
40
|
return h('div', {
|
|
35
41
|
class: ['vxe-table--filter-wrapper', 'filter--prevent-default', compConf && compConf.className ? compConf.className : '', (0, _utils.getClass)(filterClassName, Object.assign({
|
|
36
42
|
$panel: this,
|
|
@@ -44,16 +50,19 @@ var _default = exports.default = {
|
|
|
44
50
|
}, filterStore.visible && column ? this.renderOptions(h, filterRender, compConf).concat(this.renderFooter(h)) : []);
|
|
45
51
|
},
|
|
46
52
|
methods: {
|
|
47
|
-
renderOptions
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
filterStore
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
53
|
+
renderOptions(h, filterRender, compConf) {
|
|
54
|
+
const {
|
|
55
|
+
$parent: $xetable,
|
|
56
|
+
filterStore
|
|
57
|
+
} = this;
|
|
58
|
+
const {
|
|
59
|
+
args,
|
|
60
|
+
column,
|
|
61
|
+
multiple,
|
|
62
|
+
maxHeight
|
|
63
|
+
} = filterStore;
|
|
64
|
+
const slots = column ? column.slots : null;
|
|
65
|
+
const rtFilter = compConf ? compConf.renderTableFilter || compConf.renderFilter : null;
|
|
57
66
|
if (slots && slots.filter) {
|
|
58
67
|
return [h('div', {
|
|
59
68
|
class: 'vxe-table--filter-template'
|
|
@@ -69,10 +78,8 @@ var _default = exports.default = {
|
|
|
69
78
|
context: this
|
|
70
79
|
}, args))))];
|
|
71
80
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
});
|
|
75
|
-
var isAllIndeterminate = multiple && filterStore.isIndeterminate;
|
|
81
|
+
const isAllChecked = multiple ? filterStore.isAllSelected : !filterStore.options.some(item => item._checked);
|
|
82
|
+
const isAllIndeterminate = multiple && filterStore.isIndeterminate;
|
|
76
83
|
return [h('ul', {
|
|
77
84
|
class: 'vxe-table--filter-header'
|
|
78
85
|
}, [h('li', {
|
|
@@ -84,8 +91,8 @@ var _default = exports.default = {
|
|
|
84
91
|
title: getI18n(multiple ? 'vxe.table.allTitle' : 'vxe.table.allFilter')
|
|
85
92
|
},
|
|
86
93
|
on: {
|
|
87
|
-
click:
|
|
88
|
-
|
|
94
|
+
click: evnt => {
|
|
95
|
+
this.changeAllOption(evnt, !filterStore.isAllSelected);
|
|
89
96
|
}
|
|
90
97
|
}
|
|
91
98
|
}, (multiple ? [h('span', {
|
|
@@ -95,11 +102,11 @@ var _default = exports.default = {
|
|
|
95
102
|
}, getI18n('vxe.table.allFilter'))]))]), h('ul', {
|
|
96
103
|
class: 'vxe-table--filter-body',
|
|
97
104
|
style: maxHeight ? {
|
|
98
|
-
maxHeight:
|
|
105
|
+
maxHeight: `${maxHeight}px`
|
|
99
106
|
} : {}
|
|
100
|
-
}, filterStore.options.map(
|
|
101
|
-
|
|
102
|
-
|
|
107
|
+
}, filterStore.options.map(item => {
|
|
108
|
+
const isChecked = item._checked;
|
|
109
|
+
const isIndeterminate = false;
|
|
103
110
|
return h('li', {
|
|
104
111
|
class: ['vxe-table--filter-option', {
|
|
105
112
|
'is--checked': isChecked
|
|
@@ -108,8 +115,8 @@ var _default = exports.default = {
|
|
|
108
115
|
title: item.label
|
|
109
116
|
},
|
|
110
117
|
on: {
|
|
111
|
-
click:
|
|
112
|
-
|
|
118
|
+
click: evnt => {
|
|
119
|
+
this.changeOption(evnt, !item._checked, item);
|
|
113
120
|
}
|
|
114
121
|
}
|
|
115
122
|
}, (multiple ? [h('span', {
|
|
@@ -119,16 +126,22 @@ var _default = exports.default = {
|
|
|
119
126
|
}, (0, _utils.formatText)(item.label, 1))]));
|
|
120
127
|
}))];
|
|
121
128
|
},
|
|
122
|
-
renderFooter
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
129
|
+
renderFooter(h) {
|
|
130
|
+
const {
|
|
131
|
+
$parent: $xetable,
|
|
132
|
+
hasCheckOption,
|
|
133
|
+
filterStore
|
|
134
|
+
} = this;
|
|
135
|
+
const {
|
|
136
|
+
filterOpts
|
|
137
|
+
} = $xetable;
|
|
138
|
+
const {
|
|
139
|
+
column,
|
|
140
|
+
multiple
|
|
141
|
+
} = filterStore;
|
|
142
|
+
const filterRender = column.filterRender;
|
|
143
|
+
const compConf = (0, _utils.isEnableConf)(filterRender) ? renderer.get(filterRender.name) : null;
|
|
144
|
+
const isDisabled = !hasCheckOption && !filterStore.isAllSelected && !filterStore.isIndeterminate;
|
|
132
145
|
return multiple && (compConf ? !(compConf.showTableFilterFooter === false || compConf.showFilterFooter === false || compConf.isFooter === false) : true) ? [h('div', {
|
|
133
146
|
class: 'vxe-table--filter-footer'
|
|
134
147
|
}, [h('button', {
|
|
@@ -148,9 +161,9 @@ var _default = exports.default = {
|
|
|
148
161
|
}, filterOpts.resetButtonText || getI18n('vxe.table.resetFilter'))])] : [];
|
|
149
162
|
},
|
|
150
163
|
// 全部筛选事件
|
|
151
|
-
filterCheckAllEvent
|
|
152
|
-
|
|
153
|
-
filterStore.options.forEach(
|
|
164
|
+
filterCheckAllEvent(evnt, value) {
|
|
165
|
+
const filterStore = this.filterStore;
|
|
166
|
+
filterStore.options.forEach(option => {
|
|
154
167
|
option._checked = value;
|
|
155
168
|
option.checked = value;
|
|
156
169
|
});
|
|
@@ -161,10 +174,12 @@ var _default = exports.default = {
|
|
|
161
174
|
* Publish methods
|
|
162
175
|
*************************/
|
|
163
176
|
// (单选)筛选发生改变
|
|
164
|
-
changeRadioOption
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
177
|
+
changeRadioOption(evnt, checked, item) {
|
|
178
|
+
const {
|
|
179
|
+
$parent: $xetable,
|
|
180
|
+
filterStore
|
|
181
|
+
} = this;
|
|
182
|
+
filterStore.options.forEach(option => {
|
|
168
183
|
option._checked = false;
|
|
169
184
|
});
|
|
170
185
|
item._checked = checked;
|
|
@@ -172,12 +187,14 @@ var _default = exports.default = {
|
|
|
172
187
|
this.confirmFilter(evnt);
|
|
173
188
|
},
|
|
174
189
|
// (多选)筛选发生改变
|
|
175
|
-
changeMultipleOption
|
|
176
|
-
|
|
190
|
+
changeMultipleOption(evnt, checked, item) {
|
|
191
|
+
const {
|
|
192
|
+
$parent: $xetable
|
|
193
|
+
} = this;
|
|
177
194
|
item._checked = checked;
|
|
178
195
|
$xetable.checkFilterOptions();
|
|
179
196
|
},
|
|
180
|
-
changeAllOption
|
|
197
|
+
changeAllOption(evnt, checked) {
|
|
181
198
|
if (this.filterStore.multiple) {
|
|
182
199
|
this.filterCheckAllEvent(evnt, checked);
|
|
183
200
|
} else {
|
|
@@ -185,7 +202,7 @@ var _default = exports.default = {
|
|
|
185
202
|
}
|
|
186
203
|
},
|
|
187
204
|
// 筛选发生改变
|
|
188
|
-
changeOption
|
|
205
|
+
changeOption(evnt, checked, item) {
|
|
189
206
|
if (this.filterStore.multiple) {
|
|
190
207
|
this.changeMultipleOption(evnt, checked, item);
|
|
191
208
|
} else {
|
|
@@ -193,17 +210,21 @@ var _default = exports.default = {
|
|
|
193
210
|
}
|
|
194
211
|
},
|
|
195
212
|
// 确认筛选
|
|
196
|
-
confirmFilter
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
213
|
+
confirmFilter(evnt) {
|
|
214
|
+
const {
|
|
215
|
+
$parent: $xetable,
|
|
216
|
+
filterStore
|
|
217
|
+
} = this;
|
|
218
|
+
filterStore.options.forEach(option => {
|
|
200
219
|
option.checked = option._checked;
|
|
201
220
|
});
|
|
202
221
|
$xetable.confirmFilterEvent(evnt);
|
|
203
222
|
},
|
|
204
223
|
// 重置筛选
|
|
205
|
-
resetFilter
|
|
206
|
-
|
|
224
|
+
resetFilter(evnt) {
|
|
225
|
+
const {
|
|
226
|
+
$parent: $xetable
|
|
227
|
+
} = this;
|
|
207
228
|
$xetable.resetFilterEvent(evnt);
|
|
208
229
|
}
|
|
209
230
|
/*************************
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_vn=require("../../../ui/src/vn")
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_vn=require("../../../ui/src/vn");let{getI18n,getIcon,renderer}=_ui.VxeUI;var _default=exports.default={name:"VxeTableFilterPanel",props:{filterStore:Object},computed:{hasCheckOption(){var e=this.filterStore;return e&&e.options.some(e=>e.checked)}},render(e){var{$parent:t,filterStore:l}=this,{args:i,column:r}=l,s=r?r.filterRender:null,a=(0,_utils.isEnableConf)(s)?renderer.get(s.name):null,n=a?a.tableFilterClassName||a.filterClassName:"";return e("div",{class:["vxe-table--filter-wrapper","filter--prevent-default",a&&a.className?a.className:"",(0,_utils.getClass)(n,Object.assign({$panel:this,$table:t},i)),{"is--animat":t.animat,"is--multiple":l.multiple,"is--active":l.visible}],style:l.style},l.visible&&r?this.renderOptions(e,s,a).concat(this.renderFooter(e)):[])},methods:{renderOptions(l,e,t){let{$parent:i,filterStore:r}=this,{args:s,column:a,multiple:n,maxHeight:c}=r;var o=a?a.slots:null,t=t?t.renderTableFilter||t.renderFilter:null;return o&&o.filter?[l("div",{class:"vxe-table--filter-template"},i.callSlot(o.filter,Object.assign({$panel:this,context:this},s),l))]:t?[l("div",{class:"vxe-table--filter-template"},(0,_vn.getSlotVNs)(t.call(i,l,e,Object.assign({$panel:this,context:this},s))))]:(o=n?r.isAllSelected:!r.options.some(e=>e._checked),t=n&&r.isIndeterminate,[l("ul",{class:"vxe-table--filter-header"},[l("li",{class:["vxe-table--filter-option",{"is--checked":o,"is--indeterminate":t}],attrs:{title:getI18n(n?"vxe.table.allTitle":"vxe.table.allFilter")},on:{click:e=>{this.changeAllOption(e,!r.isAllSelected)}}},(n?[l("span",{class:["vxe-checkbox--icon",t?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]:[]).concat([l("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.allFilter"))]))]),l("ul",{class:"vxe-table--filter-body",style:c?{maxHeight:c+"px"}:{}},r.options.map(t=>{var e=t._checked;return l("li",{class:["vxe-table--filter-option",{"is--checked":e}],attrs:{title:t.label},on:{click:e=>{this.changeOption(e,!t._checked,t)}}},(n?[l("span",{class:["vxe-checkbox--icon",e?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]:[]).concat([l("span",{class:"vxe-checkbox--label"},(0,_utils.formatText)(t.label,1))]))}))])},renderFooter(e){var{$parent:t,hasCheckOption:l,filterStore:i}=this,t=t.filterOpts,{column:r,multiple:s}=i,r=r.filterRender,r=(0,_utils.isEnableConf)(r)?renderer.get(r.name):null,l=!l&&!i.isAllSelected&&!i.isIndeterminate;return s&&(!r||!1!==r.showTableFilterFooter&&!1!==r.showFilterFooter&&!1!==r.isFooter)?[e("div",{class:"vxe-table--filter-footer"},[e("button",{class:{"is--disabled":l},attrs:{disabled:l},on:{click:this.confirmFilter}},t.confirmButtonText||getI18n("vxe.table.confirmFilter")),e("button",{on:{click:this.resetFilter}},t.resetButtonText||getI18n("vxe.table.resetFilter"))])]:[]},filterCheckAllEvent(e,t){var l=this.filterStore;l.options.forEach(e=>{e._checked=t,e.checked=t}),l.isAllSelected=t,l.isIndeterminate=!1},changeRadioOption(e,t,l){var{$parent:i,filterStore:r}=this;r.options.forEach(e=>{e._checked=!1}),l._checked=t,i.checkFilterOptions(),this.confirmFilter(e)},changeMultipleOption(e,t,l){var i=this.$parent;l._checked=t,i.checkFilterOptions()},changeAllOption(e,t){this.filterStore.multiple?this.filterCheckAllEvent(e,t):this.resetFilter(e)},changeOption(e,t,l){this.filterStore.multiple?this.changeMultipleOption(e,t,l):this.changeRadioOption(e,t,l)},confirmFilter(e){var{$parent:t,filterStore:l}=this;l.options.forEach(e=>{e.checked=e._checked}),t.confirmFilterEvent(e)},resetFilter(e){var t=this.$parent;t.resetFilterEvent(e)}}};
|