6566e94ae73d99f54ec5eb93319b9252.json 24.1 KB
{"ast":null,"code":"import _extends from \"@babel/runtime/helpers/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\n\nvar __rest = this && this.__rest || function (s, e) {\n  var t = {};\n\n  for (var p in s) {\n    if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n  }\n\n  if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n    if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n  }\n  return t;\n};\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport { composeRef } from \"rc-util/es/ref\";\nimport { ConfigContext } from '../config-provider';\nimport devWarning from '../_util/devWarning';\nimport { responsiveArray } from '../_util/responsiveObserve';\nimport useBreakpoint from '../grid/hooks/useBreakpoint';\nimport SizeContext from './SizeContext';\n\nvar InternalAvatar = function InternalAvatar(props, ref) {\n  var _classNames, _classNames2;\n\n  var groupSize = React.useContext(SizeContext);\n\n  var _React$useState = React.useState(1),\n      _React$useState2 = _slicedToArray(_React$useState, 2),\n      scale = _React$useState2[0],\n      setScale = _React$useState2[1];\n\n  var _React$useState3 = React.useState(false),\n      _React$useState4 = _slicedToArray(_React$useState3, 2),\n      mounted = _React$useState4[0],\n      setMounted = _React$useState4[1];\n\n  var _React$useState5 = React.useState(true),\n      _React$useState6 = _slicedToArray(_React$useState5, 2),\n      isImgExist = _React$useState6[0],\n      setIsImgExist = _React$useState6[1];\n\n  var avatarNodeRef = React.useRef();\n  var avatarChildrenRef = React.useRef();\n  var avatarNodeMergeRef = composeRef(ref, avatarNodeRef);\n\n  var _React$useContext = React.useContext(ConfigContext),\n      getPrefixCls = _React$useContext.getPrefixCls;\n\n  var setScaleParam = function setScaleParam() {\n    if (!avatarChildrenRef.current || !avatarNodeRef.current) {\n      return;\n    }\n\n    var childrenWidth = avatarChildrenRef.current.offsetWidth; // offsetWidth avoid affecting be transform scale\n\n    var nodeWidth = avatarNodeRef.current.offsetWidth; // denominator is 0 is no meaning\n\n    if (childrenWidth !== 0 && nodeWidth !== 0) {\n      var _props$gap = props.gap,\n          gap = _props$gap === void 0 ? 4 : _props$gap;\n\n      if (gap * 2 < nodeWidth) {\n        setScale(nodeWidth - gap * 2 < childrenWidth ? (nodeWidth - gap * 2) / childrenWidth : 1);\n      }\n    }\n  };\n\n  React.useEffect(function () {\n    setMounted(true);\n  }, []);\n  React.useEffect(function () {\n    setIsImgExist(true);\n    setScale(1);\n  }, [props.src]);\n  React.useEffect(function () {\n    setScaleParam();\n  }, [props.gap]);\n\n  var handleImgLoadError = function handleImgLoadError() {\n    var onError = props.onError;\n    var errorFlag = onError ? onError() : undefined;\n\n    if (errorFlag !== false) {\n      setIsImgExist(false);\n    }\n  };\n\n  var customizePrefixCls = props.prefixCls,\n      shape = props.shape,\n      customSize = props.size,\n      src = props.src,\n      srcSet = props.srcSet,\n      icon = props.icon,\n      className = props.className,\n      alt = props.alt,\n      draggable = props.draggable,\n      children = props.children,\n      others = __rest(props, [\"prefixCls\", \"shape\", \"size\", \"src\", \"srcSet\", \"icon\", \"className\", \"alt\", \"draggable\", \"children\"]);\n\n  var size = customSize === 'default' ? groupSize : customSize;\n  var screens = useBreakpoint();\n  var responsiveSizeStyle = React.useMemo(function () {\n    if (_typeof(size) !== 'object') {\n      return {};\n    }\n\n    var currentBreakpoint = responsiveArray.find(function (screen) {\n      return screens[screen];\n    });\n    var currentSize = size[currentBreakpoint];\n    return currentSize ? {\n      width: currentSize,\n      height: currentSize,\n      lineHeight: \"\".concat(currentSize, \"px\"),\n      fontSize: icon ? currentSize / 2 : 18\n    } : {};\n  }, [screens, size]);\n  devWarning(!(typeof icon === 'string' && icon.length > 2), 'Avatar', \"`icon` is using ReactNode instead of string naming in v4. Please check `\".concat(icon, \"` at https://ant.design/components/icon\"));\n  var prefixCls = getPrefixCls('avatar', customizePrefixCls);\n  var sizeCls = classNames((_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-lg\"), size === 'large'), _defineProperty(_classNames, \"\".concat(prefixCls, \"-sm\"), size === 'small'), _classNames));\n  var hasImageElement = /*#__PURE__*/React.isValidElement(src);\n  var classString = classNames(prefixCls, sizeCls, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(prefixCls, \"-\").concat(shape), shape), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-image\"), hasImageElement || src && isImgExist), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-icon\"), icon), _classNames2), className);\n  var sizeStyle = typeof size === 'number' ? {\n    width: size,\n    height: size,\n    lineHeight: \"\".concat(size, \"px\"),\n    fontSize: icon ? size / 2 : 18\n  } : {};\n  var childrenToRender;\n\n  if (typeof src === 'string' && isImgExist) {\n    childrenToRender = /*#__PURE__*/React.createElement(\"img\", {\n      src: src,\n      draggable: draggable,\n      srcSet: srcSet,\n      onError: handleImgLoadError,\n      alt: alt\n    });\n  } else if (hasImageElement) {\n    childrenToRender = src;\n  } else if (icon) {\n    childrenToRender = icon;\n  } else if (mounted || scale !== 1) {\n    var transformString = \"scale(\".concat(scale, \") translateX(-50%)\");\n    var childrenStyle = {\n      msTransform: transformString,\n      WebkitTransform: transformString,\n      transform: transformString\n    };\n    var sizeChildrenStyle = typeof size === 'number' ? {\n      lineHeight: \"\".concat(size, \"px\")\n    } : {};\n    childrenToRender = /*#__PURE__*/React.createElement(ResizeObserver, {\n      onResize: setScaleParam\n    }, /*#__PURE__*/React.createElement(\"span\", {\n      className: \"\".concat(prefixCls, \"-string\"),\n      ref: function ref(node) {\n        avatarChildrenRef.current = node;\n      },\n      style: _extends(_extends({}, sizeChildrenStyle), childrenStyle)\n    }, children));\n  } else {\n    childrenToRender = /*#__PURE__*/React.createElement(\"span\", {\n      className: \"\".concat(prefixCls, \"-string\"),\n      style: {\n        opacity: 0\n      },\n      ref: function ref(node) {\n        avatarChildrenRef.current = node;\n      }\n    }, children);\n  } // The event is triggered twice from bubbling up the DOM tree.\n  // see https://codesandbox.io/s/kind-snow-9lidz\n\n\n  delete others.onError;\n  delete others.gap;\n  return /*#__PURE__*/React.createElement(\"span\", _extends({}, others, {\n    style: _extends(_extends(_extends({}, sizeStyle), responsiveSizeStyle), others.style),\n    className: classString,\n    ref: avatarNodeMergeRef\n  }), childrenToRender);\n};\n\nvar Avatar = /*#__PURE__*/React.forwardRef(InternalAvatar);\nAvatar.displayName = 'Avatar';\nAvatar.defaultProps = {\n  shape: 'circle',\n  size: 'default'\n};\nexport default Avatar;","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/node_modules/antd/es/avatar/avatar.js"],"names":["_extends","_defineProperty","_typeof","_slicedToArray","__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","React","classNames","ResizeObserver","composeRef","ConfigContext","devWarning","responsiveArray","useBreakpoint","SizeContext","InternalAvatar","props","ref","_classNames","_classNames2","groupSize","useContext","_React$useState","useState","_React$useState2","scale","setScale","_React$useState3","_React$useState4","mounted","setMounted","_React$useState5","_React$useState6","isImgExist","setIsImgExist","avatarNodeRef","useRef","avatarChildrenRef","avatarNodeMergeRef","_React$useContext","getPrefixCls","setScaleParam","current","childrenWidth","offsetWidth","nodeWidth","_props$gap","gap","useEffect","src","handleImgLoadError","onError","errorFlag","undefined","customizePrefixCls","prefixCls","shape","customSize","size","srcSet","icon","className","alt","draggable","children","others","screens","responsiveSizeStyle","useMemo","currentBreakpoint","find","screen","currentSize","width","height","lineHeight","concat","fontSize","sizeCls","hasImageElement","isValidElement","classString","sizeStyle","childrenToRender","createElement","transformString","childrenStyle","msTransform","WebkitTransform","transform","sizeChildrenStyle","onResize","node","style","opacity","Avatar","forwardRef","displayName","defaultProps"],"mappings":"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","sourcesContent":["import _extends from \"@babel/runtime/helpers/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\n\nvar __rest = this && this.__rest || function (s, e) {\n  var t = {};\n\n  for (var p in s) {\n    if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n  }\n\n  if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n    if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n  }\n  return t;\n};\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport { composeRef } from \"rc-util/es/ref\";\nimport { ConfigContext } from '../config-provider';\nimport devWarning from '../_util/devWarning';\nimport { responsiveArray } from '../_util/responsiveObserve';\nimport useBreakpoint from '../grid/hooks/useBreakpoint';\nimport SizeContext from './SizeContext';\n\nvar InternalAvatar = function InternalAvatar(props, ref) {\n  var _classNames, _classNames2;\n\n  var groupSize = React.useContext(SizeContext);\n\n  var _React$useState = React.useState(1),\n      _React$useState2 = _slicedToArray(_React$useState, 2),\n      scale = _React$useState2[0],\n      setScale = _React$useState2[1];\n\n  var _React$useState3 = React.useState(false),\n      _React$useState4 = _slicedToArray(_React$useState3, 2),\n      mounted = _React$useState4[0],\n      setMounted = _React$useState4[1];\n\n  var _React$useState5 = React.useState(true),\n      _React$useState6 = _slicedToArray(_React$useState5, 2),\n      isImgExist = _React$useState6[0],\n      setIsImgExist = _React$useState6[1];\n\n  var avatarNodeRef = React.useRef();\n  var avatarChildrenRef = React.useRef();\n  var avatarNodeMergeRef = composeRef(ref, avatarNodeRef);\n\n  var _React$useContext = React.useContext(ConfigContext),\n      getPrefixCls = _React$useContext.getPrefixCls;\n\n  var setScaleParam = function setScaleParam() {\n    if (!avatarChildrenRef.current || !avatarNodeRef.current) {\n      return;\n    }\n\n    var childrenWidth = avatarChildrenRef.current.offsetWidth; // offsetWidth avoid affecting be transform scale\n\n    var nodeWidth = avatarNodeRef.current.offsetWidth; // denominator is 0 is no meaning\n\n    if (childrenWidth !== 0 && nodeWidth !== 0) {\n      var _props$gap = props.gap,\n          gap = _props$gap === void 0 ? 4 : _props$gap;\n\n      if (gap * 2 < nodeWidth) {\n        setScale(nodeWidth - gap * 2 < childrenWidth ? (nodeWidth - gap * 2) / childrenWidth : 1);\n      }\n    }\n  };\n\n  React.useEffect(function () {\n    setMounted(true);\n  }, []);\n  React.useEffect(function () {\n    setIsImgExist(true);\n    setScale(1);\n  }, [props.src]);\n  React.useEffect(function () {\n    setScaleParam();\n  }, [props.gap]);\n\n  var handleImgLoadError = function handleImgLoadError() {\n    var onError = props.onError;\n    var errorFlag = onError ? onError() : undefined;\n\n    if (errorFlag !== false) {\n      setIsImgExist(false);\n    }\n  };\n\n  var customizePrefixCls = props.prefixCls,\n      shape = props.shape,\n      customSize = props.size,\n      src = props.src,\n      srcSet = props.srcSet,\n      icon = props.icon,\n      className = props.className,\n      alt = props.alt,\n      draggable = props.draggable,\n      children = props.children,\n      others = __rest(props, [\"prefixCls\", \"shape\", \"size\", \"src\", \"srcSet\", \"icon\", \"className\", \"alt\", \"draggable\", \"children\"]);\n\n  var size = customSize === 'default' ? groupSize : customSize;\n  var screens = useBreakpoint();\n  var responsiveSizeStyle = React.useMemo(function () {\n    if (_typeof(size) !== 'object') {\n      return {};\n    }\n\n    var currentBreakpoint = responsiveArray.find(function (screen) {\n      return screens[screen];\n    });\n    var currentSize = size[currentBreakpoint];\n    return currentSize ? {\n      width: currentSize,\n      height: currentSize,\n      lineHeight: \"\".concat(currentSize, \"px\"),\n      fontSize: icon ? currentSize / 2 : 18\n    } : {};\n  }, [screens, size]);\n  devWarning(!(typeof icon === 'string' && icon.length > 2), 'Avatar', \"`icon` is using ReactNode instead of string naming in v4. Please check `\".concat(icon, \"` at https://ant.design/components/icon\"));\n  var prefixCls = getPrefixCls('avatar', customizePrefixCls);\n  var sizeCls = classNames((_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-lg\"), size === 'large'), _defineProperty(_classNames, \"\".concat(prefixCls, \"-sm\"), size === 'small'), _classNames));\n  var hasImageElement = /*#__PURE__*/React.isValidElement(src);\n  var classString = classNames(prefixCls, sizeCls, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(prefixCls, \"-\").concat(shape), shape), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-image\"), hasImageElement || src && isImgExist), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-icon\"), icon), _classNames2), className);\n  var sizeStyle = typeof size === 'number' ? {\n    width: size,\n    height: size,\n    lineHeight: \"\".concat(size, \"px\"),\n    fontSize: icon ? size / 2 : 18\n  } : {};\n  var childrenToRender;\n\n  if (typeof src === 'string' && isImgExist) {\n    childrenToRender = /*#__PURE__*/React.createElement(\"img\", {\n      src: src,\n      draggable: draggable,\n      srcSet: srcSet,\n      onError: handleImgLoadError,\n      alt: alt\n    });\n  } else if (hasImageElement) {\n    childrenToRender = src;\n  } else if (icon) {\n    childrenToRender = icon;\n  } else if (mounted || scale !== 1) {\n    var transformString = \"scale(\".concat(scale, \") translateX(-50%)\");\n    var childrenStyle = {\n      msTransform: transformString,\n      WebkitTransform: transformString,\n      transform: transformString\n    };\n    var sizeChildrenStyle = typeof size === 'number' ? {\n      lineHeight: \"\".concat(size, \"px\")\n    } : {};\n    childrenToRender = /*#__PURE__*/React.createElement(ResizeObserver, {\n      onResize: setScaleParam\n    }, /*#__PURE__*/React.createElement(\"span\", {\n      className: \"\".concat(prefixCls, \"-string\"),\n      ref: function ref(node) {\n        avatarChildrenRef.current = node;\n      },\n      style: _extends(_extends({}, sizeChildrenStyle), childrenStyle)\n    }, children));\n  } else {\n    childrenToRender = /*#__PURE__*/React.createElement(\"span\", {\n      className: \"\".concat(prefixCls, \"-string\"),\n      style: {\n        opacity: 0\n      },\n      ref: function ref(node) {\n        avatarChildrenRef.current = node;\n      }\n    }, children);\n  } // The event is triggered twice from bubbling up the DOM tree.\n  // see https://codesandbox.io/s/kind-snow-9lidz\n\n\n  delete others.onError;\n  delete others.gap;\n  return /*#__PURE__*/React.createElement(\"span\", _extends({}, others, {\n    style: _extends(_extends(_extends({}, sizeStyle), responsiveSizeStyle), others.style),\n    className: classString,\n    ref: avatarNodeMergeRef\n  }), childrenToRender);\n};\n\nvar Avatar = /*#__PURE__*/React.forwardRef(InternalAvatar);\nAvatar.displayName = 'Avatar';\nAvatar.defaultProps = {\n  shape: 'circle',\n  size: 'default'\n};\nexport default Avatar;"]},"metadata":{},"sourceType":"module"}