const fs = require('fs'); const path = require('path'); const filePath = path.join(__dirname, '..', 'components', 'notes-tabs-view.tsx'); let src = fs.readFileSync(filePath, 'utf8'); const insertCode = ` // Resizable left panel const [listPanelWidth, setListPanelWidth] = useState(256) const isDraggingRef = useRef(false) const handleResizeStart = (e) => { e.preventDefault() isDraggingRef.current = true const startX = e.clientX const startW = listPanelWidth const onMove = (ev) => { if (!isDraggingRef.current) return setListPanelWidth(Math.min(420, Math.max(180, startW + (ev.clientX - startX)))) } const onUp = () => { isDraggingRef.current = false window.removeEventListener('mousemove', onMove) window.removeEventListener('mouseup', onUp) } window.addEventListener('mousemove', onMove) window.addEventListener('mouseup', onUp) } `; // Insert before the return statement const MARKER = ' return (\r\n