pro-design-vue 1.2.12 → 1.2.13
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.
- package/dist/index.css +1 -1
- package/dist/index.full.js +73 -7
- package/dist/index.full.min.js +8 -8
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +8 -8
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +73 -7
- package/es/components/form/src/components/FormList.d.ts +28 -1
- package/es/components/form/src/components/FormListContainer.d.ts +28 -1
- package/es/components/form/src/components/FormListItem.d.ts +39 -1
- package/es/components/form/src/context/FormContext.d.ts +2 -0
- package/es/packages/components/form/src/base/BaseForm.mjs +8 -0
- package/es/packages/components/form/src/base/BaseForm.mjs.map +1 -1
- package/es/packages/components/form/src/components/FormItem.mjs +7 -3
- package/es/packages/components/form/src/components/FormItem.mjs.map +1 -1
- package/es/packages/components/form/src/components/FormItems.mjs +1 -1
- package/es/packages/components/form/src/components/FormItems.mjs.map +1 -1
- package/es/packages/components/form/src/components/FormList.mjs +15 -0
- package/es/packages/components/form/src/components/FormList.mjs.map +1 -1
- package/es/packages/components/form/src/components/FormListContainer.mjs +16 -0
- package/es/packages/components/form/src/components/FormListContainer.mjs.map +1 -1
- package/es/packages/components/form/src/components/FormListItem.mjs +24 -1
- package/es/packages/components/form/src/components/FormListItem.mjs.map +1 -1
- package/es/packages/components/form/src/context/FormContext.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/form/src/components/FormList.d.ts +28 -1
- package/lib/components/form/src/components/FormListContainer.d.ts +28 -1
- package/lib/components/form/src/components/FormListItem.d.ts +39 -1
- package/lib/components/form/src/context/FormContext.d.ts +2 -0
- package/lib/packages/components/form/src/base/BaseForm.js +8 -0
- package/lib/packages/components/form/src/base/BaseForm.js.map +1 -1
- package/lib/packages/components/form/src/components/FormItem.js +7 -3
- package/lib/packages/components/form/src/components/FormItem.js.map +1 -1
- package/lib/packages/components/form/src/components/FormItems.js +1 -1
- package/lib/packages/components/form/src/components/FormItems.js.map +1 -1
- package/lib/packages/components/form/src/components/FormList.js +15 -0
- package/lib/packages/components/form/src/components/FormList.js.map +1 -1
- package/lib/packages/components/form/src/components/FormListContainer.js +16 -0
- package/lib/packages/components/form/src/components/FormListContainer.js.map +1 -1
- package/lib/packages/components/form/src/components/FormListItem.js +24 -1
- package/lib/packages/components/form/src/components/FormListItem.js.map +1 -1
- package/lib/packages/components/form/src/context/FormContext.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/pro-form.css +1 -1
- package/theme-chalk/src/form.less +11 -0
|
@@ -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-10 10:23:45\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 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 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","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-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":";;;;;;;;;;;;;;;;;;;;AAmCA,MAAMA,kBAAAA,GAAqB,CACzB,UAAA,EACA,OAAA,EACA,eACA,YAAA,EACA,UAAA,EACA,SAAA,EACA,UAAA,EACA,iBACA,gBAAA,EACA,iBAAA,EACA,YAAA,EACA,OAAA,EACA,SACA,OAAO,CAAA;AAGT,MAAMC,uBAAAA,GAA0B,CAAC,QAAA,EAAU,aAAA,EAAe,SAAS,MAAM,CAAA;AACzE,MAAMC,UAAAA,GAAa,CAAC,OAAA,EAAS,MAAM,CAAA;AAEnC,+CAA+B;AAAA,EAC7BC,IAAAA,EAAM,UAAA;AAAA,EACNC,YAAAA,EAAc,KAAA;AAAA,EACdC,KAAAA,EAAO;AAAA,IACLC,IAAAA,EAAM;AAAA,MACJC,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAASA,OAAO,EAAC;AAAA,KACnB;AAAA,IACAC,IAAAA,EAAM;AAAA,MACJH,IAAAA,EAAMI,OAAAA;AAAAA,MACNF,OAAAA,EAASG;AAAAA;AACX,GACF;AAAA,EACAC,MAAMR,KAAAA,EAAO;AACX,IAAA,MAAM;AAAA,MACJK,IAAAA;AAAAA,MACAI,MAAAA;AAAAA,MACAC,OAAAA;AAAAA,MACAC,SAAAA;AAAAA,MACAC,QAAAA;AAAAA,MACAC,QAAAA;AAAAA,MACAC,aAAAA;AAAAA,MACAC,YAAAA;AAAAA,MACAC,UAAAA;AAAAA,MACAC,eAAAA;AAAAA,MACAC,QAAAA;AAAAA,MACAC,UAAAA;AAAAA,MACAC,YAAAA;AAAAA,MACAC,gBAAAA;AAAAA,MACAC;AAAAA,QACEC,aAAAA,EAAc;AAClB,IAAA,MAAM;AAAA,MAAEC,MAAAA;AAAAA,MAAQC,OAAAA;AAAAA,MAASC,QAAAA;AAAAA,MAAUC;AAAAA,QAAYC,iBAAAA,EAAkB;AACjE,IAAA,MAAMC,mBAAmBC,cAAAA,EAAe;AACxC,IAAA,MAAM;AAAA,MAAEC,UAAAA;AAAAA,MAAYC;AAAAA,QAAkBC,aAAAA,CAAmB;AAAA,MAEvDC,QAAAA,EAAUC,QAAAA,CAAS,MAAMnC,KAAAA,CAAMC,KAAKH,IAAK,CAAA;AAAA,MACzCsC,YAAAA,EAAcpC,MAAMC,IAAAA,CAAKmC,YAAAA;AAAAA,MACzBC,YAAAA,EAAcrC,MAAMC,IAAAA,CAAKoC,YAAAA;AAAAA,MACzBC,SAAAA,EAAWtC,MAAMC,IAAAA,CAAKqC;AAAAA,KACvB,CAAA;AACD,IAAA,MAAMC,WAAWC,GAAAA,EAAI;AACrB,IAAA,MAAMC,SAAAA,GAAYN,SAAS,MAAA;AAhG/B,MAAA,IAAA,EAAA;AAgGqCnC,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMK,IAAAA,KAANL,YAAcK,IAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,IAAAA,CAAMqC,KAAAA;AAAAA,IAAAA,CAAK,CAAA;AAC1D,IAAA,MAAMC,SAAAA,GAAYR,SAAS,MAAA;AAjG/B,MAAA,IAAA,EAAA;AAiGqCnC,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,CAAK0C,cAAX3C,IAAAA,GAAAA,EAAAA,GAAwB,MAAA;AAAA,IAAA,CAAM,CAAA;AAC/D,IAAA,MAAM4C,aAAAA,GAAgBT,SAAS,MAAA;AAlGnC,MAAA,IAAA,EAAA;AAmGMU,MAAAA,OAAAA,WAAAA,CAAAA,CAAY7C,EAAAA,GAAAA,KAAAA,CAAMC,KAAKY,QAAAA,KAAXb,IAAAA,GAAAA,EAAAA,GAAuBa,qCAAU6B,KAAAA,EAAO9B,QAAAA,CAAS8B,KAAAA,EAAOf,OAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,OAAAA,CAASe,KAAK,CAAA;AAAA,IAAA,CACpF,CAAA;AACA,IAAA,MAAMI,kBAAAA,GAAqBX,QAAAA,CAAS,MAClCY,KAAAA,CAAM,EAAC,EAAGjC,aAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,aAAAA,CAAe4B,KAAAA,EAAO1C,KAAAA,CAAMC,IAAAA,CAAKa,aAAa,CAC1D,CAAA;AACA,IAAA,MAAMkC,mBAAAA,GAAsBb,QAAAA,CAAS,MAAMpB,YAAAA,CAAa2B,KAAAA,CAAMO,GAAAA,CAAKC,CAAAA,GAAAA,KAAQA,GAAAA,CAAIC,KAAAA,CAAM,GAAG,CAAA,CAAE,CAAC,CAAC,CAAC,CAAA;AAC7F,IAAA,MAAMC,iBAAAA,GAAoBjB,QAAAA,CAAS,MAAMnB,UAAAA,CAAW0B,KAAAA,CAAMO,GAAAA,CAAKC,CAAAA,GAAAA,KAAQA,GAAAA,CAAIC,KAAAA,CAAM,GAAG,CAAA,CAAE,CAAC,CAAC,CAAC,CAAA;AACzF,IAAA,MAAME,aAAAA,GAAgBlB,SACpB,MAAA;AA3GN,MAAA,IAAA,EAAA;AA2GYnC,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMC,KAAKqD,WAAAA,KAAXtD,IAAAA,GAAAA,EAAAA,GAA0BJ,uBAAAA,CAAwB2D,QAAAA,CAASZ,UAAUD,KAAK,CAAA;AAAA,IAAA,CAClF,CAAA;AACA,IAAA,MAAMc,aAAAA,GAAgBrB,SACpB;AA9GN,MAAA,IAAA,EAAA;AA8GYU,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,WAAAA,CAAY7C,MAAMC,IAAAA,CAAKuD,aAAAA,EAAe5C,SAAS8B,KAAK,CAAA,KAApDG,YAAyD,EAAC;AAAA,IAAA,CAClE,CAAA;AACA,IAAA,MAAMY,aAAAA,GAAgBtB,SAAS,MAAA;AAhHnC,MAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAiHMuB,MAAAA,OAAAA,aAAAA,CAAc;AAAA,QACZ,GAAGC,QAAAA,CAASH,aAAAA,CAAcd,KAAAA,EAAO/C,kBAAkB,CAAA;AAAA,QACnDuB,WAAUsC,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,aAAAA,CAAcd,KAAAA,KAAdc,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAqBtC,QAAAA,KAArBsC,YAAiCtC,QAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,QAAAA,CAAUwB,KAAAA;AAAAA,QACrDvB,aAAYqC,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,aAAAA,CAAcd,KAAAA,KAAdc,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAqBrC,UAAAA,KAArBqC,YAAmCrC,UAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,UAAAA,CAAYuB,KAAAA;AAAAA,QAC3D5C,IAAAA,EAAM8C,aAAAA,CAAcF,KAAAA,GAAQnC,MAAAA,GAAYP,MAAMC,IAAAA,CAAKH,IAAAA;AAAAA,QACnD8D,SAAShB,aAAAA,CAAcF,KAAAA,GACnBnC,MAAAA,GAAAA,CACCiD,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,aAAAA,CAAcd,UAAdc,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAqBI,OAAAA,KAArBJ,IAAAA,GAAAA,EAAAA,GAAgC,CAAA,KAAA,EAAA,CAAQ9C,aAAQgC,KAAAA,KAARhC,IAAAA,GAAAA,EAAAA,GAAiB,EAAE,CAAA,CAAA,EAAIV,KAAAA,CAAMC,KAAKiD,GAAG,CAAA,CAAA;AAAA,QAClFW,KAAAA,EAAOjB,aAAAA,CAAcF,KAAAA,GACjBnC,MAAAA,GACAsC,aAAY7C,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,CAAK4D,KAAAA,KAAX7D,IAAAA,GAAAA,EAAAA,GAAoBwD,aAAAA,CAAcd,KAAAA,CAAMmB,KAAAA,EAAOjD,QAAAA,CAAS8B,OAAOjC,MAAM;AAAA,OACtF,CAAA;AAAA,IAAA,CACH,CAAA;AAEA,IAAA,MAAMqD,gBAAiBC,CAAAA,QAAAA,KAAkB;AA/H7C,MAAA,IAAA,EAAA,EAAA,EAAA;AAgIM,MAAA,MAAM;AAAA,QAAEC;AAAAA,OAAM,GAAA,CAAIhE,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,CAAKgE,OAAAA,KAAXjE,YAAsB,EAAC;AACzC,MAAA,IAAIgE,KAAAA,EAAO;AACT,QAAA,MAAME,cAAAA,GAAAA,CAAiBrB,iBAAYmB,KAAAA,EAAOD,QAAAA,EAAUnD,SAAS8B,KAAK,CAAA,KAA3CG,YAAgD,EAAA;AACvE,QAAA,IAAIqB,cAAAA,CAAeC,SAAS,CAAA,EAAG;AAC7BD,UAAAA,cAAAA,CAAeE,QAASlC,CAAAA,QAAAA,KAAa;AApI/C,YAAA,IAAAmC,GAAAA;AAqIY,YAAA,MAAMC,IAAAA,GAAO9C,MAAAA,GACT,CAAC,GAAA,CAAIE,GAAAA,GAAAA,qCAAUgB,KAAAA,KAAVhB,IAAAA,GAAAA,GAAAA,GAAmB,IAAM,GAAG6C,eAAerC,QAAQ,CAAE,CAAA,CACvDsC,MAAAA,CAAQvE,CAAAA,IAAAA,KAASA,IAAAA,KAASM,MAAS,CAAA,CACnCkE,IAAAA,CAAK,CAAC,CAAA,GACTF,cAAAA,CAAerC,QAAQ,CAAA;AAC3B,YAAA,MAAMQ,KAAAA,GAAQgC,GAAAA,CAAI9D,QAAAA,CAAS8B,KAAAA,EAAO4B,IAAK,CAAA;AACvC,YAAA,IAAI,OAAO5B,UAAU,WAAA,EAAa;AAChCiC,cAAAA,GAAAA,CAAI/D,QAAAA,CAAS8B,KAAAA,EAAO4B,IAAAA,EAAO/D,MAAS,CAAA;AAAA,YACtC;AAAA,UACF,CAAC,CAAA;AAAA,QACH;AAAA,MACF;AAAA,IACF,CAAA;AAEA,IAAA,MAAMqE,UAAAA,GAAazC,SAAS,MAAM;AAnJtC,MAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAoJM,MAAA,MAAM0C,SAAAA,GAAYhC,aAAY7C,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,CAAK2E,eAAX5E,IAAAA,GAAAA,EAAAA,GAAyB,EAAC,EAAGY,QAAAA,CAAS8B,KAAK,CAAA;AACzE,MAAA,MAAMoC,UAAAA,GAAa;AAAA,QACjB,GAAGD,SAAAA;AAAAA,QACHE,EAAAA,EAAAA,CAAIF,EAAAA,GAAAA,SAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,SAAAA,CAAWE,EAAAA,KAAXF,IAAAA,GAAAA,EAAAA,GAAiB,CAAA,KAAA,EAAA,CAAQnE,EAAAA,GAAAA,OAAAA,CAAQgC,KAAAA,KAARhC,IAAAA,GAAAA,EAAAA,GAAiB,EAAE,CAAA,CAAA,EAAIV,KAAAA,CAAMC,IAAAA,CAAKiD,GAAG,CAAA,CAAA;AAAA,QAClE8B,QAAAA,EAAAA,CAAAA,CACGnC,kBACC7C,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,CAAK+E,aAAXhF,IAAAA,GAAAA,EAAAA,GAAuB6E,SAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,SAAAA,CAAWG,UAClCpE,QAAAA,CAAS8B,KAAAA,EACTf,mCAASe,KACX,CAAA,KAJCG,YAII5B,eAAAA,CAAgByB,KAAAA,CAAMa,SAASvD,KAAAA,CAAMC,IAAAA,CAAKiD,GAAa,CAAA,IACxD,IAAA,GACA3C,MAAAA;AAAAA,QACN0E,WAAAA,EAAAA,CAAajF,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,CAAKgF,WAAAA,KAAXjF,YAA0B6E,SAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,SAAAA,CAAWI,WAAAA;AAAAA,QAClDC,OAAAA,EAAAA,CAASlF,iBAAMC,IAAAA,CAAKiF,OAAAA,KAAXlF,YAAsB6E,SAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,SAAAA,CAAWK,OAAAA,KAAjClF,YAA4C6E,SAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,SAAAA,CAAWM,QAAAA;AAAAA,QAChEC,aAAYpF,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,CAAKmF,eAAXpF,IAAAA,GAAAA,EAAAA,GAAyB6E,SAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,SAAAA,CAAWO,eAApCpF,IAAAA,GAAAA,EAAAA,GAAkD;AAAA,OAChE;AAEA,MAAA,OAAO0D,aAAAA,CAAc;AAAA,QACnB2B,SAAAA,EAAWrF,MAAMC,IAAAA,CAAKoF,SAAAA;AAAAA,QACtBC,YAAAA,EAActF,MAAMC,IAAAA,CAAKqF,YAAAA;AAAAA,QACzBzE,UAAU+B,aAAAA,CAAcF,KAAAA;AAAAA,QACxB5B,eAAegC,kBAAAA,CAAmBJ,KAAAA;AAAAA,QAClC6C,OAAAA,EAASvF,MAAMC,IAAAA,CAAKsF,OAAAA;AAAAA,QACpBC,MAAAA,EAAQxF,MAAMC,IAAAA,CAAKuF,MAAAA;AAAAA,QACnBC,QAAAA,EAAUA,CAAC/C,KAAAA,EAAAA,GAAegD,IAAAA,KAAS;AA5K3C,UAAA,IAAArB,GAAAA,EAAAsB,GAAAA;AA6KU7B,UAAAA,aAAAA,CAAcpB,KAAK,CAAA;AACnBV,UAAAA,aAAAA,CAAcU,KAAK,CAAA;AACnB1C,UAAAA,CAAAA,GAAAA,GAAAA,CAAAA,GAAAA,GAAAA,KAAAA,CAAMC,IAAAA,EAAKwF,QAAAA,KAAXzF,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAAA,IAAAA,CAAAA,GAAAA,EAAsB0C,KAAAA,EAAO,GAAGgD,IAAAA,EAAMjF,MAAAA,CAAAA;AAAAA,QACxC,CAAA;AAAA,QACA,GAAImF,aAAAA,CAAcjD,SAAAA,CAAUD,KAAK,CAAA,GAC7BiB,QAAAA,CAASmB,UAAAA,EAAYc,aAAAA,CAAcjD,SAAAA,CAAUD,KAAK,CAAE,CAAA,GACpDoC;AAAAA,OACL,CAAA;AAAA,IACH,CAAC,CAAA;AAED,IAAA,MAAMe,UAAAA,GAAa1D,SAAS,MAAM;AAvLtC,MAAA,IAAA,EAAA;AAwLM,MAAA,MAAM0C,SAAAA,GAAYhC,aAAY7C,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,CAAK2E,eAAX5E,IAAAA,GAAAA,EAAAA,GAAyB,EAAC,EAAGY,QAAAA,CAAS8B,KAAK,CAAA;AACzE,MAAA,MAAMoD,QAAAA,GAAW;AAAA,QACf,GAAGjB,SAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,SAAAA,CAAWkB;AAAAA,OAChB;AAEA,MAAA,IAAI/F,KAAAA,CAAMC,KAAK+F,KAAAA,IAAS,CAACC,kBAAkBjG,KAAAA,CAAMC,IAAAA,CAAK+F,KAAK,CAAA,EAAG;AAC5DF,QAAAA,QAAAA,CAASE,KAAAA,GAAQE,QAAAA,CAASlG,KAAAA,CAAMC,IAAAA,CAAK+F,KAAK,CAAA,GAAIhG,KAAAA,CAAMC,IAAAA,CAAK+F,KAAAA,GAAQ,IAAA,GAAOhG,KAAAA,CAAMC,IAAAA,CAAK+F,KAAAA;AAAAA,MACrF,CAAA,MAAA,IAAWvD,uCAAWC,KAAAA,EAAO;AAC3BoD,QAAAA,QAAAA,CAASK,QAAAA,GAAW,MAAA;AACpBL,QAAAA,QAAAA,CAASE,KAAAA,GAAQ,MAAA;AAAA,MACnB;AAEA,MAAA,IAAI3C,aAAAA,CAAcX,KAAAA,EAAO0D,OAAAA,CAAQC,cAAAA,CAAeP,UAAU,OAAO,CAAA;AAEjE,MAAA,OAAOpC,cAAcoC,QAAQ,CAAA;AAAA,IAC/B,CAAC,CAAA;AAED,IAAA,MAAMQ,cAAAA,GAAiBnE,SAAS,MAAM;AACpC,MAAA,MAAMoE,aAAavG,KAAAA,CAAMC,IAAAA,CAAK+F,SAASC,iBAAAA,CAAkBjG,KAAAA,CAAMC,KAAK+F,KAAK,CAAA;AACzE,MAAA,MAAMQ,SAAAA,GAAY;AAAA,QAChB,CAAC,CAAA,EAAG7F,SAAS,CAAA,MAAA,CAAQ,GAAG,CAAC,CAAC4F,UAAAA;AAAAA,QAC1B,CAAC,CAAA,EAAG5F,SAAS,CAAA,OAAA,EAAUX,KAAAA,CAAMC,IAAAA,CAAK+F,KAAK,CAAA,CAAE,GAAGO,UAAAA,IAAc,CAAClD,aAAAA,CAAcX;AAAAA,OAC3E;AACA,MAAA,IAAI1C,KAAAA,CAAMC,KAAKuG,SAAAA,EAAW;AACxBA,QAAAA,SAAAA,CAAUxG,KAAAA,CAAMC,IAAAA,CAAKuG,SAAS,CAAA,GAAI,IAAA;AAAA,MACpC;AACA,MAAA,OAAOA,SAAAA;AAAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAMC,WAAAA,GAActE,SAAS,MAAM;AArNvC,MAAA,IAAA,EAAA;AAsNM,MAAA,MAAMuE,OAAO,EAAC;AACd7G,MAAAA,UAAAA,CAAWuE,QAAStE,CAAAA,IAAAA,KAAS;AAC3B,QAAA,MAAM6G,OAAOC,OAAAA,CAAQpD,aAAAA,CAAcd,KAAAA,CAAM5C,IAAI,GAAG+B,gBAAgB,CAAA;AAChE,QAAA,IAAI8E,IAAAA,EAAM;AACRD,UAAAA,IAAAA,CAAK5G,IAAI,CAAA,GAAI,MAAA+G,WAAAA,CAAAC,WAAAA,EAAA;AAAA,YAAA,OAAA,EAA0BH,IAAAA;AAAAA,YAAI,OAAA,EAAS;AAAA,cAAE/F,UAAUA,QAAAA,CAAS8B;AAAAA;AAAM,aAAC,IAAA,CAAA;AAAA,QAClF;AAAA,MACF,CAAC,CAAA;AACD,MAAA,IAAI1C,KAAAA,CAAMC,KAAK8G,KAAAA,EAAO;AACpB,QAAA,MAAMC,cAAcJ,OAAAA,CAAAA,CAAQ5G,EAAAA,GAAAA,KAAAA,CAAMC,KAAKgH,KAAAA,KAAXjH,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAkBkH,OAAOrF,gBAAgB,CAAA;AACrE6E,QAAAA,IAAAA,CAAK,OAAO,IAAI,MAAAG,WAAAA,CAAAM,UAAA,IAAA,EAAA,CAAAN,YAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAEA,GAAGlG,SAAS,CAAA,WAAA,CAAA;AAAA,UAAa,OAAA,EAAS6C,cAAcd,KAAAA,CAAM0E;AAAAA,SAAW,EAAA,CAAAP,WAAAA,CAAAQ,SAAAA,EAAA;AAAA,UAAA,OAAA,EACzDrH,MAAMC,IAAAA,CAAK8G,KAAAA;AAAAA,UAAK,SAAA,EAAW/G,MAAMC,IAAAA,CAAKqH;AAAAA,WAAO,IAAA,CAAA,CAAA,CAAA,EAAAT,YAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAErD,GAAGlG,SAAS,CAAA,iBAAA;AAAA,SAAmB,EAAA,CAAAkG,WAAAA,CAAAC,WAAAA,EAAA;AAAA,UAAA,OAAA,EACrBE,WAAAA;AAAAA,UAAW,OAAA,EAAS;AAAA,YAAEpG,UAAUA,QAAAA,CAAS8B;AAAAA;AAAM,SAAC,EAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MAI5E;AACA,MAAA,OAAOgE,IAAAA;AAAAA,IACT,CAAC,CAAA;AAEDa,IAAAA,KAAAA,CACExF,YACCgC,CAAAA,QAAAA,KAAa;AA/OpB,MAAA,IAAA,EAAA,EAAA,EAAA;AAgPQ,MAAA,MAAM;AAAA,QAAEE;AAAAA,UAAYjE,KAAAA,CAAMC,IAAAA;AAC1B,MAAA,IAAIgE,OAAAA,EAAS;AACX,QAAA,MAAM;AAAA,UAAEuD,MAAAA;AAAAA,UAAQxC;AAAAA,SAAS,GAAIf,OAAAA;AAC7B,QAAA,IAAIuD,MAAAA,EAAQ;AACV,UAAA,MAAMxG,WAAAA,GAAAA,CAAa6B,iBAAY2E,MAAAA,EAAQzD,QAAAA,EAAUnD,SAAS8B,KAAK,CAAA,KAA5CG,YAAiD,EAAA;AACpE,UAAA,IAAI,CAAC4E,OAAAA,CAAQzG,WAAAA,EAAYoC,iBAAAA,CAAkBV,KAAK,CAAA,EAAG;AACjDrB,YAAAA,gBAAAA,CACErB,KAAAA,CAAMC,IAAAA,CAAKiD,GAAAA,EACX1B,MAAAA,GAASR,WAAAA,CAAWiC,GAAAA,CAAKC,CAAAA,GAAAA,KAAQ,CAAA,EAAGzB,OAAO,CAAA,CAAA,EAAIyB,GAAG,CAAA,CAAE,IAAIlC,WAC1D,CAAA;AAAA,UACF;AAAA,QACF;AAEA,QAAA,IAAIgE,QAAAA,EAAU;AACZ,UAAA,MAAMjE,aAAAA,GAAAA,CAAe8B,iBAAYmC,QAAAA,EAAUjB,QAAAA,EAAUnD,SAAS8B,KAAK,CAAA,KAA9CG,YAAmD,EAAA;AACxE,UAAA,IAAI,CAAC4E,OAAAA,CAAQ1G,aAAAA,EAAciC,mBAAAA,CAAoBN,KAAK,CAAA,EAAG;AACrDpB,YAAAA,kBAAAA,CACEtB,KAAAA,CAAMC,IAAAA,CAAKiD,GAAAA,EACX1B,MAAAA,GAAST,aAAAA,CAAakC,GAAAA,CAAKC,CAAAA,GAAAA,KAAQ,CAAA,EAAGzB,OAAO,CAAA,CAAA,EAAIyB,GAAG,CAAA,CAAE,IAAInC,aAC5D,CAAA;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAA,EACA;AAAA,MACE2G,SAAAA,EAAW;AAAA,KAEf,CAAA;AAEAH,IAAAA,KAAAA,CAAMhF,UAAU,MAAM;AA7Q1B,MAAA,IAAA,EAAA,EAAA,EAAA;AA8QMvC,MAAAA,CAAAA,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMC,IAAAA,EAAK0H,MAAAA,KAAX3H,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,EAAAA,EAAoBuC,QAAAA,CAASG,KAAAA,CAAAA;AAAAA,IAC/B,CAAC,CAAA;AAED6E,IAAAA,KAAAA,CAAM3E,eAAe,MAAM;AACzB,MAAA,IAAIA,cAAcF,KAAAA,EAAO;AACvBjC,QAAAA,MAAAA,CAAOmH,aAAAA,CAAc5H,KAAAA,CAAMC,IAAAA,CAAKH,IAAI,CAAA;AAAA,MACtC;AAAA,IACF,CAAC,CAAA;AAEDyH,IAAAA,KAAAA,CACE;AAxRN,MAAA,IAAA,EAAA;AAwRY9D,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,aAAAA,CAAcf,UAAde,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAqBI,KAAAA;AAAAA,IAAAA,CAAAA,EAC3B,MAAM;AACJpD,MAAAA,MAAAA,CAAOmH,aAAAA,CAAc5H,KAAAA,CAAMC,IAAAA,CAAKH,IAAI,CAAA;AAAA,IACtC,CACF,CAAA;AAEA,IAAA,OAAO,MAAM;AA9RjB,MAAA,IAAA,EAAA,EAAA,EAAA;AA+RM,MAAA,MAAM+H,cAAAA,GAAiBjB,OAAAA,CAAQ5G,KAAAA,CAAMC,IAAAA,CAAK4H,gBAAgBhG,gBAAgB,CAAA;AAC1E,MAAA,MAAMmF,cAAcJ,OAAAA,CAAAA,CAAQ5G,EAAAA,GAAAA,KAAAA,CAAMC,KAAKgH,KAAAA,KAAXjH,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAkBC,MAAM4B,gBAAgB,CAAA;AACpE,MAAA,MAAMiG,kBAAiBC,EAAAA,GAAAA,iBAAAA,CAAkBpF,SAAAA,CAAUD,KAAK,CAAA,KAAjCqF,IAAAA,GAAAA,EAAAA,GAAsCA,kBAAkB,MAAM,CAAA;AACrF,MAAA,IAAIC,UAAAA,GAAUnB,WAAAA,CAAAiB,cAAAA,EAAAG,UAAAA,CAAA;AAAA,QAAA,KAAA,EAEL1F,QAAAA;AAAAA,QAAQ,SACNR,UAAAA,CAAWW;AAAAA,OAAK,EACnBkC,WAAWlC,KAAAA,EAAK;AAAA,QAAA,SACbmD,UAAAA,CAAWnD,KAAAA;AAAAA,QAAK,SAChB4D,cAAAA,CAAe5D,KAAAA;AAAAA,QAAK,cAAA,EACbtB;AAAAA,OAAY,GAAA,IAAA,CAAA;AAG9B,MAAA,IAAIyG,cAAAA,EAAgB;AAClBG,QAAAA,UAAAA,GAAUnB,YAAAC,WAAAA,EAAA;AAAA,UAAA,OAAA,EAECe,cAAAA;AAAAA,UAAc,OAAA,EACd;AAAA,YACLnF,OAAOX,UAAAA,CAAWW,KAAAA;AAAAA,YAClB+C,QAAAA,EAAUb,WAAWlC,KAAAA,CAAM+C,QAAAA;AAAAA,YAC3BuC,UAAAA;AAAAA,YACApH,UAAUA,QAAAA,CAAS8B,KAAAA;AAAAA,YACnBjC,MAAAA;AAAAA,YACAiB,UAAUA,QAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,QAAAA,CAAUgB,KAAAA;AAAAA,YACpB5C,IAAAA,EAAME,MAAMC,IAAAA,CAAKH;AAAAA;AACnB,WAAC,IAAA,CAAA;AAAA,MAGP;AAEA,MAAA,IAAIkH,WAAAA,EAAa;AACfgB,QAAAA,UAAAA,GAAUnB,YAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAAA;AAAA,SAAA,EAAA,CAELmB,UAAAA,EAAUnB,WAAAA,CAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAAA;AAAA,SAAA,EAAA,CAAAA,WAAAA,CAAAC,WAAAA,EAAA;AAAA,UAAA,OAAA,EAGAE,WAAAA;AAAAA,UAAW,OAAA,EACX;AAAA,YACLpG,UAAUA,QAAAA,CAAS8B,KAAAA;AAAAA,YACnBhB,UAAUA,QAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,QAAAA,CAAUgB,KAAAA;AAAAA,YACpB5C,IAAAA,EAAME,MAAMC,IAAAA,CAAKH;AAAAA;AACnB,SAAC,EAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MAKX;AAEA,MAAA,MAAMoI,WAAAA,GAAWrB,WAAAA,CAAAsB,IAAAA,CAAAC,IAAAA,EACA3E,cAAcf,KAAAA,EAAK;AAAA,QAAAtC,OAAAA,EAAAA,MAAA,CAC/B4H,UAAU,CAAA;AAAA,QAAA,GADgCvB,WAAAA,CAAY/D;AAAAA,OAAK,CAAA;AAKhE,MAAA,MAAM2F,MAAAA,GAASzB,OAAAA,CAAQ5G,KAAAA,CAAMC,IAAAA,CAAKoI,QAAQxG,gBAAgB,CAAA;AAC1D,MAAA,OAAAgF,YAAAyB,cAAAA,EAAA;AAAA,QAAA,UAAA,EAC4BtI,MAAMC,IAAAA,CAAKsI,QAAAA;AAAAA,QAAQ,QAAQ9F,SAAAA,CAAUC;AAAAA,OAAK,EAAA;AAAA,QAAAtC,OAAAA,EAAAA,MAAA,CACjEiI,MAAAA,GAAMxB,YAAAC,WAAAA,EAAA;AAAA,UAAA,OAAA,EAEIuB,MAAAA;AAAAA,UAAM,OAAA,EACN;AAAA,YACLzH,UAAUA,QAAAA,CAAS8B,KAAAA;AAAAA,YACnBsF,UAAAA,EAAYE;AAAAA;AACd,SAAC,EAAA,IAAA,CAAA,GAGHA,WACD;AAAA,OAAA,CAAA;AAAA,IAGP,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
|
|
@@ -12,7 +12,7 @@ const FormGroup = defineAsyncComponent(() => import('./FormGroup.mjs'));
|
|
|
12
12
|
const FormSet = defineAsyncComponent(() => import('./FormSet.mjs'));
|
|
13
13
|
const FormList = defineAsyncComponent(() => import('./FormList.mjs'));
|
|
14
14
|
const FormItem = defineAsyncComponent(() => import('./FormItem.mjs'));
|
|
15
|
-
const LIST_PROP_KEYS = ["min", "max", "isValidateList", "emptyListMessage", "creatorRecord", "creatorButtonProps", "alwaysShowItemLabel", "actionGuard", "copyIconProps", "deleteIconProps", "onAfterAdd", "onAfterRemove"];
|
|
15
|
+
const LIST_PROP_KEYS = ["min", "max", "rowTitle", "rowTitleStyle", "alwaysShowRowTitle", "isValidateList", "emptyListMessage", "creatorRecord", "creatorButtonProps", "alwaysShowItemLabel", "actionGuard", "copyIconProps", "deleteIconProps", "onAfterAdd", "onAfterRemove"];
|
|
16
16
|
const LIST_SLOT_NAMES = ["action", "creator", "item"];
|
|
17
17
|
var FormItems = /* @__PURE__ */ defineComponent({
|
|
18
18
|
name: "FormItems",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormItems.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormItems.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 16:52:17\n * @LastEditors: shen\n * @LastEditTime: 2025-09-22 13:41:34\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { computed, defineAsyncComponent, defineComponent } from 'vue'\nimport { Space } from 'ant-design-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { ProFieldType } from '../fieldType'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { omitUndefined, pickKeys, RenderVNode } from '@pro-design-vue/utils'\n\nimport getSlot from '../utils/getSlot'\n// import FormGroup from './FormGroup'\n// import FormSet from './FormSet'\n// import FormList from './FormList'\n// import FormItem from './FormItem'\n\nconst FormGroup = defineAsyncComponent(() => import('./FormGroup'))\nconst FormSet = defineAsyncComponent(() => import('./FormSet'))\nconst FormList = defineAsyncComponent(() => import('./FormList'))\nconst FormItem = defineAsyncComponent(() => import('./FormItem'))\n\nconst LIST_PROP_KEYS = [\n 'min',\n 'max',\n 'isValidateList',\n 'emptyListMessage',\n 'creatorRecord',\n 'creatorButtonProps',\n 'alwaysShowItemLabel',\n 'actionGuard',\n 'copyIconProps',\n 'deleteIconProps',\n 'onAfterAdd',\n 'onAfterRemove',\n]\n\nconst LIST_SLOT_NAMES = ['action', 'creator', 'item']\n\nexport default defineComponent({\n name: 'FormItems',\n inheritAttrs: false,\n props: {\n list: {\n type: Array as PropType<ProFormItemType[]>,\n default: () => [],\n },\n type: {\n type: String as PropType<'space' | ''>,\n default: '',\n },\n grid: {\n type: Boolean,\n default: undefined,\n },\n spaceProps: {\n type: Object as PropType<ProFormItemType['spaceProps']>,\n default: () => {\n return { size: [32, 0], wrap: true }\n },\n },\n },\n setup(props) {\n const { grid, allHiddenKeys } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const mergeGrid = computed(() => props.grid ?? grid?.value)\n const getItemsDom = computed(() => {\n return props.list\n .filter((item) => !allHiddenKeys.value.includes(item.key as string))\n .map((item) => {\n if (item.fieldType === ProFieldType.GROUP) {\n return (\n <FormGroup\n key={item.key}\n items={item.children}\n title={item.title}\n tooltip={item.tooltip}\n colProps={item.colProps}\n rowProps={item.rowProps}\n spaceProps={item.spaceProps}\n grid={item.grid}\n item={item}\n formItemProps={item.formItemProps}\n />\n )\n }\n if (item.fieldType === ProFieldType.FORM_SET) {\n return (\n <FormSet\n key={item.key}\n name={item.name}\n items={item.children}\n title={item.title}\n tooltip={item.tooltip}\n colProps={item.colProps}\n rowProps={item.rowProps}\n spaceProps={item.spaceProps}\n formItemProps={item.formItemProps}\n initialValue={item.initialValue}\n convertValue={item.convertValue}\n transform={item.transform}\n />\n )\n }\n if (item.fieldType === ProFieldType.FORM_LIST) {\n const fieldProps = omitUndefined(pickKeys(item.fieldProps ?? {}, LIST_PROP_KEYS))\n const slotsGetter = {}\n LIST_SLOT_NAMES.forEach((name) => {\n const slot = getSlot(item.fieldProps?.[`${name}Render`], formSlotsContext)\n if (slot) {\n slotsGetter[name] = (args) => <RenderVNode vnode={slot} props={args} />\n }\n })\n return (\n <FormList\n key={item.key}\n name={item.name}\n originName={item.originName}\n items={item.children}\n title={item.title}\n tooltip={item.tooltip}\n rules={item.rules}\n colProps={item.colProps}\n rowProps={item.rowProps}\n formItemProps={item.formItemProps}\n initialValue={item.initialValue}\n convertValue={item.convertValue}\n transform={item.transform}\n {...fieldProps}\n v-slots={{ ...slotsGetter }}\n />\n )\n }\n return <FormItem key={item.key} item={item} grid={mergeGrid.value} />\n })\n })\n\n return () => {\n if (props.type === 'space' && !mergeGrid?.value) {\n return (\n <Space {...props.spaceProps} align=\"start\">\n {getItemsDom.value}\n </Space>\n )\n }\n return getItemsDom.value\n }\n },\n})\n"],"names":["FormGroup","defineAsyncComponent","FormSet","FormList","FormItem","LIST_PROP_KEYS","LIST_SLOT_NAMES","name","inheritAttrs","props","list","type","Array","default","String","grid","Boolean","undefined","spaceProps","Object","size","wrap","setup","allHiddenKeys","useInjectForm","formSlotsContext","useInjectSlots","mergeGrid","computed","value","getItemsDom","filter","item","includes","key","map","fieldType","ProFieldType","GROUP","_createVNode","children","title","tooltip","colProps","rowProps","formItemProps","FORM_SET","initialValue","convertValue","transform","FORM_LIST","fieldProps","omitUndefined","pickKeys","slotsGetter","forEach","_a","slot","getSlot","args","RenderVNode","_mergeProps","originName","rules","Space"],"mappings":";;;;;;;;;;AAuBA,MAAMA,SAAAA,GAAYC,oBAAAA,CAAqB,MAAM,OAAO,iBAAa,CAAC,CAAA;AAClE,MAAMC,OAAAA,GAAUD,oBAAAA,CAAqB,MAAM,OAAO,eAAW,CAAC,CAAA;AAC9D,MAAME,QAAAA,GAAWF,oBAAAA,CAAqB,MAAM,OAAO,gBAAY,CAAC,CAAA;AAChE,MAAMG,QAAAA,GAAWH,oBAAAA,CAAqB,MAAM,OAAO,gBAAY,CAAC,CAAA;AAEhE,MAAMI,cAAAA,GAAiB,CACrB,KAAA,EACA,KAAA,EACA,gBAAA,EACA,kBAAA,EACA,eAAA,EACA,oBAAA,EACA,qBAAA,EACA,aAAA,EACA,eAAA,EACA,iBAAA,EACA,cACA,eAAe,CAAA;AAGjB,MAAMC,eAAAA,GAAkB,CAAC,QAAA,EAAU,SAAA,EAAW,MAAM,CAAA;AAEpD,gDAA+B;AAAA,EAC7BC,IAAAA,EAAM,WAAA;AAAA,EACNC,YAAAA,EAAc,KAAA;AAAA,EACdC,KAAAA,EAAO;AAAA,IACLC,IAAAA,EAAM;AAAA,MACJC,IAAAA,EAAMC,KAAAA;AAAAA,MACNC,OAAAA,EAASA,MAAM;AAAA,KACjB;AAAA,IACAF,IAAAA,EAAM;AAAA,MACJA,IAAAA,EAAMG,MAAAA;AAAAA,MACND,OAAAA,EAAS;AAAA,KACX;AAAA,IACAE,IAAAA,EAAM;AAAA,MACJJ,IAAAA,EAAMK,OAAAA;AAAAA,MACNH,OAAAA,EAASI;AAAAA,KACX;AAAA,IACAC,UAAAA,EAAY;AAAA,MACVP,IAAAA,EAAMQ,MAAAA;AAAAA,MACNN,SAASA,MAAM;AACb,QAAA,OAAO;AAAA,UAAEO,IAAAA,EAAM,CAAC,EAAA,EAAI,CAAC,CAAA;AAAA,UAAGC,IAAAA,EAAM;AAAA,SAAK;AAAA,MACrC;AAAA;AACF,GACF;AAAA,EACAC,MAAMb,KAAAA,EAAO;AACX,IAAA,MAAM;AAAA,MAAEM,IAAAA;AAAAA,MAAMQ;AAAAA,QAAkBC,aAAAA,EAAc;AAC9C,IAAA,MAAMC,mBAAmBC,cAAAA,EAAe;AACxC,IAAA,MAAMC,SAAAA,GAAYC,SAAS,MAAA;AAvE/B,MAAA,IAAA,EAAA;AAuEqCnB,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMM,IAAAA,KAANN,YAAcM,IAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,IAAAA,CAAMc,KAAAA;AAAAA,IAAAA,CAAK,CAAA;AAC1D,IAAA,MAAMC,WAAAA,GAAcF,SAAS,MAAM;AACjC,MAAA,OAAOnB,KAAAA,CAAMC,IAAAA,CACVqB,MAAAA,CAAQC,CAAAA,IAAAA,KAAS,CAACT,aAAAA,CAAcM,KAAAA,CAAMI,QAAAA,CAASD,IAAAA,CAAKE,GAAa,CAAC,CAAA,CAClEC,IAAKH,CAAAA,IAAAA,KAAS;AA3EvB,QAAA,IAAA,EAAA;AA4EU,QAAA,IAAIA,IAAAA,CAAKI,SAAAA,KAAcC,YAAAA,CAAaC,KAAAA,EAAO;AACzC,UAAA,OAAAC,YAAAvC,SAAAA,EAAA;AAAA,YAAA,OAESgC,IAAAA,CAAKE,GAAAA;AAAAA,YAAG,SACNF,IAAAA,CAAKQ,QAAAA;AAAAA,YAAQ,SACbR,IAAAA,CAAKS,KAAAA;AAAAA,YAAK,WACRT,IAAAA,CAAKU,OAAAA;AAAAA,YAAO,YACXV,IAAAA,CAAKW,QAAAA;AAAAA,YAAQ,YACbX,IAAAA,CAAKY,QAAAA;AAAAA,YAAQ,cACXZ,IAAAA,CAAKd,UAAAA;AAAAA,YAAU,QACrBc,IAAAA,CAAKjB,IAAAA;AAAAA,YAAI,MAAA,EACTiB,IAAAA;AAAAA,YAAI,iBACKA,IAAAA,CAAKa;AAAAA,aAAa,IAAA,CAAA;AAAA,QAGvC;AACA,QAAA,IAAIb,IAAAA,CAAKI,SAAAA,KAAcC,YAAAA,CAAaS,QAAAA,EAAU;AAC5C,UAAA,OAAAP,YAAArC,OAAAA,EAAA;AAAA,YAAA,OAES8B,IAAAA,CAAKE,GAAAA;AAAAA,YAAG,QACPF,IAAAA,CAAKzB,IAAAA;AAAAA,YAAI,SACRyB,IAAAA,CAAKQ,QAAAA;AAAAA,YAAQ,SACbR,IAAAA,CAAKS,KAAAA;AAAAA,YAAK,WACRT,IAAAA,CAAKU,OAAAA;AAAAA,YAAO,YACXV,IAAAA,CAAKW,QAAAA;AAAAA,YAAQ,YACbX,IAAAA,CAAKY,QAAAA;AAAAA,YAAQ,cACXZ,IAAAA,CAAKd,UAAAA;AAAAA,YAAU,iBACZc,IAAAA,CAAKa,aAAAA;AAAAA,YAAa,gBACnBb,IAAAA,CAAKe,YAAAA;AAAAA,YAAY,gBACjBf,IAAAA,CAAKgB,YAAAA;AAAAA,YAAY,aACpBhB,IAAAA,CAAKiB;AAAAA,aAAS,IAAA,CAAA;AAAA,QAG/B;AACA,QAAA,IAAIjB,IAAAA,CAAKI,SAAAA,KAAcC,YAAAA,CAAaa,SAAAA,EAAW;AAC7C,UAAA,MAAMC,UAAAA,GAAaC,cAAcC,QAAAA,CAAAA,CAASrB,EAAAA,GAAAA,IAAAA,CAAKmB,eAALnB,IAAAA,GAAAA,EAAAA,GAAmB,EAAC,EAAG3B,cAAc,CAAC,CAAA;AAChF,UAAA,MAAMiD,cAAc,EAAC;AACrBhD,UAAAA,eAAAA,CAAgBiD,QAAShD,CAAAA,IAAAA,KAAS;AAjH9C,YAAA,IAAAiD,GAAAA;AAkHc,YAAA,MAAMC,IAAAA,GAAOC,OAAAA,CAAAA,CAAQ1B,GAAAA,GAAAA,IAAAA,CAAKmB,UAAAA,KAALnB,gBAAAA,GAAAA,CAAkB,CAAA,EAAGzB,IAAI,CAAA,MAAA,CAAA,CAAA,EAAWkB,gBAAgB,CAAA;AACzE,YAAA,IAAIgC,IAAAA,EAAM;AACRH,cAAAA,WAAAA,CAAY/C,IAAI,CAAA,GAAKoD,CAAAA,IAAAA,KAAIpB,WAAAA,CAAAqB,WAAAA,EAAA;AAAA,gBAAA,OAAA,EAAyBH,IAAAA;AAAAA,gBAAI,OAAA,EAASE;AAAAA,iBAAI,IAAA,CAAA;AAAA,YACrE;AAAA,UACF,CAAC,CAAA;AACD,UAAA,OAAApB,WAAAA,CAAApC,UAAA0D,UAAAA,CAAA;AAAA,YAAA,OAES7B,IAAAA,CAAKE,GAAAA;AAAAA,YAAG,QACPF,IAAAA,CAAKzB,IAAAA;AAAAA,YAAI,cACHyB,IAAAA,CAAK8B,UAAAA;AAAAA,YAAU,SACpB9B,IAAAA,CAAKQ,QAAAA;AAAAA,YAAQ,SACbR,IAAAA,CAAKS,KAAAA;AAAAA,YAAK,WACRT,IAAAA,CAAKU,OAAAA;AAAAA,YAAO,SACdV,IAAAA,CAAK+B,KAAAA;AAAAA,YAAK,YACP/B,IAAAA,CAAKW,QAAAA;AAAAA,YAAQ,YACbX,IAAAA,CAAKY,QAAAA;AAAAA,YAAQ,iBACRZ,IAAAA,CAAKa,aAAAA;AAAAA,YAAa,gBACnBb,IAAAA,CAAKe,YAAAA;AAAAA,YAAY,gBACjBf,IAAAA,CAAKgB,YAAAA;AAAAA,YAAY,aACpBhB,IAAAA,CAAKiB;AAAAA,WAAS,EACrBE,UAAU,CAAA,EACL;AAAA,YAAE,GAAGG;AAAAA,WAAa,CAAA;AAAA,QAGjC;AACA,QAAA,OAAAf,YAAAnC,QAAAA,EAAA;AAAA,UAAA,OAAsB4B,IAAAA,CAAKE,GAAAA;AAAAA,UAAG,MAAA,EAAQF,IAAAA;AAAAA,UAAI,QAAQL,SAAAA,CAAUE;AAAAA,WAAK,IAAA,CAAA;AAAA,MACnE,CAAC,CAAA;AAAA,IACL,CAAC,CAAA;AAED,IAAA,OAAO,MAAM;AACX,MAAA,IAAIpB,KAAAA,CAAME,IAAAA,KAAS,OAAA,IAAW,EAACgB,uCAAWE,KAAAA,CAAAA,EAAO;AAC/C,QAAA,OAAAU,WAAAA,CAAAyB,KAAAA,EAAAH,UAAAA,CACapD,KAAAA,CAAMS,UAAAA,EAAU;AAAA,UAAA,OAAA,EAAA;AAAA,SAAA,CAAA,EAAA;AAAA,UAAAL,OAAAA,EAAAA,MAAA,CACxBiB,WAAAA,CAAYD,KAAK;AAAA,SAAA,CAAA;AAAA,MAGxB;AACA,MAAA,OAAOC,WAAAA,CAAYD,KAAAA;AAAAA,IACrB,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"FormItems.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormItems.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 16:52:17\n * @LastEditors: shen\n * @LastEditTime: 2025-10-22 11:06:52\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { computed, defineAsyncComponent, defineComponent } from 'vue'\nimport { Space } from 'ant-design-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { ProFieldType } from '../fieldType'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { omitUndefined, pickKeys, RenderVNode } from '@pro-design-vue/utils'\n\nimport getSlot from '../utils/getSlot'\n// import FormGroup from './FormGroup'\n// import FormSet from './FormSet'\n// import FormList from './FormList'\n// import FormItem from './FormItem'\n\nconst FormGroup = defineAsyncComponent(() => import('./FormGroup'))\nconst FormSet = defineAsyncComponent(() => import('./FormSet'))\nconst FormList = defineAsyncComponent(() => import('./FormList'))\nconst FormItem = defineAsyncComponent(() => import('./FormItem'))\n\nconst LIST_PROP_KEYS = [\n 'min',\n 'max',\n 'rowTitle',\n 'rowTitleStyle',\n 'alwaysShowRowTitle',\n 'isValidateList',\n 'emptyListMessage',\n 'creatorRecord',\n 'creatorButtonProps',\n 'alwaysShowItemLabel',\n 'actionGuard',\n 'copyIconProps',\n 'deleteIconProps',\n 'onAfterAdd',\n 'onAfterRemove',\n]\n\nconst LIST_SLOT_NAMES = ['action', 'creator', 'item']\n\nexport default defineComponent({\n name: 'FormItems',\n inheritAttrs: false,\n props: {\n list: {\n type: Array as PropType<ProFormItemType[]>,\n default: () => [],\n },\n type: {\n type: String as PropType<'space' | ''>,\n default: '',\n },\n grid: {\n type: Boolean,\n default: undefined,\n },\n spaceProps: {\n type: Object as PropType<ProFormItemType['spaceProps']>,\n default: () => {\n return { size: [32, 0], wrap: true }\n },\n },\n },\n setup(props) {\n const { grid, allHiddenKeys } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const mergeGrid = computed(() => props.grid ?? grid?.value)\n const getItemsDom = computed(() => {\n return props.list\n .filter((item) => !allHiddenKeys.value.includes(item.key as string))\n .map((item) => {\n if (item.fieldType === ProFieldType.GROUP) {\n return (\n <FormGroup\n key={item.key}\n items={item.children}\n title={item.title}\n tooltip={item.tooltip}\n colProps={item.colProps}\n rowProps={item.rowProps}\n spaceProps={item.spaceProps}\n grid={item.grid}\n item={item}\n formItemProps={item.formItemProps}\n />\n )\n }\n if (item.fieldType === ProFieldType.FORM_SET) {\n return (\n <FormSet\n key={item.key}\n name={item.name}\n items={item.children}\n title={item.title}\n tooltip={item.tooltip}\n colProps={item.colProps}\n rowProps={item.rowProps}\n spaceProps={item.spaceProps}\n formItemProps={item.formItemProps}\n initialValue={item.initialValue}\n convertValue={item.convertValue}\n transform={item.transform}\n />\n )\n }\n if (item.fieldType === ProFieldType.FORM_LIST) {\n const fieldProps = omitUndefined(pickKeys(item.fieldProps ?? {}, LIST_PROP_KEYS))\n const slotsGetter = {}\n LIST_SLOT_NAMES.forEach((name) => {\n const slot = getSlot(item.fieldProps?.[`${name}Render`], formSlotsContext)\n if (slot) {\n slotsGetter[name] = (args) => <RenderVNode vnode={slot} props={args} />\n }\n })\n return (\n <FormList\n key={item.key}\n name={item.name}\n originName={item.originName}\n items={item.children}\n title={item.title}\n tooltip={item.tooltip}\n rules={item.rules}\n colProps={item.colProps}\n rowProps={item.rowProps}\n formItemProps={item.formItemProps}\n initialValue={item.initialValue}\n convertValue={item.convertValue}\n transform={item.transform}\n {...fieldProps}\n v-slots={{ ...slotsGetter }}\n />\n )\n }\n return <FormItem key={item.key} item={item} grid={mergeGrid.value} />\n })\n })\n\n return () => {\n if (props.type === 'space' && !mergeGrid?.value) {\n return (\n <Space {...props.spaceProps} align=\"start\">\n {getItemsDom.value}\n </Space>\n )\n }\n return getItemsDom.value\n }\n },\n})\n"],"names":["FormGroup","defineAsyncComponent","FormSet","FormList","FormItem","LIST_PROP_KEYS","LIST_SLOT_NAMES","name","inheritAttrs","props","list","type","Array","default","String","grid","Boolean","undefined","spaceProps","Object","size","wrap","setup","allHiddenKeys","useInjectForm","formSlotsContext","useInjectSlots","mergeGrid","computed","value","getItemsDom","filter","item","includes","key","map","fieldType","ProFieldType","GROUP","_createVNode","children","title","tooltip","colProps","rowProps","formItemProps","FORM_SET","initialValue","convertValue","transform","FORM_LIST","fieldProps","omitUndefined","pickKeys","slotsGetter","forEach","_a","slot","getSlot","args","RenderVNode","_mergeProps","originName","rules","Space"],"mappings":"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"}
|
|
@@ -74,6 +74,18 @@ var FormList = /* @__PURE__ */ defineComponent({
|
|
|
74
74
|
type: Boolean,
|
|
75
75
|
default: void 0
|
|
76
76
|
},
|
|
77
|
+
alwaysShowRowTitle: {
|
|
78
|
+
type: Boolean,
|
|
79
|
+
default: true
|
|
80
|
+
},
|
|
81
|
+
rowTitle: {
|
|
82
|
+
type: String,
|
|
83
|
+
default: void 0
|
|
84
|
+
},
|
|
85
|
+
rowTitleStyle: {
|
|
86
|
+
type: Object,
|
|
87
|
+
default: void 0
|
|
88
|
+
},
|
|
77
89
|
creatorRecord: {
|
|
78
90
|
type: [Object, Function],
|
|
79
91
|
default: void 0
|
|
@@ -198,6 +210,8 @@ var FormList = /* @__PURE__ */ defineComponent({
|
|
|
198
210
|
"name": props.name,
|
|
199
211
|
"originName": props.originName,
|
|
200
212
|
"title": props.title,
|
|
213
|
+
"rowTitle": props.rowTitle,
|
|
214
|
+
"rowTitleStyle": props.rowTitleStyle,
|
|
201
215
|
"tooltip": props.tooltip,
|
|
202
216
|
"rowProps": props.rowProps,
|
|
203
217
|
"initialValue": props.initialValue,
|
|
@@ -208,6 +222,7 @@ var FormList = /* @__PURE__ */ defineComponent({
|
|
|
208
222
|
"max": props.max,
|
|
209
223
|
"readonly": mergeReadonly.value,
|
|
210
224
|
"alwaysShowItemLabel": props.alwaysShowItemLabel,
|
|
225
|
+
"alwaysShowRowTitle": props.alwaysShowRowTitle,
|
|
211
226
|
"creatorRecord": props.creatorRecord,
|
|
212
227
|
"creatorButtonProps": props.creatorButtonProps,
|
|
213
228
|
"copyIconProps": props.copyIconProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormList.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormList.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 10:36:49\n * @LastEditors: shen\n * @LastEditTime: 2025-10-07 13:17:26\n * @Description:\n */\nimport type { PropType, VNode } from 'vue'\nimport type { Entity, ProFormItemType } from '../type'\nimport type { ButtonProps } from 'ant-design-vue'\n\nimport { computed, defineComponent } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectFormList } from '../context/FormListContext'\nimport FormColWrapper from './FormColWrapper'\nimport FormTitle from './FormTitle'\nimport FormListContainer from './FormListContainer'\nimport { omitUndefined, pickKeys, runFunction } from '@pro-design-vue/utils'\n\nexport interface ListOperations {\n add: (defaultValue: Entity, index?: number) => Promise<boolean>\n remove: (index: number | number[]) => Promise<boolean>\n}\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'required',\n]\n\nexport default defineComponent({\n name: 'FormList',\n inheritAttrs: false,\n props: {\n name: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n originName: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n initialValue: {\n type: Object as PropType<ProFormItemType['initialValue']>,\n default: undefined,\n },\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: [String, Boolean],\n default: undefined,\n },\n colProps: {\n type: Object as PropType<ProFormItemType['colProps']>,\n default: undefined,\n },\n rowProps: {\n type: Object as PropType<ProFormItemType['rowProps']>,\n default: undefined,\n },\n formItemProps: {\n type: [Object, Function] as PropType<ProFormItemType['formItemProps']>,\n default: undefined,\n },\n convertValue: {\n type: Function as PropType<ProFormItemType['convertValue']>,\n default: undefined,\n },\n transform: {\n type: Function as PropType<ProFormItemType['transform']>,\n default: undefined,\n },\n readonly: {\n type: Boolean,\n default: undefined,\n },\n items: {\n type: [Array, Function] as PropType<ProFormItemType['children']>,\n default: undefined,\n },\n min: {\n type: Number,\n default: undefined,\n },\n max: {\n type: Number,\n default: undefined,\n },\n alwaysShowItemLabel: {\n type: Boolean,\n default: undefined,\n },\n creatorRecord: {\n type: [Object, Function] as PropType<Entity | (() => Entity)>,\n default: undefined,\n },\n creatorButtonProps: {\n type: [Object, Boolean] as PropType<\n | false\n | (ButtonProps & {\n creatorButtonText?: string\n position?: 'top' | 'bottom'\n })\n >,\n default: undefined,\n },\n rules: {\n type: [Object, Array, Function] as PropType<ProFormItemType['rules']>,\n default: undefined,\n },\n copyIconProps: {\n type: [Object, String, Boolean] as PropType<\n false | { icon?: string | VNode; tooltipText?: string }\n >,\n default: undefined,\n },\n deleteIconProps: {\n type: [Object, String, Boolean] as PropType<\n false | { icon?: string | VNode; tooltipText?: string }\n >,\n default: undefined,\n },\n actionGuard: {\n type: Object as PropType<{\n beforeAddRow?: (\n creatorRecord: Entity,\n index?: number,\n count?: number,\n ) => boolean | Promise<boolean>\n beforeRemoveRow?: (index: number | number[], count: number) => boolean | Promise<boolean>\n }>,\n default: undefined,\n },\n isValidateList: {\n type: Boolean,\n default: undefined,\n },\n emptyListMessage: {\n type: String,\n default: '列表不能为空',\n },\n onAfterAdd: {\n type: Function as PropType<\n (creatorRecord: Entity, insertIndex: number, count: number) => void\n >,\n default: undefined,\n },\n onAfterRemove: {\n type: Function as PropType<(deleteIndex: number | number[], count: number) => void>,\n default: undefined,\n },\n },\n emits: ['after-add', 'after-remvoe'],\n setup(props, { slots }) {\n const { formatItems, formData, prefixCls, readonly } = useInjectForm()\n const listContext = useInjectFormList()\n const mergeReadonly = computed(() =>\n runFunction(props.readonly ?? readonly?.value, formData.value),\n )\n\n const name = computed(() => {\n if (listContext.listName?.value === undefined) {\n return [props.originName!].flat(1)\n }\n return [listContext.listName.value, props.originName].flat(1)\n })\n\n const formItemProps = computed(() => runFunction(props.formItemProps, formData.value) ?? {})\n const restItemProps = computed(() =>\n omitUndefined({\n rules: mergeReadonly.value\n ? []\n : runFunction(props.rules ?? formItemProps.value.rules, formData.value),\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n }),\n )\n\n const items = computed(\n () => formatItems?.(runFunction(props.items ?? [], formData.value)) ?? [],\n )\n\n const slotsGetter = computed(() => {\n const temp = {}\n if (props.title) {\n temp['label'] = () => <FormTitle title={props.title} tooltip={props.tooltip} />\n }\n return temp\n })\n\n const onAfterAdd = (...args: [Entity, number, number]) => {\n props.onAfterAdd?.(...args)\n }\n\n const onAfterRemove = (...args: [number | number[], number]) => {\n props.onAfterRemove?.(...args)\n }\n\n return () => {\n if (!props.name?.length || !items.value.length) return null\n const rules = props.isValidateList\n ? [\n {\n validator: (rule, value) => {\n if (!value || value.length === 0) {\n return Promise.reject(new Error(props.emptyListMessage))\n }\n return Promise.resolve()\n },\n required: true,\n },\n ]\n : runFunction(props.rules, formData.value)\n return (\n <FormColWrapper colProps={props.colProps}>\n <div class={`${prefixCls}-list`}>\n <Form.Item\n required={\n mergeReadonly.value\n ? false\n : restItemProps.value?.rules?.some((rule) => rule.required)\n }\n name={rules?.length ? (name.value as any) : undefined}\n rules={!mergeReadonly.value ? rules : undefined}\n {...restItemProps.value}\n v-slots={slotsGetter.value}\n >\n <FormListContainer\n name={props.name}\n originName={props.originName}\n title={props.title}\n tooltip={props.tooltip}\n rowProps={props.rowProps}\n initialValue={props.initialValue}\n convertValue={props.convertValue}\n transform={props.transform}\n items={items.value}\n min={props.min}\n max={props.max}\n readonly={mergeReadonly.value}\n alwaysShowItemLabel={props.alwaysShowItemLabel}\n creatorRecord={props.creatorRecord}\n creatorButtonProps={props.creatorButtonProps}\n copyIconProps={props.copyIconProps}\n deleteIconProps={props.deleteIconProps}\n actionGuard={props.actionGuard}\n onAfterAdd={onAfterAdd}\n onAfterRemove={onAfterRemove}\n v-slots={{\n ...slots,\n }}\n />\n </Form.Item>\n </div>\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["ALL_ANTD_PROP_KEYS","name","inheritAttrs","props","type","String","Array","default","undefined","originName","initialValue","Object","title","Function","tooltip","Boolean","colProps","rowProps","formItemProps","convertValue","transform","readonly","items","min","Number","max","alwaysShowItemLabel","creatorRecord","creatorButtonProps","rules","copyIconProps","deleteIconProps","actionGuard","isValidateList","emptyListMessage","onAfterAdd","onAfterRemove","emits","setup","slots","formatItems","formData","prefixCls","useInjectForm","listContext","useInjectFormList","mergeReadonly","computed","runFunction","value","listName","flat","restItemProps","omitUndefined","pickKeys","slotsGetter","temp","_createVNode","FormTitle","args","length","validator","rule","Promise","reject","Error","resolve","required","FormColWrapper","_a","Form","Item","_mergeProps","some","FormListContainer"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FormList.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormList.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 10:36:49\n * @LastEditors: shen\n * @LastEditTime: 2025-10-22 11:06:31\n * @Description:\n */\nimport type { CSSProperties, PropType, VNode } from 'vue'\nimport type { Entity, ProFormItemType } from '../type'\nimport type { ButtonProps } from 'ant-design-vue'\n\nimport { computed, defineComponent } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectFormList } from '../context/FormListContext'\nimport FormColWrapper from './FormColWrapper'\nimport FormTitle from './FormTitle'\nimport FormListContainer from './FormListContainer'\nimport { omitUndefined, pickKeys, runFunction } from '@pro-design-vue/utils'\n\nexport interface ListOperations {\n add: (defaultValue: Entity, index?: number) => Promise<boolean>\n remove: (index: number | number[]) => Promise<boolean>\n}\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'required',\n]\n\nexport default defineComponent({\n name: 'FormList',\n inheritAttrs: false,\n props: {\n name: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n originName: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n initialValue: {\n type: Object as PropType<ProFormItemType['initialValue']>,\n default: undefined,\n },\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: [String, Boolean],\n default: undefined,\n },\n colProps: {\n type: Object as PropType<ProFormItemType['colProps']>,\n default: undefined,\n },\n rowProps: {\n type: Object as PropType<ProFormItemType['rowProps']>,\n default: undefined,\n },\n formItemProps: {\n type: [Object, Function] as PropType<ProFormItemType['formItemProps']>,\n default: undefined,\n },\n convertValue: {\n type: Function as PropType<ProFormItemType['convertValue']>,\n default: undefined,\n },\n transform: {\n type: Function as PropType<ProFormItemType['transform']>,\n default: undefined,\n },\n readonly: {\n type: Boolean,\n default: undefined,\n },\n items: {\n type: [Array, Function] as PropType<ProFormItemType['children']>,\n default: undefined,\n },\n min: {\n type: Number,\n default: undefined,\n },\n max: {\n type: Number,\n default: undefined,\n },\n alwaysShowItemLabel: {\n type: Boolean,\n default: undefined,\n },\n alwaysShowRowTitle: {\n type: Boolean,\n default: true,\n },\n rowTitle: {\n type: String,\n default: undefined,\n },\n rowTitleStyle: {\n type: Object as PropType<CSSProperties>,\n default: undefined,\n },\n creatorRecord: {\n type: [Object, Function] as PropType<Entity | (() => Entity)>,\n default: undefined,\n },\n creatorButtonProps: {\n type: [Object, Boolean] as PropType<\n | false\n | (ButtonProps & {\n creatorButtonText?: string\n position?: 'top' | 'bottom'\n })\n >,\n default: undefined,\n },\n rules: {\n type: [Object, Array, Function] as PropType<ProFormItemType['rules']>,\n default: undefined,\n },\n copyIconProps: {\n type: [Object, String, Boolean] as PropType<\n false | { icon?: string | VNode; tooltipText?: string }\n >,\n default: undefined,\n },\n deleteIconProps: {\n type: [Object, String, Boolean] as PropType<\n false | { icon?: string | VNode; tooltipText?: string }\n >,\n default: undefined,\n },\n actionGuard: {\n type: Object as PropType<{\n beforeAddRow?: (\n creatorRecord: Entity,\n index?: number,\n count?: number,\n ) => boolean | Promise<boolean>\n beforeRemoveRow?: (index: number | number[], count: number) => boolean | Promise<boolean>\n }>,\n default: undefined,\n },\n isValidateList: {\n type: Boolean,\n default: undefined,\n },\n emptyListMessage: {\n type: String,\n default: '列表不能为空',\n },\n onAfterAdd: {\n type: Function as PropType<\n (creatorRecord: Entity, insertIndex: number, count: number) => void\n >,\n default: undefined,\n },\n onAfterRemove: {\n type: Function as PropType<(deleteIndex: number | number[], count: number) => void>,\n default: undefined,\n },\n },\n emits: ['after-add', 'after-remvoe'],\n setup(props, { slots }) {\n const { formatItems, formData, prefixCls, readonly } = useInjectForm()\n const listContext = useInjectFormList()\n const mergeReadonly = computed(() =>\n runFunction(props.readonly ?? readonly?.value, formData.value),\n )\n\n const name = computed(() => {\n if (listContext.listName?.value === undefined) {\n return [props.originName!].flat(1)\n }\n return [listContext.listName.value, props.originName].flat(1)\n })\n\n const formItemProps = computed(() => runFunction(props.formItemProps, formData.value) ?? {})\n const restItemProps = computed(() =>\n omitUndefined({\n rules: mergeReadonly.value\n ? []\n : runFunction(props.rules ?? formItemProps.value.rules, formData.value),\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n }),\n )\n\n const items = computed(\n () => formatItems?.(runFunction(props.items ?? [], formData.value)) ?? [],\n )\n\n const slotsGetter = computed(() => {\n const temp = {}\n if (props.title) {\n temp['label'] = () => <FormTitle title={props.title} tooltip={props.tooltip} />\n }\n return temp\n })\n\n const onAfterAdd = (...args: [Entity, number, number]) => {\n props.onAfterAdd?.(...args)\n }\n\n const onAfterRemove = (...args: [number | number[], number]) => {\n props.onAfterRemove?.(...args)\n }\n\n return () => {\n if (!props.name?.length || !items.value.length) return null\n const rules = props.isValidateList\n ? [\n {\n validator: (rule, value) => {\n if (!value || value.length === 0) {\n return Promise.reject(new Error(props.emptyListMessage))\n }\n return Promise.resolve()\n },\n required: true,\n },\n ]\n : runFunction(props.rules, formData.value)\n return (\n <FormColWrapper colProps={props.colProps}>\n <div class={`${prefixCls}-list`}>\n <Form.Item\n required={\n mergeReadonly.value\n ? false\n : restItemProps.value?.rules?.some((rule) => rule.required)\n }\n name={rules?.length ? (name.value as any) : undefined}\n rules={!mergeReadonly.value ? rules : undefined}\n {...restItemProps.value}\n v-slots={slotsGetter.value}\n >\n <FormListContainer\n name={props.name}\n originName={props.originName}\n title={props.title}\n rowTitle={props.rowTitle}\n rowTitleStyle={props.rowTitleStyle}\n tooltip={props.tooltip}\n rowProps={props.rowProps}\n initialValue={props.initialValue}\n convertValue={props.convertValue}\n transform={props.transform}\n items={items.value}\n min={props.min}\n max={props.max}\n readonly={mergeReadonly.value}\n alwaysShowItemLabel={props.alwaysShowItemLabel}\n alwaysShowRowTitle={props.alwaysShowRowTitle}\n creatorRecord={props.creatorRecord}\n creatorButtonProps={props.creatorButtonProps}\n copyIconProps={props.copyIconProps}\n deleteIconProps={props.deleteIconProps}\n actionGuard={props.actionGuard}\n onAfterAdd={onAfterAdd}\n onAfterRemove={onAfterRemove}\n v-slots={{\n ...slots,\n }}\n />\n </Form.Item>\n </div>\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["ALL_ANTD_PROP_KEYS","name","inheritAttrs","props","type","String","Array","default","undefined","originName","initialValue","Object","title","Function","tooltip","Boolean","colProps","rowProps","formItemProps","convertValue","transform","readonly","items","min","Number","max","alwaysShowItemLabel","alwaysShowRowTitle","rowTitle","rowTitleStyle","creatorRecord","creatorButtonProps","rules","copyIconProps","deleteIconProps","actionGuard","isValidateList","emptyListMessage","onAfterAdd","onAfterRemove","emits","setup","slots","formatItems","formData","prefixCls","useInjectForm","listContext","useInjectFormList","mergeReadonly","computed","runFunction","value","listName","flat","restItemProps","omitUndefined","pickKeys","slotsGetter","temp","_createVNode","FormTitle","args","length","validator","rule","Promise","reject","Error","resolve","required","FormColWrapper","_a","Form","Item","_mergeProps","some","FormListContainer"],"mappings":"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"}
|
|
@@ -68,6 +68,18 @@ var FormListContainer = /* @__PURE__ */ defineComponent({
|
|
|
68
68
|
type: Boolean,
|
|
69
69
|
default: void 0
|
|
70
70
|
},
|
|
71
|
+
alwaysShowRowTitle: {
|
|
72
|
+
type: Boolean,
|
|
73
|
+
default: void 0
|
|
74
|
+
},
|
|
75
|
+
rowTitle: {
|
|
76
|
+
type: String,
|
|
77
|
+
default: void 0
|
|
78
|
+
},
|
|
79
|
+
rowTitleStyle: {
|
|
80
|
+
type: Object,
|
|
81
|
+
default: void 0
|
|
82
|
+
},
|
|
71
83
|
creatorRecord: {
|
|
72
84
|
type: [Object, Function],
|
|
73
85
|
default: void 0
|
|
@@ -262,7 +274,11 @@ var FormListContainer = /* @__PURE__ */ defineComponent({
|
|
|
262
274
|
"max": props.max,
|
|
263
275
|
"count": count.value,
|
|
264
276
|
"record": record,
|
|
277
|
+
"title": props.title,
|
|
278
|
+
"rowTitle": props.rowTitle,
|
|
279
|
+
"rowTitleStyle": props.rowTitleStyle,
|
|
265
280
|
"alwaysShowItemLabel": props.alwaysShowItemLabel,
|
|
281
|
+
"alwaysShowRowTitle": props.alwaysShowRowTitle,
|
|
266
282
|
"copyIconProps": props.copyIconProps,
|
|
267
283
|
"deleteIconProps": props.deleteIconProps,
|
|
268
284
|
"action": action,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormListContainer.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormListContainer.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 10:36:49\n * @LastEditors: shen\n * @LastEditTime: 2025-10-07 13:17:41\n * @Description:\n */\nimport type { ButtonProps } from 'ant-design-vue'\nimport type { PropType, VNode } from 'vue'\nimport type { Entity, ProFormItemType } from '../type'\n\nimport { computed, defineComponent, ref, shallowRef, watch } from 'vue'\nimport { Form, Button } from 'ant-design-vue'\nimport { PlusOutlined } from '@ant-design/icons-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { RenderVNode, cloneDeep, isEqual, omit, runFunction } from '@pro-design-vue/utils'\n\nimport FormListItem from './FormListItem'\n\nexport interface ListOperations {\n add: (defaultValue: Entity, index?: number) => Promise<boolean>\n remove: (index: number | number[]) => Promise<boolean>\n}\nexport default defineComponent({\n name: 'FormListContainer',\n inheritAttrs: false,\n props: {\n name: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n originName: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n initialValue: {\n type: Object as PropType<ProFormItemType['initialValue']>,\n default: undefined,\n },\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: [String, Boolean],\n default: undefined,\n },\n readonly: {\n type: Boolean,\n default: undefined,\n },\n rowProps: {\n type: Object as PropType<ProFormItemType['rowProps']>,\n default: undefined,\n },\n convertValue: {\n type: Function as PropType<ProFormItemType['convertValue']>,\n default: undefined,\n },\n transform: {\n type: Function as PropType<ProFormItemType['transform']>,\n default: undefined,\n },\n items: {\n type: [Array, Function] as PropType<ProFormItemType['children']>,\n default: undefined,\n },\n min: {\n type: Number,\n default: undefined,\n },\n max: {\n type: Number,\n default: undefined,\n },\n alwaysShowItemLabel: {\n type: Boolean,\n default: undefined,\n },\n creatorRecord: {\n type: [Object, Function] as PropType<Entity | (() => Entity)>,\n default: undefined,\n },\n creatorButtonProps: {\n type: [Object, Boolean] as PropType<\n | false\n | (ButtonProps & {\n creatorButtonText?: string\n position?: 'top' | 'bottom'\n })\n >,\n default: undefined,\n },\n copyIconProps: {\n type: [Object, String, Boolean] as PropType<\n false | { icon?: string | VNode; tooltipText?: string }\n >,\n default: undefined,\n },\n deleteIconProps: {\n type: [Object, String, Boolean] as PropType<\n false | { icon?: string | VNode; tooltipText?: string }\n >,\n default: undefined,\n },\n actionGuard: {\n type: Object as PropType<{\n beforeAddRow?: (\n creatorRecord: Entity,\n index?: number,\n count?: number,\n ) => boolean | Promise<boolean>\n beforeRemoveRow?: (index: number | number[], count: number) => boolean | Promise<boolean>\n }>,\n default: undefined,\n },\n onAfterAdd: {\n type: Function as PropType<\n (creatorRecord: Entity, insertIndex: number, count: number) => void\n >,\n default: undefined,\n },\n onAfterRemove: {\n type: Function as PropType<(deleteIndex: number | number[], count: number) => void>,\n default: undefined,\n },\n },\n emits: ['after-add', 'after-remvoe'],\n setup(props, { slots }) {\n const loading = ref(false)\n const listValues = ref<Entity[]>([])\n const { prefixCls } = useInjectForm()\n const keyRef = shallowRef<{ keys: number[]; id: number }>({\n keys: [],\n id: 0,\n })\n const { fieldValue, onValueChange } = useFieldValue<any>({\n namePath: computed(() => props.name!),\n initialValue: props.initialValue,\n convertValue: props.convertValue,\n transform: props.transform,\n })\n const formItemContext = Form.useInjectFormItemContext()\n const count = computed(() => fieldValue.value?.length ?? 0)\n\n const action: ListOperations = {\n add: async (defaultValue: Entity, index?: number) => {\n if (props.actionGuard?.beforeAddRow) {\n const success = await props.actionGuard?.beforeAddRow(defaultValue, index, count.value)\n if (!success) {\n return false\n }\n }\n const newValue: Entity[] = cloneDeep(fieldValue.value ?? [])\n if (index !== undefined && index >= 0 && index <= newValue.length) {\n keyRef.value.keys = [\n ...keyRef.value.keys.slice(0, index),\n keyRef.value.id,\n ...keyRef.value.keys.slice(index),\n ]\n onValueChange(\n cloneDeep([...newValue.slice(0, index), defaultValue, ...newValue.slice(index)]),\n )\n formItemContext.onFieldChange()\n } else {\n keyRef.value.keys = [...keyRef.value.keys, keyRef.value.id]\n onValueChange(cloneDeep([...newValue, defaultValue]))\n formItemContext.onFieldChange()\n }\n keyRef.value.id += 1\n Promise.resolve().then(() => {\n props.onAfterAdd?.(defaultValue, index!, count.value)\n })\n return true\n },\n remove: async (index: number | number[]) => {\n if (props.actionGuard?.beforeRemoveRow) {\n const success = await props.actionGuard?.beforeRemoveRow(index, count.value)\n if (!success) {\n return false\n }\n }\n const newValue: Entity[] = cloneDeep(fieldValue.value ?? [])\n const indexSet = new Set(Array.isArray(index) ? index : [index])\n\n if (indexSet.size <= 0) {\n return false\n }\n keyRef.value.keys = keyRef.value.keys.filter((_, keysIndex) => !indexSet.has(keysIndex))\n const value = newValue.filter((_, valueIndex) => !indexSet.has(valueIndex))\n onValueChange(value)\n formItemContext.onFieldChange()\n Promise.resolve().then(() => {\n props.onAfterRemove?.(index, count.value)\n })\n return true\n },\n }\n\n const onAdd = async () => {\n if (props.creatorButtonProps !== false) {\n loading.value = true\n let index = count.value\n if (props.creatorButtonProps?.position === 'top') index = 0\n await action.add(cloneDeep(runFunction(props.creatorRecord) || {}), index)\n loading.value = false\n }\n }\n\n const onRemove = async (index: number) => {\n await action.remove(index)\n }\n\n const onCopy = async (index: number) => {\n await action.add(cloneDeep(fieldValue.value[index]), count.value + 1)\n }\n\n watch(\n fieldValue,\n () => {\n if (!isEqual(listValues.value, fieldValue.value)) {\n listValues.value = cloneDeep(fieldValue.value ?? [])\n }\n },\n {\n immediate: true,\n },\n )\n const creatorButton = computed(() => {\n if (props.readonly || props.creatorButtonProps === false || count.value === props.max)\n return null\n const { position = 'bottom', creatorButtonText = '添加一行数据' } =\n props.creatorButtonProps ?? {}\n const {\n block = true,\n type = 'dashed',\n ...restProps\n } = omit(props.creatorButtonProps ?? {}, ['position', 'creatorButtonText'])\n const defaultDom = (\n <Button\n class={`${prefixCls}-list-creator-button-${position}`}\n type={type}\n block={block}\n icon={<PlusOutlined />}\n {...restProps}\n loading={loading.value}\n onClick={onAdd}\n >\n {creatorButtonText}\n </Button>\n )\n if (slots.creator) {\n return (\n <RenderVNode\n vnode={slots.creator}\n props={{ defaultDom, add: action.add, count: count.value }}\n />\n )\n }\n return defaultDom\n })\n\n return () => {\n if (props.readonly && !listValues.value?.length) {\n listValues.value = [{}]\n }\n return (\n <div\n style=\"width: max-content; max-width: 100%; min-width: 100%; \"\n class={{\n [`${prefixCls}-list-container`]: true,\n [`${prefixCls}-list-empty`]: (fieldValue.value ?? [])?.length == 0,\n }}\n >\n {props.creatorButtonProps !== false &&\n props.creatorButtonProps?.position === 'top' &&\n creatorButton.value}\n {(listValues.value ?? []).map((record, index) => {\n let key = keyRef.value.keys[index]\n if (key === undefined) {\n keyRef.value.keys[index] = keyRef.value.id\n key = keyRef.value.keys[index]\n keyRef.value.id += 1\n }\n return (\n <FormListItem\n key={key}\n fieldKey={key}\n originName={props.originName}\n index={index}\n items={props.items as any}\n rowProps={props.rowProps}\n min={props.min}\n max={props.max}\n count={count.value}\n record={record}\n alwaysShowItemLabel={props.alwaysShowItemLabel}\n copyIconProps={props.copyIconProps}\n deleteIconProps={props.deleteIconProps}\n action={action}\n readonly={props.readonly}\n v-slots={{\n action: slots.action,\n item: slots.item,\n }}\n onRemove={onRemove}\n onCopy={onCopy}\n />\n )\n })}\n {props.creatorButtonProps !== false &&\n (props.creatorButtonProps?.position === 'bottom' ||\n props.creatorButtonProps?.position === undefined) &&\n creatorButton.value}\n </div>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","type","String","Array","default","undefined","originName","initialValue","title","Function","tooltip","Boolean","readonly","rowProps","convertValue","transform","items","min","Number","max","alwaysShowItemLabel","creatorRecord","creatorButtonProps","copyIconProps","deleteIconProps","actionGuard","onAfterAdd","onAfterRemove","emits","setup","slots","loading","ref","listValues","prefixCls","useInjectForm","keyRef","shallowRef","keys","id","fieldValue","onValueChange","useFieldValue","namePath","computed","formItemContext","Form","useInjectFormItemContext","count","value","length","action","add","defaultValue","index","beforeAddRow","success","newValue","cloneDeep","slice","onFieldChange","Promise","resolve","then","_a","remove","beforeRemoveRow","indexSet","Set","isArray","size","filter","_","keysIndex","has","valueIndex","onAdd","position","runFunction","onRemove","onCopy","watch","isEqual","immediate","creatorButton","creatorButtonText","block","restProps","omit","defaultDom","_createVNode","Button","_mergeProps","PlusOutlined","creator","RenderVNode","map","record","key","FormListItem","item"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FormListContainer.mjs","sources":["../../../../../../../../packages/components/form/src/components/FormListContainer.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 10:36:49\n * @LastEditors: shen\n * @LastEditTime: 2025-10-22 11:05:56\n * @Description:\n */\nimport type { ButtonProps } from 'ant-design-vue'\nimport type { CSSProperties, PropType, VNode } from 'vue'\nimport type { Entity, ProFormItemType } from '../type'\n\nimport { computed, defineComponent, ref, shallowRef, watch } from 'vue'\nimport { Form, Button } from 'ant-design-vue'\nimport { PlusOutlined } from '@ant-design/icons-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { RenderVNode, cloneDeep, isEqual, omit, runFunction } from '@pro-design-vue/utils'\n\nimport FormListItem from './FormListItem'\n\nexport interface ListOperations {\n add: (defaultValue: Entity, index?: number) => Promise<boolean>\n remove: (index: number | number[]) => Promise<boolean>\n}\nexport default defineComponent({\n name: 'FormListContainer',\n inheritAttrs: false,\n props: {\n name: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n originName: {\n type: [String, Array] as PropType<ProFormItemType['name']>,\n default: undefined,\n },\n initialValue: {\n type: Object as PropType<ProFormItemType['initialValue']>,\n default: undefined,\n },\n title: {\n type: [String, Object, Function] as PropType<ProFormItemType['title']>,\n default: undefined,\n },\n tooltip: {\n type: [String, Boolean],\n default: undefined,\n },\n readonly: {\n type: Boolean,\n default: undefined,\n },\n rowProps: {\n type: Object as PropType<ProFormItemType['rowProps']>,\n default: undefined,\n },\n convertValue: {\n type: Function as PropType<ProFormItemType['convertValue']>,\n default: undefined,\n },\n transform: {\n type: Function as PropType<ProFormItemType['transform']>,\n default: undefined,\n },\n items: {\n type: [Array, Function] as PropType<ProFormItemType['children']>,\n default: undefined,\n },\n min: {\n type: Number,\n default: undefined,\n },\n max: {\n type: Number,\n default: undefined,\n },\n alwaysShowItemLabel: {\n type: Boolean,\n default: undefined,\n },\n alwaysShowRowTitle: {\n type: Boolean,\n default: undefined,\n },\n rowTitle: {\n type: String,\n default: undefined,\n },\n rowTitleStyle: {\n type: Object as PropType<CSSProperties>,\n default: undefined,\n },\n creatorRecord: {\n type: [Object, Function] as PropType<Entity | (() => Entity)>,\n default: undefined,\n },\n creatorButtonProps: {\n type: [Object, Boolean] as PropType<\n | false\n | (ButtonProps & {\n creatorButtonText?: string\n position?: 'top' | 'bottom'\n })\n >,\n default: undefined,\n },\n copyIconProps: {\n type: [Object, String, Boolean] as PropType<\n false | { icon?: string | VNode; tooltipText?: string }\n >,\n default: undefined,\n },\n deleteIconProps: {\n type: [Object, String, Boolean] as PropType<\n false | { icon?: string | VNode; tooltipText?: string }\n >,\n default: undefined,\n },\n actionGuard: {\n type: Object as PropType<{\n beforeAddRow?: (\n creatorRecord: Entity,\n index?: number,\n count?: number,\n ) => boolean | Promise<boolean>\n beforeRemoveRow?: (index: number | number[], count: number) => boolean | Promise<boolean>\n }>,\n default: undefined,\n },\n onAfterAdd: {\n type: Function as PropType<\n (creatorRecord: Entity, insertIndex: number, count: number) => void\n >,\n default: undefined,\n },\n onAfterRemove: {\n type: Function as PropType<(deleteIndex: number | number[], count: number) => void>,\n default: undefined,\n },\n },\n emits: ['after-add', 'after-remvoe'],\n setup(props, { slots }) {\n const loading = ref(false)\n const listValues = ref<Entity[]>([])\n const { prefixCls } = useInjectForm()\n const keyRef = shallowRef<{ keys: number[]; id: number }>({\n keys: [],\n id: 0,\n })\n const { fieldValue, onValueChange } = useFieldValue<any>({\n namePath: computed(() => props.name!),\n initialValue: props.initialValue,\n convertValue: props.convertValue,\n transform: props.transform,\n })\n const formItemContext = Form.useInjectFormItemContext()\n const count = computed(() => fieldValue.value?.length ?? 0)\n\n const action: ListOperations = {\n add: async (defaultValue: Entity, index?: number) => {\n if (props.actionGuard?.beforeAddRow) {\n const success = await props.actionGuard?.beforeAddRow(defaultValue, index, count.value)\n if (!success) {\n return false\n }\n }\n const newValue: Entity[] = cloneDeep(fieldValue.value ?? [])\n if (index !== undefined && index >= 0 && index <= newValue.length) {\n keyRef.value.keys = [\n ...keyRef.value.keys.slice(0, index),\n keyRef.value.id,\n ...keyRef.value.keys.slice(index),\n ]\n onValueChange(\n cloneDeep([...newValue.slice(0, index), defaultValue, ...newValue.slice(index)]),\n )\n formItemContext.onFieldChange()\n } else {\n keyRef.value.keys = [...keyRef.value.keys, keyRef.value.id]\n onValueChange(cloneDeep([...newValue, defaultValue]))\n formItemContext.onFieldChange()\n }\n keyRef.value.id += 1\n Promise.resolve().then(() => {\n props.onAfterAdd?.(defaultValue, index!, count.value)\n })\n return true\n },\n remove: async (index: number | number[]) => {\n if (props.actionGuard?.beforeRemoveRow) {\n const success = await props.actionGuard?.beforeRemoveRow(index, count.value)\n if (!success) {\n return false\n }\n }\n const newValue: Entity[] = cloneDeep(fieldValue.value ?? [])\n const indexSet = new Set(Array.isArray(index) ? index : [index])\n\n if (indexSet.size <= 0) {\n return false\n }\n keyRef.value.keys = keyRef.value.keys.filter((_, keysIndex) => !indexSet.has(keysIndex))\n const value = newValue.filter((_, valueIndex) => !indexSet.has(valueIndex))\n onValueChange(value)\n formItemContext.onFieldChange()\n Promise.resolve().then(() => {\n props.onAfterRemove?.(index, count.value)\n })\n return true\n },\n }\n\n const onAdd = async () => {\n if (props.creatorButtonProps !== false) {\n loading.value = true\n let index = count.value\n if (props.creatorButtonProps?.position === 'top') index = 0\n await action.add(cloneDeep(runFunction(props.creatorRecord) || {}), index)\n loading.value = false\n }\n }\n\n const onRemove = async (index: number) => {\n await action.remove(index)\n }\n\n const onCopy = async (index: number) => {\n await action.add(cloneDeep(fieldValue.value[index]), count.value + 1)\n }\n\n watch(\n fieldValue,\n () => {\n if (!isEqual(listValues.value, fieldValue.value)) {\n listValues.value = cloneDeep(fieldValue.value ?? [])\n }\n },\n {\n immediate: true,\n },\n )\n const creatorButton = computed(() => {\n if (props.readonly || props.creatorButtonProps === false || count.value === props.max)\n return null\n const { position = 'bottom', creatorButtonText = '添加一行数据' } =\n props.creatorButtonProps ?? {}\n const {\n block = true,\n type = 'dashed',\n ...restProps\n } = omit(props.creatorButtonProps ?? {}, ['position', 'creatorButtonText'])\n const defaultDom = (\n <Button\n class={`${prefixCls}-list-creator-button-${position}`}\n type={type}\n block={block}\n icon={<PlusOutlined />}\n {...restProps}\n loading={loading.value}\n onClick={onAdd}\n >\n {creatorButtonText}\n </Button>\n )\n if (slots.creator) {\n return (\n <RenderVNode\n vnode={slots.creator}\n props={{ defaultDom, add: action.add, count: count.value }}\n />\n )\n }\n return defaultDom\n })\n\n return () => {\n if (props.readonly && !listValues.value?.length) {\n listValues.value = [{}]\n }\n return (\n <div\n style=\"width: max-content; max-width: 100%; min-width: 100%; \"\n class={{\n [`${prefixCls}-list-container`]: true,\n [`${prefixCls}-list-empty`]: (fieldValue.value ?? [])?.length == 0,\n }}\n >\n {props.creatorButtonProps !== false &&\n props.creatorButtonProps?.position === 'top' &&\n creatorButton.value}\n {(listValues.value ?? []).map((record, index) => {\n let key = keyRef.value.keys[index]\n if (key === undefined) {\n keyRef.value.keys[index] = keyRef.value.id\n key = keyRef.value.keys[index]\n keyRef.value.id += 1\n }\n return (\n <FormListItem\n key={key}\n fieldKey={key}\n originName={props.originName}\n index={index}\n items={props.items as any}\n rowProps={props.rowProps}\n min={props.min}\n max={props.max}\n count={count.value}\n record={record}\n title={props.title}\n rowTitle={props.rowTitle}\n rowTitleStyle={props.rowTitleStyle}\n alwaysShowItemLabel={props.alwaysShowItemLabel}\n alwaysShowRowTitle={props.alwaysShowRowTitle}\n copyIconProps={props.copyIconProps}\n deleteIconProps={props.deleteIconProps}\n action={action}\n readonly={props.readonly}\n v-slots={{\n action: slots.action,\n item: slots.item,\n }}\n onRemove={onRemove}\n onCopy={onCopy}\n />\n )\n })}\n {props.creatorButtonProps !== false &&\n (props.creatorButtonProps?.position === 'bottom' ||\n props.creatorButtonProps?.position === undefined) &&\n creatorButton.value}\n </div>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","type","String","Array","default","undefined","originName","initialValue","title","Function","tooltip","Boolean","readonly","rowProps","convertValue","transform","items","min","Number","max","alwaysShowItemLabel","alwaysShowRowTitle","rowTitle","rowTitleStyle","creatorRecord","creatorButtonProps","copyIconProps","deleteIconProps","actionGuard","onAfterAdd","onAfterRemove","emits","setup","slots","loading","ref","listValues","prefixCls","useInjectForm","keyRef","shallowRef","keys","id","fieldValue","onValueChange","useFieldValue","namePath","computed","formItemContext","Form","useInjectFormItemContext","count","value","length","action","add","defaultValue","index","beforeAddRow","success","newValue","cloneDeep","slice","onFieldChange","Promise","resolve","then","_a","remove","beforeRemoveRow","indexSet","Set","isArray","size","filter","_","keysIndex","has","valueIndex","onAdd","position","runFunction","onRemove","onCopy","watch","isEqual","immediate","creatorButton","creatorButtonText","block","restProps","omit","defaultDom","_createVNode","Button","_mergeProps","PlusOutlined","creator","RenderVNode","map","record","key","FormListItem","item"],"mappings":"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"}
|
|
@@ -30,6 +30,10 @@ var FormListItem = /* @__PURE__ */ defineComponent({
|
|
|
30
30
|
type: Number,
|
|
31
31
|
default: 0
|
|
32
32
|
},
|
|
33
|
+
title: {
|
|
34
|
+
type: [String, Object, Function],
|
|
35
|
+
default: void 0
|
|
36
|
+
},
|
|
33
37
|
items: {
|
|
34
38
|
type: Array,
|
|
35
39
|
default: () => []
|
|
@@ -54,6 +58,18 @@ var FormListItem = /* @__PURE__ */ defineComponent({
|
|
|
54
58
|
type: Boolean,
|
|
55
59
|
default: void 0
|
|
56
60
|
},
|
|
61
|
+
alwaysShowRowTitle: {
|
|
62
|
+
type: Boolean,
|
|
63
|
+
default: void 0
|
|
64
|
+
},
|
|
65
|
+
rowTitle: {
|
|
66
|
+
type: String,
|
|
67
|
+
default: void 0
|
|
68
|
+
},
|
|
69
|
+
rowTitleStyle: {
|
|
70
|
+
type: Object,
|
|
71
|
+
default: void 0
|
|
72
|
+
},
|
|
57
73
|
count: {
|
|
58
74
|
type: Number,
|
|
59
75
|
default: 0
|
|
@@ -147,6 +163,7 @@ var FormListItem = /* @__PURE__ */ defineComponent({
|
|
|
147
163
|
const fields = (_b = runFunction((_a = props.items) != null ? _a : [], formData.value)) != null ? _b : [];
|
|
148
164
|
return (_c = formatItems == null ? void 0 : formatItems(genListItems(fields))) != null ? _c : [];
|
|
149
165
|
});
|
|
166
|
+
const showRowTitle = computed(() => props.alwaysShowRowTitle && props.rowTitle);
|
|
150
167
|
const deleteIcon = computed(() => {
|
|
151
168
|
var _a;
|
|
152
169
|
if (props.readonly || props.deleteIconProps === false || props.min === props.count) return null;
|
|
@@ -268,9 +285,15 @@ var FormListItem = /* @__PURE__ */ defineComponent({
|
|
|
268
285
|
}, null);
|
|
269
286
|
}
|
|
270
287
|
return createVNode("div", {
|
|
288
|
+
"class": `${prefixCls}-list-item-wrapper`
|
|
289
|
+
}, [showRowTitle.value && createVNode("div", {
|
|
290
|
+
"class": `${prefixCls}-list-item-title`
|
|
291
|
+
}, [createVNode("div", {
|
|
292
|
+
"style": props.rowTitleStyle
|
|
293
|
+
}, [props.rowTitle, props.index + 1]), actionDom]), createVNode("div", {
|
|
271
294
|
"class": `${prefixCls}-list-item`,
|
|
272
295
|
"style": "display: flex; align-items: flex-end;"
|
|
273
|
-
}, [itemDom, actionDom]);
|
|
296
|
+
}, [itemDom, !showRowTitle.value && actionDom])]);
|
|
274
297
|
};
|
|
275
298
|
}
|
|
276
299
|
});
|