easybill-ui 1.4.0 → 1.4.2

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 (281) hide show
  1. package/dist/_virtual/_plugin-vue_export-helper.js +9 -0
  2. package/dist/assets/easybill-ui.css +1 -0
  3. package/dist/components/ConstantStatus/index.d.ts +24 -0
  4. package/dist/components/ConstantStatus/index.js +7 -0
  5. package/dist/components/ConstantStatus/src/ConstantStatus.vue.d.ts +25 -0
  6. package/dist/components/ConstantStatus/src/ConstantStatus.vue.js +76 -0
  7. package/dist/components/ConstantStatus/src/ConstantStatus.vue2.js +4 -0
  8. package/dist/components/ConstantStatus/src/index.d.ts +3 -0
  9. package/dist/components/ConstantStatus/src/index.js +5 -0
  10. package/dist/components/ConstantStatus/src/types.d.ts +18 -0
  11. package/dist/components/CurdForm/index.d.ts +9 -0
  12. package/dist/components/CurdForm/index.js +9 -0
  13. package/dist/components/CurdForm/src/CurdForm.vue.js +7 -0
  14. package/dist/components/CurdForm/src/CurdForm.vue2.js +326 -0
  15. package/dist/components/CurdForm/src/CurdFormItem.vue.d.ts +37 -0
  16. package/dist/components/CurdForm/src/CurdFormItem.vue.js +55 -0
  17. package/dist/components/CurdForm/src/CurdFormItem.vue2.js +4 -0
  18. package/dist/components/CurdForm/src/FormItem.vue.d.ts +44 -0
  19. package/dist/components/CurdForm/src/FormItem.vue.js +128 -0
  20. package/dist/components/CurdForm/src/FormItem.vue2.js +4 -0
  21. package/dist/components/CurdForm/src/FormTooltip.vue.d.ts +33 -0
  22. package/dist/components/CurdForm/src/FormTooltip.vue.js +63 -0
  23. package/dist/components/CurdForm/src/FormTooltip.vue2.js +4 -0
  24. package/dist/components/CurdForm/src/components/index.d.ts +10 -0
  25. package/dist/components/CurdForm/src/components/index.js +38 -0
  26. package/dist/components/CurdForm/src/components/schema-form-autocomplete.vue.d.ts +56 -0
  27. package/dist/components/CurdForm/src/components/schema-form-autocomplete.vue.js +39 -0
  28. package/dist/components/CurdForm/src/components/schema-form-autocomplete.vue2.js +4 -0
  29. package/dist/components/CurdForm/src/components/schema-form-cascader.vue.d.ts +56 -0
  30. package/dist/components/CurdForm/src/components/schema-form-cascader.vue.js +32 -0
  31. package/dist/components/CurdForm/src/components/schema-form-cascader.vue2.js +4 -0
  32. package/dist/components/CurdForm/src/components/schema-form-checkbox.vue.d.ts +59 -0
  33. package/dist/components/CurdForm/src/components/schema-form-checkbox.vue.js +86 -0
  34. package/dist/components/CurdForm/src/components/schema-form-checkbox.vue2.js +33 -0
  35. package/dist/components/CurdForm/src/components/schema-form-choose.vue.js +217 -0
  36. package/dist/components/CurdForm/src/components/schema-form-choose.vue2.js +4 -0
  37. package/dist/components/CurdForm/src/components/schema-form-color-picker.vue.d.ts +54 -0
  38. package/dist/components/CurdForm/src/components/schema-form-color-picker.vue.js +15 -0
  39. package/dist/components/CurdForm/src/components/schema-form-color-picker.vue2.js +19 -0
  40. package/dist/components/CurdForm/src/components/schema-form-date-picker.vue.d.ts +56 -0
  41. package/dist/components/CurdForm/src/components/schema-form-date-picker.vue.js +32 -0
  42. package/dist/components/CurdForm/src/components/schema-form-date-picker.vue2.js +27 -0
  43. package/dist/components/CurdForm/src/components/schema-form-input-number.vue.d.ts +54 -0
  44. package/dist/components/CurdForm/src/components/schema-form-input-number.vue.js +39 -0
  45. package/dist/components/CurdForm/src/components/schema-form-input-number.vue2.js +4 -0
  46. package/dist/components/CurdForm/src/components/schema-form-input.vue.d.ts +54 -0
  47. package/dist/components/CurdForm/src/components/schema-form-input.vue.js +44 -0
  48. package/dist/components/CurdForm/src/components/schema-form-input.vue2.js +4 -0
  49. package/dist/components/CurdForm/src/components/schema-form-radio.vue.d.ts +54 -0
  50. package/dist/components/CurdForm/src/components/schema-form-radio.vue.js +114 -0
  51. package/dist/components/CurdForm/src/components/schema-form-radio.vue2.js +4 -0
  52. package/dist/components/CurdForm/src/components/schema-form-select-v2.vue.d.ts +54 -0
  53. package/dist/components/CurdForm/src/components/schema-form-select-v2.vue.js +69 -0
  54. package/dist/components/CurdForm/src/components/schema-form-select-v2.vue2.js +4 -0
  55. package/dist/components/CurdForm/src/components/schema-form-select.vue.js +65 -0
  56. package/dist/components/CurdForm/src/components/schema-form-select.vue2.js +66 -0
  57. package/dist/components/CurdForm/src/components/schema-form-switch.vue.d.ts +54 -0
  58. package/dist/components/CurdForm/src/components/schema-form-switch.vue.js +14 -0
  59. package/dist/components/CurdForm/src/components/schema-form-switch.vue2.js +25 -0
  60. package/dist/components/CurdForm/src/components/schema-form-time-picker.vue.d.ts +57 -0
  61. package/dist/components/CurdForm/src/components/schema-form-time-picker.vue.js +29 -0
  62. package/dist/components/CurdForm/src/components/schema-form-time-picker.vue2.js +30 -0
  63. package/dist/components/CurdForm/src/components/schema-form-tree-select.vue.d.ts +58 -0
  64. package/dist/components/CurdForm/src/components/schema-form-tree-select.vue.js +55 -0
  65. package/dist/components/CurdForm/src/components/schema-form-tree-select.vue2.js +31 -0
  66. package/dist/components/CurdForm/src/components/schema-form-value.vue.d.ts +54 -0
  67. package/dist/components/CurdForm/src/components/schema-form-value.vue.js +11 -0
  68. package/dist/components/CurdForm/src/components/schema-form-value.vue2.js +21 -0
  69. package/dist/components/CurdForm/src/directive/index.d.ts +12 -0
  70. package/dist/components/CurdForm/src/directive/index.js +32 -0
  71. package/dist/components/CurdForm/src/hooks/index.d.ts +4 -0
  72. package/dist/components/CurdForm/src/hooks/index.js +7 -0
  73. package/dist/components/CurdForm/src/types.d.ts +136 -0
  74. package/dist/components/CurdForm/src/types.js +27 -0
  75. package/dist/components/CurdForm/src/utils/ajax.d.ts +25 -0
  76. package/dist/components/CurdForm/src/utils/common.d.ts +1 -0
  77. package/dist/components/CurdForm/src/utils/common.js +13 -0
  78. package/dist/components/CurdGroupForm/index.d.ts +2 -0
  79. package/dist/components/CurdGroupForm/src/CurdGroupForm.vue.d.ts +36 -0
  80. package/dist/components/CurdGroupForm/src/CurdGroupForm.vue.js +113 -0
  81. package/dist/components/CurdGroupForm/src/CurdGroupForm.vue2.js +4 -0
  82. package/dist/components/CurdGroupForm/src/components/CurdFormGroup.vue.d.ts +52 -0
  83. package/dist/components/CurdGroupForm/src/components/CurdFormGroup.vue.js +64 -0
  84. package/dist/components/CurdGroupForm/src/components/CurdFormGroup.vue2.js +4 -0
  85. package/dist/components/CurdGroupForm/src/hooks/useFormHook.d.ts +12 -0
  86. package/dist/components/CurdGroupForm/src/hooks/useFormHook.js +32 -0
  87. package/dist/components/CurdGroupForm/types.d.ts +33 -0
  88. package/dist/components/CurdTable/index.d.ts +13 -0
  89. package/dist/components/CurdTable/index.js +7 -0
  90. package/dist/components/CurdTable/src/CurdTable.vue.js +562 -0
  91. package/dist/components/CurdTable/src/CurdTable.vue2.js +4 -0
  92. package/dist/components/CurdTable/src/STableColumnControl.vue.d.ts +21 -0
  93. package/dist/components/CurdTable/src/STableColumnControl.vue.js +132 -0
  94. package/dist/components/CurdTable/src/STableColumnControl.vue2.js +4 -0
  95. package/dist/components/CurdTable/src/STableDetail.vue.d.ts +9 -0
  96. package/dist/components/CurdTable/src/STableDetail.vue.js +53 -0
  97. package/dist/components/CurdTable/src/STableDetail.vue2.js +4 -0
  98. package/dist/components/CurdTable/src/STableFilter.vue.d.ts +28 -0
  99. package/dist/components/CurdTable/src/STableFilter.vue.js +40 -0
  100. package/dist/components/CurdTable/src/STableFilter.vue2.js +4 -0
  101. package/dist/components/CurdTable/src/STableItem.vue.d.ts +127 -0
  102. package/dist/components/CurdTable/src/STableItem.vue.js +147 -0
  103. package/dist/components/CurdTable/src/STableItem.vue2.js +4 -0
  104. package/dist/components/CurdTable/src/STableItemFilter.vue.d.ts +34 -0
  105. package/dist/components/CurdTable/src/STableItemFilter.vue.js +71 -0
  106. package/dist/components/CurdTable/src/STableItemFilter.vue2.js +4 -0
  107. package/dist/components/CurdTable/src/STableItemFormatter.vue.d.ts +38 -0
  108. package/dist/components/CurdTable/src/STableItemFormatter.vue.js +34 -0
  109. package/dist/components/CurdTable/src/STableItemFormatter.vue2.js +4 -0
  110. package/dist/components/CurdTable/src/STableItemHeader.vue.d.ts +16 -0
  111. package/dist/components/CurdTable/src/STableItemHeader.vue.js +24 -0
  112. package/dist/components/CurdTable/src/STableItemHeader.vue2.js +4 -0
  113. package/dist/components/CurdTable/src/STableItemHeaderTooltip.vue.d.ts +14 -0
  114. package/dist/components/CurdTable/src/STableItemHeaderTooltip.vue.js +48 -0
  115. package/dist/components/CurdTable/src/STableItemHeaderTooltip.vue2.js +4 -0
  116. package/dist/components/CurdTable/src/STableMenu.vue.d.ts +20 -0
  117. package/dist/components/CurdTable/src/STableMenu.vue.js +120 -0
  118. package/dist/components/CurdTable/src/STableMenu.vue2.js +4 -0
  119. package/dist/components/CurdTable/src/hooks/useColumnHook.d.ts +9 -0
  120. package/dist/components/CurdTable/src/hooks/useColumnHook.js +45 -0
  121. package/dist/components/CurdTable/src/types.d.ts +178 -0
  122. package/dist/components/CurdTable/utils/common.d.ts +5 -0
  123. package/dist/components/CurdTable/utils/common.js +18 -0
  124. package/dist/components/CurdTable/utils/tabelToExcel.d.ts +4 -0
  125. package/dist/components/CurdTable/utils/tabelToExcel.js +23 -0
  126. package/dist/components/DetailInfo/index.d.ts +147 -0
  127. package/dist/components/DetailInfo/index.js +7 -0
  128. package/dist/components/DetailInfo/src/DetailInfo.vue.d.ts +77 -0
  129. package/dist/components/DetailInfo/src/DetailInfo.vue.js +144 -0
  130. package/dist/components/DetailInfo/src/DetailInfo.vue2.js +4 -0
  131. package/dist/components/DetailInfo/src/DetailInfoContent.vue.d.ts +16 -0
  132. package/dist/components/DetailInfo/src/DetailInfoContent.vue.js +43 -0
  133. package/dist/components/DetailInfo/src/DetailInfoContent.vue2.js +4 -0
  134. package/dist/components/DetailInfo/src/DetailInfoTooltip.vue.d.ts +15 -0
  135. package/dist/components/DetailInfo/src/DetailInfoTooltip.vue.js +48 -0
  136. package/dist/components/DetailInfo/src/DetailInfoTooltip.vue2.js +4 -0
  137. package/dist/components/DetailInfo/src/types.d.ts +22 -0
  138. package/dist/components/FormDialog/index.d.ts +7 -0
  139. package/dist/components/FormDialog/index.js +6 -0
  140. package/dist/components/FormDialog/src/FormDialog.vue.d.ts +247 -0
  141. package/dist/components/FormDialog/src/FormDialog.vue.js +117 -0
  142. package/dist/components/FormDialog/src/FormDialog.vue2.js +191 -0
  143. package/dist/components/FormDialog/src/hooks/index.d.ts +2 -0
  144. package/dist/components/FormDialog/src/hooks/useStepList.d.ts +14 -0
  145. package/dist/components/FormDialog/src/hooks/useStepList.js +27 -0
  146. package/dist/components/FormDialog/src/hooks/useStepNavigation.d.ts +75 -0
  147. package/dist/components/FormDialog/src/hooks/useStepNavigation.js +34 -0
  148. package/dist/components/FormDialog/src/index.d.ts +13 -0
  149. package/dist/components/FormDialog/src/index.js +23 -0
  150. package/dist/components/FormDialog/src/types.d.ts +63 -0
  151. package/dist/components/TableFilter/index.d.ts +6 -0
  152. package/dist/components/TableFilter/index.js +7 -0
  153. package/dist/components/TableFilter/src/FilterExternal/FilterExternal.vue.js +91 -0
  154. package/dist/components/TableFilter/src/FilterExternal/FilterExternal.vue2.js +4 -0
  155. package/dist/components/TableFilter/src/FilterSearchBox.vue.d.ts +33 -0
  156. package/dist/components/TableFilter/src/FilterSearchBox.vue.js +71 -0
  157. package/dist/components/TableFilter/src/FilterSearchBox.vue2.js +4 -0
  158. package/dist/components/TableFilter/src/TableFilter.vue.js +180 -0
  159. package/dist/components/TableFilter/src/TableFilter.vue2.js +4 -0
  160. package/dist/components/TableFilter/src/components/FilterItem.vue.d.ts +37 -0
  161. package/dist/components/TableFilter/src/components/FilterItem.vue.js +63 -0
  162. package/dist/components/TableFilter/src/components/FilterItem.vue2.js +4 -0
  163. package/dist/components/TableFilter/src/components/FilterTags.vue.d.ts +114 -0
  164. package/dist/components/TableFilter/src/components/FilterTags.vue.js +142 -0
  165. package/dist/components/TableFilter/src/components/FilterTags.vue2.js +4 -0
  166. package/dist/components/TableFilter/src/components/FilterToggle.vue.d.ts +29 -0
  167. package/dist/components/TableFilter/src/components/FilterToggle.vue.js +70 -0
  168. package/dist/components/TableFilter/src/components/FilterToggle.vue2.js +4 -0
  169. package/dist/components/TableFilter/src/components/FilterType.vue.d.ts +30 -0
  170. package/dist/components/TableFilter/src/components/FilterType.vue.js +62 -0
  171. package/dist/components/TableFilter/src/components/FilterType.vue2.js +4 -0
  172. package/dist/components/TableFilter/src/components/containers/TagsSelect.vue.d.ts +42 -0
  173. package/dist/components/TableFilter/src/components/containers/TagsSelect.vue.js +99 -0
  174. package/dist/components/TableFilter/src/components/containers/TagsSelect.vue2.js +4 -0
  175. package/dist/components/TableFilter/types.d.ts +34 -0
  176. package/dist/index.d.ts +22 -0
  177. package/dist/index.js +35 -0
  178. package/dist/locale/index.d.ts +9 -0
  179. package/dist/locale/index.js +6 -0
  180. package/dist/locale/lang/en.d.ts +49 -0
  181. package/{locale/lang/en.ts → dist/locale/lang/en.js} +10 -7
  182. package/dist/locale/lang/zh-cn.d.ts +49 -0
  183. package/{locale/lang/zh-cn.ts → dist/locale/lang/zh-cn.js} +10 -7
  184. package/dist/utils/common/index.d.ts +8 -0
  185. package/dist/utils/common/index.js +13 -0
  186. package/dist/utils/hooks/useGlobalConfig.d.ts +13 -0
  187. package/dist/utils/hooks/useGlobalConfig.js +22 -0
  188. package/dist/utils/hooks/useLocal.d.ts +15 -0
  189. package/dist/utils/hooks/useLocal.js +33 -0
  190. package/dist/utils/index.d.ts +2 -0
  191. package/dist/utils/index.js +6 -0
  192. package/dist/utils/vue/index.d.ts +2 -0
  193. package/dist/utils/vue/index.js +4 -0
  194. package/dist/utils/vue/install.d.ts +2 -0
  195. package/dist/utils/vue/install.js +14 -0
  196. package/dist/utils/vue/make-installer.d.ts +5 -0
  197. package/dist/utils/vue/make-installer.js +9 -0
  198. package/dist/utils/vue/typescript.d.ts +5 -0
  199. package/package.json +61 -32
  200. package/components/ConstantStatus/index.ts +0 -5
  201. package/components/ConstantStatus/src/ConstantStatus.vue +0 -69
  202. package/components/ConstantStatus/src/index.ts +0 -3
  203. package/components/ConstantStatus/src/types.ts +0 -18
  204. package/components/CurdForm/index.ts +0 -9
  205. package/components/CurdForm/src/CurdForm.vue +0 -500
  206. package/components/CurdForm/src/CurdFormItem.vue +0 -70
  207. package/components/CurdForm/src/FormItem.vue +0 -105
  208. package/components/CurdForm/src/FormTooltip.vue +0 -54
  209. package/components/CurdForm/src/components/index.ts +0 -52
  210. package/components/CurdForm/src/components/schema-form-autocomplete.vue +0 -25
  211. package/components/CurdForm/src/components/schema-form-cascader.vue +0 -24
  212. package/components/CurdForm/src/components/schema-form-checkbox.vue +0 -53
  213. package/components/CurdForm/src/components/schema-form-choose.vue +0 -225
  214. package/components/CurdForm/src/components/schema-form-color-picker.vue +0 -23
  215. package/components/CurdForm/src/components/schema-form-date-picker.vue +0 -34
  216. package/components/CurdForm/src/components/schema-form-input-number.vue +0 -12
  217. package/components/CurdForm/src/components/schema-form-input.vue +0 -21
  218. package/components/CurdForm/src/components/schema-form-radio.vue +0 -59
  219. package/components/CurdForm/src/components/schema-form-select-v2.vue +0 -60
  220. package/components/CurdForm/src/components/schema-form-select.vue +0 -93
  221. package/components/CurdForm/src/components/schema-form-switch.vue +0 -29
  222. package/components/CurdForm/src/components/schema-form-time-picker.vue +0 -37
  223. package/components/CurdForm/src/components/schema-form-tree-select.vue +0 -45
  224. package/components/CurdForm/src/components/schema-form-value.vue +0 -25
  225. package/components/CurdForm/src/directive/index.ts +0 -60
  226. package/components/CurdForm/src/hooks/index.ts +0 -6
  227. package/components/CurdForm/src/types.ts +0 -146
  228. package/components/CurdForm/src/utils/ajax.ts +0 -125
  229. package/components/CurdForm/src/utils/common.ts +0 -17
  230. package/components/CurdGroupForm/index.ts +0 -2
  231. package/components/CurdGroupForm/src/CurdGroupForm.vue +0 -93
  232. package/components/CurdGroupForm/src/components/CurdFormGroup.vue +0 -39
  233. package/components/CurdGroupForm/src/hooks/useFormHook.ts +0 -55
  234. package/components/CurdGroupForm/types.ts +0 -22
  235. package/components/CurdTable/index.ts +0 -5
  236. package/components/CurdTable/src/CurdTable.vue +0 -470
  237. package/components/CurdTable/src/STableColumnControl.vue +0 -88
  238. package/components/CurdTable/src/STableDetail.vue +0 -52
  239. package/components/CurdTable/src/STableFilter.vue +0 -50
  240. package/components/CurdTable/src/STableItem.vue +0 -119
  241. package/components/CurdTable/src/STableItemFilter.vue +0 -53
  242. package/components/CurdTable/src/STableItemFormatter.vue +0 -35
  243. package/components/CurdTable/src/STableItemHeader.vue +0 -33
  244. package/components/CurdTable/src/STableItemHeaderTooltip.vue +0 -32
  245. package/components/CurdTable/src/STableMenu.vue +0 -77
  246. package/components/CurdTable/src/hooks/useColumnHook.ts +0 -77
  247. package/components/CurdTable/src/types.ts +0 -163
  248. package/components/CurdTable/utils/common.ts +0 -33
  249. package/components/CurdTable/utils/tabelToExcel.ts +0 -68
  250. package/components/DetailInfo/index.ts +0 -5
  251. package/components/DetailInfo/src/DetailInfo.vue +0 -108
  252. package/components/DetailInfo/src/DetailInfoContent.vue +0 -27
  253. package/components/DetailInfo/src/DetailInfoTooltip.vue +0 -33
  254. package/components/DetailInfo/src/types.ts +0 -23
  255. package/components/FormDialog/index.ts +0 -3
  256. package/components/FormDialog/src/FormDialog.vue +0 -276
  257. package/components/FormDialog/src/hooks/index.ts +0 -2
  258. package/components/FormDialog/src/hooks/useStepList.ts +0 -49
  259. package/components/FormDialog/src/hooks/useStepNavigation.ts +0 -74
  260. package/components/FormDialog/src/index.ts +0 -39
  261. package/components/FormDialog/src/types.ts +0 -51
  262. package/components/TableFilter/index.ts +0 -6
  263. package/components/TableFilter/src/FilterExternal/FilterExternal.vue +0 -121
  264. package/components/TableFilter/src/FilterSearchBox.vue +0 -65
  265. package/components/TableFilter/src/TableFilter.vue +0 -236
  266. package/components/TableFilter/src/components/FilterItem.vue +0 -76
  267. package/components/TableFilter/src/components/FilterTags.vue +0 -132
  268. package/components/TableFilter/src/components/FilterToggle.vue +0 -40
  269. package/components/TableFilter/src/components/FilterType.vue +0 -78
  270. package/components/TableFilter/src/components/containers/TagsSelect.vue +0 -89
  271. package/components/TableFilter/types.ts +0 -36
  272. package/index.ts +0 -25
  273. package/locale/index.ts +0 -11
  274. package/utils/common/index.ts +0 -24
  275. package/utils/hooks/useGlobalConfig.ts +0 -39
  276. package/utils/hooks/useLocal.ts +0 -61
  277. package/utils/index.ts +0 -2
  278. package/utils/vue/index.ts +0 -3
  279. package/utils/vue/install.ts +0 -18
  280. package/utils/vue/make-installer.ts +0 -16
  281. package/utils/vue/typescript.ts +0 -7
@@ -1,54 +0,0 @@
1
- <template>
2
- <el-tooltip :content="tooltipModel.content" v-bind="tooltipModel || {}">
3
- <el-button class="tooltip" type="primary" link>
4
- <el-icon><Warning /></el-icon>
5
- </el-button>
6
- <template #content>
7
- <div v-html="tooltipModel.content"></div>
8
- </template>
9
- </el-tooltip>
10
- </template>
11
- <script lang="ts" setup>
12
- import { Warning } from "@element-plus/icons-vue"
13
- import { type PropType, computed } from "vue"
14
- import type { Fields, FormItem, TooltipProps } from "./types"
15
- const props = defineProps({
16
- tooltip: {
17
- type: [String, Function, Object] as PropType<string | ((formModel: Fields, formItem: FormItem) => Partial<TooltipProps> | string) | Partial<TooltipProps>>,
18
- default: null,
19
- },
20
- formItem: {
21
- required: true,
22
- type: Object as PropType<FormItem>,
23
- },
24
- formModel: {
25
- type: Object as PropType<Fields>,
26
- default: () => ({}),
27
- },
28
- })
29
-
30
- const tooltipModel = computed(() => {
31
- let tooltip = props.tooltip
32
- if (!tooltip) {
33
- return { content: "" }
34
- }
35
- if (typeof tooltip == "function") {
36
- tooltip = tooltip(props.formModel, props.formItem)
37
- return getTooltip(tooltip)
38
- }
39
- return getTooltip(tooltip)
40
- })
41
- // 获取组件tooltip内容
42
- const getTooltip = (tooltip: Partial<TooltipProps> | string): Partial<TooltipProps> => {
43
- if (!tooltip) {
44
- return { content: "" }
45
- }
46
- let t: Partial<TooltipProps> = {}
47
- if (typeof tooltip == "string") {
48
- t = { content: tooltip }
49
- } else {
50
- t = tooltip
51
- }
52
- return t
53
- }
54
- </script>
@@ -1,52 +0,0 @@
1
- import { isReactive, isRef, isVNode, type Component, type VNode } from "vue"
2
- import SchemaFormAutocomplete from "./schema-form-autocomplete.vue"
3
- import SchemaFormCascader from "./schema-form-cascader.vue"
4
- import SchemaFormCheckbox from "./schema-form-checkbox.vue"
5
- import SchemaFormChoose from "./schema-form-choose.vue"
6
- import SchemaFormColorPicker from "./schema-form-color-picker.vue"
7
- import SchemaFormDatePicker from "./schema-form-date-picker.vue"
8
- import SchemaFormInputNumber from "./schema-form-input-number.vue"
9
- import SchemaFormInput from "./schema-form-input.vue"
10
- import SchemaFormRadio from "./schema-form-radio.vue"
11
- import SchemaFormSelectV2 from "./schema-form-select-v2.vue"
12
- import SchemaFormSelect from "./schema-form-select.vue"
13
- import SchemaFormSwitch from "./schema-form-switch.vue"
14
- import SchemaFormTimePicker from "./schema-form-time-picker.vue"
15
- import SchemaFormTreeSelect from "./schema-form-tree-select.vue"
16
- import SchemaFormValue from "./schema-form-value.vue"
17
- interface PresetMap {
18
- [key: string]: Component
19
- }
20
- const presetMap: PresetMap = {
21
- "schema-input": SchemaFormInput,
22
- "schema-select": SchemaFormSelect,
23
- "schema-select-v2": SchemaFormSelectV2,
24
- "schema-radio": SchemaFormRadio,
25
- "schema-checkbox": SchemaFormCheckbox,
26
- "schema-input-number": SchemaFormInputNumber,
27
- "schema-switch": SchemaFormSwitch,
28
- "schema-date-picker": SchemaFormDatePicker,
29
- "schema-time-picker": SchemaFormTimePicker,
30
- "schema-color-picker": SchemaFormColorPicker,
31
- "schema-value": SchemaFormValue,
32
- "schema-cascader": SchemaFormCascader,
33
- "schema-autocomplete": SchemaFormAutocomplete,
34
- "schema-tree-select": SchemaFormTreeSelect,
35
- "schema-choose": SchemaFormChoose,
36
- }
37
-
38
- export default presetMap
39
- export const preset = Object.keys(presetMap)
40
- export const getComponent = (type: string | VNode = "input") => {
41
- // 预设组件
42
- if (typeof type == "string" && preset.includes("schema-" + type)) {
43
- return presetMap["schema-" + type]
44
- } else if (isReactive(type) || isRef(type) || isVNode(type) || (typeof type == "object" && "setup" in type)) {
45
- // 自定义组件
46
- // return createVNode(type)
47
- return type
48
- } else {
49
- // 'el-原生组件'
50
- return null
51
- }
52
- }
@@ -1,25 +0,0 @@
1
- <template>
2
- <el-autocomplete v-model="model" v-bind="props.props" v-on="props.eventObject">
3
- <template #default="{ item }">
4
- <div v-if="item.html" v-html="item.html"></div>
5
- <div v-else>{{ item.label || item.value }}</div>
6
- </template>
7
- </el-autocomplete>
8
- </template>
9
- <script lang="ts" setup>
10
- import { FormItemProps } from "easybill-ui/components/CurdForm/src/types"
11
- import { type CascaderValue } from "element-plus"
12
- import { computed, type PropType } from "vue"
13
- const props = defineProps({
14
- ...FormItemProps,
15
- modelValue: {
16
- type: [String, Number] as PropType<CascaderValue>,
17
- default: undefined,
18
- }, // 表单项值
19
- })
20
- const emits = defineEmits(["update:modelValue"])
21
- const model = computed({
22
- get: () => props.modelValue,
23
- set: (val) => emits("update:modelValue", val),
24
- })
25
- </script>
@@ -1,24 +0,0 @@
1
- <template>
2
- <el-cascader v-model="model" :options="options" v-bind="props.props" v-on="props.eventObject"></el-cascader>
3
- </template>
4
- <script lang="ts" setup>
5
- import { type CascaderOption, type CascaderValue } from "element-plus"
6
- import { computed, type PropType } from "vue"
7
- import { FormItemProps } from "../types"
8
- const props = defineProps({
9
- ...FormItemProps,
10
- modelValue: {
11
- type: [String, Number] as PropType<CascaderValue>,
12
- default: undefined,
13
- }, // 表单项值
14
- })
15
- const emits = defineEmits(["update:modelValue"])
16
- const model = computed({
17
- get: () => props.modelValue,
18
- set: (val) => emits("update:modelValue", val),
19
- })
20
- const options = computed(() => {
21
- const ops = props.formItem.options as CascaderOption[]
22
- return ops
23
- })
24
- </script>
@@ -1,53 +0,0 @@
1
- <template>
2
- <div class="schema-form-radio">
3
- <div v-if="formItem.loading" class="loading" style="color: #999; font-size: 12px">
4
- <el-icon class="is-loading"><Loading /></el-icon> {{ t("el.form.loading") }}
5
- </div>
6
- <el-checkbox-group v-if="!formItem.loading && formItem.options && formItem.options.length" v-model="model" :class="[props?.showType]" style="width: 100%" v-bind="props" v-on="eventObject">
7
- <template v-for="option in formItem.options" :key="option.value">
8
- <el-checkbox-button v-if="props?.componentName == 'button'" :disabled="option.disabled" :style="option.style" v-bind="option"> {{ option.label }} </el-checkbox-button>
9
- <el-checkbox v-else :disabled="option.disabled" :style="option.style" v-bind="option"> {{ option.label }} </el-checkbox>
10
- </template>
11
- </el-checkbox-group>
12
- <div v-if="!formItem.loading && !formItem.options?.length" class="empty">
13
- <component :is="empty" v-if="empty" :form-model="formModel" :form-item="formItem" :props="props" />
14
- <template v-else>
15
- <el-icon><Warning /></el-icon> <span>{{ props.noDataText || t("el.form.nodata") }}</span>
16
- </template>
17
- </div>
18
- </div>
19
- </template>
20
- <script lang="ts">
21
- import { Loading, Warning } from "@element-plus/icons-vue"
22
- import { useLocale } from "easybill-ui"
23
- import { computed, defineComponent, type PropType, toRaw } from "vue"
24
- import { FormItemProps } from "../types"
25
- export default defineComponent({
26
- name: "SchemaFormCheckbox",
27
- components: { Loading, Warning },
28
- props: {
29
- ...FormItemProps,
30
- modelValue: {
31
- type: Array as PropType<(string | number)[]>,
32
- default: () => [],
33
- }, // 表单项值
34
- },
35
- emits: ["update:modelValue"],
36
- setup(props, { emit }) {
37
- const model = computed({
38
- get: () => props.modelValue,
39
- set: (val) => emit("update:modelValue", val),
40
- })
41
- if (!(model.value instanceof Array)) {
42
- model.value = []
43
- }
44
- const { t } = useLocale()
45
-
46
- return {
47
- model,
48
- empty: toRaw(props.props.empty) || "",
49
- t,
50
- }
51
- },
52
- })
53
- </script>
@@ -1,225 +0,0 @@
1
- <template>
2
- <div class="schema-form-choose">
3
- <div class="choose-content-wrapper">
4
- <div v-if="formItem.loading" class="loading">
5
- <el-icon class="is-loading"><Loading /></el-icon> {{ t("el.form.loading") }}
6
- </div>
7
- <el-radio-group v-else-if="options?.length" v-model="currentValue" :class="[props.props?.showType, chooseGroupClass]" v-bind="props.props" v-on="props.eventObject">
8
- <template v-for="(option, index) in options" :key="option.value">
9
- <component :is="props?.props?.componentName == 'button' ? 'el-radio-button' : 'el-radio'" :value="option.value" :disabled="option.disabled" :border="option.border" :size="option.size" :style="option.style">
10
- <component v-if="option.component" :is="option.component" :row="option" :$index="index" :form-model="formModel" :form-item="formItem" :props="props" />
11
- <span v-else-if="option.html" v-html="option.html"></span>
12
- <span v-else>{{ option.label }}</span>
13
- <FormTooltip v-if="option.tooltip" :tooltip="option.tooltip" :form-item="formItem" :form-model="formModel" />
14
- </component>
15
- </template>
16
- </el-radio-group>
17
- <div v-else class="empty">
18
- <component :is="empty" v-if="empty" :form-model="formModel" :form-item="formItem" :props="props" />
19
- <template v-else>
20
- <el-icon><Warning /></el-icon> <span>{{ props.props?.noDataText || t("el.form.nodata") }}</span>
21
- </template>
22
- </div>
23
-
24
- <!-- 子表单项区域 -->
25
- <div class="choose-sub-items-wrapper" :style="wrapperStyle">
26
- <div ref="innerRef" class="choose-sub-items" :class="subItemsClass">
27
- <template v-for="subItem in displaySubItems" :key="subItem.prop">
28
- <el-form-item :prop="subItem.prop" :label="subItem.label" :label-width="subItem.labelWidth" :class="getSubFormItemStyle(subItem)" v-bind="getSubFormItemProps(subItem)">
29
- <template v-for="(item, key) in getSubFormItemProps(subItem)?.slots || {}" :key="key" #[key]="row">
30
- <component :is="item" v-bind="row" />
31
- </template>
32
- <FormItem :form-item="subItem" :form-model="formModel" @change="onSubItemChange">
33
- <template #prefix>
34
- <slot :name="subItem.prop + 'Prefix'" :form-item="subItem" :form-model="formModel"></slot>
35
- </template>
36
- <template #suffix>
37
- <slot :name="subItem.prop + 'Suffix'" :form-item="subItem" :form-model="formModel"></slot>
38
- </template>
39
- </FormItem>
40
- </el-form-item>
41
- </template>
42
- </div>
43
- </div>
44
- </div>
45
- </div>
46
- </template>
47
-
48
- <script lang="ts" setup>
49
- import { Loading, Warning } from "@element-plus/icons-vue"
50
- import { useLocale } from "easybill-ui"
51
- import { computed, inject, nextTick, onUnmounted, ref, toRaw, watch, type PropType } from "vue"
52
- import FormItem from "../FormItem.vue"
53
- import FormTooltip from "../FormTooltip.vue"
54
- import { FormItemProps, type CurdFormOptionItem, type Fields, type FormContext, type FormItem as FormItemType } from "../types"
55
-
56
- const props = defineProps({
57
- ...FormItemProps,
58
- modelValue: {
59
- type: [String, Number, Boolean] as PropType<string | number | boolean | null>,
60
- default: null,
61
- },
62
- })
63
-
64
- const emit = defineEmits(["update:modelValue"])
65
- const { t } = useLocale()
66
- const formContext = inject<FormContext>("curdFormContext")
67
-
68
- const chooseGroupClass = computed(() => {
69
- return props?.props?.showType || ""
70
- })
71
-
72
- const subItemsClass = computed(() => {
73
- return props?.props?.subItemsClass || ""
74
- })
75
-
76
- const currentValue = computed({
77
- get: () => props.modelValue,
78
- set: (val) => {
79
- emit("update:modelValue", val)
80
- },
81
- })
82
-
83
- const options = computed(() => {
84
- const allOptions: CurdFormOptionItem[] = []
85
- if (props.props?.all) {
86
- const optionItem: CurdFormOptionItem = { value: "", label: t("el.form.all") }
87
- if (typeof props.props.all === "object") {
88
- Object.assign(optionItem, props.props.all)
89
- }
90
- allOptions.push(optionItem)
91
- }
92
- return [...allOptions, ...(props.formItem.options || [])]
93
- })
94
-
95
- const empty = computed(() => toRaw(props.props?.empty) || "")
96
-
97
- const currentOption = computed(() => {
98
- if (!currentValue.value) return null
99
- return options.value.find((opt) => opt.value === currentValue.value)
100
- })
101
-
102
- // 动画控制状态
103
- const innerRef = ref<HTMLElement | null>(null)
104
- const wrapperStyle = ref<Record<string, string>>({})
105
- const displaySubItems = ref<FormItemType[]>([])
106
- const isAnimating = ref(false)
107
-
108
- // 辅助函数:从父级 schema 中查找指定的表单项
109
- const findFormItemsByProps = (props: string[]) => {
110
- const parentSchema = formContext?.formSchema || { formItem: [] }
111
- const allFormItems = parentSchema.formItem || []
112
- return allFormItems.filter((item: FormItemType) => props.includes(item.prop))
113
- }
114
-
115
- // 获取当前选项下需要显示的子表单项
116
- const visibleSubItems = computed(() => {
117
- const opt = currentOption.value
118
- if (!opt) return []
119
-
120
- if (opt.items?.length) return opt.items
121
- if (opt.props?.length) return findFormItemsByProps(opt.props)
122
-
123
- return []
124
- })
125
-
126
- // 更新外层高度
127
- const updateWrapperHeight = (height: number, animate = true) => {
128
- if (animate) {
129
- wrapperStyle.value = { height: height + "px" }
130
- } else {
131
- wrapperStyle.value = { height: height + "px", transition: "none" }
132
- nextTick(() => {
133
- wrapperStyle.value.transition = ""
134
- })
135
- }
136
- }
137
-
138
- // 监听选项变化,动态计算高度实现平滑过渡
139
- watch(
140
- visibleSubItems,
141
- async (newItems) => {
142
- // 获取旧高度
143
- const oldHeight = innerRef.value?.scrollHeight || 0
144
-
145
- if (newItems.length > 0) {
146
- // 更新内容
147
- displaySubItems.value = newItems
148
- // 等待 DOM 渲染
149
- await nextTick()
150
- // 获取新高度
151
- const newHeight = innerRef.value?.scrollHeight || 0
152
- if (oldHeight !== newHeight) {
153
- // 先设置回旧高度(防止跳动)
154
- wrapperStyle.value = { height: oldHeight + "px" }
155
- isAnimating.value = true
156
- // 下一帧设置新高度触发过渡
157
- requestAnimationFrame(() => {
158
- updateWrapperHeight(newHeight)
159
- })
160
- } else {
161
- updateWrapperHeight(newHeight, false)
162
- }
163
- } else {
164
- // 无内容时收起
165
- updateWrapperHeight(0)
166
- isAnimating.value = false
167
- setTimeout(() => {
168
- displaySubItems.value = []
169
- }, 300)
170
- }
171
- },
172
- { immediate: true },
173
- )
174
-
175
- // ResizeObserver 监听内层高度变化
176
- let resizeObserver: ResizeObserver | null = null
177
-
178
- watch(innerRef, (el) => {
179
- if (el) {
180
- resizeObserver = new ResizeObserver((entries) => {
181
- // 只在非动画状态且高度变化时更新
182
- const newHeight = entries[0]?.contentRect.height
183
- if (newHeight !== undefined && !isAnimating.value) {
184
- updateWrapperHeight(newHeight, false)
185
- }
186
- })
187
- resizeObserver.observe(el as unknown as Element)
188
- }
189
- })
190
-
191
- onUnmounted(() => {
192
- if (resizeObserver) {
193
- resizeObserver.disconnect()
194
- }
195
- })
196
-
197
- // 获取子表单项的额外 props
198
- const getSubFormItemProps = (subItem: FormItemType) => {
199
- if (subItem.formItemProps) {
200
- if (subItem.formItemProps instanceof Function) {
201
- return subItem.formItemProps(props.formModel, subItem)
202
- }
203
- return { ...subItem.formItemProps }
204
- }
205
- return {}
206
- }
207
-
208
- // 获取子表单项的样式类
209
- const getSubFormItemStyle = (subItem: FormItemType) => {
210
- if (!subItem.span) return "el-form-item-full"
211
- return "el-form-item-" + subItem.span
212
- }
213
-
214
- // 子表单项变化事件
215
- const onSubItemChange = (formModel: Fields, formItem: FormItemType) => {
216
- // 1. 先执行子表单项自己的 change 事件
217
- if (formItem.eventObject?.change) {
218
- formItem.eventObject.change(formModel, formItem, formContext!)
219
- }
220
- // 2. 向上传递到 CurdForm,保持与其他表单项一致
221
- if (formContext?.change) {
222
- formContext.change(formModel, formItem)
223
- }
224
- }
225
- </script>
@@ -1,23 +0,0 @@
1
- <template>
2
- <el-color-picker v-model="model" show-alpha v-bind="props" v-on="eventObject"> </el-color-picker>
3
- </template>
4
- <script lang="ts">
5
- import { computed, defineComponent } from "vue"
6
- import { FormItemProps } from "../types"
7
- export default defineComponent({
8
- name: "SchemaFormColorPicker",
9
- components: {},
10
- props: FormItemProps,
11
- emits: ["update:modelValue"],
12
- setup(props, { emit }) {
13
- const model = computed({
14
- get: () => props.modelValue,
15
- set: (val) => emit("update:modelValue", val),
16
- })
17
-
18
- return {
19
- model,
20
- }
21
- },
22
- })
23
- </script>
@@ -1,34 +0,0 @@
1
- <template>
2
- <el-date-picker v-model="model" type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" v-bind="props" v-on="eventObject">
3
- <template v-for="(item, key) in props.slots" :key="key" #[key]="slotScope">
4
- <component :is="item" v-model="model" v-bind="slotScope" :form-item="formItem" :form-model="formModel" :props="props" :event-object="eventObject" />
5
- </template>
6
- </el-date-picker>
7
- </template>
8
- <script lang="ts">
9
- import { type ModelValueType } from "element-plus"
10
- import { computed, defineComponent, type PropType } from "vue"
11
- import { FormItemProps } from "../types"
12
- export default defineComponent({
13
- name: "SchemaFormDatePicker",
14
- components: {},
15
- props: {
16
- ...FormItemProps,
17
- modelValue: {
18
- type: [Array, String] as PropType<ModelValueType>,
19
- default: "",
20
- }, // 表单项值
21
- },
22
- emits: ["update:modelValue"],
23
- setup(props, { emit }) {
24
- const model = computed({
25
- get: () => props.modelValue,
26
- set: (val) => emit("update:modelValue", val),
27
- })
28
-
29
- return {
30
- model,
31
- }
32
- },
33
- })
34
- </script>
@@ -1,12 +0,0 @@
1
- <template>
2
- <el-input-number v-model="model" v-bind="props.props" v-on="eventObject">
3
- <template v-for="(item, key) in props.props?.slots" :key="key" #[key]="slotScope">
4
- <component :is="item" v-model="model" v-bind="slotScope" :form-item="props.formItem" :form-model="props.formModel" :props="props.props" :event-object="eventObject" />
5
- </template>
6
- </el-input-number>
7
- </template>
8
- <script lang="ts" setup>
9
- import { FormItemProps } from "../types"
10
- const props = defineProps(FormItemProps)
11
- const model = defineModel()
12
- </script>
@@ -1,21 +0,0 @@
1
- <template>
2
- <el-input v-model="model" v-trim v-bind="props.props" v-on="eventObject">
3
- <template v-for="(item, key) in props.props?.slots" :key="key" #[key]>
4
- <component :is="item" :form-item="props.formItem" :form-model="props.formModel" :props="props.props" :event-object="props.eventObject" />
5
- </template>
6
- </el-input>
7
- </template>
8
- <script lang="ts">
9
- import { directives } from "../directive"
10
- import { FormItemProps } from "../types"
11
-
12
- export default {
13
- directives: {
14
- trim: directives.trim,
15
- },
16
- }
17
- </script>
18
- <script lang="ts" setup>
19
- const props = defineProps(FormItemProps)
20
- const model = defineModel()
21
- </script>
@@ -1,59 +0,0 @@
1
- <template>
2
- <div class="schema-form-radio">
3
- <div v-if="props.formItem.loading" class="loading" style="color: #999; font-size: 12px">
4
- <el-icon class="is-loading"><Loading /></el-icon> {{ t("el.form.loading") }}
5
- </div>
6
- <el-radio-group v-if="!props.formItem.loading && options?.length" v-model="model" :class="[props?.props?.showType]" v-bind="props.props" v-on="props.eventObject">
7
- <template v-for="(option, index) in options" :key="option.value">
8
- <component :is="props?.props?.type == 'button' || props?.props?.componentName == 'button' ? 'el-radio-button' : 'el-radio'" :value="option.value" :disabled="option.disabled" :border="option.border" :size="option.size" :style="option.style">
9
- <component v-if="option.component" :is="option.component" :row="option" :$index="index" :form-model="props.formModel" :form-item="props.formItem" :props="props.props" />
10
- <span v-else-if="option.html" v-html="option.html"></span>
11
- <span v-else>{{ option.label }}</span>
12
- <FormTooltip v-if="option.tooltip" :tooltip="option.tooltip" :form-item="props.formItem" :form-model="props.formModel" />
13
- </component>
14
- </template>
15
- </el-radio-group>
16
- <div v-if="!props.formItem.loading && !options?.length" class="empty">
17
- <component :is="empty" v-if="empty" :form-model="props.formModel" :form-item="props.formItem" :props="props.props" />
18
- <template v-else>
19
- <el-icon><Warning /></el-icon> <span>{{ props.props?.noDataText || t("el.form.nodata") }}</span>
20
- </template>
21
- </div>
22
- </div>
23
- </template>
24
- <script lang="ts" setup>
25
- import { Loading, Warning } from "@element-plus/icons-vue"
26
- import { useLocale } from "easybill-ui"
27
- import { computed, toRaw } from "vue"
28
- import FormTooltip from "../FormTooltip.vue"
29
- import { FormItemProps, type CurdFormOptionItem } from "../types"
30
-
31
- const props = defineProps({
32
- ...FormItemProps,
33
- modelValue: {
34
- type: [String, Number, Boolean],
35
- default: null,
36
- },
37
- })
38
- const emits = defineEmits(["update:modelValue"])
39
- const model = computed({
40
- get: () => props.modelValue,
41
- set: (val) => emits("update:modelValue", val),
42
- })
43
- const { t } = useLocale()
44
- const empty = computed(() => toRaw(props.props.empty) || "")
45
- const options = computed(() => {
46
- const alloptions: CurdFormOptionItem[] = []
47
- if (props.props.all) {
48
- const optionItem: CurdFormOptionItem = { value: "", label: t("el.form.all") }
49
- if (typeof props.props.all == "boolean") {
50
- alloptions.push(optionItem)
51
- } else if (typeof props.props.all == "object") {
52
- Object.assign(optionItem, props.props.all)
53
- alloptions.push(optionItem)
54
- }
55
- }
56
- const opts = props.formItem.options || []
57
- return [...alloptions, ...opts]
58
- })
59
- </script>
@@ -1,60 +0,0 @@
1
- <template>
2
- <el-select-v2 v-model="model" style="width: 100%" :options="list" :loading="props.formItem.loading || loading" :filterable="true" v-bind="selectProps" v-on="props.eventObject">
3
- <template v-for="(item, key) in props.props?.slots" :key="key" #[key]>
4
- <component :is="item" v-model="model" :form-item="props.formItem" :form-model="props.formModel" :props="props.props" :event-object="props.eventObject" />
5
- </template>
6
- </el-select-v2>
7
- </template>
8
- <script lang="ts" setup>
9
- import { computed, onMounted, ref, watch } from "vue"
10
- import type { CurdFormOptionItem } from "../types"
11
- import { FormItemProps } from "../types"
12
-
13
- const props = defineProps({
14
- ...FormItemProps,
15
- modelValue: {
16
- type: [String, Number, Boolean, Array],
17
- default: null,
18
- },
19
- })
20
- const emits = defineEmits(["update:modelValue"])
21
- const model = computed({
22
- get: () => props.modelValue,
23
- set: (val) => emits("update:modelValue", val),
24
- })
25
- const loading = ref(false)
26
- // 有的options是从接口里拿的,掉接口需要时间,初始全选的时候全选的按钮没有勾选上,所以监听options
27
- const list = ref(props.formItem.options || [])
28
- watch(
29
- () => props.formItem.options,
30
- (val) => {
31
- list.value = val || []
32
- },
33
- {
34
- deep: true,
35
- },
36
- )
37
- onMounted(() => {})
38
- const { filterMethod, remoteMethod, ...selectProps } = props.props
39
- // 前端筛选
40
- if (filterMethod) {
41
- selectProps.filterMethod = function (val: string) {
42
- const remoteMehotd1 = filterMethod as (val: string, optionItem?: CurdFormOptionItem) => Promise<CurdFormOptionItem[]>
43
- list.value = props.formItem?.options?.filter((a) => remoteMehotd1(val, a)) || []
44
- }
45
- }
46
- // 远程筛选
47
- if (selectProps.remote && remoteMethod) {
48
- selectProps.remoteMethod = function (val: string) {
49
- loading.value = true
50
- const remoteMehotd1 = remoteMethod as (val: string, optionItem?: CurdFormOptionItem) => Promise<CurdFormOptionItem[]>
51
- remoteMehotd1(val)
52
- .then((res) => {
53
- list.value = res
54
- })
55
- .finally(() => {
56
- loading.value = false
57
- })
58
- }
59
- }
60
- </script>