{"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 * as React from 'react';\nimport EditOutlined from \"@ant-design/icons/es/icons/EditOutlined\";\nimport classNames from 'classnames';\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 { 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 useCopyClick from '../hooks/useCopyClick';\nimport useMergedConfig from '../hooks/useMergedConfig';\nimport useUpdatedEffect from '../hooks/useUpdatedEffect';\nimport Typography from '../Typography';\nimport CopyBtn from './CopyBtn';\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}\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 {\n    copied,\n    copyLoading,\n    onClick: onCopyClick\n  } = useCopyClick({\n    copyConfig,\n    children\n  });\n  // ========================== Ellipsis ==========================\n  const [isLineClampSupport, setIsLineClampSupport] = React.useState(false);\n  const [isTextOverflowSupport, setIsTextOverflowSupport] = 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    symbol: isExpanded => isExpanded ? textLocale === null || textLocale === void 0 ? void 0 : textLocale.collapse : textLocale === null || textLocale === void 0 ? void 0 : textLocale.expand\n  });\n  const [expanded, setExpanded] = useMergedState(ellipsisConfig.defaultExpanded || false, {\n    value: ellipsisConfig.expanded\n  });\n  const mergedEnableEllipsis = enableEllipsis && (!expanded || ellipsisConfig.expandable === 'collapsible');\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, setCssEllipsis] = React.useState(mergedEnableEllipsis);\n  const canUseCssEllipsis = 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  // We use effect to change from css ellipsis to js ellipsis.\n  // To make SSR still can see the ellipsis.\n  useIsomorphicLayoutEffect(() => {\n    setCssEllipsis(canUseCssEllipsis && mergedEnableEllipsis);\n  }, [canUseCssEllipsis, mergedEnableEllipsis]);\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, info) => {\n    var _a;\n    setExpanded(info.expanded);\n    (_a = ellipsisConfig.onExpand) === null || _a === void 0 ? void 0 : _a.call(ellipsisConfig, e, info);\n  };\n  const [ellipsisWidth, setEllipsisWidth] = React.useState(0);\n  const onResize = _ref2 => {\n    let {\n      offsetWidth\n    } = _ref2;\n    setEllipsisWidth(offsetWidth);\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, ellipsisWidth]);\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    if (expanded && expandable !== 'collapsible') return null;\n    return /*#__PURE__*/React.createElement(\"a\", {\n      key: \"expand\",\n      className: `${prefixCls}-${expanded ? 'collapse' : 'expand'}`,\n      onClick: e => onExpandClick(e, {\n        expanded: !expanded\n      }),\n      \"aria-label\": expanded ? textLocale.collapse : textLocale === null || textLocale === void 0 ? void 0 : textLocale.expand\n    }, typeof symbol === 'function' ? symbol(expanded) : symbol);\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) {\n      return null;\n    }\n    return /*#__PURE__*/React.createElement(CopyBtn, Object.assign({\n      key: \"copy\"\n    }, copyConfig, {\n      prefixCls: prefixCls,\n      copied: copied,\n      locale: textLocale,\n      onCopy: onCopyClick,\n      loading: copyLoading,\n      iconOnly: children === null || children === undefined\n    }));\n  };\n  const renderOperations = canEllipsis => [\n  // (renderExpanded || ellipsisConfig.collapsible) && renderExpand(),\n  canEllipsis && renderExpand(), renderEdit(), renderCopy()];\n  const renderEllipsis = canEllipsis => [canEllipsis && !expanded && ( /*#__PURE__*/React.createElement(\"span\", {\n    \"aria-hidden\": true,\n    key: \"ellipsis\"\n  }, ELLIPSIS_STR)), ellipsisConfig.suffix, renderOperations(canEllipsis)];\n  return /*#__PURE__*/React.createElement(ResizeObserver, {\n    onResize: onResize,\n    disabled: !mergedEnableEllipsis\n  }, resizeRef => ( /*#__PURE__*/React.createElement(EllipsisTooltip, {\n    tooltipProps: tooltipProps,\n    enableEllipsis: 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 && !expanded,\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    enableMeasure: mergedEnableEllipsis && !cssEllipsis,\n    text: children,\n    rows: rows,\n    width: ellipsisWidth,\n    onEllipsis: onJsEllipsis,\n    expanded: expanded,\n    miscDeps: [copied, expanded, copyLoading, enableEdit, enableCopy]\n  }, (node, canEllipsis) => {\n    let renderNode = node;\n    if (node.length && canEllipsis && !expanded && 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(canEllipsis)));\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","React","EditOutlined","classNames","ResizeObserver","toArray","useIsomorphicLayoutEffect","useMergedState","omit","composeRef","isStyleSupport","TransButton","ConfigContext","useLocale","Tooltip","Editable","useCopyClick","useMergedConfig","useUpdatedEffect","Typography","CopyBtn","Ellipsis","EllipsisTooltip","wrapperDecorations","_ref","content","mark","code","underline","delete","del","strong","keyboard","italic","currentContent","wrap","tag","needed","createElement","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","copyLoading","onClick","onCopyClick","isLineClampSupport","setIsLineClampSupport","useState","isTextOverflowSupport","setIsTextOverflowSupport","isJsEllipsis","setIsJsEllipsis","isNativeEllipsis","setIsNativeEllipsis","isNativeVisible","setIsNativeVisible","enableEllipsis","ellipsisConfig","expandable","symbol","isExpanded","collapse","expand","expanded","setExpanded","defaultExpanded","mergedEnableEllipsis","rows","needMeasureEllipsis","useMemo","suffix","undefined","onEllipsis","cssEllipsis","setCssEllipsis","canUseCssEllipsis","isMergedEllipsis","cssTextOverflow","cssLineClamp","onExpandClick","info","onExpand","ellipsisWidth","setEllipsisWidth","onResize","_ref2","offsetWidth","onJsEllipsis","jsEllipsis","useEffect","textEle","currentEllipsis","offsetHeight","scrollHeight","scrollWidth","IntersectionObserver","observer","offsetParent","observe","disconnect","tooltipProps","tooltip","text","isValidElement","assign","topAriaLabel","isValid","val","includes","onSave","onEnd","maxLength","autoSize","enterIcon","renderExpand","key","renderEdit","icon","editTitle","ariaLabel","role","renderCopy","locale","onCopy","loading","iconOnly","renderOperations","canEllipsis","renderEllipsis","resizeRef","isEllipsis","WebkitLineClamp","toString","enableMeasure","width","miscDeps","node","renderNode","wrappedContext","Fragment"],"sources":["/Users/shanyi/Desktop/Projects/UC_Trains_Voice/react-demo/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 * as React from 'react';\nimport EditOutlined from \"@ant-design/icons/es/icons/EditOutlined\";\nimport classNames from 'classnames';\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 { 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 useCopyClick from '../hooks/useCopyClick';\nimport useMergedConfig from '../hooks/useMergedConfig';\nimport useUpdatedEffect from '../hooks/useUpdatedEffect';\nimport Typography from '../Typography';\nimport CopyBtn from './CopyBtn';\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}\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 {\n    copied,\n    copyLoading,\n    onClick: onCopyClick\n  } = useCopyClick({\n    copyConfig,\n    children\n  });\n  // ========================== Ellipsis ==========================\n  const [isLineClampSupport, setIsLineClampSupport] = React.useState(false);\n  const [isTextOverflowSupport, setIsTextOverflowSupport] = 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    symbol: isExpanded => isExpanded ? textLocale === null || textLocale === void 0 ? void 0 : textLocale.collapse : textLocale === null || textLocale === void 0 ? void 0 : textLocale.expand\n  });\n  const [expanded, setExpanded] = useMergedState(ellipsisConfig.defaultExpanded || false, {\n    value: ellipsisConfig.expanded\n  });\n  const mergedEnableEllipsis = enableEllipsis && (!expanded || ellipsisConfig.expandable === 'collapsible');\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, setCssEllipsis] = React.useState(mergedEnableEllipsis);\n  const canUseCssEllipsis = 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  // We use effect to change from css ellipsis to js ellipsis.\n  // To make SSR still can see the ellipsis.\n  useIsomorphicLayoutEffect(() => {\n    setCssEllipsis(canUseCssEllipsis && mergedEnableEllipsis);\n  }, [canUseCssEllipsis, mergedEnableEllipsis]);\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, info) => {\n    var _a;\n    setExpanded(info.expanded);\n    (_a = ellipsisConfig.onExpand) === null || _a === void 0 ? void 0 : _a.call(ellipsisConfig, e, info);\n  };\n  const [ellipsisWidth, setEllipsisWidth] = React.useState(0);\n  const onResize = _ref2 => {\n    let {\n      offsetWidth\n    } = _ref2;\n    setEllipsisWidth(offsetWidth);\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, ellipsisWidth]);\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    if (expanded && expandable !== 'collapsible') return null;\n    return /*#__PURE__*/React.createElement(\"a\", {\n      key: \"expand\",\n      className: `${prefixCls}-${expanded ? 'collapse' : 'expand'}`,\n      onClick: e => onExpandClick(e, {\n        expanded: !expanded\n      }),\n      \"aria-label\": expanded ? textLocale.collapse : textLocale === null || textLocale === void 0 ? void 0 : textLocale.expand\n    }, typeof symbol === 'function' ? symbol(expanded) : symbol);\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) {\n      return null;\n    }\n    return /*#__PURE__*/React.createElement(CopyBtn, Object.assign({\n      key: \"copy\"\n    }, copyConfig, {\n      prefixCls: prefixCls,\n      copied: copied,\n      locale: textLocale,\n      onCopy: onCopyClick,\n      loading: copyLoading,\n      iconOnly: children === null || children === undefined\n    }));\n  };\n  const renderOperations = canEllipsis => [\n  // (renderExpanded || ellipsisConfig.collapsible) && renderExpand(),\n  canEllipsis && renderExpand(), renderEdit(), renderCopy()];\n  const renderEllipsis = canEllipsis => [canEllipsis && !expanded && ( /*#__PURE__*/React.createElement(\"span\", {\n    \"aria-hidden\": true,\n    key: \"ellipsis\"\n  }, ELLIPSIS_STR)), ellipsisConfig.suffix, renderOperations(canEllipsis)];\n  return /*#__PURE__*/React.createElement(ResizeObserver, {\n    onResize: onResize,\n    disabled: !mergedEnableEllipsis\n  }, resizeRef => ( /*#__PURE__*/React.createElement(EllipsisTooltip, {\n    tooltipProps: tooltipProps,\n    enableEllipsis: 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 && !expanded,\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    enableMeasure: mergedEnableEllipsis && !cssEllipsis,\n    text: children,\n    rows: rows,\n    width: ellipsisWidth,\n    onEllipsis: onJsEllipsis,\n    expanded: expanded,\n    miscDeps: [copied, expanded, copyLoading, enableEdit, enableCopy]\n  }, (node, canEllipsis) => {\n    let renderNode = node;\n    if (node.length && canEllipsis && !expanded && 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(canEllipsis)));\n    return wrappedContext;\n  })))));\n});\nexport default Base;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}