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