@vxe-ui/plugin-render-antd 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.
- package/LICENSE +21 -0
- package/README.md +151 -0
- package/dist/all.common.js +978 -0
- package/dist/form/index.js +342 -0
- package/dist/index.common.js +67 -0
- package/dist/index.js +67 -0
- package/dist/index.umd.js +1130 -0
- package/dist/index.umd.min.js +1 -0
- package/dist/style.css +76 -0
- package/dist/style.min.css +1 -0
- package/dist/table/index.js +565 -0
- package/package.json +73 -0
- package/src/form/index.ts +330 -0
- package/src/index.ts +69 -0
- package/src/table/index.ts +556 -0
- package/types/index.d.ts +12 -0
|
@@ -0,0 +1,565 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.defineTableRender = defineTableRender;
|
|
7
|
+
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
9
|
+
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); }
|
|
10
|
+
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; }
|
|
11
|
+
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; }
|
|
12
|
+
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; }
|
|
13
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
14
|
+
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); }
|
|
15
|
+
/**
|
|
16
|
+
* 表格 - 渲染器
|
|
17
|
+
*/
|
|
18
|
+
function defineTableRender(VxeUI) {
|
|
19
|
+
function isEmptyValue(cellValue) {
|
|
20
|
+
return cellValue === null || cellValue === undefined || cellValue === '';
|
|
21
|
+
}
|
|
22
|
+
function getOnName(type) {
|
|
23
|
+
return type;
|
|
24
|
+
}
|
|
25
|
+
function getModelProp(renderOpts) {
|
|
26
|
+
var prop = 'value';
|
|
27
|
+
switch (renderOpts.name) {
|
|
28
|
+
case 'ASwitch':
|
|
29
|
+
prop = 'checked';
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
return prop;
|
|
33
|
+
}
|
|
34
|
+
function getModelEvent(renderOpts) {
|
|
35
|
+
var type = 'change';
|
|
36
|
+
switch (renderOpts.name) {
|
|
37
|
+
case 'AInput':
|
|
38
|
+
type = 'change.value';
|
|
39
|
+
break;
|
|
40
|
+
case 'ARadio':
|
|
41
|
+
case 'ACheckbox':
|
|
42
|
+
type = 'input';
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
return type;
|
|
46
|
+
}
|
|
47
|
+
function dateFormatToVxeFormat(format) {
|
|
48
|
+
if (format) {
|
|
49
|
+
return "".concat(format).replace('YYYY', 'yyyy').replace('DD', 'dd');
|
|
50
|
+
}
|
|
51
|
+
return format;
|
|
52
|
+
}
|
|
53
|
+
function getChangeEvent(renderOpts) {
|
|
54
|
+
return 'change';
|
|
55
|
+
}
|
|
56
|
+
function getCellEditFilterProps(renderOpts, params, value, defaultProps) {
|
|
57
|
+
return _xeUtils["default"].assign({}, defaultProps, renderOpts.props, _defineProperty({}, getModelProp(renderOpts), value));
|
|
58
|
+
}
|
|
59
|
+
function formatText(cellValue) {
|
|
60
|
+
return '' + (isEmptyValue(cellValue) ? '' : cellValue);
|
|
61
|
+
}
|
|
62
|
+
function getCellLabelVNs(h, renderOpts, params, cellLabel) {
|
|
63
|
+
var placeholder = renderOpts.placeholder;
|
|
64
|
+
return [h('span', {
|
|
65
|
+
"class": 'vxe-cell--label'
|
|
66
|
+
}, placeholder && isEmptyValue(cellLabel) ? [h('span', {
|
|
67
|
+
"class": 'vxe-cell--placeholder'
|
|
68
|
+
}, formatText(placeholder))] : formatText(cellLabel))];
|
|
69
|
+
}
|
|
70
|
+
function getOns(renderOpts, params, inputFunc, changeFunc) {
|
|
71
|
+
var events = renderOpts.events;
|
|
72
|
+
var modelEvent = getModelEvent(renderOpts);
|
|
73
|
+
var changeEvent = getChangeEvent(renderOpts);
|
|
74
|
+
var isSameEvent = changeEvent === modelEvent;
|
|
75
|
+
var ons = {};
|
|
76
|
+
_xeUtils["default"].objectEach(events, function (func, key) {
|
|
77
|
+
ons[getOnName(key)] = function () {
|
|
78
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
79
|
+
args[_key] = arguments[_key];
|
|
80
|
+
}
|
|
81
|
+
func.apply(void 0, [params].concat(args));
|
|
82
|
+
};
|
|
83
|
+
});
|
|
84
|
+
if (inputFunc) {
|
|
85
|
+
ons[getOnName(modelEvent)] = function (targetEvnt) {
|
|
86
|
+
inputFunc(targetEvnt);
|
|
87
|
+
if (events && events[modelEvent]) {
|
|
88
|
+
events[modelEvent](params, targetEvnt);
|
|
89
|
+
}
|
|
90
|
+
if (isSameEvent && changeFunc) {
|
|
91
|
+
changeFunc(targetEvnt);
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
if (!isSameEvent && changeFunc) {
|
|
96
|
+
ons[getOnName(changeEvent)] = function () {
|
|
97
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
98
|
+
args[_key2] = arguments[_key2];
|
|
99
|
+
}
|
|
100
|
+
changeFunc.apply(void 0, args);
|
|
101
|
+
if (events && events[changeEvent]) {
|
|
102
|
+
events[changeEvent].apply(events, [params].concat(args));
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
return ons;
|
|
107
|
+
}
|
|
108
|
+
function getEditOns(renderOpts, params) {
|
|
109
|
+
var $table = params.$table,
|
|
110
|
+
row = params.row,
|
|
111
|
+
column = params.column;
|
|
112
|
+
return getOns(renderOpts, params, function (value) {
|
|
113
|
+
// 处理 model 值双向绑定
|
|
114
|
+
_xeUtils["default"].set(row, column.field, value);
|
|
115
|
+
}, function () {
|
|
116
|
+
// 处理 change 事件相关逻辑
|
|
117
|
+
$table.updateStatus(params);
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
function getFilterOns(renderOpts, params, option, changeFunc) {
|
|
121
|
+
return getOns(renderOpts, params, function (value) {
|
|
122
|
+
// 处理 model 值双向绑定
|
|
123
|
+
option.data = value;
|
|
124
|
+
}, changeFunc);
|
|
125
|
+
}
|
|
126
|
+
function matchCascaderData(index, list, values, labels) {
|
|
127
|
+
var val = values[index];
|
|
128
|
+
if (list && values.length > index) {
|
|
129
|
+
_xeUtils["default"].each(list, function (item) {
|
|
130
|
+
if (item.value === val) {
|
|
131
|
+
labels.push(item.label);
|
|
132
|
+
matchCascaderData(++index, item.children, values, labels);
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
function formatDatePicker(defaultFormat) {
|
|
138
|
+
return function (h, renderOpts, params) {
|
|
139
|
+
return getCellLabelVNs(h, renderOpts, params, getDatePickerCellValue(renderOpts, params, defaultFormat));
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
function formatTimePicker(defaultFormat) {
|
|
143
|
+
return function (h, renderOpts, params) {
|
|
144
|
+
var _renderOpts$props = renderOpts.props,
|
|
145
|
+
props = _renderOpts$props === void 0 ? {} : _renderOpts$props;
|
|
146
|
+
var row = params.row,
|
|
147
|
+
column = params.column;
|
|
148
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
149
|
+
try {
|
|
150
|
+
if (cellValue) {
|
|
151
|
+
if (!_xeUtils["default"].isString(cellValue)) {
|
|
152
|
+
cellValue = cellValue.format ? cellValue.format(props.format || props.valueFormat || defaultFormat) : _xeUtils["default"].toDateString(cellValue, dateFormatToVxeFormat(props.format || props.valueFormat || defaultFormat));
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
} catch (e) {}
|
|
156
|
+
return getCellLabelVNs(h, renderOpts, params, cellValue);
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
function getSelectCellValue(renderOpts, params) {
|
|
160
|
+
var _renderOpts$options = renderOpts.options,
|
|
161
|
+
options = _renderOpts$options === void 0 ? [] : _renderOpts$options,
|
|
162
|
+
optionGroups = renderOpts.optionGroups,
|
|
163
|
+
_renderOpts$props2 = renderOpts.props,
|
|
164
|
+
props = _renderOpts$props2 === void 0 ? {} : _renderOpts$props2,
|
|
165
|
+
_renderOpts$optionPro = renderOpts.optionProps,
|
|
166
|
+
optionProps = _renderOpts$optionPro === void 0 ? {} : _renderOpts$optionPro,
|
|
167
|
+
_renderOpts$optionGro = renderOpts.optionGroupProps,
|
|
168
|
+
optionGroupProps = _renderOpts$optionGro === void 0 ? {} : _renderOpts$optionGro;
|
|
169
|
+
var row = params.row,
|
|
170
|
+
column = params.column;
|
|
171
|
+
var labelProp = optionProps.label || 'label';
|
|
172
|
+
var valueProp = optionProps.value || 'value';
|
|
173
|
+
var groupOptions = optionGroupProps.options || 'options';
|
|
174
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
175
|
+
if (!isEmptyValue(cellValue)) {
|
|
176
|
+
return _xeUtils["default"].map(props.mode === 'multiple' ? cellValue : [cellValue], optionGroups ? function (value) {
|
|
177
|
+
var selectItem;
|
|
178
|
+
for (var index = 0; index < optionGroups.length; index++) {
|
|
179
|
+
selectItem = _xeUtils["default"].find(optionGroups[index][groupOptions], function (item) {
|
|
180
|
+
return item[valueProp] === value;
|
|
181
|
+
});
|
|
182
|
+
if (selectItem) {
|
|
183
|
+
break;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return selectItem ? selectItem[labelProp] : value;
|
|
187
|
+
} : function (value) {
|
|
188
|
+
var selectItem = _xeUtils["default"].find(options, function (item) {
|
|
189
|
+
return item[valueProp] === value;
|
|
190
|
+
});
|
|
191
|
+
return selectItem ? selectItem[labelProp] : value;
|
|
192
|
+
}).join(', ');
|
|
193
|
+
}
|
|
194
|
+
return '';
|
|
195
|
+
}
|
|
196
|
+
function getCascaderCellValue(renderOpts, params) {
|
|
197
|
+
var _renderOpts$props3 = renderOpts.props,
|
|
198
|
+
props = _renderOpts$props3 === void 0 ? {} : _renderOpts$props3;
|
|
199
|
+
var row = params.row,
|
|
200
|
+
column = params.column;
|
|
201
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
202
|
+
var values = cellValue || [];
|
|
203
|
+
var labels = [];
|
|
204
|
+
matchCascaderData(0, props.options, values, labels);
|
|
205
|
+
return (props.showAllLevels === false ? labels.slice(labels.length - 1, labels.length) : labels).join(" ".concat(props.separator || '/', " "));
|
|
206
|
+
}
|
|
207
|
+
function getRangePickerCellValue(renderOpts, params) {
|
|
208
|
+
var _renderOpts$props4 = renderOpts.props,
|
|
209
|
+
props = _renderOpts$props4 === void 0 ? {} : _renderOpts$props4;
|
|
210
|
+
var row = params.row,
|
|
211
|
+
column = params.column;
|
|
212
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
213
|
+
if (cellValue) {
|
|
214
|
+
cellValue = _xeUtils["default"].map(cellValue, function (date) {
|
|
215
|
+
return date && date.format ? date.format(props.format || 'YYYY-MM-DD') : _xeUtils["default"].toDateString(date, dateFormatToVxeFormat(props.format || 'YYYY-MM-DD'));
|
|
216
|
+
}).join(' ~ ');
|
|
217
|
+
}
|
|
218
|
+
return cellValue;
|
|
219
|
+
}
|
|
220
|
+
function getTreeSelectCellValue(renderOpts, params) {
|
|
221
|
+
var _renderOpts$props5 = renderOpts.props,
|
|
222
|
+
props = _renderOpts$props5 === void 0 ? {} : _renderOpts$props5;
|
|
223
|
+
var treeData = props.treeData,
|
|
224
|
+
treeCheckable = props.treeCheckable;
|
|
225
|
+
var row = params.row,
|
|
226
|
+
column = params.column;
|
|
227
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
228
|
+
if (!isEmptyValue(cellValue)) {
|
|
229
|
+
return _xeUtils["default"].map(treeCheckable ? cellValue : [cellValue], function (value) {
|
|
230
|
+
var matchObj = _xeUtils["default"].findTree(treeData, function (item) {
|
|
231
|
+
return item.value === value;
|
|
232
|
+
}, {
|
|
233
|
+
children: 'children'
|
|
234
|
+
});
|
|
235
|
+
return matchObj ? matchObj.item.title : value;
|
|
236
|
+
}).join(', ');
|
|
237
|
+
}
|
|
238
|
+
return cellValue;
|
|
239
|
+
}
|
|
240
|
+
function getDatePickerCellValue(renderOpts, params, defaultFormat) {
|
|
241
|
+
var _renderOpts$props6 = renderOpts.props,
|
|
242
|
+
props = _renderOpts$props6 === void 0 ? {} : _renderOpts$props6;
|
|
243
|
+
var row = params.row,
|
|
244
|
+
column = params.column;
|
|
245
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
246
|
+
try {
|
|
247
|
+
if (cellValue) {
|
|
248
|
+
if (!defaultFormat) {
|
|
249
|
+
if (renderOpts.name === 'ADatePicker') {
|
|
250
|
+
switch (props.picker) {
|
|
251
|
+
case 'week':
|
|
252
|
+
defaultFormat = 'YYYY-WW周';
|
|
253
|
+
break;
|
|
254
|
+
case 'month':
|
|
255
|
+
defaultFormat = 'YYYY-MM';
|
|
256
|
+
break;
|
|
257
|
+
case 'year':
|
|
258
|
+
defaultFormat = 'YYYY';
|
|
259
|
+
break;
|
|
260
|
+
default:
|
|
261
|
+
defaultFormat = props.showTime ? 'YYYY-MM-DD HH:mm:ss' : 'YYYY-MM-DD';
|
|
262
|
+
break;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
cellValue = cellValue.format ? cellValue.format(props.format || defaultFormat) : _xeUtils["default"].toDateString(cellValue, dateFormatToVxeFormat(props.format || defaultFormat));
|
|
267
|
+
}
|
|
268
|
+
} catch (e) {}
|
|
269
|
+
return cellValue;
|
|
270
|
+
}
|
|
271
|
+
function createEditRender(defaultProps) {
|
|
272
|
+
return function (h, renderOpts, params) {
|
|
273
|
+
var row = params.row,
|
|
274
|
+
column = params.column;
|
|
275
|
+
var name = renderOpts.name,
|
|
276
|
+
attrs = renderOpts.attrs;
|
|
277
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
278
|
+
return [h(name, {
|
|
279
|
+
attrs: attrs,
|
|
280
|
+
props: getCellEditFilterProps(renderOpts, params, cellValue, defaultProps),
|
|
281
|
+
on: getEditOns(renderOpts, params)
|
|
282
|
+
})];
|
|
283
|
+
};
|
|
284
|
+
}
|
|
285
|
+
function defaultButtonEditRender(h, renderOpts, params) {
|
|
286
|
+
var attrs = renderOpts.attrs;
|
|
287
|
+
return [h('a-button', {
|
|
288
|
+
attrs: attrs,
|
|
289
|
+
props: getCellEditFilterProps(renderOpts, params, null),
|
|
290
|
+
on: getOns(renderOpts, params)
|
|
291
|
+
}, cellText(renderOpts.content))];
|
|
292
|
+
}
|
|
293
|
+
function defaultButtonsEditRender(h, renderOpts, params) {
|
|
294
|
+
var children = renderOpts.children;
|
|
295
|
+
if (children) {
|
|
296
|
+
return children.map(function (childRenderOpts) {
|
|
297
|
+
return defaultButtonEditRender(h, childRenderOpts, params)[0];
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
return [];
|
|
301
|
+
}
|
|
302
|
+
function createFilterRender(defaultProps) {
|
|
303
|
+
return function (h, renderOpts, params) {
|
|
304
|
+
var column = params.column;
|
|
305
|
+
var name = renderOpts.name,
|
|
306
|
+
attrs = renderOpts.attrs;
|
|
307
|
+
return [h('div', {
|
|
308
|
+
"class": 'vxe-table--filter-antd-wrapper'
|
|
309
|
+
}, column.filters.map(function (option, oIndex) {
|
|
310
|
+
var optionValue = option.data;
|
|
311
|
+
return h(name, {
|
|
312
|
+
key: oIndex,
|
|
313
|
+
attrs: attrs,
|
|
314
|
+
props: _objectSpread({}, getCellEditFilterProps(renderOpts, params, optionValue, defaultProps)),
|
|
315
|
+
on: getFilterOns(renderOpts, params, option, function () {
|
|
316
|
+
// 处理 change 事件相关逻辑
|
|
317
|
+
handleConfirmFilter(params, !!option.data, option);
|
|
318
|
+
})
|
|
319
|
+
});
|
|
320
|
+
}))];
|
|
321
|
+
};
|
|
322
|
+
}
|
|
323
|
+
function handleConfirmFilter(params, checked, option) {
|
|
324
|
+
var $panel = params.$panel;
|
|
325
|
+
$panel.changeOption(null, checked, option);
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* 模糊匹配
|
|
329
|
+
* @param params
|
|
330
|
+
*/
|
|
331
|
+
function defaultFuzzyFilterMethod(params) {
|
|
332
|
+
var option = params.option,
|
|
333
|
+
row = params.row,
|
|
334
|
+
column = params.column;
|
|
335
|
+
var data = option.data;
|
|
336
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
337
|
+
return _xeUtils["default"].toValueString(cellValue).indexOf(data) > -1;
|
|
338
|
+
}
|
|
339
|
+
/**
|
|
340
|
+
* 精确匹配
|
|
341
|
+
* @param params
|
|
342
|
+
*/
|
|
343
|
+
function defaultExactFilterMethod(params) {
|
|
344
|
+
var option = params.option,
|
|
345
|
+
row = params.row,
|
|
346
|
+
column = params.column;
|
|
347
|
+
var data = option.data;
|
|
348
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
349
|
+
/* eslint-disable eqeqeq */
|
|
350
|
+
return cellValue === data;
|
|
351
|
+
}
|
|
352
|
+
function cellText(cellValue) {
|
|
353
|
+
return [formatText(cellValue)];
|
|
354
|
+
}
|
|
355
|
+
function createDatePickerExportMethod(defaultFormat) {
|
|
356
|
+
return function (params) {
|
|
357
|
+
var row = params.row,
|
|
358
|
+
column = params.column,
|
|
359
|
+
options = params.options;
|
|
360
|
+
return options && options.original ? _xeUtils["default"].get(row, column.field) : getDatePickerCellValue(column.editRender || column.cellRender, params, defaultFormat);
|
|
361
|
+
};
|
|
362
|
+
}
|
|
363
|
+
function createExportMethod(getExportCellValue) {
|
|
364
|
+
return function (params) {
|
|
365
|
+
var row = params.row,
|
|
366
|
+
column = params.column,
|
|
367
|
+
options = params.options;
|
|
368
|
+
return options && options.original ? _xeUtils["default"].get(row, column.field) : getExportCellValue(column.editRender || column.cellRender, params);
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
VxeUI.renderer.mixin({
|
|
372
|
+
AAutoComplete: {
|
|
373
|
+
tableAutoFocus: 'input',
|
|
374
|
+
renderTableDefault: createEditRender(),
|
|
375
|
+
renderTableEdit: createEditRender(),
|
|
376
|
+
renderTableFilter: createFilterRender(),
|
|
377
|
+
tableFilterDefaultMethod: defaultFuzzyFilterMethod
|
|
378
|
+
},
|
|
379
|
+
AInput: {
|
|
380
|
+
tableAutoFocus: 'input',
|
|
381
|
+
renderTableDefault: createEditRender(),
|
|
382
|
+
renderTableEdit: createEditRender(),
|
|
383
|
+
renderTableFilter: createFilterRender(),
|
|
384
|
+
tableFilterDefaultMethod: defaultFuzzyFilterMethod
|
|
385
|
+
},
|
|
386
|
+
AInputNumber: {
|
|
387
|
+
tableAutoFocus: 'input',
|
|
388
|
+
renderTableDefault: createEditRender(),
|
|
389
|
+
renderTableEdit: createEditRender(),
|
|
390
|
+
renderTableFilter: createFilterRender(),
|
|
391
|
+
tableFilterDefaultMethod: defaultFuzzyFilterMethod
|
|
392
|
+
},
|
|
393
|
+
ASelect: {
|
|
394
|
+
renderTableEdit: function renderTableEdit(h, renderOpts, params) {
|
|
395
|
+
var options = renderOpts.options,
|
|
396
|
+
optionGroups = renderOpts.optionGroups;
|
|
397
|
+
var row = params.row,
|
|
398
|
+
column = params.column;
|
|
399
|
+
var attrs = renderOpts.attrs;
|
|
400
|
+
var cellValue = _xeUtils["default"].get(row, column.field);
|
|
401
|
+
var props = getCellEditFilterProps(renderOpts, params, cellValue);
|
|
402
|
+
var ons = getEditOns(renderOpts, params);
|
|
403
|
+
if (optionGroups) {
|
|
404
|
+
return [h('a-select', {
|
|
405
|
+
attrs: attrs,
|
|
406
|
+
props: _objectSpread(_objectSpread({}, props), {}, {
|
|
407
|
+
options: optionGroups
|
|
408
|
+
}),
|
|
409
|
+
on: ons
|
|
410
|
+
})];
|
|
411
|
+
}
|
|
412
|
+
return [h('a-select', {
|
|
413
|
+
attrs: attrs,
|
|
414
|
+
props: _objectSpread(_objectSpread({}, props), {}, {
|
|
415
|
+
options: props.options || options
|
|
416
|
+
}),
|
|
417
|
+
on: ons
|
|
418
|
+
})];
|
|
419
|
+
},
|
|
420
|
+
renderTableCell: function renderTableCell(h, renderOpts, params) {
|
|
421
|
+
return getCellLabelVNs(h, renderOpts, params, getSelectCellValue(renderOpts, params));
|
|
422
|
+
},
|
|
423
|
+
renderTableFilter: function renderTableFilter(h, renderOpts, params) {
|
|
424
|
+
var _renderOpts$options2 = renderOpts.options,
|
|
425
|
+
options = _renderOpts$options2 === void 0 ? [] : _renderOpts$options2,
|
|
426
|
+
optionGroups = renderOpts.optionGroups,
|
|
427
|
+
_renderOpts$optionGro2 = renderOpts.optionGroupProps,
|
|
428
|
+
optionGroupProps = _renderOpts$optionGro2 === void 0 ? {} : _renderOpts$optionGro2;
|
|
429
|
+
var groupOptions = optionGroupProps.options || 'options';
|
|
430
|
+
var column = params.column;
|
|
431
|
+
var attrs = renderOpts.attrs;
|
|
432
|
+
return [h('div', {
|
|
433
|
+
"class": 'vxe-table--filter-antd-wrapper'
|
|
434
|
+
}, optionGroups ? column.filters.map(function (option, oIndex) {
|
|
435
|
+
var optionValue = option.data;
|
|
436
|
+
var props = getCellEditFilterProps(renderOpts, params, optionValue);
|
|
437
|
+
return h('a-select', {
|
|
438
|
+
key: oIndex,
|
|
439
|
+
attrs: attrs,
|
|
440
|
+
props: _objectSpread(_objectSpread({}, props), {}, {
|
|
441
|
+
options: groupOptions
|
|
442
|
+
}),
|
|
443
|
+
on: getFilterOns(renderOpts, params, option, function () {
|
|
444
|
+
// 处理 change 事件相关逻辑
|
|
445
|
+
handleConfirmFilter(params, props.mode === 'multiple' ? option.data && option.data.length > 0 : !_xeUtils["default"].eqNull(option.data), option);
|
|
446
|
+
})
|
|
447
|
+
});
|
|
448
|
+
}) : column.filters.map(function (option, oIndex) {
|
|
449
|
+
var optionValue = option.data;
|
|
450
|
+
var props = getCellEditFilterProps(renderOpts, params, optionValue);
|
|
451
|
+
return h('a-select', {
|
|
452
|
+
key: oIndex,
|
|
453
|
+
attrs: attrs,
|
|
454
|
+
props: _objectSpread(_objectSpread({}, props), {}, {
|
|
455
|
+
options: props.options || options
|
|
456
|
+
}),
|
|
457
|
+
on: getFilterOns(renderOpts, params, option, function () {
|
|
458
|
+
// 处理 change 事件相关逻辑
|
|
459
|
+
handleConfirmFilter(params, props.mode === 'multiple' ? option.data && option.data.length > 0 : !_xeUtils["default"].eqNull(option.data), option);
|
|
460
|
+
})
|
|
461
|
+
});
|
|
462
|
+
}))];
|
|
463
|
+
},
|
|
464
|
+
tableFilterDefaultMethod: function tableFilterDefaultMethod(params) {
|
|
465
|
+
var option = params.option,
|
|
466
|
+
row = params.row,
|
|
467
|
+
column = params.column;
|
|
468
|
+
var data = option.data;
|
|
469
|
+
var field = column.field,
|
|
470
|
+
renderOpts = column.filterRender;
|
|
471
|
+
var _renderOpts$props7 = renderOpts.props,
|
|
472
|
+
props = _renderOpts$props7 === void 0 ? {} : _renderOpts$props7;
|
|
473
|
+
var cellValue = _xeUtils["default"].get(row, field);
|
|
474
|
+
if (props.mode === 'multiple') {
|
|
475
|
+
if (_xeUtils["default"].isArray(cellValue)) {
|
|
476
|
+
return _xeUtils["default"].includeArrays(cellValue, data);
|
|
477
|
+
}
|
|
478
|
+
return data.indexOf(cellValue) > -1;
|
|
479
|
+
}
|
|
480
|
+
/* eslint-disable eqeqeq */
|
|
481
|
+
return cellValue == data;
|
|
482
|
+
},
|
|
483
|
+
tableExportMethod: createExportMethod(getSelectCellValue)
|
|
484
|
+
},
|
|
485
|
+
ACascader: {
|
|
486
|
+
renderTableEdit: createEditRender(),
|
|
487
|
+
renderTableCell: function renderTableCell(h, renderOpts, params) {
|
|
488
|
+
return getCellLabelVNs(h, renderOpts, params, getCascaderCellValue(renderOpts, params));
|
|
489
|
+
},
|
|
490
|
+
tableExportMethod: createExportMethod(getCascaderCellValue)
|
|
491
|
+
},
|
|
492
|
+
ADatePicker: {
|
|
493
|
+
renderTableEdit: createEditRender(),
|
|
494
|
+
renderTableCell: formatDatePicker(),
|
|
495
|
+
tableExportMethod: createDatePickerExportMethod()
|
|
496
|
+
},
|
|
497
|
+
AMonthPicker: {
|
|
498
|
+
renderTableEdit: createEditRender(),
|
|
499
|
+
renderTableCell: formatDatePicker('YYYY-MM'),
|
|
500
|
+
tableExportMethod: createDatePickerExportMethod('YYYY-MM')
|
|
501
|
+
},
|
|
502
|
+
ARangePicker: {
|
|
503
|
+
renderTableEdit: createEditRender(),
|
|
504
|
+
renderTableCell: function renderTableCell(h, renderOpts, params) {
|
|
505
|
+
return getCellLabelVNs(h, renderOpts, params, getRangePickerCellValue(renderOpts, params));
|
|
506
|
+
},
|
|
507
|
+
tableExportMethod: createExportMethod(getRangePickerCellValue)
|
|
508
|
+
},
|
|
509
|
+
AWeekPicker: {
|
|
510
|
+
renderTableEdit: createEditRender(),
|
|
511
|
+
renderTableCell: formatDatePicker('YYYY-WW周'),
|
|
512
|
+
tableExportMethod: createDatePickerExportMethod('YYYY-WW周')
|
|
513
|
+
},
|
|
514
|
+
ATimePicker: {
|
|
515
|
+
renderTableEdit: createEditRender(),
|
|
516
|
+
renderTableCell: formatTimePicker('HH:mm:ss'),
|
|
517
|
+
tableExportMethod: createDatePickerExportMethod('HH:mm:ss')
|
|
518
|
+
},
|
|
519
|
+
ATreeSelect: {
|
|
520
|
+
renderTableEdit: createEditRender(),
|
|
521
|
+
renderTableCell: function renderTableCell(h, renderOpts, params) {
|
|
522
|
+
return getCellLabelVNs(h, renderOpts, params, getTreeSelectCellValue(renderOpts, params));
|
|
523
|
+
},
|
|
524
|
+
tableExportMethod: createExportMethod(getTreeSelectCellValue)
|
|
525
|
+
},
|
|
526
|
+
ARate: {
|
|
527
|
+
renderTableDefault: createEditRender(),
|
|
528
|
+
renderTableEdit: createEditRender(),
|
|
529
|
+
renderTableFilter: createFilterRender(),
|
|
530
|
+
tableFilterDefaultMethod: defaultExactFilterMethod
|
|
531
|
+
},
|
|
532
|
+
ASwitch: {
|
|
533
|
+
renderTableDefault: createEditRender(),
|
|
534
|
+
renderTableEdit: createEditRender(),
|
|
535
|
+
renderTableFilter: function renderTableFilter(h, renderOpts, params) {
|
|
536
|
+
var column = params.column;
|
|
537
|
+
var name = renderOpts.name,
|
|
538
|
+
attrs = renderOpts.attrs;
|
|
539
|
+
return [h('div', {
|
|
540
|
+
"class": 'vxe-table--filter-antd-wrapper'
|
|
541
|
+
}, column.filters.map(function (option, oIndex) {
|
|
542
|
+
var optionValue = option.data;
|
|
543
|
+
return h(name, {
|
|
544
|
+
key: oIndex,
|
|
545
|
+
attrs: attrs,
|
|
546
|
+
props: getCellEditFilterProps(renderOpts, params, optionValue),
|
|
547
|
+
on: getFilterOns(renderOpts, params, option, function () {
|
|
548
|
+
// 处理 change 事件相关逻辑
|
|
549
|
+
handleConfirmFilter(params, _xeUtils["default"].isBoolean(option.data), option);
|
|
550
|
+
})
|
|
551
|
+
});
|
|
552
|
+
}))];
|
|
553
|
+
},
|
|
554
|
+
tableFilterDefaultMethod: defaultExactFilterMethod
|
|
555
|
+
},
|
|
556
|
+
AButton: {
|
|
557
|
+
renderTableEdit: defaultButtonEditRender,
|
|
558
|
+
renderTableDefault: defaultButtonEditRender
|
|
559
|
+
},
|
|
560
|
+
AButtons: {
|
|
561
|
+
renderTableEdit: defaultButtonsEditRender,
|
|
562
|
+
renderTableDefault: defaultButtonsEditRender
|
|
563
|
+
}
|
|
564
|
+
});
|
|
565
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@vxe-ui/plugin-render-antd",
|
|
3
|
+
"version": "3.0.0",
|
|
4
|
+
"description": "Vxe UI plug-in for compatibility with the ant-design-vue component.",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"lib": "gulp build"
|
|
7
|
+
},
|
|
8
|
+
"files": [
|
|
9
|
+
"types",
|
|
10
|
+
"dist",
|
|
11
|
+
"src"
|
|
12
|
+
],
|
|
13
|
+
"main": "dist/index.common.js",
|
|
14
|
+
"unpkg": "dist/index.umd.js",
|
|
15
|
+
"jsdelivr": "dist/index.umd.js",
|
|
16
|
+
"style": "dist/style.css",
|
|
17
|
+
"typings": "types/index.d.ts",
|
|
18
|
+
"devDependencies": {
|
|
19
|
+
"@babel/core": "^7.12.3",
|
|
20
|
+
"@babel/plugin-transform-runtime": "^7.12.1",
|
|
21
|
+
"@babel/preset-env": "^7.12.1",
|
|
22
|
+
"@babel/runtime": "^7.12.5",
|
|
23
|
+
"@typescript-eslint/eslint-plugin": "^4.6.1",
|
|
24
|
+
"@typescript-eslint/parser": "^4.6.1",
|
|
25
|
+
"browserify": "^17.0.0",
|
|
26
|
+
"del": "^6.0.0",
|
|
27
|
+
"eslint": "^7.13.0",
|
|
28
|
+
"eslint-config-prettier": "^6.15.0",
|
|
29
|
+
"eslint-config-standard": "^16.0.1",
|
|
30
|
+
"eslint-friendly-formatter": "^4.0.1",
|
|
31
|
+
"eslint-plugin-import": "^2.22.1",
|
|
32
|
+
"eslint-plugin-node": "^11.1.0",
|
|
33
|
+
"eslint-plugin-prettier": "^3.1.4",
|
|
34
|
+
"eslint-plugin-promise": "^4.2.1",
|
|
35
|
+
"eslint-plugin-standard": "^4.0.2",
|
|
36
|
+
"eslint-plugin-typescript": "^0.14.0",
|
|
37
|
+
"gulp": "^4.0.2",
|
|
38
|
+
"gulp-autoprefixer": "^8.0.0",
|
|
39
|
+
"gulp-babel": "^8.0.0",
|
|
40
|
+
"gulp-clean-css": "^4.3.0",
|
|
41
|
+
"gulp-concat": "^2.6.1",
|
|
42
|
+
"gulp-rename": "^2.0.0",
|
|
43
|
+
"gulp-replace": "^1.1.3",
|
|
44
|
+
"gulp-sass": "^5.1.0",
|
|
45
|
+
"gulp-sourcemaps": "^3.0.0",
|
|
46
|
+
"gulp-typescript": "^5.0.1",
|
|
47
|
+
"gulp-uglify": "^3.0.2",
|
|
48
|
+
"markdown-doctest": "^1.1.0",
|
|
49
|
+
"prettier": "^2.1.2",
|
|
50
|
+
"sass": "^1.55.0",
|
|
51
|
+
"typescript": "^4.6.4",
|
|
52
|
+
"vinyl-source-stream": "^2.0.0",
|
|
53
|
+
"vue": "^2.6.14",
|
|
54
|
+
"vxe-pc-ui": "^3.1.8",
|
|
55
|
+
"vxe-table": "^3.9.0-rc.15"
|
|
56
|
+
},
|
|
57
|
+
"repository": {
|
|
58
|
+
"type": "git",
|
|
59
|
+
"url": "git+https://github.com/x-extends/vxe-ui-plugins.git"
|
|
60
|
+
},
|
|
61
|
+
"keywords": [
|
|
62
|
+
"vxe-ui-plugins"
|
|
63
|
+
],
|
|
64
|
+
"author": {
|
|
65
|
+
"name": "Xu Liangzhan",
|
|
66
|
+
"email": "xu_liangzhan@163.com"
|
|
67
|
+
},
|
|
68
|
+
"license": "MIT",
|
|
69
|
+
"bugs": {
|
|
70
|
+
"url": "https://github.com/x-extends/vxe-ui-plugins/issues"
|
|
71
|
+
},
|
|
72
|
+
"homepage": "https://github.com/x-extends/vxe-ui-plugins#readme"
|
|
73
|
+
}
|