@vxe-ui/plugin-render-antd 4.0.2 → 4.0.3
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/all.common.js +1148 -0
- package/dist/form/index.js +235 -0
- package/dist/form-design/a-date-picker.js +142 -0
- package/dist/form-design/a-input.js +142 -0
- package/dist/form-design/index.js +54 -0
- package/dist/index.common.js +8 -607
- package/dist/index.js +69 -0
- package/dist/index.umd.js +1267 -634
- package/dist/index.umd.min.js +1 -1
- package/dist/table/index.js +499 -0
- package/package.json +5 -4
- package/src/form/index.ts +244 -0
- package/src/form-design/a-date-picker.ts +143 -0
- package/src/form-design/a-input.ts +143 -0
- package/src/form-design/index.ts +34 -0
- package/src/index.ts +71 -0
- package/src/table/index.ts +508 -0
- package/index.ts +0 -701
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.defineFormRender = defineFormRender;
|
|
7
|
+
var _vue = require("vue");
|
|
8
|
+
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
10
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
11
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
14
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
15
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
16
|
+
/**
|
|
17
|
+
* 表单 - 渲染器
|
|
18
|
+
*/
|
|
19
|
+
function defineFormRender(VxeUI) {
|
|
20
|
+
function isEmptyValue(cellValue) {
|
|
21
|
+
return cellValue === null || cellValue === undefined || cellValue === '';
|
|
22
|
+
}
|
|
23
|
+
function getOnName(type) {
|
|
24
|
+
return 'on' + type.substring(0, 1).toLocaleUpperCase() + type.substring(1);
|
|
25
|
+
}
|
|
26
|
+
function getModelProp(renderOpts) {
|
|
27
|
+
var prop = 'value';
|
|
28
|
+
switch (renderOpts.name) {
|
|
29
|
+
case 'ASwitch':
|
|
30
|
+
prop = 'checked';
|
|
31
|
+
break;
|
|
32
|
+
}
|
|
33
|
+
return prop;
|
|
34
|
+
}
|
|
35
|
+
function getModelEvent(renderOpts) {
|
|
36
|
+
var type = 'update:value';
|
|
37
|
+
switch (renderOpts.name) {
|
|
38
|
+
case 'ASwitch':
|
|
39
|
+
type = 'update:checked';
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
return type;
|
|
43
|
+
}
|
|
44
|
+
function getChangeEvent(renderOpts) {
|
|
45
|
+
return 'change';
|
|
46
|
+
}
|
|
47
|
+
function getItemProps(renderOpts, params, value, defaultProps) {
|
|
48
|
+
return _xeUtils["default"].assign({}, defaultProps, renderOpts.props, _defineProperty({}, getModelProp(renderOpts), value));
|
|
49
|
+
}
|
|
50
|
+
function formatText(cellValue) {
|
|
51
|
+
return '' + (isEmptyValue(cellValue) ? '' : cellValue);
|
|
52
|
+
}
|
|
53
|
+
function getOns(renderOpts, params, inputFunc, changeFunc) {
|
|
54
|
+
var events = renderOpts.events;
|
|
55
|
+
var modelEvent = getModelEvent(renderOpts);
|
|
56
|
+
var changeEvent = getChangeEvent(renderOpts);
|
|
57
|
+
var isSameEvent = changeEvent === modelEvent;
|
|
58
|
+
var ons = {};
|
|
59
|
+
_xeUtils["default"].objectEach(events, function (func, key) {
|
|
60
|
+
ons[getOnName(key)] = function () {
|
|
61
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
62
|
+
args[_key] = arguments[_key];
|
|
63
|
+
}
|
|
64
|
+
func.apply(void 0, [params].concat(args));
|
|
65
|
+
};
|
|
66
|
+
});
|
|
67
|
+
if (inputFunc) {
|
|
68
|
+
ons[getOnName(modelEvent)] = function (targetEvnt) {
|
|
69
|
+
inputFunc(targetEvnt);
|
|
70
|
+
if (events && events[modelEvent]) {
|
|
71
|
+
events[modelEvent](params, targetEvnt);
|
|
72
|
+
}
|
|
73
|
+
if (isSameEvent && changeFunc) {
|
|
74
|
+
changeFunc(targetEvnt);
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
if (!isSameEvent && changeFunc) {
|
|
79
|
+
ons[getOnName(changeEvent)] = function () {
|
|
80
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
81
|
+
args[_key2] = arguments[_key2];
|
|
82
|
+
}
|
|
83
|
+
changeFunc.apply(void 0, args);
|
|
84
|
+
if (events && events[changeEvent]) {
|
|
85
|
+
events[changeEvent].apply(events, [params].concat(args));
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
return ons;
|
|
90
|
+
}
|
|
91
|
+
function getItemOns(renderOpts, params) {
|
|
92
|
+
var $form = params.$form,
|
|
93
|
+
data = params.data,
|
|
94
|
+
field = params.field;
|
|
95
|
+
return getOns(renderOpts, params, function (value) {
|
|
96
|
+
// 处理 model 值双向绑定
|
|
97
|
+
_xeUtils["default"].set(data, field, value);
|
|
98
|
+
}, function () {
|
|
99
|
+
// 处理 change 事件相关逻辑
|
|
100
|
+
$form.updateStatus(params);
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
function cellText(cellValue) {
|
|
104
|
+
return [formatText(cellValue)];
|
|
105
|
+
}
|
|
106
|
+
function createFormItemRender(defaultProps) {
|
|
107
|
+
return function (renderOpts, params) {
|
|
108
|
+
var data = params.data,
|
|
109
|
+
field = params.field;
|
|
110
|
+
var name = renderOpts.name;
|
|
111
|
+
var attrs = renderOpts.attrs;
|
|
112
|
+
var itemValue = _xeUtils["default"].get(data, field);
|
|
113
|
+
return [(0, _vue.h)((0, _vue.resolveComponent)(name), _objectSpread(_objectSpread(_objectSpread({}, attrs), getItemProps(renderOpts, params, itemValue, defaultProps)), getItemOns(renderOpts, params)))];
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
function defaultButtonItemRender(renderOpts, params) {
|
|
117
|
+
var attrs = renderOpts.attrs;
|
|
118
|
+
var props = getItemProps(renderOpts, params, null);
|
|
119
|
+
return [(0, _vue.h)((0, _vue.resolveComponent)('a-button'), _objectSpread(_objectSpread(_objectSpread({}, attrs), props), getItemOns(renderOpts, params)), {
|
|
120
|
+
"default": function _default() {
|
|
121
|
+
return cellText(renderOpts.content || props.content);
|
|
122
|
+
}
|
|
123
|
+
})];
|
|
124
|
+
}
|
|
125
|
+
function defaultButtonsItemRender(renderOpts, params) {
|
|
126
|
+
var children = renderOpts.children;
|
|
127
|
+
if (children) {
|
|
128
|
+
return children.map(function (childRenderOpts) {
|
|
129
|
+
return defaultButtonItemRender(childRenderOpts, params)[0];
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
return [];
|
|
133
|
+
}
|
|
134
|
+
function createFormItemRadioAndCheckboxRender() {
|
|
135
|
+
return function (renderOpts, params) {
|
|
136
|
+
var name = renderOpts.name,
|
|
137
|
+
_renderOpts$options = renderOpts.options,
|
|
138
|
+
options = _renderOpts$options === void 0 ? [] : _renderOpts$options,
|
|
139
|
+
_renderOpts$optionPro = renderOpts.optionProps,
|
|
140
|
+
optionProps = _renderOpts$optionPro === void 0 ? {} : _renderOpts$optionPro;
|
|
141
|
+
var data = params.data,
|
|
142
|
+
field = params.field;
|
|
143
|
+
var attrs = renderOpts.attrs;
|
|
144
|
+
var labelProp = optionProps.label || 'label';
|
|
145
|
+
var valueProp = optionProps.value || 'value';
|
|
146
|
+
var itemValue = _xeUtils["default"].get(data, field);
|
|
147
|
+
return [(0, _vue.h)((0, _vue.resolveComponent)("".concat(name, "Group")), _objectSpread(_objectSpread(_objectSpread({}, attrs), getItemProps(renderOpts, params, itemValue)), getItemOns(renderOpts, params)), {
|
|
148
|
+
"default": function _default() {
|
|
149
|
+
return options.map(function (option, oIndex) {
|
|
150
|
+
return (0, _vue.h)((0, _vue.resolveComponent)(name), {
|
|
151
|
+
key: oIndex,
|
|
152
|
+
value: option[valueProp],
|
|
153
|
+
disabled: option.disabled
|
|
154
|
+
}, {
|
|
155
|
+
"default": function _default() {
|
|
156
|
+
return cellText(option[labelProp]);
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
})];
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
VxeUI.renderer.mixin({
|
|
165
|
+
AAutoComplete: {
|
|
166
|
+
renderFormItemContent: createFormItemRender()
|
|
167
|
+
},
|
|
168
|
+
AInput: {
|
|
169
|
+
renderFormItemContent: createFormItemRender()
|
|
170
|
+
},
|
|
171
|
+
AInputNumber: {
|
|
172
|
+
renderFormItemContent: createFormItemRender()
|
|
173
|
+
},
|
|
174
|
+
ASelect: {
|
|
175
|
+
renderFormItemContent: function renderFormItemContent(renderOpts, params) {
|
|
176
|
+
var _renderOpts$options2 = renderOpts.options,
|
|
177
|
+
options = _renderOpts$options2 === void 0 ? [] : _renderOpts$options2,
|
|
178
|
+
optionGroups = renderOpts.optionGroups;
|
|
179
|
+
var data = params.data,
|
|
180
|
+
field = params.field;
|
|
181
|
+
var attrs = renderOpts.attrs;
|
|
182
|
+
var itemValue = _xeUtils["default"].get(data, field);
|
|
183
|
+
var props = getItemProps(renderOpts, params, itemValue);
|
|
184
|
+
var ons = getItemOns(renderOpts, params);
|
|
185
|
+
if (optionGroups) {
|
|
186
|
+
return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, attrs), props), {}, {
|
|
187
|
+
options: optionGroups
|
|
188
|
+
}, ons))];
|
|
189
|
+
}
|
|
190
|
+
return [(0, _vue.h)((0, _vue.resolveComponent)('a-select'), _objectSpread(_objectSpread(_objectSpread({}, attrs), props), {}, {
|
|
191
|
+
options: props.options || options
|
|
192
|
+
}, ons))];
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
ACascader: {
|
|
196
|
+
renderFormItemContent: createFormItemRender()
|
|
197
|
+
},
|
|
198
|
+
ADatePicker: {
|
|
199
|
+
renderFormItemContent: createFormItemRender()
|
|
200
|
+
},
|
|
201
|
+
AMonthPicker: {
|
|
202
|
+
renderFormItemContent: createFormItemRender()
|
|
203
|
+
},
|
|
204
|
+
ARangePicker: {
|
|
205
|
+
renderFormItemContent: createFormItemRender()
|
|
206
|
+
},
|
|
207
|
+
AWeekPicker: {
|
|
208
|
+
renderFormItemContent: createFormItemRender()
|
|
209
|
+
},
|
|
210
|
+
ATimePicker: {
|
|
211
|
+
renderFormItemContent: createFormItemRender()
|
|
212
|
+
},
|
|
213
|
+
ATreeSelect: {
|
|
214
|
+
renderFormItemContent: createFormItemRender()
|
|
215
|
+
},
|
|
216
|
+
ARate: {
|
|
217
|
+
renderFormItemContent: createFormItemRender()
|
|
218
|
+
},
|
|
219
|
+
ASwitch: {
|
|
220
|
+
renderFormItemContent: createFormItemRender()
|
|
221
|
+
},
|
|
222
|
+
ARadio: {
|
|
223
|
+
renderFormItemContent: createFormItemRadioAndCheckboxRender()
|
|
224
|
+
},
|
|
225
|
+
ACheckbox: {
|
|
226
|
+
renderFormItemContent: createFormItemRadioAndCheckboxRender()
|
|
227
|
+
},
|
|
228
|
+
AButton: {
|
|
229
|
+
renderFormItemContent: defaultButtonItemRender
|
|
230
|
+
},
|
|
231
|
+
AButtons: {
|
|
232
|
+
renderFormItemContent: defaultButtonsItemRender
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createWidgetADatePicker = createWidgetADatePicker;
|
|
7
|
+
var _vue = require("vue");
|
|
8
|
+
function createWidgetADatePicker(VxeUI) {
|
|
9
|
+
var getWidgetADatePickerConfig = function getWidgetADatePickerConfig(params) {
|
|
10
|
+
return {
|
|
11
|
+
title: '日期',
|
|
12
|
+
icon: 'vxe-icon-input',
|
|
13
|
+
options: {
|
|
14
|
+
placeholder: ''
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
var WidgetADatePickerFormComponent = (0, _vue.defineComponent)({
|
|
19
|
+
props: {
|
|
20
|
+
renderOpts: {
|
|
21
|
+
type: Object,
|
|
22
|
+
"default": function _default() {
|
|
23
|
+
return {};
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
renderParams: {
|
|
27
|
+
type: Object,
|
|
28
|
+
"default": function _default() {
|
|
29
|
+
return {};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
emits: [],
|
|
34
|
+
setup: function setup(props) {
|
|
35
|
+
var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
|
|
36
|
+
var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
|
|
37
|
+
var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
|
|
38
|
+
return function () {
|
|
39
|
+
var renderParams = props.renderParams;
|
|
40
|
+
var widget = renderParams.widget;
|
|
41
|
+
return (0, _vue.h)(VxeUIFormComponent, {
|
|
42
|
+
"class": 'vxe-form-design--widget-render-form-wrapper',
|
|
43
|
+
vertical: true,
|
|
44
|
+
span: 24,
|
|
45
|
+
titleBold: true,
|
|
46
|
+
titleOverflow: true,
|
|
47
|
+
data: widget.options
|
|
48
|
+
}, {
|
|
49
|
+
"default": function _default() {
|
|
50
|
+
return [(0, _vue.h)(VxeUIFormItemComponent, {
|
|
51
|
+
title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
|
|
52
|
+
}, {
|
|
53
|
+
"default": function _default() {
|
|
54
|
+
return (0, _vue.h)((0, _vue.resolveComponent)('a-date-picker'), {
|
|
55
|
+
modelValue: widget.title,
|
|
56
|
+
'onUpdate:modelValue': function onUpdateModelValue(val) {
|
|
57
|
+
widget.title = val;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}), (0, _vue.h)(VxeUIFormItemComponent, {
|
|
62
|
+
title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
|
|
63
|
+
field: 'placeholder',
|
|
64
|
+
itemRender: {
|
|
65
|
+
name: 'VxeInput'
|
|
66
|
+
}
|
|
67
|
+
}), (0, _vue.h)(VxeUIFormItemComponent, {
|
|
68
|
+
title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
|
|
69
|
+
}, {
|
|
70
|
+
"default": function _default() {
|
|
71
|
+
return (0, _vue.h)(VxeUISwitchComponent, {
|
|
72
|
+
modelValue: widget.required,
|
|
73
|
+
'onUpdate:modelValue': function onUpdateModelValue(val) {
|
|
74
|
+
widget.required = val;
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
})];
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
var WidgetADatePickerViewComponent = (0, _vue.defineComponent)({
|
|
85
|
+
props: {
|
|
86
|
+
renderOpts: {
|
|
87
|
+
type: Object,
|
|
88
|
+
"default": function _default() {
|
|
89
|
+
return {};
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
renderParams: {
|
|
93
|
+
type: Object,
|
|
94
|
+
"default": function _default() {
|
|
95
|
+
return {};
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
emits: [],
|
|
100
|
+
setup: function setup(props) {
|
|
101
|
+
var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
|
|
102
|
+
var changeEvent = function changeEvent() {
|
|
103
|
+
var renderParams = props.renderParams;
|
|
104
|
+
var widget = renderParams.widget,
|
|
105
|
+
$formView = renderParams.$formView;
|
|
106
|
+
if ($formView) {
|
|
107
|
+
var itemValue = $formView ? $formView.getItemValue(widget) : null;
|
|
108
|
+
$formView.updateItemStatus(widget, itemValue);
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
return function () {
|
|
112
|
+
var renderParams = props.renderParams;
|
|
113
|
+
var widget = renderParams.widget,
|
|
114
|
+
$formView = renderParams.$formView;
|
|
115
|
+
var options = widget.options;
|
|
116
|
+
return (0, _vue.h)(VxeUIFormItemComponent, {
|
|
117
|
+
"class": ['vxe-form-design--widget-render-form-item'],
|
|
118
|
+
field: widget.field,
|
|
119
|
+
title: widget.title
|
|
120
|
+
}, {
|
|
121
|
+
"default": function _default() {
|
|
122
|
+
return (0, _vue.h)((0, _vue.resolveComponent)('a-date-picker'), {
|
|
123
|
+
modelValue: $formView ? $formView.getItemValue(widget) : null,
|
|
124
|
+
placeholder: options.placeholder,
|
|
125
|
+
onChange: changeEvent,
|
|
126
|
+
'onUpdate:modelValue': function onUpdateModelValue(val) {
|
|
127
|
+
if ($formView) {
|
|
128
|
+
$formView.setItemValue(widget, val);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
return {
|
|
138
|
+
getWidgetADatePickerConfig: getWidgetADatePickerConfig,
|
|
139
|
+
WidgetADatePickerFormComponent: WidgetADatePickerFormComponent,
|
|
140
|
+
WidgetADatePickerViewComponent: WidgetADatePickerViewComponent
|
|
141
|
+
};
|
|
142
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createWidgetAInput = createWidgetAInput;
|
|
7
|
+
var _vue = require("vue");
|
|
8
|
+
function createWidgetAInput(VxeUI) {
|
|
9
|
+
var getWidgetAInputConfig = function getWidgetAInputConfig(params) {
|
|
10
|
+
return {
|
|
11
|
+
title: '输入框',
|
|
12
|
+
icon: 'vxe-icon-input',
|
|
13
|
+
options: {
|
|
14
|
+
placeholder: ''
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
var WidgetAInputFormComponent = (0, _vue.defineComponent)({
|
|
19
|
+
props: {
|
|
20
|
+
renderOpts: {
|
|
21
|
+
type: Object,
|
|
22
|
+
"default": function _default() {
|
|
23
|
+
return {};
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
renderParams: {
|
|
27
|
+
type: Object,
|
|
28
|
+
"default": function _default() {
|
|
29
|
+
return {};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
emits: [],
|
|
34
|
+
setup: function setup(props) {
|
|
35
|
+
var VxeUIFormComponent = VxeUI.getComponent('VxeForm');
|
|
36
|
+
var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
|
|
37
|
+
var VxeUISwitchComponent = VxeUI.getComponent('VxeSwitch');
|
|
38
|
+
return function () {
|
|
39
|
+
var renderParams = props.renderParams;
|
|
40
|
+
var widget = renderParams.widget;
|
|
41
|
+
var options = widget.options;
|
|
42
|
+
return (0, _vue.h)(VxeUIFormComponent, {
|
|
43
|
+
"class": 'vxe-form-design--widget-render-form-wrapper',
|
|
44
|
+
vertical: true,
|
|
45
|
+
span: 24,
|
|
46
|
+
titleBold: true,
|
|
47
|
+
titleOverflow: true,
|
|
48
|
+
data: options
|
|
49
|
+
}, {
|
|
50
|
+
"default": function _default() {
|
|
51
|
+
return [(0, _vue.h)(VxeUIFormItemComponent, {
|
|
52
|
+
title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
|
|
53
|
+
}, {
|
|
54
|
+
"default": function _default() {
|
|
55
|
+
return (0, _vue.h)((0, _vue.resolveComponent)('a-input'), {
|
|
56
|
+
modelValue: widget.title,
|
|
57
|
+
placeholder: options.placeholder,
|
|
58
|
+
'onUpdate:modelValue': function onUpdateModelValue(val) {
|
|
59
|
+
widget.title = val;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}), (0, _vue.h)(VxeUIFormItemComponent, {
|
|
64
|
+
title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
|
|
65
|
+
field: 'placeholder',
|
|
66
|
+
itemRender: {
|
|
67
|
+
name: 'VxeInput'
|
|
68
|
+
}
|
|
69
|
+
}), (0, _vue.h)(VxeUIFormItemComponent, {
|
|
70
|
+
title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
|
|
71
|
+
}, {
|
|
72
|
+
"default": function _default() {
|
|
73
|
+
return (0, _vue.h)(VxeUISwitchComponent, {
|
|
74
|
+
modelValue: widget.required,
|
|
75
|
+
'onUpdate:modelValue': function onUpdateModelValue(val) {
|
|
76
|
+
widget.required = val;
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
})];
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
var WidgetAInputViewComponent = (0, _vue.defineComponent)({
|
|
87
|
+
props: {
|
|
88
|
+
renderOpts: {
|
|
89
|
+
type: Object,
|
|
90
|
+
"default": function _default() {
|
|
91
|
+
return {};
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
renderParams: {
|
|
95
|
+
type: Object,
|
|
96
|
+
"default": function _default() {
|
|
97
|
+
return {};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
emits: [],
|
|
102
|
+
setup: function setup(props) {
|
|
103
|
+
var VxeUIFormItemComponent = VxeUI.getComponent('VxeFormItem');
|
|
104
|
+
var changeEvent = function changeEvent() {
|
|
105
|
+
var renderParams = props.renderParams;
|
|
106
|
+
var widget = renderParams.widget,
|
|
107
|
+
$formView = renderParams.$formView;
|
|
108
|
+
if ($formView) {
|
|
109
|
+
var itemValue = $formView ? $formView.getItemValue(widget) : null;
|
|
110
|
+
$formView.updateItemStatus(widget, itemValue);
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
return function () {
|
|
114
|
+
var renderParams = props.renderParams;
|
|
115
|
+
var widget = renderParams.widget,
|
|
116
|
+
$formView = renderParams.$formView;
|
|
117
|
+
return (0, _vue.h)(VxeUIFormItemComponent, {
|
|
118
|
+
"class": ['vxe-form-design--widget-render-form-item'],
|
|
119
|
+
field: widget.field,
|
|
120
|
+
title: widget.title
|
|
121
|
+
}, {
|
|
122
|
+
"default": function _default() {
|
|
123
|
+
return (0, _vue.h)((0, _vue.resolveComponent)('a-input'), {
|
|
124
|
+
modelValue: $formView ? $formView.getItemValue(widget) : null,
|
|
125
|
+
onChange: changeEvent,
|
|
126
|
+
'onUpdate:modelValue': function onUpdateModelValue(val) {
|
|
127
|
+
if ($formView) {
|
|
128
|
+
$formView.setItemValue(widget, val);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
return {
|
|
138
|
+
getWidgetAInputConfig: getWidgetAInputConfig,
|
|
139
|
+
WidgetAInputFormComponent: WidgetAInputFormComponent,
|
|
140
|
+
WidgetAInputViewComponent: WidgetAInputViewComponent
|
|
141
|
+
};
|
|
142
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.defineFormDesignRender = defineFormDesignRender;
|
|
7
|
+
var _vue = require("vue");
|
|
8
|
+
var _aInput = require("./a-input");
|
|
9
|
+
var _aDatePicker = require("./a-date-picker");
|
|
10
|
+
/**
|
|
11
|
+
* 表单设计器 - 渲染器
|
|
12
|
+
*/
|
|
13
|
+
function defineFormDesignRender(VxeUI) {
|
|
14
|
+
var _createWidgetAInput = (0, _aInput.createWidgetAInput)(VxeUI),
|
|
15
|
+
getWidgetAInputConfig = _createWidgetAInput.getWidgetAInputConfig,
|
|
16
|
+
WidgetAInputViewComponent = _createWidgetAInput.WidgetAInputViewComponent,
|
|
17
|
+
WidgetAInputFormComponent = _createWidgetAInput.WidgetAInputFormComponent;
|
|
18
|
+
var _createWidgetADatePic = (0, _aDatePicker.createWidgetADatePicker)(VxeUI),
|
|
19
|
+
getWidgetADatePickerConfig = _createWidgetADatePic.getWidgetADatePickerConfig,
|
|
20
|
+
WidgetADatePickerViewComponent = _createWidgetADatePic.WidgetADatePickerViewComponent,
|
|
21
|
+
WidgetADatePickerFormComponent = _createWidgetADatePic.WidgetADatePickerFormComponent;
|
|
22
|
+
VxeUI.renderer.mixin({
|
|
23
|
+
AInput: {
|
|
24
|
+
createFormDesignWidgetConfig: getWidgetAInputConfig,
|
|
25
|
+
renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
|
|
26
|
+
return (0, _vue.h)(WidgetAInputViewComponent, {
|
|
27
|
+
renderOpts: renderOpts,
|
|
28
|
+
renderParams: renderParams
|
|
29
|
+
});
|
|
30
|
+
},
|
|
31
|
+
renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
|
|
32
|
+
return (0, _vue.h)(WidgetAInputFormComponent, {
|
|
33
|
+
renderOpts: renderOpts,
|
|
34
|
+
renderParams: renderParams
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
ADatePicker: {
|
|
39
|
+
createFormDesignWidgetConfig: getWidgetADatePickerConfig,
|
|
40
|
+
renderFormDesignWidgetView: function renderFormDesignWidgetView(renderOpts, renderParams) {
|
|
41
|
+
return (0, _vue.h)(WidgetADatePickerViewComponent, {
|
|
42
|
+
renderOpts: renderOpts,
|
|
43
|
+
renderParams: renderParams
|
|
44
|
+
});
|
|
45
|
+
},
|
|
46
|
+
renderFormDesignWidgetFormView: function renderFormDesignWidgetFormView(renderOpts, renderParams) {
|
|
47
|
+
return (0, _vue.h)(WidgetADatePickerFormComponent, {
|
|
48
|
+
renderOpts: renderOpts,
|
|
49
|
+
renderParams: renderParams
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|