@jari-ace/element-plus-component 0.1.9 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/README.md +18 -18
  2. package/dist/components/userPicker/src/UserPicker.vue.d.ts +17 -0
  3. package/dist/components/userPicker/src/UserPicker.vue.d.ts.map +1 -1
  4. package/dist/components/userPicker/src/UserPicker.vue.js +15 -0
  5. package/dist/components/userPicker/src/UserPicker.vue.js.map +1 -1
  6. package/dist/components/userSelectDialog/src/userSelectDialog.vue.d.ts +17 -0
  7. package/dist/components/userSelectDialog/src/userSelectDialog.vue.d.ts.map +1 -1
  8. package/dist/components/userSelectDialog/src/userSelectDialog.vue.js +15 -0
  9. package/dist/components/userSelectDialog/src/userSelectDialog.vue.js.map +1 -1
  10. package/dist/hooks/useClassificationLevels.d.ts +21 -0
  11. package/dist/hooks/useClassificationLevels.d.ts.map +1 -0
  12. package/dist/hooks/useClassificationLevels.js +55 -0
  13. package/dist/hooks/useClassificationLevels.js.map +1 -0
  14. package/dist/hooks/useUserRefQuery.d.ts +6 -0
  15. package/dist/hooks/useUserRefQuery.d.ts.map +1 -1
  16. package/dist/hooks/useUserRefQuery.js +4 -0
  17. package/dist/hooks/useUserRefQuery.js.map +1 -1
  18. package/dist/index.d.ts +0 -1
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +0 -1
  21. package/dist/index.js.map +1 -1
  22. package/lib/index.css +1 -1
  23. package/lib/index.js +740 -723
  24. package/lib/index.umd.cjs +2 -2
  25. package/package.json +61 -61
  26. package/packages/components/autoComplete/JaAutoComplete.vue +47 -47
  27. package/packages/components/autoComplete/index.ts +5 -5
  28. package/packages/components/avatar/JaAvatar.vue +126 -126
  29. package/packages/components/avatar/avatarToken.ts +11 -11
  30. package/packages/components/avatar/defaultImg.ts +14 -14
  31. package/packages/components/avatar/index.ts +7 -7
  32. package/packages/components/button/JaButton.vue +51 -51
  33. package/packages/components/button/index.ts +4 -4
  34. package/packages/components/channelPicker/index.ts +7 -7
  35. package/packages/components/channelPicker/src/ChannelPicker.vue +43 -43
  36. package/packages/components/channelPicker/src/JaChannelPicker.vue +42 -42
  37. package/packages/components/checkbox/JaCheckbox.vue +73 -73
  38. package/packages/components/checkbox/index.ts +4 -4
  39. package/packages/components/checkboxGroup/JaCheckboxGroup.vue +45 -45
  40. package/packages/components/checkboxGroup/index.ts +4 -4
  41. package/packages/components/customGroupTree/index.ts +10 -10
  42. package/packages/components/customGroupTree/src/customGroupTree.vue +91 -91
  43. package/packages/components/datePicker/JaDatePicker.vue +52 -52
  44. package/packages/components/datePicker/index.ts +4 -4
  45. package/packages/components/departmentPicker/index.ts +4 -4
  46. package/packages/components/departmentPicker/src/DepartmentPicker.vue +107 -107
  47. package/packages/components/departmentPicker/src/consts.ts +2 -2
  48. package/packages/components/departmentTree/index.ts +10 -10
  49. package/packages/components/departmentTree/src/departmentTree.vue +135 -135
  50. package/packages/components/dropdownButton/JaDropdownButton.vue +59 -59
  51. package/packages/components/dropdownButton/index.ts +4 -4
  52. package/packages/components/enumList/EnumListInput.vue +107 -107
  53. package/packages/components/enumList/JaEnumList.vue +39 -39
  54. package/packages/components/enumList/index.ts +7 -7
  55. package/packages/components/enumPicker/index.ts +5 -5
  56. package/packages/components/enumPicker/src/EnumPicker.vue +103 -103
  57. package/packages/components/form/JaForm.vue +186 -186
  58. package/packages/components/form/index.ts +5 -5
  59. package/packages/components/form/types.ts +4 -4
  60. package/packages/components/formItem/JaFormItem.vue +68 -68
  61. package/packages/components/formItem/index.ts +4 -4
  62. package/packages/components/index.ts +34 -34
  63. package/packages/components/input/JaInput.vue +143 -143
  64. package/packages/components/input/index.ts +4 -4
  65. package/packages/components/inputI18n/I18nBundleEditor.vue +76 -76
  66. package/packages/components/inputI18n/InputI18n.vue +146 -146
  67. package/packages/components/inputI18n/JaInputI18n.vue +50 -50
  68. package/packages/components/inputI18n/index.ts +8 -8
  69. package/packages/components/inputNumber/JaInputNumber.vue +98 -98
  70. package/packages/components/inputNumber/index.ts +4 -4
  71. package/packages/components/mapItemList/JaMapItemList.vue +35 -35
  72. package/packages/components/mapItemList/MapItemListInput.vue +191 -191
  73. package/packages/components/mapItemList/index.ts +7 -7
  74. package/packages/components/numberList/JaNumberList.vue +36 -36
  75. package/packages/components/numberList/NumberListInput.vue +111 -111
  76. package/packages/components/numberList/index.ts +7 -7
  77. package/packages/components/properyPicker/JaPropertyPicker.vue +38 -38
  78. package/packages/components/properyPicker/PropertyPicker.vue +314 -314
  79. package/packages/components/properyPicker/index.ts +7 -7
  80. package/packages/components/radioGroup/JaRadioGroup.vue +50 -50
  81. package/packages/components/radioGroup/index.ts +4 -4
  82. package/packages/components/rolePicker/RoleEditor.vue +129 -129
  83. package/packages/components/rolePicker/RolePicker.vue +44 -44
  84. package/packages/components/rolePicker/RolePickerRaw.vue +56 -56
  85. package/packages/components/rolePicker/baseRolePicker.vue +87 -87
  86. package/packages/components/rolePicker/index.ts +10 -10
  87. package/packages/components/scrollbar/Scrollbar.vue +89 -89
  88. package/packages/components/scrollbar/index.ts +5 -5
  89. package/packages/components/scrollbar/utils.ts +17 -17
  90. package/packages/components/select/JaSelect.vue +48 -48
  91. package/packages/components/select/index.ts +4 -4
  92. package/packages/components/stringList/JaStringList.vue +36 -36
  93. package/packages/components/stringList/StringListInput.vue +96 -96
  94. package/packages/components/stringList/index.ts +7 -7
  95. package/packages/components/switch/JaSwitch.vue +50 -50
  96. package/packages/components/switch/index.ts +4 -4
  97. package/packages/components/timePicker/JaTimePicker.vue +52 -52
  98. package/packages/components/timePicker/index.ts +5 -5
  99. package/packages/components/tip/index.ts +4 -4
  100. package/packages/components/tip/src/AceTip.vue +43 -43
  101. package/packages/components/upload/index.ts +6 -6
  102. package/packages/components/upload/src/Upload.vue +25 -25
  103. package/packages/components/upload/src/type.ts +3 -3
  104. package/packages/components/userGroupPicker/index.ts +4 -4
  105. package/packages/components/userGroupPicker/src/UserGroupPicker.vue +94 -94
  106. package/packages/components/userGroupTree/index.ts +10 -10
  107. package/packages/components/userGroupTree/src/userGroupTree.vue +149 -149
  108. package/packages/components/userPicker/index.ts +10 -10
  109. package/packages/components/userPicker/src/CustomGroupManager.vue +189 -189
  110. package/packages/components/userPicker/src/JaUserList.vue +283 -283
  111. package/packages/components/userPicker/src/JaUserPicker.vue +37 -37
  112. package/packages/components/userPicker/src/UserPicker.vue +376 -368
  113. package/packages/components/userSelectDialog/index.ts +6 -6
  114. package/packages/components/userSelectDialog/src/userSelectDialog.vue +462 -455
  115. package/packages/components/userTag/UserInfoTag.vue +397 -397
  116. package/packages/components/userTag/index.ts +6 -6
  117. package/packages/components/userTag/sharedAxios.ts +8 -8
  118. package/packages/directives/auth/index.ts +41 -41
  119. package/packages/directives/autofocus/index.ts +29 -29
  120. package/packages/directives/index.ts +10 -10
  121. package/packages/directives/shortcut/index.ts +192 -192
  122. package/packages/hooks/useAppInstances.ts +34 -34
  123. package/packages/hooks/useBridage.ts +157 -157
  124. package/packages/hooks/useClassificationLevels.ts +62 -0
  125. package/packages/hooks/useDateTimeShortCuts.ts +65 -65
  126. package/packages/hooks/useRealms.ts +28 -28
  127. package/packages/hooks/useTreeData.ts +45 -45
  128. package/packages/hooks/useUserRefQuery.ts +232 -224
  129. package/packages/index.ts +21 -22
  130. package/packages/list.json +7 -7
  131. package/packages/types/custom.d.ts +13 -13
  132. package/packages/types/window.d.ts +16 -16
  133. package/packages/utils/install.ts +43 -43
  134. package/packages/utils/objectUtils.ts +31 -31
  135. package/theme-style/fonts/iconfont.json +5196 -5196
  136. package/theme-style/index.scss +10 -10
  137. package/theme-style/styles/element-plus-var.scss +1419 -1419
  138. package/theme-style/styles/iconfont.css +2979 -2979
  139. package/theme-style/styles/theme-var.scss +72 -72
  140. package/theme-style/styles/transition.scss +122 -122
@@ -1,186 +1,186 @@
1
- <script setup lang="ts">
2
- import {type PropType, provide, ref, computed, watch} from "vue";
3
- import {ElForm, type FormInstance, type FormRules} from "element-plus";
4
- import {type ValidationInstance} from "../../hooks/useBackendValidations";
5
- import type {JaFormModel} from "./types";
6
-
7
- interface Props {
8
- model: JaFormModel,
9
- inline?:boolean,
10
- labelPosition?: "left" | "top" | "right",
11
- labelWidth?: string | number,
12
- labelSuffix?: string,
13
- hideRequiredAsterisk?: boolean,
14
- showMessage?: boolean,
15
- inlineMessage?: boolean,
16
- statusIcon?: boolean,
17
- validateOnRuleChange?: boolean,
18
- rules?: FormRules,
19
- size?: "small" | "default" | "large",
20
- disabled?: boolean,
21
- scrollToError?: boolean,
22
- validator: ValidationInstance,
23
- }
24
-
25
- const formRef = ref<FormInstance | undefined>(undefined);
26
-
27
-
28
- const props = withDefaults(defineProps<Props>(),{
29
- inline:false,
30
- labelPosition:'top',
31
- hideRequiredAsterisk:true,
32
- showMessage:true,
33
- inlineMessage:true,
34
- statusIcon:false,
35
- validateOnRuleChange:true,
36
- size:'small',
37
- scrollToError:true,
38
-
39
- })
40
-
41
- // const props = defineProps({
42
- // model: {
43
- // type: Object as PropType<JaFormModel>,
44
- // required: true,
45
- // },
46
- // inline: {
47
- // type: Boolean,
48
- // default: false,
49
- // },
50
- // labelPosition: {
51
- // type: String as PropType<"left" | "top" | "right">,
52
- // default: "top",
53
- // },
54
- // labelWidth: {
55
- // type: [String, Number],
56
- // },
57
- // labelSuffix: {
58
- // type: String,
59
- // },
60
- // hideRequiredAsterisk: {
61
- // type: Boolean,
62
- // default: false,
63
- // },
64
- // showMessage: {
65
- // type: Boolean,
66
- // default: true,
67
- // },
68
- // inlineMessage: {
69
- // type: Boolean,
70
- // default: true,
71
- // },
72
- // statusIcon: {
73
- // type: Boolean,
74
- // default: false,
75
- // },
76
- // validateOnRuleChange: {
77
- // type: Boolean,
78
- // default: true,
79
- // },
80
- // rules: {
81
- // type: Object as PropType<FormRules>,
82
- // default: {},
83
- // },
84
- // size: {
85
- // type: String as PropType<"small" | "default" | "large">,
86
- // default: "small",
87
- // },
88
- // disabled: {
89
- // type: Boolean,
90
- // default: false,
91
- // },
92
- // scrollToError: {
93
- // type: Boolean,
94
- // default: true,
95
- // },
96
- // validator: {
97
- // type: Object as PropType<ValidationInstance>,
98
- // required: true,
99
- // },
100
- // });
101
-
102
- defineEmits(["validate", "click"]);
103
- provide("aceFormValidator", props.validator);
104
- provide("aceFormModel", props.model);
105
- provide("aceFormSize", props.size);
106
-
107
- const rules = computed<FormRules>(() => {
108
- return {
109
- ...props.rules,
110
- ...props.validator.rules,
111
- };
112
- });
113
-
114
- defineExpose({
115
- elForm: formRef,
116
- getElForm:():FormInstance|undefined=>formRef.value,
117
- validate:async (submit: () => Promise<any>, onFail?: () => void) => {
118
- if(!formRef)return;
119
- //先清空之前的校验
120
- formRef.value.clearValidate();
121
- //判断是否有传入rules如果有则先执行 formRef.value!.validate()
122
- if(props.rules){
123
- await formRef.value.validate((valid,fields)=>{
124
- //判断校验是否成功
125
- if(valid){
126
- //前端校验已成功,执行异步submit
127
- submit()
128
- .then(() => {
129
- //校验通过清楚所有的错误校验信息
130
- props.validator?.clearFiledErrors();
131
- })
132
- .catch(() => {
133
- //失败
134
- formRef.value.validate();
135
- if (onFail) onFail();
136
- });
137
- }else{
138
- console.log('error submit!',fields)
139
- }
140
- })
141
- }else{
142
- submit()
143
- .then(() => {
144
- props.validator?.clearFiledErrors();
145
- })
146
- .catch(async () => {
147
- await formRef.value.validate();
148
- if (onFail) onFail();
149
- });
150
- }
151
-
152
-
153
-
154
- },
155
- });
156
-
157
- watch(() => props.model.formData, () => {
158
- props.validator?.clearFiledErrors();
159
- })
160
- </script>
161
-
162
- <template>
163
- <el-form
164
- ref="formRef"
165
- :model="model.formData"
166
- :rules="rules"
167
- :inline="inline"
168
- :label-position="labelPosition"
169
- :label-width="labelWidth"
170
- :label-suffix="labelSuffix"
171
- :hide-required-asterisk="hideRequiredAsterisk"
172
- :show-message="showMessage"
173
- :inline-message="inlineMessage"
174
- :status-icon="statusIcon"
175
- :validate-on-rule-change="validateOnRuleChange"
176
- :size="size"
177
- :disabled="disabled"
178
- :scroll-to-error="scrollToError"
179
- @validate="(prop, isValid, message) => $emit('validate', prop, isValid,message)"
180
- @click="() => $emit('click')"
181
- >
182
- <slot></slot>
183
- </el-form>
184
- </template>
185
-
186
- <style scoped lang="scss"></style>
1
+ <script setup lang="ts">
2
+ import {type PropType, provide, ref, computed, watch} from "vue";
3
+ import {ElForm, type FormInstance, type FormRules} from "element-plus";
4
+ import {type ValidationInstance} from "../../hooks/useBackendValidations";
5
+ import type {JaFormModel} from "./types";
6
+
7
+ interface Props {
8
+ model: JaFormModel,
9
+ inline?:boolean,
10
+ labelPosition?: "left" | "top" | "right",
11
+ labelWidth?: string | number,
12
+ labelSuffix?: string,
13
+ hideRequiredAsterisk?: boolean,
14
+ showMessage?: boolean,
15
+ inlineMessage?: boolean,
16
+ statusIcon?: boolean,
17
+ validateOnRuleChange?: boolean,
18
+ rules?: FormRules,
19
+ size?: "small" | "default" | "large",
20
+ disabled?: boolean,
21
+ scrollToError?: boolean,
22
+ validator: ValidationInstance,
23
+ }
24
+
25
+ const formRef = ref<FormInstance | undefined>(undefined);
26
+
27
+
28
+ const props = withDefaults(defineProps<Props>(),{
29
+ inline:false,
30
+ labelPosition:'top',
31
+ hideRequiredAsterisk:true,
32
+ showMessage:true,
33
+ inlineMessage:true,
34
+ statusIcon:false,
35
+ validateOnRuleChange:true,
36
+ size:'small',
37
+ scrollToError:true,
38
+
39
+ })
40
+
41
+ // const props = defineProps({
42
+ // model: {
43
+ // type: Object as PropType<JaFormModel>,
44
+ // required: true,
45
+ // },
46
+ // inline: {
47
+ // type: Boolean,
48
+ // default: false,
49
+ // },
50
+ // labelPosition: {
51
+ // type: String as PropType<"left" | "top" | "right">,
52
+ // default: "top",
53
+ // },
54
+ // labelWidth: {
55
+ // type: [String, Number],
56
+ // },
57
+ // labelSuffix: {
58
+ // type: String,
59
+ // },
60
+ // hideRequiredAsterisk: {
61
+ // type: Boolean,
62
+ // default: false,
63
+ // },
64
+ // showMessage: {
65
+ // type: Boolean,
66
+ // default: true,
67
+ // },
68
+ // inlineMessage: {
69
+ // type: Boolean,
70
+ // default: true,
71
+ // },
72
+ // statusIcon: {
73
+ // type: Boolean,
74
+ // default: false,
75
+ // },
76
+ // validateOnRuleChange: {
77
+ // type: Boolean,
78
+ // default: true,
79
+ // },
80
+ // rules: {
81
+ // type: Object as PropType<FormRules>,
82
+ // default: {},
83
+ // },
84
+ // size: {
85
+ // type: String as PropType<"small" | "default" | "large">,
86
+ // default: "small",
87
+ // },
88
+ // disabled: {
89
+ // type: Boolean,
90
+ // default: false,
91
+ // },
92
+ // scrollToError: {
93
+ // type: Boolean,
94
+ // default: true,
95
+ // },
96
+ // validator: {
97
+ // type: Object as PropType<ValidationInstance>,
98
+ // required: true,
99
+ // },
100
+ // });
101
+
102
+ defineEmits(["validate", "click"]);
103
+ provide("aceFormValidator", props.validator);
104
+ provide("aceFormModel", props.model);
105
+ provide("aceFormSize", props.size);
106
+
107
+ const rules = computed<FormRules>(() => {
108
+ return {
109
+ ...props.rules,
110
+ ...props.validator.rules,
111
+ };
112
+ });
113
+
114
+ defineExpose({
115
+ elForm: formRef,
116
+ getElForm:():FormInstance|undefined=>formRef.value,
117
+ validate:async (submit: () => Promise<any>, onFail?: () => void) => {
118
+ if(!formRef)return;
119
+ //先清空之前的校验
120
+ formRef.value.clearValidate();
121
+ //判断是否有传入rules如果有则先执行 formRef.value!.validate()
122
+ if(props.rules){
123
+ await formRef.value.validate((valid,fields)=>{
124
+ //判断校验是否成功
125
+ if(valid){
126
+ //前端校验已成功,执行异步submit
127
+ submit()
128
+ .then(() => {
129
+ //校验通过清楚所有的错误校验信息
130
+ props.validator?.clearFiledErrors();
131
+ })
132
+ .catch(() => {
133
+ //失败
134
+ formRef.value.validate();
135
+ if (onFail) onFail();
136
+ });
137
+ }else{
138
+ console.log('error submit!',fields)
139
+ }
140
+ })
141
+ }else{
142
+ submit()
143
+ .then(() => {
144
+ props.validator?.clearFiledErrors();
145
+ })
146
+ .catch(async () => {
147
+ await formRef.value.validate();
148
+ if (onFail) onFail();
149
+ });
150
+ }
151
+
152
+
153
+
154
+ },
155
+ });
156
+
157
+ watch(() => props.model.formData, () => {
158
+ props.validator?.clearFiledErrors();
159
+ })
160
+ </script>
161
+
162
+ <template>
163
+ <el-form
164
+ ref="formRef"
165
+ :model="model.formData"
166
+ :rules="rules"
167
+ :inline="inline"
168
+ :label-position="labelPosition"
169
+ :label-width="labelWidth"
170
+ :label-suffix="labelSuffix"
171
+ :hide-required-asterisk="hideRequiredAsterisk"
172
+ :show-message="showMessage"
173
+ :inline-message="inlineMessage"
174
+ :status-icon="statusIcon"
175
+ :validate-on-rule-change="validateOnRuleChange"
176
+ :size="size"
177
+ :disabled="disabled"
178
+ :scroll-to-error="scrollToError"
179
+ @validate="(prop, isValid, message) => $emit('validate', prop, isValid,message)"
180
+ @click="() => $emit('click')"
181
+ >
182
+ <slot></slot>
183
+ </el-form>
184
+ </template>
185
+
186
+ <style scoped lang="scss"></style>
@@ -1,5 +1,5 @@
1
- import {withInstall, type SFCWithInstall} from "../../utils/install";
2
- import Form from "./JaForm.vue";
3
- export const JaForm: SFCWithInstall<typeof Form> = withInstall(Form);
4
- export * from "./types"
5
- export default Form;
1
+ import {withInstall, type SFCWithInstall} from "../../utils/install";
2
+ import Form from "./JaForm.vue";
3
+ export const JaForm: SFCWithInstall<typeof Form> = withInstall(Form);
4
+ export * from "./types"
5
+ export default Form;
@@ -1,4 +1,4 @@
1
- export interface JaFormModel {
2
- formData: Record<string, any>,
3
- [key: string | number | symbol]: any
4
- }
1
+ export interface JaFormModel {
2
+ formData: Record<string, any>,
3
+ [key: string | number | symbol]: any
4
+ }
@@ -1,68 +1,68 @@
1
- <script setup lang="ts">
2
- import {provide, ref, withDefaults, defineProps, defineExpose} from 'vue'
3
- import {ElFormItem, ElIcon, ElText, type FormItemRule, ElTooltip} from 'element-plus'
4
- import {QuestionFilled} from "@element-plus/icons-vue";
5
-
6
- const props = withDefaults(defineProps<{
7
- prop?: string | string[]
8
- rules?: FormItemRule | FormItemRule[]
9
- label?: string
10
- labelWidth?: string | number
11
- labelRemark?: string
12
- required?: boolean
13
- error?: string
14
- showMessage?: boolean
15
- inlineMessage?: boolean
16
- size?: 'small' | 'default' | 'large'
17
- }>(), {
18
- required: false,
19
- showMessage: true,
20
- inlineMessage: true,
21
- size: 'small'
22
- })
23
-
24
- provide('aceFormItemProp', props.prop)
25
-
26
- const formItem = ref<typeof ElFormItem | null>(null)
27
- defineExpose({
28
- resetField: () => {
29
- formItem.value!.resetField()
30
- },
31
- clearValidate: () => {
32
- formItem.value!.clearValidate()
33
- },
34
- elFormItem: formItem
35
- })
36
-
37
- </script>
38
-
39
- <template>
40
- <el-form-item ref="formItem"
41
- :prop="prop"
42
- :rules="rules"
43
- :label-width="labelWidth"
44
- :error="error"
45
- :show-message="showMessage"
46
- :inline-message="inlineMessage"
47
- :size="size">
48
- <template #label>
49
- <el-text class="el-form-item__label">
50
- {{ props.label }}
51
- <span style="color:red" v-if="props.required">*</span>
52
- <el-tooltip
53
- v-if="labelRemark"
54
- placement="top">
55
- <el-icon>
56
- <question-filled/>
57
- </el-icon>
58
- <template #content>
59
- <div v-html="labelRemark"/>
60
- </template>
61
- </el-tooltip>
62
- </el-text>
63
- </template>
64
- <slot></slot>
65
- <slot name="error"></slot>
66
- </el-form-item>
67
- </template>
68
-
1
+ <script setup lang="ts">
2
+ import {provide, ref, withDefaults, defineProps, defineExpose} from 'vue'
3
+ import {ElFormItem, ElIcon, ElText, type FormItemRule, ElTooltip} from 'element-plus'
4
+ import {QuestionFilled} from "@element-plus/icons-vue";
5
+
6
+ const props = withDefaults(defineProps<{
7
+ prop?: string | string[]
8
+ rules?: FormItemRule | FormItemRule[]
9
+ label?: string
10
+ labelWidth?: string | number
11
+ labelRemark?: string
12
+ required?: boolean
13
+ error?: string
14
+ showMessage?: boolean
15
+ inlineMessage?: boolean
16
+ size?: 'small' | 'default' | 'large'
17
+ }>(), {
18
+ required: false,
19
+ showMessage: true,
20
+ inlineMessage: true,
21
+ size: 'small'
22
+ })
23
+
24
+ provide('aceFormItemProp', props.prop)
25
+
26
+ const formItem = ref<typeof ElFormItem | null>(null)
27
+ defineExpose({
28
+ resetField: () => {
29
+ formItem.value!.resetField()
30
+ },
31
+ clearValidate: () => {
32
+ formItem.value!.clearValidate()
33
+ },
34
+ elFormItem: formItem
35
+ })
36
+
37
+ </script>
38
+
39
+ <template>
40
+ <el-form-item ref="formItem"
41
+ :prop="prop"
42
+ :rules="rules"
43
+ :label-width="labelWidth"
44
+ :error="error"
45
+ :show-message="showMessage"
46
+ :inline-message="inlineMessage"
47
+ :size="size">
48
+ <template #label>
49
+ <el-text class="el-form-item__label">
50
+ {{ props.label }}
51
+ <span style="color:red" v-if="props.required">*</span>
52
+ <el-tooltip
53
+ v-if="labelRemark"
54
+ placement="top">
55
+ <el-icon>
56
+ <question-filled/>
57
+ </el-icon>
58
+ <template #content>
59
+ <div v-html="labelRemark"/>
60
+ </template>
61
+ </el-tooltip>
62
+ </el-text>
63
+ </template>
64
+ <slot></slot>
65
+ <slot name="error"></slot>
66
+ </el-form-item>
67
+ </template>
68
+
@@ -1,4 +1,4 @@
1
- import {type SFCWithInstall, withInstall} from "../../utils/install";
2
- import FormItem from "./JaFormItem.vue";
3
- export const JaFormItem: SFCWithInstall<typeof FormItem> = withInstall(FormItem);
4
- export default FormItem;
1
+ import {type SFCWithInstall, withInstall} from "../../utils/install";
2
+ import FormItem from "./JaFormItem.vue";
3
+ export const JaFormItem: SFCWithInstall<typeof FormItem> = withInstall(FormItem);
4
+ export default FormItem;
@@ -1,34 +1,34 @@
1
- export * from "./upload";
2
- export * from "./tip";
3
- export * from "./form"
4
- export * from "./formItem"
5
- export * from "./input"
6
- export * from "./checkbox"
7
- export * from "./inputNumber"
8
- export * from "./select"
9
- export * from "./datePicker"
10
- export * from "./button"
11
- export * from "./dropdownButton"
12
- export * from "./switch"
13
- export * from "./stringList"
14
- export * from "./numberList"
15
- export * from "./enumList"
16
- export * from "./mapItemList"
17
- export * from "./departmentPicker"
18
- export * from "./avatar"
19
- export * from "./userTag"
20
- export * from "./userPicker"
21
- export * from "./departmentTree"
22
- export * from "./userSelectDialog"
23
- export * from "./timePicker"
24
- export * from "./scrollbar"
25
- export * from "./userGroupTree"
26
- export * from "./userGroupPicker"
27
- export * from "./autoComplete"
28
- export * from "./radioGroup"
29
- export * from "./rolePicker"
30
- export * from "./channelPicker"
31
- export * from "./properyPicker"
32
- export * from "./inputI18n"
33
- export * from "./checkboxGroup"
34
- export * from "./enumPicker"
1
+ export * from "./upload";
2
+ export * from "./tip";
3
+ export * from "./form"
4
+ export * from "./formItem"
5
+ export * from "./input"
6
+ export * from "./checkbox"
7
+ export * from "./inputNumber"
8
+ export * from "./select"
9
+ export * from "./datePicker"
10
+ export * from "./button"
11
+ export * from "./dropdownButton"
12
+ export * from "./switch"
13
+ export * from "./stringList"
14
+ export * from "./numberList"
15
+ export * from "./enumList"
16
+ export * from "./mapItemList"
17
+ export * from "./departmentPicker"
18
+ export * from "./avatar"
19
+ export * from "./userTag"
20
+ export * from "./userPicker"
21
+ export * from "./departmentTree"
22
+ export * from "./userSelectDialog"
23
+ export * from "./timePicker"
24
+ export * from "./scrollbar"
25
+ export * from "./userGroupTree"
26
+ export * from "./userGroupPicker"
27
+ export * from "./autoComplete"
28
+ export * from "./radioGroup"
29
+ export * from "./rolePicker"
30
+ export * from "./channelPicker"
31
+ export * from "./properyPicker"
32
+ export * from "./inputI18n"
33
+ export * from "./checkboxGroup"
34
+ export * from "./enumPicker"