{"ast":null,"code":"\"use client\";\n\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport FileTwoTone from \"@ant-design/icons/es/icons/FileTwoTone\";\nimport LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport PaperClipOutlined from \"@ant-design/icons/es/icons/PaperClipOutlined\";\nimport PictureTwoTone from \"@ant-design/icons/es/icons/PictureTwoTone\";\nimport classNames from 'classnames';\nimport CSSMotion, { CSSMotionList } from 'rc-motion';\nimport useForceUpdate from '../../_util/hooks/useForceUpdate';\nimport initCollapseMotion from '../../_util/motion';\nimport { cloneElement } from '../../_util/reactNode';\nimport Button from '../../button';\nimport { ConfigContext } from '../../config-provider';\nimport { isImageUrl, previewImage } from '../utils';\nimport ListItem from './ListItem';\nconst InternalUploadList = (props, ref) => {\n  const {\n    listType = 'text',\n    previewFile = previewImage,\n    onPreview,\n    onDownload,\n    onRemove,\n    locale,\n    iconRender,\n    isImageUrl: isImgUrl = isImageUrl,\n    prefixCls: customizePrefixCls,\n    items = [],\n    showPreviewIcon = true,\n    showRemoveIcon = true,\n    showDownloadIcon = false,\n    removeIcon,\n    previewIcon,\n    downloadIcon,\n    progress = {\n      size: [-1, 2],\n      showInfo: false\n    },\n    appendAction,\n    appendActionVisible = true,\n    itemRender,\n    disabled\n  } = props;\n  const forceUpdate = useForceUpdate();\n  const [motionAppear, setMotionAppear] = React.useState(false);\n  // ============================= Effect =============================\n  React.useEffect(() => {\n    if (listType !== 'picture' && listType !== 'picture-card' && listType !== 'picture-circle') {\n      return;\n    }\n    (items || []).forEach(file => {\n      if (typeof document === 'undefined' || typeof window === 'undefined' || !window.FileReader || !window.File || !(file.originFileObj instanceof File || file.originFileObj) || file.thumbUrl !== undefined) {\n        return;\n      }\n      if (previewFile) {\n        previewFile(file.originFileObj).then(previewDataUrl => {\n          // Need append '' to avoid dead loop\n          file.thumbUrl = previewDataUrl || '';\n          forceUpdate();\n        });\n      }\n    });\n  }, [listType, items, previewFile]);\n  React.useEffect(() => {\n    setMotionAppear(true);\n  }, []);\n  // ============================= Events =============================\n  const onInternalPreview = (file, e) => {\n    if (!onPreview) {\n      return;\n    }\n    e === null || e === void 0 ? void 0 : e.preventDefault();\n    return onPreview(file);\n  };\n  const onInternalDownload = file => {\n    if (typeof onDownload === 'function') {\n      onDownload(file);\n    } else if (file.url) {\n      window.open(file.url);\n    }\n  };\n  const onInternalClose = file => {\n    onRemove === null || onRemove === void 0 ? void 0 : onRemove(file);\n  };\n  const internalIconRender = file => {\n    if (iconRender) {\n      return iconRender(file, listType);\n    }\n    const isLoading = file.status === 'uploading';\n    const fileIcon = isImgUrl && isImgUrl(file) ? /*#__PURE__*/React.createElement(PictureTwoTone, null) : /*#__PURE__*/React.createElement(FileTwoTone, null);\n    let icon = isLoading ? /*#__PURE__*/React.createElement(LoadingOutlined, null) : /*#__PURE__*/React.createElement(PaperClipOutlined, null);\n    if (listType === 'picture') {\n      icon = isLoading ? /*#__PURE__*/React.createElement(LoadingOutlined, null) : fileIcon;\n    } else if (listType === 'picture-card' || listType === 'picture-circle') {\n      icon = isLoading ? locale.uploading : fileIcon;\n    }\n    return icon;\n  };\n  const actionIconRender = (customIcon, callback, prefixCls, title, acceptUploadDisabled) => {\n    const btnProps = {\n      type: 'text',\n      size: 'small',\n      title,\n      onClick: e => {\n        var _a, _b;\n        callback();\n        if ( /*#__PURE__*/React.isValidElement(customIcon)) {\n          (_b = (_a = customIcon.props).onClick) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n        }\n      },\n      className: `${prefixCls}-list-item-action`\n    };\n    if (acceptUploadDisabled) {\n      btnProps.disabled = disabled;\n    }\n    if ( /*#__PURE__*/React.isValidElement(customIcon)) {\n      const btnIcon = cloneElement(customIcon, Object.assign(Object.assign({}, customIcon.props), {\n        onClick: () => {}\n      }));\n      return /*#__PURE__*/React.createElement(Button, Object.assign({}, btnProps, {\n        icon: btnIcon\n      }));\n    }\n    return /*#__PURE__*/React.createElement(Button, Object.assign({}, btnProps), /*#__PURE__*/React.createElement(\"span\", null, customIcon));\n  };\n  // ============================== Ref ===============================\n  // Test needs\n  React.useImperativeHandle(ref, () => ({\n    handlePreview: onInternalPreview,\n    handleDownload: onInternalDownload\n  }));\n  const {\n    getPrefixCls\n  } = React.useContext(ConfigContext);\n  // ============================= Render =============================\n  const prefixCls = getPrefixCls('upload', customizePrefixCls);\n  const rootPrefixCls = getPrefixCls();\n  const listClassNames = classNames(`${prefixCls}-list`, `${prefixCls}-list-${listType}`);\n  // >>> Motion config\n  const motionKeyList = _toConsumableArray(items.map(file => ({\n    key: file.uid,\n    file\n  })));\n  const animationDirection = listType === 'picture-card' || listType === 'picture-circle' ? 'animate-inline' : 'animate';\n  // const transitionName = list.length === 0 ? '' : `${prefixCls}-${animationDirection}`;\n  let motionConfig = {\n    motionDeadline: 2000,\n    motionName: `${prefixCls}-${animationDirection}`,\n    keys: motionKeyList,\n    motionAppear\n  };\n  const listItemMotion = React.useMemo(() => {\n    const motion = Object.assign({}, initCollapseMotion(rootPrefixCls));\n    delete motion.onAppearEnd;\n    delete motion.onEnterEnd;\n    delete motion.onLeaveEnd;\n    return motion;\n  }, [rootPrefixCls]);\n  if (listType !== 'picture-card' && listType !== 'picture-circle') {\n    motionConfig = Object.assign(Object.assign({}, listItemMotion), motionConfig);\n  }\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: listClassNames\n  }, /*#__PURE__*/React.createElement(CSSMotionList, Object.assign({}, motionConfig, {\n    component: false\n  }), _ref => {\n    let {\n      key,\n      file,\n      className: motionClassName,\n      style: motionStyle\n    } = _ref;\n    return /*#__PURE__*/React.createElement(ListItem, {\n      key: key,\n      locale: locale,\n      prefixCls: prefixCls,\n      className: motionClassName,\n      style: motionStyle,\n      file: file,\n      items: items,\n      progress: progress,\n      listType: listType,\n      isImgUrl: isImgUrl,\n      showPreviewIcon: showPreviewIcon,\n      showRemoveIcon: showRemoveIcon,\n      showDownloadIcon: showDownloadIcon,\n      removeIcon: removeIcon,\n      previewIcon: previewIcon,\n      downloadIcon: downloadIcon,\n      iconRender: internalIconRender,\n      actionIconRender: actionIconRender,\n      itemRender: itemRender,\n      onPreview: onInternalPreview,\n      onDownload: onInternalDownload,\n      onClose: onInternalClose\n    });\n  }), appendAction && ( /*#__PURE__*/React.createElement(CSSMotion, Object.assign({}, motionConfig, {\n    visible: appendActionVisible,\n    forceRender: true\n  }), _ref2 => {\n    let {\n      className: motionClassName,\n      style: motionStyle\n    } = _ref2;\n    return cloneElement(appendAction, oriProps => ({\n      className: classNames(oriProps.className, motionClassName),\n      style: Object.assign(Object.assign(Object.assign({}, motionStyle), {\n        // prevent the element has hover css pseudo-class that may cause animation to end prematurely.\n        pointerEvents: motionClassName ? 'none' : undefined\n      }), oriProps.style)\n    }));\n  })));\n};\nconst UploadList = /*#__PURE__*/React.forwardRef(InternalUploadList);\nif (process.env.NODE_ENV !== 'production') {\n  UploadList.displayName = 'UploadList';\n}\nexport default UploadList;","map":{"version":3,"names":["_toConsumableArray","React","FileTwoTone","LoadingOutlined","PaperClipOutlined","PictureTwoTone","classNames","CSSMotion","CSSMotionList","useForceUpdate","initCollapseMotion","cloneElement","Button","ConfigContext","isImageUrl","previewImage","ListItem","InternalUploadList","props","ref","listType","previewFile","onPreview","onDownload","onRemove","locale","iconRender","isImgUrl","prefixCls","customizePrefixCls","items","showPreviewIcon","showRemoveIcon","showDownloadIcon","removeIcon","previewIcon","downloadIcon","progress","size","showInfo","appendAction","appendActionVisible","itemRender","disabled","forceUpdate","motionAppear","setMotionAppear","useState","useEffect","forEach","file","document","window","FileReader","File","originFileObj","thumbUrl","undefined","then","previewDataUrl","onInternalPreview","e","preventDefault","onInternalDownload","url","open","onInternalClose","internalIconRender","isLoading","status","fileIcon","createElement","icon","uploading","actionIconRender","customIcon","callback","title","acceptUploadDisabled","btnProps","type","onClick","_a","_b","isValidElement","call","className","btnIcon","Object","assign","useImperativeHandle","handlePreview","handleDownload","getPrefixCls","useContext","rootPrefixCls","listClassNames","motionKeyList","map","key","uid","animationDirection","motionConfig","motionDeadline","motionName","keys","listItemMotion","useMemo","motion","onAppearEnd","onEnterEnd","onLeaveEnd","component","_ref","motionClassName","style","motionStyle","onClose","visible","forceRender","_ref2","oriProps","pointerEvents","UploadList","forwardRef","process","env","NODE_ENV","displayName"],"sources":["/var/www/gavt/react-demo/node_modules/antd/es/upload/UploadList/index.js"],"sourcesContent":["\"use client\";\n\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport FileTwoTone from \"@ant-design/icons/es/icons/FileTwoTone\";\nimport LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport PaperClipOutlined from \"@ant-design/icons/es/icons/PaperClipOutlined\";\nimport PictureTwoTone from \"@ant-design/icons/es/icons/PictureTwoTone\";\nimport classNames from 'classnames';\nimport CSSMotion, { CSSMotionList } from 'rc-motion';\nimport useForceUpdate from '../../_util/hooks/useForceUpdate';\nimport initCollapseMotion from '../../_util/motion';\nimport { cloneElement } from '../../_util/reactNode';\nimport Button from '../../button';\nimport { ConfigContext } from '../../config-provider';\nimport { isImageUrl, previewImage } from '../utils';\nimport ListItem from './ListItem';\nconst InternalUploadList = (props, ref) => {\n  const {\n    listType = 'text',\n    previewFile = previewImage,\n    onPreview,\n    onDownload,\n    onRemove,\n    locale,\n    iconRender,\n    isImageUrl: isImgUrl = isImageUrl,\n    prefixCls: customizePrefixCls,\n    items = [],\n    showPreviewIcon = true,\n    showRemoveIcon = true,\n    showDownloadIcon = false,\n    removeIcon,\n    previewIcon,\n    downloadIcon,\n    progress = {\n      size: [-1, 2],\n      showInfo: false\n    },\n    appendAction,\n    appendActionVisible = true,\n    itemRender,\n    disabled\n  } = props;\n  const forceUpdate = useForceUpdate();\n  const [motionAppear, setMotionAppear] = React.useState(false);\n  // ============================= Effect =============================\n  React.useEffect(() => {\n    if (listType !== 'picture' && listType !== 'picture-card' && listType !== 'picture-circle') {\n      return;\n    }\n    (items || []).forEach(file => {\n      if (typeof document === 'undefined' || typeof window === 'undefined' || !window.FileReader || !window.File || !(file.originFileObj instanceof File || file.originFileObj) || file.thumbUrl !== undefined) {\n        return;\n      }\n      if (previewFile) {\n        previewFile(file.originFileObj).then(previewDataUrl => {\n          // Need append '' to avoid dead loop\n          file.thumbUrl = previewDataUrl || '';\n          forceUpdate();\n        });\n      }\n    });\n  }, [listType, items, previewFile]);\n  React.useEffect(() => {\n    setMotionAppear(true);\n  }, []);\n  // ============================= Events =============================\n  const onInternalPreview = (file, e) => {\n    if (!onPreview) {\n      return;\n    }\n    e === null || e === void 0 ? void 0 : e.preventDefault();\n    return onPreview(file);\n  };\n  const onInternalDownload = file => {\n    if (typeof onDownload === 'function') {\n      onDownload(file);\n    } else if (file.url) {\n      window.open(file.url);\n    }\n  };\n  const onInternalClose = file => {\n    onRemove === null || onRemove === void 0 ? void 0 : onRemove(file);\n  };\n  const internalIconRender = file => {\n    if (iconRender) {\n      return iconRender(file, listType);\n    }\n    const isLoading = file.status === 'uploading';\n    const fileIcon = isImgUrl && isImgUrl(file) ? /*#__PURE__*/React.createElement(PictureTwoTone, null) : /*#__PURE__*/React.createElement(FileTwoTone, null);\n    let icon = isLoading ? /*#__PURE__*/React.createElement(LoadingOutlined, null) : /*#__PURE__*/React.createElement(PaperClipOutlined, null);\n    if (listType === 'picture') {\n      icon = isLoading ? /*#__PURE__*/React.createElement(LoadingOutlined, null) : fileIcon;\n    } else if (listType === 'picture-card' || listType === 'picture-circle') {\n      icon = isLoading ? locale.uploading : fileIcon;\n    }\n    return icon;\n  };\n  const actionIconRender = (customIcon, callback, prefixCls, title, acceptUploadDisabled) => {\n    const btnProps = {\n      type: 'text',\n      size: 'small',\n      title,\n      onClick: e => {\n        var _a, _b;\n        callback();\n        if ( /*#__PURE__*/React.isValidElement(customIcon)) {\n          (_b = (_a = customIcon.props).onClick) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n        }\n      },\n      className: `${prefixCls}-list-item-action`\n    };\n    if (acceptUploadDisabled) {\n      btnProps.disabled = disabled;\n    }\n    if ( /*#__PURE__*/React.isValidElement(customIcon)) {\n      const btnIcon = cloneElement(customIcon, Object.assign(Object.assign({}, customIcon.props), {\n        onClick: () => {}\n      }));\n      return /*#__PURE__*/React.createElement(Button, Object.assign({}, btnProps, {\n        icon: btnIcon\n      }));\n    }\n    return /*#__PURE__*/React.createElement(Button, Object.assign({}, btnProps), /*#__PURE__*/React.createElement(\"span\", null, customIcon));\n  };\n  // ============================== Ref ===============================\n  // Test needs\n  React.useImperativeHandle(ref, () => ({\n    handlePreview: onInternalPreview,\n    handleDownload: onInternalDownload\n  }));\n  const {\n    getPrefixCls\n  } = React.useContext(ConfigContext);\n  // ============================= Render =============================\n  const prefixCls = getPrefixCls('upload', customizePrefixCls);\n  const rootPrefixCls = getPrefixCls();\n  const listClassNames = classNames(`${prefixCls}-list`, `${prefixCls}-list-${listType}`);\n  // >>> Motion config\n  const motionKeyList = _toConsumableArray(items.map(file => ({\n    key: file.uid,\n    file\n  })));\n  const animationDirection = listType === 'picture-card' || listType === 'picture-circle' ? 'animate-inline' : 'animate';\n  // const transitionName = list.length === 0 ? '' : `${prefixCls}-${animationDirection}`;\n  let motionConfig = {\n    motionDeadline: 2000,\n    motionName: `${prefixCls}-${animationDirection}`,\n    keys: motionKeyList,\n    motionAppear\n  };\n  const listItemMotion = React.useMemo(() => {\n    const motion = Object.assign({}, initCollapseMotion(rootPrefixCls));\n    delete motion.onAppearEnd;\n    delete motion.onEnterEnd;\n    delete motion.onLeaveEnd;\n    return motion;\n  }, [rootPrefixCls]);\n  if (listType !== 'picture-card' && listType !== 'picture-circle') {\n    motionConfig = Object.assign(Object.assign({}, listItemMotion), motionConfig);\n  }\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: listClassNames\n  }, /*#__PURE__*/React.createElement(CSSMotionList, Object.assign({}, motionConfig, {\n    component: false\n  }), _ref => {\n    let {\n      key,\n      file,\n      className: motionClassName,\n      style: motionStyle\n    } = _ref;\n    return /*#__PURE__*/React.createElement(ListItem, {\n      key: key,\n      locale: locale,\n      prefixCls: prefixCls,\n      className: motionClassName,\n      style: motionStyle,\n      file: file,\n      items: items,\n      progress: progress,\n      listType: listType,\n      isImgUrl: isImgUrl,\n      showPreviewIcon: showPreviewIcon,\n      showRemoveIcon: showRemoveIcon,\n      showDownloadIcon: showDownloadIcon,\n      removeIcon: removeIcon,\n      previewIcon: previewIcon,\n      downloadIcon: downloadIcon,\n      iconRender: internalIconRender,\n      actionIconRender: actionIconRender,\n      itemRender: itemRender,\n      onPreview: onInternalPreview,\n      onDownload: onInternalDownload,\n      onClose: onInternalClose\n    });\n  }), appendAction && ( /*#__PURE__*/React.createElement(CSSMotion, Object.assign({}, motionConfig, {\n    visible: appendActionVisible,\n    forceRender: true\n  }), _ref2 => {\n    let {\n      className: motionClassName,\n      style: motionStyle\n    } = _ref2;\n    return cloneElement(appendAction, oriProps => ({\n      className: classNames(oriProps.className, motionClassName),\n      style: Object.assign(Object.assign(Object.assign({}, motionStyle), {\n        // prevent the element has hover css pseudo-class that may cause animation to end prematurely.\n        pointerEvents: motionClassName ? 'none' : undefined\n      }), oriProps.style)\n    }));\n  })));\n};\nconst UploadList = /*#__PURE__*/React.forwardRef(InternalUploadList);\nif (process.env.NODE_ENV !== 'production') {\n  UploadList.displayName = 'UploadList';\n}\nexport default UploadList;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}