{"ast":null,"code":"import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"data\", \"renderItem\", \"renderRawItem\", \"itemKey\", \"itemWidth\", \"ssr\", \"style\", \"className\", \"maxCount\", \"renderRest\", \"renderRawRest\", \"prefix\", \"suffix\", \"component\", \"itemComponent\", \"onVisibleChange\"];\nimport * as React from 'react';\nimport { useState, useMemo, useCallback } from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport Item from \"./Item\";\nimport useEffectState, { useBatcher } from \"./hooks/useEffectState\";\nimport RawItem from \"./RawItem\";\nimport { OverflowContext } from \"./context\";\nvar RESPONSIVE = 'responsive';\nvar INVALIDATE = 'invalidate';\nexport { OverflowContext } from \"./context\";\nfunction defaultRenderRest(omittedItems) {\n  return \"+ \".concat(omittedItems.length, \" ...\");\n}\nfunction Overflow(props, ref) {\n  var _props$prefixCls = props.prefixCls,\n    prefixCls = _props$prefixCls === void 0 ? 'rc-overflow' : _props$prefixCls,\n    _props$data = props.data,\n    data = _props$data === void 0 ? [] : _props$data,\n    renderItem = props.renderItem,\n    renderRawItem = props.renderRawItem,\n    itemKey = props.itemKey,\n    _props$itemWidth = props.itemWidth,\n    itemWidth = _props$itemWidth === void 0 ? 10 : _props$itemWidth,\n    ssr = props.ssr,\n    style = props.style,\n    className = props.className,\n    maxCount = props.maxCount,\n    renderRest = props.renderRest,\n    renderRawRest = props.renderRawRest,\n    prefix = props.prefix,\n    suffix = props.suffix,\n    _props$component = props.component,\n    Component = _props$component === void 0 ? 'div' : _props$component,\n    itemComponent = props.itemComponent,\n    onVisibleChange = props.onVisibleChange,\n    restProps = _objectWithoutProperties(props, _excluded);\n  var fullySSR = ssr === 'full';\n  var notifyEffectUpdate = useBatcher();\n  var _useEffectState = useEffectState(notifyEffectUpdate, null),\n    _useEffectState2 = _slicedToArray(_useEffectState, 2),\n    containerWidth = _useEffectState2[0],\n    setContainerWidth = _useEffectState2[1];\n  var mergedContainerWidth = containerWidth || 0;\n  var _useEffectState3 = useEffectState(notifyEffectUpdate, new Map()),\n    _useEffectState4 = _slicedToArray(_useEffectState3, 2),\n    itemWidths = _useEffectState4[0],\n    setItemWidths = _useEffectState4[1];\n  var _useEffectState5 = useEffectState(notifyEffectUpdate, 0),\n    _useEffectState6 = _slicedToArray(_useEffectState5, 2),\n    prevRestWidth = _useEffectState6[0],\n    setPrevRestWidth = _useEffectState6[1];\n  var _useEffectState7 = useEffectState(notifyEffectUpdate, 0),\n    _useEffectState8 = _slicedToArray(_useEffectState7, 2),\n    restWidth = _useEffectState8[0],\n    setRestWidth = _useEffectState8[1];\n  var _useEffectState9 = useEffectState(notifyEffectUpdate, 0),\n    _useEffectState10 = _slicedToArray(_useEffectState9, 2),\n    prefixWidth = _useEffectState10[0],\n    setPrefixWidth = _useEffectState10[1];\n  var _useEffectState11 = useEffectState(notifyEffectUpdate, 0),\n    _useEffectState12 = _slicedToArray(_useEffectState11, 2),\n    suffixWidth = _useEffectState12[0],\n    setSuffixWidth = _useEffectState12[1];\n  var _useState = useState(null),\n    _useState2 = _slicedToArray(_useState, 2),\n    suffixFixedStart = _useState2[0],\n    setSuffixFixedStart = _useState2[1];\n  var _useState3 = useState(null),\n    _useState4 = _slicedToArray(_useState3, 2),\n    displayCount = _useState4[0],\n    setDisplayCount = _useState4[1];\n  var mergedDisplayCount = React.useMemo(function () {\n    if (displayCount === null && fullySSR) {\n      return Number.MAX_SAFE_INTEGER;\n    }\n    return displayCount || 0;\n  }, [displayCount, containerWidth]);\n  var _useState5 = useState(false),\n    _useState6 = _slicedToArray(_useState5, 2),\n    restReady = _useState6[0],\n    setRestReady = _useState6[1];\n  var itemPrefixCls = \"\".concat(prefixCls, \"-item\");\n\n  // Always use the max width to avoid blink\n  var mergedRestWidth = Math.max(prevRestWidth, restWidth);\n\n  // ================================= Data =================================\n  var isResponsive = maxCount === RESPONSIVE;\n  var shouldResponsive = data.length && isResponsive;\n  var invalidate = maxCount === INVALIDATE;\n\n  /**\n   * When is `responsive`, we will always render rest node to get the real width of it for calculation\n   */\n  var showRest = shouldResponsive || typeof maxCount === 'number' && data.length > maxCount;\n  var mergedData = useMemo(function () {\n    var items = data;\n    if (shouldResponsive) {\n      if (containerWidth === null && fullySSR) {\n        items = data;\n      } else {\n        items = data.slice(0, Math.min(data.length, mergedContainerWidth / itemWidth));\n      }\n    } else if (typeof maxCount === 'number') {\n      items = data.slice(0, maxCount);\n    }\n    return items;\n  }, [data, itemWidth, containerWidth, maxCount, shouldResponsive]);\n  var omittedItems = useMemo(function () {\n    if (shouldResponsive) {\n      return data.slice(mergedDisplayCount + 1);\n    }\n    return data.slice(mergedData.length);\n  }, [data, mergedData, shouldResponsive, mergedDisplayCount]);\n\n  // ================================= Item =================================\n  var getKey = useCallback(function (item, index) {\n    var _ref;\n    if (typeof itemKey === 'function') {\n      return itemKey(item);\n    }\n    return (_ref = itemKey && (item === null || item === void 0 ? void 0 : item[itemKey])) !== null && _ref !== void 0 ? _ref : index;\n  }, [itemKey]);\n  var mergedRenderItem = useCallback(renderItem || function (item) {\n    return item;\n  }, [renderItem]);\n  function updateDisplayCount(count, suffixFixedStartVal, notReady) {\n    // React 18 will sync render even when the value is same in some case.\n    // We take `mergedData` as deps which may cause dead loop if it's dynamic generate.\n    // ref: https://github.com/ant-design/ant-design/issues/36559\n    if (displayCount === count && (suffixFixedStartVal === undefined || suffixFixedStartVal === suffixFixedStart)) {\n      return;\n    }\n    setDisplayCount(count);\n    if (!notReady) {\n      setRestReady(count < data.length - 1);\n      onVisibleChange === null || onVisibleChange === void 0 || onVisibleChange(count);\n    }\n    if (suffixFixedStartVal !== undefined) {\n      setSuffixFixedStart(suffixFixedStartVal);\n    }\n  }\n\n  // ================================= Size =================================\n  function onOverflowResize(_, element) {\n    setContainerWidth(element.clientWidth);\n  }\n  function registerSize(key, width) {\n    setItemWidths(function (origin) {\n      var clone = new Map(origin);\n      if (width === null) {\n        clone.delete(key);\n      } else {\n        clone.set(key, width);\n      }\n      return clone;\n    });\n  }\n  function registerOverflowSize(_, width) {\n    setRestWidth(width);\n    setPrevRestWidth(restWidth);\n  }\n  function registerPrefixSize(_, width) {\n    setPrefixWidth(width);\n  }\n  function registerSuffixSize(_, width) {\n    setSuffixWidth(width);\n  }\n\n  // ================================ Effect ================================\n  function getItemWidth(index) {\n    return itemWidths.get(getKey(mergedData[index], index));\n  }\n  useLayoutEffect(function () {\n    if (mergedContainerWidth && typeof mergedRestWidth === 'number' && mergedData) {\n      var totalWidth = prefixWidth + suffixWidth;\n      var len = mergedData.length;\n      var lastIndex = len - 1;\n\n      // When data count change to 0, reset this since not loop will reach\n      if (!len) {\n        updateDisplayCount(0, null);\n        return;\n      }\n      for (var i = 0; i < len; i += 1) {\n        var currentItemWidth = getItemWidth(i);\n\n        // Fully will always render\n        if (fullySSR) {\n          currentItemWidth = currentItemWidth || 0;\n        }\n\n        // Break since data not ready\n        if (currentItemWidth === undefined) {\n          updateDisplayCount(i - 1, undefined, true);\n          break;\n        }\n\n        // Find best match\n        totalWidth += currentItemWidth;\n        if (\n        // Only one means `totalWidth` is the final width\n        lastIndex === 0 && totalWidth <= mergedContainerWidth ||\n        // Last two width will be the final width\n        i === lastIndex - 1 && totalWidth + getItemWidth(lastIndex) <= mergedContainerWidth) {\n          // Additional check if match the end\n          updateDisplayCount(lastIndex, null);\n          break;\n        } else if (totalWidth + mergedRestWidth > mergedContainerWidth) {\n          // Can not hold all the content to show rest\n          updateDisplayCount(i - 1, totalWidth - currentItemWidth - suffixWidth + restWidth);\n          break;\n        }\n      }\n      if (suffix && getItemWidth(0) + suffixWidth > mergedContainerWidth) {\n        setSuffixFixedStart(null);\n      }\n    }\n  }, [mergedContainerWidth, itemWidths, restWidth, prefixWidth, suffixWidth, getKey, mergedData]);\n\n  // ================================ Render ================================\n  var displayRest = restReady && !!omittedItems.length;\n  var suffixStyle = {};\n  if (suffixFixedStart !== null && shouldResponsive) {\n    suffixStyle = {\n      position: 'absolute',\n      left: suffixFixedStart,\n      top: 0\n    };\n  }\n  var itemSharedProps = {\n    prefixCls: itemPrefixCls,\n    responsive: shouldResponsive,\n    component: itemComponent,\n    invalidate: invalidate\n  };\n\n  // >>>>> Choice render fun by `renderRawItem`\n  var internalRenderItemNode = renderRawItem ? function (item, index) {\n    var key = getKey(item, index);\n    return /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n      key: key,\n      value: _objectSpread(_objectSpread({}, itemSharedProps), {}, {\n        order: index,\n        item: item,\n        itemKey: key,\n        registerSize: registerSize,\n        display: index <= mergedDisplayCount\n      })\n    }, renderRawItem(item, index));\n  } : function (item, index) {\n    var key = getKey(item, index);\n    return /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n      order: index,\n      key: key,\n      item: item,\n      renderItem: mergedRenderItem,\n      itemKey: key,\n      registerSize: registerSize,\n      display: index <= mergedDisplayCount\n    }));\n  };\n\n  // >>>>> Rest node\n  var restContextProps = {\n    order: displayRest ? mergedDisplayCount : Number.MAX_SAFE_INTEGER,\n    className: \"\".concat(itemPrefixCls, \"-rest\"),\n    registerSize: registerOverflowSize,\n    display: displayRest\n  };\n  var mergedRenderRest = renderRest || defaultRenderRest;\n  var restNode = renderRawRest ? /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n    value: _objectSpread(_objectSpread({}, itemSharedProps), restContextProps)\n  }, renderRawRest(omittedItems)) : /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, restContextProps), typeof mergedRenderRest === 'function' ? mergedRenderRest(omittedItems) : mergedRenderRest);\n  var overflowNode = /*#__PURE__*/React.createElement(Component, _extends({\n    className: classNames(!invalidate && prefixCls, className),\n    style: style,\n    ref: ref\n  }, restProps), prefix && /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n    responsive: isResponsive,\n    responsiveDisabled: !shouldResponsive,\n    order: -1,\n    className: \"\".concat(itemPrefixCls, \"-prefix\"),\n    registerSize: registerPrefixSize,\n    display: true\n  }), prefix), mergedData.map(internalRenderItemNode), showRest ? restNode : null, suffix && /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n    responsive: isResponsive,\n    responsiveDisabled: !shouldResponsive,\n    order: mergedDisplayCount,\n    className: \"\".concat(itemPrefixCls, \"-suffix\"),\n    registerSize: registerSuffixSize,\n    display: true,\n    style: suffixStyle\n  }), suffix));\n  return isResponsive ? /*#__PURE__*/React.createElement(ResizeObserver, {\n    onResize: onOverflowResize,\n    disabled: !shouldResponsive\n  }, overflowNode) : overflowNode;\n}\nvar ForwardOverflow = /*#__PURE__*/React.forwardRef(Overflow);\nForwardOverflow.displayName = 'Overflow';\nForwardOverflow.Item = RawItem;\nForwardOverflow.RESPONSIVE = RESPONSIVE;\nForwardOverflow.INVALIDATE = INVALIDATE;\n\n// Convert to generic type\nexport default ForwardOverflow;","map":{"version":3,"names":["_extends","_objectSpread","_slicedToArray","_objectWithoutProperties","_excluded","React","useState","useMemo","useCallback","classNames","ResizeObserver","useLayoutEffect","Item","useEffectState","useBatcher","RawItem","OverflowContext","RESPONSIVE","INVALIDATE","defaultRenderRest","omittedItems","concat","length","Overflow","props","ref","_props$prefixCls","prefixCls","_props$data","data","renderItem","renderRawItem","itemKey","_props$itemWidth","itemWidth","ssr","style","className","maxCount","renderRest","renderRawRest","prefix","suffix","_props$component","component","Component","itemComponent","onVisibleChange","restProps","fullySSR","notifyEffectUpdate","_useEffectState","_useEffectState2","containerWidth","setContainerWidth","mergedContainerWidth","_useEffectState3","Map","_useEffectState4","itemWidths","setItemWidths","_useEffectState5","_useEffectState6","prevRestWidth","setPrevRestWidth","_useEffectState7","_useEffectState8","restWidth","setRestWidth","_useEffectState9","_useEffectState10","prefixWidth","setPrefixWidth","_useEffectState11","_useEffectState12","suffixWidth","setSuffixWidth","_useState","_useState2","suffixFixedStart","setSuffixFixedStart","_useState3","_useState4","displayCount","setDisplayCount","mergedDisplayCount","Number","MAX_SAFE_INTEGER","_useState5","_useState6","restReady","setRestReady","itemPrefixCls","mergedRestWidth","Math","max","isResponsive","shouldResponsive","invalidate","showRest","mergedData","items","slice","min","getKey","item","index","_ref","mergedRenderItem","updateDisplayCount","count","suffixFixedStartVal","notReady","undefined","onOverflowResize","_","element","clientWidth","registerSize","key","width","origin","clone","delete","set","registerOverflowSize","registerPrefixSize","registerSuffixSize","getItemWidth","get","totalWidth","len","lastIndex","i","currentItemWidth","displayRest","suffixStyle","position","left","top","itemSharedProps","responsive","internalRenderItemNode","createElement","Provider","value","order","display","restContextProps","mergedRenderRest","restNode","overflowNode","responsiveDisabled","map","onResize","disabled","ForwardOverflow","forwardRef","displayName"],"sources":["/Users/nili/Documents/trae_projects/client/node_modules/rc-overflow/es/Overflow.js"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"data\", \"renderItem\", \"renderRawItem\", \"itemKey\", \"itemWidth\", \"ssr\", \"style\", \"className\", \"maxCount\", \"renderRest\", \"renderRawRest\", \"prefix\", \"suffix\", \"component\", \"itemComponent\", \"onVisibleChange\"];\nimport * as React from 'react';\nimport { useState, useMemo, useCallback } from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport Item from \"./Item\";\nimport useEffectState, { useBatcher } from \"./hooks/useEffectState\";\nimport RawItem from \"./RawItem\";\nimport { OverflowContext } from \"./context\";\nvar RESPONSIVE = 'responsive';\nvar INVALIDATE = 'invalidate';\nexport { OverflowContext } from \"./context\";\nfunction defaultRenderRest(omittedItems) {\n  return \"+ \".concat(omittedItems.length, \" ...\");\n}\nfunction Overflow(props, ref) {\n  var _props$prefixCls = props.prefixCls,\n    prefixCls = _props$prefixCls === void 0 ? 'rc-overflow' : _props$prefixCls,\n    _props$data = props.data,\n    data = _props$data === void 0 ? [] : _props$data,\n    renderItem = props.renderItem,\n    renderRawItem = props.renderRawItem,\n    itemKey = props.itemKey,\n    _props$itemWidth = props.itemWidth,\n    itemWidth = _props$itemWidth === void 0 ? 10 : _props$itemWidth,\n    ssr = props.ssr,\n    style = props.style,\n    className = props.className,\n    maxCount = props.maxCount,\n    renderRest = props.renderRest,\n    renderRawRest = props.renderRawRest,\n    prefix = props.prefix,\n    suffix = props.suffix,\n    _props$component = props.component,\n    Component = _props$component === void 0 ? 'div' : _props$component,\n    itemComponent = props.itemComponent,\n    onVisibleChange = props.onVisibleChange,\n    restProps = _objectWithoutProperties(props, _excluded);\n  var fullySSR = ssr === 'full';\n  var notifyEffectUpdate = useBatcher();\n  var _useEffectState = useEffectState(notifyEffectUpdate, null),\n    _useEffectState2 = _slicedToArray(_useEffectState, 2),\n    containerWidth = _useEffectState2[0],\n    setContainerWidth = _useEffectState2[1];\n  var mergedContainerWidth = containerWidth || 0;\n  var _useEffectState3 = useEffectState(notifyEffectUpdate, new Map()),\n    _useEffectState4 = _slicedToArray(_useEffectState3, 2),\n    itemWidths = _useEffectState4[0],\n    setItemWidths = _useEffectState4[1];\n  var _useEffectState5 = useEffectState(notifyEffectUpdate, 0),\n    _useEffectState6 = _slicedToArray(_useEffectState5, 2),\n    prevRestWidth = _useEffectState6[0],\n    setPrevRestWidth = _useEffectState6[1];\n  var _useEffectState7 = useEffectState(notifyEffectUpdate, 0),\n    _useEffectState8 = _slicedToArray(_useEffectState7, 2),\n    restWidth = _useEffectState8[0],\n    setRestWidth = _useEffectState8[1];\n  var _useEffectState9 = useEffectState(notifyEffectUpdate, 0),\n    _useEffectState10 = _slicedToArray(_useEffectState9, 2),\n    prefixWidth = _useEffectState10[0],\n    setPrefixWidth = _useEffectState10[1];\n  var _useEffectState11 = useEffectState(notifyEffectUpdate, 0),\n    _useEffectState12 = _slicedToArray(_useEffectState11, 2),\n    suffixWidth = _useEffectState12[0],\n    setSuffixWidth = _useEffectState12[1];\n  var _useState = useState(null),\n    _useState2 = _slicedToArray(_useState, 2),\n    suffixFixedStart = _useState2[0],\n    setSuffixFixedStart = _useState2[1];\n  var _useState3 = useState(null),\n    _useState4 = _slicedToArray(_useState3, 2),\n    displayCount = _useState4[0],\n    setDisplayCount = _useState4[1];\n  var mergedDisplayCount = React.useMemo(function () {\n    if (displayCount === null && fullySSR) {\n      return Number.MAX_SAFE_INTEGER;\n    }\n    return displayCount || 0;\n  }, [displayCount, containerWidth]);\n  var _useState5 = useState(false),\n    _useState6 = _slicedToArray(_useState5, 2),\n    restReady = _useState6[0],\n    setRestReady = _useState6[1];\n  var itemPrefixCls = \"\".concat(prefixCls, \"-item\");\n\n  // Always use the max width to avoid blink\n  var mergedRestWidth = Math.max(prevRestWidth, restWidth);\n\n  // ================================= Data =================================\n  var isResponsive = maxCount === RESPONSIVE;\n  var shouldResponsive = data.length && isResponsive;\n  var invalidate = maxCount === INVALIDATE;\n\n  /**\n   * When is `responsive`, we will always render rest node to get the real width of it for calculation\n   */\n  var showRest = shouldResponsive || typeof maxCount === 'number' && data.length > maxCount;\n  var mergedData = useMemo(function () {\n    var items = data;\n    if (shouldResponsive) {\n      if (containerWidth === null && fullySSR) {\n        items = data;\n      } else {\n        items = data.slice(0, Math.min(data.length, mergedContainerWidth / itemWidth));\n      }\n    } else if (typeof maxCount === 'number') {\n      items = data.slice(0, maxCount);\n    }\n    return items;\n  }, [data, itemWidth, containerWidth, maxCount, shouldResponsive]);\n  var omittedItems = useMemo(function () {\n    if (shouldResponsive) {\n      return data.slice(mergedDisplayCount + 1);\n    }\n    return data.slice(mergedData.length);\n  }, [data, mergedData, shouldResponsive, mergedDisplayCount]);\n\n  // ================================= Item =================================\n  var getKey = useCallback(function (item, index) {\n    var _ref;\n    if (typeof itemKey === 'function') {\n      return itemKey(item);\n    }\n    return (_ref = itemKey && (item === null || item === void 0 ? void 0 : item[itemKey])) !== null && _ref !== void 0 ? _ref : index;\n  }, [itemKey]);\n  var mergedRenderItem = useCallback(renderItem || function (item) {\n    return item;\n  }, [renderItem]);\n  function updateDisplayCount(count, suffixFixedStartVal, notReady) {\n    // React 18 will sync render even when the value is same in some case.\n    // We take `mergedData` as deps which may cause dead loop if it's dynamic generate.\n    // ref: https://github.com/ant-design/ant-design/issues/36559\n    if (displayCount === count && (suffixFixedStartVal === undefined || suffixFixedStartVal === suffixFixedStart)) {\n      return;\n    }\n    setDisplayCount(count);\n    if (!notReady) {\n      setRestReady(count < data.length - 1);\n      onVisibleChange === null || onVisibleChange === void 0 || onVisibleChange(count);\n    }\n    if (suffixFixedStartVal !== undefined) {\n      setSuffixFixedStart(suffixFixedStartVal);\n    }\n  }\n\n  // ================================= Size =================================\n  function onOverflowResize(_, element) {\n    setContainerWidth(element.clientWidth);\n  }\n  function registerSize(key, width) {\n    setItemWidths(function (origin) {\n      var clone = new Map(origin);\n      if (width === null) {\n        clone.delete(key);\n      } else {\n        clone.set(key, width);\n      }\n      return clone;\n    });\n  }\n  function registerOverflowSize(_, width) {\n    setRestWidth(width);\n    setPrevRestWidth(restWidth);\n  }\n  function registerPrefixSize(_, width) {\n    setPrefixWidth(width);\n  }\n  function registerSuffixSize(_, width) {\n    setSuffixWidth(width);\n  }\n\n  // ================================ Effect ================================\n  function getItemWidth(index) {\n    return itemWidths.get(getKey(mergedData[index], index));\n  }\n  useLayoutEffect(function () {\n    if (mergedContainerWidth && typeof mergedRestWidth === 'number' && mergedData) {\n      var totalWidth = prefixWidth + suffixWidth;\n      var len = mergedData.length;\n      var lastIndex = len - 1;\n\n      // When data count change to 0, reset this since not loop will reach\n      if (!len) {\n        updateDisplayCount(0, null);\n        return;\n      }\n      for (var i = 0; i < len; i += 1) {\n        var currentItemWidth = getItemWidth(i);\n\n        // Fully will always render\n        if (fullySSR) {\n          currentItemWidth = currentItemWidth || 0;\n        }\n\n        // Break since data not ready\n        if (currentItemWidth === undefined) {\n          updateDisplayCount(i - 1, undefined, true);\n          break;\n        }\n\n        // Find best match\n        totalWidth += currentItemWidth;\n        if (\n        // Only one means `totalWidth` is the final width\n        lastIndex === 0 && totalWidth <= mergedContainerWidth ||\n        // Last two width will be the final width\n        i === lastIndex - 1 && totalWidth + getItemWidth(lastIndex) <= mergedContainerWidth) {\n          // Additional check if match the end\n          updateDisplayCount(lastIndex, null);\n          break;\n        } else if (totalWidth + mergedRestWidth > mergedContainerWidth) {\n          // Can not hold all the content to show rest\n          updateDisplayCount(i - 1, totalWidth - currentItemWidth - suffixWidth + restWidth);\n          break;\n        }\n      }\n      if (suffix && getItemWidth(0) + suffixWidth > mergedContainerWidth) {\n        setSuffixFixedStart(null);\n      }\n    }\n  }, [mergedContainerWidth, itemWidths, restWidth, prefixWidth, suffixWidth, getKey, mergedData]);\n\n  // ================================ Render ================================\n  var displayRest = restReady && !!omittedItems.length;\n  var suffixStyle = {};\n  if (suffixFixedStart !== null && shouldResponsive) {\n    suffixStyle = {\n      position: 'absolute',\n      left: suffixFixedStart,\n      top: 0\n    };\n  }\n  var itemSharedProps = {\n    prefixCls: itemPrefixCls,\n    responsive: shouldResponsive,\n    component: itemComponent,\n    invalidate: invalidate\n  };\n\n  // >>>>> Choice render fun by `renderRawItem`\n  var internalRenderItemNode = renderRawItem ? function (item, index) {\n    var key = getKey(item, index);\n    return /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n      key: key,\n      value: _objectSpread(_objectSpread({}, itemSharedProps), {}, {\n        order: index,\n        item: item,\n        itemKey: key,\n        registerSize: registerSize,\n        display: index <= mergedDisplayCount\n      })\n    }, renderRawItem(item, index));\n  } : function (item, index) {\n    var key = getKey(item, index);\n    return /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n      order: index,\n      key: key,\n      item: item,\n      renderItem: mergedRenderItem,\n      itemKey: key,\n      registerSize: registerSize,\n      display: index <= mergedDisplayCount\n    }));\n  };\n\n  // >>>>> Rest node\n  var restContextProps = {\n    order: displayRest ? mergedDisplayCount : Number.MAX_SAFE_INTEGER,\n    className: \"\".concat(itemPrefixCls, \"-rest\"),\n    registerSize: registerOverflowSize,\n    display: displayRest\n  };\n  var mergedRenderRest = renderRest || defaultRenderRest;\n  var restNode = renderRawRest ? /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n    value: _objectSpread(_objectSpread({}, itemSharedProps), restContextProps)\n  }, renderRawRest(omittedItems)) : /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, restContextProps), typeof mergedRenderRest === 'function' ? mergedRenderRest(omittedItems) : mergedRenderRest);\n  var overflowNode = /*#__PURE__*/React.createElement(Component, _extends({\n    className: classNames(!invalidate && prefixCls, className),\n    style: style,\n    ref: ref\n  }, restProps), prefix && /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n    responsive: isResponsive,\n    responsiveDisabled: !shouldResponsive,\n    order: -1,\n    className: \"\".concat(itemPrefixCls, \"-prefix\"),\n    registerSize: registerPrefixSize,\n    display: true\n  }), prefix), mergedData.map(internalRenderItemNode), showRest ? restNode : null, suffix && /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n    responsive: isResponsive,\n    responsiveDisabled: !shouldResponsive,\n    order: mergedDisplayCount,\n    className: \"\".concat(itemPrefixCls, \"-suffix\"),\n    registerSize: registerSuffixSize,\n    display: true,\n    style: suffixStyle\n  }), suffix));\n  return isResponsive ? /*#__PURE__*/React.createElement(ResizeObserver, {\n    onResize: onOverflowResize,\n    disabled: !shouldResponsive\n  }, overflowNode) : overflowNode;\n}\nvar ForwardOverflow = /*#__PURE__*/React.forwardRef(Overflow);\nForwardOverflow.displayName = 'Overflow';\nForwardOverflow.Item = RawItem;\nForwardOverflow.RESPONSIVE = RESPONSIVE;\nForwardOverflow.INVALIDATE = INVALIDATE;\n\n// Convert to generic type\nexport default ForwardOverflow;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}