pro-design-vue 1.2.19 → 1.2.21

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 (113) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +350 -82
  3. package/dist/index.full.min.js +7 -7
  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 +351 -83
  8. package/es/components/form/src/components/FormGroup.d.ts +1 -0
  9. package/es/components/form/src/components/FormList.d.ts +1 -0
  10. package/es/components/form/src/components/FormListContainer.d.ts +1 -0
  11. package/es/components/form/src/components/FormListItem.d.ts +1 -0
  12. package/es/components/form/src/components/FormSet.d.ts +1 -0
  13. package/es/components/form/src/components/FormTitle.d.ts +10 -0
  14. package/es/components/form/src/fields/FieldUploadButton.d.ts +27 -4
  15. package/es/components/form/src/fields/FieldUploadDragger.d.ts +43 -19
  16. package/es/components/form/src/type.d.ts +1 -0
  17. package/es/index.d.ts +1 -0
  18. package/es/packages/components/form/src/components/FormItem.mjs +2 -1
  19. package/es/packages/components/form/src/components/FormItem.mjs.map +1 -1
  20. package/es/packages/components/form/src/components/FormTitle.mjs +8 -2
  21. package/es/packages/components/form/src/components/FormTitle.mjs.map +1 -1
  22. package/es/packages/components/form/src/fields/FieldCascader.mjs +8 -1
  23. package/es/packages/components/form/src/fields/FieldCascader.mjs.map +1 -1
  24. package/es/packages/components/form/src/fields/FieldDatePicker.mjs +10 -2
  25. package/es/packages/components/form/src/fields/FieldDatePicker.mjs.map +1 -1
  26. package/es/packages/components/form/src/fields/FieldDateRangePicker.mjs +10 -2
  27. package/es/packages/components/form/src/fields/FieldDateRangePicker.mjs.map +1 -1
  28. package/es/packages/components/form/src/fields/FieldDigit.mjs +10 -2
  29. package/es/packages/components/form/src/fields/FieldDigit.mjs.map +1 -1
  30. package/es/packages/components/form/src/fields/FieldDigitRange.mjs +10 -2
  31. package/es/packages/components/form/src/fields/FieldDigitRange.mjs.map +1 -1
  32. package/es/packages/components/form/src/fields/FieldPassword.mjs +10 -2
  33. package/es/packages/components/form/src/fields/FieldPassword.mjs.map +1 -1
  34. package/es/packages/components/form/src/fields/FieldRate.mjs +10 -2
  35. package/es/packages/components/form/src/fields/FieldRate.mjs.map +1 -1
  36. package/es/packages/components/form/src/fields/FieldSelect.mjs +8 -1
  37. package/es/packages/components/form/src/fields/FieldSelect.mjs.map +1 -1
  38. package/es/packages/components/form/src/fields/FieldSlider.mjs +10 -2
  39. package/es/packages/components/form/src/fields/FieldSlider.mjs.map +1 -1
  40. package/es/packages/components/form/src/fields/FieldSwitch.mjs +8 -1
  41. package/es/packages/components/form/src/fields/FieldSwitch.mjs.map +1 -1
  42. package/es/packages/components/form/src/fields/FieldText.mjs +10 -2
  43. package/es/packages/components/form/src/fields/FieldText.mjs.map +1 -1
  44. package/es/packages/components/form/src/fields/FieldTimePicker.mjs +10 -2
  45. package/es/packages/components/form/src/fields/FieldTimePicker.mjs.map +1 -1
  46. package/es/packages/components/form/src/fields/FieldTimeRangePicker.mjs +10 -2
  47. package/es/packages/components/form/src/fields/FieldTimeRangePicker.mjs.map +1 -1
  48. package/es/packages/components/form/src/fields/FieldTreeSelect.mjs +8 -1
  49. package/es/packages/components/form/src/fields/FieldTreeSelect.mjs.map +1 -1
  50. package/es/packages/components/form/src/fields/FieldUploadButton.mjs +119 -28
  51. package/es/packages/components/form/src/fields/FieldUploadButton.mjs.map +1 -1
  52. package/es/packages/components/form/src/fields/FieldUploadDragger.mjs +102 -29
  53. package/es/packages/components/form/src/fields/FieldUploadDragger.mjs.map +1 -1
  54. package/es/packages/components/form/src/utils/fieldPropsMap.mjs +4 -0
  55. package/es/packages/components/form/src/utils/fieldPropsMap.mjs.map +1 -1
  56. package/es/version.d.ts +1 -1
  57. package/es/version.mjs +1 -1
  58. package/es/version.mjs.map +1 -1
  59. package/lib/components/form/src/components/FormGroup.d.ts +1 -0
  60. package/lib/components/form/src/components/FormList.d.ts +1 -0
  61. package/lib/components/form/src/components/FormListContainer.d.ts +1 -0
  62. package/lib/components/form/src/components/FormListItem.d.ts +1 -0
  63. package/lib/components/form/src/components/FormSet.d.ts +1 -0
  64. package/lib/components/form/src/components/FormTitle.d.ts +10 -0
  65. package/lib/components/form/src/fields/FieldUploadButton.d.ts +27 -4
  66. package/lib/components/form/src/fields/FieldUploadDragger.d.ts +43 -19
  67. package/lib/components/form/src/type.d.ts +1 -0
  68. package/lib/index.d.ts +1 -0
  69. package/lib/packages/components/form/src/components/FormItem.js +2 -1
  70. package/lib/packages/components/form/src/components/FormItem.js.map +1 -1
  71. package/lib/packages/components/form/src/components/FormTitle.js +8 -2
  72. package/lib/packages/components/form/src/components/FormTitle.js.map +1 -1
  73. package/lib/packages/components/form/src/fields/FieldCascader.js +8 -1
  74. package/lib/packages/components/form/src/fields/FieldCascader.js.map +1 -1
  75. package/lib/packages/components/form/src/fields/FieldDatePicker.js +10 -2
  76. package/lib/packages/components/form/src/fields/FieldDatePicker.js.map +1 -1
  77. package/lib/packages/components/form/src/fields/FieldDateRangePicker.js +10 -2
  78. package/lib/packages/components/form/src/fields/FieldDateRangePicker.js.map +1 -1
  79. package/lib/packages/components/form/src/fields/FieldDigit.js +10 -2
  80. package/lib/packages/components/form/src/fields/FieldDigit.js.map +1 -1
  81. package/lib/packages/components/form/src/fields/FieldDigitRange.js +10 -2
  82. package/lib/packages/components/form/src/fields/FieldDigitRange.js.map +1 -1
  83. package/lib/packages/components/form/src/fields/FieldPassword.js +10 -2
  84. package/lib/packages/components/form/src/fields/FieldPassword.js.map +1 -1
  85. package/lib/packages/components/form/src/fields/FieldRate.js +10 -2
  86. package/lib/packages/components/form/src/fields/FieldRate.js.map +1 -1
  87. package/lib/packages/components/form/src/fields/FieldSelect.js +8 -1
  88. package/lib/packages/components/form/src/fields/FieldSelect.js.map +1 -1
  89. package/lib/packages/components/form/src/fields/FieldSlider.js +10 -2
  90. package/lib/packages/components/form/src/fields/FieldSlider.js.map +1 -1
  91. package/lib/packages/components/form/src/fields/FieldSwitch.js +8 -1
  92. package/lib/packages/components/form/src/fields/FieldSwitch.js.map +1 -1
  93. package/lib/packages/components/form/src/fields/FieldText.js +10 -2
  94. package/lib/packages/components/form/src/fields/FieldText.js.map +1 -1
  95. package/lib/packages/components/form/src/fields/FieldTimePicker.js +10 -2
  96. package/lib/packages/components/form/src/fields/FieldTimePicker.js.map +1 -1
  97. package/lib/packages/components/form/src/fields/FieldTimeRangePicker.js +10 -2
  98. package/lib/packages/components/form/src/fields/FieldTimeRangePicker.js.map +1 -1
  99. package/lib/packages/components/form/src/fields/FieldTreeSelect.js +8 -1
  100. package/lib/packages/components/form/src/fields/FieldTreeSelect.js.map +1 -1
  101. package/lib/packages/components/form/src/fields/FieldUploadButton.js +117 -26
  102. package/lib/packages/components/form/src/fields/FieldUploadButton.js.map +1 -1
  103. package/lib/packages/components/form/src/fields/FieldUploadDragger.js +100 -27
  104. package/lib/packages/components/form/src/fields/FieldUploadDragger.js.map +1 -1
  105. package/lib/packages/components/form/src/utils/fieldPropsMap.js +4 -0
  106. package/lib/packages/components/form/src/utils/fieldPropsMap.js.map +1 -1
  107. package/lib/version.d.ts +1 -1
  108. package/lib/version.js +1 -1
  109. package/lib/version.js.map +1 -1
  110. package/package.json +1 -1
  111. package/theme-chalk/index.css +1 -1
  112. package/theme-chalk/pro-form.css +1 -1
  113. package/theme-chalk/src/form.less +12 -0
@@ -1 +1 @@
1
- {"version":3,"file":"FieldSlider.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldSlider.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-07-26 11:59:00\n * @Description:\n */\nimport { computed, defineComponent } from 'vue'\nimport { Slider } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport getSlot from '../utils/getSlot'\nimport FieldReadonly from './FieldReadonly'\nimport { RenderVNode } from '@pro-design-vue/utils'\n\nconst SLOT_NAMES = ['mark']\n\nexport default defineComponent({\n name: 'FieldSlider',\n props: {\n ...commonFieldProps(),\n mark: {\n type: String,\n default: '',\n },\n },\n setup(props, { attrs }) {\n const formSlotsContext = useInjectSlots()\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] = () => <RenderVNode vnode={slot} />\n }\n })\n return temp\n })\n\n const onChange = (value: any) => {\n props.onChange?.(value)\n }\n\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={props.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <Slider\n value={props.value}\n {...attrs}\n style={{\n minWidth: '120px',\n }}\n v-slots={slotsGetter.value}\n onChange={onChange}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","mark","type","String","default","setup","attrs","formSlotsContext","useInjectSlots","slotsGetter","computed","temp","forEach","slot","getSlot","_createVNode","RenderVNode","onChange","value","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","Slider","minWidth"],"mappings":";;;;;;;;AAeA,MAAMA,UAAAA,GAAa,CAAC,MAAM,CAAA;AAE1B,kDAA+B;AAAA,EAC7BC,IAAAA,EAAM,aAAA;AAAA,EACNC,KAAAA,EAAO;AAAA,IACL,GAAGC,gBAAAA,EAAiB;AAAA,IACpBC,IAAAA,EAAM;AAAA,MACJC,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA;AACX,GACF;AAAA,EACAC,MAAMN,KAAAA,EAAO;AAAA,IAAEO;AAAAA,GAAM,EAAG;AACtB,IAAA,MAAMC,mBAAmBC,cAAAA,EAAe;AAExC,IAAA,MAAMC,WAAAA,GAAcC,SAAS,MAAM;AACjC,MAAA,MAAMC,OAAO,EAAC;AACdd,MAAAA,UAAAA,CAAWe,QAASd,CAAAA,IAAAA,KAAS;AAC3B,QAAA,MAAMe,IAAAA,GAAOC,OAAAA,CAAQf,KAAAA,CAAMD,IAAI,GAAGS,gBAAgB,CAAA;AAClD,QAAA,IAAIM,IAAAA,EAAM;AACRF,UAAAA,IAAAA,CAAKb,IAAI,CAAA,GAAI,MAAAiB,WAAAA,CAAAC,WAAAA,EAAA;AAAA,YAAA,OAAA,EAA0BH;AAAAA,aAAI,IAAA,CAAA;AAAA,QAC7C;AAAA,MACF,CAAC,CAAA;AACD,MAAA,OAAOF,IAAAA;AAAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAMM,WAAYC,CAAAA,KAAAA,KAAe;AAxCrC,MAAA,IAAA,EAAA;AAyCMnB,MAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMkB,aAANlB,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,EAAiBmB,KAAAA,CAAAA;AAAAA,IACnB,CAAA;AAEA,IAAA,OAAO,MAAM;AACX,MAAA,IAAInB,MAAMoB,QAAAA,EAAU;AAClB,QAAA,OAAAJ,WAAAA,CAAAK,eAAAC,UAAAA,CAAA;AAAA,UAAA,QAEUtB,KAAAA,CAAMmB,KAAAA;AAAAA,UAAK,SACVZ,KAAAA,CAAMgB,KAAAA;AAAAA,UAAK,SACXhB,KAAAA,CAAMiB;AAAAA,SAAK,EACdxB,KAAAA,CAAMyB,aAAa,CAAA,EAAA,IAAA,CAAA;AAAA,MAG7B;AACA,MAAA,OAAAT,WAAAA,CAAAU,QAAAJ,UAAAA,CAAA;AAAA,QAAA,SAEWtB,KAAAA,CAAMmB;AAAAA,SACTZ,KAAAA,EAAK;AAAA,QAAA,OAAA,EACF;AAAA,UACLoB,QAAAA,EAAU;AAAA,SACZ;AAAA,QAAC,UAAA,EAEST;AAAAA,OAAQ,CAAA,EADTR,WAAAA,CAAYS,KAAK,CAAA;AAAA,IAIhC,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"FieldSlider.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldSlider.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-24 16:35:43\n * @Description:\n */\nimport { computed, defineComponent } from 'vue'\nimport { Slider } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport getSlot from '../utils/getSlot'\nimport FieldReadonly from './FieldReadonly'\nimport { RenderVNode } from '@pro-design-vue/utils'\nimport { useInjectForm } from '../context/FormContext'\n\nconst SLOT_NAMES = ['mark']\n\nexport default defineComponent({\n name: 'FieldSlider',\n props: {\n ...commonFieldProps(),\n mark: {\n type: String,\n default: '',\n },\n },\n setup(props, { attrs }) {\n const formSlotsContext = useInjectSlots()\n const { formData } = useInjectForm()\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) => {\n props.onChange?.(value)\n }\n\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={props.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <Slider\n value={props.value}\n {...attrs}\n style={{\n minWidth: '120px',\n }}\n v-slots={slotsGetter.value}\n onChange={onChange}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","mark","type","String","default","setup","attrs","formSlotsContext","useInjectSlots","formData","useInjectForm","slotsGetter","computed","temp","forEach","slot","getSlot","_createVNode","RenderVNode","value","onChange","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","Slider","minWidth"],"mappings":";;;;;;;;;AAgBA,MAAMA,UAAAA,GAAa,CAAC,MAAM,CAAA;AAE1B,kDAA+B;AAAA,EAC7BC,IAAAA,EAAM,aAAA;AAAA,EACNC,KAAAA,EAAO;AAAA,IACL,GAAGC,gBAAAA,EAAiB;AAAA,IACpBC,IAAAA,EAAM;AAAA,MACJC,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA;AACX,GACF;AAAA,EACAC,MAAMN,KAAAA,EAAO;AAAA,IAAEO;AAAAA,GAAM,EAAG;AACtB,IAAA,MAAMC,mBAAmBC,cAAAA,EAAe;AACxC,IAAA,MAAM;AAAA,MAAEC;AAAAA,QAAaC,aAAAA,EAAc;AACnC,IAAA,MAAMC,WAAAA,GAAcC,SAAS,MAAM;AACjC,MAAA,MAAMC,OAAO,EAAC;AACdhB,MAAAA,UAAAA,CAAWiB,QAAShB,CAAAA,IAAAA,KAAS;AAC3B,QAAA,MAAMiB,IAAAA,GAAOC,OAAAA,CAAQjB,KAAAA,CAAMD,IAAI,GAAGS,gBAAgB,CAAA;AAClD,QAAA,IAAIQ,IAAAA,EAAM;AACRF,UAAAA,IAAAA,CAAKf,IAAI,CAAA,GAAKC,CAAAA,MAAAA,KAAKkB,YAAAC,WAAAA,EAAA;AAAA,YAAA,OAAA,EACGH,IAAAA;AAAAA,YAAI,OAAA,EAAS;AAAA,cAAEN,UAAUA,QAAAA,CAASU,KAAAA;AAAAA,cAAO,GAAIpB,MAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAS;AAAC;AAAG,aAAC,IAAA,CAAA;AAAA,QAEnF;AAAA,MACF,CAAC,CAAA;AACD,MAAA,OAAOc,IAAAA;AAAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAMO,WAAYD,CAAAA,KAAAA,KAAe;AA3CrC,MAAA,IAAA,EAAA;AA4CMpB,MAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMqB,aAANrB,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,EAAiBoB,KAAAA,CAAAA;AAAAA,IACnB,CAAA;AAEA,IAAA,OAAO,MAAM;AACX,MAAA,IAAIpB,MAAMsB,QAAAA,EAAU;AAClB,QAAA,OAAAJ,WAAAA,CAAAK,eAAAC,UAAAA,CAAA;AAAA,UAAA,QAEUxB,KAAAA,CAAMoB,KAAAA;AAAAA,UAAK,SACVb,KAAAA,CAAMkB,KAAAA;AAAAA,UAAK,SACXlB,KAAAA,CAAMmB;AAAAA,SAAK,EACd1B,KAAAA,CAAM2B,aAAa,CAAA,EAAA,IAAA,CAAA;AAAA,MAG7B;AACA,MAAA,OAAAT,WAAAA,CAAAU,QAAAJ,UAAAA,CAAA;AAAA,QAAA,SAEWxB,KAAAA,CAAMoB;AAAAA,SACTb,KAAAA,EAAK;AAAA,QAAA,OAAA,EACF;AAAA,UACLsB,QAAAA,EAAU;AAAA,SACZ;AAAA,QAAC,UAAA,EAESR;AAAAA,OAAQ,CAAA,EADTT,WAAAA,CAAYQ,KAAK,CAAA;AAAA,IAIhC,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
@@ -4,6 +4,7 @@ import { useInjectSlots } from '../context/FormSlotsContext.mjs';
4
4
  import { commonFieldProps } from '../props.mjs';
5
5
  import getSlot from '../utils/getSlot.mjs';
6
6
  import FieldReadonly from './FieldReadonly.mjs';
7
+ import { useInjectForm } from '../context/FormContext.mjs';
7
8
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
8
9
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
9
10
 
@@ -24,6 +25,9 @@ var FieldSwitch = /* @__PURE__ */ defineComponent({
24
25
  }) {
25
26
  const intl = useIntl();
26
27
  const formSlotsContext = useInjectSlots();
28
+ const {
29
+ formData
30
+ } = useInjectForm();
27
31
  const readValue = computed(() => {
28
32
  if (!props.value || props.value === attrs.unCheckedValue) {
29
33
  return props.unCheckedChildren || intl.getMessage("switch.open", "\u6253\u5F00");
@@ -40,7 +44,10 @@ var FieldSwitch = /* @__PURE__ */ defineComponent({
40
44
  if (slot) {
41
45
  temp[name] = (props2) => createVNode(RenderVNode, {
42
46
  "vnode": slot,
43
- "props": props2
47
+ "props": {
48
+ formData: formData.value,
49
+ ...props2 != null ? props2 : {}
50
+ }
44
51
  }, null);
45
52
  }
46
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FieldSwitch.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldSwitch.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-07-26 23:42:21\n * @Description:\n */\nimport { computed, defineComponent } from 'vue'\nimport { Switch } 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 getSlot from '../utils/getSlot'\nimport FieldReadonly from './FieldReadonly'\n\nconst SLOT_NAMES = ['checkedChildren', 'unCheckedChildren']\n\nexport default defineComponent({\n name: 'FieldSwitch',\n props: {\n ...commonFieldProps(),\n checkedChildren: {\n type: String,\n },\n unCheckedChildren: {\n type: String,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const formSlotsContext = useInjectSlots()\n\n const readValue = computed(() => {\n if (!props.value || props.value === attrs.unCheckedValue) {\n return props.unCheckedChildren || intl.getMessage('switch.open', '打开')\n }\n\n if (props.value || props.value === attrs.checkedValue) {\n return props.checkedChildren || intl.getMessage('switch.close', '关闭')\n }\n return ''\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) => <RenderVNode vnode={slot} props={props} />\n }\n })\n return temp\n })\n const onChange = (checked: boolean | string | number, event: Event) => {\n props.onChange?.(checked, event)\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 <Switch checked={props.value} {...attrs} v-slots={slotsGetter.value} onChange={onChange} />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","checkedChildren","type","String","unCheckedChildren","setup","attrs","intl","useIntl","formSlotsContext","useInjectSlots","readValue","computed","value","unCheckedValue","getMessage","checkedValue","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","onChange","checked","event","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","Switch"],"mappings":";;;;;;;;;AAgBA,MAAMA,UAAAA,GAAa,CAAC,iBAAA,EAAmB,mBAAmB,CAAA;AAE1D,kDAA+B;AAAA,EAC7BC,IAAAA,EAAM,aAAA;AAAA,EACNC,KAAAA,EAAO;AAAA,IACL,GAAGC,gBAAAA,EAAiB;AAAA,IACpBC,eAAAA,EAAiB;AAAA,MACfC,IAAAA,EAAMC;AAAAA,KACR;AAAA,IACAC,iBAAAA,EAAmB;AAAA,MACjBF,IAAAA,EAAMC;AAAAA;AACR,GACF;AAAA,EACAE,MAAMN,KAAAA,EAAO;AAAA,IAAEO;AAAAA,GAAM,EAAG;AACtB,IAAA,MAAMC,OAAOC,OAAAA,EAAQ;AACrB,IAAA,MAAMC,mBAAmBC,cAAAA,EAAe;AAExC,IAAA,MAAMC,SAAAA,GAAYC,SAAS,MAAM;AAC/B,MAAA,IAAI,CAACb,KAAAA,CAAMc,KAAAA,IAASd,KAAAA,CAAMc,KAAAA,KAAUP,MAAMQ,cAAAA,EAAgB;AACxD,QAAA,OAAOf,KAAAA,CAAMK,iBAAAA,IAAqBG,IAAAA,CAAKQ,UAAAA,CAAW,eAAe,cAAI,CAAA;AAAA,MACvE;AAEA,MAAA,IAAIhB,KAAAA,CAAMc,KAAAA,IAASd,KAAAA,CAAMc,KAAAA,KAAUP,MAAMU,YAAAA,EAAc;AACrD,QAAA,OAAOjB,KAAAA,CAAME,eAAAA,IAAmBM,IAAAA,CAAKQ,UAAAA,CAAW,gBAAgB,cAAI,CAAA;AAAA,MACtE;AACA,MAAA,OAAO,EAAA;AAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAME,WAAAA,GAAcL,SAAS,MAAM;AACjC,MAAA,MAAMM,OAAO,EAAC;AACdrB,MAAAA,UAAAA,CAAWsB,QAASrB,CAAAA,IAAAA,KAAS;AAC3B,QAAA,MAAMsB,IAAAA,GAAOC,OAAAA,CAAQtB,KAAAA,CAAMD,IAAI,GAAGW,gBAAgB,CAAA;AAClD,QAAA,IAAIW,IAAAA,EAAM;AACRF,UAAAA,IAAAA,CAAKpB,IAAI,CAAA,GAAKC,CAAAA,MAAAA,KAAKuB,YAAAC,WAAAA,EAAA;AAAA,YAAA,OAAA,EAAyBH,IAAAA;AAAAA,YAAI,OAAA,EAASrB;AAAAA,aAAK,IAAA,CAAA;AAAA,QAChE;AAAA,MACF,CAAC,CAAA;AACD,MAAA,OAAOmB,IAAAA;AAAAA,IACT,CAAC,CAAA;AACD,IAAA,MAAMM,QAAAA,GAAWA,CAACC,OAAAA,EAAoCC,KAAAA,KAAiB;AAtD3E,MAAA,IAAA,EAAA;AAuDM3B,MAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMyB,QAAAA,KAANzB,+BAAiB0B,OAAAA,EAASC,KAAAA,CAAAA;AAAAA,IAC5B,CAAA;AAEA,IAAA,OAAO,MAAM;AACX,MAAA,IAAI3B,MAAM4B,QAAAA,EAAU;AAClB,QAAA,OAAAL,WAAAA,CAAAM,eAAAC,UAAAA,CAAA;AAAA,UAAA,QAEUlB,SAAAA,CAAUE,KAAAA;AAAAA,UAAK,SACdP,KAAAA,CAAMwB,KAAAA;AAAAA,UAAK,SACXxB,KAAAA,CAAMyB;AAAAA,SAAK,EACdhC,KAAAA,CAAMiC,aAAa,CAAA,EAAA,IAAA,CAAA;AAAA,MAG7B;AACA,MAAA,OAAAV,WAAAA,CAAAW,QAAAJ,UAAAA,CAAA;AAAA,QAAA,WACmB9B,KAAAA,CAAMc;AAAAA,SAAWP,KAAAA,EAAK;AAAA,QAAA,UAAA,EAAwCkB;AAAAA,OAAQ,CAAA,EAArCP,WAAAA,CAAYJ,KAAK,CAAA;AAAA,IAEvE,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"FieldSwitch.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldSwitch.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-24 16:35:50\n * @Description:\n */\nimport { computed, defineComponent } from 'vue'\nimport { Switch } 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 getSlot from '../utils/getSlot'\nimport FieldReadonly from './FieldReadonly'\nimport { useInjectForm } from '../context/FormContext'\n\nconst SLOT_NAMES = ['checkedChildren', 'unCheckedChildren']\n\nexport default defineComponent({\n name: 'FieldSwitch',\n props: {\n ...commonFieldProps(),\n checkedChildren: {\n type: String,\n },\n unCheckedChildren: {\n type: String,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const formSlotsContext = useInjectSlots()\n const { formData } = useInjectForm()\n const readValue = computed(() => {\n if (!props.value || props.value === attrs.unCheckedValue) {\n return props.unCheckedChildren || intl.getMessage('switch.open', '打开')\n }\n\n if (props.value || props.value === attrs.checkedValue) {\n return props.checkedChildren || intl.getMessage('switch.close', '关闭')\n }\n return ''\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 const onChange = (checked: boolean | string | number, event: Event) => {\n props.onChange?.(checked, event)\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 <Switch checked={props.value} {...attrs} v-slots={slotsGetter.value} onChange={onChange} />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","checkedChildren","type","String","unCheckedChildren","setup","attrs","intl","useIntl","formSlotsContext","useInjectSlots","formData","useInjectForm","readValue","computed","value","unCheckedValue","getMessage","checkedValue","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","onChange","checked","event","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","Switch"],"mappings":"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"}
@@ -4,6 +4,7 @@ import { useInjectSlots } from '../context/FormSlotsContext.mjs';
4
4
  import { commonFieldProps } from '../props.mjs';
5
5
  import getSlot from '../utils/getSlot.mjs';
6
6
  import FieldReadonly from './FieldReadonly.mjs';
7
+ import { useInjectForm } from '../context/FormContext.mjs';
7
8
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
8
9
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
9
10
 
@@ -37,6 +38,9 @@ var FieldText = /* @__PURE__ */ defineComponent({
37
38
  }) {
38
39
  const intl = useIntl();
39
40
  const formSlotsContext = useInjectSlots();
41
+ const {
42
+ formData
43
+ } = useInjectForm();
40
44
  const internalValue = computed({
41
45
  get: () => {
42
46
  return props.value;
@@ -51,8 +55,12 @@ var FieldText = /* @__PURE__ */ defineComponent({
51
55
  SLOT_NAMES.forEach((name) => {
52
56
  const slot = getSlot(props[name], formSlotsContext);
53
57
  if (slot) {
54
- temp[name] = () => createVNode(RenderVNode, {
55
- "vnode": slot
58
+ temp[name] = (props2) => createVNode(RenderVNode, {
59
+ "vnode": slot,
60
+ "props": {
61
+ formData: formData.value,
62
+ ...props2 != null ? props2 : {}
63
+ }
56
64
  }, null);
57
65
  }
58
66
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FieldText.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldText.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-10 10:22:43\n * @Description:\n */\nimport { computed, defineComponent } from 'vue'\nimport { Input } 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 getSlot from '../utils/getSlot'\nimport FieldReadonly from './FieldReadonly'\n\nconst SLOT_NAMES = ['addonAfter', 'addonBefore', 'suffix', 'prefix']\n\nexport default defineComponent({\n name: 'FieldText',\n props: {\n ...commonFieldProps(),\n addonAfter: {\n type: String,\n default: '',\n },\n addonBefore: {\n type: String,\n default: '',\n },\n suffix: {\n type: String,\n default: '',\n },\n prefix: {\n type: String,\n default: '',\n },\n placeholder: {\n type: String,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const formSlotsContext = useInjectSlots()\n\n const internalValue = computed({\n get: () => {\n return props.value\n },\n set: (val) => {\n props.onChange?.(val)\n },\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] = () => <RenderVNode vnode={slot} />\n }\n })\n return temp\n })\n\n return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={internalValue.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <Input\n v-model:value={internalValue.value}\n {...attrs}\n placeholder={props.placeholder || intl.getMessage('form.inputPlaceholder', '请输入')}\n onPressEnter={props.onPressEnter}\n v-slots={slotsGetter.value}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","addonAfter","type","String","default","addonBefore","suffix","prefix","placeholder","setup","attrs","intl","useIntl","formSlotsContext","useInjectSlots","internalValue","computed","get","value","set","val","onChange","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","Input","$event","getMessage","onPressEnter"],"mappings":"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"}
1
+ {"version":3,"file":"FieldText.mjs","sources":["../../../../../../../../packages/components/form/src/fields/FieldText.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-24 16:35:56\n * @Description:\n */\nimport { computed, defineComponent } from 'vue'\nimport { Input } 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 getSlot from '../utils/getSlot'\nimport FieldReadonly from './FieldReadonly'\nimport { useInjectForm } from '../context/FormContext'\n\nconst SLOT_NAMES = ['addonAfter', 'addonBefore', 'suffix', 'prefix']\n\nexport default defineComponent({\n name: 'FieldText',\n props: {\n ...commonFieldProps(),\n addonAfter: {\n type: String,\n default: '',\n },\n addonBefore: {\n type: String,\n default: '',\n },\n suffix: {\n type: String,\n default: '',\n },\n prefix: {\n type: String,\n default: '',\n },\n placeholder: {\n type: String,\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const formSlotsContext = useInjectSlots()\n const { formData } = useInjectForm()\n const internalValue = computed({\n get: () => {\n return props.value\n },\n set: (val) => {\n props.onChange?.(val)\n },\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 return () => {\n if (props.readonly) {\n return (\n <FieldReadonly\n text={internalValue.value}\n class={attrs.class}\n style={attrs.style}\n {...props.readonlyProps}\n />\n )\n }\n return (\n <Input\n v-model:value={internalValue.value}\n {...attrs}\n placeholder={props.placeholder || intl.getMessage('form.inputPlaceholder', '请输入')}\n onPressEnter={props.onPressEnter}\n v-slots={slotsGetter.value}\n />\n )\n }\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","addonAfter","type","String","default","addonBefore","suffix","prefix","placeholder","setup","attrs","intl","useIntl","formSlotsContext","useInjectSlots","formData","useInjectForm","internalValue","computed","get","value","set","val","onChange","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","readonly","FieldReadonly","_mergeProps","class","style","readonlyProps","Input","$event","getMessage","onPressEnter"],"mappings":"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"}
@@ -7,6 +7,7 @@ import getSlot from '../utils/getSlot.mjs';
7
7
  import parseValueToDay from '../utils/parseValueToMoment.mjs';
8
8
  import { fieldDateFormatterMap } from '../utils/fieldDateFormatterMap.mjs';
9
9
  import FieldReadonly from './FieldReadonly.mjs';
10
+ import { useInjectForm } from '../context/FormContext.mjs';
10
11
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
11
12
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
12
13
 
@@ -43,6 +44,9 @@ var FieldTimePicker = /* @__PURE__ */ defineComponent({
43
44
  attrs
44
45
  }) {
45
46
  const intl = useIntl();
47
+ const {
48
+ formData
49
+ } = useInjectForm();
46
50
  const formSlotsContext = useInjectSlots();
47
51
  const format = computed(() => {
48
52
  var _a;
@@ -64,8 +68,12 @@ var FieldTimePicker = /* @__PURE__ */ defineComponent({
64
68
  SLOT_NAMES.forEach((name) => {
65
69
  const slot = getSlot(props[name], formSlotsContext);
66
70
  if (slot) {
67
- temp[name] = () => createVNode(RenderVNode, {
68
- "vnode": slot
71
+ temp[name] = (props2) => createVNode(RenderVNode, {
72
+ "vnode": slot,
73
+ "props": {
74
+ formData: formData.value,
75
+ ...props2 != null ? props2 : {}
76
+ }
69
77
  }, null);
70
78
  }
71
79
  });
@@ -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-09-01 13:34:28\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'\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 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] = () => <RenderVNode vnode={slot} />\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","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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"}
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":"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"}
@@ -7,6 +7,7 @@ import getSlot from '../utils/getSlot.mjs';
7
7
  import parseValueToDay from '../utils/parseValueToMoment.mjs';
8
8
  import { fieldDateFormatterMap } from '../utils/fieldDateFormatterMap.mjs';
9
9
  import FieldReadonly from './FieldReadonly.mjs';
10
+ import { useInjectForm } from '../context/FormContext.mjs';
10
11
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
11
12
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
12
13
 
@@ -64,6 +65,9 @@ var FieldTimeRangePicker = /* @__PURE__ */ defineComponent({
64
65
  attrs
65
66
  }) {
66
67
  const intl = useIntl();
68
+ const {
69
+ formData
70
+ } = useInjectForm();
67
71
  const formSlotsContext = useInjectSlots();
68
72
  const format = computed(() => {
69
73
  var _a;
@@ -86,8 +90,12 @@ var FieldTimeRangePicker = /* @__PURE__ */ defineComponent({
86
90
  SLOT_NAMES.forEach((name) => {
87
91
  const slot = getSlot(props[name], formSlotsContext);
88
92
  if (slot) {
89
- temp[name] = () => createVNode(RenderVNode, {
90
- "vnode": slot
93
+ temp[name] = (props2) => createVNode(RenderVNode, {
94
+ "vnode": slot,
95
+ "props": {
96
+ formData: formData.value,
97
+ ...props2 != null ? props2 : {}
98
+ }
91
99
  }, null);
92
100
  }
93
101
  });
@@ -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-09-01 13:34:35\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'\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 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] = () => <RenderVNode vnode={slot} />\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","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-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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"}
@@ -5,6 +5,7 @@ import { useFieldOptions } from '../hooks/useFieldOptions.mjs';
5
5
  import { commonFieldProps } from '../props.mjs';
6
6
  import getSlot from '../utils/getSlot.mjs';
7
7
  import FieldReadonly from './FieldReadonly.mjs';
8
+ import { useInjectForm } from '../context/FormContext.mjs';
8
9
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
9
10
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
10
11
 
@@ -53,6 +54,9 @@ var FieldTreeSelect = /* @__PURE__ */ defineComponent({
53
54
  attrs
54
55
  }) {
55
56
  const intl = useIntl();
57
+ const {
58
+ formData
59
+ } = useInjectForm();
56
60
  const formSlotsContext = useInjectSlots();
57
61
  const {
58
62
  mergeOptions,
@@ -96,7 +100,10 @@ var FieldTreeSelect = /* @__PURE__ */ defineComponent({
96
100
  if (slot) {
97
101
  temp[name] = (props2) => createVNode(RenderVNode, {
98
102
  "vnode": slot,
99
- "props": props2
103
+ "props": {
104
+ formData: formData.value,
105
+ ...props2 != null ? props2 : {}
106
+ }
100
107
  }, null);
101
108
  }
102
109
  });
@@ -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-07-26 23:46: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'\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 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) => <RenderVNode vnode={slot} props={props} />\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","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-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":";;;;;;;;;;;AAmBA,MAAMA,aAAa,CACjB,mBAAA,EACA,mBACA,mBAAA,EACA,YAAA,EACA,aACA,OAAO,CAAA;AAGT,sDAA+B;AAAA,EAC7BC,IAAAA,EAAM,iBAAA;AAAA,EACNC,KAAAA,EAAO;AAAA,IACL,GAAGC,gBAAAA,EAAiB;AAAA,IACpBC,iBAAAA,EAAmB;AAAA,MACjBC,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAC,eAAAA,EAAiB;AAAA,MACfH,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAE,iBAAAA,EAAmB;AAAA,MACjBJ,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAG,UAAAA,EAAY;AAAA,MACVL,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAI,SAAAA,EAAW;AAAA,MACTN,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAK,KAAAA,EAAO;AAAA,MACLP,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAM,WAAAA,EAAa;AAAA,MACXR,IAAAA,EAAMC;AAAAA,KACR;AAAA,IACAQ,aAAAA,EAAe;AAAA,MACbT,IAAAA,EAAMU,OAAAA;AAAAA,MACNR,OAAAA,EAASS;AAAAA,KACX;AAAA,IACAC,QAAAA,EAAU;AAAA,MACRZ,IAAAA,EAAMU,OAAAA;AAAAA,MACNR,OAAAA,EAASS;AAAAA;AACX,GACF;AAAA,EACAE,MAAMhB,KAAAA,EAAO;AAAA,IAAEiB;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,MAAM;AAAA,MAAEC,YAAAA;AAAAA,MAAcC,OAAAA;AAAAA,MAASC;AAAAA,QAAeC,eAAAA,CAAgB;AAAA,MAC5DC,SAAS5B,KAAAA,CAAM4B,OAAAA;AAAAA,MACfC,SAAS7B,KAAAA,CAAM6B,OAAAA;AAAAA,MACfC,WAAW9B,KAAAA,CAAM8B,SAAAA;AAAAA,MACjBC,cAAc/B,KAAAA,CAAM+B,YAAAA;AAAAA,MACpBL,YAAaT,KAAAA,CAAcS,UAAAA;AAAAA,MAC3BM,QAAQhC,KAAAA,CAAMgC;AAAAA,KACf,CAAA;AAED,IAAA,MAAMC,KAAAA,GAAQC,SAAS,MAAM;AAC3B,MAAA,IAAIlC,KAAAA,CAAM4B,OAAAA,IAAWH,OAAAA,CAAQQ,KAAAA,EAAO;AAClC,QAAA,OAAOnB,MAAAA;AAAAA,MACT;AACA,MAAA,OAAOd,KAAAA,CAAMiC,KAAAA;AAAAA,IACf,CAAC,CAAA;AAED,IAAA,MAAME,SAAAA,GAAYD,SAAS,MAAM;AAxFrC,MAAA,IAAA,EAAA;AAyFM,MAAA,IAAI,CAACD,MAAMA,KAAAA,EAAO;AAChB,QAAA,OAAOnB,MAAAA;AAAAA,MACT;AACA,MAAA,IAAIsB,KAAAA,CAAMC,OAAAA,CAAQJ,KAAAA,CAAMA,KAAK,CAAA,EAAG;AAC9B,QAAA,IAAI,CAACA,KAAAA,CAAMA,KAAAA,CAAMK,MAAAA,EAAQ;AACvB,UAAA,OAAOxB,MAAAA;AAAAA,QACT;AACA,QAAA,OAAOU,YAAAA,CAAaS,KAAAA,CACjBM,MAAAA,CAAQC,CAAAA,EAAAA,KAAOP,KAAAA,CAAMA,KAAAA,CAAMQ,QAAAA,CAASD,EAAAA,CAAGP,KAAK,CAAC,CAAA,CAC7CS,GAAAA,CAAKF,CAAAA,EAAAA,KAAE;AAlGlB,UAAA,IAAAG,GAAAA;AAkGuBH,UAAAA,OAAAA,CAAAA,GAAAA,GAAAA,EAAAA,CAAGI,KAAAA,KAAHJ,IAAAA,GAAAA,MAAYA,EAAAA,CAAGK,IAAAA;AAAAA,QAAAA,CAAI,CAAA,CAC/BC,KAAK,QAAG,CAAA;AAAA,MACb;AACA,MAAA,MAAMC,MAAAA,GAASvB,aAAaS,KAAAA,CAAMe,IAAAA,CAAMR,QAAOA,EAAAA,CAAGP,KAAAA,KAAUA,MAAMA,KAAK,CAAA;AACvE,MAAA,OAAA,CAAOc,EAAAA,GAAAA,MAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,MAAAA,CAAQH,KAAAA,KAARG,IAAAA,GAAAA,EAAAA,GAAiBA,MAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,MAAAA,CAAQF,IAAAA;AAAAA,IAClC,CAAC,CAAA;AAED,IAAA,MAAMI,WAAAA,GAAcf,SAAS,MAAM;AACjC,MAAA,MAAMgB,OAAO,EAAC;AACdpD,MAAAA,UAAAA,CAAWqD,QAASpD,CAAAA,IAAAA,KAAS;AAC3B,QAAA,MAAMqD,IAAAA,GAAOC,OAAAA,CAAQrD,KAAAA,CAAMD,IAAI,GAAGuB,gBAAgB,CAAA;AAClD,QAAA,IAAI8B,IAAAA,EAAM;AACRF,UAAAA,IAAAA,CAAKnD,IAAI,CAAA,GAAKC,CAAAA,MAAAA,KAAKsD,YAAAC,WAAAA,EAAA;AAAA,YAAA,OAAA,EACGH,IAAAA;AAAAA,YAAI,OAAA,EAAS;AAAA,cAAEhC,UAAUA,QAAAA,CAASa,KAAAA;AAAAA,cAAO,GAAIjC,MAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAS;AAAC;AAAG,aAAC,IAAA,CAAA;AAAA,QAEnF;AAAA,MACF,CAAC,CAAA;AACD,MAAA,OAAOkD,IAAAA;AAAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAMM,WAAAA,GAAevB,CAAAA,MAAAA,KAAe;AAClC,MAAA,IAAI,OAAOA,WAAU,WAAA,EAAa;AAChC,QAAA,IAAIjC,KAAAA,CAAMe,QAAAA,IAAYf,KAAAA,CAAMY,aAAAA,EAAe;AACzC,UAAA,OAAO,EAAA;AAAA,QACT;AACA,QAAA,OAAO,IAAA;AAAA,MACT;AACA,MAAA,OAAOqB,MAAAA;AAAAA,IACT,CAAA;AAEA,IAAA,MAAMwB,QAAAA,GAAgBA,CAACxB,MAAAA,EAAYc,MAAAA,KAA8B;AAhIrE,MAAA,IAAA,EAAA;AAiIM/C,MAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMyD,QAAAA,KAANzD,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,EAAiBwD,WAAAA,CAAYvB,MAAK,CAAA,EAAGc,MAAAA,CAAAA;AAAAA,IACvC,CAAA;AACA,IAAA,OAAO,MAAM;AACX,MAAA,IAAI/C,MAAM0D,QAAAA,EAAU;AAClB,QAAA,OAAAJ,WAAAA,CAAAK,eAAAC,UAAAA,CAAA;AAAA,UAAA,QAEUzB,SAAAA,CAAUF,KAAAA;AAAAA,UAAK,SACdhB,KAAAA,CAAM4C,KAAAA;AAAAA,UAAK,SACX5C,KAAAA,CAAM6C;AAAAA,SAAK,EACd9D,KAAAA,CAAM+D,aAAa,CAAA,EAAA,IAAA,CAAA;AAAA,MAG7B;AACA,MAAA,OAAAT,WAAAA,CAAAU,YAAAJ,UAAAA,CAAA;AAAA,QAAA,SAEW3B,KAAAA,CAAMA;AAAAA,SACThB,KAAAA,EAAK;AAAA,QAAA,OAAA,EACF;AAAA,UACLgD,QAAAA,EAAU;AAAA,SACZ;AAAA,QAAC,iBACcjE,KAAAA,CAAMY,aAAAA;AAAAA,QAAa,YACxBZ,KAAAA,CAAMe,QAAAA;AAAAA,QAAQ,cACZW,UAAAA,CAAWO,KAAAA;AAAAA,QAAK,WACnBR,OAAAA,CAAQQ,KAAAA;AAAAA,QAAK,eACTjC,KAAAA,CAAMW,WAAAA,IAAeO,IAAAA,CAAKgD,UAAAA,CAAW,0BAA0B,oBAAK,CAAA;AAAA,QAAC,YACxE1C,YAAAA,CAAaS,KAAAA;AAAAA,QAAK,UAAA,EAElBwB;AAAAA,OAAQ,CAAA,EADTR,WAAAA,CAAYhB,KAAK,CAAA;AAAA,IAIhC,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
@@ -1,8 +1,9 @@
1
- import { defineComponent, computed, createVNode, mergeProps } from 'vue';
2
- import { Upload, Button } from 'ant-design-vue';
1
+ import { defineComponent, ref, computed, createVNode, watch, mergeProps, createTextVNode } from 'vue';
2
+ import { Form, Upload, Button } from 'ant-design-vue';
3
3
  import { UploadOutlined } from '@ant-design/icons-vue';
4
4
  import { useInjectSlots } from '../context/FormSlotsContext.mjs';
5
5
  import { commonFieldProps } from '../props.mjs';
6
+ import { useInjectForm } from '../context/FormContext.mjs';
6
7
  import getSlot from '../utils/getSlot.mjs';
7
8
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
8
9
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
@@ -40,7 +41,7 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
40
41
  type: String,
41
42
  default: "file"
42
43
  },
43
- max: {
44
+ maxCount: {
44
45
  type: Number,
45
46
  default: void 0
46
47
  },
@@ -58,22 +59,31 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
58
59
  },
59
60
  listType: {
60
61
  type: String,
61
- default: "picture"
62
- }
62
+ default: "picture-card"
63
+ },
64
+ listIgnore: {
65
+ type: Boolean,
66
+ default: true
67
+ },
68
+ showUploadList: {
69
+ type: [Boolean, Object],
70
+ default: true
71
+ },
72
+ customRequest: Function,
73
+ beforeUpload: Function
63
74
  },
64
75
  setup(props, {
65
76
  attrs
66
77
  }) {
67
78
  const intl = useIntl();
79
+ const {
80
+ prefixCls,
81
+ formData
82
+ } = useInjectForm();
68
83
  const formSlotsContext = useInjectSlots();
69
- const value = computed(() => {
70
- var _a;
71
- return (_a = props.fileList) != null ? _a : props.value;
72
- });
73
- const showUploadButton = computed(() => {
74
- var _a;
75
- return props.max === void 0 || !value.value || ((_a = value.value) == null ? void 0 : _a.length) < props.max;
76
- });
84
+ const fileList = ref([]);
85
+ const formItemContext = Form.useInjectFormItemContext();
86
+ const baseClassName = computed(() => `${prefixCls}-upload`);
77
87
  const isPictureCard = computed(() => props.listType === "picture-card");
78
88
  const slotsGetter = computed(() => {
79
89
  const temp = {};
@@ -81,7 +91,10 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
81
91
  const slot = getSlot(props[name], formSlotsContext);
82
92
  if (slot) {
83
93
  temp[name] = () => createVNode(RenderVNode, {
84
- "vnode": slot
94
+ "vnode": slot,
95
+ "props": {
96
+ formData: formData.value
97
+ }
85
98
  }, null);
86
99
  }
87
100
  });
@@ -91,7 +104,10 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
91
104
  const render = getSlot(props.iconRender, formSlotsContext);
92
105
  if (isFunction(render)) {
93
106
  return createVNode(RenderVNode, {
94
- "vnode": render
107
+ "vnode": render,
108
+ "props": {
109
+ formData: formData.value
110
+ }
95
111
  }, null);
96
112
  }
97
113
  return createVNode(UploadOutlined, null, null);
@@ -100,27 +116,102 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
100
116
  const render = getSlot(props.title, formSlotsContext);
101
117
  if (isFunction(render)) {
102
118
  return createVNode(RenderVNode, {
103
- "vnode": render
119
+ "vnode": render,
120
+ "props": {
121
+ formData: formData.value
122
+ }
104
123
  }, null);
105
124
  }
106
125
  return props.title || intl.getMessage("upload.button", "\u5355\u51FB\u4E0A\u4F20");
107
126
  });
108
- const onChange = (info) => {
127
+ const beforeUpload = async (file, fileList2) => {
109
128
  var _a;
110
- (_a = props.onChange) == null ? void 0 : _a.call(props, info.fileList, info);
129
+ const result = await ((_a = props.beforeUpload) == null ? void 0 : _a.call(props, file, fileList2));
130
+ if (!result && props.listIgnore) {
131
+ return Upload.LIST_IGNORE;
132
+ }
133
+ return result;
111
134
  };
112
- return () => createVNode(Upload, mergeProps({
113
- "fileList": value.value
114
- }, attrs, {
115
- "listType": props.listType,
135
+ const customRequest = async (option) => {
136
+ var _a, _b, _c;
137
+ const formData2 = new FormData();
138
+ formData2.append(props.name, option.file);
139
+ const onUploadProgress = (e) => {
140
+ var _a2;
141
+ if (e.total > 0) {
142
+ e.percent = e.loaded / e.total * 100;
143
+ }
144
+ (_a2 = option == null ? void 0 : option.onProgress) == null ? void 0 : _a2.call(option, e);
145
+ };
146
+ const {
147
+ success,
148
+ error,
149
+ data
150
+ } = (_a = await props.customRequest(formData2, onUploadProgress)) != null ? _a : {};
151
+ if (success) {
152
+ (_b = option.onSuccess) == null ? void 0 : _b.call(option, data);
153
+ formItemContext.onFieldChange();
154
+ } else {
155
+ (_c = option.onError) == null ? void 0 : _c.call(option, error, data);
156
+ }
157
+ };
158
+ const uploadProps = computed(() => {
159
+ const newProps = {
160
+ ...attrs
161
+ };
162
+ if (props.customRequest) {
163
+ newProps.customRequest = customRequest;
164
+ }
165
+ if (props.beforeUpload) {
166
+ newProps.beforeUpload = beforeUpload;
167
+ }
168
+ return newProps;
169
+ });
170
+ watch(() => props.value, (newValue) => {
171
+ var _a;
172
+ fileList.value = [...newValue == null ? void 0 : newValue.map((item) => ({
173
+ ...item,
174
+ name: item.name || item.url
175
+ }))];
176
+ if (!((_a = fileList.value) == null ? void 0 : _a.length)) {
177
+ formItemContext.onFieldChange();
178
+ }
179
+ });
180
+ const onUploadChange = (info) => {
181
+ var _a;
182
+ (_a = props.onChange) == null ? void 0 : _a.call(props, info.fileList.map((item) => {
183
+ var _a2, _b, _c;
184
+ return {
185
+ ...item,
186
+ name: item.name || ((_a2 = item.response) == null ? void 0 : _a2.name) || item.url || ((_b = item.response) == null ? void 0 : _b.url),
187
+ url: ((_c = item.response) == null ? void 0 : _c.url) || item.url
188
+ };
189
+ }), info.file);
190
+ };
191
+ return () => createVNode(Upload, mergeProps(uploadProps.value, {
192
+ "class": {
193
+ [`${baseClassName.value}-readonly`]: props.readonly
194
+ },
195
+ "fileList": fileList.value,
196
+ "onUpdate:fileList": ($event) => fileList.value = $event,
116
197
  "name": props.name,
117
- "onChange": onChange
198
+ "maxCount": props.maxCount,
199
+ "listType": props.listType,
200
+ "showUploadList": props.readonly || props.showUploadList,
201
+ "disabled": props.readonly || props.disabled,
202
+ "style": attrs == null ? void 0 : attrs.style,
203
+ "onChange": onUploadChange
118
204
  }), {
119
- default: () => [showUploadButton.value && (isPictureCard.value ? createVNode("span", null, [icon.value, title.value]) : createVNode(Button, mergeProps({
120
- "disabled": props.disabled
121
- }, props.buttonProps), {
122
- default: () => [icon.value, title.value]
123
- }))],
205
+ default: () => {
206
+ var _a;
207
+ return [isPictureCard.value ? props.maxCount !== void 0 && ((_a = fileList.value) == null ? void 0 : _a.length) < props.maxCount && createVNode("div", null, [icon.value, createVNode("div", {
208
+ "style": "margin-top: 8px"
209
+ }, [createTextVNode(" "), title.value])]) : createVNode(Button, mergeProps({
210
+ "disabled": props.disabled
211
+ }, props.buttonProps), {
212
+ default: () => [icon.value, title.value]
213
+ })];
214
+ },
124
215
  ...slotsGetter.value
125
216
  });
126
217
  }