pro-design-vue 1.3.18 → 1.3.20

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 (172) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +148 -55
  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 +148 -55
  8. package/es/components/form/src/components/FormGroup.d.ts +2 -1
  9. package/es/components/form/src/components/FormList.d.ts +3 -2
  10. package/es/components/form/src/components/FormListContainer.d.ts +2 -1
  11. package/es/components/form/src/components/FormListItem.d.ts +1 -0
  12. package/es/components/form/src/components/FormSet.d.ts +2 -1
  13. package/es/components/form/src/components/FormTitle.d.ts +1 -0
  14. package/es/components/form/src/fields/FieldCascader.d.ts +1 -1
  15. package/es/components/form/src/fields/FieldCheckbox.d.ts +1 -1
  16. package/es/components/form/src/fields/FieldCheckboxGroup.d.ts +1 -1
  17. package/es/components/form/src/fields/FieldDatePicker.d.ts +1 -1
  18. package/es/components/form/src/fields/FieldDateRangePicker.d.ts +1 -1
  19. package/es/components/form/src/fields/FieldDigit.d.ts +1 -1
  20. package/es/components/form/src/fields/FieldDigitRange.d.ts +1 -1
  21. package/es/components/form/src/fields/FieldPassword.d.ts +1 -1
  22. package/es/components/form/src/fields/FieldRadioGroup.d.ts +1 -1
  23. package/es/components/form/src/fields/FieldRate.d.ts +1 -1
  24. package/es/components/form/src/fields/FieldSelect.d.ts +1 -1
  25. package/es/components/form/src/fields/FieldSlider.d.ts +1 -1
  26. package/es/components/form/src/fields/FieldSwitch.d.ts +1 -1
  27. package/es/components/form/src/fields/FieldText.d.ts +1 -1
  28. package/es/components/form/src/fields/FieldTextarea.d.ts +1 -1
  29. package/es/components/form/src/fields/FieldTimePicker.d.ts +1 -1
  30. package/es/components/form/src/fields/FieldTimeRangePicker.d.ts +1 -1
  31. package/es/components/form/src/fields/FieldTreeSelect.d.ts +1 -1
  32. package/es/components/form/src/fields/FieldUploadButton.d.ts +1 -1
  33. package/es/components/form/src/fields/FieldUploadDragger.d.ts +1 -1
  34. package/es/components/form/src/fields/FieldUploadPicture.d.ts +1 -1
  35. package/es/components/form/src/fields/FieldUploadPictureList.d.ts +1 -1
  36. package/es/components/form/src/type.d.ts +12 -7
  37. package/es/components/table/src/hooks/useContainer.d.ts +2 -0
  38. package/es/index.d.ts +12 -7
  39. package/es/packages/components/form/src/components/FormItem.mjs +16 -11
  40. package/es/packages/components/form/src/components/FormItem.mjs.map +1 -1
  41. package/es/packages/components/form/src/components/FormTitle.mjs +8 -2
  42. package/es/packages/components/form/src/components/FormTitle.mjs.map +1 -1
  43. package/es/packages/components/form/src/fields/FieldCascader.mjs +6 -1
  44. package/es/packages/components/form/src/fields/FieldCascader.mjs.map +1 -1
  45. package/es/packages/components/form/src/fields/FieldDatePicker.mjs +5 -0
  46. package/es/packages/components/form/src/fields/FieldDatePicker.mjs.map +1 -1
  47. package/es/packages/components/form/src/fields/FieldDateRangePicker.mjs +5 -0
  48. package/es/packages/components/form/src/fields/FieldDateRangePicker.mjs.map +1 -1
  49. package/es/packages/components/form/src/fields/FieldDigit.mjs +5 -0
  50. package/es/packages/components/form/src/fields/FieldDigit.mjs.map +1 -1
  51. package/es/packages/components/form/src/fields/FieldDigitRange.mjs +5 -0
  52. package/es/packages/components/form/src/fields/FieldDigitRange.mjs.map +1 -1
  53. package/es/packages/components/form/src/fields/FieldPassword.mjs +5 -0
  54. package/es/packages/components/form/src/fields/FieldPassword.mjs.map +1 -1
  55. package/es/packages/components/form/src/fields/FieldRadioGroup.mjs +6 -1
  56. package/es/packages/components/form/src/fields/FieldRadioGroup.mjs.map +1 -1
  57. package/es/packages/components/form/src/fields/FieldRate.mjs +5 -0
  58. package/es/packages/components/form/src/fields/FieldRate.mjs.map +1 -1
  59. package/es/packages/components/form/src/fields/FieldSelect.mjs +5 -0
  60. package/es/packages/components/form/src/fields/FieldSelect.mjs.map +1 -1
  61. package/es/packages/components/form/src/fields/FieldSlider.mjs +5 -0
  62. package/es/packages/components/form/src/fields/FieldSlider.mjs.map +1 -1
  63. package/es/packages/components/form/src/fields/FieldSwitch.mjs +5 -0
  64. package/es/packages/components/form/src/fields/FieldSwitch.mjs.map +1 -1
  65. package/es/packages/components/form/src/fields/FieldText.mjs +5 -0
  66. package/es/packages/components/form/src/fields/FieldText.mjs.map +1 -1
  67. package/es/packages/components/form/src/fields/FieldTimePicker.mjs +5 -0
  68. package/es/packages/components/form/src/fields/FieldTimePicker.mjs.map +1 -1
  69. package/es/packages/components/form/src/fields/FieldTimeRangePicker.mjs +5 -0
  70. package/es/packages/components/form/src/fields/FieldTimeRangePicker.mjs.map +1 -1
  71. package/es/packages/components/form/src/fields/FieldTreeSelect.mjs +5 -0
  72. package/es/packages/components/form/src/fields/FieldTreeSelect.mjs.map +1 -1
  73. package/es/packages/components/form/src/fields/FieldUploadButton.mjs +11 -3
  74. package/es/packages/components/form/src/fields/FieldUploadButton.mjs.map +1 -1
  75. package/es/packages/components/form/src/fields/FieldUploadDragger.mjs +11 -3
  76. package/es/packages/components/form/src/fields/FieldUploadDragger.mjs.map +1 -1
  77. package/es/packages/components/table/src/components/InteralTable.vue.mjs.map +1 -1
  78. package/es/packages/components/table/src/components/InteralTable.vue2.mjs +2 -2
  79. package/es/packages/components/table/src/components/InteralTable.vue2.mjs.map +1 -1
  80. package/es/packages/components/table/src/components/Scrollbar/XScroll.mjs +10 -4
  81. package/es/packages/components/table/src/components/Scrollbar/XScroll.mjs.map +1 -1
  82. package/es/packages/components/table/src/components/Table.mjs +4 -2
  83. package/es/packages/components/table/src/components/Table.mjs.map +1 -1
  84. package/es/packages/components/table/src/hooks/useContainer.mjs +4 -0
  85. package/es/packages/components/table/src/hooks/useContainer.mjs.map +1 -1
  86. package/es/version.d.ts +1 -1
  87. package/es/version.mjs +1 -1
  88. package/es/version.mjs.map +1 -1
  89. package/lib/components/form/src/components/FormGroup.d.ts +2 -1
  90. package/lib/components/form/src/components/FormList.d.ts +3 -2
  91. package/lib/components/form/src/components/FormListContainer.d.ts +2 -1
  92. package/lib/components/form/src/components/FormListItem.d.ts +1 -0
  93. package/lib/components/form/src/components/FormSet.d.ts +2 -1
  94. package/lib/components/form/src/components/FormTitle.d.ts +1 -0
  95. package/lib/components/form/src/fields/FieldCascader.d.ts +1 -1
  96. package/lib/components/form/src/fields/FieldCheckbox.d.ts +1 -1
  97. package/lib/components/form/src/fields/FieldCheckboxGroup.d.ts +1 -1
  98. package/lib/components/form/src/fields/FieldDatePicker.d.ts +1 -1
  99. package/lib/components/form/src/fields/FieldDateRangePicker.d.ts +1 -1
  100. package/lib/components/form/src/fields/FieldDigit.d.ts +1 -1
  101. package/lib/components/form/src/fields/FieldDigitRange.d.ts +1 -1
  102. package/lib/components/form/src/fields/FieldPassword.d.ts +1 -1
  103. package/lib/components/form/src/fields/FieldRadioGroup.d.ts +1 -1
  104. package/lib/components/form/src/fields/FieldRate.d.ts +1 -1
  105. package/lib/components/form/src/fields/FieldSelect.d.ts +1 -1
  106. package/lib/components/form/src/fields/FieldSlider.d.ts +1 -1
  107. package/lib/components/form/src/fields/FieldSwitch.d.ts +1 -1
  108. package/lib/components/form/src/fields/FieldText.d.ts +1 -1
  109. package/lib/components/form/src/fields/FieldTextarea.d.ts +1 -1
  110. package/lib/components/form/src/fields/FieldTimePicker.d.ts +1 -1
  111. package/lib/components/form/src/fields/FieldTimeRangePicker.d.ts +1 -1
  112. package/lib/components/form/src/fields/FieldTreeSelect.d.ts +1 -1
  113. package/lib/components/form/src/fields/FieldUploadButton.d.ts +1 -1
  114. package/lib/components/form/src/fields/FieldUploadDragger.d.ts +1 -1
  115. package/lib/components/form/src/fields/FieldUploadPicture.d.ts +1 -1
  116. package/lib/components/form/src/fields/FieldUploadPictureList.d.ts +1 -1
  117. package/lib/components/form/src/type.d.ts +12 -7
  118. package/lib/components/table/src/hooks/useContainer.d.ts +2 -0
  119. package/lib/index.d.ts +12 -7
  120. package/lib/packages/components/form/src/components/FormItem.js +16 -11
  121. package/lib/packages/components/form/src/components/FormItem.js.map +1 -1
  122. package/lib/packages/components/form/src/components/FormTitle.js +8 -2
  123. package/lib/packages/components/form/src/components/FormTitle.js.map +1 -1
  124. package/lib/packages/components/form/src/fields/FieldCascader.js +6 -1
  125. package/lib/packages/components/form/src/fields/FieldCascader.js.map +1 -1
  126. package/lib/packages/components/form/src/fields/FieldDatePicker.js +5 -0
  127. package/lib/packages/components/form/src/fields/FieldDatePicker.js.map +1 -1
  128. package/lib/packages/components/form/src/fields/FieldDateRangePicker.js +5 -0
  129. package/lib/packages/components/form/src/fields/FieldDateRangePicker.js.map +1 -1
  130. package/lib/packages/components/form/src/fields/FieldDigit.js +5 -0
  131. package/lib/packages/components/form/src/fields/FieldDigit.js.map +1 -1
  132. package/lib/packages/components/form/src/fields/FieldDigitRange.js +5 -0
  133. package/lib/packages/components/form/src/fields/FieldDigitRange.js.map +1 -1
  134. package/lib/packages/components/form/src/fields/FieldPassword.js +5 -0
  135. package/lib/packages/components/form/src/fields/FieldPassword.js.map +1 -1
  136. package/lib/packages/components/form/src/fields/FieldRadioGroup.js +6 -1
  137. package/lib/packages/components/form/src/fields/FieldRadioGroup.js.map +1 -1
  138. package/lib/packages/components/form/src/fields/FieldRate.js +5 -0
  139. package/lib/packages/components/form/src/fields/FieldRate.js.map +1 -1
  140. package/lib/packages/components/form/src/fields/FieldSelect.js +5 -0
  141. package/lib/packages/components/form/src/fields/FieldSelect.js.map +1 -1
  142. package/lib/packages/components/form/src/fields/FieldSlider.js +5 -0
  143. package/lib/packages/components/form/src/fields/FieldSlider.js.map +1 -1
  144. package/lib/packages/components/form/src/fields/FieldSwitch.js +5 -0
  145. package/lib/packages/components/form/src/fields/FieldSwitch.js.map +1 -1
  146. package/lib/packages/components/form/src/fields/FieldText.js +5 -0
  147. package/lib/packages/components/form/src/fields/FieldText.js.map +1 -1
  148. package/lib/packages/components/form/src/fields/FieldTimePicker.js +5 -0
  149. package/lib/packages/components/form/src/fields/FieldTimePicker.js.map +1 -1
  150. package/lib/packages/components/form/src/fields/FieldTimeRangePicker.js +5 -0
  151. package/lib/packages/components/form/src/fields/FieldTimeRangePicker.js.map +1 -1
  152. package/lib/packages/components/form/src/fields/FieldTreeSelect.js +5 -0
  153. package/lib/packages/components/form/src/fields/FieldTreeSelect.js.map +1 -1
  154. package/lib/packages/components/form/src/fields/FieldUploadButton.js +11 -3
  155. package/lib/packages/components/form/src/fields/FieldUploadButton.js.map +1 -1
  156. package/lib/packages/components/form/src/fields/FieldUploadDragger.js +11 -3
  157. package/lib/packages/components/form/src/fields/FieldUploadDragger.js.map +1 -1
  158. package/lib/packages/components/table/src/components/InteralTable.vue.js.map +1 -1
  159. package/lib/packages/components/table/src/components/InteralTable.vue2.js +2 -2
  160. package/lib/packages/components/table/src/components/InteralTable.vue2.js.map +1 -1
  161. package/lib/packages/components/table/src/components/Scrollbar/XScroll.js +10 -4
  162. package/lib/packages/components/table/src/components/Scrollbar/XScroll.js.map +1 -1
  163. package/lib/packages/components/table/src/components/Table.js +4 -2
  164. package/lib/packages/components/table/src/components/Table.js.map +1 -1
  165. package/lib/packages/components/table/src/hooks/useContainer.js +7 -3
  166. package/lib/packages/components/table/src/hooks/useContainer.js.map +1 -1
  167. package/lib/version.d.ts +1 -1
  168. package/lib/version.js +1 -1
  169. package/lib/version.js.map +1 -1
  170. package/package.json +1 -1
  171. package/theme-chalk/index.css +1 -1
  172. package/theme-chalk/src/table/table.less +6 -1
@@ -8,6 +8,7 @@ import parseValueToDay from '../utils/parseValueToMoment.mjs';
8
8
  import { fieldDateFormatterMap } from '../utils/fieldDateFormatterMap.mjs';
9
9
  import FieldReadonly from './FieldReadonly.mjs';
10
10
  import { useInjectForm } from '../context/FormContext.mjs';
11
+ import { useInjectFormList } from '../context/FormListContext.mjs';
11
12
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
12
13
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
13
14
 
@@ -47,6 +48,9 @@ var FieldTimePicker = /* @__PURE__ */ defineComponent({
47
48
  const {
48
49
  formData
49
50
  } = useInjectForm();
51
+ const {
52
+ rowData
53
+ } = useInjectFormList();
50
54
  const formSlotsContext = useInjectSlots();
51
55
  const format = computed(() => {
52
56
  var _a;
@@ -72,6 +76,7 @@ var FieldTimePicker = /* @__PURE__ */ defineComponent({
72
76
  "vnode": slot,
73
77
  "props": {
74
78
  formData: formData.value,
79
+ rowData: rowData == null ? void 0 : rowData.value,
75
80
  ...props2 != null ? props2 : {}
76
81
  }
77
82
  }, null);
@@ -1 +1 @@
1
- {"version":3,"file":"FieldTimePicker.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldTimePicker.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-24 16:36:03\n * @Description:\n */\nimport { computed, defineComponent } from 'vue'\nimport { TimePicker } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { RenderVNode } from '@pro-design-vue/utils'\nimport dayjs from 'dayjs'\nimport getSlot from '../utils/getSlot'\nimport parseValueToDay from '../utils/parseValueToMoment'\nimport fieldDateFormatterMap from '../utils/fieldDateFormatterMap'\nimport FieldReadonly from './FieldReadonly'\nimport { useInjectForm } from '../context/FormContext'\n\nconst SLOT_NAMES = ['clearIcon', 'renderExtraFooter', 'suffixIcon']\n\nexport default defineComponent({\n name: 'FieldTimePicker',\n props: {\n ...commonFieldProps(),\n clearIcon: {\n type: String,\n default: '',\n },\n renderExtraFooter: {\n type: String,\n default: '',\n },\n suffixIcon: {\n type: String,\n default: '',\n },\n placeholder: {\n type: String,\n },\n format: {\n type: String,\n default: undefined,\n },\n valueFormat: {\n type: String,\n default: undefined,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { formData } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const format = computed(() => props.format ?? fieldDateFormatterMap['time'])\n const valueFormat = computed(() => props.valueFormat ?? fieldDateFormatterMap['time'])\n const dayValue = computed(() => parseValueToDay(props.value, format.value) as dayjs.Dayjs)\n const readValue = computed(() => {\n if (dayValue.value) {\n return dayjs(dayValue.value).format(valueFormat.value)\n }\n return undefined\n })\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode vnode={slot} props={{ formData: formData.value, ...(props ?? {}) }} />\n )\n }\n })\n return temp\n })\n\n const onChange = (value: any, dateString: string) => {\n props.onChange?.(value, dateString)\n }\n\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={readValue.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <TimePicker\n value={dayValue.value}\n {...attrs}\n format={format.value}\n valueFormat={valueFormat.value}\n placeholder={props.placeholder || intl.getMessage('form.selectPlaceholder', '请选择')}\n v-slots={slotsGetter.value}\n onChange={onChange}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","clearIcon","type","String","default","renderExtraFooter","suffixIcon","placeholder","format","undefined","valueFormat","setup","attrs","intl","useIntl","formData","useInjectForm","formSlotsContext","useInjectSlots","computed","fieldDateFormatterMap","dayValue","parseValueToDay","value","readValue","dayjs","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","onChange","dateString","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","TimePicker","getMessage"],"mappings":";;;;;;;;;;;;;AAoBA,MAAMA,UAAAA,GAAa,CAAC,WAAA,EAAa,mBAAA,EAAqB,YAAY,CAAA;AAElE,sDAA+B;AAAA,EAC7BC,IAAAA,EAAM,iBAAA;AAAA,EACNC,KAAAA,EAAO;AAAA,IACL,GAAGC,gBAAAA,EAAiB;AAAA,IACpBC,SAAAA,EAAW;AAAA,MACTC,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAC,iBAAAA,EAAmB;AAAA,MACjBH,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAE,UAAAA,EAAY;AAAA,MACVJ,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAG,WAAAA,EAAa;AAAA,MACXL,IAAAA,EAAMC;AAAAA,KACR;AAAA,IACAK,MAAAA,EAAQ;AAAA,MACNN,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAASK;AAAAA,KACX;AAAA,IACAC,WAAAA,EAAa;AAAA,MACXR,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAASK;AAAAA;AACX,GACF;AAAA,EACAE,MAAMZ,KAAAA,EAAO;AAAA,IAAEa;AAAAA,GAAM,EAAG;AACtB,IAAA,MAAMC,OAAOC,OAAAA,EAAQ;AACrB,IAAA,MAAM;AAAA,MAAEC;AAAAA,QAAaC,aAAAA,EAAc;AACnC,IAAA,MAAMC,mBAAmBC,cAAAA,EAAe;AACxC,IAAA,MAAMV,MAAAA,GAASW,SAAS,MAAA;AAtD5B,MAAA,IAAA,EAAA;AAsDkCpB,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMS,MAAAA,KAANT,IAAAA,GAAAA,EAAAA,GAAgBqB,qBAAAA,CAAsB,MAAM,CAAA;AAAA,IAAA,CAAC,CAAA;AAC3E,IAAA,MAAMV,WAAAA,GAAcS,SAAS,MAAA;AAvDjC,MAAA,IAAA,EAAA;AAuDuCpB,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMW,WAAAA,KAANX,IAAAA,GAAAA,EAAAA,GAAqBqB,qBAAAA,CAAsB,MAAM,CAAA;AAAA,IAAA,CAAC,CAAA;AACrF,IAAA,MAAMC,QAAAA,GAAWF,SAAS,MAAMG,eAAAA,CAAgBvB,MAAMwB,KAAAA,EAAOf,MAAAA,CAAOe,KAAK,CAAgB,CAAA;AACzF,IAAA,MAAMC,SAAAA,GAAYL,SAAS,MAAM;AAC/B,MAAA,IAAIE,SAASE,KAAAA,EAAO;AAClB,QAAA,OAAOE,MAAMJ,QAAAA,CAASE,KAAK,CAAA,CAAEf,MAAAA,CAAOE,YAAYa,KAAK,CAAA;AAAA,MACvD;AACA,MAAA,OAAOd,MAAAA;AAAAA,IACT,CAAC,CAAA;AACD,IAAA,MAAMiB,WAAAA,GAAcP,SAAS,MAAM;AACjC,MAAA,MAAMQ,OAAO,EAAC;AACd9B,MAAAA,UAAAA,CAAW+B,QAAS9B,CAAAA,IAAAA,KAAS;AAC3B,QAAA,MAAM+B,IAAAA,GAAOC,OAAAA,CAAQ/B,KAAAA,CAAMD,IAAI,GAAGmB,gBAAgB,CAAA;AAClD,QAAA,IAAIY,IAAAA,EAAM;AACRF,UAAAA,IAAAA,CAAK7B,IAAI,CAAA,GAAKC,CAAAA,MAAAA,KAAKgC,YAAAC,WAAAA,EAAA;AAAA,YAAA,OAAA,EACGH,IAAAA;AAAAA,YAAI,OAAA,EAAS;AAAA,cAAEd,UAAUA,QAAAA,CAASQ,KAAAA;AAAAA,cAAO,GAAIxB,MAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAS;AAAC;AAAG,aAAC,IAAA,CAAA;AAAA,QAEnF;AAAA,MACF,CAAC,CAAA;AACD,MAAA,OAAO4B,IAAAA;AAAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAMM,QAAAA,GAAWA,CAACV,KAAAA,EAAYW,UAAAA,KAAuB;AA5EzD,MAAA,IAAA,EAAA;AA6EMnC,MAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMkC,QAAAA,KAANlC,+BAAiBwB,KAAAA,EAAOW,UAAAA,CAAAA;AAAAA,IAC1B,CAAA;AAEA,IAAA,OAAO,MAAM;AACX,MAAA,IAAInC,MAAMoC,QAAAA,EAAU;AAClB,QAAA,OAAAJ,WAAAA,CAAAK,eAAAC,UAAAA,CAAA;AAAA,UAAA,QAEUb,SAAAA,CAAUD,KAAAA;AAAAA,UAAK,SACdX,KAAAA,CAAM0B,KAAAA;AAAAA,UAAK,SACX1B,KAAAA,CAAM2B;AAAAA,SAAK,EACdxC,KAAAA,CAAMyC,aAAa,CAAA,EAAA,IAAA,CAAA;AAAA,MAG7B;AACA,MAAA,OAAAT,WAAAA,CAAAU,YAAAJ,UAAAA,CAAA;AAAA,QAAA,SAEWhB,QAAAA,CAASE;AAAAA,SACZX,KAAAA,EAAK;AAAA,QAAA,UACDJ,MAAAA,CAAOe,KAAAA;AAAAA,QAAK,eACPb,WAAAA,CAAYa,KAAAA;AAAAA,QAAK,eACjBxB,KAAAA,CAAMQ,WAAAA,IAAeM,IAAAA,CAAK6B,UAAAA,CAAW,0BAA0B,oBAAK,CAAA;AAAA,QAAC,UAAA,EAExET;AAAAA,OAAQ,CAAA,EADTP,WAAAA,CAAYH,KAAK,CAAA;AAAA,IAIhC,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"FieldTimePicker.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldTimePicker.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-25 15:31:02\n * @Description:\n */\nimport { computed, defineComponent } from 'vue'\nimport { TimePicker } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { RenderVNode } from '@pro-design-vue/utils'\nimport dayjs from 'dayjs'\nimport getSlot from '../utils/getSlot'\nimport parseValueToDay from '../utils/parseValueToMoment'\nimport fieldDateFormatterMap from '../utils/fieldDateFormatterMap'\nimport FieldReadonly from './FieldReadonly'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectFormList } from '../context/FormListContext'\n\nconst SLOT_NAMES = ['clearIcon', 'renderExtraFooter', 'suffixIcon']\n\nexport default defineComponent({\n name: 'FieldTimePicker',\n props: {\n ...commonFieldProps(),\n clearIcon: {\n type: String,\n default: '',\n },\n renderExtraFooter: {\n type: String,\n default: '',\n },\n suffixIcon: {\n type: String,\n default: '',\n },\n placeholder: {\n type: String,\n },\n format: {\n type: String,\n default: undefined,\n },\n valueFormat: {\n type: String,\n default: undefined,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { formData } = useInjectForm()\n const { rowData } = useInjectFormList()\n\n const formSlotsContext = useInjectSlots()\n const format = computed(() => props.format ?? fieldDateFormatterMap['time'])\n const valueFormat = computed(() => props.valueFormat ?? fieldDateFormatterMap['time'])\n const dayValue = computed(() => parseValueToDay(props.value, format.value) as dayjs.Dayjs)\n const readValue = computed(() => {\n if (dayValue.value) {\n return dayjs(dayValue.value).format(valueFormat.value)\n }\n return undefined\n })\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode\n vnode={slot}\n props={{ formData: formData.value, rowData: rowData?.value, ...(props ?? {}) }}\n />\n )\n }\n })\n return temp\n })\n\n const onChange = (value: any, dateString: string) => {\n props.onChange?.(value, dateString)\n }\n\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={readValue.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <TimePicker\n value={dayValue.value}\n {...attrs}\n format={format.value}\n valueFormat={valueFormat.value}\n placeholder={props.placeholder || intl.getMessage('form.selectPlaceholder', '请选择')}\n v-slots={slotsGetter.value}\n onChange={onChange}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","clearIcon","type","String","default","renderExtraFooter","suffixIcon","placeholder","format","undefined","valueFormat","setup","attrs","intl","useIntl","formData","useInjectForm","rowData","useInjectFormList","formSlotsContext","useInjectSlots","computed","fieldDateFormatterMap","dayValue","parseValueToDay","value","readValue","dayjs","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","onChange","dateString","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","TimePicker","getMessage"],"mappings":"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"}
@@ -8,6 +8,7 @@ import parseValueToDay from '../utils/parseValueToMoment.mjs';
8
8
  import { fieldDateFormatterMap } from '../utils/fieldDateFormatterMap.mjs';
9
9
  import FieldReadonly from './FieldReadonly.mjs';
10
10
  import { useInjectForm } from '../context/FormContext.mjs';
11
+ import { useInjectFormList } from '../context/FormListContext.mjs';
11
12
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
12
13
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
13
14
 
@@ -68,6 +69,9 @@ var FieldTimeRangePicker = /* @__PURE__ */ defineComponent({
68
69
  const {
69
70
  formData
70
71
  } = useInjectForm();
72
+ const {
73
+ rowData
74
+ } = useInjectFormList();
71
75
  const formSlotsContext = useInjectSlots();
72
76
  const format = computed(() => {
73
77
  var _a;
@@ -94,6 +98,7 @@ var FieldTimeRangePicker = /* @__PURE__ */ defineComponent({
94
98
  "vnode": slot,
95
99
  "props": {
96
100
  formData: formData.value,
101
+ rowData: rowData == null ? void 0 : rowData.value,
97
102
  ...props2 != null ? props2 : {}
98
103
  }
99
104
  }, null);
@@ -1 +1 @@
1
- {"version":3,"file":"FieldTimeRangePicker.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldTimeRangePicker.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-24 16:36:08\n * @Description:\n */\nimport type { PropType } from 'vue'\n\nimport { computed, defineComponent } from 'vue'\nimport { TimeRangePicker } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { RenderVNode } from '@pro-design-vue/utils'\nimport dayjs from 'dayjs'\nimport getSlot from '../utils/getSlot'\nimport parseValueToDay from '../utils/parseValueToMoment'\nimport fieldDateFormatterMap from '../utils/fieldDateFormatterMap'\nimport FieldReadonly from './FieldReadonly'\nimport { useInjectForm } from '../context/FormContext'\n\nconst SLOT_NAMES = [\n 'dateRender',\n 'nextIcon',\n 'prevIcon',\n 'suffixIcon',\n 'superNextIcon',\n 'superPrevIcon',\n 'renderExtraFooter',\n 'separator',\n]\n\nexport default defineComponent({\n name: 'FieldTimeRangePicker',\n props: {\n ...commonFieldProps(),\n dateRender: {\n type: String,\n default: '',\n },\n nextIcon: {\n type: String,\n default: '',\n },\n prevIcon: {\n type: String,\n default: '',\n },\n suffixIcon: {\n type: String,\n default: '',\n },\n superNextIcon: {\n type: String,\n default: '',\n },\n superPrevIcon: {\n type: String,\n default: '',\n },\n renderExtraFooter: {\n type: String,\n default: '',\n },\n separator: {\n type: String,\n default: '',\n },\n placeholder: {\n type: Array as PropType<any>,\n default: () => [],\n },\n format: {\n type: String,\n default: undefined,\n },\n valueFormat: {\n type: String,\n default: undefined,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { formData } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const format = computed(() => props.format ?? fieldDateFormatterMap['time'])\n const valueFormat = computed(() => props.valueFormat ?? fieldDateFormatterMap['time'])\n const dayValue = computed(\n () => parseValueToDay(props.value, format.value) as [dayjs.Dayjs, dayjs.Dayjs],\n )\n\n const readValue = computed(() => {\n if (dayValue.value?.length) {\n return `${dayjs(dayValue.value[0]).format(valueFormat.value)} - ${dayjs(dayValue.value[1]).format(valueFormat.value)}`\n }\n return undefined\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode vnode={slot} props={{ formData: formData.value, ...(props ?? {}) }} />\n )\n }\n })\n return temp\n })\n\n const onChange = (value: any, dateString: [string, string]) => {\n props.onChange?.(value, dateString)\n }\n\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={readValue.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <TimeRangePicker\n value={dayValue.value}\n {...attrs}\n format={format.value}\n valueFormat={valueFormat.value}\n placeholder={\n props.placeholder?.length === 2\n ? props.placeholder\n : [\n intl.getMessage('form.selectPlaceholder', '请选择'),\n intl.getMessage('form.selectPlaceholder', '请选择'),\n ]\n }\n v-slots={slotsGetter.value}\n onChange={onChange}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","dateRender","type","String","default","nextIcon","prevIcon","suffixIcon","superNextIcon","superPrevIcon","renderExtraFooter","separator","placeholder","Array","format","undefined","valueFormat","setup","attrs","intl","useIntl","formData","useInjectForm","formSlotsContext","useInjectSlots","computed","fieldDateFormatterMap","dayValue","parseValueToDay","value","readValue","length","dayjs","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","onChange","dateString","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","TimeRangePicker","getMessage"],"mappings":"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"}
1
+ {"version":3,"file":"FieldTimeRangePicker.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldTimeRangePicker.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-25 15:31:06\n * @Description:\n */\nimport type { PropType } from 'vue'\n\nimport { computed, defineComponent } from 'vue'\nimport { TimeRangePicker } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { RenderVNode } from '@pro-design-vue/utils'\nimport dayjs from 'dayjs'\nimport getSlot from '../utils/getSlot'\nimport parseValueToDay from '../utils/parseValueToMoment'\nimport fieldDateFormatterMap from '../utils/fieldDateFormatterMap'\nimport FieldReadonly from './FieldReadonly'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectFormList } from '../context/FormListContext'\n\nconst SLOT_NAMES = [\n 'dateRender',\n 'nextIcon',\n 'prevIcon',\n 'suffixIcon',\n 'superNextIcon',\n 'superPrevIcon',\n 'renderExtraFooter',\n 'separator',\n]\n\nexport default defineComponent({\n name: 'FieldTimeRangePicker',\n props: {\n ...commonFieldProps(),\n dateRender: {\n type: String,\n default: '',\n },\n nextIcon: {\n type: String,\n default: '',\n },\n prevIcon: {\n type: String,\n default: '',\n },\n suffixIcon: {\n type: String,\n default: '',\n },\n superNextIcon: {\n type: String,\n default: '',\n },\n superPrevIcon: {\n type: String,\n default: '',\n },\n renderExtraFooter: {\n type: String,\n default: '',\n },\n separator: {\n type: String,\n default: '',\n },\n placeholder: {\n type: Array as PropType<any>,\n default: () => [],\n },\n format: {\n type: String,\n default: undefined,\n },\n valueFormat: {\n type: String,\n default: undefined,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { formData } = useInjectForm()\n const { rowData } = useInjectFormList()\n\n const formSlotsContext = useInjectSlots()\n const format = computed(() => props.format ?? fieldDateFormatterMap['time'])\n const valueFormat = computed(() => props.valueFormat ?? fieldDateFormatterMap['time'])\n const dayValue = computed(\n () => parseValueToDay(props.value, format.value) as [dayjs.Dayjs, dayjs.Dayjs],\n )\n\n const readValue = computed(() => {\n if (dayValue.value?.length) {\n return `${dayjs(dayValue.value[0]).format(valueFormat.value)} - ${dayjs(dayValue.value[1]).format(valueFormat.value)}`\n }\n return undefined\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode\n vnode={slot}\n props={{ formData: formData.value, rowData: rowData?.value, ...(props ?? {}) }}\n />\n )\n }\n })\n return temp\n })\n\n const onChange = (value: any, dateString: [string, string]) => {\n props.onChange?.(value, dateString)\n }\n\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={readValue.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <TimeRangePicker\n value={dayValue.value}\n {...attrs}\n format={format.value}\n valueFormat={valueFormat.value}\n placeholder={\n props.placeholder?.length === 2\n ? props.placeholder\n : [\n intl.getMessage('form.selectPlaceholder', '请选择'),\n intl.getMessage('form.selectPlaceholder', '请选择'),\n ]\n }\n v-slots={slotsGetter.value}\n onChange={onChange}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","dateRender","type","String","default","nextIcon","prevIcon","suffixIcon","superNextIcon","superPrevIcon","renderExtraFooter","separator","placeholder","Array","format","undefined","valueFormat","setup","attrs","intl","useIntl","formData","useInjectForm","rowData","useInjectFormList","formSlotsContext","useInjectSlots","computed","fieldDateFormatterMap","dayValue","parseValueToDay","value","readValue","length","dayjs","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","onChange","dateString","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","TimeRangePicker","getMessage"],"mappings":"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"}
@@ -6,6 +6,7 @@ import { commonFieldProps } from '../props.mjs';
6
6
  import getSlot from '../utils/getSlot.mjs';
7
7
  import FieldReadonly from './FieldReadonly.mjs';
8
8
  import { useInjectForm } from '../context/FormContext.mjs';
9
+ import { useInjectFormList } from '../context/FormListContext.mjs';
9
10
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
10
11
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
11
12
 
@@ -57,6 +58,9 @@ var FieldTreeSelect = /* @__PURE__ */ defineComponent({
57
58
  const {
58
59
  formData
59
60
  } = useInjectForm();
61
+ const {
62
+ rowData
63
+ } = useInjectFormList();
60
64
  const formSlotsContext = useInjectSlots();
61
65
  const {
62
66
  mergeOptions,
@@ -102,6 +106,7 @@ var FieldTreeSelect = /* @__PURE__ */ defineComponent({
102
106
  "vnode": slot,
103
107
  "props": {
104
108
  formData: formData.value,
109
+ rowData: rowData == null ? void 0 : rowData.value,
105
110
  ...props2 != null ? props2 : {}
106
111
  }
107
112
  }, null);
@@ -1 +1 @@
1
- {"version":3,"file":"FieldTreeSelect.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldTreeSelect.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 15:53:17\n * @LastEditors: shen\n * @LastEditTime: 2025-10-24 16:36:17\n * @Description:\n */\nimport { defineComponent, computed } from 'vue'\nimport { TreeSelect } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useFieldOptions } from '../hooks/useFieldOptions'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { RenderVNode } from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport FieldReadonly from './FieldReadonly'\n\nimport type { Option } from '../type'\nimport { useInjectForm } from '../context/FormContext'\nconst SLOT_NAMES = [\n 'maxTagPlaceholder',\n 'notFoundContent',\n 'searchPlaceholder',\n 'suffixIcon',\n 'tagRender',\n 'title',\n]\n\nexport default defineComponent({\n name: 'FieldTreeSelect',\n props: {\n ...commonFieldProps(),\n maxTagPlaceholder: {\n type: String,\n default: '',\n },\n notFoundContent: {\n type: String,\n default: '',\n },\n searchPlaceholder: {\n type: String,\n default: '',\n },\n suffixIcon: {\n type: String,\n default: '',\n },\n tagRender: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n default: '',\n },\n placeholder: {\n type: String,\n },\n treeCheckable: {\n type: Boolean,\n default: undefined,\n },\n multiple: {\n type: Boolean,\n default: undefined,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { formData } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const { mergeOptions, loading, fieldNames } = useFieldOptions({\n request: props.request,\n options: props.options,\n valueEnum: props.valueEnum,\n dependencies: props.dependencies,\n fieldNames: (attrs as any).fieldNames,\n params: props.params,\n })\n\n const value = computed(() => {\n if (props.request && loading.value) {\n return undefined\n }\n return props.value\n })\n\n const readValue = computed(() => {\n if (!value.value) {\n return undefined\n }\n if (Array.isArray(value.value)) {\n if (!value.value.length) {\n return undefined\n }\n return mergeOptions.value\n .filter((op) => value.value.includes(op.value))\n .map((op) => op.label ?? op.text)\n .join(',')\n }\n const option = mergeOptions.value.find((op) => op.value === value.value)\n return option?.label ?? option?.text\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode vnode={slot} props={{ formData: formData.value, ...(props ?? {}) }} />\n )\n }\n })\n return temp\n })\n\n const formatValue = (value: any) => {\n if (typeof value === 'undefined') {\n if (props.multiple || props.treeCheckable) {\n return []\n }\n return null\n }\n return value\n }\n\n const onChange: any = (value: any, option: Option | Option[]) => {\n props.onChange?.(formatValue(value), option)\n }\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={readValue.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <TreeSelect\n value={value.value}\n {...attrs}\n style={{\n minWidth: '160px',\n }}\n treeCheckable={props.treeCheckable}\n multiple={props.multiple}\n fieldNames={fieldNames.value}\n loading={loading.value}\n placeholder={props.placeholder || intl.getMessage('form.selectPlaceholder', '请选择')}\n treeData={mergeOptions.value as any}\n v-slots={slotsGetter.value}\n onChange={onChange}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","maxTagPlaceholder","type","String","default","notFoundContent","searchPlaceholder","suffixIcon","tagRender","title","placeholder","treeCheckable","Boolean","undefined","multiple","setup","attrs","intl","useIntl","formData","useInjectForm","formSlotsContext","useInjectSlots","mergeOptions","loading","fieldNames","useFieldOptions","request","options","valueEnum","dependencies","params","value","computed","readValue","Array","isArray","length","filter","op","includes","map","_a","label","text","join","option","find","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","formatValue","onChange","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","TreeSelect","minWidth","getMessage"],"mappings":"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"}
1
+ {"version":3,"file":"FieldTreeSelect.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldTreeSelect.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 15:53:17\n * @LastEditors: shen\n * @LastEditTime: 2025-11-25 15:31:11\n * @Description:\n */\nimport { defineComponent, computed } from 'vue'\nimport { TreeSelect } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useFieldOptions } from '../hooks/useFieldOptions'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { RenderVNode } from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport FieldReadonly from './FieldReadonly'\n\nimport type { Option } from '../type'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectFormList } from '../context/FormListContext'\nconst SLOT_NAMES = [\n 'maxTagPlaceholder',\n 'notFoundContent',\n 'searchPlaceholder',\n 'suffixIcon',\n 'tagRender',\n 'title',\n]\n\nexport default defineComponent({\n name: 'FieldTreeSelect',\n props: {\n ...commonFieldProps(),\n maxTagPlaceholder: {\n type: String,\n default: '',\n },\n notFoundContent: {\n type: String,\n default: '',\n },\n searchPlaceholder: {\n type: String,\n default: '',\n },\n suffixIcon: {\n type: String,\n default: '',\n },\n tagRender: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n default: '',\n },\n placeholder: {\n type: String,\n },\n treeCheckable: {\n type: Boolean,\n default: undefined,\n },\n multiple: {\n type: Boolean,\n default: undefined,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { formData } = useInjectForm()\n const { rowData } = useInjectFormList()\n\n const formSlotsContext = useInjectSlots()\n const { mergeOptions, loading, fieldNames } = useFieldOptions({\n request: props.request,\n options: props.options,\n valueEnum: props.valueEnum,\n dependencies: props.dependencies,\n fieldNames: (attrs as any).fieldNames,\n params: props.params,\n })\n\n const value = computed(() => {\n if (props.request && loading.value) {\n return undefined\n }\n return props.value\n })\n\n const readValue = computed(() => {\n if (!value.value) {\n return undefined\n }\n if (Array.isArray(value.value)) {\n if (!value.value.length) {\n return undefined\n }\n return mergeOptions.value\n .filter((op) => value.value.includes(op.value))\n .map((op) => op.label ?? op.text)\n .join(',')\n }\n const option = mergeOptions.value.find((op) => op.value === value.value)\n return option?.label ?? option?.text\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode\n vnode={slot}\n props={{ formData: formData.value, rowData: rowData?.value, ...(props ?? {}) }}\n />\n )\n }\n })\n return temp\n })\n\n const formatValue = (value: any) => {\n if (typeof value === 'undefined') {\n if (props.multiple || props.treeCheckable) {\n return []\n }\n return null\n }\n return value\n }\n\n const onChange: any = (value: any, option: Option | Option[]) => {\n props.onChange?.(formatValue(value), option)\n }\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={readValue.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <TreeSelect\n value={value.value}\n {...attrs}\n style={{\n minWidth: '160px',\n }}\n treeCheckable={props.treeCheckable}\n multiple={props.multiple}\n fieldNames={fieldNames.value}\n loading={loading.value}\n placeholder={props.placeholder || intl.getMessage('form.selectPlaceholder', '请选择')}\n treeData={mergeOptions.value as any}\n v-slots={slotsGetter.value}\n onChange={onChange}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","maxTagPlaceholder","type","String","default","notFoundContent","searchPlaceholder","suffixIcon","tagRender","title","placeholder","treeCheckable","Boolean","undefined","multiple","setup","attrs","intl","useIntl","formData","useInjectForm","rowData","useInjectFormList","formSlotsContext","useInjectSlots","mergeOptions","loading","fieldNames","useFieldOptions","request","options","valueEnum","dependencies","params","value","computed","readValue","Array","isArray","length","filter","op","includes","map","_a","label","text","join","option","find","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","formatValue","onChange","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","TreeSelect","minWidth","getMessage"],"mappings":"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"}
@@ -5,6 +5,7 @@ import { useInjectSlots } from '../context/FormSlotsContext.mjs';
5
5
  import { commonFieldProps } from '../props.mjs';
6
6
  import { useInjectForm } from '../context/FormContext.mjs';
7
7
  import getSlot from '../utils/getSlot.mjs';
8
+ import { useInjectFormList } from '../context/FormListContext.mjs';
8
9
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
9
10
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
10
11
  import { isFunction } from '../../../../utils/validate.mjs';
@@ -83,6 +84,9 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
83
84
  prefixCls,
84
85
  formData
85
86
  } = useInjectForm();
87
+ const {
88
+ rowData
89
+ } = useInjectFormList();
86
90
  const formSlotsContext = useInjectSlots();
87
91
  const fileList = ref([]);
88
92
  const formItemContext = Form.useInjectFormItemContext();
@@ -97,6 +101,7 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
97
101
  "vnode": slot,
98
102
  "props": {
99
103
  formData: formData.value,
104
+ rowData: rowData == null ? void 0 : rowData.value,
100
105
  ...props2 != null ? props2 : {}
101
106
  }
102
107
  }, null);
@@ -110,7 +115,8 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
110
115
  return createVNode(RenderVNode, {
111
116
  "vnode": render,
112
117
  "props": {
113
- formData: formData.value
118
+ formData: formData.value,
119
+ rowData: rowData == null ? void 0 : rowData.value
114
120
  }
115
121
  }, null);
116
122
  }
@@ -122,7 +128,8 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
122
128
  return createVNode(RenderVNode, {
123
129
  "vnode": render,
124
130
  "props": {
125
- formData: formData.value
131
+ formData: formData.value,
132
+ rowData: rowData == null ? void 0 : rowData.value
126
133
  }
127
134
  }, null);
128
135
  }
@@ -134,7 +141,8 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
134
141
  return createVNode(RenderVNode, {
135
142
  "vnode": render,
136
143
  "props": {
137
- formData: formData.value
144
+ formData: formData.value,
145
+ rowData: rowData == null ? void 0 : rowData.value
138
146
  }
139
147
  }, null);
140
148
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FieldUploadButton.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadButton.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-05 09:59:50\n * @Description:\n */\nimport type { PropType } from 'vue'\n\nimport { computed, defineComponent, ref, watch } from 'vue'\nimport { Form, Button, Upload, type UploadChangeParam, type UploadProps } from 'ant-design-vue'\nimport { UploadOutlined } from '@ant-design/icons-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { isFunction, RenderVNode } from '@pro-design-vue/utils'\nimport { useInjectForm } from '../context/FormContext'\nimport getSlot from '../utils/getSlot'\n\nconst SLOT_NAMES = [\n 'downloadIcon',\n 'itemRender',\n 'previewIcon',\n 'removeIcon',\n 'description',\n 'title',\n]\n\nexport default defineComponent({\n name: 'FieldUploadButton',\n props: {\n ...commonFieldProps(),\n iconRender: {\n type: String,\n default: '',\n },\n downloadIcon: {\n type: String,\n default: '',\n },\n itemRender: {\n type: String,\n default: '',\n },\n previewIcon: {\n type: String,\n default: '',\n },\n removeIcon: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n },\n description: {\n type: String,\n },\n name: {\n type: String,\n default: 'file',\n },\n maxCount: {\n type: Number,\n default: undefined,\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n buttonProps: {\n type: Object,\n default: undefined,\n },\n fileList: {\n type: Array,\n default: undefined,\n },\n listType: {\n type: String as PropType<'text' | 'picture' | 'picture-card'>,\n default: 'text',\n },\n listIgnore: {\n type: Boolean,\n default: true,\n },\n showUploadList: {\n type: [Boolean, Object] as PropType<UploadProps['showUploadList']>,\n default: true,\n },\n customRequest: Function,\n beforeUpload: Function,\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { prefixCls, formData } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const fileList = ref<any[]>([])\n const formItemContext = Form.useInjectFormItemContext()\n const baseClassName = computed(() => `${prefixCls}-upload`)\n const isPictureCard = computed(() => props.listType === 'picture-card')\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode vnode={slot} props={{ formData: formData.value, ...(props ?? {}) }} />\n )\n }\n })\n return temp\n })\n\n const icon = computed(() => {\n const render = getSlot(props.iconRender, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return <UploadOutlined />\n })\n\n const title = computed(() => {\n const render = getSlot(props.title, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.title || intl.getMessage('upload.button', '单击上传')\n })\n\n const description = computed(() => {\n const render = getSlot(props.description, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.description\n })\n\n const beforeUpload: UploadProps['beforeUpload'] = async (file, fileList) => {\n const result = await props.beforeUpload?.(file, fileList)\n if (!result && props.listIgnore) {\n return Upload.LIST_IGNORE\n }\n return result\n }\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } =\n (await props.customRequest!(formData, onUploadProgress, option)) ?? {}\n if (success) {\n option.onSuccess?.(data)\n formItemContext.onFieldChange()\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n if (props.beforeUpload) {\n newProps.beforeUpload = beforeUpload\n }\n return newProps\n })\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n } else {\n fileList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n const onUploadChange = (info: UploadChangeParam) => {\n props.onChange?.(\n info.fileList.map((item) => ({\n ...item,\n name: item.name || item.response?.name || item.url || item.response?.url,\n url: item.response?.url || item.url,\n })),\n info.file,\n )\n formItemContext.onFieldChange()\n }\n\n return () => (\n <Upload\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n fileList={fileList.value}\n name={props.name}\n maxCount={props.maxCount}\n listType={props.listType}\n showUploadList={props.readonly || props.showUploadList}\n disabled={props.readonly || props.disabled}\n style={(attrs as any)?.style}\n v-slots={slotsGetter.value}\n onChange={onUploadChange}\n >\n {isPictureCard.value ? (\n props.maxCount !== undefined &&\n fileList.value?.length < props.maxCount && (\n <div>\n {icon.value}\n <div style=\"margin-top: 8px\"> {title.value}</div>\n </div>\n )\n ) : (\n <>\n <Button disabled={props.disabled} {...props.buttonProps}>\n {icon.value}\n {title.value}\n </Button>\n {description.value && (\n <span style={{ marginInlineStart: '10px' }}>{description.value}</span>\n )}\n </>\n )}\n </Upload>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","description","maxCount","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listType","listIgnore","showUploadList","customRequest","Function","beforeUpload","setup","attrs","intl","useIntl","prefixCls","formData","useInjectForm","formSlotsContext","useInjectSlots","ref","formItemContext","Form","useInjectFormItemContext","baseClassName","computed","isPictureCard","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","value","icon","render","isFunction","UploadOutlined","getMessage","file","result","Upload","LIST_IGNORE","option","FormData","append","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onFieldChange","onError","uploadProps","newProps","watch","newValue","map","item","url","immediate","onUploadChange","info","onChange","response","_mergeProps","readonly","style","length","_createTextVNode","_Fragment","Button","marginInlineStart"],"mappings":"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"}
1
+ {"version":3,"file":"FieldUploadButton.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadButton.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-25 15:31:16\n * @Description:\n */\nimport type { PropType } from 'vue'\n\nimport { computed, defineComponent, ref, watch } from 'vue'\nimport { Form, Button, Upload, type UploadChangeParam, type UploadProps } from 'ant-design-vue'\nimport { UploadOutlined } from '@ant-design/icons-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { isFunction, RenderVNode } from '@pro-design-vue/utils'\nimport { useInjectForm } from '../context/FormContext'\nimport getSlot from '../utils/getSlot'\nimport { useInjectFormList } from '../context/FormListContext'\n\nconst SLOT_NAMES = [\n 'downloadIcon',\n 'itemRender',\n 'previewIcon',\n 'removeIcon',\n 'description',\n 'title',\n]\n\nexport default defineComponent({\n name: 'FieldUploadButton',\n props: {\n ...commonFieldProps(),\n iconRender: {\n type: String,\n default: '',\n },\n downloadIcon: {\n type: String,\n default: '',\n },\n itemRender: {\n type: String,\n default: '',\n },\n previewIcon: {\n type: String,\n default: '',\n },\n removeIcon: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n },\n description: {\n type: String,\n },\n name: {\n type: String,\n default: 'file',\n },\n maxCount: {\n type: Number,\n default: undefined,\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n buttonProps: {\n type: Object,\n default: undefined,\n },\n fileList: {\n type: Array,\n default: undefined,\n },\n listType: {\n type: String as PropType<'text' | 'picture' | 'picture-card'>,\n default: 'text',\n },\n listIgnore: {\n type: Boolean,\n default: true,\n },\n showUploadList: {\n type: [Boolean, Object] as PropType<UploadProps['showUploadList']>,\n default: true,\n },\n customRequest: Function,\n beforeUpload: Function,\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { prefixCls, formData } = useInjectForm()\n const { rowData } = useInjectFormList()\n\n const formSlotsContext = useInjectSlots()\n const fileList = ref<any[]>([])\n const formItemContext = Form.useInjectFormItemContext()\n const baseClassName = computed(() => `${prefixCls}-upload`)\n const isPictureCard = computed(() => props.listType === 'picture-card')\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode\n vnode={slot}\n props={{ formData: formData.value, rowData: rowData?.value, ...(props ?? {}) }}\n />\n )\n }\n })\n return temp\n })\n\n const icon = computed(() => {\n const render = getSlot(props.iconRender, formSlotsContext)\n if (isFunction(render)) {\n return (\n <RenderVNode\n vnode={render}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n )\n }\n return <UploadOutlined />\n })\n\n const title = computed(() => {\n const render = getSlot(props.title, formSlotsContext)\n if (isFunction(render)) {\n return (\n <RenderVNode\n vnode={render}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n )\n }\n return props.title || intl.getMessage('upload.button', '单击上传')\n })\n\n const description = computed(() => {\n const render = getSlot(props.description, formSlotsContext)\n if (isFunction(render)) {\n return (\n <RenderVNode\n vnode={render}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n )\n }\n return props.description\n })\n\n const beforeUpload: UploadProps['beforeUpload'] = async (file, fileList) => {\n const result = await props.beforeUpload?.(file, fileList)\n if (!result && props.listIgnore) {\n return Upload.LIST_IGNORE\n }\n return result\n }\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } =\n (await props.customRequest!(formData, onUploadProgress, option)) ?? {}\n if (success) {\n option.onSuccess?.(data)\n formItemContext.onFieldChange()\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n if (props.beforeUpload) {\n newProps.beforeUpload = beforeUpload\n }\n return newProps\n })\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n } else {\n fileList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n const onUploadChange = (info: UploadChangeParam) => {\n props.onChange?.(\n info.fileList.map((item) => ({\n ...item,\n name: item.name || item.response?.name || item.url || item.response?.url,\n url: item.response?.url || item.url,\n })),\n info.file,\n )\n formItemContext.onFieldChange()\n }\n\n return () => (\n <Upload\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n fileList={fileList.value}\n name={props.name}\n maxCount={props.maxCount}\n listType={props.listType}\n showUploadList={props.readonly || props.showUploadList}\n disabled={props.readonly || props.disabled}\n style={(attrs as any)?.style}\n v-slots={slotsGetter.value}\n onChange={onUploadChange}\n >\n {isPictureCard.value ? (\n props.maxCount !== undefined &&\n fileList.value?.length < props.maxCount && (\n <div>\n {icon.value}\n <div style=\"margin-top: 8px\"> {title.value}</div>\n </div>\n )\n ) : (\n <>\n <Button disabled={props.disabled} {...props.buttonProps}>\n {icon.value}\n {title.value}\n </Button>\n {description.value && (\n <span style={{ marginInlineStart: '10px' }}>{description.value}</span>\n )}\n </>\n )}\n </Upload>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","description","maxCount","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listType","listIgnore","showUploadList","customRequest","Function","beforeUpload","setup","attrs","intl","useIntl","prefixCls","formData","useInjectForm","rowData","useInjectFormList","formSlotsContext","useInjectSlots","ref","formItemContext","Form","useInjectFormItemContext","baseClassName","computed","isPictureCard","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","value","icon","render","isFunction","UploadOutlined","getMessage","file","result","Upload","LIST_IGNORE","option","FormData","append","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onFieldChange","onError","uploadProps","newProps","watch","newValue","map","item","url","immediate","onUploadChange","info","onChange","response","_mergeProps","readonly","style","length","_createTextVNode","_Fragment","Button","marginInlineStart"],"mappings":"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"}
@@ -5,6 +5,7 @@ import { useInjectForm } from '../context/FormContext.mjs';
5
5
  import { useInjectSlots } from '../context/FormSlotsContext.mjs';
6
6
  import { commonFieldProps } from '../props.mjs';
7
7
  import getSlot from '../utils/getSlot.mjs';
8
+ import { useInjectFormList } from '../context/FormListContext.mjs';
8
9
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
9
10
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
10
11
  import { isFunction } from '../../../../utils/validate.mjs';
@@ -78,6 +79,9 @@ var FieldUploadDragger = /* @__PURE__ */ defineComponent({
78
79
  prefixCls,
79
80
  formData
80
81
  } = useInjectForm();
82
+ const {
83
+ rowData
84
+ } = useInjectFormList();
81
85
  const intl = useIntl();
82
86
  const formSlotsContext = useInjectSlots();
83
87
  const fileList = ref([]);
@@ -92,6 +96,7 @@ var FieldUploadDragger = /* @__PURE__ */ defineComponent({
92
96
  "vnode": slot,
93
97
  "props": {
94
98
  formData: formData.value,
99
+ rowData: rowData == null ? void 0 : rowData.value,
95
100
  ...props2 != null ? props2 : {}
96
101
  }
97
102
  }, null);
@@ -105,7 +110,8 @@ var FieldUploadDragger = /* @__PURE__ */ defineComponent({
105
110
  return createVNode(RenderVNode, {
106
111
  "vnode": render,
107
112
  "props": {
108
- formData: formData.value
113
+ formData: formData.value,
114
+ rowData: rowData == null ? void 0 : rowData.value
109
115
  }
110
116
  }, null);
111
117
  }
@@ -117,7 +123,8 @@ var FieldUploadDragger = /* @__PURE__ */ defineComponent({
117
123
  return createVNode(RenderVNode, {
118
124
  "vnode": render,
119
125
  "props": {
120
- formData: formData.value
126
+ formData: formData.value,
127
+ rowData: rowData == null ? void 0 : rowData.value
121
128
  }
122
129
  }, null);
123
130
  }
@@ -129,7 +136,8 @@ var FieldUploadDragger = /* @__PURE__ */ defineComponent({
129
136
  return createVNode(RenderVNode, {
130
137
  "vnode": render,
131
138
  "props": {
132
- formData: formData.value
139
+ formData: formData.value,
140
+ rowData: rowData == null ? void 0 : rowData.value
133
141
  }
134
142
  }, null);
135
143
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FieldUploadDragger.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadDragger.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-05 10:00:00\n * @Description:\n */\nimport { computed, defineComponent, ref, watch, type PropType } from 'vue'\nimport { Form, Upload, type UploadChangeParam, type UploadProps } from 'ant-design-vue'\nimport { InboxOutlined } from '@ant-design/icons-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { isFunction, RenderVNode } from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nconst SLOT_NAMES = ['downloadIcon', 'itemRender', 'previewIcon', 'removeIcon']\n\nexport default defineComponent({\n name: 'FieldUploadDragger',\n props: {\n ...commonFieldProps(),\n iconRender: {\n type: String,\n default: '',\n },\n downloadIcon: {\n type: String,\n default: '',\n },\n itemRender: {\n type: String,\n default: '',\n },\n previewIcon: {\n type: String,\n default: '',\n },\n removeIcon: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n },\n description: {\n type: String,\n },\n name: {\n type: String,\n default: 'file',\n },\n max: {\n type: Number,\n default: undefined,\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n buttonProps: {\n type: Object,\n default: undefined,\n },\n fileList: {\n type: Array,\n default: undefined,\n },\n listIgnore: {\n type: Boolean,\n default: true,\n },\n showUploadList: {\n type: [Boolean, Object] as PropType<UploadProps['showUploadList']>,\n default: true,\n },\n customRequest: Function,\n beforeUpload: Function,\n },\n setup(props, { attrs }) {\n const { prefixCls, formData } = useInjectForm()\n const intl = useIntl()\n const formSlotsContext = useInjectSlots()\n const fileList = ref<any[]>([])\n const formItemContext = Form.useInjectFormItemContext()\n const baseClassName = computed(() => `${prefixCls}-upload`)\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode vnode={slot} props={{ formData: formData.value, ...(props ?? {}) }} />\n )\n }\n })\n return temp\n })\n\n const icon = computed(() => {\n const render = getSlot(props.iconRender, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return <InboxOutlined />\n })\n\n const title = computed(() => {\n const render = getSlot(props.title, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.title || intl.getMessage('upload.dragger.text', '单击或拖动文件到此区域进行上传')\n })\n\n const description = computed(() => {\n const render = getSlot(props.description, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.description || intl.getMessage('upload.dragger.hint', '支持单次或批量上传')\n })\n\n const beforeUpload: UploadProps['beforeUpload'] = async (file, fileList) => {\n const result = await props.beforeUpload?.(file, fileList)\n if (!result && props.listIgnore) {\n return Upload.LIST_IGNORE\n }\n return result\n }\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } =\n (await props.customRequest!(formData, onUploadProgress, option)) ?? {}\n if (success) {\n option.onSuccess?.(data)\n formItemContext.onFieldChange()\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n if (props.beforeUpload) {\n newProps.beforeUpload = beforeUpload\n }\n return newProps\n })\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n } else {\n fileList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n const onUploadChange = (info: UploadChangeParam) => {\n props.onChange?.(\n info.fileList.map((item) => ({\n ...item,\n name: item.name || item.response?.name || item.url || item.response?.url,\n url: item.response?.url || item.url,\n })),\n info.file,\n )\n formItemContext.onFieldChange()\n }\n\n return () => (\n <Upload.Dragger\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n fileList={fileList.value}\n name={props.name}\n showUploadList={props.readonly || props.showUploadList}\n disabled={props.readonly || props.disabled}\n style={(attrs as any)?.style}\n v-slots={slotsGetter.value}\n onChange={onUploadChange}\n >\n <p class={`${baseClassName.value}-drag-icon`} style={{ color: 'hsl(var(--pro-primary))' }}>\n {icon.value}\n </p>\n <p class={`${baseClassName.value}-text`}>{title.value}</p>\n <p class={`${baseClassName.value}-hint`}>{description.value}</p>\n </Upload.Dragger>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","description","max","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listIgnore","showUploadList","customRequest","Function","beforeUpload","setup","attrs","prefixCls","formData","useInjectForm","intl","useIntl","formSlotsContext","useInjectSlots","ref","formItemContext","Form","useInjectFormItemContext","baseClassName","computed","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","value","icon","render","isFunction","InboxOutlined","getMessage","file","result","Upload","LIST_IGNORE","option","FormData","append","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onFieldChange","onError","uploadProps","newProps","watch","newValue","map","item","url","immediate","onUploadChange","info","onChange","response","Dragger","_mergeProps","readonly","style","color"],"mappings":"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"}
1
+ {"version":3,"file":"FieldUploadDragger.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadDragger.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-25 15:31:42\n * @Description:\n */\nimport { computed, defineComponent, ref, watch, type PropType } from 'vue'\nimport { Form, Upload, type UploadChangeParam, type UploadProps } from 'ant-design-vue'\nimport { InboxOutlined } from '@ant-design/icons-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { isFunction, RenderVNode } from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport { useInjectFormList } from '../context/FormListContext'\nconst SLOT_NAMES = ['downloadIcon', 'itemRender', 'previewIcon', 'removeIcon']\n\nexport default defineComponent({\n name: 'FieldUploadDragger',\n props: {\n ...commonFieldProps(),\n iconRender: {\n type: String,\n default: '',\n },\n downloadIcon: {\n type: String,\n default: '',\n },\n itemRender: {\n type: String,\n default: '',\n },\n previewIcon: {\n type: String,\n default: '',\n },\n removeIcon: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n },\n description: {\n type: String,\n },\n name: {\n type: String,\n default: 'file',\n },\n max: {\n type: Number,\n default: undefined,\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n buttonProps: {\n type: Object,\n default: undefined,\n },\n fileList: {\n type: Array,\n default: undefined,\n },\n listIgnore: {\n type: Boolean,\n default: true,\n },\n showUploadList: {\n type: [Boolean, Object] as PropType<UploadProps['showUploadList']>,\n default: true,\n },\n customRequest: Function,\n beforeUpload: Function,\n },\n setup(props, { attrs }) {\n const { prefixCls, formData } = useInjectForm()\n const { rowData } = useInjectFormList()\n\n const intl = useIntl()\n const formSlotsContext = useInjectSlots()\n const fileList = ref<any[]>([])\n const formItemContext = Form.useInjectFormItemContext()\n const baseClassName = computed(() => `${prefixCls}-upload`)\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode\n vnode={slot}\n props={{ formData: formData.value, rowData: rowData?.value, ...(props ?? {}) }}\n />\n )\n }\n })\n return temp\n })\n\n const icon = computed(() => {\n const render = getSlot(props.iconRender, formSlotsContext)\n if (isFunction(render)) {\n return (\n <RenderVNode\n vnode={render}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n )\n }\n return <InboxOutlined />\n })\n\n const title = computed(() => {\n const render = getSlot(props.title, formSlotsContext)\n if (isFunction(render)) {\n return (\n <RenderVNode\n vnode={render}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n )\n }\n return props.title || intl.getMessage('upload.dragger.text', '单击或拖动文件到此区域进行上传')\n })\n\n const description = computed(() => {\n const render = getSlot(props.description, formSlotsContext)\n if (isFunction(render)) {\n return (\n <RenderVNode\n vnode={render}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n )\n }\n return props.description || intl.getMessage('upload.dragger.hint', '支持单次或批量上传')\n })\n\n const beforeUpload: UploadProps['beforeUpload'] = async (file, fileList) => {\n const result = await props.beforeUpload?.(file, fileList)\n if (!result && props.listIgnore) {\n return Upload.LIST_IGNORE\n }\n return result\n }\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } =\n (await props.customRequest!(formData, onUploadProgress, option)) ?? {}\n if (success) {\n option.onSuccess?.(data)\n formItemContext.onFieldChange()\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n if (props.beforeUpload) {\n newProps.beforeUpload = beforeUpload\n }\n return newProps\n })\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n } else {\n fileList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n const onUploadChange = (info: UploadChangeParam) => {\n props.onChange?.(\n info.fileList.map((item) => ({\n ...item,\n name: item.name || item.response?.name || item.url || item.response?.url,\n url: item.response?.url || item.url,\n })),\n info.file,\n )\n formItemContext.onFieldChange()\n }\n\n return () => (\n <Upload.Dragger\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n fileList={fileList.value}\n name={props.name}\n showUploadList={props.readonly || props.showUploadList}\n disabled={props.readonly || props.disabled}\n style={(attrs as any)?.style}\n v-slots={slotsGetter.value}\n onChange={onUploadChange}\n >\n <p class={`${baseClassName.value}-drag-icon`} style={{ color: 'hsl(var(--pro-primary))' }}>\n {icon.value}\n </p>\n <p class={`${baseClassName.value}-text`}>{title.value}</p>\n <p class={`${baseClassName.value}-hint`}>{description.value}</p>\n </Upload.Dragger>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","description","max","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listIgnore","showUploadList","customRequest","Function","beforeUpload","setup","attrs","prefixCls","formData","useInjectForm","rowData","useInjectFormList","intl","useIntl","formSlotsContext","useInjectSlots","ref","formItemContext","Form","useInjectFormItemContext","baseClassName","computed","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","value","icon","render","isFunction","InboxOutlined","getMessage","file","result","Upload","LIST_IGNORE","option","FormData","append","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onFieldChange","onError","uploadProps","newProps","watch","newValue","map","item","url","immediate","onUploadChange","info","onChange","response","Dragger","_mergeProps","readonly","style","color"],"mappings":"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"}