pro-design-vue 1.2.28 → 1.2.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/index.full.js +20606 -20631
  2. package/dist/index.full.min.js +6 -6
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +8 -8
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +20608 -20633
  7. package/es/components/form/src/hooks/useInitialValues.d.ts +1 -1
  8. package/es/packages/components/form/src/base/BaseForm.mjs +5 -5
  9. package/es/packages/components/form/src/base/BaseForm.mjs.map +1 -1
  10. package/es/packages/components/form/src/components/FormItems.mjs +5 -5
  11. package/es/packages/components/form/src/components/FormItems.mjs.map +1 -1
  12. package/es/packages/components/form/src/components/FormSet.mjs +1 -1
  13. package/es/packages/components/form/src/fields/FieldUploadButton.mjs +3 -4
  14. package/es/packages/components/form/src/fields/FieldUploadButton.mjs.map +1 -1
  15. package/es/packages/components/form/src/fields/FieldUploadDragger.mjs +6 -4
  16. package/es/packages/components/form/src/fields/FieldUploadDragger.mjs.map +1 -1
  17. package/es/packages/components/form/src/fields/FieldUploadPictureList.mjs +0 -2
  18. package/es/packages/components/form/src/fields/FieldUploadPictureList.mjs.map +1 -1
  19. package/es/packages/components/form/src/hooks/useFieldValue.mjs +1 -1
  20. package/es/packages/components/form/src/hooks/useFieldValue.mjs.map +1 -1
  21. package/es/packages/components/form/src/hooks/useInitialValues.mjs +2 -2
  22. package/es/packages/components/form/src/hooks/useInitialValues.mjs.map +1 -1
  23. package/es/packages/components/table/src/components/Body/BodyCell.mjs +1 -1
  24. package/es/packages/components/table/src/components/Body/BodyCell.mjs.map +1 -1
  25. package/es/packages/components/table/src/components/Form/Form.mjs.map +1 -1
  26. package/es/packages/components/table/src/hooks/useFetchData.mjs.map +1 -1
  27. package/es/version.d.ts +1 -1
  28. package/es/version.mjs +1 -1
  29. package/es/version.mjs.map +1 -1
  30. package/lib/components/form/src/hooks/useInitialValues.d.ts +1 -1
  31. package/lib/packages/components/form/src/base/BaseForm.js +5 -5
  32. package/lib/packages/components/form/src/base/BaseForm.js.map +1 -1
  33. package/lib/packages/components/form/src/components/FormItems.js +8 -8
  34. package/lib/packages/components/form/src/components/FormItems.js.map +1 -1
  35. package/lib/packages/components/form/src/components/FormSet.js +1 -1
  36. package/lib/packages/components/form/src/fields/FieldUploadButton.js +3 -4
  37. package/lib/packages/components/form/src/fields/FieldUploadButton.js.map +1 -1
  38. package/lib/packages/components/form/src/fields/FieldUploadDragger.js +6 -4
  39. package/lib/packages/components/form/src/fields/FieldUploadDragger.js.map +1 -1
  40. package/lib/packages/components/form/src/fields/FieldUploadPictureList.js +0 -2
  41. package/lib/packages/components/form/src/fields/FieldUploadPictureList.js.map +1 -1
  42. package/lib/packages/components/form/src/hooks/useFieldValue.js +1 -1
  43. package/lib/packages/components/form/src/hooks/useFieldValue.js.map +1 -1
  44. package/lib/packages/components/form/src/hooks/useInitialValues.js +1 -1
  45. package/lib/packages/components/form/src/hooks/useInitialValues.js.map +1 -1
  46. package/lib/packages/components/table/src/components/Body/BodyCell.js +1 -1
  47. package/lib/packages/components/table/src/components/Body/BodyCell.js.map +1 -1
  48. package/lib/packages/components/table/src/components/Form/Form.js.map +1 -1
  49. package/lib/packages/components/table/src/hooks/useFetchData.js.map +1 -1
  50. package/lib/version.d.ts +1 -1
  51. package/lib/version.js +1 -1
  52. package/lib/version.js.map +1 -1
  53. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FormItems.js","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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"}
1
+ {"version":3,"file":"FormItems.js","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-11-04 18:57:13\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { computed, 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'\nimport FormGroup from './FormGroup'\nimport FormSet from './FormSet'\nimport FormList from './FormList'\nimport FormItem from './FormItem'\n\n// const FormGroup = defineAsyncComponent(() => import('./FormGroup'))\n// const FormSet = defineAsyncComponent(() => import('./FormSet'))\n// const FormList = defineAsyncComponent(() => import('./FormList'))\n// const 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":["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","FormGroup","children","title","tooltip","colProps","rowProps","formItemProps","FORM_SET","FormSet","initialValue","convertValue","transform","FORM_LIST","fieldProps","omitUndefined","pickKeys","slotsGetter","forEach","_a","slot","getSlot","args","RenderVNode","FormList","_mergeProps","originName","rules","FormItem","Space"],"mappings":"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"}
@@ -10,9 +10,9 @@ var FormRowWrapper = require('./FormRowWrapper.js');
10
10
  var FormColWrapper = require('./FormColWrapper.js');
11
11
  var FormItems = require('./FormItems.js');
12
12
  var FormTitle = require('./FormTitle.js');
13
- var runFunction = require('../../../../utils/run-function.js');
14
13
  var omit = require('../../../../utils/omit.js');
15
14
  var pickKeys = require('../../../../utils/pick-keys.js');
15
+ var runFunction = require('../../../../utils/run-function.js');
16
16
  var lodashUnified = require('lodash-unified');
17
17
 
18
18
  const NOT_ALLOW_FIELD_TYPES = ["formList", "formSet", "group", "divider"];
@@ -97,10 +97,11 @@ var FieldUploadButton = /* @__PURE__ */ vue.defineComponent({
97
97
  SLOT_NAMES.forEach((name) => {
98
98
  const slot = getSlot.default(props[name], formSlotsContext);
99
99
  if (slot) {
100
- temp[name] = () => vue.createVNode(renderVnode.RenderVNode, {
100
+ temp[name] = (props2) => vue.createVNode(renderVnode.RenderVNode, {
101
101
  "vnode": slot,
102
102
  "props": {
103
- formData: formData.value
103
+ formData: formData.value,
104
+ ...props2 != null ? props2 : {}
104
105
  }
105
106
  }, null);
106
107
  }
@@ -199,8 +200,6 @@ var FieldUploadButton = /* @__PURE__ */ vue.defineComponent({
199
200
  } else {
200
201
  fileList.value = [];
201
202
  }
202
- }, {
203
- immediate: true
204
203
  });
205
204
  const onUploadChange = (info) => {
206
205
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"FieldUploadButton.js","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadButton.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-30 14:38:50\n * @Description:\n */\nimport type { PropType } from 'vue'\n\nimport { computed, defineComponent, ref, watch } from 'vue'\nimport { Form, Button, Upload, type UploadChangeParam, type UploadProps } from 'ant-design-vue'\nimport { UploadOutlined } from '@ant-design/icons-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { isFunction, RenderVNode } from '@pro-design-vue/utils'\nimport { useInjectForm } from '../context/FormContext'\nimport getSlot from '../utils/getSlot'\n\nconst SLOT_NAMES = [\n 'downloadIcon',\n 'itemRender',\n 'previewIcon',\n 'removeIcon',\n 'description',\n 'title',\n]\n\nexport default defineComponent({\n name: 'FieldUploadButton',\n props: {\n ...commonFieldProps(),\n iconRender: {\n type: String,\n default: '',\n },\n downloadIcon: {\n type: String,\n default: '',\n },\n itemRender: {\n type: String,\n default: '',\n },\n previewIcon: {\n type: String,\n default: '',\n },\n removeIcon: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n },\n description: {\n type: String,\n },\n name: {\n type: String,\n default: 'file',\n },\n maxCount: {\n type: Number,\n default: undefined,\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n buttonProps: {\n type: Object,\n default: undefined,\n },\n fileList: {\n type: Array,\n default: undefined,\n },\n listType: {\n type: String as PropType<'text' | 'picture' | 'picture-card'>,\n default: 'text',\n },\n listIgnore: {\n type: Boolean,\n default: true,\n },\n showUploadList: {\n type: [Boolean, Object] as PropType<UploadProps['showUploadList']>,\n default: true,\n },\n customRequest: Function,\n beforeUpload: Function,\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { prefixCls, formData } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const fileList = ref<any[]>([])\n const formItemContext = Form.useInjectFormItemContext()\n const baseClassName = computed(() => `${prefixCls}-upload`)\n const isPictureCard = computed(() => props.listType === 'picture-card')\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = () => <RenderVNode vnode={slot} props={{ formData: formData.value }} />\n }\n })\n return temp\n })\n\n const icon = computed(() => {\n const render = getSlot(props.iconRender, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return <UploadOutlined />\n })\n\n const title = computed(() => {\n const render = getSlot(props.title, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.title || intl.getMessage('upload.button', '单击上传')\n })\n\n const description = computed(() => {\n const render = getSlot(props.description, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.description\n })\n\n const beforeUpload: UploadProps['beforeUpload'] = async (file, fileList) => {\n const result = await props.beforeUpload?.(file, fileList)\n if (!result && props.listIgnore) {\n return Upload.LIST_IGNORE\n }\n return result\n }\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } =\n (await props.customRequest!(formData, onUploadProgress)) ?? {}\n if (success) {\n option.onSuccess?.(data)\n formItemContext.onFieldChange()\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n if (props.beforeUpload) {\n newProps.beforeUpload = beforeUpload\n }\n return newProps\n })\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n if (!fileList.value?.length) {\n formItemContext.onFieldChange()\n }\n } else {\n fileList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n const onUploadChange = (info: UploadChangeParam) => {\n props.onChange?.(\n info.fileList.map((item) => ({\n ...item,\n name: item.name || item.response?.name || item.url || item.response?.url,\n url: item.response?.url || item.url,\n })),\n info.file,\n )\n }\n\n return () => (\n <Upload\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n v-model:fileList={fileList.value}\n name={props.name}\n maxCount={props.maxCount}\n listType={props.listType}\n showUploadList={props.readonly || props.showUploadList}\n disabled={props.readonly || props.disabled}\n style={(attrs as any)?.style}\n v-slots={slotsGetter.value}\n onChange={onUploadChange}\n >\n {isPictureCard.value ? (\n props.maxCount !== undefined &&\n fileList.value?.length < props.maxCount && (\n <div>\n {icon.value}\n <div style=\"margin-top: 8px\"> {title.value}</div>\n </div>\n )\n ) : (\n <>\n <Button disabled={props.disabled} {...props.buttonProps}>\n {icon.value}\n {title.value}\n </Button>\n {description.value && (\n <span style={{ marginInlineStart: '10px' }}>{description.value}</span>\n )}\n </>\n )}\n </Upload>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","description","maxCount","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listType","listIgnore","showUploadList","customRequest","Function","beforeUpload","setup","attrs","intl","useIntl","prefixCls","formData","useInjectForm","formSlotsContext","useInjectSlots","ref","formItemContext","Form","useInjectFormItemContext","baseClassName","computed","isPictureCard","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","value","icon","render","isFunction","UploadOutlined","getMessage","file","result","Upload","LIST_IGNORE","option","FormData","append","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onFieldChange","onError","uploadProps","newProps","watch","newValue","map","item","url","length","immediate","onUploadChange","info","onChange","response","_mergeProps","readonly","$event","style","_createTextVNode","_Fragment","Button","marginInlineStart"],"mappings":";;;;;;;;;;;;;;;AAmBA,MAAMA,aAAa,CACjB,cAAA,EACA,cACA,aAAA,EACA,YAAA,EACA,eACA,OAAO,CAAA;AAGT,4DAA+B;AAAA,EAC7BC,IAAAA,EAAM,mBAAA;AAAA,EACNC,KAAAA,EAAO;AAAA,IACL,GAAGC,sBAAAA,EAAiB;AAAA,IACpBC,UAAAA,EAAY;AAAA,MACVC,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAC,YAAAA,EAAc;AAAA,MACZH,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAE,UAAAA,EAAY;AAAA,MACVJ,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAG,WAAAA,EAAa;AAAA,MACXL,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAI,UAAAA,EAAY;AAAA,MACVN,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAK,KAAAA,EAAO;AAAA,MACLP,IAAAA,EAAMC;AAAAA,KACR;AAAA,IACAO,WAAAA,EAAa;AAAA,MACXR,IAAAA,EAAMC;AAAAA,KACR;AAAA,IACAL,IAAAA,EAAM;AAAA,MACJI,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAO,QAAAA,EAAU;AAAA,MACRT,IAAAA,EAAMU,MAAAA;AAAAA,MACNR,OAAAA,EAASS;AAAAA,KACX;AAAA,IACAC,QAAAA,EAAU;AAAA,MACRZ,IAAAA,EAAMa,OAAAA;AAAAA,MACNX,OAAAA,EAASS;AAAAA,KACX;AAAA,IACAG,WAAAA,EAAa;AAAA,MACXd,IAAAA,EAAMe,MAAAA;AAAAA,MACNb,OAAAA,EAASS;AAAAA,KACX;AAAA,IACAK,QAAAA,EAAU;AAAA,MACRhB,IAAAA,EAAMiB,KAAAA;AAAAA,MACNf,OAAAA,EAASS;AAAAA,KACX;AAAA,IACAO,QAAAA,EAAU;AAAA,MACRlB,IAAAA,EAAMC,MAAAA;AAAAA,MACNC,OAAAA,EAAS;AAAA,KACX;AAAA,IACAiB,UAAAA,EAAY;AAAA,MACVnB,IAAAA,EAAMa,OAAAA;AAAAA,MACNX,OAAAA,EAAS;AAAA,KACX;AAAA,IACAkB,cAAAA,EAAgB;AAAA,MACdpB,IAAAA,EAAM,CAACa,OAAAA,EAASE,MAAM,CAAA;AAAA,MACtBb,OAAAA,EAAS;AAAA,KACX;AAAA,IACAmB,aAAAA,EAAeC,QAAAA;AAAAA,IACfC,YAAAA,EAAcD;AAAAA,GAChB;AAAA,EACAE,MAAM3B,KAAAA,EAAO;AAAA,IAAE4B;AAAAA,GAAM,EAAG;AACtB,IAAA,MAAMC,OAAOC,eAAAA,EAAQ;AACrB,IAAA,MAAM;AAAA,MAAEC,SAAAA;AAAAA,MAAWC;AAAAA,QAAaC,yBAAAA,EAAc;AAC9C,IAAA,MAAMC,mBAAmBC,+BAAAA,EAAe;AACxC,IAAA,MAAMhB,QAAAA,GAAWiB,OAAAA,CAAW,EAAE,CAAA;AAC9B,IAAA,MAAMC,eAAAA,GAAkBC,kBAAKC,wBAAAA,EAAyB;AACtD,IAAA,MAAMC,aAAAA,GAAgBC,YAAAA,CAAS,MAAM,CAAA,EAAGV,SAAS,CAAA,OAAA,CAAS,CAAA;AAC1D,IAAA,MAAMW,aAAAA,GAAgBD,YAAAA,CAAS,MAAMzC,KAAAA,CAAMqB,aAAa,cAAc,CAAA;AACtE,IAAA,MAAMsB,WAAAA,GAAcF,aAAS,MAAM;AACjC,MAAA,MAAMG,OAAO,EAAC;AACd9C,MAAAA,UAAAA,CAAW+C,QAAS9C,CAAAA,IAAAA,KAAS;AAC3B,QAAA,MAAM+C,IAAAA,GAAOC,eAAAA,CAAQ/C,KAAAA,CAAMD,IAAI,GAAGmC,gBAAgB,CAAA;AAClD,QAAA,IAAIY,IAAAA,EAAM;AACRF,UAAAA,IAAAA,CAAK7C,IAAI,CAAA,GAAI,MAAAiD,eAAAA,CAAAC,uBAAAA,EAAA;AAAA,YAAA,OAAA,EAA0BH,IAAAA;AAAAA,YAAI,OAAA,EAAS;AAAA,cAAEd,UAAUA,QAAAA,CAASkB;AAAAA;AAAM,aAAC,IAAA,CAAA;AAAA,QAClF;AAAA,MACF,CAAC,CAAA;AACD,MAAA,OAAON,IAAAA;AAAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAMO,IAAAA,GAAOV,aAAS,MAAM;AAC1B,MAAA,MAAMW,MAAAA,GAASL,eAAAA,CAAQ/C,KAAAA,CAAME,UAAAA,EAAYgC,gBAAgB,CAAA;AACzD,MAAA,IAAImB,mBAAAA,CAAWD,MAAM,CAAA,EAAG;AACtB,QAAA,OAAAJ,gBAAAC,uBAAAA,EAAA;AAAA,UAAA,OAAA,EAA2BG,MAAAA;AAAAA,UAAM,OAAA,EAAS;AAAA,YAAEpB,UAAUA,QAAAA,CAASkB;AAAAA;AAAM,WAAC,IAAA,CAAA;AAAA,MACxE;AACA,MAAA,OAAAF,eAAAA,CAAAM,mBAAAA,EAAA,IAAA,EAAA,IAAA,CAAA;AAAA,IACF,CAAC,CAAA;AAED,IAAA,MAAM5C,KAAAA,GAAQ+B,aAAS,MAAM;AAC3B,MAAA,MAAMW,MAAAA,GAASL,eAAAA,CAAQ/C,KAAAA,CAAMU,KAAAA,EAAOwB,gBAAgB,CAAA;AACpD,MAAA,IAAImB,mBAAAA,CAAWD,MAAM,CAAA,EAAG;AACtB,QAAA,OAAAJ,gBAAAC,uBAAAA,EAAA;AAAA,UAAA,OAAA,EAA2BG,MAAAA;AAAAA,UAAM,OAAA,EAAS;AAAA,YAAEpB,UAAUA,QAAAA,CAASkB;AAAAA;AAAM,WAAC,IAAA,CAAA;AAAA,MACxE;AACA,MAAA,OAAOlD,KAAAA,CAAMU,KAAAA,IAASmB,IAAAA,CAAK0B,UAAAA,CAAW,iBAAiB,0BAAM,CAAA;AAAA,IAC/D,CAAC,CAAA;AAED,IAAA,MAAM5C,WAAAA,GAAc8B,aAAS,MAAM;AACjC,MAAA,MAAMW,MAAAA,GAASL,eAAAA,CAAQ/C,KAAAA,CAAMW,WAAAA,EAAauB,gBAAgB,CAAA;AAC1D,MAAA,IAAImB,mBAAAA,CAAWD,MAAM,CAAA,EAAG;AACtB,QAAA,OAAAJ,gBAAAC,uBAAAA,EAAA;AAAA,UAAA,OAAA,EAA2BG,MAAAA;AAAAA,UAAM,OAAA,EAAS;AAAA,YAAEpB,UAAUA,QAAAA,CAASkB;AAAAA;AAAM,WAAC,IAAA,CAAA;AAAA,MACxE;AACA,MAAA,OAAOlD,KAAAA,CAAMW,WAAAA;AAAAA,IACf,CAAC,CAAA;AAED,IAAA,MAAMe,YAAAA,GAA4C,OAAO8B,IAAAA,EAAMrC,SAAAA,KAAa;AAxIhF,MAAA,IAAA,EAAA;AAyIM,MAAA,MAAMsC,MAAAA,GAAS,OAAA,CAAMzD,EAAAA,GAAAA,KAAAA,CAAM0B,YAAAA,KAAN1B,+BAAqBwD,IAAAA,EAAMrC,SAAAA,CAAAA,CAAAA;AAChD,MAAA,IAAI,CAACsC,MAAAA,IAAUzD,KAAAA,CAAMsB,UAAAA,EAAY;AAC/B,QAAA,OAAOoC,mBAAAA,CAAOC,WAAAA;AAAAA,MAChB;AACA,MAAA,OAAOF,MAAAA;AAAAA,IACT,CAAA;AAEA,IAAA,MAAMjC,aAAAA,GAA8C,OAAOoC,MAAAA,KAAW;AAhJ1E,MAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAiJM,MAAA,MAAM5B,SAAAA,GAAW,IAAI6B,QAAAA,EAAS;AAC9B7B,MAAAA,SAAAA,CAAS8B,MAAAA,CAAO9D,KAAAA,CAAMD,IAAAA,EAAM6D,OAAOJ,IAAI,CAAA;AACvC,MAAA,MAAMO,mBAAoBC,CAAAA,CAAAA,KAAM;AAnJtC,QAAA,IAAAC,GAAAA;AAoJQ,QAAA,IAAID,CAAAA,CAAEE,QAAQ,CAAA,EAAG;AACfF,UAAAA,CAAAA,CAAEG,OAAAA,GAAWH,CAAAA,CAAEI,MAAAA,GAASJ,CAAAA,CAAEE,KAAAA,GAAS,GAAA;AAAA,QACrC;AACAN,QAAAA,CAAAA,GAAAA,GAAAA,MAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,MAAAA,CAAQS,UAAAA,KAART,IAAAA,GAAAA,MAAAA,GAAAA,IAAAA,IAAAA,CAAAA,MAAAA,EAAqBI,CAAAA,CAAAA;AAAAA,MACvB,CAAA;AACA,MAAA,MAAM;AAAA,QAAEM,OAAAA;AAAAA,QAASC,KAAAA;AAAAA,QAAOC;AAAAA,OAAK,GAAA,CAC1B,WAAMxE,KAAAA,CAAMwB,aAAAA,CAAeQ,WAAU+B,gBAAgB,CAAA,KAArD,YAA2D,EAAC;AAC/D,MAAA,IAAIO,OAAAA,EAAS;AACXV,QAAAA,CAAAA,EAAAA,GAAAA,MAAAA,CAAOa,cAAPb,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,MAAAA,EAAmBY,IAAAA,CAAAA;AACnBnC,QAAAA,eAAAA,CAAgBqC,aAAAA,EAAc;AAAA,MAChC,CAAA,MAAO;AACLd,QAAAA,CAAAA,EAAAA,GAAAA,MAAAA,CAAOe,OAAAA,KAAPf,gCAAiBW,KAAAA,EAAOC,IAAAA,CAAAA;AAAAA,MAC1B;AAAA,IACF,CAAA;AAEA,IAAA,MAAMI,WAAAA,GAAcnC,aAAS,MAAM;AACjC,MAAA,MAAMoC,QAAAA,GAAW;AAAA,QAAE,GAAGjD;AAAAA,OAAM;AAC5B,MAAA,IAAI5B,MAAMwB,aAAAA,EAAe;AACvBqD,QAAAA,QAAAA,CAASrD,aAAAA,GAAgBA,aAAAA;AAAAA,MAC3B;AACA,MAAA,IAAIxB,MAAM0B,YAAAA,EAAc;AACtBmD,QAAAA,QAAAA,CAASnD,YAAAA,GAAeA,YAAAA;AAAAA,MAC1B;AACA,MAAA,OAAOmD,QAAAA;AAAAA,IACT,CAAC,CAAA;AAEDC,IAAAA,SAAAA,CACE,MAAM9E,KAAAA,CAAMkD,KAAAA,EACX6B,CAAAA,QAAAA,KAAa;AAhLpB,MAAA,IAAA,EAAA;AAiLQ,MAAA,IAAIA,QAAAA,EAAU;AACZ5D,QAAAA,QAAAA,CAAS+B,KAAAA,GAAQ,CAAC,GAAG6B,QAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,QAAAA,CAAUC,IAAKC,CAAAA,IAAAA,MAAU;AAAA,UAAE,GAAGA,IAAAA;AAAAA,UAAMlF,IAAAA,EAAMkF,IAAAA,CAAKlF,IAAAA,IAAQkF,IAAAA,CAAKC;AAAAA,SAAI,CAAA,CAAG,CAAA;AACxF,QAAA,IAAI,EAAA,CAAC/D,EAAAA,GAAAA,QAAAA,CAAS+B,KAAAA,KAAT/B,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAgBgE,MAAAA,CAAAA,EAAQ;AAC3B9C,UAAAA,eAAAA,CAAgBqC,aAAAA,EAAc;AAAA,QAChC;AAAA,MACF,CAAA,MAAO;AACLvD,QAAAA,QAAAA,CAAS+B,QAAQ,EAAA;AAAA,MACnB;AAAA,IACF,CAAA,EACA;AAAA,MACEkC,SAAAA,EAAW;AAAA,KAEf,CAAA;AAEA,IAAA,MAAMC,iBAAkBC,CAAAA,IAAAA,KAA4B;AA/LxD,MAAA,IAAA,EAAA;AAgMMtF,MAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMuF,QAAAA,KAANvF,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,EACEsF,IAAAA,CAAKnE,QAAAA,CAAS6D,IAAKC,CAAAA,IAAAA,KAAI;AAjM/B,QAAA,IAAAhB,GAAAA,EAAA,EAAA,EAAA,EAAA;AAiMqC,QAAA,OAAA;AAAA,UAC3B,GAAGgB,IAAAA;AAAAA,UACHlF,IAAAA,EAAMkF,IAAAA,CAAKlF,IAAAA,KAAAA,CAAQkF,GAAAA,GAAAA,IAAAA,CAAKO,QAAAA,KAALP,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAelF,IAAAA,CAAAA,IAAQkF,IAAAA,CAAKC,GAAAA,KAAAA,CAAOD,EAAAA,GAAAA,IAAAA,CAAKO,aAALP,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAeC,GAAAA,CAAAA;AAAAA,UACrEA,GAAAA,EAAAA,CAAAA,CAAKD,EAAAA,GAAAA,IAAAA,CAAKO,QAAAA,KAALP,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAeC,QAAOD,IAAAA,CAAKC;AAAAA,SAClC;AAAA,MAAA,CAAE,GACFI,IAAAA,CAAK9B,IAAAA,CAAAA;AAAAA,IAET,CAAA;AAEA,IAAA,OAAO,MAAAR,eAAAA,CAAAU,mBAAAA,EAAA+B,cAAAA,CAECb,YAAY1B,KAAAA,EAAK;AAAA,MAAA,OAAA,EACd;AAAA,QAAE,CAAC,CAAA,EAAGV,aAAAA,CAAcU,KAAK,CAAA,SAAA,CAAW,GAAGlD,KAAAA,CAAM0F;AAAAA,OAAS;AAAA,MAAC,YAC5CvE,QAAAA,CAAS+B,KAAAA;AAAAA,MAAK,mBAAA,EAAAyC,CAAAA,MAAAA,KAAdxE,QAAAA,CAAS+B,KAAAA,GAAKyC,MAAAA;AAAAA,MAAA,QAC1B3F,KAAAA,CAAMD,IAAAA;AAAAA,MAAI,YACNC,KAAAA,CAAMY,QAAAA;AAAAA,MAAQ,YACdZ,KAAAA,CAAMqB,QAAAA;AAAAA,MAAQ,gBAAA,EACRrB,KAAAA,CAAM0F,QAAAA,IAAY1F,KAAAA,CAAMuB,cAAAA;AAAAA,MAAc,UAAA,EAC5CvB,KAAAA,CAAM0F,QAAAA,IAAY1F,KAAAA,CAAMe,QAAAA;AAAAA,MAAQ,SAClCa,KAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,KAAAA,CAAegE,KAAAA;AAAAA,MAAK,UAAA,EAElBP;AAAAA,KAAc,CAAA,EAAA;AAAA,MAAAhF,SAAAA,MAAA;AAtNhC,QAAA,IAAA,EAAA;AAsNgC,QAAA,OAAA,CAEvBqC,cAAcQ,KAAAA,GACblD,KAAAA,CAAMY,aAAaE,MAAAA,IAAAA,CAAAA,CACnBK,EAAAA,GAAAA,QAAAA,CAAS+B,UAAT/B,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAgBgE,MAAAA,IAASnF,KAAAA,CAAMY,QAAAA,IAAQoC,gBAAA,KAAA,EAAA,IAAA,EAAA,CAElCG,IAAAA,CAAKD,KAAAA,EAAKF,gBAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAAA;AAAA,WAAA,CAAA6C,mBAAAA,CAAA,GAAA,CAAA,EACoBnF,MAAMwC,KAAK,CAAA,CAAA,CAAA,IAE7CF,eAAAA,CAAA8C,YAAAA,EAAA,MAAA,CAAA9C,eAAAA,CAAA+C,qBAAAN,cAAAA,CAAA;AAAA,UAAA,YAGmBzF,KAAAA,CAAMe;AAAAA,SAAQ,EAAMf,KAAAA,CAAMiB,WAAW,CAAA,EAAA;AAAA,UAAAZ,SAAAA,MAAA,CACpD8C,IAAAA,CAAKD,KAAAA,EACLxC,MAAMwC,KAAK;AAAA,SAAA,CAAA,EAEbvC,WAAAA,CAAYuC,KAAAA,IAAKF,gBAAA,MAAA,EAAA;AAAA,UAAA,OAAA,EACH;AAAA,YAAEgD,iBAAAA,EAAmB;AAAA;AAAO,WAAC,CAAGrF,WAAAA,CAAYuC,KAAK,CAAA,CAC/D,CAAA,CAEJ,CAAA;AAAA,MAAA,CAAA;AAAA,MAAA,GArBQP,WAAAA,CAAYO;AAAAA,KAAK,CAAA;AAAA,EAwBhC;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"FieldUploadButton.js","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadButton.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-04 19:35:16\n * @Description:\n */\nimport type { PropType } from 'vue'\n\nimport { computed, defineComponent, ref, watch } from 'vue'\nimport { Form, Button, Upload, type UploadChangeParam, type UploadProps } from 'ant-design-vue'\nimport { UploadOutlined } from '@ant-design/icons-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { isFunction, RenderVNode } from '@pro-design-vue/utils'\nimport { useInjectForm } from '../context/FormContext'\nimport getSlot from '../utils/getSlot'\n\nconst SLOT_NAMES = [\n 'downloadIcon',\n 'itemRender',\n 'previewIcon',\n 'removeIcon',\n 'description',\n 'title',\n]\n\nexport default defineComponent({\n name: 'FieldUploadButton',\n props: {\n ...commonFieldProps(),\n iconRender: {\n type: String,\n default: '',\n },\n downloadIcon: {\n type: String,\n default: '',\n },\n itemRender: {\n type: String,\n default: '',\n },\n previewIcon: {\n type: String,\n default: '',\n },\n removeIcon: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n },\n description: {\n type: String,\n },\n name: {\n type: String,\n default: 'file',\n },\n maxCount: {\n type: Number,\n default: undefined,\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n buttonProps: {\n type: Object,\n default: undefined,\n },\n fileList: {\n type: Array,\n default: undefined,\n },\n listType: {\n type: String as PropType<'text' | 'picture' | 'picture-card'>,\n default: 'text',\n },\n listIgnore: {\n type: Boolean,\n default: true,\n },\n showUploadList: {\n type: [Boolean, Object] as PropType<UploadProps['showUploadList']>,\n default: true,\n },\n customRequest: Function,\n beforeUpload: Function,\n },\n setup(props, { attrs }) {\n const intl = useIntl()\n const { prefixCls, formData } = useInjectForm()\n const formSlotsContext = useInjectSlots()\n const fileList = ref<any[]>([])\n const formItemContext = Form.useInjectFormItemContext()\n const baseClassName = computed(() => `${prefixCls}-upload`)\n const isPictureCard = computed(() => props.listType === 'picture-card')\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode vnode={slot} props={{ formData: formData.value, ...(props ?? {}) }} />\n )\n }\n })\n return temp\n })\n\n const icon = computed(() => {\n const render = getSlot(props.iconRender, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return <UploadOutlined />\n })\n\n const title = computed(() => {\n const render = getSlot(props.title, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.title || intl.getMessage('upload.button', '单击上传')\n })\n\n const description = computed(() => {\n const render = getSlot(props.description, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.description\n })\n\n const beforeUpload: UploadProps['beforeUpload'] = async (file, fileList) => {\n const result = await props.beforeUpload?.(file, fileList)\n if (!result && props.listIgnore) {\n return Upload.LIST_IGNORE\n }\n return result\n }\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } =\n (await props.customRequest!(formData, onUploadProgress)) ?? {}\n if (success) {\n option.onSuccess?.(data)\n formItemContext.onFieldChange()\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n if (props.beforeUpload) {\n newProps.beforeUpload = beforeUpload\n }\n return newProps\n })\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n if (!fileList.value?.length) {\n formItemContext.onFieldChange()\n }\n } else {\n fileList.value = []\n }\n },\n )\n\n const onUploadChange = (info: UploadChangeParam) => {\n props.onChange?.(\n info.fileList.map((item) => ({\n ...item,\n name: item.name || item.response?.name || item.url || item.response?.url,\n url: item.response?.url || item.url,\n })),\n info.file,\n )\n }\n\n return () => (\n <Upload\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n v-model:fileList={fileList.value}\n name={props.name}\n maxCount={props.maxCount}\n listType={props.listType}\n showUploadList={props.readonly || props.showUploadList}\n disabled={props.readonly || props.disabled}\n style={(attrs as any)?.style}\n v-slots={slotsGetter.value}\n onChange={onUploadChange}\n >\n {isPictureCard.value ? (\n props.maxCount !== undefined &&\n fileList.value?.length < props.maxCount && (\n <div>\n {icon.value}\n <div style=\"margin-top: 8px\"> {title.value}</div>\n </div>\n )\n ) : (\n <>\n <Button disabled={props.disabled} {...props.buttonProps}>\n {icon.value}\n {title.value}\n </Button>\n {description.value && (\n <span style={{ marginInlineStart: '10px' }}>{description.value}</span>\n )}\n </>\n )}\n </Upload>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","description","maxCount","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listType","listIgnore","showUploadList","customRequest","Function","beforeUpload","setup","attrs","intl","useIntl","prefixCls","formData","useInjectForm","formSlotsContext","useInjectSlots","ref","formItemContext","Form","useInjectFormItemContext","baseClassName","computed","isPictureCard","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","value","icon","render","isFunction","UploadOutlined","getMessage","file","result","Upload","LIST_IGNORE","option","FormData","append","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onFieldChange","onError","uploadProps","newProps","watch","newValue","map","item","url","length","onUploadChange","info","onChange","response","_mergeProps","readonly","$event","style","_createTextVNode","_Fragment","Button","marginInlineStart"],"mappings":"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"}
@@ -92,8 +92,12 @@ var FieldUploadDragger = /* @__PURE__ */ vue.defineComponent({
92
92
  SLOT_NAMES.forEach((name) => {
93
93
  const slot = getSlot.default(props[name], formSlotsContext);
94
94
  if (slot) {
95
- temp[name] = () => vue.createVNode(renderVnode.RenderVNode, {
96
- "vnode": slot
95
+ temp[name] = (props2) => vue.createVNode(renderVnode.RenderVNode, {
96
+ "vnode": slot,
97
+ "props": {
98
+ formData: formData.value,
99
+ ...props2 != null ? props2 : {}
100
+ }
97
101
  }, null);
98
102
  }
99
103
  });
@@ -191,8 +195,6 @@ var FieldUploadDragger = /* @__PURE__ */ vue.defineComponent({
191
195
  } else {
192
196
  fileList.value = [];
193
197
  }
194
- }, {
195
- immediate: true
196
198
  });
197
199
  const onUploadChange = (info) => {
198
200
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"FieldUploadDragger.js","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadDragger.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-30 14:38:58\n * @Description:\n */\nimport { computed, defineComponent, ref, watch, type PropType } from 'vue'\nimport { Form, Upload, type UploadChangeParam, type UploadProps } from 'ant-design-vue'\nimport { InboxOutlined } from '@ant-design/icons-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { isFunction, RenderVNode } from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nconst SLOT_NAMES = ['downloadIcon', 'itemRender', 'previewIcon', 'removeIcon']\n\nexport default defineComponent({\n name: 'FieldUploadDragger',\n props: {\n ...commonFieldProps(),\n iconRender: {\n type: String,\n default: '',\n },\n downloadIcon: {\n type: String,\n default: '',\n },\n itemRender: {\n type: String,\n default: '',\n },\n previewIcon: {\n type: String,\n default: '',\n },\n removeIcon: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n },\n description: {\n type: String,\n },\n name: {\n type: String,\n default: 'file',\n },\n max: {\n type: Number,\n default: undefined,\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n buttonProps: {\n type: Object,\n default: undefined,\n },\n fileList: {\n type: Array,\n default: undefined,\n },\n listIgnore: {\n type: Boolean,\n default: true,\n },\n showUploadList: {\n type: [Boolean, Object] as PropType<UploadProps['showUploadList']>,\n default: true,\n },\n customRequest: Function,\n beforeUpload: Function,\n },\n setup(props, { attrs }) {\n const { prefixCls, formData } = useInjectForm()\n const intl = useIntl()\n const formSlotsContext = useInjectSlots()\n const fileList = ref<any[]>([])\n const formItemContext = Form.useInjectFormItemContext()\n const baseClassName = computed(() => `${prefixCls}-upload`)\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = () => <RenderVNode vnode={slot} />\n }\n })\n return temp\n })\n\n const icon = computed(() => {\n const render = getSlot(props.iconRender, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return <InboxOutlined />\n })\n\n const title = computed(() => {\n const render = getSlot(props.title, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.title || intl.getMessage('upload.dragger.text', '单击或拖动文件到此区域进行上传')\n })\n\n const description = computed(() => {\n const render = getSlot(props.description, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.description || intl.getMessage('upload.dragger.hint', '支持单次或批量上传')\n })\n\n const beforeUpload: UploadProps['beforeUpload'] = async (file, fileList) => {\n const result = await props.beforeUpload?.(file, fileList)\n if (!result && props.listIgnore) {\n return Upload.LIST_IGNORE\n }\n return result\n }\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } =\n (await props.customRequest!(formData, onUploadProgress)) ?? {}\n if (success) {\n option.onSuccess?.(data)\n formItemContext.onFieldChange()\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n if (props.beforeUpload) {\n newProps.beforeUpload = beforeUpload\n }\n return newProps\n })\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n if (!fileList.value?.length) {\n formItemContext.onFieldChange()\n }\n } else {\n fileList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n const onUploadChange = (info: UploadChangeParam) => {\n props.onChange?.(\n info.fileList.map((item) => ({\n ...item,\n name: item.name || item.response?.name || item.url || item.response?.url,\n url: item.response?.url || item.url,\n })),\n info.file,\n )\n }\n\n return () => (\n <Upload.Dragger\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n v-model:fileList={fileList.value}\n name={props.name}\n showUploadList={props.readonly || props.showUploadList}\n disabled={props.readonly || props.disabled}\n style={(attrs as any)?.style}\n v-slots={slotsGetter.value}\n onChange={onUploadChange}\n >\n <p class={`${baseClassName.value}-drag-icon`} style={{ color: 'hsl(var(--pro-primary))' }}>\n {icon.value}\n </p>\n <p class={`${baseClassName.value}-text`}>{title.value}</p>\n <p class={`${baseClassName.value}-hint`}>{description.value}</p>\n </Upload.Dragger>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","description","max","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listIgnore","showUploadList","customRequest","Function","beforeUpload","setup","attrs","prefixCls","formData","useInjectForm","intl","useIntl","formSlotsContext","useInjectSlots","ref","formItemContext","Form","useInjectFormItemContext","baseClassName","computed","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","icon","render","isFunction","value","InboxOutlined","getMessage","file","result","Upload","LIST_IGNORE","option","FormData","append","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onFieldChange","onError","uploadProps","newProps","watch","newValue","map","item","url","length","immediate","onUploadChange","info","onChange","response","Dragger","_mergeProps","readonly","$event","style","color"],"mappings":"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"}
1
+ {"version":3,"file":"FieldUploadDragger.js","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadDragger.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-04 19:34:39\n * @Description:\n */\nimport { computed, defineComponent, ref, watch, type PropType } from 'vue'\nimport { Form, Upload, type UploadChangeParam, type UploadProps } from 'ant-design-vue'\nimport { InboxOutlined } from '@ant-design/icons-vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { commonFieldProps } from '../props'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport { isFunction, RenderVNode } from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nconst SLOT_NAMES = ['downloadIcon', 'itemRender', 'previewIcon', 'removeIcon']\n\nexport default defineComponent({\n name: 'FieldUploadDragger',\n props: {\n ...commonFieldProps(),\n iconRender: {\n type: String,\n default: '',\n },\n downloadIcon: {\n type: String,\n default: '',\n },\n itemRender: {\n type: String,\n default: '',\n },\n previewIcon: {\n type: String,\n default: '',\n },\n removeIcon: {\n type: String,\n default: '',\n },\n title: {\n type: String,\n },\n description: {\n type: String,\n },\n name: {\n type: String,\n default: 'file',\n },\n max: {\n type: Number,\n default: undefined,\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n buttonProps: {\n type: Object,\n default: undefined,\n },\n fileList: {\n type: Array,\n default: undefined,\n },\n listIgnore: {\n type: Boolean,\n default: true,\n },\n showUploadList: {\n type: [Boolean, Object] as PropType<UploadProps['showUploadList']>,\n default: true,\n },\n customRequest: Function,\n beforeUpload: Function,\n },\n setup(props, { attrs }) {\n const { prefixCls, formData } = useInjectForm()\n const intl = useIntl()\n const formSlotsContext = useInjectSlots()\n const fileList = ref<any[]>([])\n const formItemContext = Form.useInjectFormItemContext()\n const baseClassName = computed(() => `${prefixCls}-upload`)\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(props[name], formSlotsContext)\n if (slot) {\n temp[name] = (props) => (\n <RenderVNode vnode={slot} props={{ formData: formData.value, ...(props ?? {}) }} />\n )\n }\n })\n return temp\n })\n\n const icon = computed(() => {\n const render = getSlot(props.iconRender, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return <InboxOutlined />\n })\n\n const title = computed(() => {\n const render = getSlot(props.title, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.title || intl.getMessage('upload.dragger.text', '单击或拖动文件到此区域进行上传')\n })\n\n const description = computed(() => {\n const render = getSlot(props.description, formSlotsContext)\n if (isFunction(render)) {\n return <RenderVNode vnode={render} props={{ formData: formData.value }} />\n }\n return props.description || intl.getMessage('upload.dragger.hint', '支持单次或批量上传')\n })\n\n const beforeUpload: UploadProps['beforeUpload'] = async (file, fileList) => {\n const result = await props.beforeUpload?.(file, fileList)\n if (!result && props.listIgnore) {\n return Upload.LIST_IGNORE\n }\n return result\n }\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } =\n (await props.customRequest!(formData, onUploadProgress)) ?? {}\n if (success) {\n option.onSuccess?.(data)\n formItemContext.onFieldChange()\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n if (props.beforeUpload) {\n newProps.beforeUpload = beforeUpload\n }\n return newProps\n })\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n fileList.value = [...newValue?.map((item) => ({ ...item, name: item.name || item.url }))]\n if (!fileList.value?.length) {\n formItemContext.onFieldChange()\n }\n } else {\n fileList.value = []\n }\n },\n )\n\n const onUploadChange = (info: UploadChangeParam) => {\n props.onChange?.(\n info.fileList.map((item) => ({\n ...item,\n name: item.name || item.response?.name || item.url || item.response?.url,\n url: item.response?.url || item.url,\n })),\n info.file,\n )\n }\n\n return () => (\n <Upload.Dragger\n {...uploadProps.value}\n class={{ [`${baseClassName.value}-readonly`]: props.readonly }}\n v-model:fileList={fileList.value}\n name={props.name}\n showUploadList={props.readonly || props.showUploadList}\n disabled={props.readonly || props.disabled}\n style={(attrs as any)?.style}\n v-slots={slotsGetter.value}\n onChange={onUploadChange}\n >\n <p class={`${baseClassName.value}-drag-icon`} style={{ color: 'hsl(var(--pro-primary))' }}>\n {icon.value}\n </p>\n <p class={`${baseClassName.value}-text`}>{title.value}</p>\n <p class={`${baseClassName.value}-hint`}>{description.value}</p>\n </Upload.Dragger>\n )\n },\n})\n"],"names":["SLOT_NAMES","name","props","commonFieldProps","iconRender","type","String","default","downloadIcon","itemRender","previewIcon","removeIcon","title","description","max","Number","undefined","disabled","Boolean","buttonProps","Object","fileList","Array","listIgnore","showUploadList","customRequest","Function","beforeUpload","setup","attrs","prefixCls","formData","useInjectForm","intl","useIntl","formSlotsContext","useInjectSlots","ref","formItemContext","Form","useInjectFormItemContext","baseClassName","computed","slotsGetter","temp","forEach","slot","getSlot","_createVNode","RenderVNode","value","icon","render","isFunction","InboxOutlined","getMessage","file","result","Upload","LIST_IGNORE","option","FormData","append","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onFieldChange","onError","uploadProps","newProps","watch","newValue","map","item","url","length","onUploadChange","info","onChange","response","Dragger","_mergeProps","readonly","$event","style","color"],"mappings":"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"}
@@ -109,8 +109,6 @@ var FieldUploadPictureList = /* @__PURE__ */ vue.defineComponent({
109
109
  } else {
110
110
  fileList.value = [];
111
111
  }
112
- }, {
113
- immediate: true
114
112
  });
115
113
  vue.watch(fileList, () => {
116
114
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"FieldUploadPictureList.js","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadPictureList.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-10-30 14:39:26\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { UploadProps } from 'ant-design-vue'\n\nimport { computed, defineComponent, ref, watch } from 'vue'\nimport { Upload, Modal } from 'ant-design-vue'\nimport { PlusOutlined } from '@ant-design/icons-vue'\nimport { commonFieldProps } from '../props'\nimport { useInjectForm } from '../context/FormContext'\nimport { isEqual } from '@pro-design-vue/utils'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\n\nexport default defineComponent({\n name: 'FieldUploadPictureList',\n inheritAttrs: false,\n props: {\n ...commonFieldProps(),\n name: {\n type: String,\n default: 'file',\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n width: {\n type: Number,\n default: 80,\n },\n height: {\n type: Number,\n default: 80,\n },\n crossOrigin: {\n type: String as PropType<'anonymous' | 'use-credentials'>,\n default: '',\n },\n maxCount: {\n type: Number,\n },\n customRequest: Function,\n },\n setup(props, { attrs }) {\n const fileList = ref<any[]>([])\n const previewVisible = ref(false)\n const previewImage = ref('')\n const intl = useIntl()\n const { prefixCls, disabled } = useInjectForm()\n\n const mergeDisabled = computed(() => props.readonly || disabled?.value)\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } = await props.customRequest!(formData, onUploadProgress)\n if (success) {\n option.onSuccess?.(data)\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n return newProps\n })\n\n const getBase64 = (file: File) => {\n return new Promise((resolve, reject) => {\n const reader = new FileReader()\n reader.readAsDataURL(file)\n reader.onload = () => resolve(reader.result)\n reader.onerror = (error) => reject(error)\n })\n }\n\n const handlePreview = async (file) => {\n if (!file.url && !file.preview) {\n file.preview = (await getBase64(file.originFileObj)) as string\n }\n previewImage.value = file.url || file.preview\n previewVisible.value = true\n }\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n if (!isEqual(newValue, fileList.value)) {\n fileList.value = newValue.map((item) => ({ ...item, crossOrigin: props.crossOrigin }))\n }\n } else {\n fileList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(fileList, () => {\n props.onChange?.(fileList.value)\n })\n\n return () => (\n <>\n <Upload\n {...uploadProps.value}\n v-model:fileList={fileList.value}\n name={props.name}\n disabled={mergeDisabled.value}\n list-type=\"picture-card\"\n maxCount={props.maxCount}\n class={`${prefixCls}-upload-picture-list`}\n style={{\n '--s-upload-picture-list-width': props.width + 'px',\n '--s-upload-picture-list-height': props.height + 'px',\n }}\n onPreview={handlePreview}\n >\n {(!mergeDisabled.value || !props.maxCount || fileList.value.length < props.maxCount) && (\n <PlusOutlined />\n )}\n </Upload>\n <Modal\n v-model:open={previewVisible.value}\n width={800}\n title={intl.getMessage('upload.picture.viewModalTitle', '查看图片')}\n footer={null}\n >\n <img\n alt=\"preview\"\n style=\"width: 100%\"\n crossorigin={props.crossOrigin}\n src={previewImage.value}\n />\n </Modal>\n </>\n )\n },\n})\n"],"names":["name","inheritAttrs","props","commonFieldProps","type","String","default","disabled","Boolean","undefined","width","Number","height","crossOrigin","maxCount","customRequest","Function","setup","attrs","fileList","ref","previewVisible","previewImage","intl","useIntl","prefixCls","useInjectForm","mergeDisabled","computed","readonly","value","option","formData","FormData","append","file","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onError","uploadProps","newProps","getBase64","Promise","resolve","reject","reader","FileReader","readAsDataURL","onload","result","onerror","handlePreview","url","preview","originFileObj","watch","newValue","isEqual","map","item","immediate","onChange","_createVNode","_Fragment","Upload","_mergeProps","$event","length","PlusOutlined","Modal","getMessage"],"mappings":"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"}
1
+ {"version":3,"file":"FieldUploadPictureList.js","sources":["../../../../../../../../packages/components/form/src/fields/FieldUploadPictureList.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-10 14:34:03\n * @LastEditors: shen\n * @LastEditTime: 2025-11-04 18:12:28\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { UploadProps } from 'ant-design-vue'\n\nimport { computed, defineComponent, ref, watch } from 'vue'\nimport { Upload, Modal } from 'ant-design-vue'\nimport { PlusOutlined } from '@ant-design/icons-vue'\nimport { commonFieldProps } from '../props'\nimport { useInjectForm } from '../context/FormContext'\nimport { isEqual } from '@pro-design-vue/utils'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\n\nexport default defineComponent({\n name: 'FieldUploadPictureList',\n inheritAttrs: false,\n props: {\n ...commonFieldProps(),\n name: {\n type: String,\n default: 'file',\n },\n disabled: {\n type: Boolean,\n default: undefined,\n },\n width: {\n type: Number,\n default: 80,\n },\n height: {\n type: Number,\n default: 80,\n },\n crossOrigin: {\n type: String as PropType<'anonymous' | 'use-credentials'>,\n default: '',\n },\n maxCount: {\n type: Number,\n },\n customRequest: Function,\n },\n setup(props, { attrs }) {\n const fileList = ref<any[]>([])\n const previewVisible = ref(false)\n const previewImage = ref('')\n const intl = useIntl()\n const { prefixCls, disabled } = useInjectForm()\n\n const mergeDisabled = computed(() => props.readonly || disabled?.value)\n\n const customRequest: UploadProps['customRequest'] = async (option) => {\n const formData = new FormData()\n formData.append(props.name, option.file)\n const onUploadProgress = (e) => {\n if (e.total > 0) {\n e.percent = (e.loaded / e.total) * 100\n }\n option?.onProgress?.(e)\n }\n const { success, error, data } = await props.customRequest!(formData, onUploadProgress)\n if (success) {\n option.onSuccess?.(data)\n } else {\n option.onError?.(error, data)\n }\n }\n\n const uploadProps = computed(() => {\n const newProps = { ...attrs }\n if (props.customRequest) {\n newProps.customRequest = customRequest\n }\n return newProps\n })\n\n const getBase64 = (file: File) => {\n return new Promise((resolve, reject) => {\n const reader = new FileReader()\n reader.readAsDataURL(file)\n reader.onload = () => resolve(reader.result)\n reader.onerror = (error) => reject(error)\n })\n }\n\n const handlePreview = async (file) => {\n if (!file.url && !file.preview) {\n file.preview = (await getBase64(file.originFileObj)) as string\n }\n previewImage.value = file.url || file.preview\n previewVisible.value = true\n }\n\n watch(\n () => props.value,\n (newValue) => {\n if (newValue) {\n if (!isEqual(newValue, fileList.value)) {\n fileList.value = newValue.map((item) => ({ ...item, crossOrigin: props.crossOrigin }))\n }\n } else {\n fileList.value = []\n }\n },\n )\n\n watch(fileList, () => {\n props.onChange?.(fileList.value)\n })\n\n return () => (\n <>\n <Upload\n {...uploadProps.value}\n v-model:fileList={fileList.value}\n name={props.name}\n disabled={mergeDisabled.value}\n list-type=\"picture-card\"\n maxCount={props.maxCount}\n class={`${prefixCls}-upload-picture-list`}\n style={{\n '--s-upload-picture-list-width': props.width + 'px',\n '--s-upload-picture-list-height': props.height + 'px',\n }}\n onPreview={handlePreview}\n >\n {(!mergeDisabled.value || !props.maxCount || fileList.value.length < props.maxCount) && (\n <PlusOutlined />\n )}\n </Upload>\n <Modal\n v-model:open={previewVisible.value}\n width={800}\n title={intl.getMessage('upload.picture.viewModalTitle', '查看图片')}\n footer={null}\n >\n <img\n alt=\"preview\"\n style=\"width: 100%\"\n crossorigin={props.crossOrigin}\n src={previewImage.value}\n />\n </Modal>\n </>\n )\n },\n})\n"],"names":["name","inheritAttrs","props","commonFieldProps","type","String","default","disabled","Boolean","undefined","width","Number","height","crossOrigin","maxCount","customRequest","Function","setup","attrs","fileList","ref","previewVisible","previewImage","intl","useIntl","prefixCls","useInjectForm","mergeDisabled","computed","readonly","value","option","formData","FormData","append","file","onUploadProgress","e","_a","total","percent","loaded","onProgress","success","error","data","onSuccess","onError","uploadProps","newProps","getBase64","Promise","resolve","reject","reader","FileReader","readAsDataURL","onload","result","onerror","handlePreview","url","preview","originFileObj","watch","newValue","isEqual","map","item","onChange","_createVNode","_Fragment","Upload","_mergeProps","$event","length","PlusOutlined","Modal","getMessage"],"mappings":"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"}
@@ -32,8 +32,8 @@ function useFieldValue({
32
32
  typeof modelValue.value === "undefined" && typeof initialValue !== "undefined"
33
33
  ) {
34
34
  const value = convertValue ? convertValue(initialValue, namePath.value) : initialValue;
35
- lodashUnified.set(formData.value, namePath.value, lodashUnified.cloneDeep(value));
36
35
  lodashUnified.set((_a = initialValues == null ? void 0 : initialValues.value) != null ? _a : {}, namePath.value, lodashUnified.cloneDeep(initialValue));
36
+ lodashUnified.set(formData.value, namePath.value, lodashUnified.cloneDeep(value));
37
37
  fieldValue.value = value;
38
38
  }
39
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useFieldValue.js","sources":["../../../../../../../../packages/components/form/src/hooks/useFieldValue.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2022-06-10 15:44:38\n * @LastEditors: shen\n * @LastEditTime: 2025-09-22 16:14:20\n * @Description:\n */\nimport type { ComputedRef, Ref } from 'vue'\nimport type { NamePath, SearchConvertKeyFn, SearchTransformKeyFn } from '../type'\n\nimport { computed, shallowRef, watch } from 'vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { cloneDeep, set, get } from '@pro-design-vue/utils'\n\nexport function useFieldValue<T>({\n namePath,\n initialValue,\n convertValue,\n}: {\n isList?: boolean\n namePath: ComputedRef<NamePath>\n initialValue?: any\n convertValue?: SearchConvertKeyFn\n transform?: SearchTransformKeyFn\n}): {\n fieldValue: Ref<T | undefined>\n onValueChange: (value: T) => void\n} {\n const fieldValue = shallowRef<T | undefined>()\n\n const { formData, initialValues } = useInjectForm()\n\n const modelValue = computed(() => get(formData.value, namePath.value) as T)\n\n const onValueChange = (value: T) => {\n set(formData.value, namePath.value, value)\n }\n\n watch(\n modelValue,\n (newValue) => {\n fieldValue.value = cloneDeep(newValue)\n },\n {\n immediate: true,\n deep: true,\n },\n )\n\n const initFieldInitialValue = () => {\n if (\n // !mountedRef.value &&\n typeof modelValue.value === 'undefined' &&\n typeof initialValue !== 'undefined'\n ) {\n const value = convertValue ? (convertValue(initialValue, namePath.value) as T) : initialValue\n set(formData.value, namePath.value, cloneDeep(value))\n set(initialValues?.value ?? {}, namePath.value, cloneDeep(initialValue))\n fieldValue.value = value\n }\n }\n initFieldInitialValue()\n\n return {\n fieldValue,\n onValueChange,\n }\n}\n"],"names":["shallowRef","useInjectForm","computed","get","set","watch","cloneDeep"],"mappings":";;;;;;AAcO,SAAS,aAAA,CAAiB;AAAA,EAC/B,QAAA;AAAA,EACA,YAAA;AAAA,EACA;AACF,CAAA,EASE;AACA,EAAA,MAAM,aAAaA,cAAA,EAA0B;AAE7C,EAAA,MAAM,EAAE,QAAA,EAAU,aAAA,EAAc,GAAIC,yBAAA,EAAc;AAElD,EAAA,MAAM,UAAA,GAAaC,aAAS,MAAMC,iBAAA,CAAI,SAAS,KAAA,EAAO,QAAA,CAAS,KAAK,CAAM,CAAA;AAE1E,EAAA,MAAM,aAAA,GAAgB,CAAC,KAAA,KAAa;AAClC,IAAAC,iBAAA,CAAI,QAAA,CAAS,KAAA,EAAO,QAAA,CAAS,KAAA,EAAO,KAAK,CAAA;AAAA,EAC3C,CAAA;AAEA,EAAAC,SAAA;AAAA,IACE,UAAA;AAAA,IACA,CAAC,QAAA,KAAa;AACZ,MAAA,UAAA,CAAW,KAAA,GAAQC,wBAAU,QAAQ,CAAA;AAAA,IACvC,CAAA;AAAA,IACA;AAAA,MACE,SAAA,EAAW,IAAA;AAAA,MACX,IAAA,EAAM;AAAA;AACR,GACF;AAEA,EAAA,MAAM,wBAAwB,MAAM;AAjDtC,IAAA,IAAA,EAAA;AAkDI,IAAA;AAAA;AAAA,MAEE,OAAO,UAAA,CAAW,KAAA,KAAU,WAAA,IAC5B,OAAO,YAAA,KAAiB;AAAA,MACxB;AACA,MAAA,MAAM,QAAQ,YAAA,GAAgB,YAAA,CAAa,YAAA,EAAc,QAAA,CAAS,KAAK,CAAA,GAAU,YAAA;AACjF,MAAAF,iBAAA,CAAI,SAAS,KAAA,EAAO,QAAA,CAAS,KAAA,EAAOE,uBAAA,CAAU,KAAK,CAAC,CAAA;AACpD,MAAAF,iBAAA,CAAA,CAAI,EAAA,GAAA,aAAA,IAAA,IAAA,GAAA,MAAA,GAAA,aAAA,CAAe,UAAf,IAAA,GAAA,EAAA,GAAwB,IAAI,QAAA,CAAS,KAAA,EAAOE,uBAAA,CAAU,YAAY,CAAC,CAAA;AACvE,MAAA,UAAA,CAAW,KAAA,GAAQ,KAAA;AAAA,IACrB;AAAA,EACF,CAAA;AACA,EAAA,qBAAA,EAAsB;AAEtB,EAAA,OAAO;AAAA,IACL,UAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
1
+ {"version":3,"file":"useFieldValue.js","sources":["../../../../../../../../packages/components/form/src/hooks/useFieldValue.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2022-06-10 15:44:38\n * @LastEditors: shen\n * @LastEditTime: 2025-11-04 18:06:05\n * @Description:\n */\nimport type { ComputedRef, Ref } from 'vue'\nimport type { NamePath, SearchConvertKeyFn, SearchTransformKeyFn } from '../type'\n\nimport { computed, shallowRef, watch } from 'vue'\nimport { useInjectForm } from '../context/FormContext'\nimport { cloneDeep, set, get } from '@pro-design-vue/utils'\n\nexport function useFieldValue<T>({\n namePath,\n initialValue,\n convertValue,\n}: {\n isList?: boolean\n namePath: ComputedRef<NamePath>\n initialValue?: any\n convertValue?: SearchConvertKeyFn\n transform?: SearchTransformKeyFn\n}): {\n fieldValue: Ref<T | undefined>\n onValueChange: (value: T) => void\n} {\n const fieldValue = shallowRef<T | undefined>()\n\n const { formData, initialValues } = useInjectForm()\n\n const modelValue = computed(() => get(formData.value, namePath.value) as T)\n\n const onValueChange = (value: T) => {\n set(formData.value, namePath.value, value)\n }\n\n watch(\n modelValue,\n (newValue) => {\n fieldValue.value = cloneDeep(newValue)\n },\n {\n immediate: true,\n deep: true,\n },\n )\n\n const initFieldInitialValue = () => {\n if (\n // !mountedRef.value &&\n typeof modelValue.value === 'undefined' &&\n typeof initialValue !== 'undefined'\n ) {\n const value = convertValue ? (convertValue(initialValue, namePath.value) as T) : initialValue\n set(initialValues?.value ?? {}, namePath.value, cloneDeep(initialValue))\n set(formData.value, namePath.value, cloneDeep(value))\n fieldValue.value = value\n }\n }\n initFieldInitialValue()\n\n return {\n fieldValue,\n onValueChange,\n }\n}\n"],"names":["shallowRef","useInjectForm","computed","get","set","watch","cloneDeep"],"mappings":";;;;;;AAcO,SAAS,aAAA,CAAiB;AAAA,EAC/B,QAAA;AAAA,EACA,YAAA;AAAA,EACA;AACF,CAAA,EASE;AACA,EAAA,MAAM,aAAaA,cAAA,EAA0B;AAE7C,EAAA,MAAM,EAAE,QAAA,EAAU,aAAA,EAAc,GAAIC,yBAAA,EAAc;AAElD,EAAA,MAAM,UAAA,GAAaC,aAAS,MAAMC,iBAAA,CAAI,SAAS,KAAA,EAAO,QAAA,CAAS,KAAK,CAAM,CAAA;AAE1E,EAAA,MAAM,aAAA,GAAgB,CAAC,KAAA,KAAa;AAClC,IAAAC,iBAAA,CAAI,QAAA,CAAS,KAAA,EAAO,QAAA,CAAS,KAAA,EAAO,KAAK,CAAA;AAAA,EAC3C,CAAA;AAEA,EAAAC,SAAA;AAAA,IACE,UAAA;AAAA,IACA,CAAC,QAAA,KAAa;AACZ,MAAA,UAAA,CAAW,KAAA,GAAQC,wBAAU,QAAQ,CAAA;AAAA,IACvC,CAAA;AAAA,IACA;AAAA,MACE,SAAA,EAAW,IAAA;AAAA,MACX,IAAA,EAAM;AAAA;AACR,GACF;AAEA,EAAA,MAAM,wBAAwB,MAAM;AAjDtC,IAAA,IAAA,EAAA;AAkDI,IAAA;AAAA;AAAA,MAEE,OAAO,UAAA,CAAW,KAAA,KAAU,WAAA,IAC5B,OAAO,YAAA,KAAiB;AAAA,MACxB;AACA,MAAA,MAAM,QAAQ,YAAA,GAAgB,YAAA,CAAa,YAAA,EAAc,QAAA,CAAS,KAAK,CAAA,GAAU,YAAA;AACjF,MAAAF,iBAAA,CAAA,CAAI,EAAA,GAAA,aAAA,IAAA,IAAA,GAAA,MAAA,GAAA,aAAA,CAAe,UAAf,IAAA,GAAA,EAAA,GAAwB,IAAI,QAAA,CAAS,KAAA,EAAOE,uBAAA,CAAU,YAAY,CAAC,CAAA;AACvE,MAAAF,iBAAA,CAAI,SAAS,KAAA,EAAO,QAAA,CAAS,KAAA,EAAOE,uBAAA,CAAU,KAAK,CAAC,CAAA;AACpD,MAAA,UAAA,CAAW,KAAA,GAAQ,KAAA;AAAA,IACrB;AAAA,EACF,CAAA;AACA,EAAA,qBAAA,EAAsB;AAEtB,EAAA,OAAO;AAAA,IACL,UAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
@@ -7,7 +7,7 @@ var lodashUnified = require('lodash-unified');
7
7
  const useInitialValues = (props) => {
8
8
  const hasInitial = vue.ref(true);
9
9
  const requestLoading = vue.ref(false);
10
- const initialValues = vue.shallowRef({ ...props.initialValues });
10
+ const initialValues = vue.ref({ ...props.initialValues });
11
11
  const fetchData = useFetchData.useFetchData({ request: props.request });
12
12
  vue.onMounted(async () => {
13
13
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"useInitialValues.js","sources":["../../../../../../../../packages/components/form/src/hooks/useInitialValues.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-11 08:34:34\n * @LastEditors: shen\n * @LastEditTime: 2025-07-26 12:03:07\n * @Description:\n */\nimport type { ProFormPropsType, Entity } from '../type'\n\nimport { shallowRef, onMounted, ref } from 'vue'\nimport { useFetchData } from './useFetchData'\nimport { merge } from '@pro-design-vue/utils'\n\nexport const useInitialValues = (props: ProFormPropsType) => {\n const hasInitial = ref(true)\n const requestLoading = ref(false)\n const initialValues = shallowRef<Entity>({ ...props.initialValues })\n const fetchData = useFetchData({ request: props.request })\n\n onMounted(async () => {\n if (props.request && !props.requestAbort) {\n hasInitial.value = true\n requestLoading.value = true\n const initialData = await fetchData(props.params)\n initialValues.value = merge({}, initialValues.value, initialData) ?? {}\n Promise.resolve().then(() => {\n hasInitial.value = false\n requestLoading.value = false\n })\n }\n })\n\n return { initialValues, hasInitial, requestLoading }\n}\n"],"names":["ref","shallowRef","useFetchData","onMounted"],"mappings":";;;;;;AAaO,MAAM,gBAAA,GAAmB,CAAC,KAAA,KAA4B;AAC3D,EAAA,MAAM,UAAA,GAAaA,QAAI,IAAI,CAAA;AAC3B,EAAA,MAAM,cAAA,GAAiBA,QAAI,KAAK,CAAA;AAChC,EAAA,MAAM,gBAAgBC,cAAA,CAAmB,EAAE,GAAG,KAAA,CAAM,eAAe,CAAA;AACnE,EAAA,MAAM,YAAYC,yBAAA,CAAa,EAAE,OAAA,EAAS,KAAA,CAAM,SAAS,CAAA;AAEzD,EAAAC,aAAA,CAAU,YAAY;AAnBxB,IAAA,IAAA,EAAA;AAoBI,IAAA,IAAI,KAAA,CAAM,OAAA,IAAW,CAAC,KAAA,CAAM,YAAA,EAAc;AACxC,MAAA,UAAA,CAAW,KAAA,GAAQ,IAAA;AACnB,MAAA,cAAA,CAAe,KAAA,GAAQ,IAAA;AACvB,MAAA,MAAM,WAAA,GAAc,MAAM,SAAA,CAAU,KAAA,CAAM,MAAM,CAAA;AAChD,MAAA,aAAA,CAAc,KAAA,GAAA,CAAQ,yBAAM,EAAC,EAAG,cAAc,KAAA,EAAO,WAAW,CAAA,KAA1C,IAAA,GAAA,EAAA,GAA+C,EAAC;AACtE,MAAA,OAAA,CAAQ,OAAA,EAAQ,CAAE,IAAA,CAAK,MAAM;AAC3B,QAAA,UAAA,CAAW,KAAA,GAAQ,KAAA;AACnB,QAAA,cAAA,CAAe,KAAA,GAAQ,KAAA;AAAA,MACzB,CAAC,CAAA;AAAA,IACH;AAAA,EACF,CAAC,CAAA;AAED,EAAA,OAAO,EAAE,aAAA,EAAe,UAAA,EAAY,cAAA,EAAe;AACrD;;;;"}
1
+ {"version":3,"file":"useInitialValues.js","sources":["../../../../../../../../packages/components/form/src/hooks/useInitialValues.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-11 08:34:34\n * @LastEditors: shen\n * @LastEditTime: 2025-11-04 17:55:18\n * @Description:\n */\nimport type { ProFormPropsType, Entity } from '../type'\n\nimport { onMounted, ref } from 'vue'\nimport { useFetchData } from './useFetchData'\nimport { merge } from '@pro-design-vue/utils'\n\nexport const useInitialValues = (props: ProFormPropsType) => {\n const hasInitial = ref(true)\n const requestLoading = ref(false)\n const initialValues = ref<Entity>({ ...props.initialValues })\n const fetchData = useFetchData({ request: props.request })\n\n onMounted(async () => {\n if (props.request && !props.requestAbort) {\n hasInitial.value = true\n requestLoading.value = true\n const initialData = await fetchData(props.params)\n initialValues.value = merge({}, initialValues.value, initialData) ?? {}\n Promise.resolve().then(() => {\n hasInitial.value = false\n requestLoading.value = false\n })\n }\n })\n\n return { initialValues, hasInitial, requestLoading }\n}\n"],"names":["ref","useFetchData","onMounted"],"mappings":";;;;;;AAaO,MAAM,gBAAA,GAAmB,CAAC,KAAA,KAA4B;AAC3D,EAAA,MAAM,UAAA,GAAaA,QAAI,IAAI,CAAA;AAC3B,EAAA,MAAM,cAAA,GAAiBA,QAAI,KAAK,CAAA;AAChC,EAAA,MAAM,gBAAgBA,OAAA,CAAY,EAAE,GAAG,KAAA,CAAM,eAAe,CAAA;AAC5D,EAAA,MAAM,YAAYC,yBAAA,CAAa,EAAE,OAAA,EAAS,KAAA,CAAM,SAAS,CAAA;AAEzD,EAAAC,aAAA,CAAU,YAAY;AAnBxB,IAAA,IAAA,EAAA;AAoBI,IAAA,IAAI,KAAA,CAAM,OAAA,IAAW,CAAC,KAAA,CAAM,YAAA,EAAc;AACxC,MAAA,UAAA,CAAW,KAAA,GAAQ,IAAA;AACnB,MAAA,cAAA,CAAe,KAAA,GAAQ,IAAA;AACvB,MAAA,MAAM,WAAA,GAAc,MAAM,SAAA,CAAU,KAAA,CAAM,MAAM,CAAA;AAChD,MAAA,aAAA,CAAc,KAAA,GAAA,CAAQ,yBAAM,EAAC,EAAG,cAAc,KAAA,EAAO,WAAW,CAAA,KAA1C,IAAA,GAAA,EAAA,GAA+C,EAAC;AACtE,MAAA,OAAA,CAAQ,OAAA,EAAQ,CAAE,IAAA,CAAK,MAAM;AAC3B,QAAA,UAAA,CAAW,KAAA,GAAQ,KAAA;AACnB,QAAA,cAAA,CAAe,KAAA,GAAQ,KAAA;AAAA,MACzB,CAAC,CAAA;AAAA,IACH;AAAA,EACF,CAAC,CAAA;AAED,EAAA,OAAO,EAAE,aAAA,EAAe,UAAA,EAAY,cAAA,EAAe;AACrD;;;;"}
@@ -286,7 +286,7 @@ const BodyCell = (props, { slots, emit }) => {
286
286
  // }),
287
287
  shouldOpen: (isEllipsis) => {
288
288
  var _a2;
289
- return (tooltipProps == null ? void 0 : tooltipProps.shouldOpen) ? (_a2 = tooltipProps == null ? void 0 : tooltipProps.shouldOpen) == null ? void 0 : _a2.call(tooltipProps, isEllipsis, cellRenderArgs) : true;
289
+ return (tooltipProps == null ? void 0 : tooltipProps.shouldOpen) ? (_a2 = tooltipProps == null ? void 0 : tooltipProps.shouldOpen) == null ? void 0 : _a2.call(tooltipProps, isEllipsis, cellRenderArgs) : isEllipsis;
290
290
  },
291
291
  onCellLeave: () => {
292
292
  emit("cellLeave");
@@ -1 +1 @@
1
- {"version":3,"file":"BodyCell.js","sources":["../../../../../../../../../packages/components/table/src/components/Body/BodyCell.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-09 11:37:05\n * @LastEditors: shen\n * @LastEditTime: 2025-10-27 13:37:00\n * @Description:\n */\nimport type { InnerKeydownPayload, RangeCell } from '../../hooks/RangeInterface'\nimport type { PropType, ExtractPropTypes, FunctionalComponent, VNode } from 'vue'\nimport type { FinallyColumnType, Key, RowType } from '../interface'\n\nimport { withDirectives, createVNode, mergeProps, cloneVNode } from 'vue'\nimport { Badge, Tag } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/TableSlotsContext'\nimport { useInjectTable } from '../context/TableContext'\nimport { useInjectBody } from '../context/BodyContext'\nimport { useInjectRangeStore } from '../../hooks/useRangeStore'\nimport { useInjectLevel } from '../../hooks/useLevel'\nimport { isValidElement, ensureValidVNode } from '../../utils/util'\nimport { isEventSupported } from '../../utils/events'\nimport { isIOSUserAgent } from '../../utils/browser'\nimport { useEditInject } from '../../hooks/useEdit'\nimport { get, isObject, isPromise, runFunction } from '@pro-design-vue/utils'\nimport { cellResize } from '@pro-design-vue/directives'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\nimport RowHandler from '../Drag/RowHandler.vue'\nimport BodyCellTooltip from './BodyCellTooltip'\nimport EditInput from './EditInput.vue'\n\nconst cellProps = {\n prefixCls: String as PropType<string>,\n rowIndex: { type: Number as PropType<number>, required: true },\n flattenRowIndex: { type: Number, required: true },\n rowKey: { type: [Number, String] },\n column: { type: Object as PropType<FinallyColumnType>, default: () => ({}) },\n item: { type: Object as PropType<any>, default: () => ({}) },\n wrapText: { type: Boolean as PropType<boolean>, default: false },\n type: { type: String as PropType<RowType> },\n height: Number as PropType<number>,\n hasAppendNode: Boolean as PropType<boolean>,\n resizeObserver: { type: Object as PropType<ResizeObserver> },\n calMaxHeight: Function,\n tooltipOpen: Boolean as PropType<boolean>,\n getPopupContainer: Function as PropType<() => HTMLElement>,\n onCellLeave: Function,\n editCellKeys: Array as PropType<string[]>,\n onOpenEditor: Function,\n onCloseEditor: Function,\n onMousedown: Function as PropType<(e: any, cellPosition: RangeCell) => void>,\n onMousemove: Function as PropType<(e: any, cellPosition: RangeCell) => void>,\n onKeydown: Function as PropType<(e: KeyboardEvent, payload: InnerKeydownPayload) => void>,\n onClick: Function as PropType<(e: MouseEvent, cellPosition: RangeCell) => void>,\n}\n\ntype CellProps = Partial<ExtractPropTypes<typeof cellProps>>\nlet lastClickTime = 0\n\nconst ValueStatusEnum = {\n success: '#03bf64',\n processing: '#315efb',\n error: '#e8353e',\n warning: '#eb8903',\n}\nconst BodyCell: FunctionalComponent<CellProps> = (props, { slots, emit }) => {\n const { table } = useProConfigInject()\n const tableSlotsContext = useInjectSlots()\n const tableContext = useInjectTable()\n const { onBodyCellContextmenu } = useInjectBody()\n const { getRangeCellClass } = useInjectRangeStore()\n const level = useInjectLevel()\n const { oldValuesMap } = useEditInject()\n const {\n prefixCls,\n column,\n wrapText,\n rowKey,\n item,\n rowIndex,\n hasAppendNode,\n tooltipOpen,\n editCellKeys,\n } = props\n\n const columnKey = column!.columnKey\n const valueEnum = runFunction(column?.valueEnum, props.item)\n const rowDrag =\n typeof column!.rowDrag == 'function'\n ? column!.rowDrag({ record: item, column: column!.originColumn! })\n : !!column!.rowDrag\n const isRowDrag = column!.rowDrag\n\n const sorterState = tableContext.sorterStates.value.find(({ key }) => key === columnKey)\n const sorterOrder = sorterState ? sorterState.sortOrder : null\n const sorterInfo = { columnKey, sorterState, sorterOrder }\n const key = `${props.rowKey} ${columnKey}`\n const value = column!.dataIndex\n ? column!.renderText\n ? column!.renderText(get(item, column!.dataIndex), item, rowIndex!)\n : get(item, column!.dataIndex)\n : undefined\n const valueStatus = runFunction(column?.valueStatus, value, props.item)\n const recordIndexs = tableContext.getIndexsByKey(rowKey!)\n\n let customEditable = false\n let isEditing = editCellKeys?.includes(key)\n\n if (isEditing) {\n const editable =\n 'function' == typeof column!.editable &&\n column!.editable({\n record: item,\n column: column!.originColumn!,\n recordIndexs,\n value,\n })\n customEditable = 'cellEditorSlot' === column!.editable || 'cellEditorSlot' === editable\n isEditing =\n isEditing &&\n ((customEditable && !!tableSlotsContext.cellEditor) ||\n true === column!.editable ||\n !!editable)\n }\n\n let { editableTrigger = ['dblClick'] } = column!\n editableTrigger = Array.isArray(editableTrigger) ? editableTrigger : [editableTrigger]\n\n const cellInnerClass = { [`${prefixCls}-cell-inner`]: true }\n const cellContentClass = {\n [`${prefixCls}-cell-content`]: true,\n [`${prefixCls}-cell-wrap-text`]: column!.wrapText === undefined ? wrapText : column!.wrapText,\n [`${prefixCls}-cell-text-ellipsis`]: !!column!.ellipsis,\n }\n\n const cellContentStyle = {\n textAlign: `${column!.align}`,\n color: valueStatus ? ValueStatusEnum[valueStatus] || 'valueStatus' : undefined,\n }\n\n if (isObject(column!.ellipsis) && column!.ellipsis.line! > 1) {\n cellContentStyle['-webkit-box-orient'] = 'vertical'\n cellContentStyle['-webkit-line-clamp'] = column!.ellipsis.line!\n cellContentStyle['white-space'] = 'normal'\n cellContentStyle['display'] = '-webkit-box'\n cellContentStyle['padding'] = '0 16px'\n }\n\n const cellRender = tableContext.allCellProps.value?.[rowKey!]?.[column!.columnKey] || {}\n const cellProps: any = cellRender.props || {}\n const cellRowSpan = cellProps.rowSpan!\n\n const cellPosition = { rowIndex: props.flattenRowIndex, rowPinned: null, column: column }\n\n const cellClass = {\n [`${prefixCls}-cell`]: true,\n [`${prefixCls}-body-cell`]: true,\n [`${prefixCls}-cell-multi`]: cellRowSpan > 1,\n [`${prefixCls}-cell-hidden`]: cellRowSpan === 0,\n [`${prefixCls}-column-sort`]: sorterInfo.sorterOrder,\n [`${prefixCls}-with-append`]: hasAppendNode,\n [`${prefixCls}-cell-inline-edit`]: isEditing,\n [getRangeCellClass(cellPosition)]: true,\n }\n\n const openEditor = () => {\n const oldValue =\n props.column?.valueGetter?.({\n value,\n record: item,\n column: column!,\n recordIndexs: recordIndexs,\n }) ?? value\n const beforeOpen = tableContext.props?.onBeforeOpenEditor?.(cellRenderArgs)\n if (isPromise(beforeOpen)) {\n beforeOpen.then((res) => {\n if (res) {\n emit('openEditor', key, { [key]: oldValue })\n tableContext.props?.onOpenEditor?.(cellRenderArgs)\n }\n })\n } else {\n if (false !== beforeOpen) {\n emit('openEditor', key, { [key]: oldValue })\n tableContext.props?.onOpenEditor?.(cellRenderArgs)\n }\n }\n }\n\n const closeEditor = (currentKey?: Key) => {\n const beforeClose = tableContext.props?.onBeforeCloseEditor?.({\n ...cellRenderArgs,\n oldValue: oldValuesMap.value[key],\n })\n if (isPromise(beforeClose)) {\n beforeClose.then((res) => {\n if (res) {\n emit('closeEditor', currentKey ?? key)\n tableContext.props?.onCloseEditor?.({\n ...cellRenderArgs,\n oldValue: oldValuesMap.value[key],\n })\n }\n })\n } else {\n if (false !== beforeClose) {\n emit('closeEditor', currentKey ?? key)\n tableContext.props?.onCloseEditor?.({\n ...cellRenderArgs,\n oldValue: oldValuesMap.value[key],\n })\n }\n }\n }\n\n const cellRenderArgs: any = {\n record: item,\n column: column!.originColumn!,\n text: value,\n value,\n index: rowIndex!,\n recordIndexs: tableContext.getIndexsByKey(rowKey!),\n key,\n valueStatus,\n openEditor,\n closeEditor,\n }\n\n let bodyCell: VNode[] = (recordIndexs && tableSlotsContext.bodyCell?.(cellRenderArgs)) || []\n\n const emptyText =\n tableContext.props.columnEmptyText !== false\n ? (tableContext.props.columnEmptyText ?? table?.value?.columnEmptyText ?? '-')\n : ''\n\n if (!ensureValidVNode(bodyCell)) {\n let cellValue\n if (cellRender.children) {\n cellValue = cellRender.children\n } else if (valueEnum) {\n const option = valueEnum[value]\n if (option && option.text) {\n if (option.status) {\n cellValue = createVNode(Badge, {\n status: option.status,\n text: option.text,\n })\n } else if (option.color) {\n cellValue = createVNode(\n Tag,\n {\n color: option.color,\n bordered: false,\n },\n () => option.text,\n )\n } else {\n cellValue = option.text\n }\n } else {\n cellValue = value === null || value === undefined || value === '' ? emptyText : value\n }\n } else {\n cellValue = value === null || value === undefined || value === '' ? emptyText : value\n }\n bodyCell = [\n (typeof cellValue === 'object' && isValidElement(cellValue)) || typeof cellValue !== 'object'\n ? cellValue\n : null,\n ]\n }\n\n const cellResizeValue = {\n resizeObserver: props.resizeObserver,\n calMaxHeight: props.calMaxHeight,\n }\n\n const tooltip = column!.tooltip\n const autoHeight = props.height === undefined && cellRowSpan === 1 && column?.autoHeight\n const altTitle =\n !column!.showTitle || (typeof value !== 'string' && typeof value !== 'number')\n ? undefined\n : value\n const tooltipStatus = !!tooltip && tooltipOpen\n\n const cellKeyProps = tableContext.props.ignoreCellKey ? {} : { key: key }\n\n let cellVNode = createVNode(\n 'div',\n {\n class: cellInnerClass,\n style: cellProps?.style?.height ? '' : `height: ${props.height}px`,\n 'data-cell-auto': autoHeight,\n },\n [\n createVNode(\n 'div',\n mergeProps(\n {\n class: cellContentClass,\n style: cellContentStyle,\n title: altTitle,\n },\n cellKeyProps,\n ),\n [hasAppendNode ? slots.appendNode?.() : null, bodyCell],\n ),\n ],\n )\n cellVNode = autoHeight ? withDirectives(cellVNode, [[cellResize, cellResizeValue]]) : cellVNode\n let renderCellVNode: any = null\n let showTooltip = tooltipStatus\n if (tooltipStatus) {\n const tooltipProps = { ...(column!.tooltip === true ? {} : column!.tooltip) } as any\n if (tooltipProps.title) {\n tooltipProps.title = tooltipProps.title(cellRenderArgs)\n showTooltip = !(!tooltipProps.title && tooltipProps.title !== 0)\n } else {\n tooltipProps.title = value\n showTooltip = !(!tooltipProps.title && tooltipProps.title !== 0)\n }\n\n renderCellVNode = createVNode(\n BodyCellTooltip,\n {\n getPopupContainer: props.getPopupContainer,\n align: { offset: [0, 13] },\n tooltipProps,\n open: showTooltip,\n allowEnter: tooltipProps?.allowEnter,\n // shouldOpen:\n // \t!tooltipProps?.shouldOpen ||\n // \t(isEllipsis => {\n // \t\treturn tooltipProps?.shouldOpen?.(isEllipsis, cellRenderArgs)\n // \t}),\n shouldOpen: (isEllipsis) => {\n return tooltipProps?.shouldOpen\n ? tooltipProps?.shouldOpen?.(isEllipsis, cellRenderArgs)\n : true\n // : isEllipsis\n },\n onCellLeave: () => {\n emit('cellLeave')\n },\n },\n {\n default: () => [\n false !== tooltipProps.allowEnter\n ? cellVNode\n : cloneVNode(cellVNode, {\n onMouseleave: () => {\n emit('cellLeave')\n },\n }),\n ],\n title: () => tableSlotsContext.tooltipTitle?.(cellRenderArgs),\n },\n )\n } else {\n renderCellVNode = cellVNode\n }\n\n const onDblclick = () => {\n editableTrigger.includes('dblClick') && openEditor()\n }\n\n const editInputRender = isEditing\n ? createVNode(\n EditInput,\n {\n prefixCls,\n recordIndexs,\n rowKey,\n cellKey: key,\n column: column,\n record: item,\n onCloseEditor: closeEditor,\n value,\n customEditable,\n getPopupContainer: props.getPopupContainer,\n multiple: editCellKeys!.length > 1,\n autoHeight,\n },\n null,\n )\n : null\n\n return createVNode(\n 'div',\n mergeProps(cellProps, {\n onMouseleave: () => {\n showTooltip || emit('cellLeave')\n },\n tabindex: '-1',\n role: 'cell',\n 'data-column-key': columnKey,\n class: cellClass,\n onContextmenu: (e) => {\n if (\n (tableContext.props.hasContextmenuPopup || tableContext.props.rangeSelection) &&\n 0 === e.button &&\n e.ctrlKey\n ) {\n e.preventDefault()\n } else {\n onBodyCellContextmenu(e, cellRenderArgs, props.type!)\n editableTrigger.includes('contextmenu') && openEditor()\n }\n },\n onDblclick,\n onClick: (e: MouseEvent) => {\n tableContext.props?.onCellClick?.(e, cellRenderArgs)\n if (\n (() => {\n if (!isIOSUserAgent() || isEventSupported('dblclick')) return false\n const now = new Date().getTime()\n const is = now - lastClickTime < 200\n lastClickTime = now\n return is\n })()\n ) {\n onDblclick()\n e.preventDefault()\n return\n }\n emit('click', e, cellPosition)\n editableTrigger.includes('click') && openEditor()\n },\n onMousedown: (e: any) => {\n emit('mousedown', e, cellPosition)\n },\n onMousemove: (e: any) => {\n emit('mousemove', e, cellPosition)\n },\n onKeydown: (e: KeyboardEvent) => {\n emit('keydown', e, { cellPosition, isEditing })\n },\n 'data-level': level,\n 'aria-selected': 'true',\n }),\n [\n isRowDrag\n ? createVNode(\n RowHandler,\n {\n disabled: !rowDrag,\n columnKey,\n column: column!.originColumn,\n },\n { label: () => bodyCell },\n )\n : null,\n renderCellVNode,\n autoHeight && editInputRender\n ? createVNode(\n 'label',\n {\n class: `${prefixCls}-cell-edit-wrapper`,\n onMousedown: (e) => e.stopPropagation(),\n },\n [withDirectives(editInputRender, [[cellResize, cellResizeValue]])],\n )\n : editInputRender\n ? createVNode(\n 'label',\n {\n class: `${prefixCls}-cell-edit-wrapper`,\n onMousedown: (e) => e.stopPropagation(),\n },\n [editInputRender],\n )\n : null,\n ],\n )\n}\n\nBodyCell.props = cellProps\nexport default BodyCell\n"],"names":["useProConfigInject","useInjectSlots","useInjectTable","useInjectBody","useInjectRangeStore","useInjectLevel","useEditInject","runFunction","key","get","isObject","cellProps","_a","_b","_c","_d","_e","_f","_g","isPromise","ensureValidVNode","createVNode","Badge","Tag","isValidElement","mergeProps","withDirectives","cellResize","BodyCellTooltip","cloneVNode","EditInput","isIOSUserAgent","isEventSupported","RowHandler"],"mappings":"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"}
1
+ {"version":3,"file":"BodyCell.js","sources":["../../../../../../../../../packages/components/table/src/components/Body/BodyCell.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-09 11:37:05\n * @LastEditors: shen\n * @LastEditTime: 2025-11-04 18:28:12\n * @Description:\n */\nimport type { InnerKeydownPayload, RangeCell } from '../../hooks/RangeInterface'\nimport type { PropType, ExtractPropTypes, FunctionalComponent, VNode } from 'vue'\nimport type { FinallyColumnType, Key, RowType } from '../interface'\n\nimport { withDirectives, createVNode, mergeProps, cloneVNode } from 'vue'\nimport { Badge, Tag } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/TableSlotsContext'\nimport { useInjectTable } from '../context/TableContext'\nimport { useInjectBody } from '../context/BodyContext'\nimport { useInjectRangeStore } from '../../hooks/useRangeStore'\nimport { useInjectLevel } from '../../hooks/useLevel'\nimport { isValidElement, ensureValidVNode } from '../../utils/util'\nimport { isEventSupported } from '../../utils/events'\nimport { isIOSUserAgent } from '../../utils/browser'\nimport { useEditInject } from '../../hooks/useEdit'\nimport { get, isObject, isPromise, runFunction } from '@pro-design-vue/utils'\nimport { cellResize } from '@pro-design-vue/directives'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\nimport RowHandler from '../Drag/RowHandler.vue'\nimport BodyCellTooltip from './BodyCellTooltip'\nimport EditInput from './EditInput.vue'\n\nconst cellProps = {\n prefixCls: String as PropType<string>,\n rowIndex: { type: Number as PropType<number>, required: true },\n flattenRowIndex: { type: Number, required: true },\n rowKey: { type: [Number, String] },\n column: { type: Object as PropType<FinallyColumnType>, default: () => ({}) },\n item: { type: Object as PropType<any>, default: () => ({}) },\n wrapText: { type: Boolean as PropType<boolean>, default: false },\n type: { type: String as PropType<RowType> },\n height: Number as PropType<number>,\n hasAppendNode: Boolean as PropType<boolean>,\n resizeObserver: { type: Object as PropType<ResizeObserver> },\n calMaxHeight: Function,\n tooltipOpen: Boolean as PropType<boolean>,\n getPopupContainer: Function as PropType<() => HTMLElement>,\n onCellLeave: Function,\n editCellKeys: Array as PropType<string[]>,\n onOpenEditor: Function,\n onCloseEditor: Function,\n onMousedown: Function as PropType<(e: any, cellPosition: RangeCell) => void>,\n onMousemove: Function as PropType<(e: any, cellPosition: RangeCell) => void>,\n onKeydown: Function as PropType<(e: KeyboardEvent, payload: InnerKeydownPayload) => void>,\n onClick: Function as PropType<(e: MouseEvent, cellPosition: RangeCell) => void>,\n}\n\ntype CellProps = Partial<ExtractPropTypes<typeof cellProps>>\nlet lastClickTime = 0\n\nconst ValueStatusEnum = {\n success: '#03bf64',\n processing: '#315efb',\n error: '#e8353e',\n warning: '#eb8903',\n}\nconst BodyCell: FunctionalComponent<CellProps> = (props, { slots, emit }) => {\n const { table } = useProConfigInject()\n const tableSlotsContext = useInjectSlots()\n const tableContext = useInjectTable()\n const { onBodyCellContextmenu } = useInjectBody()\n const { getRangeCellClass } = useInjectRangeStore()\n const level = useInjectLevel()\n const { oldValuesMap } = useEditInject()\n const {\n prefixCls,\n column,\n wrapText,\n rowKey,\n item,\n rowIndex,\n hasAppendNode,\n tooltipOpen,\n editCellKeys,\n } = props\n\n const columnKey = column!.columnKey\n const valueEnum = runFunction(column?.valueEnum, props.item)\n const rowDrag =\n typeof column!.rowDrag == 'function'\n ? column!.rowDrag({ record: item, column: column!.originColumn! })\n : !!column!.rowDrag\n const isRowDrag = column!.rowDrag\n\n const sorterState = tableContext.sorterStates.value.find(({ key }) => key === columnKey)\n const sorterOrder = sorterState ? sorterState.sortOrder : null\n const sorterInfo = { columnKey, sorterState, sorterOrder }\n const key = `${props.rowKey} ${columnKey}`\n const value = column!.dataIndex\n ? column!.renderText\n ? column!.renderText(get(item, column!.dataIndex), item, rowIndex!)\n : get(item, column!.dataIndex)\n : undefined\n const valueStatus = runFunction(column?.valueStatus, value, props.item)\n const recordIndexs = tableContext.getIndexsByKey(rowKey!)\n\n let customEditable = false\n let isEditing = editCellKeys?.includes(key)\n\n if (isEditing) {\n const editable =\n 'function' == typeof column!.editable &&\n column!.editable({\n record: item,\n column: column!.originColumn!,\n recordIndexs,\n value,\n })\n customEditable = 'cellEditorSlot' === column!.editable || 'cellEditorSlot' === editable\n isEditing =\n isEditing &&\n ((customEditable && !!tableSlotsContext.cellEditor) ||\n true === column!.editable ||\n !!editable)\n }\n\n let { editableTrigger = ['dblClick'] } = column!\n editableTrigger = Array.isArray(editableTrigger) ? editableTrigger : [editableTrigger]\n\n const cellInnerClass = { [`${prefixCls}-cell-inner`]: true }\n const cellContentClass = {\n [`${prefixCls}-cell-content`]: true,\n [`${prefixCls}-cell-wrap-text`]: column!.wrapText === undefined ? wrapText : column!.wrapText,\n [`${prefixCls}-cell-text-ellipsis`]: !!column!.ellipsis,\n }\n\n const cellContentStyle = {\n textAlign: `${column!.align}`,\n color: valueStatus ? ValueStatusEnum[valueStatus] || 'valueStatus' : undefined,\n }\n\n if (isObject(column!.ellipsis) && column!.ellipsis.line! > 1) {\n cellContentStyle['-webkit-box-orient'] = 'vertical'\n cellContentStyle['-webkit-line-clamp'] = column!.ellipsis.line!\n cellContentStyle['white-space'] = 'normal'\n cellContentStyle['display'] = '-webkit-box'\n cellContentStyle['padding'] = '0 16px'\n }\n\n const cellRender = tableContext.allCellProps.value?.[rowKey!]?.[column!.columnKey] || {}\n const cellProps: any = cellRender.props || {}\n const cellRowSpan = cellProps.rowSpan!\n\n const cellPosition = { rowIndex: props.flattenRowIndex, rowPinned: null, column: column }\n\n const cellClass = {\n [`${prefixCls}-cell`]: true,\n [`${prefixCls}-body-cell`]: true,\n [`${prefixCls}-cell-multi`]: cellRowSpan > 1,\n [`${prefixCls}-cell-hidden`]: cellRowSpan === 0,\n [`${prefixCls}-column-sort`]: sorterInfo.sorterOrder,\n [`${prefixCls}-with-append`]: hasAppendNode,\n [`${prefixCls}-cell-inline-edit`]: isEditing,\n [getRangeCellClass(cellPosition)]: true,\n }\n\n const openEditor = () => {\n const oldValue =\n props.column?.valueGetter?.({\n value,\n record: item,\n column: column!,\n recordIndexs: recordIndexs,\n }) ?? value\n const beforeOpen = tableContext.props?.onBeforeOpenEditor?.(cellRenderArgs)\n if (isPromise(beforeOpen)) {\n beforeOpen.then((res) => {\n if (res) {\n emit('openEditor', key, { [key]: oldValue })\n tableContext.props?.onOpenEditor?.(cellRenderArgs)\n }\n })\n } else {\n if (false !== beforeOpen) {\n emit('openEditor', key, { [key]: oldValue })\n tableContext.props?.onOpenEditor?.(cellRenderArgs)\n }\n }\n }\n\n const closeEditor = (currentKey?: Key) => {\n const beforeClose = tableContext.props?.onBeforeCloseEditor?.({\n ...cellRenderArgs,\n oldValue: oldValuesMap.value[key],\n })\n if (isPromise(beforeClose)) {\n beforeClose.then((res) => {\n if (res) {\n emit('closeEditor', currentKey ?? key)\n tableContext.props?.onCloseEditor?.({\n ...cellRenderArgs,\n oldValue: oldValuesMap.value[key],\n })\n }\n })\n } else {\n if (false !== beforeClose) {\n emit('closeEditor', currentKey ?? key)\n tableContext.props?.onCloseEditor?.({\n ...cellRenderArgs,\n oldValue: oldValuesMap.value[key],\n })\n }\n }\n }\n\n const cellRenderArgs: any = {\n record: item,\n column: column!.originColumn!,\n text: value,\n value,\n index: rowIndex!,\n recordIndexs: tableContext.getIndexsByKey(rowKey!),\n key,\n valueStatus,\n openEditor,\n closeEditor,\n }\n\n let bodyCell: VNode[] = (recordIndexs && tableSlotsContext.bodyCell?.(cellRenderArgs)) || []\n\n const emptyText =\n tableContext.props.columnEmptyText !== false\n ? (tableContext.props.columnEmptyText ?? table?.value?.columnEmptyText ?? '-')\n : ''\n\n if (!ensureValidVNode(bodyCell)) {\n let cellValue\n if (cellRender.children) {\n cellValue = cellRender.children\n } else if (valueEnum) {\n const option = valueEnum[value]\n if (option && option.text) {\n if (option.status) {\n cellValue = createVNode(Badge, {\n status: option.status,\n text: option.text,\n })\n } else if (option.color) {\n cellValue = createVNode(\n Tag,\n {\n color: option.color,\n bordered: false,\n },\n () => option.text,\n )\n } else {\n cellValue = option.text\n }\n } else {\n cellValue = value === null || value === undefined || value === '' ? emptyText : value\n }\n } else {\n cellValue = value === null || value === undefined || value === '' ? emptyText : value\n }\n bodyCell = [\n (typeof cellValue === 'object' && isValidElement(cellValue)) || typeof cellValue !== 'object'\n ? cellValue\n : null,\n ]\n }\n\n const cellResizeValue = {\n resizeObserver: props.resizeObserver,\n calMaxHeight: props.calMaxHeight,\n }\n\n const tooltip = column!.tooltip\n const autoHeight = props.height === undefined && cellRowSpan === 1 && column?.autoHeight\n const altTitle =\n !column!.showTitle || (typeof value !== 'string' && typeof value !== 'number')\n ? undefined\n : value\n const tooltipStatus = !!tooltip && tooltipOpen\n\n const cellKeyProps = tableContext.props.ignoreCellKey ? {} : { key: key }\n\n let cellVNode = createVNode(\n 'div',\n {\n class: cellInnerClass,\n style: cellProps?.style?.height ? '' : `height: ${props.height}px`,\n 'data-cell-auto': autoHeight,\n },\n [\n createVNode(\n 'div',\n mergeProps(\n {\n class: cellContentClass,\n style: cellContentStyle,\n title: altTitle,\n },\n cellKeyProps,\n ),\n [hasAppendNode ? slots.appendNode?.() : null, bodyCell],\n ),\n ],\n )\n cellVNode = autoHeight ? withDirectives(cellVNode, [[cellResize, cellResizeValue]]) : cellVNode\n let renderCellVNode: any = null\n let showTooltip = tooltipStatus\n if (tooltipStatus) {\n const tooltipProps = { ...(column!.tooltip === true ? {} : column!.tooltip) } as any\n if (tooltipProps.title) {\n tooltipProps.title = tooltipProps.title(cellRenderArgs)\n showTooltip = !(!tooltipProps.title && tooltipProps.title !== 0)\n } else {\n tooltipProps.title = value\n showTooltip = !(!tooltipProps.title && tooltipProps.title !== 0)\n }\n\n // if (!tooltipProps.placement) {\n // if (!column!.align || column!.align === 'left') {\n // tooltipProps.placement = 'topLeft'\n // } else if (column!.align === 'center') {\n // tooltipProps.placement = 'top'\n // } else {\n // tooltipProps.placement = 'topRight'\n // }\n // }\n\n renderCellVNode = createVNode(\n BodyCellTooltip,\n {\n getPopupContainer: props.getPopupContainer,\n align: { offset: [0, 13] },\n tooltipProps,\n open: showTooltip,\n allowEnter: tooltipProps?.allowEnter,\n // shouldOpen:\n // \t!tooltipProps?.shouldOpen ||\n // \t(isEllipsis => {\n // \t\treturn tooltipProps?.shouldOpen?.(isEllipsis, cellRenderArgs)\n // \t}),\n shouldOpen: (isEllipsis) => {\n return tooltipProps?.shouldOpen\n ? tooltipProps?.shouldOpen?.(isEllipsis, cellRenderArgs)\n : isEllipsis\n },\n onCellLeave: () => {\n emit('cellLeave')\n },\n },\n {\n default: () => [\n false !== tooltipProps.allowEnter\n ? cellVNode\n : cloneVNode(cellVNode, {\n onMouseleave: () => {\n emit('cellLeave')\n },\n }),\n ],\n title: () => tableSlotsContext.tooltipTitle?.(cellRenderArgs),\n },\n )\n } else {\n renderCellVNode = cellVNode\n }\n\n const onDblclick = () => {\n editableTrigger.includes('dblClick') && openEditor()\n }\n\n const editInputRender = isEditing\n ? createVNode(\n EditInput,\n {\n prefixCls,\n recordIndexs,\n rowKey,\n cellKey: key,\n column: column,\n record: item,\n onCloseEditor: closeEditor,\n value,\n customEditable,\n getPopupContainer: props.getPopupContainer,\n multiple: editCellKeys!.length > 1,\n autoHeight,\n },\n null,\n )\n : null\n\n return createVNode(\n 'div',\n mergeProps(cellProps, {\n onMouseleave: () => {\n showTooltip || emit('cellLeave')\n },\n tabindex: '-1',\n role: 'cell',\n 'data-column-key': columnKey,\n class: cellClass,\n onContextmenu: (e) => {\n if (\n (tableContext.props.hasContextmenuPopup || tableContext.props.rangeSelection) &&\n 0 === e.button &&\n e.ctrlKey\n ) {\n e.preventDefault()\n } else {\n onBodyCellContextmenu(e, cellRenderArgs, props.type!)\n editableTrigger.includes('contextmenu') && openEditor()\n }\n },\n onDblclick,\n onClick: (e: MouseEvent) => {\n tableContext.props?.onCellClick?.(e, cellRenderArgs)\n if (\n (() => {\n if (!isIOSUserAgent() || isEventSupported('dblclick')) return false\n const now = new Date().getTime()\n const is = now - lastClickTime < 200\n lastClickTime = now\n return is\n })()\n ) {\n onDblclick()\n e.preventDefault()\n return\n }\n emit('click', e, cellPosition)\n editableTrigger.includes('click') && openEditor()\n },\n onMousedown: (e: any) => {\n emit('mousedown', e, cellPosition)\n },\n onMousemove: (e: any) => {\n emit('mousemove', e, cellPosition)\n },\n onKeydown: (e: KeyboardEvent) => {\n emit('keydown', e, { cellPosition, isEditing })\n },\n 'data-level': level,\n 'aria-selected': 'true',\n }),\n [\n isRowDrag\n ? createVNode(\n RowHandler,\n {\n disabled: !rowDrag,\n columnKey,\n column: column!.originColumn,\n },\n { label: () => bodyCell },\n )\n : null,\n renderCellVNode,\n autoHeight && editInputRender\n ? createVNode(\n 'label',\n {\n class: `${prefixCls}-cell-edit-wrapper`,\n onMousedown: (e) => e.stopPropagation(),\n },\n [withDirectives(editInputRender, [[cellResize, cellResizeValue]])],\n )\n : editInputRender\n ? createVNode(\n 'label',\n {\n class: `${prefixCls}-cell-edit-wrapper`,\n onMousedown: (e) => e.stopPropagation(),\n },\n [editInputRender],\n )\n : null,\n ],\n )\n}\n\nBodyCell.props = cellProps\nexport default BodyCell\n"],"names":["useProConfigInject","useInjectSlots","useInjectTable","useInjectBody","useInjectRangeStore","useInjectLevel","useEditInject","runFunction","key","get","isObject","cellProps","_a","_b","_c","_d","_e","_f","_g","isPromise","ensureValidVNode","createVNode","Badge","Tag","isValidElement","mergeProps","withDirectives","cellResize","BodyCellTooltip","cloneVNode","EditInput","isIOSUserAgent","isEventSupported","RowHandler"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA6BA,MAAM,SAAA,GAAY;AAAA,EAChB,SAAA,EAAW,MAAA;AAAA,EACX,QAAA,EAAU,EAAE,IAAA,EAAM,MAAA,EAA4B,UAAU,IAAA,EAAK;AAAA,EAC7D,eAAA,EAAiB,EAAE,IAAA,EAAM,MAAA,EAAQ,UAAU,IAAA,EAAK;AAAA,EAChD,QAAQ,EAAE,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA,EAAE;AAAA,EACjC,QAAQ,EAAE,IAAA,EAAM,QAAuC,OAAA,EAAS,OAAO,EAAC,CAAA,EAAG;AAAA,EAC3E,MAAM,EAAE,IAAA,EAAM,QAAyB,OAAA,EAAS,OAAO,EAAC,CAAA,EAAG;AAAA,EAC3D,QAAA,EAAU,EAAE,IAAA,EAAM,OAAA,EAA8B,SAAS,KAAA,EAAM;AAAA,EAC/D,IAAA,EAAM,EAAE,IAAA,EAAM,MAAA,EAA4B;AAAA,EAC1C,MAAA,EAAQ,MAAA;AAAA,EACR,aAAA,EAAe,OAAA;AAAA,EACf,cAAA,EAAgB,EAAE,IAAA,EAAM,MAAA,EAAmC;AAAA,EAC3D,YAAA,EAAc,QAAA;AAAA,EACd,WAAA,EAAa,OAAA;AAAA,EACb,iBAAA,EAAmB,QAAA;AAAA,EACnB,WAAA,EAAa,QAAA;AAAA,EACb,YAAA,EAAc,KAAA;AAAA,EACd,YAAA,EAAc,QAAA;AAAA,EACd,aAAA,EAAe,QAAA;AAAA,EACf,WAAA,EAAa,QAAA;AAAA,EACb,WAAA,EAAa,QAAA;AAAA,EACb,SAAA,EAAW,QAAA;AAAA,EACX,OAAA,EAAS;AACX,CAAA;AAGA,IAAI,aAAA,GAAgB,CAAA;AAEpB,MAAM,eAAA,GAAkB;AAAA,EACtB,OAAA,EAAS,SAAA;AAAA,EACT,UAAA,EAAY,SAAA;AAAA,EACZ,KAAA,EAAO,SAAA;AAAA,EACP,OAAA,EAAS;AACX,CAAA;AACA,MAAM,WAA2C,CAAC,KAAA,EAAO,EAAE,KAAA,EAAO,MAAK,KAAM;AA/D7E,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAgEE,EAAA,MAAM,EAAE,KAAA,EAAM,GAAIA,0BAAA,EAAmB;AACrC,EAAA,MAAM,oBAAoBC,gCAAA,EAAe;AACzC,EAAA,MAAM,eAAeC,2BAAA,EAAe;AACpC,EAAA,MAAM,EAAE,qBAAA,EAAsB,GAAIC,yBAAA,EAAc;AAChD,EAAA,MAAM,EAAE,iBAAA,EAAkB,GAAIC,iCAAA,EAAoB;AAClD,EAAA,MAAM,QAAQC,uBAAA,EAAe;AAC7B,EAAA,MAAM,EAAE,YAAA,EAAa,GAAIC,qBAAA,EAAc;AACvC,EAAA,MAAM;AAAA,IACJ,SAAA;AAAA,IACA,MAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA;AAAA,IACA,IAAA;AAAA,IACA,QAAA;AAAA,IACA,aAAA;AAAA,IACA,WAAA;AAAA,IACA;AAAA,GACF,GAAI,KAAA;AAEJ,EAAA,MAAM,YAAY,MAAA,CAAQ,SAAA;AAC1B,EAAA,MAAM,SAAA,GAAYC,uBAAA,CAAY,MAAA,IAAA,IAAA,GAAA,MAAA,GAAA,MAAA,CAAQ,SAAA,EAAW,MAAM,IAAI,CAAA;AAC3D,EAAA,MAAM,UACJ,OAAO,MAAA,CAAQ,OAAA,IAAW,UAAA,GACtB,OAAQ,OAAA,CAAQ,EAAE,MAAA,EAAQ,IAAA,EAAM,QAAQ,MAAA,CAAQ,YAAA,EAAe,CAAA,GAC/D,CAAC,CAAC,MAAA,CAAQ,OAAA;AAChB,EAAA,MAAM,YAAY,MAAA,CAAQ,OAAA;AAE1B,EAAA,MAAM,WAAA,GAAc,YAAA,CAAa,YAAA,CAAa,KAAA,CAAM,IAAA,CAAK,CAAC,EAAE,GAAA,EAAAC,IAAAA,EAAI,KAAMA,IAAAA,KAAQ,SAAS,CAAA;AACvF,EAAA,MAAM,WAAA,GAAc,WAAA,GAAc,WAAA,CAAY,SAAA,GAAY,IAAA;AAC1D,EAAA,MAAM,UAAA,GAAa,EAA0B,WAAA,EAAY;AACzD,EAAA,MAAM,GAAA,GAAM,CAAA,EAAG,KAAA,CAAM,MAAM,IAAI,SAAS,CAAA,CAAA;AACxC,EAAA,MAAM,QAAQ,MAAA,CAAQ,SAAA,GAClB,OAAQ,UAAA,GACN,MAAA,CAAQ,WAAWC,iBAAA,CAAI,IAAA,EAAM,OAAQ,SAAS,CAAA,EAAG,MAAM,QAAS,CAAA,GAChEA,kBAAI,IAAA,EAAM,MAAA,CAAQ,SAAS,CAAA,GAC7B,MAAA;AACJ,EAAA,MAAM,cAAcF,uBAAA,CAAY,MAAA,IAAA,IAAA,GAAA,MAAA,GAAA,MAAA,CAAQ,WAAA,EAAa,KAAA,EAAO,MAAM,IAAI,CAAA;AACtE,EAAA,MAAM,YAAA,GAAe,YAAA,CAAa,cAAA,CAAe,MAAO,CAAA;AAExD,EAAA,IAAI,cAAA,GAAiB,KAAA;AACrB,EAAA,IAAI,SAAA,GAAY,6CAAc,QAAA,CAAS,GAAA,CAAA;AAEvC,EAAA,IAAI,SAAA,EAAW;AACb,IAAA,MAAM,WACJ,UAAA,IAAc,OAAO,MAAA,CAAQ,QAAA,IAC7B,OAAQ,QAAA,CAAS;AAAA,MACf,MAAA,EAAQ,IAAA;AAAA,MACR,QAAQ,MAAA,CAAQ,YAAA;AAAA,MAChB,YAAA;AAAA,MACA;AAAA,KACD,CAAA;AACH,IAAA,cAAA,GAAiB,gBAAA,KAAqB,MAAA,CAAQ,QAAA,IAAY,gBAAA,KAAqB,QAAA;AAC/E,IAAA,SAAA,GACE,SAAA,KACE,cAAA,IAAkB,CAAC,CAAC,iBAAA,CAAkB,cACtC,IAAA,KAAS,MAAA,CAAQ,QAAA,IACjB,CAAC,CAAC,QAAA,CAAA;AAAA,EACR;AAEA,EAAA,IAAI,EAAE,eAAA,GAAkB,CAAC,UAAU,GAAE,GAAI,MAAA;AACzC,EAAA,eAAA,GAAkB,MAAM,OAAA,CAAQ,eAAe,CAAA,GAAI,eAAA,GAAkB,CAAC,eAAe,CAAA;AAErF,EAAA,MAAM,iBAAiB,EAAE,CAAC,GAAG,SAAS,CAAA,WAAA,CAAa,GAAG,IAAA,EAAK;AAC3D,EAAA,MAAM,gBAAA,GAAmB;AAAA,IACvB,CAAC,CAAA,EAAG,SAAS,CAAA,aAAA,CAAe,GAAG,IAAA;AAAA,IAC/B,CAAC,GAAG,SAAS,CAAA,eAAA,CAAiB,GAAG,MAAA,CAAQ,QAAA,KAAa,MAAA,GAAY,QAAA,GAAW,MAAA,CAAQ,QAAA;AAAA,IACrF,CAAC,CAAA,EAAG,SAAS,qBAAqB,GAAG,CAAC,CAAC,MAAA,CAAQ;AAAA,GACjD;AAEA,EAAA,MAAM,gBAAA,GAAmB;AAAA,IACvB,SAAA,EAAW,CAAA,EAAG,MAAA,CAAQ,KAAK,CAAA,CAAA;AAAA,IAC3B,KAAA,EAAO,WAAA,GAAc,eAAA,CAAgB,WAAW,KAAK,aAAA,GAAgB;AAAA,GACvE;AAEA,EAAA,IAAIG,kBAAS,MAAA,CAAQ,QAAQ,KAAK,MAAA,CAAQ,QAAA,CAAS,OAAQ,CAAA,EAAG;AAC5D,IAAA,gBAAA,CAAiB,oBAAoB,CAAA,GAAI,UAAA;AACzC,IAAA,gBAAA,CAAiB,oBAAoB,CAAA,GAAI,MAAA,CAAQ,QAAA,CAAS,IAAA;AAC1D,IAAA,gBAAA,CAAiB,aAAa,CAAA,GAAI,QAAA;AAClC,IAAA,gBAAA,CAAiB,SAAS,CAAA,GAAI,aAAA;AAC9B,IAAA,gBAAA,CAAiB,SAAS,CAAA,GAAI,QAAA;AAAA,EAChC;AAEA,EAAA,MAAM,UAAA,GAAA,CAAA,CAAa,wBAAa,YAAA,CAAa,KAAA,KAA1B,mBAAkC,MAAA,CAAA,KAAlC,IAAA,GAAA,MAAA,GAAA,EAAA,CAA6C,MAAA,CAAQ,SAAA,CAAA,KAAc,EAAC;AACvF,EAAA,MAAMC,UAAAA,GAAiB,UAAA,CAAW,KAAA,IAAS,EAAC;AAC5C,EAAA,MAAM,cAAcA,UAAAA,CAAU,OAAA;AAE9B,EAAA,MAAM,eAAe,EAAE,QAAA,EAAU,MAAM,eAAA,EAAiB,SAAA,EAAW,MAAM,MAAA,EAAe;AAExF,EAAA,MAAM,SAAA,GAAY;AAAA,IAChB,CAAC,CAAA,EAAG,SAAS,CAAA,KAAA,CAAO,GAAG,IAAA;AAAA,IACvB,CAAC,CAAA,EAAG,SAAS,CAAA,UAAA,CAAY,GAAG,IAAA;AAAA,IAC5B,CAAC,CAAA,EAAG,SAAS,CAAA,WAAA,CAAa,GAAG,WAAA,GAAc,CAAA;AAAA,IAC3C,CAAC,CAAA,EAAG,SAAS,CAAA,YAAA,CAAc,GAAG,WAAA,KAAgB,CAAA;AAAA,IAC9C,CAAC,CAAA,EAAG,SAAS,CAAA,YAAA,CAAc,GAAG,UAAA,CAAW,WAAA;AAAA,IACzC,CAAC,CAAA,EAAG,SAAS,CAAA,YAAA,CAAc,GAAG,aAAA;AAAA,IAC9B,CAAC,CAAA,EAAG,SAAS,CAAA,iBAAA,CAAmB,GAAG,SAAA;AAAA,IACnC,CAAC,iBAAA,CAAkB,YAAY,CAAC,GAAG;AAAA,GACrC;AAEA,EAAA,MAAM,aAAa,MAAM;AAnK3B,IAAA,IAAAC,GAAAA,EAAAC,GAAAA,EAAAC,GAAAA,EAAAC,GAAAA,EAAAC,KAAAC,GAAAA,EAAAC,GAAAA;AAoKI,IAAA,MAAM,QAAA,GAAA,CACJJ,GAAAA,GAAAA,CAAAD,GAAAA,GAAAA,CAAAD,GAAAA,GAAA,KAAA,CAAM,MAAA,KAAN,IAAA,GAAA,MAAA,GAAAA,GAAAA,CAAc,WAAA,KAAd,IAAA,GAAA,MAAA,GAAAC,GAAAA,CAAA,IAAA,CAAAD,GAAAA,EAA4B;AAAA,MAC1B,KAAA;AAAA,MACA,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA;AAAA,MACA;AAAA,KACF,CAAA,KALA,OAAAE,GAAAA,GAKM,KAAA;AACR,IAAA,MAAM,UAAA,GAAA,CAAaE,GAAAA,GAAAA,CAAAD,GAAAA,GAAA,YAAA,CAAa,KAAA,KAAb,IAAA,GAAA,MAAA,GAAAA,GAAAA,CAAoB,kBAAA,KAApB,IAAA,GAAA,MAAA,GAAAC,GAAAA,CAAA,IAAA,CAAAD,GAAAA,EAAyC,cAAA,CAAA;AAC5D,IAAA,IAAII,kBAAA,CAAU,UAAU,CAAA,EAAG;AACzB,MAAA,UAAA,CAAW,IAAA,CAAK,CAAC,GAAA,KAAQ;AA7K/B,QAAA,IAAAP,GAAAA,EAAAC,GAAAA;AA8KQ,QAAA,IAAI,GAAA,EAAK;AACP,UAAA,IAAA,CAAK,cAAc,GAAA,EAAK,EAAE,CAAC,GAAG,GAAG,UAAU,CAAA;AAC3C,UAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAAA,GAAA,YAAA,CAAa,KAAA,KAAb,IAAA,GAAA,MAAA,GAAAA,IAAoB,YAAA,KAApB,IAAA,GAAA,MAAA,GAAAC,GAAAA,CAAA,IAAA,CAAAD,GAAAA,EAAmC,cAAA,CAAA;AAAA,QACrC;AAAA,MACF,CAAC,CAAA;AAAA,IACH,CAAA,MAAO;AACL,MAAA,IAAI,UAAU,UAAA,EAAY;AACxB,QAAA,IAAA,CAAK,cAAc,GAAA,EAAK,EAAE,CAAC,GAAG,GAAG,UAAU,CAAA;AAC3C,QAAA,CAAAM,GAAAA,GAAAA,CAAAD,GAAAA,GAAA,YAAA,CAAa,KAAA,KAAb,IAAA,GAAA,MAAA,GAAAA,IAAoB,YAAA,KAApB,IAAA,GAAA,MAAA,GAAAC,GAAAA,CAAA,IAAA,CAAAD,GAAAA,EAAmC,cAAA,CAAA;AAAA,MACrC;AAAA,IACF;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,WAAA,GAAc,CAAC,UAAA,KAAqB;AA3L5C,IAAA,IAAAL,GAAAA,EAAAC,KAAAC,GAAAA,EAAAC,GAAAA;AA4LI,IAAA,MAAM,WAAA,GAAA,CAAcF,GAAAA,GAAAA,CAAAD,GAAAA,GAAA,YAAA,CAAa,KAAA,KAAb,IAAA,GAAA,MAAA,GAAAA,GAAAA,CAAoB,mBAAA,KAApB,IAAA,GAAA,MAAA,GAAAC,GAAAA,CAAA,IAAA,CAAAD,GAAAA,EAA0C;AAAA,MAC5D,GAAG,cAAA;AAAA,MACH,QAAA,EAAU,YAAA,CAAa,KAAA,CAAM,GAAG;AAAA,KAClC,CAAA;AACA,IAAA,IAAIO,kBAAA,CAAU,WAAW,CAAA,EAAG;AAC1B,MAAA,WAAA,CAAY,IAAA,CAAK,CAAC,GAAA,KAAQ;AAjMhC,QAAA,IAAAP,GAAAA,EAAAC,GAAAA;AAkMQ,QAAA,IAAI,GAAA,EAAK;AACP,UAAA,IAAA,CAAK,aAAA,EAAe,kCAAc,GAAG,CAAA;AACrC,UAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAAA,GAAA,YAAA,CAAa,KAAA,KAAb,IAAA,GAAA,MAAA,GAAAA,IAAoB,aAAA,KAApB,IAAA,GAAA,MAAA,GAAAC,GAAAA,CAAA,IAAA,CAAAD,GAAAA,EAAoC;AAAA,YAClC,GAAG,cAAA;AAAA,YACH,QAAA,EAAU,YAAA,CAAa,KAAA,CAAM,GAAG;AAAA,WAClC,CAAA;AAAA,QACF;AAAA,MACF,CAAC,CAAA;AAAA,IACH,CAAA,MAAO;AACL,MAAA,IAAI,UAAU,WAAA,EAAa;AACzB,QAAA,IAAA,CAAK,aAAA,EAAe,kCAAc,GAAG,CAAA;AACrC,QAAA,CAAAG,GAAAA,GAAAA,CAAAD,GAAAA,GAAA,YAAA,CAAa,KAAA,KAAb,IAAA,GAAA,MAAA,GAAAA,IAAoB,aAAA,KAApB,IAAA,GAAA,MAAA,GAAAC,GAAAA,CAAA,IAAA,CAAAD,GAAAA,EAAoC;AAAA,UAClC,GAAG,cAAA;AAAA,UACH,QAAA,EAAU,YAAA,CAAa,KAAA,CAAM,GAAG;AAAA,SAClC,CAAA;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,cAAA,GAAsB;AAAA,IAC1B,MAAA,EAAQ,IAAA;AAAA,IACR,QAAQ,MAAA,CAAQ,YAAA;AAAA,IAChB,IAAA,EAAM,KAAA;AAAA,IACN,KAAA;AAAA,IACA,KAAA,EAAO,QAAA;AAAA,IACP,YAAA,EAAc,YAAA,CAAa,cAAA,CAAe,MAAO,CAAA;AAAA,IACjD,GAAA;AAAA,IACA,WAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF;AAEA,EAAA,IAAI,WAAqB,YAAA,KAAA,CAAgB,EAAA,GAAA,iBAAA,CAAkB,QAAA,KAAlB,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,iBAAA,EAA6B,oBAAoB,EAAC;AAE3F,EAAA,MAAM,SAAA,GACJ,YAAA,CAAa,KAAA,CAAM,eAAA,KAAoB,SAClC,EAAA,GAAA,CAAA,EAAA,GAAA,YAAA,CAAa,KAAA,CAAM,eAAA,KAAnB,IAAA,GAAA,EAAA,GAAA,CAAsC,EAAA,GAAA,KAAA,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,CAAO,KAAA,KAAP,IAAA,GAAA,MAAA,GAAA,EAAA,CAAc,eAAA,KAApD,YAAuE,GAAA,GACxE,EAAA;AAEN,EAAA,IAAI,CAACM,qBAAA,CAAiB,QAAQ,CAAA,EAAG;AAC/B,IAAA,IAAI,SAAA;AACJ,IAAA,IAAI,WAAW,QAAA,EAAU;AACvB,MAAA,SAAA,GAAY,UAAA,CAAW,QAAA;AAAA,IACzB,WAAW,SAAA,EAAW;AACpB,MAAA,MAAM,MAAA,GAAS,UAAU,KAAK,CAAA;AAC9B,MAAA,IAAI,MAAA,IAAU,OAAO,IAAA,EAAM;AACzB,QAAA,IAAI,OAAO,MAAA,EAAQ;AACjB,UAAA,SAAA,GAAYC,gBAAYC,kBAAA,EAAO;AAAA,YAC7B,QAAQ,MAAA,CAAO,MAAA;AAAA,YACf,MAAM,MAAA,CAAO;AAAA,WACd,CAAA;AAAA,QACH,CAAA,MAAA,IAAW,OAAO,KAAA,EAAO;AACvB,UAAA,SAAA,GAAYD,eAAA;AAAA,YACVE,gBAAA;AAAA,YACA;AAAA,cACE,OAAO,MAAA,CAAO,KAAA;AAAA,cACd,QAAA,EAAU;AAAA,aACZ;AAAA,YACA,MAAM,MAAA,CAAO;AAAA,WACf;AAAA,QACF,CAAA,MAAO;AACL,UAAA,SAAA,GAAY,MAAA,CAAO,IAAA;AAAA,QACrB;AAAA,MACF,CAAA,MAAO;AACL,QAAA,SAAA,GAAY,UAAU,IAAA,IAAQ,KAAA,KAAU,MAAA,IAAa,KAAA,KAAU,KAAK,SAAA,GAAY,KAAA;AAAA,MAClF;AAAA,IACF,CAAA,MAAO;AACL,MAAA,SAAA,GAAY,UAAU,IAAA,IAAQ,KAAA,KAAU,MAAA,IAAa,KAAA,KAAU,KAAK,SAAA,GAAY,KAAA;AAAA,IAClF;AACA,IAAA,QAAA,GAAW;AAAA,MACR,OAAO,cAAc,QAAA,IAAYC,mBAAA,CAAe,SAAS,CAAA,IAAM,OAAO,SAAA,KAAc,QAAA,GACjF,SAAA,GACA;AAAA,KACN;AAAA,EACF;AAEA,EAAA,MAAM,eAAA,GAAkB;AAAA,IACtB,gBAAgB,KAAA,CAAM,cAAA;AAAA,IACtB,cAAc,KAAA,CAAM;AAAA,GACtB;AAEA,EAAA,MAAM,UAAU,MAAA,CAAQ,OAAA;AACxB,EAAA,MAAM,aAAa,KAAA,CAAM,MAAA,KAAW,MAAA,IAAa,WAAA,KAAgB,MAAK,MAAA,IAAA,IAAA,GAAA,MAAA,GAAA,MAAA,CAAQ,UAAA,CAAA;AAC9E,EAAA,MAAM,QAAA,GACJ,CAAC,MAAA,CAAQ,SAAA,IAAc,OAAO,UAAU,QAAA,IAAY,OAAO,KAAA,KAAU,QAAA,GACjE,MAAA,GACA,KAAA;AACN,EAAA,MAAM,aAAA,GAAgB,CAAC,CAAC,OAAA,IAAW,WAAA;AAEnC,EAAA,MAAM,eAAe,YAAA,CAAa,KAAA,CAAM,gBAAgB,EAAC,GAAI,EAAE,GAAA,EAAS;AAExE,EAAA,IAAI,SAAA,GAAYH,eAAA;AAAA,IACd,KAAA;AAAA,IACA;AAAA,MACE,KAAA,EAAO,cAAA;AAAA,MACP,KAAA,EAAA,CAAA,CAAO,EAAA,GAAAV,UAAAA,IAAA,IAAA,GAAA,MAAA,GAAAA,UAAAA,CAAW,KAAA,KAAX,IAAA,GAAA,MAAA,GAAA,EAAA,CAAkB,MAAA,IAAS,EAAA,GAAK,CAAA,QAAA,EAAW,KAAA,CAAM,MAAM,CAAA,EAAA,CAAA;AAAA,MAC9D,gBAAA,EAAkB;AAAA,KACpB;AAAA,IACA;AAAA,MACEU,eAAA;AAAA,QACE,KAAA;AAAA,QACAI,cAAA;AAAA,UACE;AAAA,YACE,KAAA,EAAO,gBAAA;AAAA,YACP,KAAA,EAAO,gBAAA;AAAA,YACP,KAAA,EAAO;AAAA,WACT;AAAA,UACA;AAAA,SACF;AAAA,QACA,CAAC,aAAA,GAAA,CAAgB,EAAA,GAAA,KAAA,CAAM,UAAA,KAAN,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,CAAA,GAAuB,MAAM,QAAQ;AAAA;AACxD;AACF,GACF;AACA,EAAA,SAAA,GAAY,UAAA,GAAaC,mBAAe,SAAA,EAAW,CAAC,CAACC,qBAAA,EAAY,eAAe,CAAC,CAAC,CAAA,GAAI,SAAA;AACtF,EAAA,IAAI,eAAA,GAAuB,IAAA;AAC3B,EAAA,IAAI,WAAA,GAAc,aAAA;AAClB,EAAA,IAAI,aAAA,EAAe;AACjB,IAAA,MAAM,YAAA,GAAe,EAAE,GAAI,MAAA,CAAQ,YAAY,IAAA,GAAO,EAAC,GAAI,MAAA,CAAQ,OAAA,EAAS;AAC5E,IAAA,IAAI,aAAa,KAAA,EAAO;AACtB,MAAA,YAAA,CAAa,KAAA,GAAQ,YAAA,CAAa,KAAA,CAAM,cAAc,CAAA;AACtD,MAAA,WAAA,GAAc,EAAE,CAAC,YAAA,CAAa,KAAA,IAAS,aAAa,KAAA,KAAU,CAAA,CAAA;AAAA,IAChE,CAAA,MAAO;AACL,MAAA,YAAA,CAAa,KAAA,GAAQ,KAAA;AACrB,MAAA,WAAA,GAAc,EAAE,CAAC,YAAA,CAAa,KAAA,IAAS,aAAa,KAAA,KAAU,CAAA,CAAA;AAAA,IAChE;AAYA,IAAA,eAAA,GAAkBN,eAAA;AAAA,MAChBO,uBAAA;AAAA,MACA;AAAA,QACE,mBAAmB,KAAA,CAAM,iBAAA;AAAA,QACzB,OAAO,EAAE,MAAA,EAAQ,CAAC,CAAA,EAAG,EAAE,CAAA,EAAE;AAAA,QACzB,YAAA;AAAA,QACA,IAAA,EAAM,WAAA;AAAA,QACN,YAAY,YAAA,IAAA,IAAA,GAAA,MAAA,GAAA,YAAA,CAAc,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAM1B,UAAA,EAAY,CAAC,UAAA,KAAe;AAvVpC,UAAA,IAAAhB,GAAAA;AAwVU,UAAA,OAAA,CAAO,YAAA,IAAA,IAAA,GAAA,MAAA,GAAA,YAAA,CAAc,eACjBA,GAAAA,GAAA,YAAA,IAAA,IAAA,GAAA,MAAA,GAAA,YAAA,CAAc,eAAd,IAAA,GAAA,MAAA,GAAAA,GAAAA,CAAA,IAAA,CAAA,YAAA,EAA2B,UAAA,EAAY,cAAA,CAAA,GACvC,UAAA;AAAA,QACN,CAAA;AAAA,QACA,aAAa,MAAM;AACjB,UAAA,IAAA,CAAK,WAAW,CAAA;AAAA,QAClB;AAAA,OACF;AAAA,MACA;AAAA,QACE,SAAS,MAAM;AAAA,UACb,KAAA,KAAU,YAAA,CAAa,UAAA,GACnB,SAAA,GACAiB,eAAW,SAAA,EAAW;AAAA,YACpB,cAAc,MAAM;AAClB,cAAA,IAAA,CAAK,WAAW,CAAA;AAAA,YAClB;AAAA,WACD;AAAA,SACP;AAAA,QACA,OAAO,MAAG;AA1WlB,UAAA,IAAAjB,GAAAA;AA0WqB,UAAA,OAAA,CAAAA,GAAAA,GAAA,iBAAA,CAAkB,YAAA,KAAlB,IAAA,GAAA,MAAA,GAAAA,IAAA,IAAA,CAAA,iBAAA,EAAiC,cAAA,CAAA;AAAA,QAAA;AAAA;AAChD,KACF;AAAA,EACF,CAAA,MAAO;AACL,IAAA,eAAA,GAAkB,SAAA;AAAA,EACpB;AAEA,EAAA,MAAM,aAAa,MAAM;AACvB,IAAA,eAAA,CAAgB,QAAA,CAAS,UAAU,CAAA,IAAK,UAAA,EAAW;AAAA,EACrD,CAAA;AAEA,EAAA,MAAM,kBAAkB,SAAA,GACpBS,eAAA;AAAA,IACES,iBAAA;AAAA,IACA;AAAA,MACE,SAAA;AAAA,MACA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,OAAA,EAAS,GAAA;AAAA,MACT,MAAA;AAAA,MACA,MAAA,EAAQ,IAAA;AAAA,MACR,aAAA,EAAe,WAAA;AAAA,MACf,KAAA;AAAA,MACA,cAAA;AAAA,MACA,mBAAmB,KAAA,CAAM,iBAAA;AAAA,MACzB,QAAA,EAAU,aAAc,MAAA,GAAS,CAAA;AAAA,MACjC;AAAA,KACF;AAAA,IACA;AAAA,GACF,GACA,IAAA;AAEJ,EAAA,OAAOT,eAAA;AAAA,IACL,KAAA;AAAA,IACAI,eAAWd,UAAAA,EAAW;AAAA,MACpB,cAAc,MAAM;AAClB,QAAA,WAAA,IAAe,KAAK,WAAW,CAAA;AAAA,MACjC,CAAA;AAAA,MACA,QAAA,EAAU,IAAA;AAAA,MACV,IAAA,EAAM,MAAA;AAAA,MACN,iBAAA,EAAmB,SAAA;AAAA,MACnB,KAAA,EAAO,SAAA;AAAA,MACP,aAAA,EAAe,CAAC,CAAA,KAAM;AACpB,QAAA,IAAA,CACG,YAAA,CAAa,KAAA,CAAM,mBAAA,IAAuB,YAAA,CAAa,KAAA,CAAM,mBAC9D,CAAA,KAAM,CAAA,CAAE,MAAA,IACR,CAAA,CAAE,OAAA,EACF;AACA,UAAA,CAAA,CAAE,cAAA,EAAe;AAAA,QACnB,CAAA,MAAO;AACL,UAAA,qBAAA,CAAsB,CAAA,EAAG,cAAA,EAAgB,KAAA,CAAM,IAAK,CAAA;AACpD,UAAA,eAAA,CAAgB,QAAA,CAAS,aAAa,CAAA,IAAK,UAAA,EAAW;AAAA,QACxD;AAAA,MACF,CAAA;AAAA,MACA,UAAA;AAAA,MACA,OAAA,EAAS,CAAC,CAAA,KAAkB;AAjalC,QAAA,IAAAC,GAAAA,EAAAC,GAAAA;AAkaQ,QAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAAA,GAAA,YAAA,CAAa,KAAA,KAAb,IAAA,GAAA,MAAA,GAAAA,GAAAA,CAAoB,WAAA,KAApB,IAAA,GAAA,MAAA,GAAAC,GAAAA,CAAA,IAAA,CAAAD,GAAAA,EAAkC,CAAA,EAAG,cAAA,CAAA;AACrC,QAAA,IAAA,CACG,MAAM;AACL,UAAA,IAAI,CAACmB,sBAAA,EAAe,IAAKC,uBAAA,CAAiB,UAAU,GAAG,OAAO,KAAA;AAC9D,UAAA,MAAM,GAAA,GAAA,iBAAM,IAAI,IAAA,EAAK,EAAE,OAAA,EAAQ;AAC/B,UAAA,MAAM,EAAA,GAAK,MAAM,aAAA,GAAgB,GAAA;AACjC,UAAA,aAAA,GAAgB,GAAA;AAChB,UAAA,OAAO,EAAA;AAAA,QACT,IAAG,EACH;AACA,UAAA,UAAA,EAAW;AACX,UAAA,CAAA,CAAE,cAAA,EAAe;AACjB,UAAA;AAAA,QACF;AACA,QAAA,IAAA,CAAK,OAAA,EAAS,GAAG,YAAY,CAAA;AAC7B,QAAA,eAAA,CAAgB,QAAA,CAAS,OAAO,CAAA,IAAK,UAAA,EAAW;AAAA,MAClD,CAAA;AAAA,MACA,WAAA,EAAa,CAAC,CAAA,KAAW;AACvB,QAAA,IAAA,CAAK,WAAA,EAAa,GAAG,YAAY,CAAA;AAAA,MACnC,CAAA;AAAA,MACA,WAAA,EAAa,CAAC,CAAA,KAAW;AACvB,QAAA,IAAA,CAAK,WAAA,EAAa,GAAG,YAAY,CAAA;AAAA,MACnC,CAAA;AAAA,MACA,SAAA,EAAW,CAAC,CAAA,KAAqB;AAC/B,QAAA,IAAA,CAAK,SAAA,EAAW,CAAA,EAAG,EAAE,YAAA,EAAc,WAAW,CAAA;AAAA,MAChD,CAAA;AAAA,MACA,YAAA,EAAc,KAAA;AAAA,MACd,eAAA,EAAiB;AAAA,KAClB,CAAA;AAAA,IACD;AAAA,MACE,SAAA,GACIX,eAAA;AAAA,QACEY,kBAAA;AAAA,QACA;AAAA,UACE,UAAU,CAAC,OAAA;AAAA,UACX,SAAA;AAAA,UACA,QAAQ,MAAA,CAAQ;AAAA,SAClB;AAAA,QACA,EAAE,KAAA,EAAO,MAAM,QAAA;AAAS,OAC1B,GACA,IAAA;AAAA,MACJ,eAAA;AAAA,MACA,cAAc,eAAA,GACVZ,eAAA;AAAA,QACE,OAAA;AAAA,QACA;AAAA,UACE,KAAA,EAAO,GAAG,SAAS,CAAA,kBAAA,CAAA;AAAA,UACnB,WAAA,EAAa,CAAC,CAAA,KAAM,CAAA,CAAE,eAAA;AAAgB,SACxC;AAAA,QACA,CAACK,mBAAe,eAAA,EAAiB,CAAC,CAACC,qBAAA,EAAY,eAAe,CAAC,CAAC,CAAC;AAAA,UAEnE,eAAA,GACEN,eAAA;AAAA,QACE,OAAA;AAAA,QACA;AAAA,UACE,KAAA,EAAO,GAAG,SAAS,CAAA,kBAAA,CAAA;AAAA,UACnB,WAAA,EAAa,CAAC,CAAA,KAAM,CAAA,CAAE,eAAA;AAAgB,SACxC;AAAA,QACA,CAAC,eAAe;AAAA,OAClB,GACA;AAAA;AACR,GACF;AACF;AAEA,QAAA,CAAS,KAAA,GAAQ,SAAA;;;;"}