pro-design-vue 1.0.0-rc.8 → 1.0.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 (240) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +503 -232
  3. package/dist/index.full.min.js +8 -8
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +8 -8
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +503 -232
  8. package/es/components/drawer/src/drawer.vue2.mjs +1 -1
  9. package/es/components/drawer/src/drawer.vue2.mjs.map +1 -1
  10. package/es/components/form/src/Form.d.ts +1 -1
  11. package/es/components/form/src/base/BaseForm.d.ts +1 -1
  12. package/es/components/form/src/base/BaseForm.mjs +23 -15
  13. package/es/components/form/src/base/BaseForm.mjs.map +1 -1
  14. package/es/components/form/src/base/StepForm.d.ts +1 -1
  15. package/es/components/form/src/components/FormColWrapper.d.ts +9 -0
  16. package/es/components/form/src/components/FormColWrapper.mjs +9 -1
  17. package/es/components/form/src/components/FormColWrapper.mjs.map +1 -1
  18. package/es/components/form/src/components/FormGroup.d.ts +6 -4
  19. package/es/components/form/src/components/FormGroup.mjs +1 -1
  20. package/es/components/form/src/components/FormGroup.mjs.map +1 -1
  21. package/es/components/form/src/components/FormItem.d.ts +9 -0
  22. package/es/components/form/src/components/FormItem.mjs +32 -24
  23. package/es/components/form/src/components/FormItem.mjs.map +1 -1
  24. package/es/components/form/src/components/FormItems.mjs +2 -1
  25. package/es/components/form/src/components/FormItems.mjs.map +1 -1
  26. package/es/components/form/src/components/FormList.d.ts +6 -4
  27. package/es/components/form/src/components/FormList.mjs +1 -1
  28. package/es/components/form/src/components/FormList.mjs.map +1 -1
  29. package/es/components/form/src/components/FormListContainer.d.ts +6 -4
  30. package/es/components/form/src/components/FormListContainer.mjs +1 -1
  31. package/es/components/form/src/components/FormListContainer.mjs.map +1 -1
  32. package/es/components/form/src/components/FormSet.d.ts +6 -4
  33. package/es/components/form/src/components/FormSet.mjs +1 -1
  34. package/es/components/form/src/components/FormSet.mjs.map +1 -1
  35. package/es/components/form/src/components/FormSubmitter.d.ts +2 -2
  36. package/es/components/form/src/components/FormSubmitter.mjs +25 -7
  37. package/es/components/form/src/components/FormSubmitter.mjs.map +1 -1
  38. package/es/components/form/src/components/FormTitle.d.ts +6 -4
  39. package/es/components/form/src/components/FormTitle.mjs +11 -6
  40. package/es/components/form/src/components/FormTitle.mjs.map +1 -1
  41. package/es/components/form/src/hooks/useAction.d.ts +5 -2
  42. package/es/components/form/src/hooks/useAction.mjs +137 -12
  43. package/es/components/form/src/hooks/useAction.mjs.map +1 -1
  44. package/es/components/form/src/hooks/useFieldValue.d.ts +1 -1
  45. package/es/components/form/src/hooks/useFieldValue.mjs +11 -15
  46. package/es/components/form/src/hooks/useFieldValue.mjs.map +1 -1
  47. package/es/components/form/src/layouts/DrawerForm.d.ts +1 -1
  48. package/es/components/form/src/layouts/DrawerForm.mjs +8 -12
  49. package/es/components/form/src/layouts/DrawerForm.mjs.map +1 -1
  50. package/es/components/form/src/layouts/ModalForm.d.ts +1 -1
  51. package/es/components/form/src/layouts/ModalForm.mjs +8 -12
  52. package/es/components/form/src/layouts/ModalForm.mjs.map +1 -1
  53. package/es/components/form/src/layouts/QueryFilter.d.ts +1 -1
  54. package/es/components/form/src/layouts/QueryFilter.mjs +14 -4
  55. package/es/components/form/src/layouts/QueryFilter.mjs.map +1 -1
  56. package/es/components/form/src/layouts/StepsForm.d.ts +1 -1
  57. package/es/components/form/src/layouts/StepsForm.mjs +8 -8
  58. package/es/components/form/src/layouts/StepsForm.mjs.map +1 -1
  59. package/es/components/form/src/type.d.ts +29 -16
  60. package/es/components/form/src/utils/transformer.d.ts +3 -0
  61. package/es/components/form/src/utils/transformer.mjs +24 -0
  62. package/es/components/form/src/utils/transformer.mjs.map +1 -0
  63. package/es/components/modal/src/modal.vue2.mjs +1 -1
  64. package/es/components/modal/src/modal.vue2.mjs.map +1 -1
  65. package/es/components/table/src/components/Body/Body.vue.mjs.map +1 -1
  66. package/es/components/table/src/components/Body/Body.vue2.mjs +1 -2
  67. package/es/components/table/src/components/Body/Body.vue2.mjs.map +1 -1
  68. package/es/components/table/src/components/Body/BodyCell.mjs +2 -2
  69. package/es/components/table/src/components/Body/BodyCell.mjs.map +1 -1
  70. package/es/components/table/src/components/Body/BodyRow.vue.mjs.map +1 -1
  71. package/es/components/table/src/components/Body/BodyRow.vue2.mjs +3 -3
  72. package/es/components/table/src/components/Body/BodyRow.vue2.mjs.map +1 -1
  73. package/es/components/table/src/components/Drag/RowHandler.vue.mjs.map +1 -1
  74. package/es/components/table/src/components/Drag/RowHandler.vue2.mjs +17 -16
  75. package/es/components/table/src/components/Drag/RowHandler.vue2.mjs.map +1 -1
  76. package/es/components/table/src/components/Header/HeaderCellTitle.vue.mjs +19 -7
  77. package/es/components/table/src/components/Header/HeaderCellTitle.vue.mjs.map +1 -1
  78. package/es/components/table/src/components/Header/HeaderCellTitle.vue2.mjs +1 -0
  79. package/es/components/table/src/components/Header/HeaderCellTitle.vue2.mjs.map +1 -1
  80. package/es/components/table/src/components/Header/HeaderExtraCell.vue.mjs.map +1 -1
  81. package/es/components/table/src/components/Header/HeaderExtraCell.vue2.mjs +1 -0
  82. package/es/components/table/src/components/Header/HeaderExtraCell.vue2.mjs.map +1 -1
  83. package/es/components/table/src/components/InteralTable.vue.d.ts +21 -0
  84. package/es/components/table/src/components/InteralTable.vue.mjs.map +1 -1
  85. package/es/components/table/src/components/InteralTable.vue2.mjs +11 -5
  86. package/es/components/table/src/components/InteralTable.vue2.mjs.map +1 -1
  87. package/es/components/table/src/components/Table.d.ts +25 -4
  88. package/es/components/table/src/components/Table.mjs +48 -14
  89. package/es/components/table/src/components/Table.mjs.map +1 -1
  90. package/es/components/table/src/components/ToolBar/ToolBar.vue.mjs +25 -6
  91. package/es/components/table/src/components/ToolBar/ToolBar.vue.mjs.map +1 -1
  92. package/es/components/table/src/components/ToolBar/ToolBar.vue2.mjs.map +1 -1
  93. package/es/components/table/src/components/interface.d.ts +33 -5
  94. package/es/components/table/src/components/interface.mjs +10 -1
  95. package/es/components/table/src/components/interface.mjs.map +1 -1
  96. package/es/components/table/src/hooks/useCellProps.mjs +3 -1
  97. package/es/components/table/src/hooks/useCellProps.mjs.map +1 -1
  98. package/es/components/table/src/hooks/useContainer.mjs +1 -1
  99. package/es/components/table/src/hooks/useContainer.mjs.map +1 -1
  100. package/es/components/table/src/hooks/useFetchData.mjs +13 -18
  101. package/es/components/table/src/hooks/useFetchData.mjs.map +1 -1
  102. package/es/components/table/src/hooks/useHover.d.ts +3 -0
  103. package/es/components/table/src/hooks/useHover.mjs +3 -1
  104. package/es/components/table/src/hooks/useHover.mjs.map +1 -1
  105. package/es/components/table/src/hooks/usePagination.d.ts +1 -0
  106. package/es/components/table/src/hooks/usePagination.mjs +7 -2
  107. package/es/components/table/src/hooks/usePagination.mjs.map +1 -1
  108. package/es/components/table/src/utils/genProColumnToColumn.mjs +5 -4
  109. package/es/components/table/src/utils/genProColumnToColumn.mjs.map +1 -1
  110. package/es/components/table/src/utils/util.d.ts +1 -1
  111. package/es/components/table/src/utils/util.mjs +1 -1
  112. package/es/components/table/src/utils/util.mjs.map +1 -1
  113. package/es/index.d.ts +70 -26
  114. package/es/utils/validate.d.ts +1 -1
  115. package/es/utils/validate.mjs +1 -1
  116. package/es/utils/validate.mjs.map +1 -1
  117. package/es/version.d.ts +1 -1
  118. package/es/version.mjs +1 -1
  119. package/es/version.mjs.map +1 -1
  120. package/lib/components/drawer/src/drawer.vue2.js +1 -1
  121. package/lib/components/drawer/src/drawer.vue2.js.map +1 -1
  122. package/lib/components/form/src/Form.d.ts +1 -1
  123. package/lib/components/form/src/base/BaseForm.d.ts +1 -1
  124. package/lib/components/form/src/base/BaseForm.js +21 -13
  125. package/lib/components/form/src/base/BaseForm.js.map +1 -1
  126. package/lib/components/form/src/base/StepForm.d.ts +1 -1
  127. package/lib/components/form/src/components/FormColWrapper.d.ts +9 -0
  128. package/lib/components/form/src/components/FormColWrapper.js +9 -1
  129. package/lib/components/form/src/components/FormColWrapper.js.map +1 -1
  130. package/lib/components/form/src/components/FormGroup.d.ts +6 -4
  131. package/lib/components/form/src/components/FormGroup.js +1 -1
  132. package/lib/components/form/src/components/FormGroup.js.map +1 -1
  133. package/lib/components/form/src/components/FormItem.d.ts +9 -0
  134. package/lib/components/form/src/components/FormItem.js +32 -24
  135. package/lib/components/form/src/components/FormItem.js.map +1 -1
  136. package/lib/components/form/src/components/FormItems.js +2 -1
  137. package/lib/components/form/src/components/FormItems.js.map +1 -1
  138. package/lib/components/form/src/components/FormList.d.ts +6 -4
  139. package/lib/components/form/src/components/FormList.js +1 -1
  140. package/lib/components/form/src/components/FormList.js.map +1 -1
  141. package/lib/components/form/src/components/FormListContainer.d.ts +6 -4
  142. package/lib/components/form/src/components/FormListContainer.js +1 -1
  143. package/lib/components/form/src/components/FormListContainer.js.map +1 -1
  144. package/lib/components/form/src/components/FormSet.d.ts +6 -4
  145. package/lib/components/form/src/components/FormSet.js +1 -1
  146. package/lib/components/form/src/components/FormSet.js.map +1 -1
  147. package/lib/components/form/src/components/FormSubmitter.d.ts +2 -2
  148. package/lib/components/form/src/components/FormSubmitter.js +25 -7
  149. package/lib/components/form/src/components/FormSubmitter.js.map +1 -1
  150. package/lib/components/form/src/components/FormTitle.d.ts +6 -4
  151. package/lib/components/form/src/components/FormTitle.js +11 -6
  152. package/lib/components/form/src/components/FormTitle.js.map +1 -1
  153. package/lib/components/form/src/hooks/useAction.d.ts +5 -2
  154. package/lib/components/form/src/hooks/useAction.js +137 -10
  155. package/lib/components/form/src/hooks/useAction.js.map +1 -1
  156. package/lib/components/form/src/hooks/useFieldValue.d.ts +1 -1
  157. package/lib/components/form/src/hooks/useFieldValue.js +11 -15
  158. package/lib/components/form/src/hooks/useFieldValue.js.map +1 -1
  159. package/lib/components/form/src/layouts/DrawerForm.d.ts +1 -1
  160. package/lib/components/form/src/layouts/DrawerForm.js +8 -12
  161. package/lib/components/form/src/layouts/DrawerForm.js.map +1 -1
  162. package/lib/components/form/src/layouts/ModalForm.d.ts +1 -1
  163. package/lib/components/form/src/layouts/ModalForm.js +8 -12
  164. package/lib/components/form/src/layouts/ModalForm.js.map +1 -1
  165. package/lib/components/form/src/layouts/QueryFilter.d.ts +1 -1
  166. package/lib/components/form/src/layouts/QueryFilter.js +14 -4
  167. package/lib/components/form/src/layouts/QueryFilter.js.map +1 -1
  168. package/lib/components/form/src/layouts/StepsForm.d.ts +1 -1
  169. package/lib/components/form/src/layouts/StepsForm.js +8 -8
  170. package/lib/components/form/src/layouts/StepsForm.js.map +1 -1
  171. package/lib/components/form/src/type.d.ts +29 -16
  172. package/lib/components/form/src/utils/transformer.d.ts +3 -0
  173. package/lib/components/form/src/utils/transformer.js +28 -0
  174. package/lib/components/form/src/utils/transformer.js.map +1 -0
  175. package/lib/components/modal/src/modal.vue2.js +1 -1
  176. package/lib/components/modal/src/modal.vue2.js.map +1 -1
  177. package/lib/components/table/src/components/Body/Body.vue.js.map +1 -1
  178. package/lib/components/table/src/components/Body/Body.vue2.js +1 -2
  179. package/lib/components/table/src/components/Body/Body.vue2.js.map +1 -1
  180. package/lib/components/table/src/components/Body/BodyCell.js +2 -2
  181. package/lib/components/table/src/components/Body/BodyCell.js.map +1 -1
  182. package/lib/components/table/src/components/Body/BodyRow.vue.js.map +1 -1
  183. package/lib/components/table/src/components/Body/BodyRow.vue2.js +3 -3
  184. package/lib/components/table/src/components/Body/BodyRow.vue2.js.map +1 -1
  185. package/lib/components/table/src/components/Drag/RowHandler.vue.js.map +1 -1
  186. package/lib/components/table/src/components/Drag/RowHandler.vue2.js +17 -16
  187. package/lib/components/table/src/components/Drag/RowHandler.vue2.js.map +1 -1
  188. package/lib/components/table/src/components/Header/HeaderCellTitle.vue.js +18 -6
  189. package/lib/components/table/src/components/Header/HeaderCellTitle.vue.js.map +1 -1
  190. package/lib/components/table/src/components/Header/HeaderCellTitle.vue2.js +1 -0
  191. package/lib/components/table/src/components/Header/HeaderCellTitle.vue2.js.map +1 -1
  192. package/lib/components/table/src/components/Header/HeaderExtraCell.vue.js.map +1 -1
  193. package/lib/components/table/src/components/Header/HeaderExtraCell.vue2.js +1 -0
  194. package/lib/components/table/src/components/Header/HeaderExtraCell.vue2.js.map +1 -1
  195. package/lib/components/table/src/components/InteralTable.vue.d.ts +21 -0
  196. package/lib/components/table/src/components/InteralTable.vue.js.map +1 -1
  197. package/lib/components/table/src/components/InteralTable.vue2.js +12 -6
  198. package/lib/components/table/src/components/InteralTable.vue2.js.map +1 -1
  199. package/lib/components/table/src/components/Table.d.ts +25 -4
  200. package/lib/components/table/src/components/Table.js +47 -13
  201. package/lib/components/table/src/components/Table.js.map +1 -1
  202. package/lib/components/table/src/components/ToolBar/ToolBar.vue.js +24 -5
  203. package/lib/components/table/src/components/ToolBar/ToolBar.vue.js.map +1 -1
  204. package/lib/components/table/src/components/ToolBar/ToolBar.vue2.js.map +1 -1
  205. package/lib/components/table/src/components/interface.d.ts +33 -5
  206. package/lib/components/table/src/components/interface.js +10 -1
  207. package/lib/components/table/src/components/interface.js.map +1 -1
  208. package/lib/components/table/src/hooks/useCellProps.js +3 -1
  209. package/lib/components/table/src/hooks/useCellProps.js.map +1 -1
  210. package/lib/components/table/src/hooks/useContainer.js +1 -1
  211. package/lib/components/table/src/hooks/useContainer.js.map +1 -1
  212. package/lib/components/table/src/hooks/useFetchData.js +13 -18
  213. package/lib/components/table/src/hooks/useFetchData.js.map +1 -1
  214. package/lib/components/table/src/hooks/useHover.d.ts +3 -0
  215. package/lib/components/table/src/hooks/useHover.js +2 -0
  216. package/lib/components/table/src/hooks/useHover.js.map +1 -1
  217. package/lib/components/table/src/hooks/usePagination.d.ts +1 -0
  218. package/lib/components/table/src/hooks/usePagination.js +7 -1
  219. package/lib/components/table/src/hooks/usePagination.js.map +1 -1
  220. package/lib/components/table/src/utils/genProColumnToColumn.js +5 -4
  221. package/lib/components/table/src/utils/genProColumnToColumn.js.map +1 -1
  222. package/lib/components/table/src/utils/util.d.ts +1 -1
  223. package/lib/components/table/src/utils/util.js +1 -1
  224. package/lib/components/table/src/utils/util.js.map +1 -1
  225. package/lib/index.d.ts +70 -26
  226. package/lib/utils/validate.d.ts +1 -1
  227. package/lib/utils/validate.js +1 -1
  228. package/lib/utils/validate.js.map +1 -1
  229. package/lib/version.d.ts +1 -1
  230. package/lib/version.js +1 -1
  231. package/lib/version.js.map +1 -1
  232. package/package.json +1 -1
  233. package/theme-chalk/css-var.css +1 -1
  234. package/theme-chalk/index.css +1 -1
  235. package/theme-chalk/pro-form.css +1 -1
  236. package/theme-chalk/src/css-var.less +154 -677
  237. package/theme-chalk/src/form.less +5 -0
  238. package/theme-chalk/src/table/alert.less +1 -0
  239. package/theme-chalk/src/table/table.less +3 -3
  240. package/theme-chalk/src/common/css-var.less +0 -914
@@ -1 +1 @@
1
- {"version":3,"file":"FormSet.mjs","sources":["../../../../../../../packages/components/form/src/components/FormSet.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 10:36:49\n * @LastEditors: shen\n * @LastEditTime: 2025-07-26 11:52:13\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { computed, defineComponent, watch } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { get, isEqual, omitUndefined, pickKeys, runFunction } from '@pro-design-vue/utils'\nimport FormRowWrapper from './FormRowWrapper'\nimport FormColWrapper from './FormColWrapper'\nimport FormItems from './FormItems'\nimport FormTitle from './FormTitle'\n\nconst NOT_ALLOW_FIELD_TYPES = ['formList', 'formSet', 'group', 'divider']\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'required',\n]\n\nexport default defineComponent({\n name: 'FormSet',\n inheritAttrs: false,\n props: {\n name: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n initialValue: {\n type: Object as PropType<ProFormItemType['initialValue']>,\n default: undefined,\n },\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: String,\n default: undefined,\n },\n colProps: {\n type: Object as PropType<ProFormItemType['colProps']>,\n default: undefined,\n },\n rowProps: {\n type: Object as PropType<ProFormItemType['rowProps']>,\n default: undefined,\n },\n spaceProps: {\n type: Object as PropType<ProFormItemType['spaceProps']>,\n default: () => ({}),\n },\n formItemProps: {\n type: [Object, Function] as PropType<ProFormItemType['formItemProps']>,\n default: undefined,\n },\n convertValue: {\n type: Function as PropType<ProFormItemType['convertValue']>,\n default: undefined,\n },\n transform: {\n type: Function as PropType<ProFormItemType['transform']>,\n default: undefined,\n },\n items: {\n type: [Array, Function] as PropType<ProFormItemType['children']>,\n default: undefined,\n },\n },\n setup(props) {\n const { formatItems, formData } = useInjectForm()\n\n const { fieldValue, onValueChange } = useFieldValue<any>({\n namePath: computed(() => props.name!),\n initialValue: props.initialValue,\n convertValue: props.convertValue,\n transform: props.transform,\n })\n\n const formItemProps = computed(() => runFunction(props.formItemProps, formData.value) ?? {})\n const restItemProps = computed(() =>\n omitUndefined({\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n }),\n )\n\n const items = computed(() => {\n let children: ProFormItemType[] = runFunction(props.items ?? [], formData.value) ?? []\n if (Array.isArray(props.initialValue) && props.initialValue.length) {\n children = children\n .filter((item) => !NOT_ALLOW_FIELD_TYPES.includes(item.fieldType ?? ''))\n .map((child, index) => {\n if (typeof child.initialValue === 'undefined') {\n child.initialValue = props.initialValue[index]\n }\n return child\n })\n }\n return formatItems?.(children) ?? []\n })\n const childNames = computed(() => items.value.map((item) => item.name))\n\n const childValues = computed(() => {\n const values: any[] = []\n if (Array.isArray(childNames.value) && childNames.value.length) {\n childNames.value.forEach((namePath, index) => {\n values[index] = get(formData.value, namePath!)\n })\n }\n return values\n })\n const slotsGetter = computed(() => {\n const temp = {}\n if (props.title) {\n temp['label'] = () => <FormTitle title={props.title} tooltip={props.tooltip} />\n }\n return temp\n })\n\n watch(childValues, () => {\n if (!isEqual(childValues.value, fieldValue.value)) {\n onValueChange(childValues.value)\n }\n })\n return () => {\n if (!props.name?.length || !items.value.length) return null\n return (\n <FormColWrapper colProps={props.colProps}>\n <Form.Item {...restItemProps.value} v-slots={slotsGetter.value}>\n <FormRowWrapper rowProps={props.rowProps}>\n <FormItems\n list={items.value}\n type=\"space\"\n spaceProps={{ size: [8, 0], ...(props.spaceProps ?? {}) }}\n ></FormItems>\n </FormRowWrapper>\n </Form.Item>\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["NOT_ALLOW_FIELD_TYPES","ALL_ANTD_PROP_KEYS","name","inheritAttrs","props","type","String","Array","default","undefined","initialValue","Object","title","Function","tooltip","colProps","rowProps","spaceProps","formItemProps","convertValue","transform","items","setup","formatItems","formData","useInjectForm","fieldValue","onValueChange","useFieldValue","namePath","computed","runFunction","value","restItemProps","omitUndefined","pickKeys","children","isArray","length","filter","item","_a","includes","fieldType","map","child","index","childNames","childValues","values","forEach","get","slotsGetter","temp","_createVNode","FormTitle","watch","isEqual","FormColWrapper","Form","Item","FormRowWrapper","FormItems","size"],"mappings":"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"}
1
+ {"version":3,"file":"FormSet.mjs","sources":["../../../../../../../packages/components/form/src/components/FormSet.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 10:36:49\n * @LastEditors: shen\n * @LastEditTime: 2025-10-07 13:17:07\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { computed, defineComponent, watch } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { get, isEqual, omitUndefined, pickKeys, runFunction } from '@pro-design-vue/utils'\nimport FormRowWrapper from './FormRowWrapper'\nimport FormColWrapper from './FormColWrapper'\nimport FormItems from './FormItems'\nimport FormTitle from './FormTitle'\n\nconst NOT_ALLOW_FIELD_TYPES = ['formList', 'formSet', 'group', 'divider']\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'required',\n]\n\nexport default defineComponent({\n name: 'FormSet',\n inheritAttrs: false,\n props: {\n name: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n initialValue: {\n type: Object as PropType<ProFormItemType['initialValue']>,\n default: undefined,\n },\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: [String, Boolean],\n default: undefined,\n },\n colProps: {\n type: Object as PropType<ProFormItemType['colProps']>,\n default: undefined,\n },\n rowProps: {\n type: Object as PropType<ProFormItemType['rowProps']>,\n default: undefined,\n },\n spaceProps: {\n type: Object as PropType<ProFormItemType['spaceProps']>,\n default: () => ({}),\n },\n formItemProps: {\n type: [Object, Function] as PropType<ProFormItemType['formItemProps']>,\n default: undefined,\n },\n convertValue: {\n type: Function as PropType<ProFormItemType['convertValue']>,\n default: undefined,\n },\n transform: {\n type: Function as PropType<ProFormItemType['transform']>,\n default: undefined,\n },\n items: {\n type: [Array, Function] as PropType<ProFormItemType['children']>,\n default: undefined,\n },\n },\n setup(props) {\n const { formatItems, formData } = useInjectForm()\n\n const { fieldValue, onValueChange } = useFieldValue<any>({\n namePath: computed(() => props.name!),\n initialValue: props.initialValue,\n convertValue: props.convertValue,\n transform: props.transform,\n })\n\n const formItemProps = computed(() => runFunction(props.formItemProps, formData.value) ?? {})\n const restItemProps = computed(() =>\n omitUndefined({\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n }),\n )\n\n const items = computed(() => {\n let children: ProFormItemType[] = runFunction(props.items ?? [], formData.value) ?? []\n if (Array.isArray(props.initialValue) && props.initialValue.length) {\n children = children\n .filter((item) => !NOT_ALLOW_FIELD_TYPES.includes(item.fieldType ?? ''))\n .map((child, index) => {\n if (typeof child.initialValue === 'undefined') {\n child.initialValue = props.initialValue[index]\n }\n return child\n })\n }\n return formatItems?.(children) ?? []\n })\n const childNames = computed(() => items.value.map((item) => item.name))\n\n const childValues = computed(() => {\n const values: any[] = []\n if (Array.isArray(childNames.value) && childNames.value.length) {\n childNames.value.forEach((namePath, index) => {\n values[index] = get(formData.value, namePath!)\n })\n }\n return values\n })\n const slotsGetter = computed(() => {\n const temp = {}\n if (props.title) {\n temp['label'] = () => <FormTitle title={props.title} tooltip={props.tooltip} />\n }\n return temp\n })\n\n watch(childValues, () => {\n if (!isEqual(childValues.value, fieldValue.value)) {\n onValueChange(childValues.value)\n }\n })\n return () => {\n if (!props.name?.length || !items.value.length) return null\n return (\n <FormColWrapper colProps={props.colProps}>\n <Form.Item {...restItemProps.value} v-slots={slotsGetter.value}>\n <FormRowWrapper rowProps={props.rowProps}>\n <FormItems\n list={items.value}\n type=\"space\"\n spaceProps={{ size: [8, 0], ...(props.spaceProps ?? {}) }}\n ></FormItems>\n </FormRowWrapper>\n </Form.Item>\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["NOT_ALLOW_FIELD_TYPES","ALL_ANTD_PROP_KEYS","name","inheritAttrs","props","type","String","Array","default","undefined","initialValue","Object","title","Function","tooltip","Boolean","colProps","rowProps","spaceProps","formItemProps","convertValue","transform","items","setup","formatItems","formData","useInjectForm","fieldValue","onValueChange","useFieldValue","namePath","computed","runFunction","value","restItemProps","omitUndefined","pickKeys","children","isArray","length","filter","item","_a","includes","fieldType","map","child","index","childNames","childValues","values","forEach","get","slotsGetter","temp","_createVNode","FormTitle","watch","isEqual","FormColWrapper","Form","Item","FormRowWrapper","FormItems","size"],"mappings":"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"}
@@ -69,8 +69,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
69
69
  }>> & Readonly<{}>, {
70
70
  reverse: boolean;
71
71
  loading: boolean;
72
- onReset: ((value?: Record<string, any> | undefined) => void) | undefined;
73
- onSubmit: ((value?: Record<string, any> | undefined) => void) | undefined;
72
+ onReset: ((formData: import("pro-design-vue").Entity, action?: import("pro-design-vue").ProFormActionType) => Promise<boolean | void> | boolean | void) | undefined;
73
+ onSubmit: ((formData: import("pro-design-vue").Entity, action?: import("pro-design-vue").ProFormActionType) => Promise<boolean | void> | boolean | void) | undefined;
74
74
  render: false | ((paramer: {
75
75
  props: SubmitterProps & {
76
76
  submit: () => void;
@@ -51,15 +51,33 @@ var FormSubmitter = /* @__PURE__ */ defineComponent({
51
51
  action
52
52
  } = useInjectForm();
53
53
  const formSlotsContext = useInjectSlots();
54
- const submit = () => {
54
+ const submit = async () => {
55
55
  var _a;
56
- action.submit();
57
- (_a = props.onSubmit) == null ? void 0 : _a.call(props);
56
+ if (!props.onSubmit) {
57
+ action.submit();
58
+ return;
59
+ }
60
+ const values = action.getFieldsValue();
61
+ const response = (_a = props.onSubmit) == null ? void 0 : _a.call(props, values, action);
62
+ const result = await response;
63
+ if (result) {
64
+ action.submit();
65
+ }
66
+ return result;
58
67
  };
59
- const reset = () => {
60
- var _a, _b;
61
- (_a = action.reset) == null ? void 0 : _a.call(action);
62
- (_b = props.onReset) == null ? void 0 : _b.call(props);
68
+ const reset = async () => {
69
+ var _a;
70
+ if (!props.onReset) {
71
+ action.reset();
72
+ return;
73
+ }
74
+ const values = action.getFieldsValue();
75
+ const response = (_a = props.onReset) == null ? void 0 : _a.call(props, values, action);
76
+ const result = await response;
77
+ if (result) {
78
+ action.reset();
79
+ }
80
+ return result;
63
81
  };
64
82
  const resetButton = computed(() => {
65
83
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"FormSubmitter.mjs","sources":["../../../../../../../packages/components/form/src/components/FormSubmitter.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-27 12:25:01\n * @LastEditors: shen\n * @LastEditTime: 2025-07-26 11:52:40\n * @Description:\n */\nimport type { CSSProperties, PropType } from 'vue'\nimport type { SubmitterProps } from '../type'\n\nimport { computed, defineComponent } from 'vue'\nimport { Button } from 'ant-design-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { omit } from '@pro-design-vue/utils'\n\nexport default defineComponent({\n name: 'FormSubmitter',\n inheritAttrs: false,\n props: {\n loading: {\n type: Boolean,\n default: undefined,\n },\n reverse: {\n type: Boolean,\n default: undefined,\n },\n onSubmit: {\n type: Function as PropType<SubmitterProps['onSubmit']>,\n default: undefined,\n },\n onReset: {\n type: Function as PropType<SubmitterProps['onReset']>,\n default: undefined,\n },\n searchConfig: {\n type: Object as PropType<SubmitterProps['searchConfig']>,\n default: undefined,\n },\n submitButtonProps: {\n type: [Object, Boolean] as PropType<SubmitterProps['submitButtonProps']>,\n default: undefined,\n },\n resetButtonProps: {\n type: [Object, Boolean] as PropType<SubmitterProps['resetButtonProps']>,\n default: undefined,\n },\n render: {\n type: [Function, Boolean] as PropType<SubmitterProps['render']>,\n default: undefined,\n },\n },\n setup(props, { attrs }) {\n const { action } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n\n const submit = () => {\n action.submit()\n props.onSubmit?.()\n }\n\n const reset = () => {\n action.reset?.()\n props.onReset?.()\n }\n const resetButton = computed(() => {\n const { searchConfig = {}, resetButtonProps = {} } = props\n if (resetButtonProps === false) {\n return null\n }\n const { resetText = '重置' } = searchConfig\n return (\n <Button\n {...omit(resetButtonProps, ['preventDefault', 'onClick'])}\n key=\"reset\"\n onClick={(e) => {\n if (!resetButtonProps.preventDefault) {\n reset()\n }\n ;(resetButtonProps as any).onClick?.(e)\n }}\n >\n {resetText}\n </Button>\n )\n })\n\n const submitButton = computed(() => {\n const { searchConfig = {}, submitButtonProps = {} } = props\n if (submitButtonProps === false) {\n return null\n }\n const { submitText = '提交' } = searchConfig\n return (\n <Button\n type=\"primary\"\n {...omit(submitButtonProps || {}, ['preventDefault', 'onClick'])}\n key=\"submit\"\n onClick={(e) => {\n if (!submitButtonProps.preventDefault) {\n submit()\n }\n ;(submitButtonProps as any).onClick?.(e)\n }}\n >\n {submitText}\n </Button>\n )\n })\n return () => {\n if (props.render === false) {\n return null\n }\n const { render = formSlotsContext['submitter'] } = props\n const dom = props.reverse ? (\n <>\n {resetButton.value}\n {submitButton.value}\n </>\n ) : (\n <>\n {submitButton.value}\n {resetButton.value}\n </>\n )\n\n const renderDom = render\n ? render({ props: { ...props, submit, reset }, action, defaultDoms: dom })\n : dom\n\n return (\n <div\n style={{\n display: 'flex',\n gap: '8px',\n alignItems: 'center',\n ...(attrs.style as CSSProperties),\n }}\n class={attrs.class}\n >\n {renderDom}\n </div>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","loading","type","Boolean","default","undefined","reverse","onSubmit","Function","onReset","searchConfig","submitButtonProps","resetButtonProps","render","setup","attrs","action","useInjectForm","formSlotsContext","useInjectSlots","submit","reset","resetButton","computed","resetText","_createVNode","Button","_mergeProps","omit","e","preventDefault","onClick","submitButton","submitText","dom","_Fragment","value","renderDom","defaultDoms","display","gap","alignItems","style","class"],"mappings":"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"}
1
+ {"version":3,"file":"FormSubmitter.mjs","sources":["../../../../../../../packages/components/form/src/components/FormSubmitter.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-27 12:25:01\n * @LastEditors: shen\n * @LastEditTime: 2025-09-26 09:33:40\n * @Description:\n */\nimport type { CSSProperties, PropType } from 'vue'\nimport type { SubmitterProps } from '../type'\n\nimport { computed, defineComponent } from 'vue'\nimport { Button } from 'ant-design-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { omit } from '@pro-design-vue/utils'\n\nexport default defineComponent({\n name: 'FormSubmitter',\n inheritAttrs: false,\n props: {\n loading: {\n type: Boolean,\n default: undefined,\n },\n reverse: {\n type: Boolean,\n default: undefined,\n },\n onSubmit: {\n type: Function as PropType<SubmitterProps['onSubmit']>,\n default: undefined,\n },\n onReset: {\n type: Function as PropType<SubmitterProps['onReset']>,\n default: undefined,\n },\n searchConfig: {\n type: Object as PropType<SubmitterProps['searchConfig']>,\n default: undefined,\n },\n submitButtonProps: {\n type: [Object, Boolean] as PropType<SubmitterProps['submitButtonProps']>,\n default: undefined,\n },\n resetButtonProps: {\n type: [Object, Boolean] as PropType<SubmitterProps['resetButtonProps']>,\n default: undefined,\n },\n render: {\n type: [Function, Boolean] as PropType<SubmitterProps['render']>,\n default: undefined,\n },\n },\n setup(props, { attrs }) {\n const { action } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n\n const submit = async () => {\n if (!props.onSubmit) {\n action.submit()\n return\n }\n const values = action.getFieldsValue()\n const response = props.onSubmit?.(values!, action)\n const result = await response\n if (result) {\n action.submit()\n }\n return result\n }\n\n const reset = async () => {\n if (!props.onReset) {\n action.reset()\n return\n }\n const values = action.getFieldsValue()\n const response = props.onReset?.(values!, action)\n const result = await response\n if (result) {\n action.reset()\n }\n return result\n }\n const resetButton = computed(() => {\n const { searchConfig = {}, resetButtonProps = {} } = props\n if (resetButtonProps === false) {\n return null\n }\n const { resetText = '重置' } = searchConfig\n return (\n <Button\n {...omit(resetButtonProps, ['preventDefault', 'onClick'])}\n key=\"reset\"\n onClick={(e) => {\n if (!resetButtonProps.preventDefault) {\n reset()\n }\n ;(resetButtonProps as any).onClick?.(e)\n }}\n >\n {resetText}\n </Button>\n )\n })\n\n const submitButton = computed(() => {\n const { searchConfig = {}, submitButtonProps = {} } = props\n if (submitButtonProps === false) {\n return null\n }\n const { submitText = '提交' } = searchConfig\n return (\n <Button\n type=\"primary\"\n {...omit(submitButtonProps || {}, ['preventDefault', 'onClick'])}\n key=\"submit\"\n onClick={(e) => {\n if (!submitButtonProps.preventDefault) {\n submit()\n }\n ;(submitButtonProps as any).onClick?.(e)\n }}\n >\n {submitText}\n </Button>\n )\n })\n return () => {\n if (props.render === false) {\n return null\n }\n const { render = formSlotsContext['submitter'] } = props\n const dom = props.reverse ? (\n <>\n {resetButton.value}\n {submitButton.value}\n </>\n ) : (\n <>\n {submitButton.value}\n {resetButton.value}\n </>\n )\n\n const renderDom = render\n ? render({ props: { ...props, submit, reset }, action, defaultDoms: dom })\n : dom\n\n return (\n <div\n style={{\n display: 'flex',\n gap: '8px',\n alignItems: 'center',\n ...(attrs.style as CSSProperties),\n }}\n class={attrs.class}\n >\n {renderDom}\n </div>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","loading","type","Boolean","default","undefined","reverse","onSubmit","Function","onReset","searchConfig","submitButtonProps","resetButtonProps","render","setup","attrs","action","useInjectForm","formSlotsContext","useInjectSlots","submit","values","getFieldsValue","response","result","reset","resetButton","computed","resetText","_createVNode","Button","_mergeProps","omit","e","preventDefault","onClick","submitButton","submitText","dom","_Fragment","value","renderDom","defaultDoms","display","gap","alignItems","style","class"],"mappings":";;;;;;AAc4C,SAAAA,QAAAC,CAAAA,EAAA;AAAA,EAAA,OAAA,OAAAA,CAAAA,KAAA,UAAA,IAAAC,MAAAA,CAAAC,SAAAA,CAAAC,QAAAA,CAAAC,IAAAA,CAAAJ,CAAA,CAAA,KAAA,iBAAA,IAAA,CAAAK,OAAAA,CAAAL,CAAA,CAAA;AAAA;AAE5C,oDAA+B;AAAA,EAC7BM,IAAAA,EAAM,eAAA;AAAA,EACNC,YAAAA,EAAc,KAAA;AAAA,EACdC,KAAAA,EAAO;AAAA,IACLC,OAAAA,EAAS;AAAA,MACPC,IAAAA,EAAMC,OAAAA;AAAAA,MACNC,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAC,OAAAA,EAAS;AAAA,MACPJ,IAAAA,EAAMC,OAAAA;AAAAA,MACNC,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAE,QAAAA,EAAU;AAAA,MACRL,IAAAA,EAAMM,QAAAA;AAAAA,MACNJ,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAI,OAAAA,EAAS;AAAA,MACPP,IAAAA,EAAMM,QAAAA;AAAAA,MACNJ,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAK,YAAAA,EAAc;AAAA,MACZR,IAAAA,EAAMT,MAAAA;AAAAA,MACNW,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAM,iBAAAA,EAAmB;AAAA,MACjBT,IAAAA,EAAM,CAACT,MAAAA,EAAQU,OAAO,CAAA;AAAA,MACtBC,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAO,gBAAAA,EAAkB;AAAA,MAChBV,IAAAA,EAAM,CAACT,MAAAA,EAAQU,OAAO,CAAA;AAAA,MACtBC,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAQ,MAAAA,EAAQ;AAAA,MACNX,IAAAA,EAAM,CAACM,QAAAA,EAAUL,OAAO,CAAA;AAAA,MACxBC,OAAAA,EAASC;AAAAA;AACX,GACF;AAAA,EACAS,MAAMd,KAAAA,EAAO;AAAA,IAAEe;AAAAA,GAAM,EAAG;AACtB,IAAA,MAAM;AAAA,MAAEC;AAAAA,QAAWC,aAAAA,EAAc;AACjC,IAAA,MAAMC,mBAAmBC,cAAAA,EAAe;AAExC,IAAA,MAAMC,SAAS,YAAY;AAzD/B,MAAA,IAAA,EAAA;AA0DM,MAAA,IAAI,CAACpB,MAAMO,QAAAA,EAAU;AACnBS,QAAAA,MAAAA,CAAOI,MAAAA,EAAO;AACd,QAAA;AAAA,MACF;AACA,MAAA,MAAMC,MAAAA,GAASL,OAAOM,cAAAA,EAAe;AACrC,MAAA,MAAMC,QAAAA,GAAAA,CAAWvB,EAAAA,GAAAA,KAAAA,CAAMO,QAAAA,KAANP,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,EAAiBqB,MAAAA,EAASL,MAAAA,CAAAA;AAC3C,MAAA,MAAMQ,SAAS,MAAMD,QAAAA;AACrB,MAAA,IAAIC,MAAAA,EAAQ;AACVR,QAAAA,MAAAA,CAAOI,MAAAA,EAAO;AAAA,MAChB;AACA,MAAA,OAAOI,MAAAA;AAAAA,IACT,CAAA;AAEA,IAAA,MAAMC,QAAQ,YAAY;AAvE9B,MAAA,IAAA,EAAA;AAwEM,MAAA,IAAI,CAACzB,MAAMS,OAAAA,EAAS;AAClBO,QAAAA,MAAAA,CAAOS,KAAAA,EAAM;AACb,QAAA;AAAA,MACF;AACA,MAAA,MAAMJ,MAAAA,GAASL,OAAOM,cAAAA,EAAe;AACrC,MAAA,MAAMC,QAAAA,GAAAA,CAAWvB,EAAAA,GAAAA,KAAAA,CAAMS,OAAAA,KAANT,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,EAAgBqB,MAAAA,EAASL,MAAAA,CAAAA;AAC1C,MAAA,MAAMQ,SAAS,MAAMD,QAAAA;AACrB,MAAA,IAAIC,MAAAA,EAAQ;AACVR,QAAAA,MAAAA,CAAOS,KAAAA,EAAM;AAAA,MACf;AACA,MAAA,OAAOD,MAAAA;AAAAA,IACT,CAAA;AACA,IAAA,MAAME,WAAAA,GAAcC,SAAS,MAAM;AACjC,MAAA,MAAM;AAAA,QAAEjB,eAAe,EAAC;AAAA,QAAGE,mBAAmB;AAAC,OAAE,GAAIZ,KAAAA;AACrD,MAAA,IAAIY,qBAAqB,KAAA,EAAO;AAC9B,QAAA,OAAO,IAAA;AAAA,MACT;AACA,MAAA,MAAM;AAAA,QAAEgB,SAAAA,GAAY;AAAA,OAAK,GAAIlB,YAAAA;AAC7B,MAAA,OAAAmB,WAAAA,CAAAC,QAAAC,UAAAA,CAEQC,IAAAA,CAAKpB,kBAAkB,CAAC,gBAAA,EAAkB,SAAS,CAAC,CAAA,EAAC;AAAA,QAAA,KAAA,EAAA,OAAA;AAAA,QAAA,WAE/CqB,CAAAA,CAAAA,KAAM;AA9F1B,UAAA,IAAA,EAAA;AA+FY,UAAA,IAAI,CAACrB,iBAAiBsB,cAAAA,EAAgB;AACpCT,YAAAA,KAAAA,EAAM;AAAA,UACR;AACEb,UAAAA,CAAAA,EAAAA,GAAAA,gBAAAA,CAAyBuB,YAAzBvB,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,gBAAAA,EAAmCqB,CAAAA,CAAAA;AAAAA,QACvC;AAAA,OAAC,CAAA,EAAA1C,OAAAA,CAEAqC,SAAS,IAATA,SAAAA,GAAS;AAAA,QAAAxB,OAAAA,EAAAA,MAAA,CAATwB,SAAS;AAAA,OAAA,CAAA;AAAA,IAGhB,CAAC,CAAA;AAED,IAAA,MAAMQ,YAAAA,GAAeT,SAAS,MAAM;AAClC,MAAA,MAAM;AAAA,QAAEjB,eAAe,EAAC;AAAA,QAAGC,oBAAoB;AAAC,OAAE,GAAIX,KAAAA;AACtD,MAAA,IAAIW,sBAAsB,KAAA,EAAO;AAC/B,QAAA,OAAO,IAAA;AAAA,MACT;AACA,MAAA,MAAM;AAAA,QAAE0B,UAAAA,GAAa;AAAA,OAAK,GAAI3B,YAAAA;AAC9B,MAAA,OAAAmB,WAAAA,CAAAC,QAAAC,UAAAA,CAAA;AAAA,QAAA,MAAA,EAAA;AAAA,OAAA,EAGQC,KAAKrB,iBAAAA,IAAqB,IAAI,CAAC,gBAAA,EAAkB,SAAS,CAAC,CAAA,EAAC;AAAA,QAAA,KAAA,EAAA,QAAA;AAAA,QAAA,WAEtDsB,CAAAA,CAAAA,KAAM;AArH1B,UAAA,IAAA,EAAA;AAsHY,UAAA,IAAI,CAACtB,kBAAkBuB,cAAAA,EAAgB;AACrCd,YAAAA,MAAAA,EAAO;AAAA,UACT;AACET,UAAAA,CAAAA,EAAAA,GAAAA,iBAAAA,CAA0BwB,YAA1BxB,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,iBAAAA,EAAoCsB,CAAAA,CAAAA;AAAAA,QACxC;AAAA,OAAC,CAAA,EAAA1C,OAAAA,CAEA8C,UAAU,IAAVA,UAAAA,GAAU;AAAA,QAAAjC,OAAAA,EAAAA,MAAA,CAAViC,UAAU;AAAA,OAAA,CAAA;AAAA,IAGjB,CAAC,CAAA;AACD,IAAA,OAAO,MAAM;AACX,MAAA,IAAIrC,KAAAA,CAAMa,WAAW,KAAA,EAAO;AAC1B,QAAA,OAAO,IAAA;AAAA,MACT;AACA,MAAA,MAAM;AAAA,QAAEA,MAAAA,GAASK,iBAAiB,WAAW;AAAA,OAAE,GAAIlB,KAAAA;AACnD,MAAA,MAAMsC,GAAAA,GAAMtC,MAAMM,OAAAA,GAAOuB,WAAAA,CAAAU,UAAA,IAAA,EAAA,CAEpBb,YAAYc,KAAAA,EACZJ,YAAAA,CAAaI,KAAK,CAAA,CAAA,GAAAX,YAAAU,QAAAA,EAAA,IAAA,EAAA,CAIlBH,YAAAA,CAAaI,KAAAA,EACbd,WAAAA,CAAYc,KAAK,CAAA,CAAA;AAItB,MAAA,MAAMC,SAAAA,GAAY5B,SACdA,MAAAA,CAAO;AAAA,QAAEb,KAAAA,EAAO;AAAA,UAAE,GAAGA,KAAAA;AAAAA,UAAOoB,MAAAA;AAAAA,UAAQK;AAAAA,SAAM;AAAA,QAAGT,MAAAA;AAAAA,QAAQ0B,WAAAA,EAAaJ;AAAAA,OAAK,CAAA,GACvEA,GAAAA;AAEJ,MAAA,OAAAT,YAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAEW;AAAA,UACLc,OAAAA,EAAS,MAAA;AAAA,UACTC,GAAAA,EAAK,KAAA;AAAA,UACLC,UAAAA,EAAY,QAAA;AAAA,UACZ,GAAI9B,KAAAA,CAAM+B;AAAAA,SACZ;AAAA,QAAC,SACM/B,KAAAA,CAAMgC;AAAAA,OAAK,EAAA,CAEjBN,SAAS,CAAA,CAAA;AAAA,IAGhB,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
@@ -6,7 +6,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
6
6
  default: undefined;
7
7
  };
8
8
  tooltip: {
9
- type: StringConstructor;
9
+ type: (BooleanConstructor | StringConstructor)[];
10
10
  default: string;
11
11
  };
12
12
  }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -15,11 +15,13 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
15
15
  default: undefined;
16
16
  };
17
17
  tooltip: {
18
- type: StringConstructor;
18
+ type: (BooleanConstructor | StringConstructor)[];
19
19
  default: string;
20
20
  };
21
21
  }>> & Readonly<{}>, {
22
- title: import("pro-design-vue").ProVNode | ((formData: import("pro-design-vue").Entity) => import("pro-design-vue").ProVNode);
23
- tooltip: string;
22
+ title: import("pro-design-vue").ProVNode | ((params: {
23
+ formData: import("pro-design-vue").Entity;
24
+ }) => import("pro-design-vue").ProVNode);
25
+ tooltip: string | boolean;
24
26
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
25
27
  export default _default;
@@ -15,7 +15,7 @@ var FormTitle = /* @__PURE__ */ defineComponent({
15
15
  default: void 0
16
16
  },
17
17
  tooltip: {
18
- type: String,
18
+ type: [String, Boolean],
19
19
  default: ""
20
20
  }
21
21
  },
@@ -33,12 +33,17 @@ var FormTitle = /* @__PURE__ */ defineComponent({
33
33
  "props": {
34
34
  formData: formData.value
35
35
  }
36
- }, null)]), props.tooltip && createVNode(Tooltip, {
37
- "title": props.tooltip
38
- }, {
36
+ }, null)]), props.tooltip && createVNode(Tooltip, null, {
39
37
  default: () => [createVNode(QuestionCircleOutlined, {
40
- "class": `${prefixCls}-item-tooltip`
41
- }, null)]
38
+ "class": `${prefixCls}-item-tooltip`,
39
+ "style": "margin-right: 3px"
40
+ }, null)],
41
+ title: () => props.tooltip === true ? createVNode(RenderVNode, {
42
+ "vnode": title.value,
43
+ "props": {
44
+ formData: formData.value
45
+ }
46
+ }, null) : props.tooltip
42
47
  })]);
43
48
  }
44
49
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FormTitle.mjs","sources":["../../../../../../../packages/components/form/src/components/FormTitle.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 13:00:22\n * @LastEditors: shen\n * @LastEditTime: 2025-07-31 10:05:29\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed } from 'vue'\nimport { Tooltip } from 'ant-design-vue'\nimport { QuestionCircleOutlined } from '@ant-design/icons-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { RenderVNode } from '@pro-design-vue/utils'\n\nimport getSlot from '../utils/getSlot'\n\nexport default defineComponent({\n name: 'FormTitle',\n inheritAttrs: false,\n props: {\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: String,\n default: '',\n },\n },\n setup(props) {\n const formSlotsContext = useInjectSlots()\n const { prefixCls, formData } = useInjectForm()\n const title = computed(() => getSlot(props.title, formSlotsContext))\n return () => (\n <>\n {title.value && (\n <span class={`${prefixCls}-item-title-text`}>\n <RenderVNode vnode={title.value} props={{ formData: formData.value }} />\n </span>\n )}\n {props.tooltip && (\n <Tooltip title={props.tooltip}>\n <QuestionCircleOutlined class={`${prefixCls}-item-tooltip`} />\n </Tooltip>\n )}\n </>\n )\n },\n})\n"],"names":["name","inheritAttrs","props","title","type","String","Object","Function","default","undefined","tooltip","setup","formSlotsContext","useInjectSlots","prefixCls","formData","useInjectForm","computed","getSlot","_createVNode","_Fragment","value","RenderVNode","Tooltip","QuestionCircleOutlined"],"mappings":";;;;;;;;AAmBA,gDAA+B;AAAA,EAC7BA,IAAAA,EAAM,WAAA;AAAA,EACNC,YAAAA,EAAc,KAAA;AAAA,EACdC,KAAAA,EAAO;AAAA,IACLC,KAAAA,EAAO;AAAA,MACLC,IAAAA,EAAM,CAACC,MAAAA,EAAQC,MAAAA,EAAQC,QAAQ,CAAA;AAAA,MAC/BC,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAC,OAAAA,EAAS;AAAA,MACPN,IAAAA,EAAMC,MAAAA;AAAAA,MACNG,OAAAA,EAAS;AAAA;AACX,GACF;AAAA,EACAG,MAAMT,KAAAA,EAAO;AACX,IAAA,MAAMU,mBAAmBC,cAAAA,EAAe;AACxC,IAAA,MAAM;AAAA,MAAEC,SAAAA;AAAAA,MAAWC;AAAAA,QAAaC,aAAAA,EAAc;AAC9C,IAAA,MAAMb,QAAQc,QAAAA,CAAS,MAAMC,QAAQhB,KAAAA,CAAMC,KAAAA,EAAOS,gBAAgB,CAAC,CAAA;AACnE,IAAA,OAAO,MAAAO,YAAAC,QAAAA,SAEFjB,KAAAA,CAAMkB,KAAAA,IAAKF,YAAA,MAAA,EAAA;AAAA,MAAA,OAAA,EACG,GAAGL,SAAS,CAAA,gBAAA;AAAA,KAAkB,EAAA,CAAAK,WAAAA,CAAAG,WAAAA,EAAA;AAAA,MAAA,SACrBnB,KAAAA,CAAMkB,KAAAA;AAAAA,MAAK,OAAA,EAAS;AAAA,QAAEN,UAAUA,QAAAA,CAASM;AAAAA;AAAM,KAAC,EAAA,IAAA,CAAA,CAAA,GAGvEnB,KAAAA,CAAMQ,OAAAA,IAAOS,YAAAI,OAAAA,EAAA;AAAA,MAAA,SACIrB,KAAAA,CAAMQ;AAAAA,KAAO,EAAA;AAAA,MAAAF,OAAAA,EAAAA,MAAA,CAAAW,WAAAA,CAAAK,sBAAAA,EAAA;AAAA,QAAA,OAAA,EACI,GAAGV,SAAS,CAAA,aAAA;AAAA,OAAe,EAAA,IAAA,CAAA;AAAA,KAAA,CAE7D,CAAA,CAAA;AAAA,EAGP;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"FormTitle.mjs","sources":["../../../../../../../packages/components/form/src/components/FormTitle.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 13:00:22\n * @LastEditors: shen\n * @LastEditTime: 2025-10-07 11:54:30\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed } from 'vue'\nimport { Tooltip } from 'ant-design-vue'\nimport { QuestionCircleOutlined } from '@ant-design/icons-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { RenderVNode } from '@pro-design-vue/utils'\n\nimport getSlot from '../utils/getSlot'\n\nexport default defineComponent({\n name: 'FormTitle',\n inheritAttrs: false,\n props: {\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: [String, Boolean],\n default: '',\n },\n },\n setup(props) {\n const formSlotsContext = useInjectSlots()\n const { prefixCls, formData } = useInjectForm()\n const title = computed(() => getSlot(props.title, formSlotsContext))\n return () => (\n <>\n {title.value && (\n <span class={`${prefixCls}-item-title-text`}>\n <RenderVNode vnode={title.value} props={{ formData: formData.value }} />\n </span>\n )}\n {props.tooltip && (\n <Tooltip\n v-slots={{\n title: () =>\n props.tooltip === true ? (\n <RenderVNode vnode={title.value} props={{ formData: formData.value }} />\n ) : (\n props.tooltip\n ),\n }}\n >\n <QuestionCircleOutlined class={`${prefixCls}-item-tooltip`} style=\"margin-right: 3px\" />\n </Tooltip>\n )}\n </>\n )\n },\n})\n"],"names":["name","inheritAttrs","props","title","type","String","Object","Function","default","undefined","tooltip","Boolean","setup","formSlotsContext","useInjectSlots","prefixCls","formData","useInjectForm","computed","getSlot","_createVNode","_Fragment","value","RenderVNode","Tooltip","QuestionCircleOutlined"],"mappings":";;;;;;;;AAmBA,gDAA+B;AAAA,EAC7BA,IAAAA,EAAM,WAAA;AAAA,EACNC,YAAAA,EAAc,KAAA;AAAA,EACdC,KAAAA,EAAO;AAAA,IACLC,KAAAA,EAAO;AAAA,MACLC,IAAAA,EAAM,CAACC,MAAAA,EAAQC,MAAAA,EAAQC,QAAQ,CAAA;AAAA,MAC/BC,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAC,OAAAA,EAAS;AAAA,MACPN,IAAAA,EAAM,CAACC,MAAAA,EAAQM,OAAO,CAAA;AAAA,MACtBH,OAAAA,EAAS;AAAA;AACX,GACF;AAAA,EACAI,MAAMV,KAAAA,EAAO;AACX,IAAA,MAAMW,mBAAmBC,cAAAA,EAAe;AACxC,IAAA,MAAM;AAAA,MAAEC,SAAAA;AAAAA,MAAWC;AAAAA,QAAaC,aAAAA,EAAc;AAC9C,IAAA,MAAMd,QAAQe,QAAAA,CAAS,MAAMC,QAAQjB,KAAAA,CAAMC,KAAAA,EAAOU,gBAAgB,CAAC,CAAA;AACnE,IAAA,OAAO,MAAAO,YAAAC,QAAAA,SAEFlB,KAAAA,CAAMmB,KAAAA,IAAKF,YAAA,MAAA,EAAA;AAAA,MAAA,OAAA,EACG,GAAGL,SAAS,CAAA,gBAAA;AAAA,KAAkB,EAAA,CAAAK,WAAAA,CAAAG,WAAAA,EAAA;AAAA,MAAA,SACrBpB,KAAAA,CAAMmB,KAAAA;AAAAA,MAAK,OAAA,EAAS;AAAA,QAAEN,UAAUA,QAAAA,CAASM;AAAAA;AAAM,KAAC,EAAA,IAAA,CAAA,CAAA,GAGvEpB,KAAAA,CAAMQ,OAAAA,IAAOU,WAAAA,CAAAI,OAAAA,EAAA,IAAA,EAAA;AAAA,MAAAhB,OAAAA,EAAAA,MAAA,CAAAY,WAAAA,CAAAK,sBAAAA,EAAA;AAAA,QAAA,OAAA,EAWqB,GAAGV,SAAS,CAAA,aAAA,CAAA;AAAA,QAAe,OAAA,EAAA;AAAA,OAAA,EAAA,IAAA,CAAA,CAAA;AAAA,MARxDZ,OAAOA,MACLD,KAAAA,CAAMQ,OAAAA,KAAY,IAAA,GAAIU,YAAAG,WAAAA,EAAA;AAAA,QAAA,SACApB,KAAAA,CAAMmB,KAAAA;AAAAA,QAAK,OAAA,EAAS;AAAA,UAAEN,UAAUA,QAAAA,CAASM;AAAAA;AAAM,OAAC,EAAA,IAAA,CAAA,GAEpEpB,KAAAA,CAAMQ;AAAAA,KACP,CAKR,CAAA,CAAA;AAAA,EAGP;AACF,CAAC,CAAA;;;;"}
@@ -1,13 +1,16 @@
1
1
  import type { Ref, ShallowRef } from 'vue';
2
- import type { ProFormActionType, Entity } from '../type';
2
+ import type { ProFormActionType, Entity, TransformerMapType } from '../type';
3
3
  import type { ProFormProps } from '../props';
4
4
  import type { FormInstance } from 'ant-design-vue';
5
- export declare function useAction({ props, formRef, formData, initialValues, hasInitial, onFinish, onReset, onFinishFailed, }: {
5
+ export declare const transformKeySubmitValue: <T extends object = any>(values: T, transformerMap: TransformerMapType, paramsOmitNil?: boolean) => T;
6
+ export declare const convertKeyInitialValue: <T extends object = any>(values: T, transformerMap: TransformerMapType) => any;
7
+ export declare function useAction({ props, formRef, formData, initialValues, hasInitial, transformerMap, onFinish, onReset, onFinishFailed, }: {
6
8
  props: ProFormProps;
7
9
  formRef: Ref<FormInstance | undefined>;
8
10
  formData: Ref<Entity>;
9
11
  initialValues: ShallowRef<Entity>;
10
12
  hasInitial: Ref<boolean>;
13
+ transformerMap: ShallowRef<TransformerMapType>;
11
14
  onFinish: ProFormProps['onFinish'];
12
15
  onReset: ProFormProps['onReset'];
13
16
  onFinishFailed: ProFormProps['onFinishFailed'];
@@ -1,11 +1,135 @@
1
1
  import covertFormName from '../utils/namePath.mjs';
2
- import { cloneDeep, set, get, merge } from 'lodash-unified';
3
- import { isObject } from '../../../../utils/validate.mjs';
2
+ import { isValidElement } from '../../../../utils/clone-element.mjs';
3
+ import { isNil, isObject } from '../../../../utils/validate.mjs';
4
+ import { merge, set, cloneDeep, get } from 'lodash-unified';
4
5
 
5
- const transformKey = (values, paramsOmitNil, parentKey) => {
6
- console.log("\u{1F680} ~ transformKey ~ parentKey:", parentKey);
7
- console.log("\u{1F680} ~ transformKey ~ paramsOmitNil:", paramsOmitNil);
8
- return values;
6
+ function isPlainObj(itemValue) {
7
+ if (typeof itemValue !== "object") return false;
8
+ if (itemValue === null) return true;
9
+ if (isValidElement(itemValue)) return false;
10
+ if (itemValue.constructor === RegExp) return false;
11
+ if (itemValue instanceof Map) return false;
12
+ if (itemValue instanceof Set) return false;
13
+ if (itemValue instanceof HTMLElement) return false;
14
+ if (itemValue instanceof Blob) return false;
15
+ if (itemValue instanceof File) return false;
16
+ if (Array.isArray(itemValue)) return false;
17
+ return true;
18
+ }
19
+ const transformKeySubmitValue = (values, transformerMap, paramsOmitNil) => {
20
+ if (Object.keys(values).length < 1) {
21
+ return values;
22
+ }
23
+ if (typeof window === "undefined") return values;
24
+ if (typeof values !== "object" || isNil(values) || values instanceof Blob) {
25
+ return values;
26
+ }
27
+ let finalValues = Array.isArray(values) ? [] : {};
28
+ const gen = (tempValues, parentsKey) => {
29
+ const isArrayValues = Array.isArray(tempValues);
30
+ let result = isArrayValues ? [] : {};
31
+ if (tempValues == null || tempValues === void 0) {
32
+ return result;
33
+ }
34
+ Object.keys(tempValues).forEach((entityKey) => {
35
+ var _a;
36
+ const transformForArray = (transformList, subItemValue) => {
37
+ if (!Array.isArray(transformList)) return entityKey;
38
+ transformList.forEach((transform2, idx) => {
39
+ if (!transform2) return;
40
+ const subTransformItem = subItemValue == null ? void 0 : subItemValue[idx];
41
+ if (typeof transform2 === "function") {
42
+ subItemValue[idx] = transform2(subItemValue, entityKey, tempValues);
43
+ }
44
+ if (typeof transform2 === "object" && !Array.isArray(transform2)) {
45
+ Object.keys(transform2).forEach((transformArrayItem) => {
46
+ const subTransformItemValue = subTransformItem == null ? void 0 : subTransformItem[transformArrayItem];
47
+ if (typeof transform2[transformArrayItem] === "function" && subTransformItemValue) {
48
+ const res = transform2[transformArrayItem](
49
+ subTransformItem[transformArrayItem],
50
+ entityKey,
51
+ tempValues
52
+ );
53
+ subTransformItem[transformArrayItem] = typeof res === "object" ? res[transformArrayItem] : res;
54
+ } else if (typeof transform2[transformArrayItem] === "object" && Array.isArray(transform2[transformArrayItem]) && subTransformItemValue) {
55
+ transformForArray(transform2[transformArrayItem], subTransformItemValue);
56
+ }
57
+ });
58
+ }
59
+ if (typeof transform2 === "object" && Array.isArray(transform2) && subTransformItem) {
60
+ transformForArray(transform2, subTransformItem);
61
+ }
62
+ });
63
+ return entityKey;
64
+ };
65
+ const itemValue = tempValues[entityKey];
66
+ const transformFunction = (_a = transformerMap.get(entityKey)) == null ? void 0 : _a.transform;
67
+ const transform = () => {
68
+ let tempKey, transformedResult, isTransformedResultPrimitive = false;
69
+ if (typeof transformFunction === "function") {
70
+ transformedResult = transformFunction == null ? void 0 : transformFunction(itemValue, entityKey, tempValues);
71
+ const typeOfResult = typeof transformedResult;
72
+ if (typeOfResult !== "object" && typeOfResult !== "undefined") {
73
+ tempKey = entityKey;
74
+ isTransformedResultPrimitive = true;
75
+ } else {
76
+ tempKey = transformedResult;
77
+ }
78
+ } else {
79
+ tempKey = transformForArray(transformFunction, itemValue);
80
+ }
81
+ if (Array.isArray(tempKey)) {
82
+ result = set(result, tempKey, itemValue);
83
+ return;
84
+ }
85
+ if (typeof tempKey === "object" && !Array.isArray(finalValues)) {
86
+ finalValues = merge(finalValues, tempKey);
87
+ } else if (typeof tempKey === "object" && Array.isArray(finalValues)) {
88
+ result = { ...result, ...tempKey };
89
+ } else if (tempKey !== null || tempKey !== void 0) {
90
+ result = set(
91
+ result,
92
+ [tempKey],
93
+ isTransformedResultPrimitive ? transformedResult : itemValue
94
+ );
95
+ }
96
+ };
97
+ if (transformFunction && typeof transformFunction === "function") {
98
+ transform();
99
+ }
100
+ if (typeof window === "undefined") return;
101
+ if (isPlainObj(itemValue)) {
102
+ const genValues = gen(itemValue);
103
+ if (Object.keys(genValues).length < 1) {
104
+ return;
105
+ }
106
+ result = set(result, [entityKey], genValues);
107
+ return;
108
+ }
109
+ transform();
110
+ });
111
+ return paramsOmitNil ? result : tempValues;
112
+ };
113
+ finalValues = Array.isArray(values) && Array.isArray(finalValues) ? [...gen(values)] : merge({}, gen(values), finalValues);
114
+ return finalValues;
115
+ };
116
+ const convertKeyInitialValue = (values, transformerMap) => {
117
+ if (Object.keys(values).length < 1) {
118
+ return values;
119
+ }
120
+ const finalValues = {};
121
+ Object.keys(values).forEach((entityKey) => {
122
+ var _a;
123
+ const itemValue = values[entityKey];
124
+ const convertValueFunction = (_a = transformerMap.get(entityKey)) == null ? void 0 : _a.convertValue;
125
+ if (typeof convertValueFunction === "function") {
126
+ const convertResult = convertValueFunction == null ? void 0 : convertValueFunction(itemValue, entityKey);
127
+ finalValues[entityKey] = convertResult;
128
+ } else {
129
+ finalValues[entityKey] = itemValue;
130
+ }
131
+ });
132
+ return finalValues;
9
133
  };
10
134
  function useAction({
11
135
  props,
@@ -13,6 +137,7 @@ function useAction({
13
137
  formData,
14
138
  initialValues,
15
139
  hasInitial,
140
+ transformerMap,
16
141
  onFinish,
17
142
  onReset,
18
143
  onFinishFailed
@@ -41,20 +166,20 @@ function useAction({
41
166
  if (!namePath) throw new Error("name is require");
42
167
  const value = get(formData.value, namePath);
43
168
  const obj = set({}, namePath, value);
44
- return get(transformKey(obj, props.omitNil, namePath), namePath);
169
+ return get(transformKeySubmitValue(obj, transformerMap.value, props.omitNil), namePath);
45
170
  };
46
171
  const getFieldFormatValueObject = (name) => {
47
172
  const namePath = covertFormName(name);
48
173
  if (!namePath) throw new Error("name is require");
49
174
  const value = get(formData.value, namePath);
50
175
  const obj = set({}, namePath, value);
51
- return transformKey(obj, props.omitNil, namePath);
176
+ return transformKeySubmitValue(obj, transformerMap.value, props.omitNil);
52
177
  };
53
178
  const validateFieldsReturnFormatValue = async (nameList) => {
54
179
  var _a;
55
180
  if (!Array.isArray(nameList) && nameList) throw new Error("nameList must be array");
56
181
  const values = await ((_a = formRef.value) == null ? void 0 : _a.validateFields(nameList));
57
- const transformedKey = transformKey(values, props.omitNil);
182
+ const transformedKey = transformKeySubmitValue(values, transformerMap.value, props.omitNil);
58
183
  return transformedKey != null ? transformedKey : {};
59
184
  };
60
185
  const setFieldValue = (name, value) => {
@@ -80,10 +205,10 @@ function useAction({
80
205
  var _a;
81
206
  hasInitial.value = true;
82
207
  (_a = formRef.value) == null ? void 0 : _a.clearValidate();
83
- formData.value = cloneDeep(initialValues.value);
208
+ formData.value = cloneDeep(convertKeyInitialValue(initialValues.value, transformerMap.value));
84
209
  Promise.resolve().then(() => {
85
210
  hasInitial.value = false;
86
- onReset == null ? void 0 : onReset(formData.value);
211
+ onReset == null ? void 0 : onReset(transformKeySubmitValue(formData.value, transformerMap.value, props.omitNil));
87
212
  });
88
213
  };
89
214
  const resetField = (name) => {
@@ -139,5 +264,5 @@ function useAction({
139
264
  };
140
265
  }
141
266
 
142
- export { useAction };
267
+ export { convertKeyInitialValue, transformKeySubmitValue, useAction };
143
268
  //# sourceMappingURL=useAction.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAction.mjs","sources":["../../../../../../../packages/components/form/src/hooks/useAction.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-23 20:07:22\n * @LastEditors: shen\n * @LastEditTime: 2025-07-26 12:01:35\n * @Description:\n */\n\nimport type { Ref, ShallowRef } from 'vue'\nimport type { ProFormActionType, NamePath, Entity } from '../type'\nimport type { ProFormProps } from '../props'\nimport type { FormInstance } from 'ant-design-vue'\nimport { cloneDeep, get, isObject, merge, set } from '@pro-design-vue/utils'\nimport covertFormName from '../utils/namePath'\n\nconst transformKey = (values: any, paramsOmitNil: boolean, parentKey?: NamePath) => {\n console.log('🚀 ~ transformKey ~ parentKey:', parentKey)\n console.log('🚀 ~ transformKey ~ paramsOmitNil:', paramsOmitNil)\n return values\n}\n\nexport function useAction({\n props,\n formRef,\n formData,\n initialValues,\n hasInitial,\n onFinish,\n onReset,\n onFinishFailed,\n}: {\n props: ProFormProps\n formRef: Ref<FormInstance | undefined>\n formData: Ref<Entity>\n initialValues: ShallowRef<Entity>\n hasInitial: Ref<boolean>\n onFinish: ProFormProps['onFinish']\n onReset: ProFormProps['onReset']\n onFinishFailed: ProFormProps['onFinishFailed']\n}): ProFormActionType {\n const getFieldValue = (name: NamePath) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n return get(formData.value, namePath)\n }\n const getFieldsValue = (nameList?: true | NamePath[]) => {\n if (nameList === true || nameList === undefined) {\n return cloneDeep(formData.value)\n }\n const obj = {}\n nameList.forEach((name) => {\n const namePath = covertFormName(name)\n const value = get(formData.value, namePath!)\n if (value !== undefined) {\n set(obj, namePath!, value)\n }\n })\n return obj\n }\n const getFieldFormatValue = (name: NamePath) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n const value = get(formData.value, namePath)\n const obj = set({}, namePath, value)\n return get(transformKey(obj, props.omitNil!, namePath), namePath)\n }\n\n const getFieldFormatValueObject = (name: NamePath) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n const value = get(formData.value, namePath)\n const obj = set({}, namePath, value)\n return transformKey(obj, props.omitNil!, namePath)\n }\n\n const validateFieldsReturnFormatValue = async (nameList?: NamePath[]) => {\n if (!Array.isArray(nameList) && nameList) throw new Error('nameList must be array')\n\n const values = await formRef.value?.validateFields(nameList)\n const transformedKey = transformKey(values, props.omitNil!)\n return transformedKey ?? {}\n }\n\n const setFieldValue = (name: NamePath, value: any) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n set(formData.value, namePath, value)\n }\n\n const setFieldsValue = (values: Entity, isMerge: boolean = true) => {\n if (!values) throw new Error('values is require')\n if (isMerge) {\n formData.value = merge({}, formData.value, values)\n } else {\n formData.value = cloneDeep(values)\n }\n }\n const resetInitialValues = (values: Entity) => {\n if (!values) throw new Error('values is require')\n if (!isObject(values)) throw new Error('values must be object')\n hasInitial.value = true\n initialValues.value = cloneDeep(values)\n }\n\n const reset = () => {\n hasInitial.value = true\n formRef.value?.clearValidate()\n formData.value = cloneDeep(initialValues.value)\n Promise.resolve().then(() => {\n hasInitial.value = false\n onReset?.(formData.value)\n })\n }\n\n const resetField = (name: NamePath) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n formRef.value?.clearValidate(name)\n set(formData.value, name, cloneDeep(get(initialValues.value, name)))\n }\n\n const clearValidate = (name?: NamePath) => {\n formRef.value?.clearValidate(name)\n }\n\n const validateFields = (nameList?: NamePath[]) => {\n return new Promise((resolve, reject) => {\n formRef.value\n ?.validateFields(nameList)\n .then((values) => {\n resolve({ ...formData.value, ...values })\n })\n .catch((e) => {\n reject(e)\n })\n }) as Promise<Entity>\n }\n\n const submit = () => {\n validateFields()\n .then((values) => {\n if (onFinish) {\n try {\n onFinish(values)\n } catch (err) {\n console.error(err)\n }\n }\n })\n .catch((e) => {\n if (onFinishFailed) {\n onFinishFailed(e)\n }\n })\n }\n\n return {\n getFieldValue,\n getFieldsValue,\n resetInitialValues,\n getFieldFormatValue,\n getFieldFormatValueObject,\n validateFieldsReturnFormatValue,\n setFieldValue,\n setFieldsValue,\n resetField,\n clearValidate,\n validateFields,\n reset,\n submit,\n }\n}\n"],"names":[],"mappings":";;;;AAeA,MAAM,YAAA,GAAe,CAAC,MAAA,EAAa,aAAA,EAAwB,SAAA,KAAyB;AAClF,EAAA,OAAA,CAAQ,GAAA,CAAI,yCAAkC,SAAS,CAAA;AACvD,EAAA,OAAA,CAAQ,GAAA,CAAI,6CAAsC,aAAa,CAAA;AAC/D,EAAA,OAAO,MAAA;AACT,CAAA;AAEO,SAAS,SAAA,CAAU;AAAA,EACxB,KAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,aAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA;AACF,CAAA,EASsB;AACpB,EAAA,MAAM,aAAA,GAAgB,CAAC,IAAA,KAAmB;AACxC,IAAA,MAAM,QAAA,GAAW,eAAe,IAAI,CAAA;AACpC,IAAA,IAAI,CAAC,QAAA,EAAU,MAAM,IAAI,MAAM,iBAAiB,CAAA;AAChD,IAAA,OAAO,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,QAAQ,CAAA;AAAA,EACrC,CAAA;AACA,EAAA,MAAM,cAAA,GAAiB,CAAC,QAAA,KAAiC;AACvD,IAAA,IAAI,QAAA,KAAa,IAAA,IAAQ,QAAA,KAAa,MAAA,EAAW;AAC/C,MAAA,OAAO,SAAA,CAAU,SAAS,KAAK,CAAA;AAAA,IACjC;AACA,IAAA,MAAM,MAAM,EAAC;AACb,IAAA,QAAA,CAAS,OAAA,CAAQ,CAAC,IAAA,KAAS;AACzB,MAAA,MAAM,QAAA,GAAW,eAAe,IAAI,CAAA;AACpC,MAAA,MAAM,KAAA,GAAQ,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,QAAS,CAAA;AAC3C,MAAA,IAAI,UAAU,MAAA,EAAW;AACvB,QAAA,GAAA,CAAI,GAAA,EAAK,UAAW,KAAK,CAAA;AAAA,MAC3B;AAAA,IACF,CAAC,CAAA;AACD,IAAA,OAAO,GAAA;AAAA,EACT,CAAA;AACA,EAAA,MAAM,mBAAA,GAAsB,CAAC,IAAA,KAAmB;AAC9C,IAAA,MAAM,QAAA,GAAW,eAAe,IAAI,CAAA;AACpC,IAAA,IAAI,CAAC,QAAA,EAAU,MAAM,IAAI,MAAM,iBAAiB,CAAA;AAChD,IAAA,MAAM,KAAA,GAAQ,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,QAAQ,CAAA;AAC1C,IAAA,MAAM,GAAA,GAAM,GAAA,CAAI,EAAC,EAAG,UAAU,KAAK,CAAA;AACnC,IAAA,OAAO,IAAI,YAAA,CAAa,GAAA,EAAK,MAAM,OAAA,EAAU,QAAQ,GAAG,QAAQ,CAAA;AAAA,EAClE,CAAA;AAEA,EAAA,MAAM,yBAAA,GAA4B,CAAC,IAAA,KAAmB;AACpD,IAAA,MAAM,QAAA,GAAW,eAAe,IAAI,CAAA;AACpC,IAAA,IAAI,CAAC,QAAA,EAAU,MAAM,IAAI,MAAM,iBAAiB,CAAA;AAChD,IAAA,MAAM,KAAA,GAAQ,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,QAAQ,CAAA;AAC1C,IAAA,MAAM,GAAA,GAAM,GAAA,CAAI,EAAC,EAAG,UAAU,KAAK,CAAA;AACnC,IAAA,OAAO,YAAA,CAAa,GAAA,EAAK,KAAA,CAAM,OAAA,EAAU,QAAQ,CAAA;AAAA,EACnD,CAAA;AAEA,EAAA,MAAM,+BAAA,GAAkC,OAAO,QAAA,KAA0B;AA3E3E,IAAA,IAAA,EAAA;AA4EI,IAAA,IAAI,CAAC,MAAM,OAAA,CAAQ,QAAQ,KAAK,QAAA,EAAU,MAAM,IAAI,KAAA,CAAM,wBAAwB,CAAA;AAElF,IAAA,MAAM,MAAA,GAAS,OAAA,CAAM,EAAA,GAAA,OAAA,CAAQ,KAAA,KAAR,mBAAe,cAAA,CAAe,QAAA,CAAA,CAAA;AACnD,IAAA,MAAM,cAAA,GAAiB,YAAA,CAAa,MAAA,EAAQ,KAAA,CAAM,OAAQ,CAAA;AAC1D,IAAA,OAAO,0CAAkB,EAAC;AAAA,EAC5B,CAAA;AAEA,EAAA,MAAM,aAAA,GAAgB,CAAC,IAAA,EAAgB,KAAA,KAAe;AACpD,IAAA,MAAM,QAAA,GAAW,eAAe,IAAI,CAAA;AACpC,IAAA,IAAI,CAAC,QAAA,EAAU,MAAM,IAAI,MAAM,iBAAiB,CAAA;AAChD,IAAA,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,QAAA,EAAU,KAAK,CAAA;AAAA,EACrC,CAAA;AAEA,EAAA,MAAM,cAAA,GAAiB,CAAC,MAAA,EAAgB,OAAA,GAAmB,IAAA,KAAS;AAClE,IAAA,IAAI,CAAC,MAAA,EAAQ,MAAM,IAAI,MAAM,mBAAmB,CAAA;AAChD,IAAA,IAAI,OAAA,EAAS;AACX,MAAA,QAAA,CAAS,QAAQ,KAAA,CAAM,EAAC,EAAG,QAAA,CAAS,OAAO,MAAM,CAAA;AAAA,IACnD,CAAA,MAAO;AACL,MAAA,QAAA,CAAS,KAAA,GAAQ,UAAU,MAAM,CAAA;AAAA,IACnC;AAAA,EACF,CAAA;AACA,EAAA,MAAM,kBAAA,GAAqB,CAAC,MAAA,KAAmB;AAC7C,IAAA,IAAI,CAAC,MAAA,EAAQ,MAAM,IAAI,MAAM,mBAAmB,CAAA;AAChD,IAAA,IAAI,CAAC,QAAA,CAAS,MAAM,GAAG,MAAM,IAAI,MAAM,uBAAuB,CAAA;AAC9D,IAAA,UAAA,CAAW,KAAA,GAAQ,IAAA;AACnB,IAAA,aAAA,CAAc,KAAA,GAAQ,UAAU,MAAM,CAAA;AAAA,EACxC,CAAA;AAEA,EAAA,MAAM,QAAQ,MAAM;AAxGtB,IAAA,IAAA,EAAA;AAyGI,IAAA,UAAA,CAAW,KAAA,GAAQ,IAAA;AACnB,IAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,UAAR,IAAA,GAAA,MAAA,GAAA,EAAA,CAAe,aAAA,EAAA;AACf,IAAA,QAAA,CAAS,KAAA,GAAQ,SAAA,CAAU,aAAA,CAAc,KAAK,CAAA;AAC9C,IAAA,OAAA,CAAQ,OAAA,EAAQ,CAAE,IAAA,CAAK,MAAM;AAC3B,MAAA,UAAA,CAAW,KAAA,GAAQ,KAAA;AACnB,MAAA,OAAA,IAAA,IAAA,GAAA,MAAA,GAAA,OAAA,CAAU,QAAA,CAAS,KAAA,CAAA;AAAA,IACrB,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,UAAA,GAAa,CAAC,IAAA,KAAmB;AAlHzC,IAAA,IAAA,EAAA;AAmHI,IAAA,MAAM,QAAA,GAAW,eAAe,IAAI,CAAA;AACpC,IAAA,IAAI,CAAC,QAAA,EAAU,MAAM,IAAI,MAAM,iBAAiB,CAAA;AAChD,IAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,KAAA,KAAR,mBAAe,aAAA,CAAc,IAAA,CAAA;AAC7B,IAAA,GAAA,CAAI,QAAA,CAAS,OAAO,IAAA,EAAM,SAAA,CAAU,IAAI,aAAA,CAAc,KAAA,EAAO,IAAI,CAAC,CAAC,CAAA;AAAA,EACrE,CAAA;AAEA,EAAA,MAAM,aAAA,GAAgB,CAAC,IAAA,KAAoB;AAzH7C,IAAA,IAAA,EAAA;AA0HI,IAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,KAAA,KAAR,mBAAe,aAAA,CAAc,IAAA,CAAA;AAAA,EAC/B,CAAA;AAEA,EAAA,MAAM,cAAA,GAAiB,CAAC,QAAA,KAA0B;AAChD,IAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAA,KAAW;AA9H5C,MAAA,IAAA,EAAA;AA+HM,MAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,UAAR,IAAA,GAAA,MAAA,GAAA,EAAA,CACI,cAAA,CAAe,QAAA,CAAA,CAChB,IAAA,CAAK,CAAC,MAAA,KAAW;AAChB,QAAA,OAAA,CAAQ,EAAE,GAAG,QAAA,CAAS,KAAA,EAAO,GAAG,QAAQ,CAAA;AAAA,MAC1C,CAAA,CAAA,CACC,KAAA,CAAM,CAAC,CAAA,KAAM;AACZ,QAAA,MAAA,CAAO,CAAC,CAAA;AAAA,MACV,CAAA,CAAA;AAAA,IACJ,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,SAAS,MAAM;AACnB,IAAA,cAAA,EAAe,CACZ,IAAA,CAAK,CAAC,MAAA,KAAW;AAChB,MAAA,IAAI,QAAA,EAAU;AACZ,QAAA,IAAI;AACF,UAAA,QAAA,CAAS,MAAM,CAAA;AAAA,QACjB,SAAS,GAAA,EAAK;AACZ,UAAA,OAAA,CAAQ,MAAM,GAAG,CAAA;AAAA,QACnB;AAAA,MACF;AAAA,IACF,CAAC,CAAA,CACA,KAAA,CAAM,CAAC,CAAA,KAAM;AACZ,MAAA,IAAI,cAAA,EAAgB;AAClB,QAAA,cAAA,CAAe,CAAC,CAAA;AAAA,MAClB;AAAA,IACF,CAAC,CAAA;AAAA,EACL,CAAA;AAEA,EAAA,OAAO;AAAA,IACL,aAAA;AAAA,IACA,cAAA;AAAA,IACA,kBAAA;AAAA,IACA,mBAAA;AAAA,IACA,yBAAA;AAAA,IACA,+BAAA;AAAA,IACA,aAAA;AAAA,IACA,cAAA;AAAA,IACA,UAAA;AAAA,IACA,aAAA;AAAA,IACA,cAAA;AAAA,IACA,KAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
1
+ {"version":3,"file":"useAction.mjs","sources":["../../../../../../../packages/components/form/src/hooks/useAction.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-23 20:07:22\n * @LastEditors: shen\n * @LastEditTime: 2025-09-22 16:11:16\n * @Description:\n */\n\nimport type { Ref, ShallowRef } from 'vue'\nimport type { ProFormActionType, NamePath, Entity, TransformerMapType } from '../type'\nimport type { ProFormProps } from '../props'\nimport type { FormInstance } from 'ant-design-vue'\nimport { cloneDeep, get, isObject, merge, set, isNil, isValidElement } from '@pro-design-vue/utils'\nimport covertFormName from '../utils/namePath'\n\n/**\n * 暂时还不支持 Set和 Map 结构 判断是不是一个能遍历的对象\n *\n * @param itemValue\n * @returns Boolean\n */\nfunction isPlainObj(itemValue: any) {\n if (typeof itemValue !== 'object') return false\n\n /** Null 也要处理,不然omit空会失效 */\n if (itemValue === null) return true\n\n if (isValidElement(itemValue)) return false\n if (itemValue.constructor === RegExp) return false\n if (itemValue instanceof Map) return false\n if (itemValue instanceof Set) return false\n if (itemValue instanceof HTMLElement) return false\n if (itemValue instanceof Blob) return false\n if (itemValue instanceof File) return false\n if (Array.isArray(itemValue)) return false\n return true\n}\n\nexport const transformKeySubmitValue = <T extends object = any>(\n values: T,\n transformerMap: TransformerMapType,\n paramsOmitNil?: boolean,\n) => {\n if (Object.keys(values).length < 1) {\n return values\n }\n\n if (typeof window === 'undefined') return values\n // 如果 value 是 string | null | Array | Blob类型 其中之一,直接返回\n // 形如 {key: [File, File]} 的表单字段当进行第二次递归时会导致其直接越过 typeof value !== 'object'\n if (typeof values !== 'object' || isNil(values) || values instanceof Blob) {\n return values\n }\n let finalValues: any = Array.isArray(values) ? [] : ({} as T)\n\n const gen = (tempValues: T, parentsKey?: NamePath) => {\n const isArrayValues = Array.isArray(tempValues)\n let result = isArrayValues ? ([] as any) : ({} as T)\n if (tempValues == null || tempValues === undefined) {\n return result\n }\n\n Object.keys(tempValues).forEach((entityKey) => {\n const transformForArray = (transformList: any, subItemValue: any) => {\n if (!Array.isArray(transformList)) return entityKey\n transformList.forEach((transform: Function | Record<string, any> | any[], idx: number) => {\n // 如果不存在直接返回\n if (!transform) return\n\n const subTransformItem = subItemValue?.[idx]\n\n // 如果是个方法,把key设置为方法的返回值\n if (typeof transform === 'function') {\n subItemValue[idx] = transform(subItemValue, entityKey, tempValues)\n }\n if (typeof transform === 'object' && !Array.isArray(transform)) {\n Object.keys(transform).forEach((transformArrayItem) => {\n const subTransformItemValue = subTransformItem?.[transformArrayItem]\n if (typeof transform[transformArrayItem] === 'function' && subTransformItemValue) {\n const res = transform[transformArrayItem](\n subTransformItem[transformArrayItem],\n entityKey,\n tempValues,\n )\n subTransformItem[transformArrayItem] =\n typeof res === 'object' ? res[transformArrayItem] : res\n } else if (\n typeof transform[transformArrayItem] === 'object' &&\n Array.isArray(transform[transformArrayItem]) &&\n subTransformItemValue\n ) {\n transformForArray(transform[transformArrayItem], subTransformItemValue)\n }\n })\n }\n if (typeof transform === 'object' && Array.isArray(transform) && subTransformItem) {\n transformForArray(transform, subTransformItem)\n }\n })\n return entityKey\n }\n const key = parentsKey ? [parentsKey, entityKey].flat(1) : [entityKey].flat(1)\n const itemValue = (tempValues as any)[entityKey]\n const transformFunction = transformerMap.get(entityKey)?.transform\n\n const transform = () => {\n let tempKey,\n transformedResult,\n isTransformedResultPrimitive = false\n\n /**\n * 先判断是否是方法,是的话执行后拿到值,如果是基本类型,则认为是直接 transform 为新的值,\n * 如果返回是 Object 则认为是 transform 为新的 {newKey: newValue}\n */\n if (typeof transformFunction === 'function') {\n transformedResult = transformFunction?.(itemValue, entityKey, tempValues)\n const typeOfResult = typeof transformedResult\n if (typeOfResult !== 'object' && typeOfResult !== 'undefined') {\n tempKey = entityKey\n isTransformedResultPrimitive = true\n } else {\n tempKey = transformedResult\n }\n } else {\n tempKey = transformForArray(transformFunction, itemValue)\n }\n\n // { [key:string]:any } 数组也能通过编译\n if (Array.isArray(tempKey)) {\n result = set(result, tempKey, itemValue)\n return\n }\n if (typeof tempKey === 'object' && !Array.isArray(finalValues)) {\n finalValues = merge(finalValues, tempKey)\n } else if (typeof tempKey === 'object' && Array.isArray(finalValues)) {\n result = { ...result, ...tempKey }\n } else if (tempKey !== null || tempKey !== undefined) {\n result = set(\n result,\n [tempKey],\n isTransformedResultPrimitive ? transformedResult : itemValue,\n )\n }\n }\n\n /** 如果存在转化器提前渲染一下 */\n if (transformFunction && typeof transformFunction === 'function') {\n transform()\n }\n\n if (typeof window === 'undefined') return\n if (isPlainObj(itemValue)) {\n const genValues = gen(itemValue, key)\n if (Object.keys(genValues).length < 1) {\n return\n }\n result = set(result, [entityKey], genValues)\n return\n }\n transform()\n })\n return paramsOmitNil ? result : tempValues\n }\n\n finalValues =\n Array.isArray(values) && Array.isArray(finalValues)\n ? [...gen(values)]\n : merge({}, gen(values), finalValues)\n\n return finalValues as T\n}\n\nexport const convertKeyInitialValue = <T extends object = any>(\n values: T,\n transformerMap: TransformerMapType,\n) => {\n if (Object.keys(values).length < 1) {\n return values\n }\n\n const finalValues: any = {} as T\n Object.keys(values).forEach((entityKey) => {\n const itemValue = (values as any)[entityKey]\n const convertValueFunction = transformerMap.get(entityKey)?.convertValue\n if (typeof convertValueFunction === 'function') {\n const convertResult = convertValueFunction?.(itemValue, entityKey)\n finalValues[entityKey] = convertResult\n } else {\n finalValues[entityKey] = itemValue\n }\n })\n\n return finalValues\n}\n\nexport function useAction({\n props,\n formRef,\n formData,\n initialValues,\n hasInitial,\n transformerMap,\n onFinish,\n onReset,\n onFinishFailed,\n}: {\n props: ProFormProps\n formRef: Ref<FormInstance | undefined>\n formData: Ref<Entity>\n initialValues: ShallowRef<Entity>\n hasInitial: Ref<boolean>\n transformerMap: ShallowRef<TransformerMapType>\n onFinish: ProFormProps['onFinish']\n onReset: ProFormProps['onReset']\n onFinishFailed: ProFormProps['onFinishFailed']\n}): ProFormActionType {\n const getFieldValue = (name: NamePath) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n return get(formData.value, namePath)\n }\n const getFieldsValue = (nameList?: true | NamePath[]) => {\n if (nameList === true || nameList === undefined) {\n return cloneDeep(formData.value)\n }\n const obj: any = {}\n nameList.forEach((name) => {\n const namePath = covertFormName(name)\n const value = get(formData.value, namePath!)\n if (value !== undefined) {\n set(obj, namePath!, value)\n }\n })\n return obj\n }\n const getFieldFormatValue = (name: NamePath) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n const value = get(formData.value, namePath)\n const obj = set({}, namePath, value)\n return get(transformKeySubmitValue(obj, transformerMap.value, props.omitNil!), namePath)\n }\n\n const getFieldFormatValueObject = (name: NamePath) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n const value = get(formData.value, namePath)\n const obj = set({}, namePath, value)\n return transformKeySubmitValue(obj, transformerMap.value, props.omitNil!)\n }\n\n const validateFieldsReturnFormatValue = async (nameList?: NamePath[]) => {\n if (!Array.isArray(nameList) && nameList) throw new Error('nameList must be array')\n\n const values = await formRef.value?.validateFields(nameList)\n const transformedKey = transformKeySubmitValue(values!, transformerMap.value, props.omitNil!)\n return transformedKey ?? {}\n }\n\n const setFieldValue = (name: NamePath, value: any) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n set(formData.value, namePath, value)\n }\n\n const setFieldsValue = (values: Entity, isMerge: boolean = true) => {\n if (!values) throw new Error('values is require')\n if (isMerge) {\n formData.value = merge({}, formData.value, values)\n } else {\n formData.value = cloneDeep(values)\n }\n }\n const resetInitialValues = (values: Entity) => {\n if (!values) throw new Error('values is require')\n if (!isObject(values)) throw new Error('values must be object')\n hasInitial.value = true\n initialValues.value = cloneDeep(values)\n }\n\n const reset = () => {\n hasInitial.value = true\n formRef.value?.clearValidate()\n formData.value = cloneDeep(convertKeyInitialValue(initialValues.value, transformerMap.value))\n Promise.resolve().then(() => {\n hasInitial.value = false\n onReset?.(transformKeySubmitValue(formData.value, transformerMap.value, props.omitNil))\n })\n }\n\n const resetField = (name: NamePath) => {\n const namePath = covertFormName(name)\n if (!namePath) throw new Error('name is require')\n formRef.value?.clearValidate(name)\n set(formData.value, name, cloneDeep(get(initialValues.value, name)))\n }\n\n const clearValidate = (name?: NamePath) => {\n formRef.value?.clearValidate(name)\n }\n\n const validateFields = (nameList?: NamePath[]) => {\n return new Promise((resolve, reject) => {\n formRef.value\n ?.validateFields(nameList)\n .then((values) => {\n resolve({ ...formData.value, ...values })\n })\n .catch((e) => {\n reject(e)\n })\n }) as Promise<Entity>\n }\n\n const submit = () => {\n validateFields()\n .then((values) => {\n if (onFinish) {\n try {\n onFinish(values)\n } catch (err) {\n console.error(err)\n }\n }\n })\n .catch((e) => {\n if (onFinishFailed) {\n onFinishFailed(e)\n }\n })\n }\n\n return {\n getFieldValue,\n getFieldsValue,\n resetInitialValues,\n getFieldFormatValue,\n getFieldFormatValueObject,\n validateFieldsReturnFormatValue,\n setFieldValue,\n setFieldsValue,\n resetField,\n clearValidate,\n validateFields,\n reset,\n submit,\n }\n}\n"],"names":["transform"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { ComputedRef, Ref } from 'vue';
2
2
  import type { NamePath, SearchConvertKeyFn, SearchTransformKeyFn } from '../type';
3
- export declare function useFieldValue<T>({ namePath, initialValue, convertValue, transform, }: {
3
+ export declare function useFieldValue<T>({ namePath, initialValue, convertValue, }: {
4
4
  isList?: boolean;
5
5
  namePath: ComputedRef<NamePath>;
6
6
  initialValue?: any;
@@ -5,25 +5,18 @@ import { get, cloneDeep, set } from 'lodash-unified';
5
5
  function useFieldValue({
6
6
  namePath,
7
7
  initialValue,
8
- convertValue,
9
- transform
8
+ convertValue
10
9
  }) {
11
10
  const fieldValue = shallowRef();
12
- const { formData, initialValues, mountedRef } = useInjectForm();
11
+ const { formData, initialValues } = useInjectForm();
13
12
  const modelValue = computed(() => get(formData.value, namePath.value));
14
13
  const onValueChange = (value) => {
15
- set(
16
- formData.value,
17
- namePath.value,
18
- transform ? transform(value, namePath.value, formData.value) : value
19
- );
14
+ set(formData.value, namePath.value, value);
20
15
  };
21
16
  watch(
22
17
  modelValue,
23
18
  (newValue) => {
24
- fieldValue.value = cloneDeep(
25
- convertValue ? convertValue(newValue, namePath.value) : newValue
26
- );
19
+ fieldValue.value = cloneDeep(newValue);
27
20
  },
28
21
  {
29
22
  immediate: true,
@@ -32,11 +25,14 @@ function useFieldValue({
32
25
  );
33
26
  const initFieldInitialValue = () => {
34
27
  var _a;
35
- if (!mountedRef.value && typeof modelValue.value === "undefined" && typeof initialValue !== "undefined") {
36
- const value = transform ? transform(initialValue, namePath.value, formData.value) : initialValue;
28
+ if (
29
+ // !mountedRef.value &&
30
+ typeof modelValue.value === "undefined" && typeof initialValue !== "undefined"
31
+ ) {
32
+ const value = convertValue ? convertValue(initialValue, namePath.value) : initialValue;
37
33
  set(formData.value, namePath.value, cloneDeep(value));
38
- set((_a = initialValues == null ? void 0 : initialValues.value) != null ? _a : {}, namePath.value, cloneDeep(value));
39
- fieldValue.value = convertValue ? convertValue(initialValue, namePath.value) : initialValue;
34
+ set((_a = initialValues == null ? void 0 : initialValues.value) != null ? _a : {}, namePath.value, cloneDeep(initialValue));
35
+ fieldValue.value = value;
40
36
  }
41
37
  };
42
38
  initFieldInitialValue();
@@ -1 +1 @@
1
- {"version":3,"file":"useFieldValue.mjs","sources":["../../../../../../../packages/components/form/src/hooks/useFieldValue.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2022-06-10 15:44:38\n * @LastEditors: shen\n * @LastEditTime: 2025-09-02 15:14:56\n * @Description:\n */\nimport type { ComputedRef, Ref } from 'vue'\nimport type { NamePath, SearchConvertKeyFn, SearchTransformKeyFn } from '../type'\n\nimport { computed, shallowRef, watch } from 'vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { cloneDeep, set, get } from '@pro-design-vue/utils'\n\nexport function useFieldValue<T>({\n namePath,\n initialValue,\n convertValue,\n transform,\n}: {\n isList?: boolean\n namePath: ComputedRef<NamePath>\n initialValue?: any\n convertValue?: SearchConvertKeyFn\n transform?: SearchTransformKeyFn\n}): {\n fieldValue: Ref<T | undefined>\n onValueChange: (value: T) => void\n} {\n const fieldValue = shallowRef<T | undefined>()\n\n const { formData, initialValues, mountedRef } = useInjectForm()\n\n const modelValue = computed(() => get(formData.value, namePath.value) as T)\n\n const onValueChange = (value: T) => {\n set(\n formData.value,\n namePath.value,\n transform ? transform(value, namePath.value, formData.value) : value,\n )\n }\n\n watch(\n modelValue,\n (newValue) => {\n fieldValue.value = cloneDeep(\n convertValue ? (convertValue(newValue, namePath.value) as T) : newValue,\n )\n },\n {\n immediate: true,\n deep: true,\n },\n )\n\n const initFieldInitialValue = () => {\n if (\n !mountedRef.value &&\n typeof modelValue.value === 'undefined' &&\n typeof initialValue !== 'undefined'\n ) {\n const value = transform\n ? transform(initialValue, namePath.value, formData.value)\n : initialValue\n set(formData.value, namePath.value, cloneDeep(value))\n set(initialValues?.value ?? {}, namePath.value, cloneDeep(value))\n fieldValue.value = convertValue\n ? (convertValue(initialValue, namePath.value) as T)\n : initialValue\n }\n }\n initFieldInitialValue()\n\n return {\n fieldValue,\n onValueChange,\n }\n}\n"],"names":[],"mappings":";;;;AAcO,SAAS,aAAA,CAAiB;AAAA,EAC/B,QAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA;AACF,CAAA,EASE;AACA,EAAA,MAAM,aAAa,UAAA,EAA0B;AAE7C,EAAA,MAAM,EAAE,QAAA,EAAU,aAAA,EAAe,UAAA,KAAe,aAAA,EAAc;AAE9D,EAAA,MAAM,UAAA,GAAa,SAAS,MAAM,GAAA,CAAI,SAAS,KAAA,EAAO,QAAA,CAAS,KAAK,CAAM,CAAA;AAE1E,EAAA,MAAM,aAAA,GAAgB,CAAC,KAAA,KAAa;AAClC,IAAA,GAAA;AAAA,MACE,QAAA,CAAS,KAAA;AAAA,MACT,QAAA,CAAS,KAAA;AAAA,MACT,YAAY,SAAA,CAAU,KAAA,EAAO,SAAS,KAAA,EAAO,QAAA,CAAS,KAAK,CAAA,GAAI;AAAA,KACjE;AAAA,EACF,CAAA;AAEA,EAAA,KAAA;AAAA,IACE,UAAA;AAAA,IACA,CAAC,QAAA,KAAa;AACZ,MAAA,UAAA,CAAW,KAAA,GAAQ,SAAA;AAAA,QACjB,YAAA,GAAgB,YAAA,CAAa,QAAA,EAAU,QAAA,CAAS,KAAK,CAAA,GAAU;AAAA,OACjE;AAAA,IACF,CAAA;AAAA,IACA;AAAA,MACE,SAAA,EAAW,IAAA;AAAA,MACX,IAAA,EAAM;AAAA;AACR,GACF;AAEA,EAAA,MAAM,wBAAwB,MAAM;AAxDtC,IAAA,IAAA,EAAA;AAyDI,IAAA,IACE,CAAC,WAAW,KAAA,IACZ,OAAO,WAAW,KAAA,KAAU,WAAA,IAC5B,OAAO,YAAA,KAAiB,WAAA,EACxB;AACA,MAAA,MAAM,KAAA,GAAQ,YACV,SAAA,CAAU,YAAA,EAAc,SAAS,KAAA,EAAO,QAAA,CAAS,KAAK,CAAA,GACtD,YAAA;AACJ,MAAA,GAAA,CAAI,SAAS,KAAA,EAAO,QAAA,CAAS,KAAA,EAAO,SAAA,CAAU,KAAK,CAAC,CAAA;AACpD,MAAA,GAAA,CAAA,CAAI,EAAA,GAAA,aAAA,IAAA,IAAA,GAAA,MAAA,GAAA,aAAA,CAAe,UAAf,IAAA,GAAA,EAAA,GAAwB,IAAI,QAAA,CAAS,KAAA,EAAO,SAAA,CAAU,KAAK,CAAC,CAAA;AAChE,MAAA,UAAA,CAAW,QAAQ,YAAA,GACd,YAAA,CAAa,YAAA,EAAc,QAAA,CAAS,KAAK,CAAA,GAC1C,YAAA;AAAA,IACN;AAAA,EACF,CAAA;AACA,EAAA,qBAAA,EAAsB;AAEtB,EAAA,OAAO;AAAA,IACL,UAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
1
+ {"version":3,"file":"useFieldValue.mjs","sources":["../../../../../../../packages/components/form/src/hooks/useFieldValue.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2022-06-10 15:44:38\n * @LastEditors: shen\n * @LastEditTime: 2025-09-22 16:14:20\n * @Description:\n */\nimport type { ComputedRef, Ref } from 'vue'\nimport type { NamePath, SearchConvertKeyFn, SearchTransformKeyFn } from '../type'\n\nimport { computed, shallowRef, watch } from 'vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { cloneDeep, set, get } from '@pro-design-vue/utils'\n\nexport function useFieldValue<T>({\n namePath,\n initialValue,\n convertValue,\n}: {\n isList?: boolean\n namePath: ComputedRef<NamePath>\n initialValue?: any\n convertValue?: SearchConvertKeyFn\n transform?: SearchTransformKeyFn\n}): {\n fieldValue: Ref<T | undefined>\n onValueChange: (value: T) => void\n} {\n const fieldValue = shallowRef<T | undefined>()\n\n const { formData, initialValues } = useInjectForm()\n\n const modelValue = computed(() => get(formData.value, namePath.value) as T)\n\n const onValueChange = (value: T) => {\n set(formData.value, namePath.value, value)\n }\n\n watch(\n modelValue,\n (newValue) => {\n fieldValue.value = cloneDeep(newValue)\n },\n {\n immediate: true,\n deep: true,\n },\n )\n\n const initFieldInitialValue = () => {\n if (\n // !mountedRef.value &&\n typeof modelValue.value === 'undefined' &&\n typeof initialValue !== 'undefined'\n ) {\n const value = convertValue ? (convertValue(initialValue, namePath.value) as T) : initialValue\n set(formData.value, namePath.value, cloneDeep(value))\n set(initialValues?.value ?? {}, namePath.value, cloneDeep(initialValue))\n fieldValue.value = value\n }\n }\n initFieldInitialValue()\n\n return {\n fieldValue,\n onValueChange,\n }\n}\n"],"names":[],"mappings":";;;;AAcO,SAAS,aAAA,CAAiB;AAAA,EAC/B,QAAA;AAAA,EACA,YAAA;AAAA,EACA;AACF,CAAA,EASE;AACA,EAAA,MAAM,aAAa,UAAA,EAA0B;AAE7C,EAAA,MAAM,EAAE,QAAA,EAAU,aAAA,EAAc,GAAI,aAAA,EAAc;AAElD,EAAA,MAAM,UAAA,GAAa,SAAS,MAAM,GAAA,CAAI,SAAS,KAAA,EAAO,QAAA,CAAS,KAAK,CAAM,CAAA;AAE1E,EAAA,MAAM,aAAA,GAAgB,CAAC,KAAA,KAAa;AAClC,IAAA,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,QAAA,CAAS,KAAA,EAAO,KAAK,CAAA;AAAA,EAC3C,CAAA;AAEA,EAAA,KAAA;AAAA,IACE,UAAA;AAAA,IACA,CAAC,QAAA,KAAa;AACZ,MAAA,UAAA,CAAW,KAAA,GAAQ,UAAU,QAAQ,CAAA;AAAA,IACvC,CAAA;AAAA,IACA;AAAA,MACE,SAAA,EAAW,IAAA;AAAA,MACX,IAAA,EAAM;AAAA;AACR,GACF;AAEA,EAAA,MAAM,wBAAwB,MAAM;AAjDtC,IAAA,IAAA,EAAA;AAkDI,IAAA;AAAA;AAAA,MAEE,OAAO,UAAA,CAAW,KAAA,KAAU,WAAA,IAC5B,OAAO,YAAA,KAAiB;AAAA,MACxB;AACA,MAAA,MAAM,QAAQ,YAAA,GAAgB,YAAA,CAAa,YAAA,EAAc,QAAA,CAAS,KAAK,CAAA,GAAU,YAAA;AACjF,MAAA,GAAA,CAAI,SAAS,KAAA,EAAO,QAAA,CAAS,KAAA,EAAO,SAAA,CAAU,KAAK,CAAC,CAAA;AACpD,MAAA,GAAA,CAAA,CAAI,EAAA,GAAA,aAAA,IAAA,IAAA,GAAA,MAAA,GAAA,aAAA,CAAe,UAAf,IAAA,GAAA,EAAA,GAAwB,IAAI,QAAA,CAAS,KAAA,EAAO,SAAA,CAAU,YAAY,CAAC,CAAA;AACvE,MAAA,UAAA,CAAW,KAAA,GAAQ,KAAA;AAAA,IACrB;AAAA,EACF,CAAA;AACA,EAAA,qBAAA,EAAsB;AAEtB,EAAA,OAAO;AAAA,IACL,UAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}