@vxe-ui/plugin-render-element 4.0.7 → 4.0.9

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.
@@ -1,143 +1,143 @@
1
- import { defineComponent, h, PropType, resolveComponent, ComponentOptions } from 'vue'
2
-
3
- import type { VxeUIExport, VxeGlobalRendererHandles, VxeFormComponent, VxeFormItemComponent, VxeSwitchComponent } from 'vxe-pc-ui'
4
-
5
- interface WidgetElInputNumberFormObjVO {
6
- placeholder: string
7
- }
8
-
9
- export function createWidgetElInputNumber (VxeUI: VxeUIExport) {
10
- const getWidgetElInputNumberConfig = (params: VxeGlobalRendererHandles.CreateFormDesignWidgetConfigParams): VxeGlobalRendererHandles.CreateFormDesignWidgetConfigObj<WidgetElInputNumberFormObjVO> => {
11
- return {
12
- title: '数字',
13
- icon: 'vxe-icon-number',
14
- options: {
15
- placeholder: '请输入'
16
- }
17
- }
18
- }
19
-
20
- const WidgetElInputNumberFormComponent = defineComponent({
21
- props: {
22
- renderOpts: {
23
- type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewOptions>,
24
- default: () => ({})
25
- },
26
- renderParams: {
27
- type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewParams<WidgetElInputNumberFormObjVO>>,
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
-
37
- return () => {
38
- const { renderParams } = props
39
- const { widget } = renderParams
40
-
41
- return 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 () {
50
- return [
51
- h(VxeUIFormItemComponent, {
52
- title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
53
- }, {
54
- default () {
55
- return h(resolveComponent('el-input') as ComponentOptions, {
56
- modelValue: widget.title,
57
- 'onUpdate:modelValue' (val: any) {
58
- widget.title = val
59
- }
60
- })
61
- }
62
- }),
63
- h(VxeUIFormItemComponent, {
64
- title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
65
- field: 'placeholder',
66
- itemRender: { name: 'ElInput' }
67
- }),
68
- h(VxeUIFormItemComponent, {
69
- title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
70
- }, {
71
- default () {
72
- return h(VxeUISwitchComponent, {
73
- modelValue: widget.required,
74
- 'onUpdate:modelValue' (val: any) {
75
- widget.required = val
76
- }
77
- })
78
- }
79
- })
80
- ]
81
- }
82
- })
83
- }
84
- }
85
- })
86
-
87
- const WidgetElInputNumberViewComponent = defineComponent({
88
- props: {
89
- renderOpts: {
90
- type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewOptions>,
91
- default: () => ({})
92
- },
93
- renderParams: {
94
- type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewParams<WidgetElInputNumberFormObjVO>>,
95
- default: () => ({})
96
- }
97
- },
98
- emits: [],
99
- setup (props) {
100
- const VxeUIFormItemComponent = VxeUI.getComponent<VxeFormItemComponent>('VxeFormItem')
101
-
102
- const changeEvent = () => {
103
- const { renderParams } = props
104
- const { widget, $formView } = renderParams
105
- if ($formView) {
106
- const itemValue = $formView ? $formView.getItemValue(widget) : null
107
- $formView.updateItemStatus(widget, itemValue)
108
- }
109
- }
110
-
111
- return () => {
112
- const { renderParams } = props
113
- const { widget, $formView } = renderParams
114
- const { options } = widget
115
-
116
- return h(VxeUIFormItemComponent, {
117
- class: ['vxe-form-design--widget-render-form-item'],
118
- field: widget.field,
119
- title: widget.title
120
- }, {
121
- default () {
122
- return h(resolveComponent('el-input-number') as ComponentOptions, {
123
- modelValue: $formView ? $formView.getItemValue(widget) : null,
124
- placeholder: options.placeholder,
125
- onChange: changeEvent,
126
- 'onUpdate:modelValue' (val: any) {
127
- if ($formView) {
128
- $formView.setItemValue(widget, val)
129
- }
130
- }
131
- })
132
- }
133
- })
134
- }
135
- }
136
- })
137
-
138
- return {
139
- getWidgetElInputNumberConfig,
140
- WidgetElInputNumberFormComponent,
141
- WidgetElInputNumberViewComponent
142
- }
143
- }
1
+ import { defineComponent, h, PropType, resolveComponent, ComponentOptions } from 'vue'
2
+
3
+ import type { VxeUIExport, VxeGlobalRendererHandles, VxeFormComponent, VxeFormItemComponent, VxeSwitchComponent } from 'vxe-pc-ui'
4
+
5
+ interface WidgetElInputNumberFormObjVO {
6
+ placeholder: string
7
+ }
8
+
9
+ export function createWidgetElInputNumber (VxeUI: VxeUIExport) {
10
+ const getWidgetElInputNumberConfig = (params: VxeGlobalRendererHandles.CreateFormDesignWidgetConfigParams): VxeGlobalRendererHandles.CreateFormDesignWidgetConfigObj<WidgetElInputNumberFormObjVO> => {
11
+ return {
12
+ title: '数字',
13
+ icon: 'vxe-icon-number',
14
+ options: {
15
+ placeholder: '请输入'
16
+ }
17
+ }
18
+ }
19
+
20
+ const WidgetElInputNumberFormComponent = defineComponent({
21
+ props: {
22
+ renderOpts: {
23
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewOptions>,
24
+ default: () => ({})
25
+ },
26
+ renderParams: {
27
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewParams<WidgetElInputNumberFormObjVO>>,
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
+
37
+ return () => {
38
+ const { renderParams } = props
39
+ const { widget } = renderParams
40
+
41
+ return 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 () {
50
+ return [
51
+ h(VxeUIFormItemComponent, {
52
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
53
+ }, {
54
+ default () {
55
+ return h(resolveComponent('el-input') as ComponentOptions, {
56
+ modelValue: widget.title,
57
+ 'onUpdate:modelValue' (val: any) {
58
+ widget.title = val
59
+ }
60
+ })
61
+ }
62
+ }),
63
+ h(VxeUIFormItemComponent, {
64
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
65
+ field: 'placeholder',
66
+ itemRender: { name: 'ElInput' }
67
+ }),
68
+ h(VxeUIFormItemComponent, {
69
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
70
+ }, {
71
+ default () {
72
+ return h(VxeUISwitchComponent, {
73
+ modelValue: widget.required,
74
+ 'onUpdate:modelValue' (val: any) {
75
+ widget.required = val
76
+ }
77
+ })
78
+ }
79
+ })
80
+ ]
81
+ }
82
+ })
83
+ }
84
+ }
85
+ })
86
+
87
+ const WidgetElInputNumberViewComponent = defineComponent({
88
+ props: {
89
+ renderOpts: {
90
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewOptions>,
91
+ default: () => ({})
92
+ },
93
+ renderParams: {
94
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewParams<WidgetElInputNumberFormObjVO>>,
95
+ default: () => ({})
96
+ }
97
+ },
98
+ emits: [],
99
+ setup (props) {
100
+ const VxeUIFormItemComponent = VxeUI.getComponent<VxeFormItemComponent>('VxeFormItem')
101
+
102
+ const changeEvent = () => {
103
+ const { renderParams } = props
104
+ const { widget, $formView } = renderParams
105
+ if ($formView) {
106
+ const itemValue = $formView ? $formView.getItemValue(widget) : null
107
+ $formView.updateWidgetStatus(widget, itemValue)
108
+ }
109
+ }
110
+
111
+ return () => {
112
+ const { renderParams } = props
113
+ const { widget, $formView } = renderParams
114
+ const { options } = widget
115
+
116
+ return h(VxeUIFormItemComponent, {
117
+ class: ['vxe-form-design--widget-render-form-item'],
118
+ field: widget.field,
119
+ title: widget.title
120
+ }, {
121
+ default () {
122
+ return h(resolveComponent('el-input-number') as ComponentOptions, {
123
+ modelValue: $formView ? $formView.getItemValue(widget) : null,
124
+ placeholder: options.placeholder,
125
+ onChange: changeEvent,
126
+ 'onUpdate:modelValue' (val: any) {
127
+ if ($formView) {
128
+ $formView.setItemValue(widget, val)
129
+ }
130
+ }
131
+ })
132
+ }
133
+ })
134
+ }
135
+ }
136
+ })
137
+
138
+ return {
139
+ getWidgetElInputNumberConfig,
140
+ WidgetElInputNumberFormComponent,
141
+ WidgetElInputNumberViewComponent
142
+ }
143
+ }
@@ -1,166 +1,166 @@
1
- import { defineComponent, h, PropType, resolveComponent, ComponentOptions } from 'vue'
2
- import { useWidgetPropDataSource, WidgetDataSourceOptionObjVO } from './use'
3
- import XEUtils from 'xe-utils'
4
-
5
- import type { VxeUIExport, VxeGlobalRendererHandles, VxeFormComponent, VxeFormItemComponent, VxeSwitchComponent } from 'vxe-pc-ui'
6
-
7
- interface WidgetElRadioFormObjVO {
8
- options: WidgetDataSourceOptionObjVO[]
9
- }
10
-
11
- export function createWidgetElRadio (VxeUI: VxeUIExport) {
12
- const getWidgetElRadioConfig = (params: VxeGlobalRendererHandles.CreateFormDesignWidgetConfigParams): VxeGlobalRendererHandles.CreateFormDesignWidgetConfigObj<WidgetElRadioFormObjVO> => {
13
- return {
14
- title: '单选框',
15
- icon: 'vxe-icon-radio-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 WidgetElRadioFormComponent = defineComponent({
27
- props: {
28
- renderOpts: {
29
- type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewOptions>,
30
- default: () => ({})
31
- },
32
- renderParams: {
33
- type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewParams<WidgetElRadioFormObjVO>>,
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
-
43
- const { renderDataSourceFormItem } = useWidgetPropDataSource(VxeUI, props, false)
44
-
45
- return () => {
46
- const { renderParams } = props
47
- const { widget } = renderParams
48
-
49
- return h(VxeUIFormComponent, {
50
- class: 'vxe-form-design--widget-render-form-wrapper',
51
- vertical: true,
52
- span: 24,
53
- titleBold: true,
54
- titleOverflow: true,
55
- data: widget.options
56
- }, {
57
- default () {
58
- return [
59
- h(VxeUIFormItemComponent, {
60
- title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
61
- }, {
62
- default () {
63
- return h(resolveComponent('el-input') as ComponentOptions, {
64
- modelValue: widget.title,
65
- 'onUpdate:modelValue' (val: any) {
66
- widget.title = val
67
- }
68
- })
69
- }
70
- }),
71
- h(VxeUIFormItemComponent, {
72
- title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
73
- field: 'placeholder',
74
- itemRender: { name: 'ElInput' }
75
- }),
76
- h(VxeUIFormItemComponent, {
77
- title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
78
- }, {
79
- default () {
80
- return h(VxeUISwitchComponent, {
81
- modelValue: widget.required,
82
- 'onUpdate:modelValue' (val: any) {
83
- widget.required = val
84
- }
85
- })
86
- }
87
- }),
88
- renderDataSourceFormItem()
89
- ]
90
- }
91
- })
92
- }
93
- }
94
- })
95
-
96
- const WidgetElRadioViewComponent = defineComponent({
97
- props: {
98
- renderOpts: {
99
- type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewOptions>,
100
- default: () => ({})
101
- },
102
- renderParams: {
103
- type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewParams<WidgetElRadioFormObjVO>>,
104
- default: () => ({})
105
- }
106
- },
107
- emits: [],
108
- setup (props) {
109
- const VxeUIFormItemComponent = VxeUI.getComponent<VxeFormItemComponent>('VxeFormItem')
110
-
111
- const changeEvent = () => {
112
- const { renderParams } = props
113
- const { widget, $formView } = renderParams
114
- if ($formView) {
115
- const itemValue = $formView ? $formView.getItemValue(widget) : null
116
- $formView.updateItemStatus(widget, itemValue)
117
- }
118
- }
119
-
120
- return () => {
121
- const { renderParams } = props
122
- const { widget, $formView } = renderParams
123
- const { options } = widget
124
-
125
- return h(VxeUIFormItemComponent, {
126
- class: ['vxe-form-design--widget-render-form-item'],
127
- field: widget.field,
128
- title: widget.title
129
- }, {
130
- default () {
131
- return h(resolveComponent('el-radio-group') as ComponentOptions, {
132
- modelValue: $formView ? $formView.getItemValue(widget) : null,
133
- onChange: changeEvent,
134
- 'onUpdate:modelValue' (val: any) {
135
- if ($formView) {
136
- $formView.setItemValue(widget, val)
137
- }
138
- }
139
- }, {
140
- default: () => {
141
- return options.options
142
- ? options.options.map((item, index) => {
143
- return h(resolveComponent('el-radio') as ComponentOptions, {
144
- key: index,
145
- value: item.value
146
- }, {
147
- default () {
148
- return `${item.value || ''}`
149
- }
150
- })
151
- })
152
- : []
153
- }
154
- })
155
- }
156
- })
157
- }
158
- }
159
- })
160
-
161
- return {
162
- getWidgetElRadioConfig,
163
- WidgetElRadioFormComponent,
164
- WidgetElRadioViewComponent
165
- }
166
- }
1
+ import { defineComponent, h, PropType, resolveComponent, ComponentOptions } from 'vue'
2
+ import { useWidgetPropDataSource, WidgetDataSourceOptionObjVO } from './use'
3
+ import XEUtils from 'xe-utils'
4
+
5
+ import type { VxeUIExport, VxeGlobalRendererHandles, VxeFormComponent, VxeFormItemComponent, VxeSwitchComponent } from 'vxe-pc-ui'
6
+
7
+ interface WidgetElRadioFormObjVO {
8
+ options: WidgetDataSourceOptionObjVO[]
9
+ }
10
+
11
+ export function createWidgetElRadio (VxeUI: VxeUIExport) {
12
+ const getWidgetElRadioConfig = (params: VxeGlobalRendererHandles.CreateFormDesignWidgetConfigParams): VxeGlobalRendererHandles.CreateFormDesignWidgetConfigObj<WidgetElRadioFormObjVO> => {
13
+ return {
14
+ title: '单选框',
15
+ icon: 'vxe-icon-radio-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 WidgetElRadioFormComponent = defineComponent({
27
+ props: {
28
+ renderOpts: {
29
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewOptions>,
30
+ default: () => ({})
31
+ },
32
+ renderParams: {
33
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetFormViewParams<WidgetElRadioFormObjVO>>,
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
+
43
+ const { renderDataSourceFormItem } = useWidgetPropDataSource(VxeUI, props, false)
44
+
45
+ return () => {
46
+ const { renderParams } = props
47
+ const { widget } = renderParams
48
+
49
+ return h(VxeUIFormComponent, {
50
+ class: 'vxe-form-design--widget-render-form-wrapper',
51
+ vertical: true,
52
+ span: 24,
53
+ titleBold: true,
54
+ titleOverflow: true,
55
+ data: widget.options
56
+ }, {
57
+ default () {
58
+ return [
59
+ h(VxeUIFormItemComponent, {
60
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.name')
61
+ }, {
62
+ default () {
63
+ return h(resolveComponent('el-input') as ComponentOptions, {
64
+ modelValue: widget.title,
65
+ 'onUpdate:modelValue' (val: any) {
66
+ widget.title = val
67
+ }
68
+ })
69
+ }
70
+ }),
71
+ h(VxeUIFormItemComponent, {
72
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.placeholder'),
73
+ field: 'placeholder',
74
+ itemRender: { name: 'ElInput' }
75
+ }),
76
+ h(VxeUIFormItemComponent, {
77
+ title: VxeUI.getI18n('vxe.formDesign.widgetProp.required')
78
+ }, {
79
+ default () {
80
+ return h(VxeUISwitchComponent, {
81
+ modelValue: widget.required,
82
+ 'onUpdate:modelValue' (val: any) {
83
+ widget.required = val
84
+ }
85
+ })
86
+ }
87
+ }),
88
+ renderDataSourceFormItem()
89
+ ]
90
+ }
91
+ })
92
+ }
93
+ }
94
+ })
95
+
96
+ const WidgetElRadioViewComponent = defineComponent({
97
+ props: {
98
+ renderOpts: {
99
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewOptions>,
100
+ default: () => ({})
101
+ },
102
+ renderParams: {
103
+ type: Object as PropType<VxeGlobalRendererHandles.RenderFormDesignWidgetViewParams<WidgetElRadioFormObjVO>>,
104
+ default: () => ({})
105
+ }
106
+ },
107
+ emits: [],
108
+ setup (props) {
109
+ const VxeUIFormItemComponent = VxeUI.getComponent<VxeFormItemComponent>('VxeFormItem')
110
+
111
+ const changeEvent = () => {
112
+ const { renderParams } = props
113
+ const { widget, $formView } = renderParams
114
+ if ($formView) {
115
+ const itemValue = $formView ? $formView.getItemValue(widget) : null
116
+ $formView.updateWidgetStatus(widget, itemValue)
117
+ }
118
+ }
119
+
120
+ return () => {
121
+ const { renderParams } = props
122
+ const { widget, $formView } = renderParams
123
+ const { options } = widget
124
+
125
+ return h(VxeUIFormItemComponent, {
126
+ class: ['vxe-form-design--widget-render-form-item'],
127
+ field: widget.field,
128
+ title: widget.title
129
+ }, {
130
+ default () {
131
+ return h(resolveComponent('el-radio-group') as ComponentOptions, {
132
+ modelValue: $formView ? $formView.getItemValue(widget) : null,
133
+ onChange: changeEvent,
134
+ 'onUpdate:modelValue' (val: any) {
135
+ if ($formView) {
136
+ $formView.setItemValue(widget, val)
137
+ }
138
+ }
139
+ }, {
140
+ default: () => {
141
+ return options.options
142
+ ? options.options.map((item, index) => {
143
+ return h(resolveComponent('el-radio') as ComponentOptions, {
144
+ key: index,
145
+ value: item.value
146
+ }, {
147
+ default () {
148
+ return `${item.value || ''}`
149
+ }
150
+ })
151
+ })
152
+ : []
153
+ }
154
+ })
155
+ }
156
+ })
157
+ }
158
+ }
159
+ })
160
+
161
+ return {
162
+ getWidgetElRadioConfig,
163
+ WidgetElRadioFormComponent,
164
+ WidgetElRadioViewComponent
165
+ }
166
+ }