@vxe-ui/plugin-render-element 3.0.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.
@@ -0,0 +1,1136 @@
1
+ (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){
2
+ "use strict";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.defineFormRender = defineFormRender;
8
+ var _xeUtils = _interopRequireDefault(require("xe-utils"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
10
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
11
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
12
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
14
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
15
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
16
+ /**
17
+ * 表单 - 渲染器
18
+ */
19
+ function defineFormRender(VxeUI) {
20
+ function isEmptyValue(cellValue) {
21
+ return cellValue === null || cellValue === undefined || cellValue === '';
22
+ }
23
+ function getOnName(type) {
24
+ return type;
25
+ }
26
+ function getModelProp(renderOpts) {
27
+ return 'value';
28
+ }
29
+ function getModelEvent(renderOpts) {
30
+ return 'input';
31
+ }
32
+ function getChangeEvent(renderOpts) {
33
+ var type = 'change';
34
+ switch (renderOpts.name) {
35
+ case 'ElAutocomplete':
36
+ type = 'select';
37
+ break;
38
+ case 'ElInput':
39
+ case 'ElInputNumber':
40
+ type = 'input';
41
+ break;
42
+ }
43
+ return type;
44
+ }
45
+ function getItemProps(renderOpts, params, value, defaultProps) {
46
+ return _xeUtils["default"].assign({}, defaultProps, renderOpts.props, _defineProperty({}, getModelProp(renderOpts), value));
47
+ }
48
+ function formatText(cellValue) {
49
+ return '' + (isEmptyValue(cellValue) ? '' : cellValue);
50
+ }
51
+ function getOns(renderOpts, params, inputFunc, changeFunc) {
52
+ var events = renderOpts.events;
53
+ var modelEvent = getModelEvent(renderOpts);
54
+ var changeEvent = getChangeEvent(renderOpts);
55
+ var isSameEvent = changeEvent === modelEvent;
56
+ var ons = {};
57
+ _xeUtils["default"].objectEach(events, function (func, key) {
58
+ ons[getOnName(key)] = function () {
59
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
60
+ args[_key] = arguments[_key];
61
+ }
62
+ func.apply(void 0, [params].concat(args));
63
+ };
64
+ });
65
+ if (inputFunc) {
66
+ ons[getOnName(modelEvent)] = function (targetEvnt) {
67
+ inputFunc(targetEvnt);
68
+ if (events && events[modelEvent]) {
69
+ events[modelEvent](params, targetEvnt);
70
+ }
71
+ if (isSameEvent && changeFunc) {
72
+ changeFunc(targetEvnt);
73
+ }
74
+ };
75
+ }
76
+ if (!isSameEvent && changeFunc) {
77
+ ons[getOnName(changeEvent)] = function () {
78
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
79
+ args[_key2] = arguments[_key2];
80
+ }
81
+ changeFunc.apply(void 0, args);
82
+ if (events && events[changeEvent]) {
83
+ events[changeEvent].apply(events, [params].concat(args));
84
+ }
85
+ };
86
+ }
87
+ return ons;
88
+ }
89
+ function getItemOns(renderOpts, params) {
90
+ var $form = params.$form,
91
+ data = params.data,
92
+ field = params.field;
93
+ return getOns(renderOpts, params, function (value) {
94
+ // 处理 model 值双向绑定
95
+ _xeUtils["default"].set(data, field, value);
96
+ }, function () {
97
+ // 处理 change 事件相关逻辑
98
+ $form.updateStatus(params);
99
+ });
100
+ }
101
+ function renderOptions(h, options, optionProps) {
102
+ var labelProp = optionProps.label || 'label';
103
+ var valueProp = optionProps.value || 'value';
104
+ return _xeUtils["default"].map(options, function (item, oIndex) {
105
+ return h('el-option', {
106
+ key: oIndex,
107
+ props: {
108
+ value: item[valueProp],
109
+ label: item[labelProp],
110
+ disabled: item.disabled
111
+ }
112
+ });
113
+ });
114
+ }
115
+ function cellText(cellValue) {
116
+ return [formatText(cellValue)];
117
+ }
118
+ function createFormItemRender(defaultProps) {
119
+ return function (h, renderOpts, params) {
120
+ var data = params.data,
121
+ field = params.field;
122
+ var name = renderOpts.name;
123
+ var attrs = renderOpts.attrs;
124
+ var itemValue = _xeUtils["default"].get(data, field);
125
+ return [h(name, {
126
+ attrs: attrs,
127
+ props: _objectSpread({}, getItemProps(renderOpts, params, itemValue, defaultProps)),
128
+ on: getItemOns(renderOpts, params)
129
+ })];
130
+ };
131
+ }
132
+ function defaultButtonItemRender(h, renderOpts, params) {
133
+ var attrs = renderOpts.attrs;
134
+ var props = getItemProps(renderOpts, params, null);
135
+ return [h('el-button', {
136
+ attrs: attrs,
137
+ props: _objectSpread({}, props),
138
+ on: getOns(renderOpts, params),
139
+ scopedSlots: {
140
+ "default": function _default() {
141
+ return cellText(renderOpts.content || props.content);
142
+ }
143
+ }
144
+ })];
145
+ }
146
+ function defaultButtonsItemRender(h, renderOpts, params) {
147
+ var children = renderOpts.children;
148
+ if (children) {
149
+ return children.map(function (childRenderOpts) {
150
+ return defaultButtonItemRender(h, childRenderOpts, params)[0];
151
+ });
152
+ }
153
+ return [];
154
+ }
155
+ /**
156
+ * 已废弃
157
+ * @deprecated
158
+ */
159
+ function createOldFormItemRadioAndCheckboxRender() {
160
+ return function (h, renderOpts, params) {
161
+ var name = renderOpts.name,
162
+ _renderOpts$options = renderOpts.options,
163
+ options = _renderOpts$options === void 0 ? [] : _renderOpts$options,
164
+ _renderOpts$optionPro = renderOpts.optionProps,
165
+ optionProps = _renderOpts$optionPro === void 0 ? {} : _renderOpts$optionPro,
166
+ attrs = renderOpts.attrs;
167
+ var data = params.data,
168
+ field = params.field;
169
+ var labelProp = optionProps.label || 'label';
170
+ var valueProp = optionProps.value || 'value';
171
+ var itemValue = _xeUtils["default"].get(data, field);
172
+ return [h("".concat(name, "Group"), {
173
+ attrs: attrs,
174
+ props: _objectSpread({}, getItemProps(renderOpts, params, itemValue)),
175
+ on: getItemOns(renderOpts, params),
176
+ scopedSlots: {
177
+ "default": function _default() {
178
+ return options.map(function (option, oIndex) {
179
+ return h(name, {
180
+ key: oIndex,
181
+ props: {
182
+ label: option[valueProp],
183
+ disabled: option.disabled
184
+ },
185
+ scopedSlots: {
186
+ "default": function _default() {
187
+ return cellText(option[labelProp]);
188
+ }
189
+ }
190
+ });
191
+ });
192
+ }
193
+ }
194
+ })];
195
+ };
196
+ }
197
+ /**
198
+ * 检查触发源是否属于目标节点
199
+ */
200
+ function getEventTargetNode(evnt, container, className) {
201
+ var targetElem;
202
+ var target = evnt.target;
203
+ while (target && target.nodeType && target !== document) {
204
+ if (className && target.className && target.className.split && target.className.split(' ').indexOf(className) > -1) {
205
+ targetElem = target;
206
+ } else if (target === container) {
207
+ return {
208
+ flag: className ? !!targetElem : true,
209
+ container: container,
210
+ targetElem: targetElem
211
+ };
212
+ }
213
+ target = target.parentNode;
214
+ }
215
+ return {
216
+ flag: false
217
+ };
218
+ }
219
+ /**
220
+ * 事件兼容性处理
221
+ */
222
+ function handleClearEvent(params) {
223
+ var $event = params.$event;
224
+ var bodyElem = document.body;
225
+ if (
226
+ // 远程搜索
227
+ getEventTargetNode($event, bodyElem, 'el-autocomplete-suggestion').flag ||
228
+ // 下拉框
229
+ getEventTargetNode($event, bodyElem, 'el-select-dropdown').flag ||
230
+ // 级联
231
+ getEventTargetNode($event, bodyElem, 'el-cascader__dropdown').flag || getEventTargetNode($event, bodyElem, 'el-cascader-menus').flag ||
232
+ // 日期
233
+ getEventTargetNode($event, bodyElem, 'el-time-panel').flag || getEventTargetNode($event, bodyElem, 'el-picker-panel').flag ||
234
+ // 颜色
235
+ getEventTargetNode($event, bodyElem, 'el-color-dropdown').flag) {
236
+ return false;
237
+ }
238
+ }
239
+ VxeUI.renderer.mixin({
240
+ ElAutocomplete: {
241
+ renderFormItemContent: createFormItemRender()
242
+ },
243
+ ElInput: {
244
+ renderFormItemContent: createFormItemRender()
245
+ },
246
+ ElInputNumber: {
247
+ renderFormItemContent: createFormItemRender()
248
+ },
249
+ ElSelect: {
250
+ renderFormItemContent: function renderFormItemContent(h, renderOpts, params) {
251
+ var _renderOpts$options2 = renderOpts.options,
252
+ options = _renderOpts$options2 === void 0 ? [] : _renderOpts$options2,
253
+ optionGroups = renderOpts.optionGroups,
254
+ _renderOpts$optionPro2 = renderOpts.optionProps,
255
+ optionProps = _renderOpts$optionPro2 === void 0 ? {} : _renderOpts$optionPro2,
256
+ _renderOpts$optionGro = renderOpts.optionGroupProps,
257
+ optionGroupProps = _renderOpts$optionGro === void 0 ? {} : _renderOpts$optionGro;
258
+ var data = params.data,
259
+ field = params.field;
260
+ var attrs = renderOpts.attrs;
261
+ var itemValue = _xeUtils["default"].get(data, field);
262
+ var props = getItemProps(renderOpts, params, itemValue);
263
+ var ons = getItemOns(renderOpts, params);
264
+ if (optionGroups) {
265
+ var groupOptions = optionGroupProps.options || 'options';
266
+ var groupLabel = optionGroupProps.label || 'label';
267
+ return [h('el-select', {
268
+ attrs: attrs,
269
+ props: _objectSpread({}, props),
270
+ on: ons,
271
+ scopedSlots: {
272
+ "default": function _default() {
273
+ return _xeUtils["default"].map(optionGroups, function (group, gIndex) {
274
+ return h('el-option-group', {
275
+ key: gIndex,
276
+ props: {
277
+ label: group[groupLabel]
278
+ },
279
+ scopedSlots: {
280
+ "default": function _default() {
281
+ return renderOptions(h, group[groupOptions], optionProps);
282
+ }
283
+ }
284
+ });
285
+ });
286
+ }
287
+ }
288
+ })];
289
+ }
290
+ return [h('el-select', {
291
+ attrs: attrs,
292
+ props: _objectSpread({}, props),
293
+ on: ons,
294
+ scopedSlots: {
295
+ "default": function _default() {
296
+ return renderOptions(h, options, optionProps);
297
+ }
298
+ }
299
+ })];
300
+ }
301
+ },
302
+ ElCascader: {
303
+ renderFormItemContent: createFormItemRender()
304
+ },
305
+ ElDatePicker: {
306
+ renderFormItemContent: createFormItemRender()
307
+ },
308
+ ElTimePicker: {
309
+ renderFormItemContent: createFormItemRender()
310
+ },
311
+ ElTimeSelect: {
312
+ renderFormItemContent: createFormItemRender()
313
+ },
314
+ ElRate: {
315
+ renderFormItemContent: createFormItemRender()
316
+ },
317
+ ElSwitch: {
318
+ renderFormItemContent: createFormItemRender()
319
+ },
320
+ ElSlider: {
321
+ renderFormItemContent: createFormItemRender()
322
+ },
323
+ ElRadioGroup: {
324
+ renderFormItemContent: function renderFormItemContent(h, renderOpts, params) {
325
+ var _renderOpts$options3 = renderOpts.options,
326
+ options = _renderOpts$options3 === void 0 ? [] : _renderOpts$options3,
327
+ _renderOpts$optionPro3 = renderOpts.optionProps,
328
+ optionProps = _renderOpts$optionPro3 === void 0 ? {} : _renderOpts$optionPro3,
329
+ attrs = renderOpts.attrs;
330
+ var data = params.data,
331
+ field = params.field;
332
+ var labelProp = optionProps.label || 'label';
333
+ var valueProp = optionProps.value || 'value';
334
+ var itemValue = _xeUtils["default"].get(data, field);
335
+ return [h('el-radio-group', {
336
+ attrs: attrs,
337
+ props: _objectSpread({}, getItemProps(renderOpts, params, itemValue)),
338
+ on: _objectSpread({}, getItemOns(renderOpts, params)),
339
+ scopedSlots: {
340
+ "default": function _default() {
341
+ return options.map(function (option, oIndex) {
342
+ return h('el-radio', {
343
+ key: oIndex,
344
+ props: {
345
+ value: option[valueProp],
346
+ disabled: option.disabled
347
+ },
348
+ scopedSlots: {
349
+ "default": function _default() {
350
+ return cellText(option[labelProp]);
351
+ }
352
+ }
353
+ });
354
+ });
355
+ }
356
+ }
357
+ })];
358
+ }
359
+ },
360
+ ElCheckboxGroup: {
361
+ renderFormItemContent: function renderFormItemContent(h, renderOpts, params) {
362
+ var _renderOpts$options4 = renderOpts.options,
363
+ options = _renderOpts$options4 === void 0 ? [] : _renderOpts$options4,
364
+ _renderOpts$optionPro4 = renderOpts.optionProps,
365
+ optionProps = _renderOpts$optionPro4 === void 0 ? {} : _renderOpts$optionPro4,
366
+ attrs = renderOpts.attrs;
367
+ var data = params.data,
368
+ field = params.field;
369
+ var labelProp = optionProps.label || 'label';
370
+ var valueProp = optionProps.value || 'value';
371
+ var itemValue = _xeUtils["default"].get(data, field);
372
+ return [h('el-checkbox-group', {
373
+ attrs: attrs,
374
+ props: _objectSpread({}, getItemProps(renderOpts, params, itemValue)),
375
+ on: _objectSpread({}, getItemOns(renderOpts, params)),
376
+ scopedSlots: {
377
+ "default": function _default() {
378
+ return options.map(function (option, oIndex) {
379
+ return h('el-checkbox', {
380
+ key: oIndex,
381
+ props: {
382
+ value: option[valueProp],
383
+ label: option[labelProp],
384
+ disabled: option.disabled
385
+ }
386
+ });
387
+ });
388
+ }
389
+ }
390
+ })];
391
+ }
392
+ },
393
+ ElButton: {
394
+ renderFormItemContent: defaultButtonItemRender
395
+ },
396
+ // 已废弃
397
+ ElRadio: {
398
+ renderFormItemContent: createOldFormItemRadioAndCheckboxRender()
399
+ },
400
+ ElCheckbox: {
401
+ renderFormItemContent: createOldFormItemRadioAndCheckboxRender()
402
+ },
403
+ ElButtons: {
404
+ renderFormItemContent: defaultButtonsItemRender
405
+ }
406
+ });
407
+ VxeUI.interceptor.add('event.clearFilter', handleClearEvent);
408
+ VxeUI.interceptor.add('event.clearEdit', handleClearEvent);
409
+ VxeUI.interceptor.add('event.clearAreas', handleClearEvent);
410
+ // 兼容老版本
411
+ VxeUI.interceptor.add('event.clearActived', handleClearEvent);
412
+ }
413
+ },{"xe-utils":"xe-utils"}],2:[function(require,module,exports){
414
+ "use strict";
415
+
416
+ Object.defineProperty(exports, "__esModule", {
417
+ value: true
418
+ });
419
+ exports["default"] = exports.VxeUIPluginRenderElement = void 0;
420
+ var _table = require("./table");
421
+ var _form = require("./form");
422
+ // eslint-disable-next-line no-unused-vars
423
+ var ElementPlus;
424
+ /**
425
+ * 检查触发源是否属于目标节点
426
+ */
427
+ function getEventTargetNode(evnt, container, className) {
428
+ var targetElem;
429
+ var target = evnt.target;
430
+ while (target && target.nodeType && target !== document) {
431
+ if (className && target.className && target.className.split && target.className.split(' ').indexOf(className) > -1) {
432
+ targetElem = target;
433
+ } else if (target === container) {
434
+ return {
435
+ flag: className ? !!targetElem : true,
436
+ container: container,
437
+ targetElem: targetElem
438
+ };
439
+ }
440
+ target = target.parentNode;
441
+ }
442
+ return {
443
+ flag: false
444
+ };
445
+ }
446
+ /**
447
+ * 事件兼容性处理
448
+ */
449
+ function handleClearEvent(params) {
450
+ var $event = params.$event;
451
+ var bodyElem = document.body;
452
+ if (
453
+ // 远程搜索
454
+ getEventTargetNode($event, bodyElem, 'el-autocomplete-suggestion').flag ||
455
+ // 下拉框
456
+ getEventTargetNode($event, bodyElem, 'el-select-dropdown').flag ||
457
+ // 级联
458
+ getEventTargetNode($event, bodyElem, 'el-cascader__dropdown').flag || getEventTargetNode($event, bodyElem, 'el-cascader-menus').flag ||
459
+ // 日期
460
+ getEventTargetNode($event, bodyElem, 'el-time-panel').flag || getEventTargetNode($event, bodyElem, 'el-picker-panel').flag ||
461
+ // 颜色
462
+ getEventTargetNode($event, bodyElem, 'el-color-dropdown').flag) {
463
+ return false;
464
+ }
465
+ }
466
+ var VxeUIPluginRenderElement = exports.VxeUIPluginRenderElement = {
467
+ install: function install(VxeUI, options) {
468
+ ElementPlus = options ? options.ElementPlus : {};
469
+ // 检查版本
470
+ if (!/^(3)\./.test(VxeUI.uiVersion)) {
471
+ console.error('[plugin-render-element 3.x] Version 3.x is required');
472
+ }
473
+ (0, _table.defineTableRender)(VxeUI);
474
+ (0, _form.defineFormRender)(VxeUI);
475
+ VxeUI.interceptor.add('event.clearFilter', handleClearEvent);
476
+ VxeUI.interceptor.add('event.clearEdit', handleClearEvent);
477
+ VxeUI.interceptor.add('event.clearAreas', handleClearEvent);
478
+ // 兼容老版本
479
+ VxeUI.interceptor.add('event.clearActived', handleClearEvent);
480
+ }
481
+ };
482
+ if (typeof window !== 'undefined' && window.VxeUI && window.VxeUI.use) {
483
+ window.VxeUI.use(VxeUIPluginRenderElement);
484
+ }
485
+ var _default = exports["default"] = VxeUIPluginRenderElement;
486
+ },{"./form":1,"./table":3}],3:[function(require,module,exports){
487
+ "use strict";
488
+
489
+ Object.defineProperty(exports, "__esModule", {
490
+ value: true
491
+ });
492
+ exports.defineTableRender = defineTableRender;
493
+ var _xeUtils = _interopRequireDefault(require("xe-utils"));
494
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
495
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
496
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
497
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
498
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
499
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
500
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
501
+ /**
502
+ * 表格 - 渲染器
503
+ */
504
+ function defineTableRender(VxeUI) {
505
+ function isEmptyValue(cellValue) {
506
+ return cellValue === null || cellValue === undefined || cellValue === '';
507
+ }
508
+ function getOnName(type) {
509
+ return type;
510
+ }
511
+ function getModelProp(renderOpts) {
512
+ return 'value';
513
+ }
514
+ function getModelEvent(renderOpts) {
515
+ return 'input';
516
+ }
517
+ function getChangeEvent(renderOpts) {
518
+ var type = 'change';
519
+ switch (renderOpts.name) {
520
+ case 'ElAutocomplete':
521
+ type = 'select';
522
+ break;
523
+ case 'ElInput':
524
+ case 'ElInputNumber':
525
+ type = 'input';
526
+ break;
527
+ }
528
+ return type;
529
+ }
530
+ function toDayStringDate(value, format) {
531
+ return _xeUtils["default"].toStringDate(value, format);
532
+ }
533
+ function toDayDateString(date, format) {
534
+ return _xeUtils["default"].toDateString(date, format);
535
+ }
536
+ function parseDate(value, props) {
537
+ return value && props.valueFormat ? toDayStringDate(value, props.valueFormat) : value;
538
+ }
539
+ function getFormatDate(value, props, defaultFormat) {
540
+ return value ? toDayDateString(parseDate(value, props), props.format || props.valueFormat || defaultFormat) : value;
541
+ }
542
+ function getFormatDates(values, props, separator, defaultFormat) {
543
+ return _xeUtils["default"].map(values, function (date) {
544
+ return getFormatDate(date, props, defaultFormat);
545
+ }).join(separator);
546
+ }
547
+ function equalDateRange(cellValue, data, props, defaultFormat) {
548
+ cellValue = getFormatDate(cellValue, props, defaultFormat);
549
+ return cellValue >= getFormatDate(data[0], props, defaultFormat) && cellValue <= getFormatDate(data[1], props, defaultFormat);
550
+ }
551
+ function getCellEditFilterProps(renderOpts, params, value, defaultProps) {
552
+ return _xeUtils["default"].assign({}, defaultProps, renderOpts.props, _defineProperty({}, getModelProp(renderOpts), value));
553
+ }
554
+ function formatText(cellValue) {
555
+ return '' + (isEmptyValue(cellValue) ? '' : cellValue);
556
+ }
557
+ function getCellLabelVNs(h, renderOpts, params, cellLabel) {
558
+ var placeholder = renderOpts.placeholder;
559
+ return [h('span', {
560
+ "class": 'vxe-cell--label'
561
+ }, placeholder && isEmptyValue(cellLabel) ? [h('span', {
562
+ "class": 'vxe-cell--placeholder'
563
+ }, formatText(VxeUI.getI18n(placeholder)))] : formatText(cellLabel))];
564
+ }
565
+ function getOns(renderOpts, params, inputFunc, changeFunc) {
566
+ var events = renderOpts.events;
567
+ var modelEvent = getModelEvent(renderOpts);
568
+ var changeEvent = getChangeEvent(renderOpts);
569
+ var isSameEvent = changeEvent === modelEvent;
570
+ var ons = {};
571
+ _xeUtils["default"].objectEach(events, function (func, key) {
572
+ ons[getOnName(key)] = function () {
573
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
574
+ args[_key] = arguments[_key];
575
+ }
576
+ func.apply(void 0, [params].concat(args));
577
+ };
578
+ });
579
+ if (inputFunc) {
580
+ ons[getOnName(modelEvent)] = function (targetEvnt) {
581
+ inputFunc(targetEvnt);
582
+ if (events && events[modelEvent]) {
583
+ events[modelEvent](params, targetEvnt);
584
+ }
585
+ if (isSameEvent && changeFunc) {
586
+ changeFunc(targetEvnt);
587
+ }
588
+ };
589
+ }
590
+ if (!isSameEvent && changeFunc) {
591
+ ons[getOnName(changeEvent)] = function () {
592
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
593
+ args[_key2] = arguments[_key2];
594
+ }
595
+ changeFunc.apply(void 0, args);
596
+ if (events && events[changeEvent]) {
597
+ events[changeEvent].apply(events, [params].concat(args));
598
+ }
599
+ };
600
+ }
601
+ return ons;
602
+ }
603
+ function getEditOns(renderOpts, params) {
604
+ var $table = params.$table,
605
+ row = params.row,
606
+ column = params.column;
607
+ return getOns(renderOpts, params, function (value) {
608
+ // 处理 model 值双向绑定
609
+ _xeUtils["default"].set(row, column.field, value);
610
+ }, function () {
611
+ // 处理 change 事件相关逻辑
612
+ $table.updateStatus(params);
613
+ });
614
+ }
615
+ function getFilterOns(renderOpts, params, option, changeFunc) {
616
+ return getOns(renderOpts, params, function (value) {
617
+ // 处理 model 值双向绑定
618
+ option.data = value;
619
+ }, changeFunc);
620
+ }
621
+ function matchCascaderData(index, list, values, labels) {
622
+ var val = values[index];
623
+ if (list && values.length > index) {
624
+ _xeUtils["default"].each(list, function (item) {
625
+ if (item.value === val) {
626
+ labels.push(item.label);
627
+ matchCascaderData(++index, item.children, values, labels);
628
+ }
629
+ });
630
+ }
631
+ }
632
+ function getSelectCellValue(renderOpts, params) {
633
+ var _renderOpts$options = renderOpts.options,
634
+ options = _renderOpts$options === void 0 ? [] : _renderOpts$options,
635
+ optionGroups = renderOpts.optionGroups,
636
+ _renderOpts$props = renderOpts.props,
637
+ props = _renderOpts$props === void 0 ? {} : _renderOpts$props,
638
+ _renderOpts$optionPro = renderOpts.optionProps,
639
+ optionProps = _renderOpts$optionPro === void 0 ? {} : _renderOpts$optionPro,
640
+ _renderOpts$optionGro = renderOpts.optionGroupProps,
641
+ optionGroupProps = _renderOpts$optionGro === void 0 ? {} : _renderOpts$optionGro;
642
+ var $table = params.$table,
643
+ rowid = params.rowid,
644
+ row = params.row,
645
+ column = params.column;
646
+ var filterable = props.filterable,
647
+ multiple = props.multiple;
648
+ var labelProp = optionProps.label || 'label';
649
+ var valueProp = optionProps.value || 'value';
650
+ var groupOptions = optionGroupProps.options || 'options';
651
+ var cellValue = _xeUtils["default"].get(row, column.field);
652
+ var colid = column.id;
653
+ var cellData;
654
+ if (filterable) {
655
+ var internalData = $table.internalData;
656
+ var fullAllDataRowIdData = internalData.fullAllDataRowIdData;
657
+ var rest = fullAllDataRowIdData[rowid];
658
+ if (rest) {
659
+ cellData = rest.cellData;
660
+ if (!cellData) {
661
+ cellData = rest.cellData = {};
662
+ }
663
+ }
664
+ if (rest && cellData[colid] && cellData[colid].value === cellValue) {
665
+ return cellData[colid].label;
666
+ }
667
+ }
668
+ if (!isEmptyValue(cellValue)) {
669
+ var selectlabel = _xeUtils["default"].map(multiple ? cellValue : [cellValue], optionGroups ? function (value) {
670
+ var selectItem;
671
+ for (var index = 0; index < optionGroups.length; index++) {
672
+ selectItem = _xeUtils["default"].find(optionGroups[index][groupOptions], function (item) {
673
+ return item[valueProp] === value;
674
+ });
675
+ if (selectItem) {
676
+ break;
677
+ }
678
+ }
679
+ return selectItem ? selectItem[labelProp] : value;
680
+ } : function (value) {
681
+ var selectItem = _xeUtils["default"].find(options, function (item) {
682
+ return item[valueProp] === value;
683
+ });
684
+ return selectItem ? selectItem[labelProp] : value;
685
+ }).join(', ');
686
+ if (cellData && options && options.length) {
687
+ cellData[colid] = {
688
+ value: cellValue,
689
+ label: selectlabel
690
+ };
691
+ }
692
+ return selectlabel;
693
+ }
694
+ return '';
695
+ }
696
+ function getCascaderCellValue(renderOpts, params) {
697
+ var _renderOpts$props2 = renderOpts.props,
698
+ props = _renderOpts$props2 === void 0 ? {} : _renderOpts$props2;
699
+ var row = params.row,
700
+ column = params.column;
701
+ var cellValue = _xeUtils["default"].get(row, column.field);
702
+ var values = cellValue || [];
703
+ var labels = [];
704
+ matchCascaderData(0, props.options, values, labels);
705
+ return (props.showAllLevels === false ? labels.slice(labels.length - 1, labels.length) : labels).join(" ".concat(props.separator || '/', " "));
706
+ }
707
+ function getDatePickerCellValue(renderOpts, params) {
708
+ var _renderOpts$props3 = renderOpts.props,
709
+ props = _renderOpts$props3 === void 0 ? {} : _renderOpts$props3;
710
+ var row = params.row,
711
+ column = params.column;
712
+ var _props$rangeSeparator = props.rangeSeparator,
713
+ rangeSeparator = _props$rangeSeparator === void 0 ? '-' : _props$rangeSeparator;
714
+ var cellValue = _xeUtils["default"].get(row, column.field);
715
+ switch (props.type) {
716
+ case 'week':
717
+ cellValue = getFormatDate(cellValue, props, 'yyyywWW');
718
+ break;
719
+ case 'month':
720
+ cellValue = getFormatDate(cellValue, props, 'yyyy-MM');
721
+ break;
722
+ case 'year':
723
+ cellValue = getFormatDate(cellValue, props, 'yyyy');
724
+ break;
725
+ case 'dates':
726
+ cellValue = getFormatDates(cellValue, props, ', ', 'yyyy-MM-dd');
727
+ break;
728
+ case 'daterange':
729
+ cellValue = getFormatDates(cellValue, props, " ".concat(rangeSeparator, " "), 'yyyy-MM-dd');
730
+ break;
731
+ case 'datetimerange':
732
+ cellValue = getFormatDates(cellValue, props, " ".concat(rangeSeparator, " "), 'yyyy-MM-dd HH:ss:mm');
733
+ break;
734
+ case 'monthrange':
735
+ cellValue = getFormatDates(cellValue, props, " ".concat(rangeSeparator, " "), 'yyyy-MM');
736
+ break;
737
+ default:
738
+ cellValue = getFormatDate(cellValue, props, 'yyyy-MM-dd');
739
+ }
740
+ return cellValue;
741
+ }
742
+ function getTimePickerCellValue(renderOpts, params) {
743
+ var _renderOpts$props4 = renderOpts.props,
744
+ props = _renderOpts$props4 === void 0 ? {} : _renderOpts$props4;
745
+ var row = params.row,
746
+ column = params.column;
747
+ var isRange = props.isRange,
748
+ _props$format = props.format,
749
+ format = _props$format === void 0 ? 'HH:mm:ss' : _props$format,
750
+ _props$rangeSeparator2 = props.rangeSeparator,
751
+ rangeSeparator = _props$rangeSeparator2 === void 0 ? '-' : _props$rangeSeparator2;
752
+ var cellValue = _xeUtils["default"].get(row, column.field);
753
+ if (cellValue && isRange) {
754
+ cellValue = _xeUtils["default"].map(cellValue, function (date) {
755
+ return toDayDateString(parseDate(date, props), format);
756
+ }).join(" ".concat(rangeSeparator, " "));
757
+ }
758
+ return toDayDateString(parseDate(cellValue, props), format);
759
+ }
760
+ function createEditRender(defaultProps) {
761
+ return function (h, renderOpts, params) {
762
+ var row = params.row,
763
+ column = params.column;
764
+ var name = renderOpts.name,
765
+ attrs = renderOpts.attrs;
766
+ var cellValue = _xeUtils["default"].get(row, column.field);
767
+ return [h(name, {
768
+ attrs: attrs,
769
+ props: getCellEditFilterProps(renderOpts, params, cellValue, defaultProps),
770
+ on: getEditOns(renderOpts, params)
771
+ })];
772
+ };
773
+ }
774
+ function defaultButtonEditRender(h, renderOpts, params) {
775
+ var attrs = renderOpts.attrs;
776
+ return [h('el-button', {
777
+ attrs: attrs,
778
+ props: getCellEditFilterProps(renderOpts, params, null),
779
+ on: getOns(renderOpts, params)
780
+ }, cellText(renderOpts.content))];
781
+ }
782
+ function defaultButtonsEditRender(h, renderOpts, params) {
783
+ var children = renderOpts.children;
784
+ if (children) {
785
+ return children.map(function (childRenderOpts) {
786
+ return defaultButtonEditRender(h, childRenderOpts, params)[0];
787
+ });
788
+ }
789
+ return [];
790
+ }
791
+ function createFilterRender(defaultProps) {
792
+ return function (h, renderOpts, params) {
793
+ var column = params.column;
794
+ var name = renderOpts.name,
795
+ attrs = renderOpts.attrs;
796
+ return [h('div', {
797
+ "class": 'vxe-table--filter-element-wrapper'
798
+ }, column.filters.map(function (option, oIndex) {
799
+ var optionValue = option.data;
800
+ return h(name, {
801
+ key: oIndex,
802
+ attrs: attrs,
803
+ props: getCellEditFilterProps(renderOpts, params, optionValue, defaultProps),
804
+ on: getFilterOns(renderOpts, params, option, function () {
805
+ // 处理 change 事件相关逻辑
806
+ handleConfirmFilter(params, !!option.data, option);
807
+ })
808
+ });
809
+ }))];
810
+ };
811
+ }
812
+ function handleConfirmFilter(params, checked, option) {
813
+ var $panel = params.$panel;
814
+ $panel.changeOption(null, checked, option);
815
+ }
816
+ /**
817
+ * 模糊匹配
818
+ * @param params
819
+ */
820
+ function defaultFuzzyFilterMethod(params) {
821
+ var option = params.option,
822
+ row = params.row,
823
+ column = params.column;
824
+ var data = option.data;
825
+ var cellValue = _xeUtils["default"].get(row, column.field);
826
+ return _xeUtils["default"].toValueString(cellValue).indexOf(data) > -1;
827
+ }
828
+ /**
829
+ * 精确匹配
830
+ * @param params
831
+ */
832
+ function defaultExactFilterMethod(params) {
833
+ var option = params.option,
834
+ row = params.row,
835
+ column = params.column;
836
+ var data = option.data;
837
+ var cellValue = _xeUtils["default"].get(row, column.field);
838
+ /* eslint-disable eqeqeq */
839
+ return cellValue === data;
840
+ }
841
+ function renderOptions(h, options, optionProps) {
842
+ var labelProp = optionProps.label || 'label';
843
+ var valueProp = optionProps.value || 'value';
844
+ return _xeUtils["default"].map(options, function (item, oIndex) {
845
+ return h('el-option', {
846
+ key: oIndex,
847
+ props: {
848
+ value: item[valueProp],
849
+ label: item[labelProp],
850
+ disabled: item.disabled
851
+ }
852
+ });
853
+ });
854
+ }
855
+ function cellText(cellValue) {
856
+ return [formatText(cellValue)];
857
+ }
858
+ function createExportMethod(getExportCellValue) {
859
+ return function (params) {
860
+ var row = params.row,
861
+ column = params.column,
862
+ options = params.options;
863
+ return options && options.original ? _xeUtils["default"].get(row, column.field) : getExportCellValue(column.editRender || column.cellRender, params);
864
+ };
865
+ }
866
+ VxeUI.renderer.mixin({
867
+ ElAutocomplete: {
868
+ tableAutoFocus: 'input',
869
+ renderTableDefault: createEditRender(),
870
+ renderTableEdit: createEditRender(),
871
+ renderTableFilter: createFilterRender(),
872
+ tableFilterDefaultMethod: defaultFuzzyFilterMethod
873
+ },
874
+ ElInput: {
875
+ tableAutoFocus: 'input',
876
+ renderTableDefault: createEditRender(),
877
+ renderTableEdit: createEditRender(),
878
+ renderTableFilter: createFilterRender(),
879
+ tableFilterDefaultMethod: defaultFuzzyFilterMethod
880
+ },
881
+ ElInputNumber: {
882
+ tableAutoFocus: 'input',
883
+ renderTableDefault: createEditRender(),
884
+ renderTableEdit: createEditRender(),
885
+ renderTableFilter: createFilterRender(),
886
+ tableFilterDefaultMethod: defaultFuzzyFilterMethod
887
+ },
888
+ ElSelect: {
889
+ renderTableEdit: function renderTableEdit(h, renderOpts, params) {
890
+ var _renderOpts$options2 = renderOpts.options,
891
+ options = _renderOpts$options2 === void 0 ? [] : _renderOpts$options2,
892
+ optionGroups = renderOpts.optionGroups,
893
+ _renderOpts$optionPro2 = renderOpts.optionProps,
894
+ optionProps = _renderOpts$optionPro2 === void 0 ? {} : _renderOpts$optionPro2,
895
+ _renderOpts$optionGro2 = renderOpts.optionGroupProps,
896
+ optionGroupProps = _renderOpts$optionGro2 === void 0 ? {} : _renderOpts$optionGro2;
897
+ var row = params.row,
898
+ column = params.column;
899
+ var attrs = renderOpts.attrs;
900
+ var cellValue = _xeUtils["default"].get(row, column.field);
901
+ var props = getCellEditFilterProps(renderOpts, params, cellValue);
902
+ var ons = getEditOns(renderOpts, params);
903
+ if (optionGroups) {
904
+ var groupOptions = optionGroupProps.options || 'options';
905
+ var groupLabel = optionGroupProps.label || 'label';
906
+ return [h('el-select', {
907
+ attrs: attrs,
908
+ props: props,
909
+ on: ons,
910
+ scopedSlots: {
911
+ "default": function _default() {
912
+ return _xeUtils["default"].map(optionGroups, function (group, gIndex) {
913
+ return h('el-option-group', {
914
+ key: gIndex,
915
+ props: {
916
+ label: group[groupLabel]
917
+ },
918
+ scopedSlots: {
919
+ "default": function _default() {
920
+ return renderOptions(h, group[groupOptions], optionProps);
921
+ }
922
+ }
923
+ });
924
+ });
925
+ }
926
+ }
927
+ })];
928
+ }
929
+ return [h('el-select', {
930
+ attrs: attrs,
931
+ props: props,
932
+ on: ons,
933
+ scopedSlots: {
934
+ "default": function _default() {
935
+ return renderOptions(h, options, optionProps);
936
+ }
937
+ }
938
+ })];
939
+ },
940
+ renderTableCell: function renderTableCell(h, renderOpts, params) {
941
+ return getCellLabelVNs(h, renderOpts, params, getSelectCellValue(renderOpts, params));
942
+ },
943
+ renderTableFilter: function renderTableFilter(h, renderOpts, params) {
944
+ var _renderOpts$options3 = renderOpts.options,
945
+ options = _renderOpts$options3 === void 0 ? [] : _renderOpts$options3,
946
+ optionGroups = renderOpts.optionGroups,
947
+ _renderOpts$optionPro3 = renderOpts.optionProps,
948
+ optionProps = _renderOpts$optionPro3 === void 0 ? {} : _renderOpts$optionPro3,
949
+ _renderOpts$optionGro3 = renderOpts.optionGroupProps,
950
+ optionGroupProps = _renderOpts$optionGro3 === void 0 ? {} : _renderOpts$optionGro3;
951
+ var groupOptions = optionGroupProps.options || 'options';
952
+ var groupLabel = optionGroupProps.label || 'label';
953
+ var column = params.column;
954
+ var attrs = renderOpts.attrs;
955
+ return [h('div', {
956
+ "class": 'vxe-table--filter-element-wrapper'
957
+ }, optionGroups ? column.filters.map(function (option, oIndex) {
958
+ var optionValue = option.data;
959
+ var props = getCellEditFilterProps(renderOpts, params, optionValue);
960
+ return h('el-select', {
961
+ key: oIndex,
962
+ attrs: attrs,
963
+ props: props,
964
+ on: _objectSpread({}, getFilterOns(renderOpts, params, option, function () {
965
+ // 处理 change 事件相关逻辑
966
+ handleConfirmFilter(params, props.multiple ? option.data && option.data.length > 0 : !_xeUtils["default"].eqNull(option.data), option);
967
+ })),
968
+ scopedSlots: {
969
+ "default": function _default() {
970
+ return _xeUtils["default"].map(optionGroups, function (group, gIndex) {
971
+ return h('el-option-group', {
972
+ key: gIndex,
973
+ props: {
974
+ label: group[groupLabel]
975
+ },
976
+ scopedSlots: {
977
+ "default": function _default() {
978
+ return renderOptions(h, group[groupOptions], optionProps);
979
+ }
980
+ }
981
+ });
982
+ });
983
+ }
984
+ }
985
+ });
986
+ }) : column.filters.map(function (option, oIndex) {
987
+ var optionValue = option.data;
988
+ var props = getCellEditFilterProps(renderOpts, params, optionValue);
989
+ return h('el-select', {
990
+ key: oIndex,
991
+ attrs: attrs,
992
+ props: props,
993
+ on: _objectSpread({}, getFilterOns(renderOpts, params, option, function () {
994
+ // 处理 change 事件相关逻辑
995
+ handleConfirmFilter(params, props.multiple ? option.data && option.data.length > 0 : !_xeUtils["default"].eqNull(option.data), option);
996
+ })),
997
+ scopedSlots: {
998
+ "default": function _default() {
999
+ return renderOptions(h, options, optionProps);
1000
+ }
1001
+ }
1002
+ });
1003
+ }))];
1004
+ },
1005
+ tableFilterDefaultMethod: function tableFilterDefaultMethod(params) {
1006
+ var option = params.option,
1007
+ row = params.row,
1008
+ column = params.column;
1009
+ var data = option.data;
1010
+ var field = column.field,
1011
+ renderOpts = column.filterRender;
1012
+ var _renderOpts$props5 = renderOpts.props,
1013
+ props = _renderOpts$props5 === void 0 ? {} : _renderOpts$props5;
1014
+ var cellValue = _xeUtils["default"].get(row, field);
1015
+ if (props.multiple) {
1016
+ if (_xeUtils["default"].isArray(cellValue)) {
1017
+ return _xeUtils["default"].includeArrays(cellValue, data);
1018
+ }
1019
+ return data.indexOf(cellValue) > -1;
1020
+ }
1021
+ /* eslint-disable eqeqeq */
1022
+ return cellValue == data;
1023
+ },
1024
+ tableExportMethod: createExportMethod(getSelectCellValue)
1025
+ },
1026
+ ElCascader: {
1027
+ renderTableEdit: createEditRender(),
1028
+ renderTableCell: function renderTableCell(h, renderOpts, params) {
1029
+ return getCellLabelVNs(h, renderOpts, params, getCascaderCellValue(renderOpts, params));
1030
+ },
1031
+ tableExportMethod: createExportMethod(getCascaderCellValue)
1032
+ },
1033
+ ElDatePicker: {
1034
+ renderTableEdit: createEditRender(),
1035
+ renderTableCell: function renderTableCell(h, renderOpts, params) {
1036
+ return getCellLabelVNs(h, renderOpts, params, getDatePickerCellValue(renderOpts, params));
1037
+ },
1038
+ renderTableFilter: function renderTableFilter(h, renderOpts, params) {
1039
+ var column = params.column;
1040
+ var name = renderOpts.name,
1041
+ attrs = renderOpts.attrs;
1042
+ return [h('div', {
1043
+ "class": 'vxe-table--filter-element-wrapper'
1044
+ }, column.filters.map(function (option, oIndex) {
1045
+ var optionValue = option.data;
1046
+ return h(name, {
1047
+ key: oIndex,
1048
+ attrs: attrs,
1049
+ props: _objectSpread({}, getCellEditFilterProps(renderOpts, params, optionValue)),
1050
+ on: _objectSpread({}, getFilterOns(renderOpts, params, option, function () {
1051
+ // 处理 change 事件相关逻辑
1052
+ handleConfirmFilter(params, !!option.data, option);
1053
+ }))
1054
+ });
1055
+ }))];
1056
+ },
1057
+ tableFilterDefaultMethod: function tableFilterDefaultMethod(params) {
1058
+ var option = params.option,
1059
+ row = params.row,
1060
+ column = params.column;
1061
+ var data = option.data;
1062
+ var renderOpts = column.filterRender;
1063
+ var _renderOpts$props6 = renderOpts.props,
1064
+ props = _renderOpts$props6 === void 0 ? {} : _renderOpts$props6;
1065
+ var cellValue = _xeUtils["default"].get(row, column.field);
1066
+ if (data) {
1067
+ switch (props.type) {
1068
+ case 'daterange':
1069
+ return equalDateRange(cellValue, data, props, 'yyyy-MM-dd');
1070
+ case 'datetimerange':
1071
+ return equalDateRange(cellValue, data, props, 'yyyy-MM-dd HH:ss:mm');
1072
+ case 'monthrange':
1073
+ return equalDateRange(cellValue, data, props, 'yyyy-MM-dd');
1074
+ default:
1075
+ return cellValue === data;
1076
+ }
1077
+ }
1078
+ return false;
1079
+ },
1080
+ tableExportMethod: createExportMethod(getDatePickerCellValue)
1081
+ },
1082
+ ElTimePicker: {
1083
+ renderTableEdit: createEditRender(),
1084
+ renderTableCell: function renderTableCell(h, renderOpts, params) {
1085
+ return getCellLabelVNs(h, renderOpts, params, getTimePickerCellValue(renderOpts, params));
1086
+ },
1087
+ tableExportMethod: createExportMethod(getTimePickerCellValue)
1088
+ },
1089
+ ElTimeSelect: {
1090
+ renderTableEdit: createEditRender()
1091
+ },
1092
+ ElRate: {
1093
+ renderTableDefault: createEditRender(),
1094
+ renderTableEdit: createEditRender(),
1095
+ renderTableFilter: createFilterRender(),
1096
+ tableFilterDefaultMethod: defaultExactFilterMethod
1097
+ },
1098
+ ElSwitch: {
1099
+ renderTableDefault: createEditRender(),
1100
+ renderTableEdit: createEditRender(),
1101
+ renderTableFilter: function renderTableFilter(h, renderOpts, params) {
1102
+ var column = params.column;
1103
+ var name = renderOpts.name,
1104
+ attrs = renderOpts.attrs;
1105
+ return [h('div', {
1106
+ "class": 'vxe-table--filter-element-wrapper'
1107
+ }, column.filters.map(function (option, oIndex) {
1108
+ var optionValue = option.data;
1109
+ return h(name, {
1110
+ key: oIndex,
1111
+ attrs: attrs,
1112
+ props: _objectSpread({}, getCellEditFilterProps(renderOpts, params, optionValue)),
1113
+ on: _objectSpread({}, getFilterOns(renderOpts, params, option, function () {
1114
+ // 处理 change 事件相关逻辑
1115
+ handleConfirmFilter(params, _xeUtils["default"].isBoolean(option.data), option);
1116
+ }))
1117
+ });
1118
+ }))];
1119
+ },
1120
+ tableFilterDefaultMethod: defaultExactFilterMethod
1121
+ },
1122
+ ElSlider: {
1123
+ renderTableDefault: createEditRender(),
1124
+ renderTableEdit: createEditRender(),
1125
+ renderTableFilter: createFilterRender(),
1126
+ tableFilterDefaultMethod: defaultExactFilterMethod
1127
+ },
1128
+ ElButton: {
1129
+ renderTableDefault: defaultButtonEditRender
1130
+ },
1131
+ ElButtons: {
1132
+ renderTableDefault: defaultButtonsEditRender
1133
+ }
1134
+ });
1135
+ }
1136
+ },{"xe-utils":"xe-utils"}]},{},[2]);