pro-design-vue 1.2.20 → 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 (57) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +203 -51
  3. package/dist/index.full.min.js +6 -6
  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 +204 -52
  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/FieldUploadButton.mjs +104 -26
  23. package/es/packages/components/form/src/fields/FieldUploadButton.mjs.map +1 -1
  24. package/es/packages/components/form/src/fields/FieldUploadDragger.mjs +88 -25
  25. package/es/packages/components/form/src/fields/FieldUploadDragger.mjs.map +1 -1
  26. package/es/packages/components/form/src/utils/fieldPropsMap.mjs +4 -0
  27. package/es/packages/components/form/src/utils/fieldPropsMap.mjs.map +1 -1
  28. package/es/version.d.ts +1 -1
  29. package/es/version.mjs +1 -1
  30. package/es/version.mjs.map +1 -1
  31. package/lib/components/form/src/components/FormGroup.d.ts +1 -0
  32. package/lib/components/form/src/components/FormList.d.ts +1 -0
  33. package/lib/components/form/src/components/FormListContainer.d.ts +1 -0
  34. package/lib/components/form/src/components/FormListItem.d.ts +1 -0
  35. package/lib/components/form/src/components/FormSet.d.ts +1 -0
  36. package/lib/components/form/src/components/FormTitle.d.ts +10 -0
  37. package/lib/components/form/src/fields/FieldUploadButton.d.ts +27 -4
  38. package/lib/components/form/src/fields/FieldUploadDragger.d.ts +43 -19
  39. package/lib/components/form/src/type.d.ts +1 -0
  40. package/lib/index.d.ts +1 -0
  41. package/lib/packages/components/form/src/components/FormItem.js +2 -1
  42. package/lib/packages/components/form/src/components/FormItem.js.map +1 -1
  43. package/lib/packages/components/form/src/components/FormTitle.js +8 -2
  44. package/lib/packages/components/form/src/components/FormTitle.js.map +1 -1
  45. package/lib/packages/components/form/src/fields/FieldUploadButton.js +102 -24
  46. package/lib/packages/components/form/src/fields/FieldUploadButton.js.map +1 -1
  47. package/lib/packages/components/form/src/fields/FieldUploadDragger.js +86 -23
  48. package/lib/packages/components/form/src/fields/FieldUploadDragger.js.map +1 -1
  49. package/lib/packages/components/form/src/utils/fieldPropsMap.js +4 -0
  50. package/lib/packages/components/form/src/utils/fieldPropsMap.js.map +1 -1
  51. package/lib/version.d.ts +1 -1
  52. package/lib/version.js +1 -1
  53. package/lib/version.js.map +1 -1
  54. package/package.json +1 -1
  55. package/theme-chalk/index.css +1 -1
  56. package/theme-chalk/pro-form.css +1 -1
  57. package/theme-chalk/src/form.less +12 -0
@@ -1,3 +1,5 @@
1
+ import { type PropType } from 'vue';
2
+ import { type UploadProps } from 'ant-design-vue';
1
3
  declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
4
  iconRender: {
3
5
  type: StringConstructor;
@@ -45,42 +47,52 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
45
47
  type: ArrayConstructor;
46
48
  default: undefined;
47
49
  };
50
+ listIgnore: {
51
+ type: BooleanConstructor;
52
+ default: boolean;
53
+ };
54
+ showUploadList: {
55
+ type: PropType<UploadProps["showUploadList"]>;
56
+ default: boolean;
57
+ };
58
+ customRequest: FunctionConstructor;
59
+ beforeUpload: FunctionConstructor;
48
60
  value: {
49
- type: import("vue").PropType<any>;
61
+ type: PropType<any>;
50
62
  };
51
63
  readonly: {
52
64
  type: BooleanConstructor;
53
65
  default: undefined;
54
66
  };
55
67
  readonlyProps: {
56
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["readonlyProps"]>;
68
+ type: PropType<import("pro-design-vue").ProFormItemType["readonlyProps"]>;
57
69
  default: undefined;
58
70
  };
59
71
  valueEnum: {
60
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["valueEnum"]>;
72
+ type: PropType<import("pro-design-vue").ProFormItemType["valueEnum"]>;
61
73
  default: undefined;
62
74
  };
63
75
  options: {
64
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["options"]>;
76
+ type: PropType<import("pro-design-vue").ProFormItemType["options"]>;
65
77
  default: undefined;
66
78
  };
67
79
  request: {
68
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["request"]>;
80
+ type: PropType<import("pro-design-vue").ProFormItemType["request"]>;
69
81
  default: undefined;
70
82
  };
71
83
  params: {
72
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["params"]>;
84
+ type: PropType<import("pro-design-vue").ProFormItemType["params"]>;
73
85
  default: undefined;
74
86
  };
75
87
  dependencies: {
76
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["dependencies"]>;
88
+ type: PropType<import("pro-design-vue").ProFormItemType["dependencies"]>;
77
89
  default: undefined;
78
90
  };
79
91
  onChange: {
80
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["onChange"]>;
92
+ type: PropType<import("pro-design-vue").ProFormItemType["onChange"]>;
81
93
  };
82
94
  onPressEnter: {
83
- type: import("vue").PropType<import("pro-design-vue").KeyboardEventHandler>;
95
+ type: PropType<import("pro-design-vue").KeyboardEventHandler>;
84
96
  };
85
97
  }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
86
98
  iconRender: {
@@ -129,42 +141,52 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
129
141
  type: ArrayConstructor;
130
142
  default: undefined;
131
143
  };
144
+ listIgnore: {
145
+ type: BooleanConstructor;
146
+ default: boolean;
147
+ };
148
+ showUploadList: {
149
+ type: PropType<UploadProps["showUploadList"]>;
150
+ default: boolean;
151
+ };
152
+ customRequest: FunctionConstructor;
153
+ beforeUpload: FunctionConstructor;
132
154
  value: {
133
- type: import("vue").PropType<any>;
155
+ type: PropType<any>;
134
156
  };
135
157
  readonly: {
136
158
  type: BooleanConstructor;
137
159
  default: undefined;
138
160
  };
139
161
  readonlyProps: {
140
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["readonlyProps"]>;
162
+ type: PropType<import("pro-design-vue").ProFormItemType["readonlyProps"]>;
141
163
  default: undefined;
142
164
  };
143
165
  valueEnum: {
144
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["valueEnum"]>;
166
+ type: PropType<import("pro-design-vue").ProFormItemType["valueEnum"]>;
145
167
  default: undefined;
146
168
  };
147
169
  options: {
148
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["options"]>;
170
+ type: PropType<import("pro-design-vue").ProFormItemType["options"]>;
149
171
  default: undefined;
150
172
  };
151
173
  request: {
152
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["request"]>;
174
+ type: PropType<import("pro-design-vue").ProFormItemType["request"]>;
153
175
  default: undefined;
154
176
  };
155
177
  params: {
156
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["params"]>;
178
+ type: PropType<import("pro-design-vue").ProFormItemType["params"]>;
157
179
  default: undefined;
158
180
  };
159
181
  dependencies: {
160
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["dependencies"]>;
182
+ type: PropType<import("pro-design-vue").ProFormItemType["dependencies"]>;
161
183
  default: undefined;
162
184
  };
163
185
  onChange: {
164
- type: import("vue").PropType<import("pro-design-vue").ProFormItemType["onChange"]>;
186
+ type: PropType<import("pro-design-vue").ProFormItemType["onChange"]>;
165
187
  };
166
188
  onPressEnter: {
167
- type: import("vue").PropType<import("pro-design-vue").KeyboardEventHandler>;
189
+ type: PropType<import("pro-design-vue").KeyboardEventHandler>;
168
190
  };
169
191
  }>> & Readonly<{}>, {
170
192
  disabled: boolean;
@@ -182,7 +204,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
182
204
  downloadIcon: string;
183
205
  itemRender: string;
184
206
  previewIcon: string;
185
- buttonProps: Record<string, any>;
186
207
  fileList: unknown[];
208
+ showUploadList: boolean | import("ant-design-vue/es/upload/interface").ShowUploadListInterface | undefined;
209
+ buttonProps: Record<string, any>;
210
+ listIgnore: boolean;
187
211
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
188
212
  export default _default;
@@ -258,6 +258,7 @@ export type ProFormItemType<T = Entity, FieldType = 'text'> = {
258
258
  */
259
259
  title?: ProVNode | ((params: {
260
260
  formData: T;
261
+ readonly?: boolean;
261
262
  }) => ProVNode);
262
263
  /**
263
264
  * 支持 VNode 和 方法
package/es/index.d.ts CHANGED
@@ -6637,6 +6637,7 @@ export declare type ProFormItemType<T = Entity, FieldType = "text"> = {
6637
6637
  */
6638
6638
  title?: ProVNode | ((params: {
6639
6639
  formData: T;
6640
+ readonly?: boolean;
6640
6641
  }) => ProVNode);
6641
6642
  /**
6642
6643
  * 支持 VNode 和 方法
@@ -196,7 +196,8 @@ var FormItem = /* @__PURE__ */ defineComponent({
196
196
  "style": formItemProps.value.titleStyles
197
197
  }, [createVNode(FormTitle, {
198
198
  "title": props.item.title,
199
- "tooltip": props.item.tooltip
199
+ "tooltip": props.item.tooltip,
200
+ "readonly": mergeReadonly.value
200
201
  }, null)]), createVNode("div", {
201
202
  "class": `${prefixCls}-item-title-extra`
202
203
  }, [createVNode(RenderVNode, {
@@ -1 +1 @@
1
- {"version":3,"file":"FormItem.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormItem.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 16:56:49\n * @LastEditors: shen\n * @LastEditTime: 2025-10-22 10:30:44\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed, watch, ref } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { useInjectFormList } from '../context/FormListContext'\nimport { fieldComponentMap } from '../fieldMap'\nimport {\n get,\n isEqual,\n isNumber,\n merge,\n omitUndefined,\n pickKeys,\n RenderVNode,\n runFunction,\n set,\n} from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport FormColWrapper from './FormColWrapper'\nimport FormTitle from './FormTitle'\nimport covertFormName from '../utils/namePath'\nimport fieldPropsMap from '../utils/fieldPropsMap'\nimport fieldWidthSizeMap from '../utils/fieldWidthSizeMap'\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'htmlFor',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'rules',\n 'style',\n 'class',\n]\n\nconst IGNORE_WIDTH_VALUE_TYPE = ['switch', 'radioButton', 'radio', 'rate']\nconst SLOT_NAMES = ['extra', 'help']\n\nexport default defineComponent({\n name: 'FormItem',\n inheritAttrs: false,\n props: {\n item: {\n type: Object as PropType<ProFormItemType>,\n default: () => ({}),\n },\n grid: {\n type: Boolean,\n default: undefined,\n },\n },\n setup(props) {\n const {\n grid,\n action,\n formKey,\n prefixCls,\n formData,\n readonly,\n readonlyProps,\n disabledKeys,\n hiddenKeys,\n allDisabledKeys,\n labelCol,\n wrapperCol,\n onPressEnter,\n updateHiddenKeys,\n updateDisabledKeys,\n } = useInjectForm()\n const { isList, listKey, listName, rowData } = useInjectFormList()\n const formSlotsContext = useInjectSlots()\n const { fieldValue, onValueChange } = useFieldValue<any>({\n isList,\n namePath: computed(() => props.item.name!),\n initialValue: props.item.initialValue,\n convertValue: props.item.convertValue,\n transform: props.item.transform,\n })\n const fieldRef = ref()\n const mergeGrid = computed(() => props.grid ?? grid?.value)\n const fieldType = computed(() => props.item.fieldType ?? 'text')\n const mergeReadonly = computed(() =>\n runFunction(props.item.readonly ?? readonly?.value, formData.value, rowData?.value),\n )\n const mergeReadonlyProps = computed(() =>\n merge({}, readonlyProps?.value, props.item.readonlyProps),\n )\n const linkageDisabledKeys = computed(() => disabledKeys.value.map((key) => key.split(':')[1]))\n const linkageHiddenKeys = computed(() => hiddenKeys.value.map((key) => key.split(':')[1]))\n const isIgnoreWidth = computed(\n () => props.item.ignoreWidth ?? IGNORE_WIDTH_VALUE_TYPE.includes(fieldType.value),\n )\n const formItemProps = computed(\n () => runFunction(props.item.formItemProps, formData.value) ?? {},\n )\n const restItemProps = computed(() =>\n omitUndefined({\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n labelCol: formItemProps.value?.labelCol ?? labelCol?.value,\n wrapperCol: formItemProps.value?.wrapperCol ?? wrapperCol?.value,\n name: mergeReadonly.value ? undefined : props.item.name,\n htmlFor: mergeReadonly.value\n ? undefined\n : (formItemProps.value?.htmlFor ?? `form-${formKey.value ?? ''}-${props.item.key}`),\n rules: mergeReadonly.value\n ? undefined\n : runFunction(props.item.rules ?? formItemProps.value.rules, formData.value, action),\n }),\n )\n\n const clearOnChange = (newValue: any) => {\n const { clear } = props.item.linkage ?? {}\n if (clear) {\n const clearNamePaths = runFunction(clear, newValue, formData.value) ?? []\n if (clearNamePaths.length > 0) {\n clearNamePaths.forEach((namePath) => {\n const path = isList\n ? [...(listName?.value ?? [])!, ...covertFormName(namePath)!]\n .filter((item) => item !== undefined)\n .flat(1)\n : covertFormName(namePath)\n const value = get(formData.value, path!)\n if (typeof value !== 'undefined') {\n set(formData.value, path!, undefined)\n }\n })\n }\n }\n }\n\n const fieldProps = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value)\n const mergeProps = {\n ...baseProps,\n id: baseProps?.id ?? `form-${formKey.value ?? ''}-${props.item.key}`,\n disabled:\n (runFunction(\n props.item.disabled ?? baseProps?.disabled,\n formData.value,\n rowData?.value,\n ) ?? allDisabledKeys.value.includes(props.item.key as string))\n ? true\n : undefined,\n placeholder: props.item.placeholder ?? baseProps?.placeholder,\n options: props.item.options ?? baseProps?.options ?? baseProps?.treeData,\n allowClear: props.item.allowClear ?? baseProps?.allowClear ?? true,\n }\n\n return omitUndefined({\n valueEnum: props.item.valueEnum,\n dependencies: props.item.dependencies,\n readonly: mergeReadonly.value,\n readonlyProps: mergeReadonlyProps.value,\n request: props.item.request,\n params: props.item.params,\n onChange: (value: any, ...args) => {\n clearOnChange(value)\n onValueChange(value)\n props.item.onChange?.(value, ...args, action)\n },\n ...(fieldPropsMap[fieldType.value]\n ? pickKeys(mergeProps, fieldPropsMap[fieldType.value]!)\n : mergeProps),\n })\n })\n\n const fieldStyle = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value)\n const newStyle = {\n ...baseProps?.style,\n }\n\n if (props.item.width && !fieldWidthSizeMap[props.item.width]) {\n newStyle.width = isNumber(props.item.width) ? props.item.width + 'px' : props.item.width\n } else if (mergeGrid?.value) {\n newStyle.maxWidth = '100%'\n newStyle.width = '100%'\n }\n\n if (isIgnoreWidth.value) Reflect.deleteProperty(newStyle, 'width')\n\n return omitUndefined(newStyle)\n })\n\n const fieldClassName = computed(() => {\n const isSizeEnum = props.item.width && fieldWidthSizeMap[props.item.width]\n const className = {\n [`${prefixCls}-field`]: !!isSizeEnum,\n [`${prefixCls}-field-${props.item.width}`]: isSizeEnum && !isIgnoreWidth.value,\n }\n if (props.item.className) {\n className[props.item.className] = true\n }\n return className\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(formItemProps.value[name], formSlotsContext)\n if (slot) {\n temp[name] = () => <RenderVNode vnode={slot} props={{ formData: formData.value }} />\n }\n })\n if (props.item.title) {\n const extraRender = getSlot(props.item.extra?.label, formSlotsContext)\n temp['label'] = () => (\n <>\n <div class={`${prefixCls}-item-title`} style={formItemProps.value.titleStyles}>\n <FormTitle title={props.item.title} tooltip={props.item.tooltip} />\n </div>\n <div class={`${prefixCls}-item-title-extra`}>\n <RenderVNode vnode={extraRender} props={{ formData: formData.value }} />\n </div>\n </>\n )\n }\n return temp\n })\n\n watch(\n fieldValue,\n (newValue) => {\n const { linkage } = props.item\n if (linkage) {\n const { hidden, disabled } = linkage\n if (hidden) {\n const hiddenKeys = runFunction(hidden, newValue, formData.value) ?? []\n if (!isEqual(hiddenKeys, linkageHiddenKeys.value)) {\n updateHiddenKeys(\n props.item.key as string,\n isList ? hiddenKeys.map((key) => `${listKey}_${key}`) : hiddenKeys,\n )\n }\n }\n\n if (disabled) {\n const disabledKeys = runFunction(disabled, newValue, formData.value) ?? []\n if (!isEqual(disabledKeys, linkageDisabledKeys.value)) {\n updateDisabledKeys(\n props.item.key as string,\n isList ? disabledKeys.map((key) => `${listKey}_${key}`) : disabledKeys,\n )\n }\n }\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(fieldRef, () => {\n props.item.onInit?.(fieldRef.value)\n })\n\n watch(mergeReadonly, () => {\n if (mergeReadonly.value) {\n action.clearValidate(props.item.name)\n }\n })\n\n watch(\n () => restItemProps.value?.rules,\n () => {\n action.clearValidate(props.item.name)\n },\n )\n\n return () => {\n const renderFormItem = getSlot(props.item.renderFormItem, formSlotsContext)\n const extraRender = getSlot(props.item.extra?.item, formSlotsContext)\n const FieldComponent = fieldComponentMap[fieldType.value] ?? fieldComponentMap['text']\n let defaultDom = (\n <FieldComponent\n ref={fieldRef}\n value={fieldValue.value}\n {...fieldProps.value}\n style={fieldStyle.value}\n class={fieldClassName.value}\n onPressEnter={onPressEnter}\n />\n )\n if (renderFormItem) {\n defaultDom = (\n <RenderVNode\n vnode={renderFormItem}\n props={{\n value: fieldValue.value,\n onChange: fieldProps.value.onChange,\n defaultDom,\n formData: formData.value,\n action,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n )\n }\n\n if (extraRender) {\n defaultDom = (\n <div style=\"display: flex; flex-direction: row; justify-content: flex-start; align-items: center;\">\n {defaultDom}\n <div style=\"margin-inline-start: 5px; flex-shrink: 0;\">\n <RenderVNode\n vnode={extraRender}\n props={{\n formData: formData.value,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n </div>\n </div>\n )\n }\n\n const formItemDom = (\n <Form.Item {...restItemProps.value} v-slots={slotsGetter.value}>\n {defaultDom}\n </Form.Item>\n )\n\n const render = getSlot(props.item.render, formSlotsContext)\n return (\n <FormColWrapper colProps={props.item.colProps} grid={mergeGrid.value}>\n {render ? (\n <RenderVNode\n vnode={render}\n props={{\n formData: formData.value,\n defaultDom: formItemDom,\n }}\n />\n ) : (\n formItemDom\n )}\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["ALL_ANTD_PROP_KEYS","IGNORE_WIDTH_VALUE_TYPE","SLOT_NAMES","name","inheritAttrs","props","item","type","Object","default","grid","Boolean","undefined","setup","action","formKey","prefixCls","formData","readonly","readonlyProps","disabledKeys","hiddenKeys","allDisabledKeys","labelCol","wrapperCol","onPressEnter","updateHiddenKeys","updateDisabledKeys","useInjectForm","isList","listKey","listName","rowData","useInjectFormList","formSlotsContext","useInjectSlots","fieldValue","onValueChange","useFieldValue","namePath","computed","initialValue","convertValue","transform","fieldRef","ref","mergeGrid","value","fieldType","mergeReadonly","runFunction","mergeReadonlyProps","merge","linkageDisabledKeys","map","key","split","linkageHiddenKeys","isIgnoreWidth","ignoreWidth","includes","formItemProps","restItemProps","omitUndefined","pickKeys","htmlFor","rules","clearOnChange","newValue","clear","linkage","clearNamePaths","length","forEach","_a","path","covertFormName","filter","flat","get","set","fieldProps","baseProps","mergeProps","id","disabled","placeholder","options","treeData","allowClear","valueEnum","dependencies","request","params","onChange","args","_b","fieldPropsMap","fieldStyle","newStyle","style","width","fieldWidthSizeMap","isNumber","maxWidth","Reflect","deleteProperty","fieldClassName","isSizeEnum","className","slotsGetter","temp","slot","getSlot","_createVNode","RenderVNode","title","extraRender","extra","label","_Fragment","titleStyles","FormTitle","tooltip","watch","hidden","isEqual","immediate","onInit","clearValidate","renderFormItem","FieldComponent","fieldComponentMap","defaultDom","_mergeProps","formItemDom","Form","Item","render","FormColWrapper","colProps"],"mappings":"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"}
1
+ {"version":3,"file":"FormItem.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormItem.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 16:56:49\n * @LastEditors: shen\n * @LastEditTime: 2025-10-25 15:04:23\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed, watch, ref } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { useInjectFormList } from '../context/FormListContext'\nimport { fieldComponentMap } from '../fieldMap'\nimport {\n get,\n isEqual,\n isNumber,\n merge,\n omitUndefined,\n pickKeys,\n RenderVNode,\n runFunction,\n set,\n} from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport FormColWrapper from './FormColWrapper'\nimport FormTitle from './FormTitle'\nimport covertFormName from '../utils/namePath'\nimport fieldPropsMap from '../utils/fieldPropsMap'\nimport fieldWidthSizeMap from '../utils/fieldWidthSizeMap'\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'htmlFor',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'rules',\n 'style',\n 'class',\n]\n\nconst IGNORE_WIDTH_VALUE_TYPE = ['switch', 'radioButton', 'radio', 'rate']\nconst SLOT_NAMES = ['extra', 'help']\n\nexport default defineComponent({\n name: 'FormItem',\n inheritAttrs: false,\n props: {\n item: {\n type: Object as PropType<ProFormItemType>,\n default: () => ({}),\n },\n grid: {\n type: Boolean,\n default: undefined,\n },\n },\n setup(props) {\n const {\n grid,\n action,\n formKey,\n prefixCls,\n formData,\n readonly,\n readonlyProps,\n disabledKeys,\n hiddenKeys,\n allDisabledKeys,\n labelCol,\n wrapperCol,\n onPressEnter,\n updateHiddenKeys,\n updateDisabledKeys,\n } = useInjectForm()\n const { isList, listKey, listName, rowData } = useInjectFormList()\n const formSlotsContext = useInjectSlots()\n const { fieldValue, onValueChange } = useFieldValue<any>({\n isList,\n namePath: computed(() => props.item.name!),\n initialValue: props.item.initialValue,\n convertValue: props.item.convertValue,\n transform: props.item.transform,\n })\n const fieldRef = ref()\n const mergeGrid = computed(() => props.grid ?? grid?.value)\n const fieldType = computed(() => props.item.fieldType ?? 'text')\n const mergeReadonly = computed(() =>\n runFunction(props.item.readonly ?? readonly?.value, formData.value, rowData?.value),\n )\n const mergeReadonlyProps = computed(() =>\n merge({}, readonlyProps?.value, props.item.readonlyProps),\n )\n const linkageDisabledKeys = computed(() => disabledKeys.value.map((key) => key.split(':')[1]))\n const linkageHiddenKeys = computed(() => hiddenKeys.value.map((key) => key.split(':')[1]))\n const isIgnoreWidth = computed(\n () => props.item.ignoreWidth ?? IGNORE_WIDTH_VALUE_TYPE.includes(fieldType.value),\n )\n const formItemProps = computed(\n () => runFunction(props.item.formItemProps, formData.value) ?? {},\n )\n const restItemProps = computed(() =>\n omitUndefined({\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n labelCol: formItemProps.value?.labelCol ?? labelCol?.value,\n wrapperCol: formItemProps.value?.wrapperCol ?? wrapperCol?.value,\n name: mergeReadonly.value ? undefined : props.item.name,\n htmlFor: mergeReadonly.value\n ? undefined\n : (formItemProps.value?.htmlFor ?? `form-${formKey.value ?? ''}-${props.item.key}`),\n rules: mergeReadonly.value\n ? undefined\n : runFunction(props.item.rules ?? formItemProps.value.rules, formData.value, action),\n }),\n )\n\n const clearOnChange = (newValue: any) => {\n const { clear } = props.item.linkage ?? {}\n if (clear) {\n const clearNamePaths = runFunction(clear, newValue, formData.value) ?? []\n if (clearNamePaths.length > 0) {\n clearNamePaths.forEach((namePath) => {\n const path = isList\n ? [...(listName?.value ?? [])!, ...covertFormName(namePath)!]\n .filter((item) => item !== undefined)\n .flat(1)\n : covertFormName(namePath)\n const value = get(formData.value, path!)\n if (typeof value !== 'undefined') {\n set(formData.value, path!, undefined)\n }\n })\n }\n }\n }\n\n const fieldProps = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value)\n const mergeProps = {\n ...baseProps,\n id: baseProps?.id ?? `form-${formKey.value ?? ''}-${props.item.key}`,\n disabled:\n (runFunction(\n props.item.disabled ?? baseProps?.disabled,\n formData.value,\n rowData?.value,\n ) ?? allDisabledKeys.value.includes(props.item.key as string))\n ? true\n : undefined,\n placeholder: props.item.placeholder ?? baseProps?.placeholder,\n options: props.item.options ?? baseProps?.options ?? baseProps?.treeData,\n allowClear: props.item.allowClear ?? baseProps?.allowClear ?? true,\n }\n\n return omitUndefined({\n valueEnum: props.item.valueEnum,\n dependencies: props.item.dependencies,\n readonly: mergeReadonly.value,\n readonlyProps: mergeReadonlyProps.value,\n request: props.item.request,\n params: props.item.params,\n onChange: (value: any, ...args) => {\n clearOnChange(value)\n onValueChange(value)\n props.item.onChange?.(value, ...args, action)\n },\n ...(fieldPropsMap[fieldType.value]\n ? pickKeys(mergeProps, fieldPropsMap[fieldType.value]!)\n : mergeProps),\n })\n })\n\n const fieldStyle = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value)\n const newStyle = {\n ...baseProps?.style,\n }\n\n if (props.item.width && !fieldWidthSizeMap[props.item.width]) {\n newStyle.width = isNumber(props.item.width) ? props.item.width + 'px' : props.item.width\n } else if (mergeGrid?.value) {\n newStyle.maxWidth = '100%'\n newStyle.width = '100%'\n }\n\n if (isIgnoreWidth.value) Reflect.deleteProperty(newStyle, 'width')\n\n return omitUndefined(newStyle)\n })\n\n const fieldClassName = computed(() => {\n const isSizeEnum = props.item.width && fieldWidthSizeMap[props.item.width]\n const className = {\n [`${prefixCls}-field`]: !!isSizeEnum,\n [`${prefixCls}-field-${props.item.width}`]: isSizeEnum && !isIgnoreWidth.value,\n }\n if (props.item.className) {\n className[props.item.className] = true\n }\n return className\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(formItemProps.value[name], formSlotsContext)\n if (slot) {\n temp[name] = () => <RenderVNode vnode={slot} props={{ formData: formData.value }} />\n }\n })\n if (props.item.title) {\n const extraRender = getSlot(props.item.extra?.label, formSlotsContext)\n temp['label'] = () => (\n <>\n <div class={`${prefixCls}-item-title`} style={formItemProps.value.titleStyles}>\n <FormTitle\n title={props.item.title}\n tooltip={props.item.tooltip}\n readonly={mergeReadonly.value}\n />\n </div>\n <div class={`${prefixCls}-item-title-extra`}>\n <RenderVNode vnode={extraRender} props={{ formData: formData.value }} />\n </div>\n </>\n )\n }\n return temp\n })\n\n watch(\n fieldValue,\n (newValue) => {\n const { linkage } = props.item\n if (linkage) {\n const { hidden, disabled } = linkage\n if (hidden) {\n const hiddenKeys = runFunction(hidden, newValue, formData.value) ?? []\n if (!isEqual(hiddenKeys, linkageHiddenKeys.value)) {\n updateHiddenKeys(\n props.item.key as string,\n isList ? hiddenKeys.map((key) => `${listKey}_${key}`) : hiddenKeys,\n )\n }\n }\n\n if (disabled) {\n const disabledKeys = runFunction(disabled, newValue, formData.value) ?? []\n if (!isEqual(disabledKeys, linkageDisabledKeys.value)) {\n updateDisabledKeys(\n props.item.key as string,\n isList ? disabledKeys.map((key) => `${listKey}_${key}`) : disabledKeys,\n )\n }\n }\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(fieldRef, () => {\n props.item.onInit?.(fieldRef.value)\n })\n\n watch(mergeReadonly, () => {\n if (mergeReadonly.value) {\n action.clearValidate(props.item.name)\n }\n })\n\n watch(\n () => restItemProps.value?.rules,\n () => {\n action.clearValidate(props.item.name)\n },\n )\n\n return () => {\n const renderFormItem = getSlot(props.item.renderFormItem, formSlotsContext)\n const extraRender = getSlot(props.item.extra?.item, formSlotsContext)\n const FieldComponent = fieldComponentMap[fieldType.value] ?? fieldComponentMap['text']\n let defaultDom = (\n <FieldComponent\n ref={fieldRef}\n value={fieldValue.value}\n {...fieldProps.value}\n style={fieldStyle.value}\n class={fieldClassName.value}\n onPressEnter={onPressEnter}\n />\n )\n if (renderFormItem) {\n defaultDom = (\n <RenderVNode\n vnode={renderFormItem}\n props={{\n value: fieldValue.value,\n onChange: fieldProps.value.onChange,\n defaultDom,\n formData: formData.value,\n action,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n )\n }\n\n if (extraRender) {\n defaultDom = (\n <div style=\"display: flex; flex-direction: row; justify-content: flex-start; align-items: center;\">\n {defaultDom}\n <div style=\"margin-inline-start: 5px; flex-shrink: 0;\">\n <RenderVNode\n vnode={extraRender}\n props={{\n formData: formData.value,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n </div>\n </div>\n )\n }\n\n const formItemDom = (\n <Form.Item {...restItemProps.value} v-slots={slotsGetter.value}>\n {defaultDom}\n </Form.Item>\n )\n\n const render = getSlot(props.item.render, formSlotsContext)\n return (\n <FormColWrapper colProps={props.item.colProps} grid={mergeGrid.value}>\n {render ? (\n <RenderVNode\n vnode={render}\n props={{\n formData: formData.value,\n defaultDom: formItemDom,\n }}\n />\n ) : (\n formItemDom\n )}\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["ALL_ANTD_PROP_KEYS","IGNORE_WIDTH_VALUE_TYPE","SLOT_NAMES","name","inheritAttrs","props","item","type","Object","default","grid","Boolean","undefined","setup","action","formKey","prefixCls","formData","readonly","readonlyProps","disabledKeys","hiddenKeys","allDisabledKeys","labelCol","wrapperCol","onPressEnter","updateHiddenKeys","updateDisabledKeys","useInjectForm","isList","listKey","listName","rowData","useInjectFormList","formSlotsContext","useInjectSlots","fieldValue","onValueChange","useFieldValue","namePath","computed","initialValue","convertValue","transform","fieldRef","ref","mergeGrid","value","fieldType","mergeReadonly","runFunction","mergeReadonlyProps","merge","linkageDisabledKeys","map","key","split","linkageHiddenKeys","isIgnoreWidth","ignoreWidth","includes","formItemProps","restItemProps","omitUndefined","pickKeys","htmlFor","rules","clearOnChange","newValue","clear","linkage","clearNamePaths","length","forEach","_a","path","covertFormName","filter","flat","get","set","fieldProps","baseProps","mergeProps","id","disabled","placeholder","options","treeData","allowClear","valueEnum","dependencies","request","params","onChange","args","_b","fieldPropsMap","fieldStyle","newStyle","style","width","fieldWidthSizeMap","isNumber","maxWidth","Reflect","deleteProperty","fieldClassName","isSizeEnum","className","slotsGetter","temp","slot","getSlot","_createVNode","RenderVNode","title","extraRender","extra","label","_Fragment","titleStyles","FormTitle","tooltip","watch","hidden","isEqual","immediate","onInit","clearValidate","renderFormItem","FieldComponent","fieldComponentMap","defaultDom","_mergeProps","formItemDom","Form","Item","render","FormColWrapper","colProps"],"mappings":"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"}
@@ -17,6 +17,10 @@ var FormTitle = /* @__PURE__ */ defineComponent({
17
17
  tooltip: {
18
18
  type: [String, Boolean],
19
19
  default: ""
20
+ },
21
+ readonly: {
22
+ type: Boolean,
23
+ default: false
20
24
  }
21
25
  },
22
26
  setup(props) {
@@ -31,7 +35,8 @@ var FormTitle = /* @__PURE__ */ defineComponent({
31
35
  }, [createVNode(RenderVNode, {
32
36
  "vnode": title.value,
33
37
  "props": {
34
- formData: formData.value
38
+ formData: formData.value,
39
+ readonly: props.readonly
35
40
  }
36
41
  }, null)]), props.tooltip && createVNode(Tooltip, null, {
37
42
  default: () => [createVNode(QuestionCircleOutlined, {
@@ -41,7 +46,8 @@ var FormTitle = /* @__PURE__ */ defineComponent({
41
46
  title: () => props.tooltip === true ? createVNode(RenderVNode, {
42
47
  "vnode": title.value,
43
48
  "props": {
44
- formData: formData.value
49
+ formData: formData.value,
50
+ readonly: props.readonly
45
51
  }
46
52
  }, null) : props.tooltip
47
53
  })]);
@@ -1 +1 @@
1
- {"version":3,"file":"FormTitle.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormTitle.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 13:00:22\n * @LastEditors: shen\n * @LastEditTime: 2025-10-07 11:54:30\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed } from 'vue'\nimport { Tooltip } from 'ant-design-vue'\nimport { QuestionCircleOutlined } from '@ant-design/icons-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { RenderVNode } from '@pro-design-vue/utils'\n\nimport getSlot from '../utils/getSlot'\n\nexport default defineComponent({\n name: 'FormTitle',\n inheritAttrs: false,\n props: {\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: [String, Boolean],\n default: '',\n },\n },\n setup(props) {\n const formSlotsContext = useInjectSlots()\n const { prefixCls, formData } = useInjectForm()\n const title = computed(() => getSlot(props.title, formSlotsContext))\n return () => (\n <>\n {title.value && (\n <span class={`${prefixCls}-item-title-text`}>\n <RenderVNode vnode={title.value} props={{ formData: formData.value }} />\n </span>\n )}\n {props.tooltip && (\n <Tooltip\n v-slots={{\n title: () =>\n props.tooltip === true ? (\n <RenderVNode vnode={title.value} props={{ formData: formData.value }} />\n ) : (\n props.tooltip\n ),\n }}\n >\n <QuestionCircleOutlined class={`${prefixCls}-item-tooltip`} style=\"margin-right: 3px\" />\n </Tooltip>\n )}\n </>\n )\n },\n})\n"],"names":["name","inheritAttrs","props","title","type","String","Object","Function","default","undefined","tooltip","Boolean","setup","formSlotsContext","useInjectSlots","prefixCls","formData","useInjectForm","computed","getSlot","_createVNode","_Fragment","value","RenderVNode","Tooltip","QuestionCircleOutlined"],"mappings":";;;;;;;;AAmBA,gDAA+B;AAAA,EAC7BA,IAAAA,EAAM,WAAA;AAAA,EACNC,YAAAA,EAAc,KAAA;AAAA,EACdC,KAAAA,EAAO;AAAA,IACLC,KAAAA,EAAO;AAAA,MACLC,IAAAA,EAAM,CAACC,MAAAA,EAAQC,MAAAA,EAAQC,QAAQ,CAAA;AAAA,MAC/BC,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAC,OAAAA,EAAS;AAAA,MACPN,IAAAA,EAAM,CAACC,MAAAA,EAAQM,OAAO,CAAA;AAAA,MACtBH,OAAAA,EAAS;AAAA;AACX,GACF;AAAA,EACAI,MAAMV,KAAAA,EAAO;AACX,IAAA,MAAMW,mBAAmBC,cAAAA,EAAe;AACxC,IAAA,MAAM;AAAA,MAAEC,SAAAA;AAAAA,MAAWC;AAAAA,QAAaC,aAAAA,EAAc;AAC9C,IAAA,MAAMd,QAAQe,QAAAA,CAAS,MAAMC,QAAQjB,KAAAA,CAAMC,KAAAA,EAAOU,gBAAgB,CAAC,CAAA;AACnE,IAAA,OAAO,MAAAO,YAAAC,QAAAA,SAEFlB,KAAAA,CAAMmB,KAAAA,IAAKF,YAAA,MAAA,EAAA;AAAA,MAAA,OAAA,EACG,GAAGL,SAAS,CAAA,gBAAA;AAAA,KAAkB,EAAA,CAAAK,WAAAA,CAAAG,WAAAA,EAAA;AAAA,MAAA,SACrBpB,KAAAA,CAAMmB,KAAAA;AAAAA,MAAK,OAAA,EAAS;AAAA,QAAEN,UAAUA,QAAAA,CAASM;AAAAA;AAAM,KAAC,EAAA,IAAA,CAAA,CAAA,GAGvEpB,KAAAA,CAAMQ,OAAAA,IAAOU,WAAAA,CAAAI,OAAAA,EAAA,IAAA,EAAA;AAAA,MAAAhB,OAAAA,EAAAA,MAAA,CAAAY,WAAAA,CAAAK,sBAAAA,EAAA;AAAA,QAAA,OAAA,EAWqB,GAAGV,SAAS,CAAA,aAAA,CAAA;AAAA,QAAe,OAAA,EAAA;AAAA,OAAA,EAAA,IAAA,CAAA,CAAA;AAAA,MARxDZ,OAAOA,MACLD,KAAAA,CAAMQ,OAAAA,KAAY,IAAA,GAAIU,YAAAG,WAAAA,EAAA;AAAA,QAAA,SACApB,KAAAA,CAAMmB,KAAAA;AAAAA,QAAK,OAAA,EAAS;AAAA,UAAEN,UAAUA,QAAAA,CAASM;AAAAA;AAAM,OAAC,EAAA,IAAA,CAAA,GAEpEpB,KAAAA,CAAMQ;AAAAA,KACP,CAKR,CAAA,CAAA;AAAA,EAGP;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"FormTitle.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormTitle.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 13:00:22\n * @LastEditors: shen\n * @LastEditTime: 2025-10-25 15:01:48\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed } from 'vue'\nimport { Tooltip } from 'ant-design-vue'\nimport { QuestionCircleOutlined } from '@ant-design/icons-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { RenderVNode } from '@pro-design-vue/utils'\n\nimport getSlot from '../utils/getSlot'\n\nexport default defineComponent({\n name: 'FormTitle',\n inheritAttrs: false,\n props: {\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: [String, Boolean],\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n const formSlotsContext = useInjectSlots()\n const { prefixCls, formData } = useInjectForm()\n const title = computed(() => getSlot(props.title, formSlotsContext))\n return () => (\n <>\n {title.value && (\n <span class={`${prefixCls}-item-title-text`}>\n <RenderVNode\n vnode={title.value}\n props={{ formData: formData.value, readonly: props.readonly }}\n />\n </span>\n )}\n {props.tooltip && (\n <Tooltip\n v-slots={{\n title: () =>\n props.tooltip === true ? (\n <RenderVNode\n vnode={title.value}\n props={{ formData: formData.value, readonly: props.readonly }}\n />\n ) : (\n props.tooltip\n ),\n }}\n >\n <QuestionCircleOutlined class={`${prefixCls}-item-tooltip`} style=\"margin-right: 3px\" />\n </Tooltip>\n )}\n </>\n )\n },\n})\n"],"names":["name","inheritAttrs","props","title","type","String","Object","Function","default","undefined","tooltip","Boolean","readonly","setup","formSlotsContext","useInjectSlots","prefixCls","formData","useInjectForm","computed","getSlot","_createVNode","_Fragment","value","RenderVNode","Tooltip","QuestionCircleOutlined"],"mappings":";;;;;;;;AAmBA,gDAA+B;AAAA,EAC7BA,IAAAA,EAAM,WAAA;AAAA,EACNC,YAAAA,EAAc,KAAA;AAAA,EACdC,KAAAA,EAAO;AAAA,IACLC,KAAAA,EAAO;AAAA,MACLC,IAAAA,EAAM,CAACC,MAAAA,EAAQC,MAAAA,EAAQC,QAAQ,CAAA;AAAA,MAC/BC,OAAAA,EAASC;AAAAA,KACX;AAAA,IACAC,OAAAA,EAAS;AAAA,MACPN,IAAAA,EAAM,CAACC,MAAAA,EAAQM,OAAO,CAAA;AAAA,MACtBH,OAAAA,EAAS;AAAA,KACX;AAAA,IACAI,QAAAA,EAAU;AAAA,MACRR,IAAAA,EAAMO,OAAAA;AAAAA,MACNH,OAAAA,EAAS;AAAA;AACX,GACF;AAAA,EACAK,MAAMX,KAAAA,EAAO;AACX,IAAA,MAAMY,mBAAmBC,cAAAA,EAAe;AACxC,IAAA,MAAM;AAAA,MAAEC,SAAAA;AAAAA,MAAWC;AAAAA,QAAaC,aAAAA,EAAc;AAC9C,IAAA,MAAMf,QAAQgB,QAAAA,CAAS,MAAMC,QAAQlB,KAAAA,CAAMC,KAAAA,EAAOW,gBAAgB,CAAC,CAAA;AACnE,IAAA,OAAO,MAAAO,YAAAC,QAAAA,SAEFnB,KAAAA,CAAMoB,KAAAA,IAAKF,YAAA,MAAA,EAAA;AAAA,MAAA,OAAA,EACG,GAAGL,SAAS,CAAA,gBAAA;AAAA,KAAkB,EAAA,CAAAK,WAAAA,CAAAG,WAAAA,EAAA;AAAA,MAAA,SAEhCrB,KAAAA,CAAMoB,KAAAA;AAAAA,MAAK,OAAA,EACX;AAAA,QAAEN,UAAUA,QAAAA,CAASM,KAAAA;AAAAA,QAAOX,UAAUV,KAAAA,CAAMU;AAAAA;AAAS,KAAC,EAAA,IAAA,CAAA,CAAA,GAIlEV,KAAAA,CAAMQ,OAAAA,IAAOW,WAAAA,CAAAI,OAAAA,EAAA,IAAA,EAAA;AAAA,MAAAjB,OAAAA,EAAAA,MAAA,CAAAa,WAAAA,CAAAK,sBAAAA,EAAA;AAAA,QAAA,OAAA,EAcqB,GAAGV,SAAS,CAAA,aAAA,CAAA;AAAA,QAAe,OAAA,EAAA;AAAA,OAAA,EAAA,IAAA,CAAA,CAAA;AAAA,MAXxDb,OAAOA,MACLD,KAAAA,CAAMQ,OAAAA,KAAY,IAAA,GAAIW,YAAAG,WAAAA,EAAA;AAAA,QAAA,SAEXrB,KAAAA,CAAMoB,KAAAA;AAAAA,QAAK,OAAA,EACX;AAAA,UAAEN,UAAUA,QAAAA,CAASM,KAAAA;AAAAA,UAAOX,UAAUV,KAAAA,CAAMU;AAAAA;AAAS,OAAC,EAAA,IAAA,CAAA,GAG/DV,KAAAA,CAAMQ;AAAAA,KACP,CAKR,CAAA,CAAA;AAAA,EAGP;AACF,CAAC,CAAA;;;;"}
@@ -1,10 +1,10 @@
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 getSlot from '../utils/getSlot.mjs';
7
6
  import { useInjectForm } from '../context/FormContext.mjs';
7
+ import getSlot from '../utils/getSlot.mjs';
8
8
  import { useIntl } from '../../../config-provider/src/useIntl.mjs';
9
9
  import { RenderVNode } from '../../../../utils/render-vnode.mjs';
10
10
  import { isFunction } from '../../../../utils/validate.mjs';
@@ -41,7 +41,7 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
41
41
  type: String,
42
42
  default: "file"
43
43
  },
44
- max: {
44
+ maxCount: {
45
45
  type: Number,
46
46
  default: void 0
47
47
  },
@@ -59,25 +59,31 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
59
59
  },
60
60
  listType: {
61
61
  type: String,
62
- default: "picture"
63
- }
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
64
74
  },
65
75
  setup(props, {
66
76
  attrs
67
77
  }) {
68
78
  const intl = useIntl();
69
79
  const {
80
+ prefixCls,
70
81
  formData
71
82
  } = useInjectForm();
72
83
  const formSlotsContext = useInjectSlots();
73
- const value = computed(() => {
74
- var _a;
75
- return (_a = props.fileList) != null ? _a : props.value;
76
- });
77
- const showUploadButton = computed(() => {
78
- var _a;
79
- return props.max === void 0 || !value.value || ((_a = value.value) == null ? void 0 : _a.length) < props.max;
80
- });
84
+ const fileList = ref([]);
85
+ const formItemContext = Form.useInjectFormItemContext();
86
+ const baseClassName = computed(() => `${prefixCls}-upload`);
81
87
  const isPictureCard = computed(() => props.listType === "picture-card");
82
88
  const slotsGetter = computed(() => {
83
89
  const temp = {};
@@ -118,22 +124,94 @@ var FieldUploadButton = /* @__PURE__ */ defineComponent({
118
124
  }
119
125
  return props.title || intl.getMessage("upload.button", "\u5355\u51FB\u4E0A\u4F20");
120
126
  });
121
- const onChange = (info) => {
127
+ const beforeUpload = async (file, fileList2) => {
122
128
  var _a;
123
- (_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;
124
134
  };
125
- return () => createVNode(Upload, mergeProps({
126
- "fileList": value.value
127
- }, attrs, {
128
- "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,
129
197
  "name": props.name,
130
- "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
131
204
  }), {
132
- default: () => [showUploadButton.value && (isPictureCard.value ? createVNode("span", null, [icon.value, title.value]) : createVNode(Button, mergeProps({
133
- "disabled": props.disabled
134
- }, props.buttonProps), {
135
- default: () => [icon.value, title.value]
136
- }))],
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
+ },
137
215
  ...slotsGetter.value
138
216
  });
139
217
  }
@@ -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-10-24 16:27:19\n * @Description:\n */\nimport type { PropType } from 'vue'\n\nimport { computed, defineComponent } from 'vue'\nimport { Upload, Button } 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 getSlot from '../utils/getSlot'\nimport { useInjectForm } from '../context/FormContext'\nconst SLOT_NAMES = ['downloadIcon', 'itemRender', 'previewIcon', 'removeIcon']\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 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 listType: {\n type: String as PropType<'text' | 'picture' | 'picture-card'>,\n default: 'picture',\n },\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { formData } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const value = computed(() => {\n return props.fileList ?? props.value\n })\n\n const showUploadButton = computed(\n () => props.max === undefined || !value.value || value.value?.length < props.max,\n )\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] = () => <RenderVNode vnode={slot} props={{ formData: formData.value }} />\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 onChange = (info) => {\n props.onChange?.(info.fileList, info)\n }\n\n return () => (\n <Upload\n fileList={value.value}\n {...attrs}\n listType={props.listType}\n name={props.name}\n v-slots={slotsGetter.value}\n onChange={onChange}\n >\n {showUploadButton.value &&\n (isPictureCard.value ? (\n <span>\n {icon.value}\n {title.value}\n </span>\n ) : (\n <Button disabled={props.disabled} {...props.buttonProps}>\n {icon.value}\n {title.value}\n </Button>\n ))}\n </Upload>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","max","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listType","setup","attrs","intl","useIntl","formData","useInjectForm","formSlotsContext","useInjectSlots","value","computed","showUploadButton","length","isPictureCard","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","icon","render","isFunction","UploadOutlined","getMessage","onChange","info","Upload","_mergeProps","Button"],"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-10-25 15:00:08\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 = ['downloadIcon', 'itemRender', 'previewIcon', 'removeIcon']\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 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: 'picture-card',\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] = () => <RenderVNode vnode={slot} props={{ formData: formData.value }} />\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 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)) ?? {}\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 fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n if (!fileList.value?.length) {\n formItemContext.onFieldChange()\n }\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 }\n\n return () => (\n <Upload\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n v-model: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 <Button disabled={props.disabled} {...props.buttonProps}>\n {icon.value}\n {title.value}\n </Button>\n )}\n </Upload>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","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","length","onUploadChange","info","onChange","response","_mergeProps","readonly","$event","style","_createTextVNode","Button"],"mappings":"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"}