@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.
@@ -0,0 +1,244 @@
1
+ import { h, resolveComponent, ComponentOptions } from 'vue'
2
+ import XEUtils from 'xe-utils'
3
+
4
+ import type { VxeUIExport, VxeGlobalRendererHandles, FormItemContentRenderParams } from 'vxe-pc-ui'
5
+
6
+ /**
7
+ * 表单 - 渲染器
8
+ */
9
+ export function defineFormRender (VxeUI: VxeUIExport) {
10
+ function isEmptyValue (cellValue: any) {
11
+ return cellValue === null || cellValue === undefined || cellValue === ''
12
+ }
13
+
14
+ function getOnName (type: string) {
15
+ return 'on' + type.substring(0, 1).toLocaleUpperCase() + type.substring(1)
16
+ }
17
+
18
+ function getModelProp (renderOpts: VxeGlobalRendererHandles.RenderOptions) {
19
+ let prop = 'value'
20
+ switch (renderOpts.name) {
21
+ case 'ASwitch':
22
+ prop = 'checked'
23
+ break
24
+ }
25
+ return prop
26
+ }
27
+
28
+ function getModelEvent (renderOpts: VxeGlobalRendererHandles.RenderOptions) {
29
+ let type = 'update:value'
30
+ switch (renderOpts.name) {
31
+ case 'ASwitch':
32
+ type = 'update:checked'
33
+ break
34
+ }
35
+ return type
36
+ }
37
+
38
+ function getChangeEvent (renderOpts: VxeGlobalRendererHandles.RenderOptions) {
39
+ return 'change'
40
+ }
41
+
42
+ function getItemProps (renderOpts: VxeGlobalRendererHandles.RenderOptions, params: FormItemContentRenderParams, value: any, defaultProps?: { [prop: string]: any }) {
43
+ return XEUtils.assign({}, defaultProps, renderOpts.props, { [getModelProp(renderOpts)]: value })
44
+ }
45
+
46
+ function formatText (cellValue: any) {
47
+ return '' + (isEmptyValue(cellValue) ? '' : cellValue)
48
+ }
49
+
50
+ function getOns (renderOpts: VxeGlobalRendererHandles.RenderOptions, params: VxeGlobalRendererHandles.RenderParams, inputFunc?: Function, changeFunc?: Function) {
51
+ const { events } = renderOpts
52
+ const modelEvent = getModelEvent(renderOpts)
53
+ const changeEvent = getChangeEvent(renderOpts)
54
+ const isSameEvent = changeEvent === modelEvent
55
+ const ons: { [type: string]: Function } = {}
56
+ XEUtils.objectEach(events, (func: Function, key: string) => {
57
+ ons[getOnName(key)] = function (...args: any[]) {
58
+ func(params, ...args)
59
+ }
60
+ })
61
+ if (inputFunc) {
62
+ ons[getOnName(modelEvent)] = function (targetEvnt: any) {
63
+ inputFunc(targetEvnt)
64
+ if (events && events[modelEvent]) {
65
+ events[modelEvent](params, targetEvnt)
66
+ }
67
+ if (isSameEvent && changeFunc) {
68
+ changeFunc(targetEvnt)
69
+ }
70
+ }
71
+ }
72
+ if (!isSameEvent && changeFunc) {
73
+ ons[getOnName(changeEvent)] = function (...args: any[]) {
74
+ changeFunc(...args)
75
+ if (events && events[changeEvent]) {
76
+ events[changeEvent](params, ...args)
77
+ }
78
+ }
79
+ }
80
+ return ons
81
+ }
82
+
83
+ function getItemOns (renderOpts: VxeGlobalRendererHandles.RenderOptions, params: FormItemContentRenderParams) {
84
+ const { $form, data, field } = params
85
+ return getOns(renderOpts, params, (value: any) => {
86
+ // 处理 model 值双向绑定
87
+ XEUtils.set(data, field, value)
88
+ }, () => {
89
+ // 处理 change 事件相关逻辑
90
+ $form.updateStatus(params)
91
+ })
92
+ }
93
+
94
+ function cellText (cellValue: any): string[] {
95
+ return [formatText(cellValue)]
96
+ }
97
+
98
+ function createFormItemRender (defaultProps?: { [key: string]: any }) {
99
+ return function (renderOpts: VxeGlobalRendererHandles.RenderItemContentOptions & { name: string }, params: FormItemContentRenderParams) {
100
+ const { data, field } = params
101
+ const { name } = renderOpts
102
+ const { attrs } = renderOpts
103
+ const itemValue = XEUtils.get(data, field)
104
+ return [
105
+ h(resolveComponent(name), {
106
+ ...attrs,
107
+ ...getItemProps(renderOpts, params, itemValue, defaultProps),
108
+ ...getItemOns(renderOpts, params)
109
+ })
110
+ ]
111
+ }
112
+ }
113
+
114
+ function defaultButtonItemRender (renderOpts: VxeGlobalRendererHandles.RenderItemContentOptions, params: FormItemContentRenderParams) {
115
+ const { attrs } = renderOpts
116
+ const props = getItemProps(renderOpts, params, null)
117
+ return [
118
+ h(resolveComponent('a-button') as ComponentOptions, {
119
+ ...attrs,
120
+ ...props,
121
+ ...getItemOns(renderOpts, params)
122
+ }, {
123
+ default: () => cellText(renderOpts.content || props.content)
124
+ })
125
+ ]
126
+ }
127
+
128
+ function defaultButtonsItemRender (renderOpts: VxeGlobalRendererHandles.RenderItemContentOptions, params: FormItemContentRenderParams) {
129
+ const { children } = renderOpts
130
+ if (children) {
131
+ return children.map((childRenderOpts: VxeGlobalRendererHandles.RenderItemContentOptions) => defaultButtonItemRender(childRenderOpts, params)[0])
132
+ }
133
+ return []
134
+ }
135
+
136
+ function createFormItemRadioAndCheckboxRender () {
137
+ return function (renderOpts: VxeGlobalRendererHandles.RenderItemContentOptions & { name: string }, params: FormItemContentRenderParams) {
138
+ const { name, options = [], optionProps = {} } = renderOpts
139
+ const { data, field } = params
140
+ const { attrs } = renderOpts
141
+ const labelProp = optionProps.label || 'label'
142
+ const valueProp = optionProps.value || 'value'
143
+ const itemValue = XEUtils.get(data, field)
144
+ return [
145
+ h(resolveComponent(`${name}Group`) as ComponentOptions, {
146
+ ...attrs,
147
+ ...getItemProps(renderOpts, params, itemValue),
148
+ ...getItemOns(renderOpts, params)
149
+ }, {
150
+ default: () => {
151
+ return options.map((option, oIndex) => {
152
+ return h(resolveComponent(name) as ComponentOptions, {
153
+ key: oIndex,
154
+ value: option[valueProp],
155
+ disabled: option.disabled
156
+ }, {
157
+ default: () => cellText(option[labelProp])
158
+ })
159
+ })
160
+ }
161
+ })
162
+ ]
163
+ }
164
+ }
165
+
166
+ VxeUI.renderer.mixin({
167
+ AAutoComplete: {
168
+ renderFormItemContent: createFormItemRender()
169
+ },
170
+ AInput: {
171
+ renderFormItemContent: createFormItemRender()
172
+ },
173
+ AInputNumber: {
174
+ renderFormItemContent: createFormItemRender()
175
+ },
176
+ ASelect: {
177
+ renderFormItemContent (renderOpts, params) {
178
+ const { options = [], optionGroups } = renderOpts
179
+ const { data, field } = params
180
+ const { attrs } = renderOpts
181
+ const itemValue = XEUtils.get(data, field)
182
+ const props = getItemProps(renderOpts, params, itemValue)
183
+ const ons = getItemOns(renderOpts, params)
184
+ if (optionGroups) {
185
+ return [
186
+ h(resolveComponent('a-select') as ComponentOptions, {
187
+ ...attrs,
188
+ ...props,
189
+ options: optionGroups,
190
+ ...ons
191
+ })
192
+ ]
193
+ }
194
+ return [
195
+ h(resolveComponent('a-select') as ComponentOptions, {
196
+ ...attrs,
197
+ ...props,
198
+ options: props.options || options,
199
+ ...ons
200
+ })
201
+ ]
202
+ }
203
+ },
204
+ ACascader: {
205
+ renderFormItemContent: createFormItemRender()
206
+ },
207
+ ADatePicker: {
208
+ renderFormItemContent: createFormItemRender()
209
+ },
210
+ AMonthPicker: {
211
+ renderFormItemContent: createFormItemRender()
212
+ },
213
+ ARangePicker: {
214
+ renderFormItemContent: createFormItemRender()
215
+ },
216
+ AWeekPicker: {
217
+ renderFormItemContent: createFormItemRender()
218
+ },
219
+ ATimePicker: {
220
+ renderFormItemContent: createFormItemRender()
221
+ },
222
+ ATreeSelect: {
223
+ renderFormItemContent: createFormItemRender()
224
+ },
225
+ ARate: {
226
+ renderFormItemContent: createFormItemRender()
227
+ },
228
+ ASwitch: {
229
+ renderFormItemContent: createFormItemRender()
230
+ },
231
+ ARadio: {
232
+ renderFormItemContent: createFormItemRadioAndCheckboxRender()
233
+ },
234
+ ACheckbox: {
235
+ renderFormItemContent: createFormItemRadioAndCheckboxRender()
236
+ },
237
+ AButton: {
238
+ renderFormItemContent: defaultButtonItemRender
239
+ },
240
+ AButtons: {
241
+ renderFormItemContent: defaultButtonsItemRender
242
+ }
243
+ })
244
+ }
@@ -0,0 +1,164 @@
1
+ import { defineComponent, h, PropType, resolveComponent, ComponentOptions, computed } from 'vue'
2
+ import { useWidgetPropDataSource, WidgetDataSourceOptionObjVO } from './use'
3
+ import XEUtils from 'xe-utils'
4
+
5
+ import type { VxeUIExport, VxeGlobalRendererHandles, VxeFormComponent, VxeFormItemComponent, VxeSwitchComponent, VxeInputComponent } from 'vxe-pc-ui'
6
+
7
+ interface WidgetACheckboxFormObjVO {
8
+ options: WidgetDataSourceOptionObjVO[]
9
+ }
10
+
11
+ export function createWidgetACheckbox (VxeUI: VxeUIExport) {
12
+ const getWidgetACheckboxConfig = (params: VxeGlobalRendererHandles.CreateFormDesignWidgetConfigParams): VxeGlobalRendererHandles.CreateFormDesignWidgetConfigObj<WidgetACheckboxFormObjVO> => {
13
+ return {
14
+ title: '复选框',
15
+ icon: 'vxe-icon-checkbox-checked',
16
+ options: {
17
+ options: XEUtils.range(0, 3).map((v, i) => {
18
+ return {
19
+ value: VxeUI.getI18n('vxe.formDesign.widgetProp.dataSource.defValue', [i + 1])
20
+ }
21
+ })
22
+ }
23
+ }
24
+ }
25
+
26
+ const WidgetACheckboxFormComponent = defineComponent({
27
+ props: {
28
+ renderOpts: {
29
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewOptions>,
30
+ default: () => ({})
31
+ },
32
+ renderParams: {
33
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewParams<WidgetACheckboxFormObjVO>>,
34
+ default: () => ({})
35
+ }
36
+ },
37
+ emits: [],
38
+ setup (props) {
39
+ const VxeUIFormComponent = VxeUI.getComponent<VxeFormComponent>('VxeForm')
40
+ const VxeUIFormItemComponent = VxeUI.getComponent<VxeFormItemComponent>('VxeFormItem')
41
+ const VxeUISwitchComponent = VxeUI.getComponent<VxeSwitchComponent>('VxeSwitch')
42
+ const VxeUIInputComponent = VxeUI.getComponent<VxeInputComponent>('VxeInput')
43
+
44
+ const { renderDataSourceFormItem } = useWidgetPropDataSource(VxeUI, props, false)
45
+
46
+ return () => {
47
+ const { renderParams } = props
48
+ const { widget } = renderParams
49
+
50
+ return h(VxeUIFormComponent, {
51
+ class: 'vxe-form-design--widget-render-form-wrapper',
52
+ vertical: true,
53
+ span: 24,
54
+ titleBold: true,
55
+ titleOverflow: true,
56
+ data: widget.options
57
+ }, {
58
+ default () {
59
+ return [
60
+ h(VxeUIFormItemComponent, {
61
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
62
+ }, {
63
+ default () {
64
+ return h(VxeUIInputComponent, {
65
+ modelValue: widget.title,
66
+ 'onUpdate:modelValue' (val: any) {
67
+ widget.title = val
68
+ }
69
+ })
70
+ }
71
+ }),
72
+ h(VxeUIFormItemComponent, {
73
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
74
+ field: 'placeholder',
75
+ itemRender: { name: 'ElInput' }
76
+ }),
77
+ h(VxeUIFormItemComponent, {
78
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
79
+ }, {
80
+ default () {
81
+ return h(VxeUISwitchComponent, {
82
+ modelValue: widget.required,
83
+ 'onUpdate:modelValue' (val: any) {
84
+ widget.required = val
85
+ }
86
+ })
87
+ }
88
+ }),
89
+ renderDataSourceFormItem()
90
+ ]
91
+ }
92
+ })
93
+ }
94
+ }
95
+ })
96
+
97
+ const WidgetACheckboxViewComponent = defineComponent({
98
+ props: {
99
+ renderOpts: {
100
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewOptions>,
101
+ default: () => ({})
102
+ },
103
+ renderParams: {
104
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewParams<WidgetACheckboxFormObjVO>>,
105
+ default: () => ({})
106
+ }
107
+ },
108
+ emits: [],
109
+ setup (props) {
110
+ const VxeUIFormItemComponent = VxeUI.getComponent<VxeFormItemComponent>('VxeFormItem')
111
+
112
+ const checkboxOptions = computed(() => {
113
+ const { renderParams } = props
114
+ const { widget } = renderParams
115
+ const { options } = widget
116
+ return options.options.map(item => {
117
+ return {
118
+ label: item.value,
119
+ value: item.value
120
+ }
121
+ })
122
+ })
123
+
124
+ const changeEvent = () => {
125
+ const { renderParams } = props
126
+ const { widget, $formView } = renderParams
127
+ if ($formView) {
128
+ const itemValue = $formView ? $formView.getItemValue(widget) : null
129
+ $formView.updateItemStatus(widget, itemValue)
130
+ }
131
+ }
132
+
133
+ return () => {
134
+ const { renderParams } = props
135
+ const { widget, $formView } = renderParams
136
+
137
+ return h(VxeUIFormItemComponent, {
138
+ class: ['vxe-form-design--widget-render-form-item'],
139
+ field: widget.field,
140
+ title: widget.title
141
+ }, {
142
+ default () {
143
+ return h(resolveComponent('a-checkbox-group') as ComponentOptions, {
144
+ value: $formView ? $formView.getItemValue(widget) : null,
145
+ options: checkboxOptions.value,
146
+ onChange: changeEvent,
147
+ 'onUpdate:value' (val: any) {
148
+ if ($formView) {
149
+ $formView.setItemValue(widget, val)
150
+ }
151
+ }
152
+ })
153
+ }
154
+ })
155
+ }
156
+ }
157
+ })
158
+
159
+ return {
160
+ getWidgetACheckboxConfig,
161
+ WidgetACheckboxFormComponent,
162
+ WidgetACheckboxViewComponent
163
+ }
164
+ }
@@ -0,0 +1,144 @@
1
+ import { defineComponent, h, PropType, resolveComponent, ComponentOptions } from 'vue'
2
+
3
+ import type { VxeUIExport, VxeGlobalRendererHandles, VxeFormComponent, VxeFormItemComponent, VxeSwitchComponent, VxeInputComponent } from 'vxe-pc-ui'
4
+
5
+ interface WidgetADatePickerFormObjVO {
6
+ placeholder: string
7
+ }
8
+
9
+ export function createWidgetADatePicker (VxeUI: VxeUIExport) {
10
+ const getWidgetADatePickerConfig = (params: VxeGlobalRendererHandles.CreateFormDesignWidgetConfigParams): VxeGlobalRendererHandles.CreateFormDesignWidgetConfigObj<WidgetADatePickerFormObjVO> => {
11
+ return {
12
+ title: '日期',
13
+ icon: 'vxe-icon-input',
14
+ options: {
15
+ placeholder: ''
16
+ }
17
+ }
18
+ }
19
+
20
+ const WidgetADatePickerFormComponent = defineComponent({
21
+ props: {
22
+ renderOpts: {
23
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewOptions>,
24
+ default: () => ({})
25
+ },
26
+ renderParams: {
27
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewParams<WidgetADatePickerFormObjVO>>,
28
+ default: () => ({})
29
+ }
30
+ },
31
+ emits: [],
32
+ setup (props) {
33
+ const VxeUIFormComponent = VxeUI.getComponent<VxeFormComponent>('VxeForm')
34
+ const VxeUIFormItemComponent = VxeUI.getComponent<VxeFormItemComponent>('VxeFormItem')
35
+ const VxeUISwitchComponent = VxeUI.getComponent<VxeSwitchComponent>('VxeSwitch')
36
+ const VxeUIInputComponent = VxeUI.getComponent<VxeInputComponent>('VxeInput')
37
+
38
+ return () => {
39
+ const { renderParams } = props
40
+ const { widget } = renderParams
41
+
42
+ return 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: widget.options
49
+ }, {
50
+ default () {
51
+ return [
52
+ h(VxeUIFormItemComponent, {
53
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
54
+ }, {
55
+ default () {
56
+ return h(VxeUIInputComponent, {
57
+ modelValue: widget.title,
58
+ 'onUpdate:modelValue' (val: any) {
59
+ widget.title = val
60
+ }
61
+ })
62
+ }
63
+ }),
64
+ h(VxeUIFormItemComponent, {
65
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
66
+ field: 'placeholder',
67
+ itemRender: { name: 'VxeInput' }
68
+ }),
69
+ h(VxeUIFormItemComponent, {
70
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
71
+ }, {
72
+ default () {
73
+ return h(VxeUISwitchComponent, {
74
+ modelValue: widget.required,
75
+ 'onUpdate:modelValue' (val: any) {
76
+ widget.required = val
77
+ }
78
+ })
79
+ }
80
+ })
81
+ ]
82
+ }
83
+ })
84
+ }
85
+ }
86
+ })
87
+
88
+ const WidgetADatePickerViewComponent = defineComponent({
89
+ props: {
90
+ renderOpts: {
91
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewOptions>,
92
+ default: () => ({})
93
+ },
94
+ renderParams: {
95
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewParams<WidgetADatePickerFormObjVO>>,
96
+ default: () => ({})
97
+ }
98
+ },
99
+ emits: [],
100
+ setup (props) {
101
+ const VxeUIFormItemComponent = VxeUI.getComponent<VxeFormItemComponent>('VxeFormItem')
102
+
103
+ const changeEvent = () => {
104
+ const { renderParams } = props
105
+ const { widget, $formView } = renderParams
106
+ if ($formView) {
107
+ const itemValue = $formView ? $formView.getItemValue(widget) : null
108
+ $formView.updateItemStatus(widget, itemValue)
109
+ }
110
+ }
111
+
112
+ return () => {
113
+ const { renderParams } = props
114
+ const { widget, $formView } = renderParams
115
+ const { options } = widget
116
+
117
+ return h(VxeUIFormItemComponent, {
118
+ class: ['vxe-form-design--widget-render-form-item'],
119
+ field: widget.field,
120
+ title: widget.title
121
+ }, {
122
+ default () {
123
+ return h(resolveComponent('a-date-picker') as ComponentOptions, {
124
+ value: $formView ? $formView.getItemValue(widget) : null,
125
+ placeholder: options.placeholder,
126
+ onChange: changeEvent,
127
+ 'onUpdate:value' (val: any) {
128
+ if ($formView) {
129
+ $formView.setItemValue(widget, val)
130
+ }
131
+ }
132
+ })
133
+ }
134
+ })
135
+ }
136
+ }
137
+ })
138
+
139
+ return {
140
+ getWidgetADatePickerConfig,
141
+ WidgetADatePickerFormComponent,
142
+ WidgetADatePickerViewComponent
143
+ }
144
+ }
@@ -0,0 +1,101 @@
1
+ import { h } from 'vue'
2
+ import { createWidgetAInput } from './input-widget'
3
+ import { createWidgetATextarea } from './textarea-widget'
4
+ import { createWidgetAInputNumber } from './number-input-widget'
5
+ import { createWidgetADatePicker } from './date-picker-widget'
6
+ import { createWidgetASelect } from './select-widget'
7
+ import { createWidgetARadio } from './radio-widget'
8
+ import { createWidgetACheckbox } from './checkbox-widget'
9
+ import { createWidgetASwitch } from './switch-widget'
10
+
11
+ import type { VxeUIExport } from 'vxe-pc-ui'
12
+
13
+ /**
14
+ * 表单设计器 - 渲染器
15
+ */
16
+ export function defineFormDesignRender (VxeUI: VxeUIExport) {
17
+ const { getWidgetAInputConfig, WidgetAInputViewComponent, WidgetAInputFormComponent } = createWidgetAInput(VxeUI)
18
+ const { getWidgetATextareaConfig, WidgetATextareaViewComponent, WidgetATextareaFormComponent } = createWidgetATextarea(VxeUI)
19
+ const { getWidgetAInputNumberConfig, WidgetAInputNumberViewComponent, WidgetAInputNumberFormComponent } = createWidgetAInputNumber(VxeUI)
20
+ const { getWidgetADatePickerConfig, WidgetADatePickerViewComponent, WidgetADatePickerFormComponent } = createWidgetADatePicker(VxeUI)
21
+ const { getWidgetASelectConfig, WidgetASelectViewComponent, WidgetASelectFormComponent } = createWidgetASelect(VxeUI)
22
+ const { getWidgetARadioConfig, WidgetARadioViewComponent, WidgetARadioFormComponent } = createWidgetARadio(VxeUI)
23
+ const { getWidgetACheckboxConfig, WidgetACheckboxViewComponent, WidgetACheckboxFormComponent } = createWidgetACheckbox(VxeUI)
24
+ const { getWidgetASwitchConfig, WidgetASwitchViewComponent, WidgetASwitchFormComponent } = createWidgetASwitch(VxeUI)
25
+
26
+ VxeUI.renderer.mixin({
27
+ AInputWidget: {
28
+ createFormDesignWidgetConfig: getWidgetAInputConfig,
29
+ renderFormDesignWidgetView (renderOpts, renderParams) {
30
+ return h(WidgetAInputViewComponent, { renderOpts, renderParams })
31
+ },
32
+ renderFormDesignWidgetFormView (renderOpts, renderParams) {
33
+ return h(WidgetAInputFormComponent, { renderOpts, renderParams })
34
+ }
35
+ },
36
+ ATextareaWidget: {
37
+ createFormDesignWidgetConfig: getWidgetATextareaConfig,
38
+ renderFormDesignWidgetView (renderOpts, renderParams) {
39
+ return h(WidgetATextareaViewComponent, { renderOpts, renderParams })
40
+ },
41
+ renderFormDesignWidgetFormView (renderOpts, renderParams) {
42
+ return h(WidgetATextareaFormComponent, { renderOpts, renderParams })
43
+ }
44
+ },
45
+ ANumberInputWidget: {
46
+ createFormDesignWidgetConfig: getWidgetAInputNumberConfig,
47
+ renderFormDesignWidgetView (renderOpts, renderParams) {
48
+ return h(WidgetAInputNumberViewComponent, { renderOpts, renderParams })
49
+ },
50
+ renderFormDesignWidgetFormView (renderOpts, renderParams) {
51
+ return h(WidgetAInputNumberFormComponent, { renderOpts, renderParams })
52
+ }
53
+ },
54
+ ADatePickerWidget: {
55
+ createFormDesignWidgetConfig: getWidgetADatePickerConfig,
56
+ renderFormDesignWidgetView (renderOpts, renderParams) {
57
+ return h(WidgetADatePickerViewComponent, { renderOpts, renderParams })
58
+ },
59
+ renderFormDesignWidgetFormView (renderOpts, renderParams) {
60
+ return h(WidgetADatePickerFormComponent, { renderOpts, renderParams })
61
+ }
62
+ },
63
+ ASelectWidget: {
64
+ createFormDesignWidgetConfig: getWidgetASelectConfig,
65
+ renderFormDesignWidgetView (renderOpts, renderParams) {
66
+ return h(WidgetASelectViewComponent, { renderOpts, renderParams })
67
+ },
68
+ renderFormDesignWidgetFormView (renderOpts, renderParams) {
69
+ return h(WidgetASelectFormComponent, { renderOpts, renderParams })
70
+ }
71
+ },
72
+ ARadioWidget: {
73
+ createFormDesignWidgetConfig: getWidgetARadioConfig,
74
+ renderFormDesignWidgetView (renderOpts, renderParams) {
75
+ return h(WidgetARadioViewComponent, { renderOpts, renderParams })
76
+ },
77
+ renderFormDesignWidgetFormView (renderOpts, renderParams) {
78
+ return h(WidgetARadioFormComponent, { renderOpts, renderParams })
79
+ }
80
+ },
81
+ ACheckboxWidget: {
82
+ createFormDesignWidgetConfig: getWidgetACheckboxConfig,
83
+ createFormDesignWidgetFieldValue: () => [],
84
+ renderFormDesignWidgetView (renderOpts: any, renderParams: any) {
85
+ return h(WidgetACheckboxViewComponent, { renderOpts, renderParams })
86
+ },
87
+ renderFormDesignWidgetFormView (renderOpts: any, renderParams: any) {
88
+ return h(WidgetACheckboxFormComponent, { renderOpts, renderParams })
89
+ }
90
+ },
91
+ ASwitchWidget: {
92
+ createFormDesignWidgetConfig: getWidgetASwitchConfig,
93
+ renderFormDesignWidgetView (renderOpts, renderParams) {
94
+ return h(WidgetASwitchViewComponent, { renderOpts, renderParams })
95
+ },
96
+ renderFormDesignWidgetFormView (renderOpts, renderParams) {
97
+ return h(WidgetASwitchFormComponent, { renderOpts, renderParams })
98
+ }
99
+ }
100
+ })
101
+ }