{"ast":null,"code":"\"use client\";\n\nimport React, { useState } from 'react';\nimport DownOutlined from \"@ant-design/icons/es/icons/DownOutlined\";\nimport LeftOutlined from \"@ant-design/icons/es/icons/LeftOutlined\";\nimport RightOutlined from \"@ant-design/icons/es/icons/RightOutlined\";\nimport UpOutlined from \"@ant-design/icons/es/icons/UpOutlined\";\nimport classNames from 'classnames';\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nfunction getValidNumber(num) {\n  return typeof num === 'number' && !Number.isNaN(num) && Number.isFinite(num) ? Math.round(num) : 0;\n}\nconst SplitBar = props => {\n  const {\n    prefixCls,\n    vertical,\n    index,\n    active,\n    ariaNow,\n    ariaMin,\n    ariaMax,\n    resizable,\n    startCollapsible,\n    endCollapsible,\n    onOffsetStart,\n    onOffsetUpdate,\n    onOffsetEnd,\n    onCollapse,\n    lazy,\n    containerSize,\n    showStartCollapsibleIcon,\n    showEndCollapsibleIcon\n  } = props;\n  const splitBarPrefixCls = `${prefixCls}-bar`;\n  // ======================== Resize ========================\n  const [startPos, setStartPos] = useState(null);\n  const [constrainedOffset, setConstrainedOffset] = useState(0);\n  const constrainedOffsetX = vertical ? 0 : constrainedOffset;\n  const constrainedOffsetY = vertical ? constrainedOffset : 0;\n  const onMouseDown = e => {\n    if (resizable && e.currentTarget) {\n      setStartPos([e.pageX, e.pageY]);\n      onOffsetStart(index);\n    }\n  };\n  const onTouchStart = e => {\n    if (resizable && e.touches.length === 1) {\n      const touch = e.touches[0];\n      setStartPos([touch.pageX, touch.pageY]);\n      onOffsetStart(index);\n    }\n  };\n  // Updated constraint calculation\n  const getConstrainedOffset = rawOffset => {\n    const currentPos = containerSize * ariaNow / 100;\n    const newPos = currentPos + rawOffset;\n    // Calculate available space\n    const minAllowed = Math.max(0, containerSize * ariaMin / 100);\n    const maxAllowed = Math.min(containerSize, containerSize * ariaMax / 100);\n    // Constrain new position within bounds\n    const clampedPos = Math.max(minAllowed, Math.min(maxAllowed, newPos));\n    return clampedPos - currentPos;\n  };\n  const handleLazyMove = useEvent((offsetX, offsetY) => {\n    const constrainedOffsetValue = getConstrainedOffset(vertical ? offsetY : offsetX);\n    setConstrainedOffset(constrainedOffsetValue);\n  });\n  const handleLazyEnd = useEvent(() => {\n    onOffsetUpdate(index, constrainedOffsetX, constrainedOffsetY, true);\n    setConstrainedOffset(0);\n    onOffsetEnd(true);\n  });\n  const getVisibilityClass = mode => {\n    switch (mode) {\n      case true:\n        return `${splitBarPrefixCls}-collapse-bar-always-visible`;\n      case false:\n        return `${splitBarPrefixCls}-collapse-bar-always-hidden`;\n      case 'auto':\n        return `${splitBarPrefixCls}-collapse-bar-hover-only`;\n    }\n  };\n  useLayoutEffect(() => {\n    if (!startPos) {\n      return;\n    }\n    const onMouseMove = e => {\n      const {\n        pageX,\n        pageY\n      } = e;\n      const offsetX = pageX - startPos[0];\n      const offsetY = pageY - startPos[1];\n      if (lazy) {\n        handleLazyMove(offsetX, offsetY);\n      } else {\n        onOffsetUpdate(index, offsetX, offsetY);\n      }\n    };\n    const onMouseUp = () => {\n      if (lazy) {\n        handleLazyEnd();\n      } else {\n        onOffsetEnd();\n      }\n      setStartPos(null);\n    };\n    const handleTouchMove = e => {\n      if (e.touches.length === 1) {\n        const touch = e.touches[0];\n        const offsetX = touch.pageX - startPos[0];\n        const offsetY = touch.pageY - startPos[1];\n        if (lazy) {\n          handleLazyMove(offsetX, offsetY);\n        } else {\n          onOffsetUpdate(index, offsetX, offsetY);\n        }\n      }\n    };\n    const handleTouchEnd = () => {\n      if (lazy) {\n        handleLazyEnd();\n      } else {\n        onOffsetEnd();\n      }\n      setStartPos(null);\n    };\n    const eventHandlerMap = {\n      mousemove: onMouseMove,\n      mouseup: onMouseUp,\n      touchmove: handleTouchMove,\n      touchend: handleTouchEnd\n    };\n    for (const [event, handler] of Object.entries(eventHandlerMap)) {\n      // eslint-disable-next-line react-web-api/no-leaked-event-listener\n      window.addEventListener(event, handler);\n    }\n    return () => {\n      for (const [event, handler] of Object.entries(eventHandlerMap)) {\n        window.removeEventListener(event, handler);\n      }\n    };\n  }, [startPos, index, lazy]);\n  const transformStyle = {\n    [`--${splitBarPrefixCls}-preview-offset`]: `${constrainedOffset}px`\n  };\n  // ======================== Render ========================\n  const StartIcon = vertical ? UpOutlined : LeftOutlined;\n  const EndIcon = vertical ? DownOutlined : RightOutlined;\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: splitBarPrefixCls,\n    role: \"separator\",\n    \"aria-valuenow\": getValidNumber(ariaNow),\n    \"aria-valuemin\": getValidNumber(ariaMin),\n    \"aria-valuemax\": getValidNumber(ariaMax)\n  }, lazy && (/*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(`${splitBarPrefixCls}-preview`, {\n      [`${splitBarPrefixCls}-preview-active`]: !!constrainedOffset\n    }),\n    style: transformStyle\n  })), /*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(`${splitBarPrefixCls}-dragger`, {\n      [`${splitBarPrefixCls}-dragger-disabled`]: !resizable,\n      [`${splitBarPrefixCls}-dragger-active`]: active\n    }),\n    onMouseDown: onMouseDown,\n    onTouchStart: onTouchStart\n  }), startCollapsible && (/*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(`${splitBarPrefixCls}-collapse-bar`, `${splitBarPrefixCls}-collapse-bar-start`, getVisibilityClass(showStartCollapsibleIcon)),\n    onClick: () => onCollapse(index, 'start')\n  }, /*#__PURE__*/React.createElement(StartIcon, {\n    className: classNames(`${splitBarPrefixCls}-collapse-icon`, `${splitBarPrefixCls}-collapse-start`)\n  }))), endCollapsible && (/*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(`${splitBarPrefixCls}-collapse-bar`, `${splitBarPrefixCls}-collapse-bar-end`, getVisibilityClass(showEndCollapsibleIcon)),\n    onClick: () => onCollapse(index, 'end')\n  }, /*#__PURE__*/React.createElement(EndIcon, {\n    className: classNames(`${splitBarPrefixCls}-collapse-icon`, `${splitBarPrefixCls}-collapse-end`)\n  }))));\n};\nexport default SplitBar;","map":{"version":3,"names":["React","useState","DownOutlined","LeftOutlined","RightOutlined","UpOutlined","classNames","useEvent","useLayoutEffect","getValidNumber","num","Number","isNaN","isFinite","Math","round","SplitBar","props","prefixCls","vertical","index","active","ariaNow","ariaMin","ariaMax","resizable","startCollapsible","endCollapsible","onOffsetStart","onOffsetUpdate","onOffsetEnd","onCollapse","lazy","containerSize","showStartCollapsibleIcon","showEndCollapsibleIcon","splitBarPrefixCls","startPos","setStartPos","constrainedOffset","setConstrainedOffset","constrainedOffsetX","constrainedOffsetY","onMouseDown","e","currentTarget","pageX","pageY","onTouchStart","touches","length","touch","getConstrainedOffset","rawOffset","currentPos","newPos","minAllowed","max","maxAllowed","min","clampedPos","handleLazyMove","offsetX","offsetY","constrainedOffsetValue","handleLazyEnd","getVisibilityClass","mode","onMouseMove","onMouseUp","handleTouchMove","handleTouchEnd","eventHandlerMap","mousemove","mouseup","touchmove","touchend","event","handler","Object","entries","window","addEventListener","removeEventListener","transformStyle","StartIcon","EndIcon","createElement","className","role","style","onClick"],"sources":["/Users/nili/Documents/trae_projects/client/node_modules/antd/es/splitter/SplitBar.js"],"sourcesContent":["\"use client\";\n\nimport React, { useState } from 'react';\nimport DownOutlined from \"@ant-design/icons/es/icons/DownOutlined\";\nimport LeftOutlined from \"@ant-design/icons/es/icons/LeftOutlined\";\nimport RightOutlined from \"@ant-design/icons/es/icons/RightOutlined\";\nimport UpOutlined from \"@ant-design/icons/es/icons/UpOutlined\";\nimport classNames from 'classnames';\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nfunction getValidNumber(num) {\n  return typeof num === 'number' && !Number.isNaN(num) && Number.isFinite(num) ? Math.round(num) : 0;\n}\nconst SplitBar = props => {\n  const {\n    prefixCls,\n    vertical,\n    index,\n    active,\n    ariaNow,\n    ariaMin,\n    ariaMax,\n    resizable,\n    startCollapsible,\n    endCollapsible,\n    onOffsetStart,\n    onOffsetUpdate,\n    onOffsetEnd,\n    onCollapse,\n    lazy,\n    containerSize,\n    showStartCollapsibleIcon,\n    showEndCollapsibleIcon\n  } = props;\n  const splitBarPrefixCls = `${prefixCls}-bar`;\n  // ======================== Resize ========================\n  const [startPos, setStartPos] = useState(null);\n  const [constrainedOffset, setConstrainedOffset] = useState(0);\n  const constrainedOffsetX = vertical ? 0 : constrainedOffset;\n  const constrainedOffsetY = vertical ? constrainedOffset : 0;\n  const onMouseDown = e => {\n    if (resizable && e.currentTarget) {\n      setStartPos([e.pageX, e.pageY]);\n      onOffsetStart(index);\n    }\n  };\n  const onTouchStart = e => {\n    if (resizable && e.touches.length === 1) {\n      const touch = e.touches[0];\n      setStartPos([touch.pageX, touch.pageY]);\n      onOffsetStart(index);\n    }\n  };\n  // Updated constraint calculation\n  const getConstrainedOffset = rawOffset => {\n    const currentPos = containerSize * ariaNow / 100;\n    const newPos = currentPos + rawOffset;\n    // Calculate available space\n    const minAllowed = Math.max(0, containerSize * ariaMin / 100);\n    const maxAllowed = Math.min(containerSize, containerSize * ariaMax / 100);\n    // Constrain new position within bounds\n    const clampedPos = Math.max(minAllowed, Math.min(maxAllowed, newPos));\n    return clampedPos - currentPos;\n  };\n  const handleLazyMove = useEvent((offsetX, offsetY) => {\n    const constrainedOffsetValue = getConstrainedOffset(vertical ? offsetY : offsetX);\n    setConstrainedOffset(constrainedOffsetValue);\n  });\n  const handleLazyEnd = useEvent(() => {\n    onOffsetUpdate(index, constrainedOffsetX, constrainedOffsetY, true);\n    setConstrainedOffset(0);\n    onOffsetEnd(true);\n  });\n  const getVisibilityClass = mode => {\n    switch (mode) {\n      case true:\n        return `${splitBarPrefixCls}-collapse-bar-always-visible`;\n      case false:\n        return `${splitBarPrefixCls}-collapse-bar-always-hidden`;\n      case 'auto':\n        return `${splitBarPrefixCls}-collapse-bar-hover-only`;\n    }\n  };\n  useLayoutEffect(() => {\n    if (!startPos) {\n      return;\n    }\n    const onMouseMove = e => {\n      const {\n        pageX,\n        pageY\n      } = e;\n      const offsetX = pageX - startPos[0];\n      const offsetY = pageY - startPos[1];\n      if (lazy) {\n        handleLazyMove(offsetX, offsetY);\n      } else {\n        onOffsetUpdate(index, offsetX, offsetY);\n      }\n    };\n    const onMouseUp = () => {\n      if (lazy) {\n        handleLazyEnd();\n      } else {\n        onOffsetEnd();\n      }\n      setStartPos(null);\n    };\n    const handleTouchMove = e => {\n      if (e.touches.length === 1) {\n        const touch = e.touches[0];\n        const offsetX = touch.pageX - startPos[0];\n        const offsetY = touch.pageY - startPos[1];\n        if (lazy) {\n          handleLazyMove(offsetX, offsetY);\n        } else {\n          onOffsetUpdate(index, offsetX, offsetY);\n        }\n      }\n    };\n    const handleTouchEnd = () => {\n      if (lazy) {\n        handleLazyEnd();\n      } else {\n        onOffsetEnd();\n      }\n      setStartPos(null);\n    };\n    const eventHandlerMap = {\n      mousemove: onMouseMove,\n      mouseup: onMouseUp,\n      touchmove: handleTouchMove,\n      touchend: handleTouchEnd\n    };\n    for (const [event, handler] of Object.entries(eventHandlerMap)) {\n      // eslint-disable-next-line react-web-api/no-leaked-event-listener\n      window.addEventListener(event, handler);\n    }\n    return () => {\n      for (const [event, handler] of Object.entries(eventHandlerMap)) {\n        window.removeEventListener(event, handler);\n      }\n    };\n  }, [startPos, index, lazy]);\n  const transformStyle = {\n    [`--${splitBarPrefixCls}-preview-offset`]: `${constrainedOffset}px`\n  };\n  // ======================== Render ========================\n  const StartIcon = vertical ? UpOutlined : LeftOutlined;\n  const EndIcon = vertical ? DownOutlined : RightOutlined;\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: splitBarPrefixCls,\n    role: \"separator\",\n    \"aria-valuenow\": getValidNumber(ariaNow),\n    \"aria-valuemin\": getValidNumber(ariaMin),\n    \"aria-valuemax\": getValidNumber(ariaMax)\n  }, lazy && (/*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(`${splitBarPrefixCls}-preview`, {\n      [`${splitBarPrefixCls}-preview-active`]: !!constrainedOffset\n    }),\n    style: transformStyle\n  })), /*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(`${splitBarPrefixCls}-dragger`, {\n      [`${splitBarPrefixCls}-dragger-disabled`]: !resizable,\n      [`${splitBarPrefixCls}-dragger-active`]: active\n    }),\n    onMouseDown: onMouseDown,\n    onTouchStart: onTouchStart\n  }), startCollapsible && (/*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(`${splitBarPrefixCls}-collapse-bar`, `${splitBarPrefixCls}-collapse-bar-start`, getVisibilityClass(showStartCollapsibleIcon)),\n    onClick: () => onCollapse(index, 'start')\n  }, /*#__PURE__*/React.createElement(StartIcon, {\n    className: classNames(`${splitBarPrefixCls}-collapse-icon`, `${splitBarPrefixCls}-collapse-start`)\n  }))), endCollapsible && (/*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(`${splitBarPrefixCls}-collapse-bar`, `${splitBarPrefixCls}-collapse-bar-end`, getVisibilityClass(showEndCollapsibleIcon)),\n    onClick: () => onCollapse(index, 'end')\n  }, /*#__PURE__*/React.createElement(EndIcon, {\n    className: classNames(`${splitBarPrefixCls}-collapse-icon`, `${splitBarPrefixCls}-collapse-end`)\n  }))));\n};\nexport default SplitBar;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}