@vxe-ui/plugin-render-antd 4.0.2 → 4.0.4

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/dist/index.umd.js CHANGED
@@ -1,637 +1,2396 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define("@vxe-ui/plugin-render-antd", ["exports", "vue", "xe-utils"], factory);
3
+ define("@vxe-ui/plugin-render-antd", [], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("vue"), require("xe-utils"));
5
+ factory();
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.Vue, global.XEUtils);
11
- global.VXETablePluginExportXLSX = mod.exports;
10
+ factory();
11
+ global.VxeUIPluginRenderAntd = mod.exports;
12
12
  }
13
- })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _vue, _xeUtils) {
13
+ })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function () {
14
14
  "use strict";
15
15
 
16
- Object.defineProperty(_exports, "__esModule", {
17
- value: true
18
- });
19
- _exports["default"] = _exports.VxeUIPluginRenderAntd = void 0;
20
- _xeUtils = _interopRequireDefault(_xeUtils);
21
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
22
- 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); }
23
- 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; }
24
- 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; }
25
- 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; }
26
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
27
- 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); }
28
- var VxeUI;
29
- // eslint-disable-next-line no-unused-vars
30
- var Antd;
31
- function isEmptyValue(cellValue) {
32
- return cellValue === null || cellValue === undefined || cellValue === '';
33
- }
34
- function getOnName(type) {
35
- return 'on' + type.substring(0, 1).toLocaleUpperCase() + type.substring(1);
36
- }
37
- function getModelProp(renderOpts) {
38
- var prop = 'value';
39
- switch (renderOpts.name) {
40
- case 'ASwitch':
41
- prop = 'checked';
42
- break;
43
- }
44
- return prop;
45
- }
46
- function getModelEvent(renderOpts) {
47
- var type = 'update:value';
48
- switch (renderOpts.name) {
49
- case 'ASwitch':
50
- type = 'update:checked';
51
- break;
52
- }
53
- return type;
54
- }
55
- function dateFormatToVxeFormat(format) {
56
- if (format) {
57
- return "".concat(format).replace('YYYY', 'yyyy').replace('DD', 'dd');
58
- }
59
- return format;
60
- }
61
- function getChangeEvent(renderOpts) {
62
- return 'change';
63
- }
64
- function getCellEditFilterProps(renderOpts, params, value, defaultProps) {
65
- return _xeUtils["default"].assign({}, defaultProps, renderOpts.props, _defineProperty({}, getModelProp(renderOpts), value));
66
- }
67
- function getItemProps(renderOpts, params, value, defaultProps) {
68
- return _xeUtils["default"].assign({}, defaultProps, renderOpts.props, _defineProperty({}, getModelProp(renderOpts), value));
69
- }
70
- function formatText(cellValue) {
71
- return '' + (isEmptyValue(cellValue) ? '' : cellValue);
72
- }
73
- function getCellLabelVNs(renderOpts, params, cellLabel) {
74
- var placeholder = renderOpts.placeholder;
75
- return [(0, _vue.h)('span', {
76
- "class": 'vxe-cell--label'
77
- }, placeholder && isEmptyValue(cellLabel) ? [(0, _vue.h)('span', {
78
- "class": 'vxe-cell--placeholder'
79
- }, formatText(placeholder))] : formatText(cellLabel))];
80
- }
81
- function getOns(renderOpts, params, inputFunc, changeFunc) {
82
- var events = renderOpts.events;
83
- var modelEvent = getModelEvent(renderOpts);
84
- var changeEvent = getChangeEvent(renderOpts);
85
- var isSameEvent = changeEvent === modelEvent;
86
- var ons = {};
87
- _xeUtils["default"].objectEach(events, function (func, key) {
88
- ons[getOnName(key)] = function () {
89
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
90
- args[_key] = arguments[_key];
91
- }
92
- func.apply(void 0, [params].concat(args));
93
- };
94
- });
95
- if (inputFunc) {
96
- ons[getOnName(modelEvent)] = function (targetEvnt) {
97
- inputFunc(targetEvnt);
98
- if (events && events[modelEvent]) {
99
- events[modelEvent](params, targetEvnt);
100
- }
101
- if (isSameEvent && changeFunc) {
102
- changeFunc(targetEvnt);
103
- }
104
- };
105
- }
106
- if (!isSameEvent && changeFunc) {
107
- ons[getOnName(changeEvent)] = function () {
108
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
109
- args[_key2] = arguments[_key2];
110
- }
111
- changeFunc.apply(void 0, args);
112
- if (events && events[changeEvent]) {
113
- events[changeEvent].apply(events, [params].concat(args));
16
+ (function () {
17
+ function r(e, n, t) {
18
+ function o(i, f) {
19
+ if (!n[i]) {
20
+ if (!e[i]) {
21
+ var c = "function" == typeof require && require;
22
+ if (!f && c) return c(i, !0);
23
+ if (u) return u(i, !0);
24
+ var a = new Error("Cannot find module '" + i + "'");
25
+ throw a.code = "MODULE_NOT_FOUND", a;
26
+ }
27
+ var p = n[i] = {
28
+ exports: {}
29
+ };
30
+ e[i][0].call(p.exports, function (r) {
31
+ var n = e[i][1][r];
32
+ return o(n || r);
33
+ }, p, p.exports, r, e, n, t);
114
34
  }
115
- };
35
+ return n[i].exports;
36
+ }
37
+ for (var u = "function" == typeof require && require, i = 0; i < t.length; i++) o(t[i]);
38
+ return o;
116
39
  }
117
- return ons;
118
- }
119
- function getEditOns(renderOpts, params) {
120
- var $table = params.$table,
121
- row = params.row,
122
- column = params.column;
123
- return getOns(renderOpts, params, function (value) {
124
- // 处理 model 值双向绑定
125
- _xeUtils["default"].set(row, column.field, value);
126
- }, function () {
127
- // 处理 change 事件相关逻辑
128
- $table.updateStatus(params);
129
- });
130
- }
131
- function getFilterOns(renderOpts, params, option, changeFunc) {
132
- return getOns(renderOpts, params, function (value) {
133
- // 处理 model 值双向绑定
134
- option.data = value;
135
- }, changeFunc);
136
- }
137
- function getItemOns(renderOpts, params) {
138
- var $form = params.$form,
139
- data = params.data,
140
- field = params.field;
141
- return getOns(renderOpts, params, function (value) {
142
- // 处理 model 值双向绑定
143
- _xeUtils["default"].set(data, field, value);
144
- }, function () {
145
- // 处理 change 事件相关逻辑
146
- $form.updateStatus(params);
147
- });
148
- }
149
- function matchCascaderData(index, list, values, labels) {
150
- var val = values[index];
151
- if (list && values.length > index) {
152
- _xeUtils["default"].each(list, function (item) {
153
- if (item.value === val) {
154
- labels.push(item.label);
155
- matchCascaderData(++index, item.children, values, labels);
156
- }
40
+ return r;
41
+ })()({
42
+ 1: [function (require, module, exports) {
43
+ "use strict";
44
+
45
+ Object.defineProperty(exports, "__esModule", {
46
+ value: true
157
47
  });
158
- }
159
- }
160
- function formatDatePicker(defaultFormat) {
161
- return function (renderOpts, params) {
162
- return getCellLabelVNs(renderOpts, params, getDatePickerCellValue(renderOpts, params, defaultFormat));
163
- };
164
- }
165
- function getSelectCellValue(renderOpts, params) {
166
- var _renderOpts$options = renderOpts.options,
167
- options = _renderOpts$options === void 0 ? [] : _renderOpts$options,
168
- optionGroups = renderOpts.optionGroups,
169
- _renderOpts$props = renderOpts.props,
170
- props = _renderOpts$props === void 0 ? {} : _renderOpts$props,
171
- _renderOpts$optionPro = renderOpts.optionProps,
172
- optionProps = _renderOpts$optionPro === void 0 ? {} : _renderOpts$optionPro,
173
- _renderOpts$optionGro = renderOpts.optionGroupProps,
174
- optionGroupProps = _renderOpts$optionGro === void 0 ? {} : _renderOpts$optionGro;
175
- var row = params.row,
176
- column = params.column;
177
- var labelProp = optionProps.label || 'label';
178
- var valueProp = optionProps.value || 'value';
179
- var groupOptions = optionGroupProps.options || 'options';
180
- var cellValue = _xeUtils["default"].get(row, column.field);
181
- if (!isEmptyValue(cellValue)) {
182
- return _xeUtils["default"].map(props.mode === 'multiple' ? cellValue : [cellValue], optionGroups ? function (value) {
183
- var selectItem;
184
- for (var index = 0; index < optionGroups.length; index++) {
185
- selectItem = _xeUtils["default"].find(optionGroups[index][groupOptions], function (item) {
186
- return item[valueProp] === value;
48
+ exports.createWidgetACheckbox = createWidgetACheckbox;
49
+ var _vue = require("vue");
50
+ var _use = require("./use");
51
+ var _xeUtils = _interopRequireDefault(require("xe-utils"));
52
+ function _interopRequireDefault(e) {
53
+ return e && e.__esModule ? e : {
54
+ "default": e
55
+ };
56
+ }
57
+ function createWidgetACheckbox(VxeUI) {
58
+ var getWidgetACheckboxConfig = function getWidgetACheckboxConfig(params) {
59
+ return {
60
+ title: '复选框',
61
+ icon: 'vxe-icon-checkbox-checked',
62
+ options: {
63
+ options: _xeUtils["default"].range(0, 3).map(function (v, i) {
64
+ return {
65
+ value: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.defValue', [i + 1])
66
+ };
67
+ })
68
+ }
69
+ };
70
+ };
71
+ var WidgetACheckboxFormComponent = (0, _vue.defineComponent)({
72
+ props: {
73
+ renderOpts: {
74
+ type: Object,
75
+ "default": function _default() {
76
+ return {};
77
+ }
78
+ },
79
+ renderParams: {
80
+ type: Object,
81
+ "default": function _default() {
82
+ return {};
83
+ }
84
+ }
85
+ },
86
+ emits: [],
87
+ setup: function setup(props) {
88
+ var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
89
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
90
+ var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
91
+ var VxeUIInputComponent = VxeUI.getComponent('VxeInput');
92
+ var _useWidgetPropDataSou = (0, _use.useWidgetPropDataSource)(VxeUI, props, false),
93
+ renderDataSourceFormItem = _useWidgetPropDataSou.renderDataSourceFormItem;
94
+ return function () {
95
+ var renderParams = props.renderParams;
96
+ var widget = renderParams.widget;
97
+ return (0, _vue.h)(VxeUIFormComponent, {
98
+ "class": 'vxe-form-design--widget-render-form-wrapper',
99
+ vertical: true,
100
+ span: 24,
101
+ titleBold: true,
102
+ titleOverflow: true,
103
+ data: widget.options
104
+ }, {
105
+ "default": function _default() {
106
+ return [(0, _vue.h)(VxeUIFormItemComponent, {
107
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
108
+ }, {
109
+ "default": function _default() {
110
+ return (0, _vue.h)(VxeUIInputComponent, {
111
+ modelValue: widget.title,
112
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
113
+ widget.title = val;
114
+ }
115
+ });
116
+ }
117
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
118
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
119
+ field: 'placeholder',
120
+ itemRender: {
121
+ name: 'ElInput'
122
+ }
123
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
124
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
125
+ }, {
126
+ "default": function _default() {
127
+ return (0, _vue.h)(VxeUISwitchComponent, {
128
+ modelValue: widget.required,
129
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
130
+ widget.required = val;
131
+ }
132
+ });
133
+ }
134
+ }), renderDataSourceFormItem()];
135
+ }
136
+ });
137
+ };
138
+ }
139
+ });
140
+ var WidgetACheckboxViewComponent = (0, _vue.defineComponent)({
141
+ props: {
142
+ renderOpts: {
143
+ type: Object,
144
+ "default": function _default() {
145
+ return {};
146
+ }
147
+ },
148
+ renderParams: {
149
+ type: Object,
150
+ "default": function _default() {
151
+ return {};
152
+ }
153
+ }
154
+ },
155
+ emits: [],
156
+ setup: function setup(props) {
157
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
158
+ var checkboxOptions = (0, _vue.computed)(function () {
159
+ var renderParams = props.renderParams;
160
+ var widget = renderParams.widget;
161
+ var options = widget.options;
162
+ return options.options.map(function (item) {
163
+ return {
164
+ label: item.value,
165
+ value: item.value
166
+ };
167
+ });
168
+ });
169
+ var changeEvent = function changeEvent() {
170
+ var renderParams = props.renderParams;
171
+ var widget = renderParams.widget,
172
+ $formView = renderParams.$formView;
173
+ if ($formView) {
174
+ var itemValue = $formView ? $formView.getItemValue(widget) : null;
175
+ $formView.updateItemStatus(widget, itemValue);
176
+ }
177
+ };
178
+ return function () {
179
+ var renderParams = props.renderParams;
180
+ var widget = renderParams.widget,
181
+ $formView = renderParams.$formView;
182
+ return (0, _vue.h)(VxeUIFormItemComponent, {
183
+ "class": ['vxe-form-design--widget-render-form-item'],
184
+ field: widget.field,
185
+ title: widget.title
186
+ }, {
187
+ "default": function _default() {
188
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-checkbox-group'), {
189
+ value: $formView ? $formView.getItemValue(widget) : null,
190
+ options: checkboxOptions.value,
191
+ onChange: changeEvent,
192
+ 'onUpdate:value': function onUpdateValue(val) {
193
+ if ($formView) {
194
+ $formView.setItemValue(widget, val);
195
+ }
196
+ }
197
+ });
198
+ }
199
+ });
200
+ };
201
+ }
202
+ });
203
+ return {
204
+ getWidgetACheckboxConfig: getWidgetACheckboxConfig,
205
+ WidgetACheckboxFormComponent: WidgetACheckboxFormComponent,
206
+ WidgetACheckboxViewComponent: WidgetACheckboxViewComponent
207
+ };
208
+ }
209
+ }, {
210
+ "./use": 10,
211
+ "vue": "vue",
212
+ "xe-utils": "xe-utils"
213
+ }],
214
+ 2: [function (require, module, exports) {
215
+ "use strict";
216
+
217
+ Object.defineProperty(exports, "__esModule", {
218
+ value: true
219
+ });
220
+ exports.createWidgetADatePicker = createWidgetADatePicker;
221
+ var _vue = require("vue");
222
+ function createWidgetADatePicker(VxeUI) {
223
+ var getWidgetADatePickerConfig = function getWidgetADatePickerConfig(params) {
224
+ return {
225
+ title: '日期',
226
+ icon: 'vxe-icon-input',
227
+ options: {
228
+ placeholder: ''
229
+ }
230
+ };
231
+ };
232
+ var WidgetADatePickerFormComponent = (0, _vue.defineComponent)({
233
+ props: {
234
+ renderOpts: {
235
+ type: Object,
236
+ "default": function _default() {
237
+ return {};
238
+ }
239
+ },
240
+ renderParams: {
241
+ type: Object,
242
+ "default": function _default() {
243
+ return {};
244
+ }
245
+ }
246
+ },
247
+ emits: [],
248
+ setup: function setup(props) {
249
+ var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
250
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
251
+ var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
252
+ var VxeUIInputComponent = VxeUI.getComponent('VxeInput');
253
+ return function () {
254
+ var renderParams = props.renderParams;
255
+ var widget = renderParams.widget;
256
+ return (0, _vue.h)(VxeUIFormComponent, {
257
+ "class": 'vxe-form-design--widget-render-form-wrapper',
258
+ vertical: true,
259
+ span: 24,
260
+ titleBold: true,
261
+ titleOverflow: true,
262
+ data: widget.options
263
+ }, {
264
+ "default": function _default() {
265
+ return [(0, _vue.h)(VxeUIFormItemComponent, {
266
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
267
+ }, {
268
+ "default": function _default() {
269
+ return (0, _vue.h)(VxeUIInputComponent, {
270
+ modelValue: widget.title,
271
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
272
+ widget.title = val;
273
+ }
274
+ });
275
+ }
276
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
277
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
278
+ field: 'placeholder',
279
+ itemRender: {
280
+ name: 'VxeInput'
281
+ }
282
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
283
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
284
+ }, {
285
+ "default": function _default() {
286
+ return (0, _vue.h)(VxeUISwitchComponent, {
287
+ modelValue: widget.required,
288
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
289
+ widget.required = val;
290
+ }
291
+ });
292
+ }
293
+ })];
294
+ }
295
+ });
296
+ };
297
+ }
298
+ });
299
+ var WidgetADatePickerViewComponent = (0, _vue.defineComponent)({
300
+ props: {
301
+ renderOpts: {
302
+ type: Object,
303
+ "default": function _default() {
304
+ return {};
305
+ }
306
+ },
307
+ renderParams: {
308
+ type: Object,
309
+ "default": function _default() {
310
+ return {};
311
+ }
312
+ }
313
+ },
314
+ emits: [],
315
+ setup: function setup(props) {
316
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
317
+ var changeEvent = function changeEvent() {
318
+ var renderParams = props.renderParams;
319
+ var widget = renderParams.widget,
320
+ $formView = renderParams.$formView;
321
+ if ($formView) {
322
+ var itemValue = $formView ? $formView.getItemValue(widget) : null;
323
+ $formView.updateItemStatus(widget, itemValue);
324
+ }
325
+ };
326
+ return function () {
327
+ var renderParams = props.renderParams;
328
+ var widget = renderParams.widget,
329
+ $formView = renderParams.$formView;
330
+ var options = widget.options;
331
+ return (0, _vue.h)(VxeUIFormItemComponent, {
332
+ "class": ['vxe-form-design--widget-render-form-item'],
333
+ field: widget.field,
334
+ title: widget.title
335
+ }, {
336
+ "default": function _default() {
337
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-date-picker'), {
338
+ value: $formView ? $formView.getItemValue(widget) : null,
339
+ placeholder: options.placeholder,
340
+ onChange: changeEvent,
341
+ 'onUpdate:value': function onUpdateValue(val) {
342
+ if ($formView) {
343
+ $formView.setItemValue(widget, val);
344
+ }
345
+ }
346
+ });
347
+ }
348
+ });
349
+ };
350
+ }
351
+ });
352
+ return {
353
+ getWidgetADatePickerConfig: getWidgetADatePickerConfig,
354
+ WidgetADatePickerFormComponent: WidgetADatePickerFormComponent,
355
+ WidgetADatePickerViewComponent: WidgetADatePickerViewComponent
356
+ };
357
+ }
358
+ }, {
359
+ "vue": "vue"
360
+ }],
361
+ 3: [function (require, module, exports) {
362
+ "use strict";
363
+
364
+ Object.defineProperty(exports, "__esModule", {
365
+ value: true
366
+ });
367
+ exports.defineFormDesignRender = defineFormDesignRender;
368
+ var _vue = require("vue");
369
+ var _inputWidget = require("./input-widget");
370
+ var _textareaWidget = require("./textarea-widget");
371
+ var _numberInputWidget = require("./number-input-widget");
372
+ var _datePickerWidget = require("./date-picker-widget");
373
+ var _selectWidget = require("./select-widget");
374
+ var _radioWidget = require("./radio-widget");
375
+ var _checkboxWidget = require("./checkbox-widget");
376
+ var _switchWidget = require("./switch-widget");
377
+ /**
378
+ * 表单设计器 - 渲染器
379
+ */
380
+ function defineFormDesignRender(VxeUI) {
381
+ var _createWidgetAInput = (0, _inputWidget.createWidgetAInput)(VxeUI),
382
+ getWidgetAInputConfig = _createWidgetAInput.getWidgetAInputConfig,
383
+ WidgetAInputViewComponent = _createWidgetAInput.WidgetAInputViewComponent,
384
+ WidgetAInputFormComponent = _createWidgetAInput.WidgetAInputFormComponent;
385
+ var _createWidgetATextare = (0, _textareaWidget.createWidgetATextarea)(VxeUI),
386
+ getWidgetATextareaConfig = _createWidgetATextare.getWidgetATextareaConfig,
387
+ WidgetATextareaViewComponent = _createWidgetATextare.WidgetATextareaViewComponent,
388
+ WidgetATextareaFormComponent = _createWidgetATextare.WidgetATextareaFormComponent;
389
+ var _createWidgetAInputNu = (0, _numberInputWidget.createWidgetAInputNumber)(VxeUI),
390
+ getWidgetAInputNumberConfig = _createWidgetAInputNu.getWidgetAInputNumberConfig,
391
+ WidgetAInputNumberViewComponent = _createWidgetAInputNu.WidgetAInputNumberViewComponent,
392
+ WidgetAInputNumberFormComponent = _createWidgetAInputNu.WidgetAInputNumberFormComponent;
393
+ var _createWidgetADatePic = (0, _datePickerWidget.createWidgetADatePicker)(VxeUI),
394
+ getWidgetADatePickerConfig = _createWidgetADatePic.getWidgetADatePickerConfig,
395
+ WidgetADatePickerViewComponent = _createWidgetADatePic.WidgetADatePickerViewComponent,
396
+ WidgetADatePickerFormComponent = _createWidgetADatePic.WidgetADatePickerFormComponent;
397
+ var _createWidgetASelect = (0, _selectWidget.createWidgetASelect)(VxeUI),
398
+ getWidgetASelectConfig = _createWidgetASelect.getWidgetASelectConfig,
399
+ WidgetASelectViewComponent = _createWidgetASelect.WidgetASelectViewComponent,
400
+ WidgetASelectFormComponent = _createWidgetASelect.WidgetASelectFormComponent;
401
+ var _createWidgetARadio = (0, _radioWidget.createWidgetARadio)(VxeUI),
402
+ getWidgetARadioConfig = _createWidgetARadio.getWidgetARadioConfig,
403
+ WidgetARadioViewComponent = _createWidgetARadio.WidgetARadioViewComponent,
404
+ WidgetARadioFormComponent = _createWidgetARadio.WidgetARadioFormComponent;
405
+ var _createWidgetACheckbo = (0, _checkboxWidget.createWidgetACheckbox)(VxeUI),
406
+ getWidgetACheckboxConfig = _createWidgetACheckbo.getWidgetACheckboxConfig,
407
+ WidgetACheckboxViewComponent = _createWidgetACheckbo.WidgetACheckboxViewComponent,
408
+ WidgetACheckboxFormComponent = _createWidgetACheckbo.WidgetACheckboxFormComponent;
409
+ var _createWidgetASwitch = (0, _switchWidget.createWidgetASwitch)(VxeUI),
410
+ getWidgetASwitchConfig = _createWidgetASwitch.getWidgetASwitchConfig,
411
+ WidgetASwitchViewComponent = _createWidgetASwitch.WidgetASwitchViewComponent,
412
+ WidgetASwitchFormComponent = _createWidgetASwitch.WidgetASwitchFormComponent;
413
+ VxeUI.renderer.mixin({
414
+ AInputWidget: {
415
+ createFormDesignWidgetConfig: getWidgetAInputConfig,
416
+ renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
417
+ return (0, _vue.h)(WidgetAInputViewComponent, {
418
+ renderOpts: renderOpts,
419
+ renderParams: renderParams
420
+ });
421
+ },
422
+ renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
423
+ return (0, _vue.h)(WidgetAInputFormComponent, {
424
+ renderOpts: renderOpts,
425
+ renderParams: renderParams
426
+ });
427
+ }
428
+ },
429
+ ATextareaWidget: {
430
+ createFormDesignWidgetConfig: getWidgetATextareaConfig,
431
+ renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
432
+ return (0, _vue.h)(WidgetATextareaViewComponent, {
433
+ renderOpts: renderOpts,
434
+ renderParams: renderParams
435
+ });
436
+ },
437
+ renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
438
+ return (0, _vue.h)(WidgetATextareaFormComponent, {
439
+ renderOpts: renderOpts,
440
+ renderParams: renderParams
441
+ });
442
+ }
443
+ },
444
+ ANumberInputWidget: {
445
+ createFormDesignWidgetConfig: getWidgetAInputNumberConfig,
446
+ renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
447
+ return (0, _vue.h)(WidgetAInputNumberViewComponent, {
448
+ renderOpts: renderOpts,
449
+ renderParams: renderParams
450
+ });
451
+ },
452
+ renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
453
+ return (0, _vue.h)(WidgetAInputNumberFormComponent, {
454
+ renderOpts: renderOpts,
455
+ renderParams: renderParams
456
+ });
457
+ }
458
+ },
459
+ ADatePickerWidget: {
460
+ createFormDesignWidgetConfig: getWidgetADatePickerConfig,
461
+ renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
462
+ return (0, _vue.h)(WidgetADatePickerViewComponent, {
463
+ renderOpts: renderOpts,
464
+ renderParams: renderParams
465
+ });
466
+ },
467
+ renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
468
+ return (0, _vue.h)(WidgetADatePickerFormComponent, {
469
+ renderOpts: renderOpts,
470
+ renderParams: renderParams
471
+ });
472
+ }
473
+ },
474
+ ASelectWidget: {
475
+ createFormDesignWidgetConfig: getWidgetASelectConfig,
476
+ renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
477
+ return (0, _vue.h)(WidgetASelectViewComponent, {
478
+ renderOpts: renderOpts,
479
+ renderParams: renderParams
480
+ });
481
+ },
482
+ renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
483
+ return (0, _vue.h)(WidgetASelectFormComponent, {
484
+ renderOpts: renderOpts,
485
+ renderParams: renderParams
486
+ });
487
+ }
488
+ },
489
+ ARadioWidget: {
490
+ createFormDesignWidgetConfig: getWidgetARadioConfig,
491
+ renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
492
+ return (0, _vue.h)(WidgetARadioViewComponent, {
493
+ renderOpts: renderOpts,
494
+ renderParams: renderParams
495
+ });
496
+ },
497
+ renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
498
+ return (0, _vue.h)(WidgetARadioFormComponent, {
499
+ renderOpts: renderOpts,
500
+ renderParams: renderParams
501
+ });
502
+ }
503
+ },
504
+ ACheckboxWidget: {
505
+ createFormDesignWidgetConfig: getWidgetACheckboxConfig,
506
+ createFormDesignWidgetFieldValue: function createFormDesignWidgetFieldValue() {
507
+ return [];
508
+ },
509
+ renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
510
+ return (0, _vue.h)(WidgetACheckboxViewComponent, {
511
+ renderOpts: renderOpts,
512
+ renderParams: renderParams
513
+ });
514
+ },
515
+ renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
516
+ return (0, _vue.h)(WidgetACheckboxFormComponent, {
517
+ renderOpts: renderOpts,
518
+ renderParams: renderParams
519
+ });
520
+ }
521
+ },
522
+ ASwitchWidget: {
523
+ createFormDesignWidgetConfig: getWidgetASwitchConfig,
524
+ renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
525
+ return (0, _vue.h)(WidgetASwitchViewComponent, {
526
+ renderOpts: renderOpts,
527
+ renderParams: renderParams
528
+ });
529
+ },
530
+ renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
531
+ return (0, _vue.h)(WidgetASwitchFormComponent, {
532
+ renderOpts: renderOpts,
533
+ renderParams: renderParams
534
+ });
535
+ }
536
+ }
537
+ });
538
+ }
539
+ }, {
540
+ "./checkbox-widget": 1,
541
+ "./date-picker-widget": 2,
542
+ "./input-widget": 4,
543
+ "./number-input-widget": 5,
544
+ "./radio-widget": 6,
545
+ "./select-widget": 7,
546
+ "./switch-widget": 8,
547
+ "./textarea-widget": 9,
548
+ "vue": "vue"
549
+ }],
550
+ 4: [function (require, module, exports) {
551
+ "use strict";
552
+
553
+ Object.defineProperty(exports, "__esModule", {
554
+ value: true
555
+ });
556
+ exports.createWidgetAInput = createWidgetAInput;
557
+ var _vue = require("vue");
558
+ function createWidgetAInput(VxeUI) {
559
+ var getWidgetAInputConfig = function getWidgetAInputConfig(params) {
560
+ return {
561
+ title: '输入框',
562
+ icon: 'vxe-icon-input',
563
+ options: {
564
+ placeholder: ''
565
+ }
566
+ };
567
+ };
568
+ var WidgetAInputFormComponent = (0, _vue.defineComponent)({
569
+ props: {
570
+ renderOpts: {
571
+ type: Object,
572
+ "default": function _default() {
573
+ return {};
574
+ }
575
+ },
576
+ renderParams: {
577
+ type: Object,
578
+ "default": function _default() {
579
+ return {};
580
+ }
581
+ }
582
+ },
583
+ emits: [],
584
+ setup: function setup(props) {
585
+ var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
586
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
587
+ var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
588
+ var VxeUIInputComponent = VxeUI.getComponent('VxeInput');
589
+ return function () {
590
+ var renderParams = props.renderParams;
591
+ var widget = renderParams.widget;
592
+ var options = widget.options;
593
+ return (0, _vue.h)(VxeUIFormComponent, {
594
+ "class": 'vxe-form-design--widget-render-form-wrapper',
595
+ vertical: true,
596
+ span: 24,
597
+ titleBold: true,
598
+ titleOverflow: true,
599
+ data: options
600
+ }, {
601
+ "default": function _default() {
602
+ return [(0, _vue.h)(VxeUIFormItemComponent, {
603
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
604
+ }, {
605
+ "default": function _default() {
606
+ return (0, _vue.h)(VxeUIInputComponent, {
607
+ modelValue: widget.title,
608
+ placeholder: options.placeholder,
609
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
610
+ widget.title = val;
611
+ }
612
+ });
613
+ }
614
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
615
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
616
+ field: 'placeholder',
617
+ itemRender: {
618
+ name: 'VxeInput'
619
+ }
620
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
621
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
622
+ }, {
623
+ "default": function _default() {
624
+ return (0, _vue.h)(VxeUISwitchComponent, {
625
+ modelValue: widget.required,
626
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
627
+ widget.required = val;
628
+ }
629
+ });
630
+ }
631
+ })];
632
+ }
633
+ });
634
+ };
635
+ }
636
+ });
637
+ var WidgetAInputViewComponent = (0, _vue.defineComponent)({
638
+ props: {
639
+ renderOpts: {
640
+ type: Object,
641
+ "default": function _default() {
642
+ return {};
643
+ }
644
+ },
645
+ renderParams: {
646
+ type: Object,
647
+ "default": function _default() {
648
+ return {};
649
+ }
650
+ }
651
+ },
652
+ emits: [],
653
+ setup: function setup(props) {
654
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
655
+ var changeEvent = function changeEvent() {
656
+ var renderParams = props.renderParams;
657
+ var widget = renderParams.widget,
658
+ $formView = renderParams.$formView;
659
+ if ($formView) {
660
+ var itemValue = $formView ? $formView.getItemValue(widget) : null;
661
+ $formView.updateItemStatus(widget, itemValue);
662
+ }
663
+ };
664
+ return function () {
665
+ var renderParams = props.renderParams;
666
+ var widget = renderParams.widget,
667
+ $formView = renderParams.$formView;
668
+ return (0, _vue.h)(VxeUIFormItemComponent, {
669
+ "class": ['vxe-form-design--widget-render-form-item'],
670
+ field: widget.field,
671
+ title: widget.title
672
+ }, {
673
+ "default": function _default() {
674
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-input'), {
675
+ value: $formView ? $formView.getItemValue(widget) : null,
676
+ onChange: changeEvent,
677
+ 'onUpdate:value': function onUpdateValue(val) {
678
+ if ($formView) {
679
+ $formView.setItemValue(widget, val);
680
+ }
681
+ }
682
+ });
683
+ }
684
+ });
685
+ };
686
+ }
687
+ });
688
+ return {
689
+ getWidgetAInputConfig: getWidgetAInputConfig,
690
+ WidgetAInputFormComponent: WidgetAInputFormComponent,
691
+ WidgetAInputViewComponent: WidgetAInputViewComponent
692
+ };
693
+ }
694
+ }, {
695
+ "vue": "vue"
696
+ }],
697
+ 5: [function (require, module, exports) {
698
+ "use strict";
699
+
700
+ Object.defineProperty(exports, "__esModule", {
701
+ value: true
702
+ });
703
+ exports.createWidgetAInputNumber = createWidgetAInputNumber;
704
+ var _vue = require("vue");
705
+ function createWidgetAInputNumber(VxeUI) {
706
+ var getWidgetAInputNumberConfig = function getWidgetAInputNumberConfig(params) {
707
+ return {
708
+ title: '数字',
709
+ icon: 'vxe-icon-number',
710
+ options: {
711
+ placeholder: '请输入'
712
+ }
713
+ };
714
+ };
715
+ var WidgetAInputNumberFormComponent = (0, _vue.defineComponent)({
716
+ props: {
717
+ renderOpts: {
718
+ type: Object,
719
+ "default": function _default() {
720
+ return {};
721
+ }
722
+ },
723
+ renderParams: {
724
+ type: Object,
725
+ "default": function _default() {
726
+ return {};
727
+ }
728
+ }
729
+ },
730
+ emits: [],
731
+ setup: function setup(props) {
732
+ var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
733
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
734
+ var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
735
+ var VxeUIInputComponent = VxeUI.getComponent('VxeInput');
736
+ return function () {
737
+ var renderParams = props.renderParams;
738
+ var widget = renderParams.widget;
739
+ return (0, _vue.h)(VxeUIFormComponent, {
740
+ "class": 'vxe-form-design--widget-render-form-wrapper',
741
+ vertical: true,
742
+ span: 24,
743
+ titleBold: true,
744
+ titleOverflow: true,
745
+ data: widget.options
746
+ }, {
747
+ "default": function _default() {
748
+ return [(0, _vue.h)(VxeUIFormItemComponent, {
749
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
750
+ }, {
751
+ "default": function _default() {
752
+ return (0, _vue.h)(VxeUIInputComponent, {
753
+ modelValue: widget.title,
754
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
755
+ widget.title = val;
756
+ }
757
+ });
758
+ }
759
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
760
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
761
+ field: 'placeholder',
762
+ itemRender: {
763
+ name: 'ElInput'
764
+ }
765
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
766
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
767
+ }, {
768
+ "default": function _default() {
769
+ return (0, _vue.h)(VxeUISwitchComponent, {
770
+ modelValue: widget.required,
771
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
772
+ widget.required = val;
773
+ }
774
+ });
775
+ }
776
+ })];
777
+ }
778
+ });
779
+ };
780
+ }
781
+ });
782
+ var WidgetAInputNumberViewComponent = (0, _vue.defineComponent)({
783
+ props: {
784
+ renderOpts: {
785
+ type: Object,
786
+ "default": function _default() {
787
+ return {};
788
+ }
789
+ },
790
+ renderParams: {
791
+ type: Object,
792
+ "default": function _default() {
793
+ return {};
794
+ }
795
+ }
796
+ },
797
+ emits: [],
798
+ setup: function setup(props) {
799
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
800
+ var changeEvent = function changeEvent() {
801
+ var renderParams = props.renderParams;
802
+ var widget = renderParams.widget,
803
+ $formView = renderParams.$formView;
804
+ if ($formView) {
805
+ var itemValue = $formView ? $formView.getItemValue(widget) : null;
806
+ $formView.updateItemStatus(widget, itemValue);
807
+ }
808
+ };
809
+ return function () {
810
+ var renderParams = props.renderParams;
811
+ var widget = renderParams.widget,
812
+ $formView = renderParams.$formView;
813
+ var options = widget.options;
814
+ return (0, _vue.h)(VxeUIFormItemComponent, {
815
+ "class": ['vxe-form-design--widget-render-form-item'],
816
+ field: widget.field,
817
+ title: widget.title
818
+ }, {
819
+ "default": function _default() {
820
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-input-number'), {
821
+ value: $formView ? $formView.getItemValue(widget) : null,
822
+ placeholder: options.placeholder,
823
+ onChange: changeEvent,
824
+ 'onUpdate:value': function onUpdateValue(val) {
825
+ if ($formView) {
826
+ $formView.setItemValue(widget, val);
827
+ }
828
+ }
829
+ });
830
+ }
831
+ });
832
+ };
833
+ }
834
+ });
835
+ return {
836
+ getWidgetAInputNumberConfig: getWidgetAInputNumberConfig,
837
+ WidgetAInputNumberFormComponent: WidgetAInputNumberFormComponent,
838
+ WidgetAInputNumberViewComponent: WidgetAInputNumberViewComponent
839
+ };
840
+ }
841
+ }, {
842
+ "vue": "vue"
843
+ }],
844
+ 6: [function (require, module, exports) {
845
+ "use strict";
846
+
847
+ Object.defineProperty(exports, "__esModule", {
848
+ value: true
849
+ });
850
+ exports.createWidgetARadio = createWidgetARadio;
851
+ var _vue = require("vue");
852
+ var _use = require("./use");
853
+ var _xeUtils = _interopRequireDefault(require("xe-utils"));
854
+ function _interopRequireDefault(e) {
855
+ return e && e.__esModule ? e : {
856
+ "default": e
857
+ };
858
+ }
859
+ function createWidgetARadio(VxeUI) {
860
+ var getWidgetARadioConfig = function getWidgetARadioConfig(params) {
861
+ return {
862
+ title: '单选框',
863
+ icon: 'vxe-icon-radio-checked',
864
+ options: {
865
+ options: _xeUtils["default"].range(0, 3).map(function (v, i) {
866
+ return {
867
+ value: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.defValue', [i + 1])
868
+ };
869
+ })
870
+ }
871
+ };
872
+ };
873
+ var WidgetARadioFormComponent = (0, _vue.defineComponent)({
874
+ props: {
875
+ renderOpts: {
876
+ type: Object,
877
+ "default": function _default() {
878
+ return {};
879
+ }
880
+ },
881
+ renderParams: {
882
+ type: Object,
883
+ "default": function _default() {
884
+ return {};
885
+ }
886
+ }
887
+ },
888
+ emits: [],
889
+ setup: function setup(props) {
890
+ var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
891
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
892
+ var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
893
+ var VxeUIInputComponent = VxeUI.getComponent('VxeInput');
894
+ var _useWidgetPropDataSou = (0, _use.useWidgetPropDataSource)(VxeUI, props, false),
895
+ renderDataSourceFormItem = _useWidgetPropDataSou.renderDataSourceFormItem;
896
+ return function () {
897
+ var renderParams = props.renderParams;
898
+ var widget = renderParams.widget;
899
+ return (0, _vue.h)(VxeUIFormComponent, {
900
+ "class": 'vxe-form-design--widget-render-form-wrapper',
901
+ vertical: true,
902
+ span: 24,
903
+ titleBold: true,
904
+ titleOverflow: true,
905
+ data: widget.options
906
+ }, {
907
+ "default": function _default() {
908
+ return [(0, _vue.h)(VxeUIFormItemComponent, {
909
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
910
+ }, {
911
+ "default": function _default() {
912
+ return (0, _vue.h)(VxeUIInputComponent, {
913
+ modelValue: widget.title,
914
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
915
+ widget.title = val;
916
+ }
917
+ });
918
+ }
919
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
920
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
921
+ field: 'placeholder',
922
+ itemRender: {
923
+ name: 'ElInput'
924
+ }
925
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
926
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
927
+ }, {
928
+ "default": function _default() {
929
+ return (0, _vue.h)(VxeUISwitchComponent, {
930
+ modelValue: widget.required,
931
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
932
+ widget.required = val;
933
+ }
934
+ });
935
+ }
936
+ }), renderDataSourceFormItem()];
937
+ }
938
+ });
939
+ };
940
+ }
941
+ });
942
+ var WidgetARadioViewComponent = (0, _vue.defineComponent)({
943
+ props: {
944
+ renderOpts: {
945
+ type: Object,
946
+ "default": function _default() {
947
+ return {};
948
+ }
949
+ },
950
+ renderParams: {
951
+ type: Object,
952
+ "default": function _default() {
953
+ return {};
954
+ }
955
+ }
956
+ },
957
+ emits: [],
958
+ setup: function setup(props) {
959
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
960
+ var radioOptions = (0, _vue.computed)(function () {
961
+ var renderParams = props.renderParams;
962
+ var widget = renderParams.widget;
963
+ var options = widget.options;
964
+ return options.options.map(function (item) {
965
+ return {
966
+ label: item.value,
967
+ value: item.value
968
+ };
969
+ });
970
+ });
971
+ var changeEvent = function changeEvent() {
972
+ var renderParams = props.renderParams;
973
+ var widget = renderParams.widget,
974
+ $formView = renderParams.$formView;
975
+ if ($formView) {
976
+ var itemValue = $formView ? $formView.getItemValue(widget) : null;
977
+ $formView.updateItemStatus(widget, itemValue);
978
+ }
979
+ };
980
+ return function () {
981
+ var renderParams = props.renderParams;
982
+ var widget = renderParams.widget,
983
+ $formView = renderParams.$formView;
984
+ return (0, _vue.h)(VxeUIFormItemComponent, {
985
+ "class": ['vxe-form-design--widget-render-form-item'],
986
+ field: widget.field,
987
+ title: widget.title
988
+ }, {
989
+ "default": function _default() {
990
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-radio-group'), {
991
+ value: $formView ? $formView.getItemValue(widget) : null,
992
+ options: radioOptions.value,
993
+ onChange: changeEvent,
994
+ 'onUpdate:value': function onUpdateValue(val) {
995
+ if ($formView) {
996
+ $formView.setItemValue(widget, val);
997
+ }
998
+ }
999
+ });
1000
+ }
1001
+ });
1002
+ };
1003
+ }
1004
+ });
1005
+ return {
1006
+ getWidgetARadioConfig: getWidgetARadioConfig,
1007
+ WidgetARadioFormComponent: WidgetARadioFormComponent,
1008
+ WidgetARadioViewComponent: WidgetARadioViewComponent
1009
+ };
1010
+ }
1011
+ }, {
1012
+ "./use": 10,
1013
+ "vue": "vue",
1014
+ "xe-utils": "xe-utils"
1015
+ }],
1016
+ 7: [function (require, module, exports) {
1017
+ "use strict";
1018
+
1019
+ Object.defineProperty(exports, "__esModule", {
1020
+ value: true
1021
+ });
1022
+ exports.createWidgetASelect = createWidgetASelect;
1023
+ var _vue = require("vue");
1024
+ var _use = require("./use");
1025
+ var _xeUtils = _interopRequireDefault(require("xe-utils"));
1026
+ function _interopRequireDefault(e) {
1027
+ return e && e.__esModule ? e : {
1028
+ "default": e
1029
+ };
1030
+ }
1031
+ function createWidgetASelect(VxeUI) {
1032
+ var getWidgetASelectConfig = function getWidgetASelectConfig(params) {
1033
+ return {
1034
+ title: '下拉框',
1035
+ icon: 'vxe-icon-select',
1036
+ options: {
1037
+ placeholder: '请选择',
1038
+ options: _xeUtils["default"].range(0, 3).map(function (v, i) {
1039
+ return {
1040
+ value: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.defValue', [i + 1])
1041
+ };
1042
+ })
1043
+ }
1044
+ };
1045
+ };
1046
+ var WidgetASelectFormComponent = (0, _vue.defineComponent)({
1047
+ props: {
1048
+ renderOpts: {
1049
+ type: Object,
1050
+ "default": function _default() {
1051
+ return {};
1052
+ }
1053
+ },
1054
+ renderParams: {
1055
+ type: Object,
1056
+ "default": function _default() {
1057
+ return {};
1058
+ }
1059
+ }
1060
+ },
1061
+ emits: [],
1062
+ setup: function setup(props) {
1063
+ var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
1064
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
1065
+ var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
1066
+ var VxeUIInputComponent = VxeUI.getComponent('VxeInput');
1067
+ var _useWidgetPropDataSou = (0, _use.useWidgetPropDataSource)(VxeUI, props, false),
1068
+ renderDataSourceFormItem = _useWidgetPropDataSou.renderDataSourceFormItem;
1069
+ return function () {
1070
+ var renderParams = props.renderParams;
1071
+ var widget = renderParams.widget;
1072
+ return (0, _vue.h)(VxeUIFormComponent, {
1073
+ "class": 'vxe-form-design--widget-render-form-wrapper',
1074
+ vertical: true,
1075
+ span: 24,
1076
+ titleBold: true,
1077
+ titleOverflow: true,
1078
+ data: widget.options
1079
+ }, {
1080
+ "default": function _default() {
1081
+ return [(0, _vue.h)(VxeUIFormItemComponent, {
1082
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
1083
+ }, {
1084
+ "default": function _default() {
1085
+ return (0, _vue.h)(VxeUIInputComponent, {
1086
+ modelValue: widget.title,
1087
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
1088
+ widget.title = val;
1089
+ }
1090
+ });
1091
+ }
1092
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
1093
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
1094
+ field: 'placeholder',
1095
+ itemRender: {
1096
+ name: 'ElInput'
1097
+ }
1098
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
1099
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
1100
+ }, {
1101
+ "default": function _default() {
1102
+ return (0, _vue.h)(VxeUISwitchComponent, {
1103
+ modelValue: widget.required,
1104
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
1105
+ widget.required = val;
1106
+ }
1107
+ });
1108
+ }
1109
+ }), renderDataSourceFormItem()];
1110
+ }
1111
+ });
1112
+ };
1113
+ }
1114
+ });
1115
+ var WidgetASelectViewComponent = (0, _vue.defineComponent)({
1116
+ props: {
1117
+ renderOpts: {
1118
+ type: Object,
1119
+ "default": function _default() {
1120
+ return {};
1121
+ }
1122
+ },
1123
+ renderParams: {
1124
+ type: Object,
1125
+ "default": function _default() {
1126
+ return {};
1127
+ }
1128
+ }
1129
+ },
1130
+ emits: [],
1131
+ setup: function setup(props) {
1132
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
1133
+ var changeEvent = function changeEvent() {
1134
+ var renderParams = props.renderParams;
1135
+ var widget = renderParams.widget,
1136
+ $formView = renderParams.$formView;
1137
+ if ($formView) {
1138
+ var itemValue = $formView ? $formView.getItemValue(widget) : null;
1139
+ $formView.updateItemStatus(widget, itemValue);
1140
+ }
1141
+ };
1142
+ return function () {
1143
+ var renderParams = props.renderParams;
1144
+ var widget = renderParams.widget,
1145
+ $formView = renderParams.$formView;
1146
+ var options = widget.options;
1147
+ return (0, _vue.h)(VxeUIFormItemComponent, {
1148
+ "class": ['vxe-form-design--widget-render-form-item'],
1149
+ field: widget.field,
1150
+ title: widget.title
1151
+ }, {
1152
+ "default": function _default() {
1153
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-select'), {
1154
+ value: $formView ? $formView.getItemValue(widget) : null,
1155
+ options: options.options,
1156
+ placeholder: options.placeholder,
1157
+ onChange: changeEvent,
1158
+ 'onUpdate:value': function onUpdateValue(val) {
1159
+ if ($formView) {
1160
+ $formView.setItemValue(widget, val);
1161
+ }
1162
+ }
1163
+ });
1164
+ }
1165
+ });
1166
+ };
1167
+ }
1168
+ });
1169
+ return {
1170
+ getWidgetASelectConfig: getWidgetASelectConfig,
1171
+ WidgetASelectFormComponent: WidgetASelectFormComponent,
1172
+ WidgetASelectViewComponent: WidgetASelectViewComponent
1173
+ };
1174
+ }
1175
+ }, {
1176
+ "./use": 10,
1177
+ "vue": "vue",
1178
+ "xe-utils": "xe-utils"
1179
+ }],
1180
+ 8: [function (require, module, exports) {
1181
+ "use strict";
1182
+
1183
+ Object.defineProperty(exports, "__esModule", {
1184
+ value: true
1185
+ });
1186
+ exports.createWidgetASwitch = createWidgetASwitch;
1187
+ var _vue = require("vue");
1188
+ function createWidgetASwitch(VxeUI) {
1189
+ var getWidgetASwitchConfig = function getWidgetASwitchConfig(params) {
1190
+ return {
1191
+ title: '是/否',
1192
+ icon: 'vxe-icon-switch',
1193
+ options: {}
1194
+ };
1195
+ };
1196
+ var WidgetASwitchFormComponent = (0, _vue.defineComponent)({
1197
+ props: {
1198
+ renderOpts: {
1199
+ type: Object,
1200
+ "default": function _default() {
1201
+ return {};
1202
+ }
1203
+ },
1204
+ renderParams: {
1205
+ type: Object,
1206
+ "default": function _default() {
1207
+ return {};
1208
+ }
1209
+ }
1210
+ },
1211
+ emits: [],
1212
+ setup: function setup(props) {
1213
+ var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
1214
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
1215
+ var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
1216
+ var VxeUIInputComponent = VxeUI.getComponent('VxeInput');
1217
+ return function () {
1218
+ var renderParams = props.renderParams;
1219
+ var widget = renderParams.widget;
1220
+ return (0, _vue.h)(VxeUIFormComponent, {
1221
+ "class": 'vxe-form-design--widget-render-form-wrapper',
1222
+ vertical: true,
1223
+ span: 24,
1224
+ titleBold: true,
1225
+ titleOverflow: true,
1226
+ data: widget.options
1227
+ }, {
1228
+ "default": function _default() {
1229
+ return [(0, _vue.h)(VxeUIFormItemComponent, {
1230
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
1231
+ }, {
1232
+ "default": function _default() {
1233
+ return (0, _vue.h)(VxeUIInputComponent, {
1234
+ modelValue: widget.title,
1235
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
1236
+ widget.title = val;
1237
+ }
1238
+ });
1239
+ }
1240
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
1241
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
1242
+ field: 'placeholder',
1243
+ itemRender: {
1244
+ name: 'ElInput'
1245
+ }
1246
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
1247
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
1248
+ }, {
1249
+ "default": function _default() {
1250
+ return (0, _vue.h)(VxeUISwitchComponent, {
1251
+ modelValue: widget.required,
1252
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
1253
+ widget.required = val;
1254
+ }
1255
+ });
1256
+ }
1257
+ })];
1258
+ }
1259
+ });
1260
+ };
1261
+ }
1262
+ });
1263
+ var WidgetASwitchViewComponent = (0, _vue.defineComponent)({
1264
+ props: {
1265
+ renderOpts: {
1266
+ type: Object,
1267
+ "default": function _default() {
1268
+ return {};
1269
+ }
1270
+ },
1271
+ renderParams: {
1272
+ type: Object,
1273
+ "default": function _default() {
1274
+ return {};
1275
+ }
1276
+ }
1277
+ },
1278
+ emits: [],
1279
+ setup: function setup(props) {
1280
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
1281
+ var changeEvent = function changeEvent() {
1282
+ var renderParams = props.renderParams;
1283
+ var widget = renderParams.widget,
1284
+ $formView = renderParams.$formView;
1285
+ if ($formView) {
1286
+ var itemValue = $formView ? $formView.getItemValue(widget) : null;
1287
+ $formView.updateItemStatus(widget, itemValue);
1288
+ }
1289
+ };
1290
+ return function () {
1291
+ var renderParams = props.renderParams;
1292
+ var widget = renderParams.widget,
1293
+ $formView = renderParams.$formView;
1294
+ return (0, _vue.h)(VxeUIFormItemComponent, {
1295
+ "class": ['vxe-form-design--widget-render-form-item'],
1296
+ field: widget.field,
1297
+ title: widget.title
1298
+ }, {
1299
+ "default": function _default() {
1300
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-switch'), {
1301
+ checked: $formView ? $formView.getItemValue(widget) : null,
1302
+ onChange: changeEvent,
1303
+ 'onUpdate:checked': function onUpdateChecked(val) {
1304
+ if ($formView) {
1305
+ $formView.setItemValue(widget, val);
1306
+ }
1307
+ }
1308
+ });
1309
+ }
1310
+ });
1311
+ };
1312
+ }
1313
+ });
1314
+ return {
1315
+ getWidgetASwitchConfig: getWidgetASwitchConfig,
1316
+ WidgetASwitchFormComponent: WidgetASwitchFormComponent,
1317
+ WidgetASwitchViewComponent: WidgetASwitchViewComponent
1318
+ };
1319
+ }
1320
+ }, {
1321
+ "vue": "vue"
1322
+ }],
1323
+ 9: [function (require, module, exports) {
1324
+ "use strict";
1325
+
1326
+ Object.defineProperty(exports, "__esModule", {
1327
+ value: true
1328
+ });
1329
+ exports.createWidgetATextarea = createWidgetATextarea;
1330
+ var _vue = require("vue");
1331
+ function createWidgetATextarea(VxeUI) {
1332
+ var getWidgetATextareaConfig = function getWidgetATextareaConfig(params) {
1333
+ return {
1334
+ title: '文本域',
1335
+ icon: 'vxe-icon-textarea',
1336
+ options: {
1337
+ placeholder: '请输入'
1338
+ }
1339
+ };
1340
+ };
1341
+ var WidgetATextareaFormComponent = (0, _vue.defineComponent)({
1342
+ props: {
1343
+ renderOpts: {
1344
+ type: Object,
1345
+ "default": function _default() {
1346
+ return {};
1347
+ }
1348
+ },
1349
+ renderParams: {
1350
+ type: Object,
1351
+ "default": function _default() {
1352
+ return {};
1353
+ }
1354
+ }
1355
+ },
1356
+ emits: [],
1357
+ setup: function setup(props) {
1358
+ var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
1359
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
1360
+ var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
1361
+ var VxeUIInputComponent = VxeUI.getComponent('VxeInput');
1362
+ return function () {
1363
+ var renderParams = props.renderParams;
1364
+ var widget = renderParams.widget;
1365
+ return (0, _vue.h)(VxeUIFormComponent, {
1366
+ "class": 'vxe-form-design--widget-render-form-wrapper',
1367
+ vertical: true,
1368
+ span: 24,
1369
+ titleBold: true,
1370
+ titleOverflow: true,
1371
+ data: widget.options
1372
+ }, {
1373
+ "default": function _default() {
1374
+ return [(0, _vue.h)(VxeUIFormItemComponent, {
1375
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
1376
+ }, {
1377
+ "default": function _default() {
1378
+ return (0, _vue.h)(VxeUIInputComponent, {
1379
+ modelValue: widget.title,
1380
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
1381
+ widget.title = val;
1382
+ }
1383
+ });
1384
+ }
1385
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
1386
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
1387
+ field: 'placeholder',
1388
+ itemRender: {
1389
+ name: 'ElInput'
1390
+ }
1391
+ }), (0, _vue.h)(VxeUIFormItemComponent, {
1392
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
1393
+ }, {
1394
+ "default": function _default() {
1395
+ return (0, _vue.h)(VxeUISwitchComponent, {
1396
+ modelValue: widget.required,
1397
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
1398
+ widget.required = val;
1399
+ }
1400
+ });
1401
+ }
1402
+ })];
1403
+ }
1404
+ });
1405
+ };
1406
+ }
1407
+ });
1408
+ var WidgetATextareaViewComponent = (0, _vue.defineComponent)({
1409
+ props: {
1410
+ renderOpts: {
1411
+ type: Object,
1412
+ "default": function _default() {
1413
+ return {};
1414
+ }
1415
+ },
1416
+ renderParams: {
1417
+ type: Object,
1418
+ "default": function _default() {
1419
+ return {};
1420
+ }
1421
+ }
1422
+ },
1423
+ emits: [],
1424
+ setup: function setup(props) {
1425
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
1426
+ var changeEvent = function changeEvent() {
1427
+ var renderParams = props.renderParams;
1428
+ var widget = renderParams.widget,
1429
+ $formView = renderParams.$formView;
1430
+ if ($formView) {
1431
+ var itemValue = $formView ? $formView.getItemValue(widget) : null;
1432
+ $formView.updateItemStatus(widget, itemValue);
1433
+ }
1434
+ };
1435
+ return function () {
1436
+ var renderParams = props.renderParams;
1437
+ var widget = renderParams.widget,
1438
+ $formView = renderParams.$formView;
1439
+ var options = widget.options;
1440
+ return (0, _vue.h)(VxeUIFormItemComponent, {
1441
+ "class": ['vxe-form-design--widget-render-form-item'],
1442
+ field: widget.field,
1443
+ title: widget.title
1444
+ }, {
1445
+ "default": function _default() {
1446
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-textarea'), {
1447
+ value: $formView ? $formView.getItemValue(widget) : null,
1448
+ placeholder: options.placeholder,
1449
+ autoSize: {
1450
+ minRows: 2,
1451
+ maxRows: 4
1452
+ },
1453
+ onChange: changeEvent,
1454
+ 'onUpdate:value': function onUpdateValue(val) {
1455
+ if ($formView) {
1456
+ $formView.setItemValue(widget, val);
1457
+ }
1458
+ }
1459
+ });
1460
+ }
1461
+ });
1462
+ };
1463
+ }
1464
+ });
1465
+ return {
1466
+ getWidgetATextareaConfig: getWidgetATextareaConfig,
1467
+ WidgetATextareaFormComponent: WidgetATextareaFormComponent,
1468
+ WidgetATextareaViewComponent: WidgetATextareaViewComponent
1469
+ };
1470
+ }
1471
+ }, {
1472
+ "vue": "vue"
1473
+ }],
1474
+ 10: [function (require, module, exports) {
1475
+ "use strict";
1476
+
1477
+ Object.defineProperty(exports, "__esModule", {
1478
+ value: true
1479
+ });
1480
+ exports.useWidgetPropDataSource = useWidgetPropDataSource;
1481
+ var _vue = require("vue");
1482
+ function _toConsumableArray(r) {
1483
+ return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread();
1484
+ }
1485
+ function _nonIterableSpread() {
1486
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1487
+ }
1488
+ function _unsupportedIterableToArray(r, a) {
1489
+ if (r) {
1490
+ if ("string" == typeof r) return _arrayLikeToArray(r, a);
1491
+ var t = {}.toString.call(r).slice(8, -1);
1492
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
1493
+ }
1494
+ }
1495
+ function _iterableToArray(r) {
1496
+ if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
1497
+ }
1498
+ function _arrayWithoutHoles(r) {
1499
+ if (Array.isArray(r)) return _arrayLikeToArray(r);
1500
+ }
1501
+ function _arrayLikeToArray(r, a) {
1502
+ (null == a || a > r.length) && (a = r.length);
1503
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
1504
+ return n;
1505
+ }
1506
+ function useWidgetPropDataSource(VxeUI, props, isSubOption) {
1507
+ var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
1508
+ var VxeUIButtonComponent = VxeUI.getComponent('VxeButton');
1509
+ var VxeUITextareaComponent = VxeUI.getComponent('VxeTextarea');
1510
+ var VxeUITipComponent = VxeUI.getComponent('VxeTip');
1511
+ var optionsContent = (0, _vue.ref)('');
1512
+ var expandIndexList = (0, _vue.ref)([]);
1513
+ var addOptionEvent = function addOptionEvent() {
1514
+ var renderParams = props.renderParams;
1515
+ var widget = renderParams.widget;
1516
+ var options = widget.options.options || [];
1517
+ options.push({
1518
+ value: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.defValue', [options.length + 1])
1519
+ });
1520
+ widget.options.options = _toConsumableArray(options);
1521
+ };
1522
+ var subRE = /^(\s|\t)+/;
1523
+ var hasSubOption = function hasSubOption(str) {
1524
+ return subRE.test(str);
1525
+ };
1526
+ var expandAllOption = function expandAllOption() {
1527
+ var renderParams = props.renderParams;
1528
+ var widget = renderParams.widget;
1529
+ var options = widget.options.options || [];
1530
+ var indexList = [];
1531
+ options.forEach(function (group, gIndex) {
1532
+ var options = group.options;
1533
+ if (options && options.length) {
1534
+ indexList.push(gIndex);
1535
+ }
1536
+ });
1537
+ expandIndexList.value = indexList;
1538
+ };
1539
+ var toggleExpandOption = function toggleExpandOption(item, gIndex) {
1540
+ if (expandIndexList.value.includes(gIndex)) {
1541
+ expandIndexList.value = expandIndexList.value.filter(function (num) {
1542
+ return num !== gIndex;
1543
+ });
1544
+ } else {
1545
+ expandIndexList.value.push(gIndex);
1546
+ }
1547
+ };
1548
+ var confirmBatchAddOptionEvent = function confirmBatchAddOptionEvent() {
1549
+ var renderParams = props.renderParams;
1550
+ var widget = renderParams.widget;
1551
+ var optList = [];
1552
+ var rowList = optionsContent.value.split('\n');
1553
+ var prevGroup = null;
1554
+ if (isSubOption) {
1555
+ rowList.forEach(function (str, index) {
1556
+ var nextStr = rowList[index + 1];
1557
+ var value = str.trim();
1558
+ if (!value) {
1559
+ return;
1560
+ }
1561
+ var item = {
1562
+ value: value
1563
+ };
1564
+ if (prevGroup) {
1565
+ if (hasSubOption(str)) {
1566
+ prevGroup.options.push(item);
1567
+ return;
1568
+ }
1569
+ prevGroup = null;
1570
+ optList.push(item);
1571
+ } else {
1572
+ optList.push(item);
1573
+ }
1574
+ if (nextStr) {
1575
+ if (hasSubOption(nextStr)) {
1576
+ prevGroup = Object.assign(item, {
1577
+ options: []
1578
+ });
1579
+ }
1580
+ }
1581
+ });
1582
+ } else {
1583
+ rowList.forEach(function (str) {
1584
+ optList.push({
1585
+ value: str.trim()
1586
+ });
1587
+ });
1588
+ }
1589
+ widget.options.options = optList;
1590
+ expandAllOption();
1591
+ };
1592
+ var openPopupEditEvent = function openPopupEditEvent() {
1593
+ var _widget$options$optio;
1594
+ var renderParams = props.renderParams;
1595
+ var widget = renderParams.widget;
1596
+ var contList = [];
1597
+ (_widget$options$optio = widget.options.options) === null || _widget$options$optio === void 0 || _widget$options$optio.forEach(function (group) {
1598
+ var _group$options;
1599
+ contList.push(group.value);
1600
+ (_group$options = group.options) === null || _group$options === void 0 || _group$options.forEach(function (item) {
1601
+ contList.push("\t".concat(item.value));
1602
+ });
1603
+ });
1604
+ optionsContent.value = contList.join('\n');
1605
+ VxeUI.modal.open({
1606
+ title: "".concat(widget.title, " - ").concat(VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.batchEditOption')),
1607
+ width: 500,
1608
+ height: '50vh ',
1609
+ resize: true,
1610
+ showFooter: true,
1611
+ showCancelButton: true,
1612
+ showConfirmButton: true,
1613
+ confirmButtonText: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.buildOption'),
1614
+ onConfirm: confirmBatchAddOptionEvent,
1615
+ slots: {
1616
+ "default": function _default() {
1617
+ return (0, _vue.h)('div', {
1618
+ "class": 'vxe-form-design--widget-form-item-data-source-popup'
1619
+ }, [(0, _vue.h)(VxeUITipComponent, {
1620
+ status: 'primary',
1621
+ title: '',
1622
+ content: VxeUI.getI18n("vxe.formDesign.widgetProp.dataSource.".concat(isSubOption ? 'batchEditSubTip' : 'batchEditTip'))
1623
+ }), (0, _vue.h)(VxeUITextareaComponent, {
1624
+ resize: 'none',
1625
+ modelValue: optionsContent.value,
1626
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
1627
+ optionsContent.value = val;
1628
+ }
1629
+ })]);
1630
+ }
1631
+ }
187
1632
  });
188
- if (selectItem) {
189
- break;
1633
+ };
1634
+ var renderOption = function renderOption(item, hasFirstLevel, isExpand, gIndex, hasSub, isFirst, isLast) {
1635
+ return (0, _vue.h)('div', {
1636
+ "class": ['vxe-form-design--widget-form-item-data-source-option', {
1637
+ 'is--first': isFirst,
1638
+ 'is--last': isLast
1639
+ }]
1640
+ }, [(0, _vue.h)('div', {
1641
+ "class": 'vxe-form-design--widget-expand-btn'
1642
+ }, hasFirstLevel && hasSub ? [(0, _vue.h)('i', {
1643
+ "class": isExpand ? VxeUI.getIcon().FORM_DESIGN_WIDGET_OPTION_EXPAND_CLOSE : VxeUI.getIcon().FORM_DESIGN_WIDGET_OPTION_EXPAND_OPEN,
1644
+ onClick: function onClick() {
1645
+ toggleExpandOption(item, gIndex);
1646
+ }
1647
+ })] : []), (0, _vue.h)('input', {
1648
+ "class": 'vxe-default-input',
1649
+ value: item.value,
1650
+ onInput: function onInput(evnt) {
1651
+ item.value = evnt.target.value;
1652
+ }
1653
+ }), (0, _vue.h)(VxeUIButtonComponent, {
1654
+ status: 'danger',
1655
+ mode: 'text',
1656
+ icon: VxeUI.getIcon().FORM_DESIGN_WIDGET_DELETE
1657
+ })]);
1658
+ };
1659
+ var renderOptions = function renderOptions() {
1660
+ var renderParams = props.renderParams;
1661
+ var widget = renderParams.widget;
1662
+ var options = widget.options;
1663
+ var groups = options.options;
1664
+ var optVNs = [];
1665
+ if (groups) {
1666
+ groups.forEach(function (group, gIndex) {
1667
+ var options = group.options;
1668
+ var isExpand = expandIndexList.value.includes(gIndex);
1669
+ if (options && options.length) {
1670
+ optVNs.push(renderOption(group, true, isExpand, gIndex, true, gIndex === 0, gIndex === groups.length - 1));
1671
+ if (isExpand) {
1672
+ optVNs.push((0, _vue.h)('div', {
1673
+ "class": 'vxe-form-design--widget-form-item-data-source-sub-option'
1674
+ }, options.map(function (item) {
1675
+ return renderOption(item, false, isExpand, 0, false, false, false);
1676
+ })));
1677
+ }
1678
+ } else {
1679
+ optVNs.push(renderOption(group, true, isExpand, gIndex, false, gIndex === 0, gIndex === groups.length - 1));
1680
+ }
1681
+ });
190
1682
  }
191
- }
192
- return selectItem ? selectItem[labelProp] : value;
193
- } : function (value) {
194
- var selectItem = _xeUtils["default"].find(options, function (item) {
195
- return item[valueProp] === value;
1683
+ return optVNs;
1684
+ };
1685
+ (0, _vue.watch)(function () {
1686
+ return props.renderParams.widget;
1687
+ }, function () {
1688
+ expandAllOption();
196
1689
  });
197
- return selectItem ? selectItem[labelProp] : value;
198
- }).join(', ');
199
- }
200
- return '';
201
- }
202
- function getCascaderCellValue(renderOpts, params) {
203
- var _renderOpts$props2 = renderOpts.props,
204
- props = _renderOpts$props2 === void 0 ? {} : _renderOpts$props2;
205
- var row = params.row,
206
- column = params.column;
207
- var cellValue = _xeUtils["default"].get(row, column.field);
208
- var values = cellValue || [];
209
- var labels = [];
210
- matchCascaderData(0, props.options, values, labels);
211
- return (props.showAllLevels === false ? labels.slice(labels.length - 1, labels.length) : labels).join(" ".concat(props.separator || '/', " "));
212
- }
213
- function getRangePickerCellValue(renderOpts, params) {
214
- var _renderOpts$props3 = renderOpts.props,
215
- props = _renderOpts$props3 === void 0 ? {} : _renderOpts$props3;
216
- var row = params.row,
217
- column = params.column;
218
- var cellValue = _xeUtils["default"].get(row, column.field);
219
- if (cellValue) {
220
- cellValue = _xeUtils["default"].map(cellValue, function (date) {
221
- return date && date.format ? date.format(props.format || 'YYYY-MM-DD') : _xeUtils["default"].toDateString(date, dateFormatToVxeFormat(props.format || 'YYYY-MM-DD'));
222
- }).join(' ~ ');
223
- }
224
- return cellValue;
225
- }
226
- function getTreeSelectCellValue(renderOpts, params) {
227
- var _renderOpts$props4 = renderOpts.props,
228
- props = _renderOpts$props4 === void 0 ? {} : _renderOpts$props4;
229
- var treeData = props.treeData,
230
- treeCheckable = props.treeCheckable;
231
- var row = params.row,
232
- column = params.column;
233
- var cellValue = _xeUtils["default"].get(row, column.field);
234
- if (!isEmptyValue(cellValue)) {
235
- return _xeUtils["default"].map(treeCheckable ? cellValue : [cellValue], function (value) {
236
- var matchObj = _xeUtils["default"].findTree(treeData, function (item) {
237
- return item.value === value;
238
- }, {
239
- children: 'children'
1690
+ (0, _vue.onMounted)(function () {
1691
+ expandAllOption();
240
1692
  });
241
- return matchObj ? matchObj.item.title : value;
242
- }).join(', ');
243
- }
244
- return cellValue;
245
- }
246
- function getDatePickerCellValue(renderOpts, params, defaultFormat) {
247
- var _renderOpts$props5 = renderOpts.props,
248
- props = _renderOpts$props5 === void 0 ? {} : _renderOpts$props5;
249
- var row = params.row,
250
- column = params.column;
251
- var cellValue = _xeUtils["default"].get(row, column.field);
252
- try {
253
- if (cellValue) {
254
- cellValue = cellValue.format ? cellValue.format(props.format || defaultFormat) : _xeUtils["default"].toDateString(cellValue, dateFormatToVxeFormat(props.format || defaultFormat));
255
- }
256
- } catch (e) {}
257
- return cellValue;
258
- }
259
- function createEditRender(defaultProps) {
260
- return function (renderOpts, params) {
261
- var row = params.row,
262
- column = params.column;
263
- var name = renderOpts.name,
264
- attrs = renderOpts.attrs;
265
- var cellValue = _xeUtils["default"].get(row, column.field);
266
- return [(0, _vue.h)((0, _vue.resolveComponent)(name), _objectSpread(_objectSpread(_objectSpread({}, attrs), getCellEditFilterProps(renderOpts, params, cellValue, defaultProps)), getEditOns(renderOpts, params)))];
267
- };
268
- }
269
- function defaultButtonEditRender(renderOpts, params) {
270
- var attrs = renderOpts.attrs;
271
- return [(0, _vue.h)((0, _vue.resolveComponent)('a-button'), _objectSpread(_objectSpread(_objectSpread({}, attrs), getCellEditFilterProps(renderOpts, params, null)), getOns(renderOpts, params)), cellText(renderOpts.content))];
272
- }
273
- function defaultButtonsEditRender(renderOpts, params) {
274
- var children = renderOpts.children;
275
- if (children) {
276
- return children.map(function (childRenderOpts) {
277
- return defaultButtonEditRender(childRenderOpts, params)[0];
278
- });
279
- }
280
- return [];
281
- }
282
- function createFilterRender(defaultProps) {
283
- return function (renderOpts, params) {
284
- var column = params.column;
285
- var name = renderOpts.name,
286
- attrs = renderOpts.attrs;
287
- return [(0, _vue.h)('div', {
288
- "class": 'vxe-table--filter-antd-wrapper'
289
- }, column.filters.map(function (option, oIndex) {
290
- var optionValue = option.data;
291
- return (0, _vue.h)((0, _vue.resolveComponent)(name), _objectSpread(_objectSpread(_objectSpread({
292
- key: oIndex
293
- }, attrs), getCellEditFilterProps(renderOpts, params, optionValue, defaultProps)), getFilterOns(renderOpts, params, option, function () {
294
- // 处理 change 事件相关逻辑
295
- handleConfirmFilter(params, !!option.data, option);
296
- })));
297
- }))];
298
- };
299
- }
300
- function handleConfirmFilter(params, checked, option) {
301
- var $panel = params.$panel;
302
- $panel.changeOption(null, checked, option);
303
- }
304
- /**
305
- * 模糊匹配
306
- * @param params
307
- */
308
- function defaultFuzzyFilterMethod(params) {
309
- var option = params.option,
310
- row = params.row,
311
- column = params.column;
312
- var data = option.data;
313
- var cellValue = _xeUtils["default"].get(row, column.field);
314
- return _xeUtils["default"].toValueString(cellValue).indexOf(data) > -1;
315
- }
316
- /**
317
- * 精确匹配
318
- * @param params
319
- */
320
- function defaultExactFilterMethod(params) {
321
- var option = params.option,
322
- row = params.row,
323
- column = params.column;
324
- var data = option.data;
325
- var cellValue = _xeUtils["default"].get(row, column.field);
326
- /* eslint-disable eqeqeq */
327
- return cellValue === data;
328
- }
329
- function cellText(cellValue) {
330
- return [formatText(cellValue)];
331
- }
332
- function createFormItemRender(defaultProps) {
333
- return function (renderOpts, params) {
334
- var data = params.data,
335
- field = params.field;
336
- var name = renderOpts.name;
337
- var attrs = renderOpts.attrs;
338
- var itemValue = _xeUtils["default"].get(data, field);
339
- return [(0, _vue.h)((0, _vue.resolveComponent)(name), _objectSpread(_objectSpread(_objectSpread({}, attrs), getItemProps(renderOpts, params, itemValue, defaultProps)), getItemOns(renderOpts, params)))];
340
- };
341
- }
342
- function defaultButtonItemRender(renderOpts, params) {
343
- var attrs = renderOpts.attrs;
344
- var props = getItemProps(renderOpts, params, null);
345
- return [(0, _vue.h)((0, _vue.resolveComponent)('a-button'), _objectSpread(_objectSpread(_objectSpread({}, attrs), props), getItemOns(renderOpts, params)), {
346
- "default": function _default() {
347
- return cellText(renderOpts.content || props.content);
348
- }
349
- })];
350
- }
351
- function defaultButtonsItemRender(renderOpts, params) {
352
- var children = renderOpts.children;
353
- if (children) {
354
- return children.map(function (childRenderOpts) {
355
- return defaultButtonItemRender(childRenderOpts, params)[0];
356
- });
357
- }
358
- return [];
359
- }
360
- function createDatePickerExportMethod(defaultFormat) {
361
- return function (params) {
362
- var row = params.row,
363
- column = params.column,
364
- options = params.options;
365
- return options && options.original ? _xeUtils["default"].get(row, column.field) : getDatePickerCellValue(column.editRender || column.cellRender, params, defaultFormat);
366
- };
367
- }
368
- function createExportMethod(getExportCellValue) {
369
- return function (params) {
370
- var row = params.row,
371
- column = params.column,
372
- options = params.options;
373
- return options && options.original ? _xeUtils["default"].get(row, column.field) : getExportCellValue(column.editRender || column.cellRender, params);
374
- };
375
- }
376
- function createFormItemRadioAndCheckboxRender() {
377
- return function (renderOpts, params) {
378
- var name = renderOpts.name,
379
- _renderOpts$options2 = renderOpts.options,
380
- options = _renderOpts$options2 === void 0 ? [] : _renderOpts$options2,
381
- _renderOpts$optionPro2 = renderOpts.optionProps,
382
- optionProps = _renderOpts$optionPro2 === void 0 ? {} : _renderOpts$optionPro2;
383
- var data = params.data,
384
- field = params.field;
385
- var attrs = renderOpts.attrs;
386
- var labelProp = optionProps.label || 'label';
387
- var valueProp = optionProps.value || 'value';
388
- var itemValue = _xeUtils["default"].get(data, field);
389
- return [(0, _vue.h)((0, _vue.resolveComponent)("".concat(name, "Group")), _objectSpread(_objectSpread(_objectSpread({}, attrs), getItemProps(renderOpts, params, itemValue)), getItemOns(renderOpts, params)), {
390
- "default": function _default() {
391
- return options.map(function (option, oIndex) {
392
- return (0, _vue.h)((0, _vue.resolveComponent)(name), {
393
- key: oIndex,
394
- value: option[valueProp],
395
- disabled: option.disabled
1693
+ return {
1694
+ renderDataSourceFormItem: function renderDataSourceFormItem() {
1695
+ return (0, _vue.h)(VxeUIFormItemComponent, {
1696
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.name'),
1697
+ field: 'options'
396
1698
  }, {
397
1699
  "default": function _default() {
398
- return cellText(option[labelProp]);
1700
+ return [(0, _vue.h)('div', {}, [(0, _vue.h)(VxeUIButtonComponent, {
1701
+ status: 'primary',
1702
+ mode: 'text',
1703
+ content: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.addOption'),
1704
+ onClick: addOptionEvent
1705
+ }), (0, _vue.h)(VxeUIButtonComponent, {
1706
+ status: 'primary',
1707
+ mode: 'text',
1708
+ content: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.batchEditOption'),
1709
+ onClick: openPopupEditEvent
1710
+ })]), (0, _vue.h)('div', {
1711
+ "class": 'vxe-form-design--widget-form-item-data-source'
1712
+ }, renderOptions())];
399
1713
  }
400
1714
  });
1715
+ }
1716
+ };
1717
+ }
1718
+ }, {
1719
+ "vue": "vue"
1720
+ }],
1721
+ 11: [function (require, module, exports) {
1722
+ "use strict";
1723
+
1724
+ Object.defineProperty(exports, "__esModule", {
1725
+ value: true
1726
+ });
1727
+ exports.defineFormRender = defineFormRender;
1728
+ var _vue = require("vue");
1729
+ var _xeUtils = _interopRequireDefault(require("xe-utils"));
1730
+ function _interopRequireDefault(e) {
1731
+ return e && e.__esModule ? e : {
1732
+ "default": e
1733
+ };
1734
+ }
1735
+ function _typeof(o) {
1736
+ "@babel/helpers - typeof";
1737
+
1738
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
1739
+ return typeof o;
1740
+ } : function (o) {
1741
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
1742
+ }, _typeof(o);
1743
+ }
1744
+ function ownKeys(e, r) {
1745
+ var t = Object.keys(e);
1746
+ if (Object.getOwnPropertySymbols) {
1747
+ var o = Object.getOwnPropertySymbols(e);
1748
+ r && (o = o.filter(function (r) {
1749
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
1750
+ })), t.push.apply(t, o);
1751
+ }
1752
+ return t;
1753
+ }
1754
+ function _objectSpread(e) {
1755
+ for (var r = 1; r < arguments.length; r++) {
1756
+ var t = null != arguments[r] ? arguments[r] : {};
1757
+ r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
1758
+ _defineProperty(e, r, t[r]);
1759
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
1760
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
401
1761
  });
402
1762
  }
403
- })];
404
- };
405
- }
406
- /**
407
- * 检查触发源是否属于目标节点
408
- */
409
- function getEventTargetNode(evnt, container, className) {
410
- var targetElem;
411
- var target = evnt.target;
412
- while (target && target.nodeType && target !== document) {
413
- if (className && target.className && target.className.split && target.className.split(' ').indexOf(className) > -1) {
414
- targetElem = target;
415
- } else if (target === container) {
416
- return {
417
- flag: className ? !!targetElem : true,
418
- container: container,
419
- targetElem: targetElem
420
- };
1763
+ return e;
421
1764
  }
422
- target = target.parentNode;
423
- }
424
- return {
425
- flag: false
426
- };
427
- }
428
- /**
429
- * 事件兼容性处理
430
- */
431
- function handleClearEvent(params) {
432
- var $event = params.$event;
433
- var bodyElem = document.body;
434
- if (
435
- // 下拉框
436
- getEventTargetNode($event, bodyElem, 'ant-select-dropdown').flag ||
437
- // 级联
438
- getEventTargetNode($event, bodyElem, 'ant-cascader-menus').flag ||
439
- // 日期
440
- getEventTargetNode($event, bodyElem, 'ant-picker-dropdown').flag || getEventTargetNode($event, bodyElem, 'ant-calendar-picker-container').flag ||
441
- // 时间选择
442
- getEventTargetNode($event, bodyElem, 'ant-time-picker-panel').flag) {
443
- return false;
444
- }
445
- }
446
- var VxeUIPluginRenderAntd = _exports.VxeUIPluginRenderAntd = {
447
- install: function install(core, options) {
448
- VxeUI = core;
449
- Antd = options ? options.Antd : {};
450
- // 检查版本
451
- if (!/^(4)\./.test(VxeUI.uiVersion)) {
452
- console.error('[plugin-render-antd 4.x] Version 4.x is required');
453
- }
454
- VxeUI.renderer.mixin({
455
- AAutoComplete: {
456
- autofocus: 'input.ant-input',
457
- renderDefault: createEditRender(),
458
- renderEdit: createEditRender(),
459
- renderFilter: createFilterRender(),
460
- defaultFilterMethod: defaultExactFilterMethod,
461
- renderItemContent: createFormItemRender()
462
- },
463
- AInput: {
464
- autofocus: 'input.ant-input',
465
- renderDefault: createEditRender(),
466
- renderEdit: createEditRender(),
467
- renderFilter: createFilterRender(),
468
- defaultFilterMethod: defaultFuzzyFilterMethod,
469
- renderItemContent: createFormItemRender()
470
- },
471
- AInputNumber: {
472
- autofocus: 'input.ant-input-number-input',
473
- renderDefault: createEditRender(),
474
- renderEdit: createEditRender(),
475
- renderFilter: createFilterRender(),
476
- defaultFilterMethod: defaultFuzzyFilterMethod,
477
- renderItemContent: createFormItemRender()
478
- },
479
- ASelect: {
480
- renderEdit: function renderEdit(renderOpts, params) {
481
- var options = renderOpts.options,
482
- optionGroups = renderOpts.optionGroups;
483
- var row = params.row,
484
- column = params.column;
1765
+ function _defineProperty(e, r, t) {
1766
+ return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
1767
+ value: t,
1768
+ enumerable: !0,
1769
+ configurable: !0,
1770
+ writable: !0
1771
+ }) : e[r] = t, e;
1772
+ }
1773
+ function _toPropertyKey(t) {
1774
+ var i = _toPrimitive(t, "string");
1775
+ return "symbol" == _typeof(i) ? i : i + "";
1776
+ }
1777
+ function _toPrimitive(t, r) {
1778
+ if ("object" != _typeof(t) || !t) return t;
1779
+ var e = t[Symbol.toPrimitive];
1780
+ if (void 0 !== e) {
1781
+ var i = e.call(t, r || "default");
1782
+ if ("object" != _typeof(i)) return i;
1783
+ throw new TypeError("@@toPrimitive must return a primitive value.");
1784
+ }
1785
+ return ("string" === r ? String : Number)(t);
1786
+ }
1787
+ /**
1788
+ * 表单 - 渲染器
1789
+ */
1790
+ function defineFormRender(VxeUI) {
1791
+ function isEmptyValue(cellValue) {
1792
+ return cellValue === null || cellValue === undefined || cellValue === '';
1793
+ }
1794
+ function getOnName(type) {
1795
+ return 'on' + type.substring(0, 1).toLocaleUpperCase() + type.substring(1);
1796
+ }
1797
+ function getModelProp(renderOpts) {
1798
+ var prop = 'value';
1799
+ switch (renderOpts.name) {
1800
+ case 'ASwitch':
1801
+ prop = 'checked';
1802
+ break;
1803
+ }
1804
+ return prop;
1805
+ }
1806
+ function getModelEvent(renderOpts) {
1807
+ var type = 'update:value';
1808
+ switch (renderOpts.name) {
1809
+ case 'ASwitch':
1810
+ type = 'update:checked';
1811
+ break;
1812
+ }
1813
+ return type;
1814
+ }
1815
+ function getChangeEvent(renderOpts) {
1816
+ return 'change';
1817
+ }
1818
+ function getItemProps(renderOpts, params, value, defaultProps) {
1819
+ return _xeUtils["default"].assign({}, defaultProps, renderOpts.props, _defineProperty({}, getModelProp(renderOpts), value));
1820
+ }
1821
+ function formatText(cellValue) {
1822
+ return '' + (isEmptyValue(cellValue) ? '' : cellValue);
1823
+ }
1824
+ function getOns(renderOpts, params, inputFunc, changeFunc) {
1825
+ var events = renderOpts.events;
1826
+ var modelEvent = getModelEvent(renderOpts);
1827
+ var changeEvent = getChangeEvent(renderOpts);
1828
+ var isSameEvent = changeEvent === modelEvent;
1829
+ var ons = {};
1830
+ _xeUtils["default"].objectEach(events, function (func, key) {
1831
+ ons[getOnName(key)] = function () {
1832
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1833
+ args[_key] = arguments[_key];
1834
+ }
1835
+ func.apply(void 0, [params].concat(args));
1836
+ };
1837
+ });
1838
+ if (inputFunc) {
1839
+ ons[getOnName(modelEvent)] = function (targetEvnt) {
1840
+ inputFunc(targetEvnt);
1841
+ if (events && events[modelEvent]) {
1842
+ events[modelEvent](params, targetEvnt);
1843
+ }
1844
+ if (isSameEvent && changeFunc) {
1845
+ changeFunc(targetEvnt);
1846
+ }
1847
+ };
1848
+ }
1849
+ if (!isSameEvent && changeFunc) {
1850
+ ons[getOnName(changeEvent)] = function () {
1851
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1852
+ args[_key2] = arguments[_key2];
1853
+ }
1854
+ changeFunc.apply(void 0, args);
1855
+ if (events && events[changeEvent]) {
1856
+ events[changeEvent].apply(events, [params].concat(args));
1857
+ }
1858
+ };
1859
+ }
1860
+ return ons;
1861
+ }
1862
+ function getItemOns(renderOpts, params) {
1863
+ var $form = params.$form,
1864
+ data = params.data,
1865
+ field = params.field;
1866
+ return getOns(renderOpts, params, function (value) {
1867
+ // 处理 model 值双向绑定
1868
+ _xeUtils["default"].set(data, field, value);
1869
+ }, function () {
1870
+ // 处理 change 事件相关逻辑
1871
+ $form.updateStatus(params);
1872
+ });
1873
+ }
1874
+ function cellText(cellValue) {
1875
+ return [formatText(cellValue)];
1876
+ }
1877
+ function createFormItemRender(defaultProps) {
1878
+ return function (renderOpts, params) {
1879
+ var data = params.data,
1880
+ field = params.field;
1881
+ var name = renderOpts.name;
485
1882
  var attrs = renderOpts.attrs;
486
- var cellValue = _xeUtils["default"].get(row, column.field);
487
- var props = getCellEditFilterProps(renderOpts, params, cellValue);
488
- var ons = getEditOns(renderOpts, params);
489
- if (optionGroups) {
490
- return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, props), attrs), {}, {
491
- options: optionGroups
492
- }, ons))];
1883
+ var itemValue = _xeUtils["default"].get(data, field);
1884
+ return [(0, _vue.h)((0, _vue.resolveComponent)(name), _objectSpread(_objectSpread(_objectSpread({}, attrs), getItemProps(renderOpts, params, itemValue, defaultProps)), getItemOns(renderOpts, params)))];
1885
+ };
1886
+ }
1887
+ function defaultButtonItemRender(renderOpts, params) {
1888
+ var attrs = renderOpts.attrs;
1889
+ var props = getItemProps(renderOpts, params, null);
1890
+ return [(0, _vue.h)((0, _vue.resolveComponent)('a-button'), _objectSpread(_objectSpread(_objectSpread({}, attrs), props), getItemOns(renderOpts, params)), {
1891
+ "default": function _default() {
1892
+ return cellText(renderOpts.content || props.content);
493
1893
  }
494
- return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, props), attrs), {}, {
495
- options: props.options || options
496
- }, ons))];
497
- },
498
- renderCell: function renderCell(renderOpts, params) {
499
- return getCellLabelVNs(renderOpts, params, getSelectCellValue(renderOpts, params));
500
- },
501
- renderFilter: function renderFilter(renderOpts, params) {
502
- var _renderOpts$options3 = renderOpts.options,
503
- options = _renderOpts$options3 === void 0 ? [] : _renderOpts$options3,
504
- optionGroups = renderOpts.optionGroups,
505
- _renderOpts$optionGro2 = renderOpts.optionGroupProps,
506
- optionGroupProps = _renderOpts$optionGro2 === void 0 ? {} : _renderOpts$optionGro2;
507
- var groupOptions = optionGroupProps.options || 'options';
508
- var column = params.column;
509
- var attrs = renderOpts.attrs;
510
- return [(0, _vue.h)('div', {
511
- "class": 'vxe-table--filter-antd-wrapper'
512
- }, optionGroups ? column.filters.map(function (option, oIndex) {
513
- var optionValue = option.data;
514
- var props = getCellEditFilterProps(renderOpts, params, optionValue);
515
- return (0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({
516
- key: oIndex
517
- }, attrs), props), {}, {
518
- options: groupOptions
519
- }, getFilterOns(renderOpts, params, option, function () {
520
- // 处理 change 事件相关逻辑
521
- handleConfirmFilter(params, props.mode === 'multiple' ? option.data && option.data.length > 0 : !_xeUtils["default"].eqNull(option.data), option);
522
- })));
523
- }) : column.filters.map(function (option, oIndex) {
524
- var optionValue = option.data;
525
- var props = getCellEditFilterProps(renderOpts, params, optionValue);
526
- return (0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({
527
- key: oIndex
528
- }, attrs), props), {}, {
529
- options: props.options || options
530
- }, getFilterOns(renderOpts, params, option, function () {
531
- // 处理 change 事件相关逻辑
532
- handleConfirmFilter(params, props.mode === 'multiple' ? option.data && option.data.length > 0 : !_xeUtils["default"].eqNull(option.data), option);
533
- })));
534
- }))];
535
- },
536
- defaultFilterMethod: function defaultFilterMethod(params) {
537
- var option = params.option,
538
- row = params.row,
539
- column = params.column;
540
- var data = option.data;
541
- var field = column.field,
542
- renderOpts = column.filterRender;
543
- var _renderOpts$props6 = renderOpts.props,
544
- props = _renderOpts$props6 === void 0 ? {} : _renderOpts$props6;
545
- var cellValue = _xeUtils["default"].get(row, field);
546
- if (props.mode === 'multiple') {
547
- if (_xeUtils["default"].isArray(cellValue)) {
548
- return _xeUtils["default"].includeArrays(cellValue, data);
549
- }
550
- return data.indexOf(cellValue) > -1;
551
- }
552
- /* eslint-disable eqeqeq */
553
- return cellValue == data;
554
- },
555
- renderItemContent: function renderItemContent(renderOpts, params) {
556
- var _renderOpts$options4 = renderOpts.options,
557
- options = _renderOpts$options4 === void 0 ? [] : _renderOpts$options4,
558
- optionGroups = renderOpts.optionGroups;
1894
+ })];
1895
+ }
1896
+ function defaultButtonsItemRender(renderOpts, params) {
1897
+ var children = renderOpts.children;
1898
+ if (children) {
1899
+ return children.map(function (childRenderOpts) {
1900
+ return defaultButtonItemRender(childRenderOpts, params)[0];
1901
+ });
1902
+ }
1903
+ return [];
1904
+ }
1905
+ function createFormItemRadioAndCheckboxRender() {
1906
+ return function (renderOpts, params) {
1907
+ var name = renderOpts.name,
1908
+ _renderOpts$options = renderOpts.options,
1909
+ options = _renderOpts$options === void 0 ? [] : _renderOpts$options,
1910
+ _renderOpts$optionPro = renderOpts.optionProps,
1911
+ optionProps = _renderOpts$optionPro === void 0 ? {} : _renderOpts$optionPro;
559
1912
  var data = params.data,
560
1913
  field = params.field;
561
1914
  var attrs = renderOpts.attrs;
1915
+ var labelProp = optionProps.label || 'label';
1916
+ var valueProp = optionProps.value || 'value';
562
1917
  var itemValue = _xeUtils["default"].get(data, field);
563
- var props = getItemProps(renderOpts, params, itemValue);
564
- var ons = getItemOns(renderOpts, params);
565
- if (optionGroups) {
1918
+ return [(0, _vue.h)((0, _vue.resolveComponent)("".concat(name, "Group")), _objectSpread(_objectSpread(_objectSpread({}, attrs), getItemProps(renderOpts, params, itemValue)), getItemOns(renderOpts, params)), {
1919
+ "default": function _default() {
1920
+ return options.map(function (option, oIndex) {
1921
+ return (0, _vue.h)((0, _vue.resolveComponent)(name), {
1922
+ key: oIndex,
1923
+ value: option[valueProp],
1924
+ disabled: option.disabled
1925
+ }, {
1926
+ "default": function _default() {
1927
+ return cellText(option[labelProp]);
1928
+ }
1929
+ });
1930
+ });
1931
+ }
1932
+ })];
1933
+ };
1934
+ }
1935
+ VxeUI.renderer.mixin({
1936
+ AAutoComplete: {
1937
+ renderFormItemContent: createFormItemRender()
1938
+ },
1939
+ AInput: {
1940
+ renderFormItemContent: createFormItemRender()
1941
+ },
1942
+ AInputNumber: {
1943
+ renderFormItemContent: createFormItemRender()
1944
+ },
1945
+ ASelect: {
1946
+ renderFormItemContent: function renderFormItemContent(renderOpts, params) {
1947
+ var _renderOpts$options2 = renderOpts.options,
1948
+ options = _renderOpts$options2 === void 0 ? [] : _renderOpts$options2,
1949
+ optionGroups = renderOpts.optionGroups;
1950
+ var data = params.data,
1951
+ field = params.field;
1952
+ var attrs = renderOpts.attrs;
1953
+ var itemValue = _xeUtils["default"].get(data, field);
1954
+ var props = getItemProps(renderOpts, params, itemValue);
1955
+ var ons = getItemOns(renderOpts, params);
1956
+ if (optionGroups) {
1957
+ return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, attrs), props), {}, {
1958
+ options: optionGroups
1959
+ }, ons))];
1960
+ }
566
1961
  return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, attrs), props), {}, {
567
- options: optionGroups
1962
+ options: props.options || options
568
1963
  }, ons))];
569
1964
  }
570
- return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, attrs), props), {}, {
571
- options: props.options || options
572
- }, ons))];
573
- },
574
- exportMethod: createExportMethod(getSelectCellValue)
575
- },
576
- ACascader: {
577
- renderEdit: createEditRender(),
578
- renderCell: function renderCell(renderOpts, params) {
579
- return getCellLabelVNs(renderOpts, params, getCascaderCellValue(renderOpts, params));
580
- },
581
- renderItemContent: createFormItemRender(),
582
- exportMethod: createExportMethod(getCascaderCellValue)
583
- },
584
- ADatePicker: {
585
- renderEdit: createEditRender(),
586
- renderCell: formatDatePicker('YYYY-MM-DD'),
587
- renderItemContent: createFormItemRender(),
588
- exportMethod: createDatePickerExportMethod('YYYY-MM-DD')
589
- },
590
- AMonthPicker: {
591
- renderEdit: createEditRender(),
592
- renderCell: formatDatePicker('YYYY-MM'),
593
- renderItemContent: createFormItemRender(),
594
- exportMethod: createDatePickerExportMethod('YYYY-MM')
595
- },
596
- ARangePicker: {
597
- renderEdit: createEditRender(),
598
- renderCell: function renderCell(renderOpts, params) {
599
- return getCellLabelVNs(renderOpts, params, getRangePickerCellValue(renderOpts, params));
600
- },
601
- renderItemContent: createFormItemRender(),
602
- exportMethod: createExportMethod(getRangePickerCellValue)
603
- },
604
- AWeekPicker: {
605
- renderEdit: createEditRender(),
606
- renderCell: formatDatePicker('YYYY-WW周'),
607
- renderItemContent: createFormItemRender(),
608
- exportMethod: createDatePickerExportMethod('YYYY-WW周')
609
- },
610
- ATimePicker: {
611
- renderEdit: createEditRender(),
612
- renderCell: formatDatePicker('HH:mm:ss'),
613
- renderItemContent: createFormItemRender(),
614
- exportMethod: createDatePickerExportMethod('HH:mm:ss')
615
- },
616
- ATreeSelect: {
617
- renderEdit: createEditRender(),
618
- renderCell: function renderCell(renderOpts, params) {
619
- return getCellLabelVNs(renderOpts, params, getTreeSelectCellValue(renderOpts, params));
620
- },
621
- renderItemContent: createFormItemRender(),
622
- exportMethod: createExportMethod(getTreeSelectCellValue)
623
- },
624
- ARate: {
625
- renderDefault: createEditRender(),
626
- renderEdit: createEditRender(),
627
- renderFilter: createFilterRender(),
628
- defaultFilterMethod: defaultExactFilterMethod,
629
- renderItemContent: createFormItemRender()
630
- },
631
- ASwitch: {
632
- renderDefault: createEditRender(),
633
- renderEdit: createEditRender(),
634
- renderFilter: function renderFilter(renderOpts, params) {
1965
+ },
1966
+ ACascader: {
1967
+ renderFormItemContent: createFormItemRender()
1968
+ },
1969
+ ADatePicker: {
1970
+ renderFormItemContent: createFormItemRender()
1971
+ },
1972
+ AMonthPicker: {
1973
+ renderFormItemContent: createFormItemRender()
1974
+ },
1975
+ ARangePicker: {
1976
+ renderFormItemContent: createFormItemRender()
1977
+ },
1978
+ AWeekPicker: {
1979
+ renderFormItemContent: createFormItemRender()
1980
+ },
1981
+ ATimePicker: {
1982
+ renderFormItemContent: createFormItemRender()
1983
+ },
1984
+ ATreeSelect: {
1985
+ renderFormItemContent: createFormItemRender()
1986
+ },
1987
+ ARate: {
1988
+ renderFormItemContent: createFormItemRender()
1989
+ },
1990
+ ASwitch: {
1991
+ renderFormItemContent: createFormItemRender()
1992
+ },
1993
+ ARadio: {
1994
+ renderFormItemContent: createFormItemRadioAndCheckboxRender()
1995
+ },
1996
+ ACheckbox: {
1997
+ renderFormItemContent: createFormItemRadioAndCheckboxRender()
1998
+ },
1999
+ AButton: {
2000
+ renderFormItemContent: defaultButtonItemRender
2001
+ },
2002
+ AButtons: {
2003
+ renderFormItemContent: defaultButtonsItemRender
2004
+ }
2005
+ });
2006
+ }
2007
+ }, {
2008
+ "vue": "vue",
2009
+ "xe-utils": "xe-utils"
2010
+ }],
2011
+ 12: [function (require, module, exports) {
2012
+ "use strict";
2013
+
2014
+ Object.defineProperty(exports, "__esModule", {
2015
+ value: true
2016
+ });
2017
+ exports["default"] = exports.VxeUIPluginRenderAntd = void 0;
2018
+ var _table = require("./table");
2019
+ var _form = require("./form");
2020
+ var _formDesign = require("./form-design");
2021
+ /**
2022
+ * 检查触发源是否属于目标节点
2023
+ */
2024
+ function getEventTargetNode(evnt, container, className) {
2025
+ var targetElem;
2026
+ var target = evnt.target;
2027
+ while (target && target.nodeType && target !== document) {
2028
+ if (className && target.className && target.className.split && target.className.split(' ').indexOf(className) > -1) {
2029
+ targetElem = target;
2030
+ } else if (target === container) {
2031
+ return {
2032
+ flag: className ? !!targetElem : true,
2033
+ container: container,
2034
+ targetElem: targetElem
2035
+ };
2036
+ }
2037
+ target = target.parentNode;
2038
+ }
2039
+ return {
2040
+ flag: false
2041
+ };
2042
+ }
2043
+ /**
2044
+ * 事件兼容性处理
2045
+ */
2046
+ function handleClearEvent(params) {
2047
+ var $event = params.$event;
2048
+ var bodyElem = document.body;
2049
+ if (
2050
+ // 下拉框
2051
+ getEventTargetNode($event, bodyElem, 'ant-select-dropdown').flag ||
2052
+ // 级联
2053
+ getEventTargetNode($event, bodyElem, 'ant-cascader-menus').flag ||
2054
+ // 日期
2055
+ getEventTargetNode($event, bodyElem, 'ant-picker-dropdown').flag || getEventTargetNode($event, bodyElem, 'ant-calendar-picker-container').flag ||
2056
+ // 时间选择
2057
+ getEventTargetNode($event, bodyElem, 'ant-time-picker-panel').flag) {
2058
+ return false;
2059
+ }
2060
+ }
2061
+ var VxeUIPluginRenderAntd = exports.VxeUIPluginRenderAntd = {
2062
+ install: function install(VxeUI, options) {
2063
+ // 检查版本
2064
+ if (!/^(4)\./.test(VxeUI.uiVersion)) {
2065
+ console.error('[plugin-render-antd 4.x] Version 4.x is required');
2066
+ }
2067
+ (0, _table.defineTableRender)(VxeUI);
2068
+ (0, _form.defineFormRender)(VxeUI);
2069
+ (0, _formDesign.defineFormDesignRender)(VxeUI);
2070
+ VxeUI.interceptor.add('event.clearFilter', handleClearEvent);
2071
+ VxeUI.interceptor.add('event.clearEdit', handleClearEvent);
2072
+ VxeUI.interceptor.add('event.clearAreas', handleClearEvent);
2073
+ // 兼容老版本
2074
+ VxeUI.interceptor.add('event.clearActived', handleClearEvent);
2075
+ }
2076
+ };
2077
+ if (typeof window !== 'undefined' && window.VxeUI && window.VxeUI.use) {
2078
+ window.VxeUI.use(VxeUIPluginRenderAntd);
2079
+ }
2080
+ var _default = exports["default"] = VxeUIPluginRenderAntd;
2081
+ }, {
2082
+ "./form": 11,
2083
+ "./form-design": 3,
2084
+ "./table": 13
2085
+ }],
2086
+ 13: [function (require, module, exports) {
2087
+ "use strict";
2088
+
2089
+ Object.defineProperty(exports, "__esModule", {
2090
+ value: true
2091
+ });
2092
+ exports.defineTableRender = defineTableRender;
2093
+ var _vue = require("vue");
2094
+ var _xeUtils = _interopRequireDefault(require("xe-utils"));
2095
+ function _interopRequireDefault(e) {
2096
+ return e && e.__esModule ? e : {
2097
+ "default": e
2098
+ };
2099
+ }
2100
+ function _typeof(o) {
2101
+ "@babel/helpers - typeof";
2102
+
2103
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
2104
+ return typeof o;
2105
+ } : function (o) {
2106
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
2107
+ }, _typeof(o);
2108
+ }
2109
+ function ownKeys(e, r) {
2110
+ var t = Object.keys(e);
2111
+ if (Object.getOwnPropertySymbols) {
2112
+ var o = Object.getOwnPropertySymbols(e);
2113
+ r && (o = o.filter(function (r) {
2114
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
2115
+ })), t.push.apply(t, o);
2116
+ }
2117
+ return t;
2118
+ }
2119
+ function _objectSpread(e) {
2120
+ for (var r = 1; r < arguments.length; r++) {
2121
+ var t = null != arguments[r] ? arguments[r] : {};
2122
+ r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
2123
+ _defineProperty(e, r, t[r]);
2124
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
2125
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
2126
+ });
2127
+ }
2128
+ return e;
2129
+ }
2130
+ function _defineProperty(e, r, t) {
2131
+ return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
2132
+ value: t,
2133
+ enumerable: !0,
2134
+ configurable: !0,
2135
+ writable: !0
2136
+ }) : e[r] = t, e;
2137
+ }
2138
+ function _toPropertyKey(t) {
2139
+ var i = _toPrimitive(t, "string");
2140
+ return "symbol" == _typeof(i) ? i : i + "";
2141
+ }
2142
+ function _toPrimitive(t, r) {
2143
+ if ("object" != _typeof(t) || !t) return t;
2144
+ var e = t[Symbol.toPrimitive];
2145
+ if (void 0 !== e) {
2146
+ var i = e.call(t, r || "default");
2147
+ if ("object" != _typeof(i)) return i;
2148
+ throw new TypeError("@@toPrimitive must return a primitive value.");
2149
+ }
2150
+ return ("string" === r ? String : Number)(t);
2151
+ }
2152
+ /**
2153
+ * 表格 - 渲染器
2154
+ */
2155
+ function defineTableRender(VxeUI) {
2156
+ function isEmptyValue(cellValue) {
2157
+ return cellValue === null || cellValue === undefined || cellValue === '';
2158
+ }
2159
+ function getOnName(type) {
2160
+ return 'on' + type.substring(0, 1).toLocaleUpperCase() + type.substring(1);
2161
+ }
2162
+ function getModelProp(renderOpts) {
2163
+ var prop = 'value';
2164
+ switch (renderOpts.name) {
2165
+ case 'ASwitch':
2166
+ prop = 'checked';
2167
+ break;
2168
+ }
2169
+ return prop;
2170
+ }
2171
+ function getModelEvent(renderOpts) {
2172
+ var type = 'update:value';
2173
+ switch (renderOpts.name) {
2174
+ case 'ASwitch':
2175
+ type = 'update:checked';
2176
+ break;
2177
+ }
2178
+ return type;
2179
+ }
2180
+ function dateFormatToVxeFormat(format) {
2181
+ if (format) {
2182
+ return "".concat(format).replace('YYYY', 'yyyy').replace('DD', 'dd');
2183
+ }
2184
+ return format;
2185
+ }
2186
+ function getChangeEvent(renderOpts) {
2187
+ return 'change';
2188
+ }
2189
+ function getCellEditFilterProps(renderOpts, params, value, defaultProps) {
2190
+ return _xeUtils["default"].assign({}, defaultProps, renderOpts.props, _defineProperty({}, getModelProp(renderOpts), value));
2191
+ }
2192
+ function formatText(cellValue) {
2193
+ return '' + (isEmptyValue(cellValue) ? '' : cellValue);
2194
+ }
2195
+ function getCellLabelVNs(renderOpts, params, cellLabel) {
2196
+ var placeholder = renderOpts.placeholder;
2197
+ return [(0, _vue.h)('span', {
2198
+ "class": 'vxe-cell--label'
2199
+ }, placeholder && isEmptyValue(cellLabel) ? [(0, _vue.h)('span', {
2200
+ "class": 'vxe-cell--placeholder'
2201
+ }, formatText(placeholder))] : formatText(cellLabel))];
2202
+ }
2203
+ function getOns(renderOpts, params, inputFunc, changeFunc) {
2204
+ var events = renderOpts.events;
2205
+ var modelEvent = getModelEvent(renderOpts);
2206
+ var changeEvent = getChangeEvent(renderOpts);
2207
+ var isSameEvent = changeEvent === modelEvent;
2208
+ var ons = {};
2209
+ _xeUtils["default"].objectEach(events, function (func, key) {
2210
+ ons[getOnName(key)] = function () {
2211
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2212
+ args[_key] = arguments[_key];
2213
+ }
2214
+ func.apply(void 0, [params].concat(args));
2215
+ };
2216
+ });
2217
+ if (inputFunc) {
2218
+ ons[getOnName(modelEvent)] = function (targetEvnt) {
2219
+ inputFunc(targetEvnt);
2220
+ if (events && events[modelEvent]) {
2221
+ events[modelEvent](params, targetEvnt);
2222
+ }
2223
+ if (isSameEvent && changeFunc) {
2224
+ changeFunc(targetEvnt);
2225
+ }
2226
+ };
2227
+ }
2228
+ if (!isSameEvent && changeFunc) {
2229
+ ons[getOnName(changeEvent)] = function () {
2230
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
2231
+ args[_key2] = arguments[_key2];
2232
+ }
2233
+ changeFunc.apply(void 0, args);
2234
+ if (events && events[changeEvent]) {
2235
+ events[changeEvent].apply(events, [params].concat(args));
2236
+ }
2237
+ };
2238
+ }
2239
+ return ons;
2240
+ }
2241
+ function getEditOns(renderOpts, params) {
2242
+ var $table = params.$table,
2243
+ row = params.row,
2244
+ column = params.column;
2245
+ return getOns(renderOpts, params, function (value) {
2246
+ // 处理 model 值双向绑定
2247
+ _xeUtils["default"].set(row, column.field, value);
2248
+ }, function () {
2249
+ // 处理 change 事件相关逻辑
2250
+ $table.updateStatus(params);
2251
+ });
2252
+ }
2253
+ function getFilterOns(renderOpts, params, option, changeFunc) {
2254
+ return getOns(renderOpts, params, function (value) {
2255
+ // 处理 model 值双向绑定
2256
+ option.data = value;
2257
+ }, changeFunc);
2258
+ }
2259
+ function matchCascaderData(index, list, values, labels) {
2260
+ var val = values[index];
2261
+ if (list && values.length > index) {
2262
+ _xeUtils["default"].each(list, function (item) {
2263
+ if (item.value === val) {
2264
+ labels.push(item.label);
2265
+ matchCascaderData(++index, item.children, values, labels);
2266
+ }
2267
+ });
2268
+ }
2269
+ }
2270
+ function formatDatePicker(defaultFormat) {
2271
+ return function (renderOpts, params) {
2272
+ return getCellLabelVNs(renderOpts, params, getDatePickerCellValue(renderOpts, params, defaultFormat));
2273
+ };
2274
+ }
2275
+ function getSelectCellValue(renderOpts, params) {
2276
+ var _renderOpts$options = renderOpts.options,
2277
+ options = _renderOpts$options === void 0 ? [] : _renderOpts$options,
2278
+ optionGroups = renderOpts.optionGroups,
2279
+ _renderOpts$props = renderOpts.props,
2280
+ props = _renderOpts$props === void 0 ? {} : _renderOpts$props,
2281
+ _renderOpts$optionPro = renderOpts.optionProps,
2282
+ optionProps = _renderOpts$optionPro === void 0 ? {} : _renderOpts$optionPro,
2283
+ _renderOpts$optionGro = renderOpts.optionGroupProps,
2284
+ optionGroupProps = _renderOpts$optionGro === void 0 ? {} : _renderOpts$optionGro;
2285
+ var row = params.row,
2286
+ column = params.column;
2287
+ var labelProp = optionProps.label || 'label';
2288
+ var valueProp = optionProps.value || 'value';
2289
+ var groupOptions = optionGroupProps.options || 'options';
2290
+ var cellValue = _xeUtils["default"].get(row, column.field);
2291
+ if (!isEmptyValue(cellValue)) {
2292
+ return _xeUtils["default"].map(props.mode === 'multiple' ? cellValue : [cellValue], optionGroups ? function (value) {
2293
+ var selectItem;
2294
+ for (var index = 0; index < optionGroups.length; index++) {
2295
+ selectItem = _xeUtils["default"].find(optionGroups[index][groupOptions], function (item) {
2296
+ return item[valueProp] === value;
2297
+ });
2298
+ if (selectItem) {
2299
+ break;
2300
+ }
2301
+ }
2302
+ return selectItem ? selectItem[labelProp] : value;
2303
+ } : function (value) {
2304
+ var selectItem = _xeUtils["default"].find(options, function (item) {
2305
+ return item[valueProp] === value;
2306
+ });
2307
+ return selectItem ? selectItem[labelProp] : value;
2308
+ }).join(', ');
2309
+ }
2310
+ return '';
2311
+ }
2312
+ function getCascaderCellValue(renderOpts, params) {
2313
+ var _renderOpts$props2 = renderOpts.props,
2314
+ props = _renderOpts$props2 === void 0 ? {} : _renderOpts$props2;
2315
+ var row = params.row,
2316
+ column = params.column;
2317
+ var cellValue = _xeUtils["default"].get(row, column.field);
2318
+ var values = cellValue || [];
2319
+ var labels = [];
2320
+ matchCascaderData(0, props.options, values, labels);
2321
+ return (props.showAllLevels === false ? labels.slice(labels.length - 1, labels.length) : labels).join(" ".concat(props.separator || '/', " "));
2322
+ }
2323
+ function getRangePickerCellValue(renderOpts, params) {
2324
+ var _renderOpts$props3 = renderOpts.props,
2325
+ props = _renderOpts$props3 === void 0 ? {} : _renderOpts$props3;
2326
+ var row = params.row,
2327
+ column = params.column;
2328
+ var cellValue = _xeUtils["default"].get(row, column.field);
2329
+ if (cellValue) {
2330
+ cellValue = _xeUtils["default"].map(cellValue, function (date) {
2331
+ return date && date.format ? date.format(props.format || 'YYYY-MM-DD') : _xeUtils["default"].toDateString(date, dateFormatToVxeFormat(props.format || 'YYYY-MM-DD'));
2332
+ }).join(' ~ ');
2333
+ }
2334
+ return cellValue;
2335
+ }
2336
+ function getTreeSelectCellValue(renderOpts, params) {
2337
+ var _renderOpts$props4 = renderOpts.props,
2338
+ props = _renderOpts$props4 === void 0 ? {} : _renderOpts$props4;
2339
+ var treeData = props.treeData,
2340
+ treeCheckable = props.treeCheckable;
2341
+ var row = params.row,
2342
+ column = params.column;
2343
+ var cellValue = _xeUtils["default"].get(row, column.field);
2344
+ if (!isEmptyValue(cellValue)) {
2345
+ return _xeUtils["default"].map(treeCheckable ? cellValue : [cellValue], function (value) {
2346
+ var matchObj = _xeUtils["default"].findTree(treeData, function (item) {
2347
+ return item.value === value;
2348
+ }, {
2349
+ children: 'children'
2350
+ });
2351
+ return matchObj ? matchObj.item.title : value;
2352
+ }).join(', ');
2353
+ }
2354
+ return cellValue;
2355
+ }
2356
+ function getDatePickerCellValue(renderOpts, params, defaultFormat) {
2357
+ var _renderOpts$props5 = renderOpts.props,
2358
+ props = _renderOpts$props5 === void 0 ? {} : _renderOpts$props5;
2359
+ var row = params.row,
2360
+ column = params.column;
2361
+ var cellValue = _xeUtils["default"].get(row, column.field);
2362
+ try {
2363
+ if (cellValue) {
2364
+ cellValue = cellValue.format ? cellValue.format(props.format || defaultFormat) : _xeUtils["default"].toDateString(cellValue, dateFormatToVxeFormat(props.format || defaultFormat));
2365
+ }
2366
+ } catch (e) {}
2367
+ return cellValue;
2368
+ }
2369
+ function createEditRender(defaultProps) {
2370
+ return function (renderOpts, params) {
2371
+ var row = params.row,
2372
+ column = params.column;
2373
+ var name = renderOpts.name,
2374
+ attrs = renderOpts.attrs;
2375
+ var cellValue = _xeUtils["default"].get(row, column.field);
2376
+ return [(0, _vue.h)((0, _vue.resolveComponent)(name), _objectSpread(_objectSpread(_objectSpread({}, attrs), getCellEditFilterProps(renderOpts, params, cellValue, defaultProps)), getEditOns(renderOpts, params)))];
2377
+ };
2378
+ }
2379
+ function defaultButtonEditRender(renderOpts, params) {
2380
+ var attrs = renderOpts.attrs;
2381
+ return [(0, _vue.h)((0, _vue.resolveComponent)('a-button'), _objectSpread(_objectSpread(_objectSpread({}, attrs), getCellEditFilterProps(renderOpts, params, null)), getOns(renderOpts, params)), cellText(renderOpts.content))];
2382
+ }
2383
+ function defaultButtonsEditRender(renderOpts, params) {
2384
+ var children = renderOpts.children;
2385
+ if (children) {
2386
+ return children.map(function (childRenderOpts) {
2387
+ return defaultButtonEditRender(childRenderOpts, params)[0];
2388
+ });
2389
+ }
2390
+ return [];
2391
+ }
2392
+ function createFilterRender(defaultProps) {
2393
+ return function (renderOpts, params) {
635
2394
  var column = params.column;
636
2395
  var name = renderOpts.name,
637
2396
  attrs = renderOpts.attrs;
@@ -639,43 +2398,244 @@
639
2398
  "class": 'vxe-table--filter-antd-wrapper'
640
2399
  }, column.filters.map(function (option, oIndex) {
641
2400
  var optionValue = option.data;
642
- return (0, _vue.h)(name, _objectSpread(_objectSpread(_objectSpread({
2401
+ return (0, _vue.h)((0, _vue.resolveComponent)(name), _objectSpread(_objectSpread(_objectSpread({
643
2402
  key: oIndex
644
- }, attrs), getCellEditFilterProps(renderOpts, params, optionValue)), getFilterOns(renderOpts, params, option, function () {
2403
+ }, attrs), getCellEditFilterProps(renderOpts, params, optionValue, defaultProps)), getFilterOns(renderOpts, params, option, function () {
645
2404
  // 处理 change 事件相关逻辑
646
- handleConfirmFilter(params, _xeUtils["default"].isBoolean(option.data), option);
2405
+ handleConfirmFilter(params, !!option.data, option);
647
2406
  })));
648
2407
  }))];
649
- },
650
- defaultFilterMethod: defaultExactFilterMethod,
651
- renderItemContent: createFormItemRender()
652
- },
653
- ARadio: {
654
- renderItemContent: createFormItemRadioAndCheckboxRender()
655
- },
656
- ACheckbox: {
657
- renderItemContent: createFormItemRadioAndCheckboxRender()
658
- },
659
- AButton: {
660
- renderEdit: defaultButtonEditRender,
661
- renderDefault: defaultButtonEditRender,
662
- renderItemContent: defaultButtonItemRender
663
- },
664
- AButtons: {
665
- renderEdit: defaultButtonsEditRender,
666
- renderDefault: defaultButtonsEditRender,
667
- renderItemContent: defaultButtonsItemRender
2408
+ };
668
2409
  }
669
- });
670
- VxeUI.interceptor.add('event.clearFilter', handleClearEvent);
671
- VxeUI.interceptor.add('event.clearEdit', handleClearEvent);
672
- VxeUI.interceptor.add('event.clearAreas', handleClearEvent);
673
- // 兼容老版本
674
- VxeUI.interceptor.add('event.clearActived', handleClearEvent);
675
- }
676
- };
677
- if (typeof window !== 'undefined' && window.VxeUI && window.VxeUI.use) {
678
- window.VxeUI.use(VxeUIPluginRenderAntd);
679
- }
680
- var _default2 = _exports["default"] = VxeUIPluginRenderAntd;
2410
+ function handleConfirmFilter(params, checked, option) {
2411
+ var $panel = params.$panel;
2412
+ $panel.changeOption(null, checked, option);
2413
+ }
2414
+ /**
2415
+ * 模糊匹配
2416
+ * @param params
2417
+ */
2418
+ function defaultFuzzyFilterMethod(params) {
2419
+ var option = params.option,
2420
+ row = params.row,
2421
+ column = params.column;
2422
+ var data = option.data;
2423
+ var cellValue = _xeUtils["default"].get(row, column.field);
2424
+ return _xeUtils["default"].toValueString(cellValue).indexOf(data) > -1;
2425
+ }
2426
+ /**
2427
+ * 精确匹配
2428
+ * @param params
2429
+ */
2430
+ function defaultExactFilterMethod(params) {
2431
+ var option = params.option,
2432
+ row = params.row,
2433
+ column = params.column;
2434
+ var data = option.data;
2435
+ var cellValue = _xeUtils["default"].get(row, column.field);
2436
+ /* eslint-disable eqeqeq */
2437
+ return cellValue === data;
2438
+ }
2439
+ function cellText(cellValue) {
2440
+ return [formatText(cellValue)];
2441
+ }
2442
+ function createDatePickerExportMethod(defaultFormat) {
2443
+ return function (params) {
2444
+ var row = params.row,
2445
+ column = params.column,
2446
+ options = params.options;
2447
+ return options && options.original ? _xeUtils["default"].get(row, column.field) : getDatePickerCellValue(column.editRender || column.cellRender, params, defaultFormat);
2448
+ };
2449
+ }
2450
+ function createExportMethod(getExportCellValue) {
2451
+ return function (params) {
2452
+ var row = params.row,
2453
+ column = params.column,
2454
+ options = params.options;
2455
+ return options && options.original ? _xeUtils["default"].get(row, column.field) : getExportCellValue(column.editRender || column.cellRender, params);
2456
+ };
2457
+ }
2458
+ VxeUI.renderer.mixin({
2459
+ AAutoComplete: {
2460
+ tableAutoFocus: 'input.ant-input',
2461
+ renderTableDefault: createEditRender(),
2462
+ renderTableEdit: createEditRender(),
2463
+ renderTableFilter: createFilterRender(),
2464
+ tableFilterDefaultMethod: defaultExactFilterMethod
2465
+ },
2466
+ AInput: {
2467
+ tableAutoFocus: 'input.ant-input',
2468
+ renderTableDefault: createEditRender(),
2469
+ renderTableEdit: createEditRender(),
2470
+ renderTableFilter: createFilterRender(),
2471
+ tableFilterDefaultMethod: defaultFuzzyFilterMethod
2472
+ },
2473
+ AInputNumber: {
2474
+ tableAutoFocus: 'input.ant-input-number-input',
2475
+ renderTableDefault: createEditRender(),
2476
+ renderTableEdit: createEditRender(),
2477
+ renderTableFilter: createFilterRender(),
2478
+ tableFilterDefaultMethod: defaultFuzzyFilterMethod
2479
+ },
2480
+ ASelect: {
2481
+ renderTableEdit: function renderTableEdit(renderOpts, params) {
2482
+ var options = renderOpts.options,
2483
+ optionGroups = renderOpts.optionGroups;
2484
+ var row = params.row,
2485
+ column = params.column;
2486
+ var attrs = renderOpts.attrs;
2487
+ var cellValue = _xeUtils["default"].get(row, column.field);
2488
+ var props = getCellEditFilterProps(renderOpts, params, cellValue);
2489
+ var ons = getEditOns(renderOpts, params);
2490
+ if (optionGroups) {
2491
+ return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, props), attrs), {}, {
2492
+ options: optionGroups
2493
+ }, ons))];
2494
+ }
2495
+ return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, props), attrs), {}, {
2496
+ options: props.options || options
2497
+ }, ons))];
2498
+ },
2499
+ renderTableCell: function renderTableCell(renderOpts, params) {
2500
+ return getCellLabelVNs(renderOpts, params, getSelectCellValue(renderOpts, params));
2501
+ },
2502
+ renderTableFilter: function renderTableFilter(renderOpts, params) {
2503
+ var _renderOpts$options2 = renderOpts.options,
2504
+ options = _renderOpts$options2 === void 0 ? [] : _renderOpts$options2,
2505
+ optionGroups = renderOpts.optionGroups,
2506
+ _renderOpts$optionGro2 = renderOpts.optionGroupProps,
2507
+ optionGroupProps = _renderOpts$optionGro2 === void 0 ? {} : _renderOpts$optionGro2;
2508
+ var groupOptions = optionGroupProps.options || 'options';
2509
+ var column = params.column;
2510
+ var attrs = renderOpts.attrs;
2511
+ return [(0, _vue.h)('div', {
2512
+ "class": 'vxe-table--filter-antd-wrapper'
2513
+ }, optionGroups ? column.filters.map(function (option, oIndex) {
2514
+ var optionValue = option.data;
2515
+ var props = getCellEditFilterProps(renderOpts, params, optionValue);
2516
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({
2517
+ key: oIndex
2518
+ }, attrs), props), {}, {
2519
+ options: groupOptions
2520
+ }, getFilterOns(renderOpts, params, option, function () {
2521
+ // 处理 change 事件相关逻辑
2522
+ handleConfirmFilter(params, props.mode === 'multiple' ? option.data && option.data.length > 0 : !_xeUtils["default"].eqNull(option.data), option);
2523
+ })));
2524
+ }) : column.filters.map(function (option, oIndex) {
2525
+ var optionValue = option.data;
2526
+ var props = getCellEditFilterProps(renderOpts, params, optionValue);
2527
+ return (0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({
2528
+ key: oIndex
2529
+ }, attrs), props), {}, {
2530
+ options: props.options || options
2531
+ }, getFilterOns(renderOpts, params, option, function () {
2532
+ // 处理 change 事件相关逻辑
2533
+ handleConfirmFilter(params, props.mode === 'multiple' ? option.data && option.data.length > 0 : !_xeUtils["default"].eqNull(option.data), option);
2534
+ })));
2535
+ }))];
2536
+ },
2537
+ tableFilterDefaultMethod: function tableFilterDefaultMethod(params) {
2538
+ var option = params.option,
2539
+ row = params.row,
2540
+ column = params.column;
2541
+ var data = option.data;
2542
+ var field = column.field,
2543
+ renderOpts = column.filterRender;
2544
+ var _renderOpts$props6 = renderOpts.props,
2545
+ props = _renderOpts$props6 === void 0 ? {} : _renderOpts$props6;
2546
+ var cellValue = _xeUtils["default"].get(row, field);
2547
+ if (props.mode === 'multiple') {
2548
+ if (_xeUtils["default"].isArray(cellValue)) {
2549
+ return _xeUtils["default"].includeArrays(cellValue, data);
2550
+ }
2551
+ return data.indexOf(cellValue) > -1;
2552
+ }
2553
+ /* eslint-disable eqeqeq */
2554
+ return cellValue == data;
2555
+ },
2556
+ tableExportMethod: createExportMethod(getSelectCellValue)
2557
+ },
2558
+ ACascader: {
2559
+ renderTableEdit: createEditRender(),
2560
+ renderTableCell: function renderTableCell(renderOpts, params) {
2561
+ return getCellLabelVNs(renderOpts, params, getCascaderCellValue(renderOpts, params));
2562
+ },
2563
+ tableExportMethod: createExportMethod(getCascaderCellValue)
2564
+ },
2565
+ ADatePicker: {
2566
+ renderTableEdit: createEditRender(),
2567
+ renderTableCell: formatDatePicker('YYYY-MM-DD'),
2568
+ tableExportMethod: createDatePickerExportMethod('YYYY-MM-DD')
2569
+ },
2570
+ AMonthPicker: {
2571
+ renderTableEdit: createEditRender(),
2572
+ renderTableCell: formatDatePicker('YYYY-MM'),
2573
+ tableExportMethod: createDatePickerExportMethod('YYYY-MM')
2574
+ },
2575
+ ARangePicker: {
2576
+ renderTableEdit: createEditRender(),
2577
+ renderTableCell: function renderTableCell(renderOpts, params) {
2578
+ return getCellLabelVNs(renderOpts, params, getRangePickerCellValue(renderOpts, params));
2579
+ },
2580
+ tableExportMethod: createExportMethod(getRangePickerCellValue)
2581
+ },
2582
+ AWeekPicker: {
2583
+ renderTableEdit: createEditRender(),
2584
+ renderTableCell: formatDatePicker('YYYY-WW周'),
2585
+ tableExportMethod: createDatePickerExportMethod('YYYY-WW周')
2586
+ },
2587
+ ATimePicker: {
2588
+ renderTableEdit: createEditRender(),
2589
+ renderTableCell: formatDatePicker('HH:mm:ss'),
2590
+ tableExportMethod: createDatePickerExportMethod('HH:mm:ss')
2591
+ },
2592
+ ATreeSelect: {
2593
+ renderTableEdit: createEditRender(),
2594
+ renderTableCell: function renderTableCell(renderOpts, params) {
2595
+ return getCellLabelVNs(renderOpts, params, getTreeSelectCellValue(renderOpts, params));
2596
+ },
2597
+ tableExportMethod: createExportMethod(getTreeSelectCellValue)
2598
+ },
2599
+ ARate: {
2600
+ renderTableDefault: createEditRender(),
2601
+ renderTableEdit: createEditRender(),
2602
+ renderTableFilter: createFilterRender(),
2603
+ tableFilterDefaultMethod: defaultExactFilterMethod
2604
+ },
2605
+ ASwitch: {
2606
+ renderTableDefault: createEditRender(),
2607
+ renderTableEdit: createEditRender(),
2608
+ renderTableFilter: function renderTableFilter(renderOpts, params) {
2609
+ var column = params.column;
2610
+ var name = renderOpts.name,
2611
+ attrs = renderOpts.attrs;
2612
+ return [(0, _vue.h)('div', {
2613
+ "class": 'vxe-table--filter-antd-wrapper'
2614
+ }, column.filters.map(function (option, oIndex) {
2615
+ var optionValue = option.data;
2616
+ return (0, _vue.h)(name, _objectSpread(_objectSpread(_objectSpread({
2617
+ key: oIndex
2618
+ }, attrs), getCellEditFilterProps(renderOpts, params, optionValue)), getFilterOns(renderOpts, params, option, function () {
2619
+ // 处理 change 事件相关逻辑
2620
+ handleConfirmFilter(params, _xeUtils["default"].isBoolean(option.data), option);
2621
+ })));
2622
+ }))];
2623
+ },
2624
+ tableFilterDefaultMethod: defaultExactFilterMethod
2625
+ },
2626
+ AButton: {
2627
+ renderTableEdit: defaultButtonEditRender,
2628
+ renderTableDefault: defaultButtonEditRender
2629
+ },
2630
+ AButtons: {
2631
+ renderTableEdit: defaultButtonsEditRender,
2632
+ renderTableDefault: defaultButtonsEditRender
2633
+ }
2634
+ });
2635
+ }
2636
+ }, {
2637
+ "vue": "vue",
2638
+ "xe-utils": "xe-utils"
2639
+ }]
2640
+ }, {}, [12]);
681
2641
  });