{"ast":null,"code":"\"use client\";\n\nvar __rest = this && this.__rest || function (s, e) {\n  var t = {};\n  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\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};\nimport CheckOutlined from \"@ant-design/icons/es/icons/CheckOutlined\";\nimport CopyOutlined from \"@ant-design/icons/es/icons/CopyOutlined\";\nimport EditOutlined from \"@ant-design/icons/es/icons/EditOutlined\";\nimport classNames from 'classnames';\nimport copy from 'copy-to-clipboard';\nimport ResizeObserver from 'rc-resize-observer';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport useIsomorphicLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport omit from \"rc-util/es/omit\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { isStyleSupport } from '../../_util/styleChecker';\nimport TransButton from '../../_util/transButton';\nimport { ConfigContext } from '../../config-provider';\nimport useLocale from '../../locale/useLocale';\nimport Tooltip from '../../tooltip';\nimport Editable from '../Editable';\nimport Typography from '../Typography';\nimport useMergedConfig from '../hooks/useMergedConfig';\nimport useUpdatedEffect from '../hooks/useUpdatedEffect';\nimport Ellipsis from './Ellipsis';\nimport EllipsisTooltip from './EllipsisTooltip';\nfunction wrapperDecorations(_ref, content) {\n  let {\n    mark,\n    code,\n    underline,\n    delete: del,\n    strong,\n    keyboard,\n    italic\n  } = _ref;\n  let currentContent = content;\n  function wrap(tag, needed) {\n    if (!needed) {\n      return;\n    }\n    currentContent = /*#__PURE__*/React.createElement(tag, {}, currentContent);\n  }\n  wrap('strong', strong);\n  wrap('u', underline);\n  wrap('del', del);\n  wrap('code', code);\n  wrap('mark', mark);\n  wrap('kbd', keyboard);\n  wrap('i', italic);\n  return currentContent;\n}\nfunction getNode(dom, defaultNode, needDom) {\n  if (dom === true || dom === undefined) {\n    return defaultNode;\n  }\n  return dom || needDom && defaultNode;\n}\nfunction toList(val) {\n  if (val === false) {\n    return [false, false];\n  }\n  return Array.isArray(val) ? val : [val];\n}\nconst ELLIPSIS_STR = '...';\nconst Base = /*#__PURE__*/React.forwardRef((props, ref) => {\n  var _a, _b, _c;\n  const {\n      prefixCls: customizePrefixCls,\n      className,\n      style,\n      type,\n      disabled,\n      children,\n      ellipsis,\n      editable,\n      copyable,\n      component,\n      title\n    } = props,\n    restProps = __rest(props, [\"prefixCls\", \"className\", \"style\", \"type\", \"disabled\", \"children\", \"ellipsis\", \"editable\", \"copyable\", \"component\", \"title\"]);\n  const {\n    getPrefixCls,\n    direction\n  } = React.useContext(ConfigContext);\n  const [textLocale] = useLocale('Text');\n  const typographyRef = React.useRef(null);\n  const editIconRef = React.useRef(null);\n  // ============================ MISC ============================\n  const prefixCls = getPrefixCls('typography', customizePrefixCls);\n  const textProps = omit(restProps, ['mark', 'code', 'delete', 'underline', 'strong', 'keyboard', 'italic']);\n  // ========================== Editable ==========================\n  const [enableEdit, editConfig] = useMergedConfig(editable);\n  const [editing, setEditing] = useMergedState(false, {\n    value: editConfig.editing\n  });\n  const {\n    triggerType = ['icon']\n  } = editConfig;\n  const triggerEdit = edit => {\n    var _a;\n    if (edit) {\n      (_a = editConfig.onStart) === null || _a === void 0 ? void 0 : _a.call(editConfig);\n    }\n    setEditing(edit);\n  };\n  // Focus edit icon when back\n  useUpdatedEffect(() => {\n    var _a;\n    if (!editing) {\n      (_a = editIconRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n    }\n  }, [editing]);\n  const onEditClick = e => {\n    e === null || e === void 0 ? void 0 : e.preventDefault();\n    triggerEdit(true);\n  };\n  const onEditChange = value => {\n    var _a;\n    (_a = editConfig.onChange) === null || _a === void 0 ? void 0 : _a.call(editConfig, value);\n    triggerEdit(false);\n  };\n  const onEditCancel = () => {\n    var _a;\n    (_a = editConfig.onCancel) === null || _a === void 0 ? void 0 : _a.call(editConfig);\n    triggerEdit(false);\n  };\n  // ========================== Copyable ==========================\n  const [enableCopy, copyConfig] = useMergedConfig(copyable);\n  const [copied, setCopied] = React.useState(false);\n  const copyIdRef = React.useRef(null);\n  const copyOptions = {};\n  if (copyConfig.format) {\n    copyOptions.format = copyConfig.format;\n  }\n  const cleanCopyId = () => {\n    if (copyIdRef.current) {\n      clearTimeout(copyIdRef.current);\n    }\n  };\n  const onCopyClick = e => {\n    var _a;\n    e === null || e === void 0 ? void 0 : e.preventDefault();\n    e === null || e === void 0 ? void 0 : e.stopPropagation();\n    copy(copyConfig.text || String(children) || '', copyOptions);\n    setCopied(true);\n    // Trigger tips update\n    cleanCopyId();\n    copyIdRef.current = setTimeout(() => {\n      setCopied(false);\n    }, 3000);\n    (_a = copyConfig.onCopy) === null || _a === void 0 ? void 0 : _a.call(copyConfig, e);\n  };\n  React.useEffect(() => cleanCopyId, []);\n  // ========================== Ellipsis ==========================\n  const [isLineClampSupport, setIsLineClampSupport] = React.useState(false);\n  const [isTextOverflowSupport, setIsTextOverflowSupport] = React.useState(false);\n  const [expanded, setExpanded] = React.useState(false);\n  const [isJsEllipsis, setIsJsEllipsis] = React.useState(false);\n  const [isNativeEllipsis, setIsNativeEllipsis] = React.useState(false);\n  const [isNativeVisible, setIsNativeVisible] = React.useState(true);\n  const [enableEllipsis, ellipsisConfig] = useMergedConfig(ellipsis, {\n    expandable: false\n  });\n  const mergedEnableEllipsis = enableEllipsis && !expanded;\n  // Shared prop to reduce bundle size\n  const {\n    rows = 1\n  } = ellipsisConfig;\n  const needMeasureEllipsis = React.useMemo(() =>\n  // Disable ellipsis\n  !mergedEnableEllipsis ||\n  // Provide suffix\n  ellipsisConfig.suffix !== undefined || ellipsisConfig.onEllipsis ||\n  // Can't use css ellipsis since we need to provide the place for button\n  ellipsisConfig.expandable || enableEdit || enableCopy, [mergedEnableEllipsis, ellipsisConfig, enableEdit, enableCopy]);\n  useIsomorphicLayoutEffect(() => {\n    if (enableEllipsis && !needMeasureEllipsis) {\n      setIsLineClampSupport(isStyleSupport('webkitLineClamp'));\n      setIsTextOverflowSupport(isStyleSupport('textOverflow'));\n    }\n  }, [needMeasureEllipsis, enableEllipsis]);\n  const cssEllipsis = React.useMemo(() => {\n    if (needMeasureEllipsis) {\n      return false;\n    }\n    if (rows === 1) {\n      return isTextOverflowSupport;\n    }\n    return isLineClampSupport;\n  }, [needMeasureEllipsis, isTextOverflowSupport, isLineClampSupport]);\n  const isMergedEllipsis = mergedEnableEllipsis && (cssEllipsis ? isNativeEllipsis : isJsEllipsis);\n  const cssTextOverflow = mergedEnableEllipsis && rows === 1 && cssEllipsis;\n  const cssLineClamp = mergedEnableEllipsis && rows > 1 && cssEllipsis;\n  // >>>>> Expand\n  const onExpandClick = e => {\n    var _a;\n    setExpanded(true);\n    (_a = ellipsisConfig.onExpand) === null || _a === void 0 ? void 0 : _a.call(ellipsisConfig, e);\n  };\n  const [ellipsisWidth, setEllipsisWidth] = React.useState(0);\n  const [ellipsisFontSize, setEllipsisFontSize] = React.useState(0);\n  const onResize = (_ref2, element) => {\n    let {\n      offsetWidth\n    } = _ref2;\n    var _a;\n    setEllipsisWidth(offsetWidth);\n    setEllipsisFontSize(parseInt((_a = window.getComputedStyle) === null || _a === void 0 ? void 0 : _a.call(window, element).fontSize, 10) || 0);\n  };\n  // >>>>> JS Ellipsis\n  const onJsEllipsis = jsEllipsis => {\n    var _a;\n    setIsJsEllipsis(jsEllipsis);\n    // Trigger if changed\n    if (isJsEllipsis !== jsEllipsis) {\n      (_a = ellipsisConfig.onEllipsis) === null || _a === void 0 ? void 0 : _a.call(ellipsisConfig, jsEllipsis);\n    }\n  };\n  // >>>>> Native ellipsis\n  React.useEffect(() => {\n    const textEle = typographyRef.current;\n    if (enableEllipsis && cssEllipsis && textEle) {\n      const currentEllipsis = cssLineClamp ? textEle.offsetHeight < textEle.scrollHeight : textEle.offsetWidth < textEle.scrollWidth;\n      if (isNativeEllipsis !== currentEllipsis) {\n        setIsNativeEllipsis(currentEllipsis);\n      }\n    }\n  }, [enableEllipsis, cssEllipsis, children, cssLineClamp, isNativeVisible]);\n  // https://github.com/ant-design/ant-design/issues/36786\n  // Use IntersectionObserver to check if element is invisible\n  React.useEffect(() => {\n    const textEle = typographyRef.current;\n    if (typeof IntersectionObserver === 'undefined' || !textEle || !cssEllipsis || !mergedEnableEllipsis) {\n      return;\n    }\n    /* eslint-disable-next-line compat/compat */\n    const observer = new IntersectionObserver(() => {\n      setIsNativeVisible(!!textEle.offsetParent);\n    });\n    observer.observe(textEle);\n    return () => {\n      observer.disconnect();\n    };\n  }, [cssEllipsis, mergedEnableEllipsis]);\n  // ========================== Tooltip ===========================\n  let tooltipProps = {};\n  if (ellipsisConfig.tooltip === true) {\n    tooltipProps = {\n      title: (_a = editConfig.text) !== null && _a !== void 0 ? _a : children\n    };\n  } else if ( /*#__PURE__*/React.isValidElement(ellipsisConfig.tooltip)) {\n    tooltipProps = {\n      title: ellipsisConfig.tooltip\n    };\n  } else if (typeof ellipsisConfig.tooltip === 'object') {\n    tooltipProps = Object.assign({\n      title: (_b = editConfig.text) !== null && _b !== void 0 ? _b : children\n    }, ellipsisConfig.tooltip);\n  } else {\n    tooltipProps = {\n      title: ellipsisConfig.tooltip\n    };\n  }\n  const topAriaLabel = React.useMemo(() => {\n    const isValid = val => ['string', 'number'].includes(typeof val);\n    if (!enableEllipsis || cssEllipsis) {\n      return undefined;\n    }\n    if (isValid(editConfig.text)) {\n      return editConfig.text;\n    }\n    if (isValid(children)) {\n      return children;\n    }\n    if (isValid(title)) {\n      return title;\n    }\n    if (isValid(tooltipProps.title)) {\n      return tooltipProps.title;\n    }\n    return undefined;\n  }, [enableEllipsis, cssEllipsis, title, tooltipProps.title, isMergedEllipsis]);\n  // =========================== Render ===========================\n  // >>>>>>>>>>> Editing input\n  if (editing) {\n    return /*#__PURE__*/React.createElement(Editable, {\n      value: (_c = editConfig.text) !== null && _c !== void 0 ? _c : typeof children === 'string' ? children : '',\n      onSave: onEditChange,\n      onCancel: onEditCancel,\n      onEnd: editConfig.onEnd,\n      prefixCls: prefixCls,\n      className: className,\n      style: style,\n      direction: direction,\n      component: component,\n      maxLength: editConfig.maxLength,\n      autoSize: editConfig.autoSize,\n      enterIcon: editConfig.enterIcon\n    });\n  }\n  // >>>>>>>>>>> Typography\n  // Expand\n  const renderExpand = () => {\n    const {\n      expandable,\n      symbol\n    } = ellipsisConfig;\n    if (!expandable) return null;\n    let expandContent;\n    if (symbol) {\n      expandContent = symbol;\n    } else {\n      expandContent = textLocale === null || textLocale === void 0 ? void 0 : textLocale.expand;\n    }\n    return /*#__PURE__*/React.createElement(\"a\", {\n      key: \"expand\",\n      className: `${prefixCls}-expand`,\n      onClick: onExpandClick,\n      \"aria-label\": textLocale === null || textLocale === void 0 ? void 0 : textLocale.expand\n    }, expandContent);\n  };\n  // Edit\n  const renderEdit = () => {\n    if (!enableEdit) return;\n    const {\n      icon,\n      tooltip\n    } = editConfig;\n    const editTitle = toArray(tooltip)[0] || (textLocale === null || textLocale === void 0 ? void 0 : textLocale.edit);\n    const ariaLabel = typeof editTitle === 'string' ? editTitle : '';\n    return triggerType.includes('icon') ? /*#__PURE__*/React.createElement(Tooltip, {\n      key: \"edit\",\n      title: tooltip === false ? '' : editTitle\n    }, /*#__PURE__*/React.createElement(TransButton, {\n      ref: editIconRef,\n      className: `${prefixCls}-edit`,\n      onClick: onEditClick,\n      \"aria-label\": ariaLabel\n    }, icon || /*#__PURE__*/React.createElement(EditOutlined, {\n      role: \"button\"\n    }))) : null;\n  };\n  // Copy\n  const renderCopy = () => {\n    if (!enableCopy) return;\n    const {\n      tooltips,\n      icon\n    } = copyConfig;\n    const tooltipNodes = toList(tooltips);\n    const iconNodes = toList(icon);\n    const copyTitle = copied ? getNode(tooltipNodes[1], textLocale === null || textLocale === void 0 ? void 0 : textLocale.copied) : getNode(tooltipNodes[0], textLocale === null || textLocale === void 0 ? void 0 : textLocale.copy);\n    const systemStr = copied ? textLocale === null || textLocale === void 0 ? void 0 : textLocale.copied : textLocale === null || textLocale === void 0 ? void 0 : textLocale.copy;\n    const ariaLabel = typeof copyTitle === 'string' ? copyTitle : systemStr;\n    return /*#__PURE__*/React.createElement(Tooltip, {\n      key: \"copy\",\n      title: copyTitle\n    }, /*#__PURE__*/React.createElement(TransButton, {\n      className: classNames(`${prefixCls}-copy`, copied && `${prefixCls}-copy-success`),\n      onClick: onCopyClick,\n      \"aria-label\": ariaLabel\n    }, copied ? getNode(iconNodes[1], /*#__PURE__*/React.createElement(CheckOutlined, null), true) : getNode(iconNodes[0], /*#__PURE__*/React.createElement(CopyOutlined, null), true)));\n  };\n  const renderOperations = renderExpanded => [renderExpanded && renderExpand(), renderEdit(), renderCopy()];\n  const renderEllipsis = needEllipsis => [needEllipsis && /*#__PURE__*/React.createElement(\"span\", {\n    \"aria-hidden\": true,\n    key: \"ellipsis\"\n  }, ELLIPSIS_STR), ellipsisConfig.suffix, renderOperations(needEllipsis)];\n  return /*#__PURE__*/React.createElement(ResizeObserver, {\n    onResize: onResize,\n    disabled: !mergedEnableEllipsis || cssEllipsis\n  }, resizeRef => /*#__PURE__*/React.createElement(EllipsisTooltip, {\n    tooltipProps: tooltipProps,\n    enabledEllipsis: mergedEnableEllipsis,\n    isEllipsis: isMergedEllipsis\n  }, /*#__PURE__*/React.createElement(Typography, Object.assign({\n    className: classNames({\n      [`${prefixCls}-${type}`]: type,\n      [`${prefixCls}-disabled`]: disabled,\n      [`${prefixCls}-ellipsis`]: enableEllipsis,\n      [`${prefixCls}-single-line`]: mergedEnableEllipsis && rows === 1,\n      [`${prefixCls}-ellipsis-single-line`]: cssTextOverflow,\n      [`${prefixCls}-ellipsis-multiple-line`]: cssLineClamp\n    }, className),\n    prefixCls: customizePrefixCls,\n    style: Object.assign(Object.assign({}, style), {\n      WebkitLineClamp: cssLineClamp ? rows : undefined\n    }),\n    component: component,\n    ref: composeRef(resizeRef, typographyRef, ref),\n    direction: direction,\n    onClick: triggerType.includes('text') ? onEditClick : undefined,\n    \"aria-label\": topAriaLabel === null || topAriaLabel === void 0 ? void 0 : topAriaLabel.toString(),\n    title: title\n  }, textProps), /*#__PURE__*/React.createElement(Ellipsis, {\n    enabledMeasure: mergedEnableEllipsis && !cssEllipsis,\n    text: children,\n    rows: rows,\n    width: ellipsisWidth,\n    fontSize: ellipsisFontSize,\n    onEllipsis: onJsEllipsis\n  }, (node, needEllipsis) => {\n    let renderNode = node;\n    if (node.length && needEllipsis && topAriaLabel) {\n      renderNode = /*#__PURE__*/React.createElement(\"span\", {\n        key: \"show-content\",\n        \"aria-hidden\": true\n      }, renderNode);\n    }\n    const wrappedContext = wrapperDecorations(props, /*#__PURE__*/React.createElement(React.Fragment, null, renderNode, renderEllipsis(needEllipsis)));\n    return wrappedContext;\n  }))));\n});\nexport default Base;","map":{"version":3,"names":["__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","CheckOutlined","CopyOutlined","EditOutlined","classNames","copy","ResizeObserver","toArray","useIsomorphicLayoutEffect","useMergedState","omit","composeRef","React","isStyleSupport","TransButton","ConfigContext","useLocale","Tooltip","Editable","Typography","useMergedConfig","useUpdatedEffect","Ellipsis","EllipsisTooltip","wrapperDecorations","_ref","content","mark","code","underline","delete","del","strong","keyboard","italic","currentContent","wrap","tag","needed","createElement","getNode","dom","defaultNode","needDom","undefined","toList","val","Array","isArray","ELLIPSIS_STR","Base","forwardRef","props","ref","_a","_b","_c","prefixCls","customizePrefixCls","className","style","type","disabled","children","ellipsis","editable","copyable","component","title","restProps","getPrefixCls","direction","useContext","textLocale","typographyRef","useRef","editIconRef","textProps","enableEdit","editConfig","editing","setEditing","value","triggerType","triggerEdit","edit","onStart","current","focus","onEditClick","preventDefault","onEditChange","onChange","onEditCancel","onCancel","enableCopy","copyConfig","copied","setCopied","useState","copyIdRef","copyOptions","format","cleanCopyId","clearTimeout","onCopyClick","stopPropagation","text","String","setTimeout","onCopy","useEffect","isLineClampSupport","setIsLineClampSupport","isTextOverflowSupport","setIsTextOverflowSupport","expanded","setExpanded","isJsEllipsis","setIsJsEllipsis","isNativeEllipsis","setIsNativeEllipsis","isNativeVisible","setIsNativeVisible","enableEllipsis","ellipsisConfig","expandable","mergedEnableEllipsis","rows","needMeasureEllipsis","useMemo","suffix","onEllipsis","cssEllipsis","isMergedEllipsis","cssTextOverflow","cssLineClamp","onExpandClick","onExpand","ellipsisWidth","setEllipsisWidth","ellipsisFontSize","setEllipsisFontSize","onResize","_ref2","element","offsetWidth","parseInt","window","getComputedStyle","fontSize","onJsEllipsis","jsEllipsis","textEle","currentEllipsis","offsetHeight","scrollHeight","scrollWidth","IntersectionObserver","observer","offsetParent","observe","disconnect","tooltipProps","tooltip","isValidElement","assign","topAriaLabel","isValid","includes","onSave","onEnd","maxLength","autoSize","enterIcon","renderExpand","symbol","expandContent","expand","key","onClick","renderEdit","icon","editTitle","ariaLabel","role","renderCopy","tooltips","tooltipNodes","iconNodes","copyTitle","systemStr","renderOperations","renderExpanded","renderEllipsis","needEllipsis","resizeRef","enabledEllipsis","isEllipsis","WebkitLineClamp","toString","enabledMeasure","width","node","renderNode","wrappedContext","Fragment"],"sources":["/var/www/gavt/node_modules/antd/es/typography/Base/index.js"],"sourcesContent":["\"use client\";\n\nvar __rest = this && this.__rest || function (s, e) {\n  var t = {};\n  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\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};\nimport CheckOutlined from \"@ant-design/icons/es/icons/CheckOutlined\";\nimport CopyOutlined from \"@ant-design/icons/es/icons/CopyOutlined\";\nimport EditOutlined from \"@ant-design/icons/es/icons/EditOutlined\";\nimport classNames from 'classnames';\nimport copy from 'copy-to-clipboard';\nimport ResizeObserver from 'rc-resize-observer';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport useIsomorphicLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport omit from \"rc-util/es/omit\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { isStyleSupport } from '../../_util/styleChecker';\nimport TransButton from '../../_util/transButton';\nimport { ConfigContext } from '../../config-provider';\nimport useLocale from '../../locale/useLocale';\nimport Tooltip from '../../tooltip';\nimport Editable from '../Editable';\nimport Typography from '../Typography';\nimport useMergedConfig from '../hooks/useMergedConfig';\nimport useUpdatedEffect from '../hooks/useUpdatedEffect';\nimport Ellipsis from './Ellipsis';\nimport EllipsisTooltip from './EllipsisTooltip';\nfunction wrapperDecorations(_ref, content) {\n  let {\n    mark,\n    code,\n    underline,\n    delete: del,\n    strong,\n    keyboard,\n    italic\n  } = _ref;\n  let currentContent = content;\n  function wrap(tag, needed) {\n    if (!needed) {\n      return;\n    }\n    currentContent = /*#__PURE__*/React.createElement(tag, {}, currentContent);\n  }\n  wrap('strong', strong);\n  wrap('u', underline);\n  wrap('del', del);\n  wrap('code', code);\n  wrap('mark', mark);\n  wrap('kbd', keyboard);\n  wrap('i', italic);\n  return currentContent;\n}\nfunction getNode(dom, defaultNode, needDom) {\n  if (dom === true || dom === undefined) {\n    return defaultNode;\n  }\n  return dom || needDom && defaultNode;\n}\nfunction toList(val) {\n  if (val === false) {\n    return [false, false];\n  }\n  return Array.isArray(val) ? val : [val];\n}\nconst ELLIPSIS_STR = '...';\nconst Base = /*#__PURE__*/React.forwardRef((props, ref) => {\n  var _a, _b, _c;\n  const {\n      prefixCls: customizePrefixCls,\n      className,\n      style,\n      type,\n      disabled,\n      children,\n      ellipsis,\n      editable,\n      copyable,\n      component,\n      title\n    } = props,\n    restProps = __rest(props, [\"prefixCls\", \"className\", \"style\", \"type\", \"disabled\", \"children\", \"ellipsis\", \"editable\", \"copyable\", \"component\", \"title\"]);\n  const {\n    getPrefixCls,\n    direction\n  } = React.useContext(ConfigContext);\n  const [textLocale] = useLocale('Text');\n  const typographyRef = React.useRef(null);\n  const editIconRef = React.useRef(null);\n  // ============================ MISC ============================\n  const prefixCls = getPrefixCls('typography', customizePrefixCls);\n  const textProps = omit(restProps, ['mark', 'code', 'delete', 'underline', 'strong', 'keyboard', 'italic']);\n  // ========================== Editable ==========================\n  const [enableEdit, editConfig] = useMergedConfig(editable);\n  const [editing, setEditing] = useMergedState(false, {\n    value: editConfig.editing\n  });\n  const {\n    triggerType = ['icon']\n  } = editConfig;\n  const triggerEdit = edit => {\n    var _a;\n    if (edit) {\n      (_a = editConfig.onStart) === null || _a === void 0 ? void 0 : _a.call(editConfig);\n    }\n    setEditing(edit);\n  };\n  // Focus edit icon when back\n  useUpdatedEffect(() => {\n    var _a;\n    if (!editing) {\n      (_a = editIconRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n    }\n  }, [editing]);\n  const onEditClick = e => {\n    e === null || e === void 0 ? void 0 : e.preventDefault();\n    triggerEdit(true);\n  };\n  const onEditChange = value => {\n    var _a;\n    (_a = editConfig.onChange) === null || _a === void 0 ? void 0 : _a.call(editConfig, value);\n    triggerEdit(false);\n  };\n  const onEditCancel = () => {\n    var _a;\n    (_a = editConfig.onCancel) === null || _a === void 0 ? void 0 : _a.call(editConfig);\n    triggerEdit(false);\n  };\n  // ========================== Copyable ==========================\n  const [enableCopy, copyConfig] = useMergedConfig(copyable);\n  const [copied, setCopied] = React.useState(false);\n  const copyIdRef = React.useRef(null);\n  const copyOptions = {};\n  if (copyConfig.format) {\n    copyOptions.format = copyConfig.format;\n  }\n  const cleanCopyId = () => {\n    if (copyIdRef.current) {\n      clearTimeout(copyIdRef.current);\n    }\n  };\n  const onCopyClick = e => {\n    var _a;\n    e === null || e === void 0 ? void 0 : e.preventDefault();\n    e === null || e === void 0 ? void 0 : e.stopPropagation();\n    copy(copyConfig.text || String(children) || '', copyOptions);\n    setCopied(true);\n    // Trigger tips update\n    cleanCopyId();\n    copyIdRef.current = setTimeout(() => {\n      setCopied(false);\n    }, 3000);\n    (_a = copyConfig.onCopy) === null || _a === void 0 ? void 0 : _a.call(copyConfig, e);\n  };\n  React.useEffect(() => cleanCopyId, []);\n  // ========================== Ellipsis ==========================\n  const [isLineClampSupport, setIsLineClampSupport] = React.useState(false);\n  const [isTextOverflowSupport, setIsTextOverflowSupport] = React.useState(false);\n  const [expanded, setExpanded] = React.useState(false);\n  const [isJsEllipsis, setIsJsEllipsis] = React.useState(false);\n  const [isNativeEllipsis, setIsNativeEllipsis] = React.useState(false);\n  const [isNativeVisible, setIsNativeVisible] = React.useState(true);\n  const [enableEllipsis, ellipsisConfig] = useMergedConfig(ellipsis, {\n    expandable: false\n  });\n  const mergedEnableEllipsis = enableEllipsis && !expanded;\n  // Shared prop to reduce bundle size\n  const {\n    rows = 1\n  } = ellipsisConfig;\n  const needMeasureEllipsis = React.useMemo(() =>\n  // Disable ellipsis\n  !mergedEnableEllipsis ||\n  // Provide suffix\n  ellipsisConfig.suffix !== undefined || ellipsisConfig.onEllipsis ||\n  // Can't use css ellipsis since we need to provide the place for button\n  ellipsisConfig.expandable || enableEdit || enableCopy, [mergedEnableEllipsis, ellipsisConfig, enableEdit, enableCopy]);\n  useIsomorphicLayoutEffect(() => {\n    if (enableEllipsis && !needMeasureEllipsis) {\n      setIsLineClampSupport(isStyleSupport('webkitLineClamp'));\n      setIsTextOverflowSupport(isStyleSupport('textOverflow'));\n    }\n  }, [needMeasureEllipsis, enableEllipsis]);\n  const cssEllipsis = React.useMemo(() => {\n    if (needMeasureEllipsis) {\n      return false;\n    }\n    if (rows === 1) {\n      return isTextOverflowSupport;\n    }\n    return isLineClampSupport;\n  }, [needMeasureEllipsis, isTextOverflowSupport, isLineClampSupport]);\n  const isMergedEllipsis = mergedEnableEllipsis && (cssEllipsis ? isNativeEllipsis : isJsEllipsis);\n  const cssTextOverflow = mergedEnableEllipsis && rows === 1 && cssEllipsis;\n  const cssLineClamp = mergedEnableEllipsis && rows > 1 && cssEllipsis;\n  // >>>>> Expand\n  const onExpandClick = e => {\n    var _a;\n    setExpanded(true);\n    (_a = ellipsisConfig.onExpand) === null || _a === void 0 ? void 0 : _a.call(ellipsisConfig, e);\n  };\n  const [ellipsisWidth, setEllipsisWidth] = React.useState(0);\n  const [ellipsisFontSize, setEllipsisFontSize] = React.useState(0);\n  const onResize = (_ref2, element) => {\n    let {\n      offsetWidth\n    } = _ref2;\n    var _a;\n    setEllipsisWidth(offsetWidth);\n    setEllipsisFontSize(parseInt((_a = window.getComputedStyle) === null || _a === void 0 ? void 0 : _a.call(window, element).fontSize, 10) || 0);\n  };\n  // >>>>> JS Ellipsis\n  const onJsEllipsis = jsEllipsis => {\n    var _a;\n    setIsJsEllipsis(jsEllipsis);\n    // Trigger if changed\n    if (isJsEllipsis !== jsEllipsis) {\n      (_a = ellipsisConfig.onEllipsis) === null || _a === void 0 ? void 0 : _a.call(ellipsisConfig, jsEllipsis);\n    }\n  };\n  // >>>>> Native ellipsis\n  React.useEffect(() => {\n    const textEle = typographyRef.current;\n    if (enableEllipsis && cssEllipsis && textEle) {\n      const currentEllipsis = cssLineClamp ? textEle.offsetHeight < textEle.scrollHeight : textEle.offsetWidth < textEle.scrollWidth;\n      if (isNativeEllipsis !== currentEllipsis) {\n        setIsNativeEllipsis(currentEllipsis);\n      }\n    }\n  }, [enableEllipsis, cssEllipsis, children, cssLineClamp, isNativeVisible]);\n  // https://github.com/ant-design/ant-design/issues/36786\n  // Use IntersectionObserver to check if element is invisible\n  React.useEffect(() => {\n    const textEle = typographyRef.current;\n    if (typeof IntersectionObserver === 'undefined' || !textEle || !cssEllipsis || !mergedEnableEllipsis) {\n      return;\n    }\n    /* eslint-disable-next-line compat/compat */\n    const observer = new IntersectionObserver(() => {\n      setIsNativeVisible(!!textEle.offsetParent);\n    });\n    observer.observe(textEle);\n    return () => {\n      observer.disconnect();\n    };\n  }, [cssEllipsis, mergedEnableEllipsis]);\n  // ========================== Tooltip ===========================\n  let tooltipProps = {};\n  if (ellipsisConfig.tooltip === true) {\n    tooltipProps = {\n      title: (_a = editConfig.text) !== null && _a !== void 0 ? _a : children\n    };\n  } else if ( /*#__PURE__*/React.isValidElement(ellipsisConfig.tooltip)) {\n    tooltipProps = {\n      title: ellipsisConfig.tooltip\n    };\n  } else if (typeof ellipsisConfig.tooltip === 'object') {\n    tooltipProps = Object.assign({\n      title: (_b = editConfig.text) !== null && _b !== void 0 ? _b : children\n    }, ellipsisConfig.tooltip);\n  } else {\n    tooltipProps = {\n      title: ellipsisConfig.tooltip\n    };\n  }\n  const topAriaLabel = React.useMemo(() => {\n    const isValid = val => ['string', 'number'].includes(typeof val);\n    if (!enableEllipsis || cssEllipsis) {\n      return undefined;\n    }\n    if (isValid(editConfig.text)) {\n      return editConfig.text;\n    }\n    if (isValid(children)) {\n      return children;\n    }\n    if (isValid(title)) {\n      return title;\n    }\n    if (isValid(tooltipProps.title)) {\n      return tooltipProps.title;\n    }\n    return undefined;\n  }, [enableEllipsis, cssEllipsis, title, tooltipProps.title, isMergedEllipsis]);\n  // =========================== Render ===========================\n  // >>>>>>>>>>> Editing input\n  if (editing) {\n    return /*#__PURE__*/React.createElement(Editable, {\n      value: (_c = editConfig.text) !== null && _c !== void 0 ? _c : typeof children === 'string' ? children : '',\n      onSave: onEditChange,\n      onCancel: onEditCancel,\n      onEnd: editConfig.onEnd,\n      prefixCls: prefixCls,\n      className: className,\n      style: style,\n      direction: direction,\n      component: component,\n      maxLength: editConfig.maxLength,\n      autoSize: editConfig.autoSize,\n      enterIcon: editConfig.enterIcon\n    });\n  }\n  // >>>>>>>>>>> Typography\n  // Expand\n  const renderExpand = () => {\n    const {\n      expandable,\n      symbol\n    } = ellipsisConfig;\n    if (!expandable) return null;\n    let expandContent;\n    if (symbol) {\n      expandContent = symbol;\n    } else {\n      expandContent = textLocale === null || textLocale === void 0 ? void 0 : textLocale.expand;\n    }\n    return /*#__PURE__*/React.createElement(\"a\", {\n      key: \"expand\",\n      className: `${prefixCls}-expand`,\n      onClick: onExpandClick,\n      \"aria-label\": textLocale === null || textLocale === void 0 ? void 0 : textLocale.expand\n    }, expandContent);\n  };\n  // Edit\n  const renderEdit = () => {\n    if (!enableEdit) return;\n    const {\n      icon,\n      tooltip\n    } = editConfig;\n    const editTitle = toArray(tooltip)[0] || (textLocale === null || textLocale === void 0 ? void 0 : textLocale.edit);\n    const ariaLabel = typeof editTitle === 'string' ? editTitle : '';\n    return triggerType.includes('icon') ? /*#__PURE__*/React.createElement(Tooltip, {\n      key: \"edit\",\n      title: tooltip === false ? '' : editTitle\n    }, /*#__PURE__*/React.createElement(TransButton, {\n      ref: editIconRef,\n      className: `${prefixCls}-edit`,\n      onClick: onEditClick,\n      \"aria-label\": ariaLabel\n    }, icon || /*#__PURE__*/React.createElement(EditOutlined, {\n      role: \"button\"\n    }))) : null;\n  };\n  // Copy\n  const renderCopy = () => {\n    if (!enableCopy) return;\n    const {\n      tooltips,\n      icon\n    } = copyConfig;\n    const tooltipNodes = toList(tooltips);\n    const iconNodes = toList(icon);\n    const copyTitle = copied ? getNode(tooltipNodes[1], textLocale === null || textLocale === void 0 ? void 0 : textLocale.copied) : getNode(tooltipNodes[0], textLocale === null || textLocale === void 0 ? void 0 : textLocale.copy);\n    const systemStr = copied ? textLocale === null || textLocale === void 0 ? void 0 : textLocale.copied : textLocale === null || textLocale === void 0 ? void 0 : textLocale.copy;\n    const ariaLabel = typeof copyTitle === 'string' ? copyTitle : systemStr;\n    return /*#__PURE__*/React.createElement(Tooltip, {\n      key: \"copy\",\n      title: copyTitle\n    }, /*#__PURE__*/React.createElement(TransButton, {\n      className: classNames(`${prefixCls}-copy`, copied && `${prefixCls}-copy-success`),\n      onClick: onCopyClick,\n      \"aria-label\": ariaLabel\n    }, copied ? getNode(iconNodes[1], /*#__PURE__*/React.createElement(CheckOutlined, null), true) : getNode(iconNodes[0], /*#__PURE__*/React.createElement(CopyOutlined, null), true)));\n  };\n  const renderOperations = renderExpanded => [renderExpanded && renderExpand(), renderEdit(), renderCopy()];\n  const renderEllipsis = needEllipsis => [needEllipsis && /*#__PURE__*/React.createElement(\"span\", {\n    \"aria-hidden\": true,\n    key: \"ellipsis\"\n  }, ELLIPSIS_STR), ellipsisConfig.suffix, renderOperations(needEllipsis)];\n  return /*#__PURE__*/React.createElement(ResizeObserver, {\n    onResize: onResize,\n    disabled: !mergedEnableEllipsis || cssEllipsis\n  }, resizeRef => /*#__PURE__*/React.createElement(EllipsisTooltip, {\n    tooltipProps: tooltipProps,\n    enabledEllipsis: mergedEnableEllipsis,\n    isEllipsis: isMergedEllipsis\n  }, /*#__PURE__*/React.createElement(Typography, Object.assign({\n    className: classNames({\n      [`${prefixCls}-${type}`]: type,\n      [`${prefixCls}-disabled`]: disabled,\n      [`${prefixCls}-ellipsis`]: enableEllipsis,\n      [`${prefixCls}-single-line`]: mergedEnableEllipsis && rows === 1,\n      [`${prefixCls}-ellipsis-single-line`]: cssTextOverflow,\n      [`${prefixCls}-ellipsis-multiple-line`]: cssLineClamp\n    }, className),\n    prefixCls: customizePrefixCls,\n    style: Object.assign(Object.assign({}, style), {\n      WebkitLineClamp: cssLineClamp ? rows : undefined\n    }),\n    component: component,\n    ref: composeRef(resizeRef, typographyRef, ref),\n    direction: direction,\n    onClick: triggerType.includes('text') ? onEditClick : undefined,\n    \"aria-label\": topAriaLabel === null || topAriaLabel === void 0 ? void 0 : topAriaLabel.toString(),\n    title: title\n  }, textProps), /*#__PURE__*/React.createElement(Ellipsis, {\n    enabledMeasure: mergedEnableEllipsis && !cssEllipsis,\n    text: children,\n    rows: rows,\n    width: ellipsisWidth,\n    fontSize: ellipsisFontSize,\n    onEllipsis: onJsEllipsis\n  }, (node, needEllipsis) => {\n    let renderNode = node;\n    if (node.length && needEllipsis && topAriaLabel) {\n      renderNode = /*#__PURE__*/React.createElement(\"span\", {\n        key: \"show-content\",\n        \"aria-hidden\": true\n      }, renderNode);\n    }\n    const wrappedContext = wrapperDecorations(props, /*#__PURE__*/React.createElement(React.Fragment, null, renderNode, renderEllipsis(needEllipsis)));\n    return wrappedContext;\n  }))));\n});\nexport default Base;"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}