capsule-ai-cli
Version:
The AI Model Orchestrator - Intelligent multi-model workflows with device-locked licensing
28 lines • 1.08 kB
JavaScript
import React, { useEffect, useRef } from 'react';
import { Box, useStdout } from 'ink';
export const ResizeHandler = ({ children, onResize }) => {
const { stdout } = useStdout();
const lastDimensions = useRef({ rows: 0, columns: 0 });
useEffect(() => {
if (!stdout)
return;
lastDimensions.current = {
rows: stdout.rows || 0,
columns: stdout.columns || 0
};
const handleResize = () => {
const newRows = stdout.rows || 0;
const newColumns = stdout.columns || 0;
if (newRows !== lastDimensions.current.rows || newColumns !== lastDimensions.current.columns) {
lastDimensions.current = { rows: newRows, columns: newColumns };
onResize?.();
}
};
stdout.on('resize', handleResize);
return () => {
stdout.off('resize', handleResize);
};
}, [stdout, onResize]);
return React.createElement(Box, { flexDirection: "column" }, children);
};
//# sourceMappingURL=ResizeHandler.js.map