diff --git a/frontend/package-lock.json b/frontend/package-lock.json index a60c187..1a7e748 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -15,6 +15,7 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "react-markdown": "^10.1.0", + "react-resizable-panels": "^4.10.0", "react-router-dom": "^7.14.2", "tailwindcss": "^3.4.0" }, @@ -4959,6 +4960,16 @@ "node": ">=0.10.0" } }, + "node_modules/react-resizable-panels": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/react-resizable-panels/-/react-resizable-panels-4.10.0.tgz", + "integrity": "sha512-frjewRQt7TCv/vCH1pJfjZ7RxAhr5pKuqVQtVgzFq/vherxBFOWyC3xMbryx5Ti2wylViGUFc93Etg4rB3E0UA==", + "license": "MIT", + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, "node_modules/react-router": { "version": "7.14.2", "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.14.2.tgz", diff --git a/frontend/package.json b/frontend/package.json index aff89cd..1ece58d 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -17,6 +17,7 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "react-markdown": "^10.1.0", + "react-resizable-panels": "^4.10.0", "react-router-dom": "^7.14.2", "tailwindcss": "^3.4.0" }, diff --git a/frontend/src/pages/LTTPage.tsx b/frontend/src/pages/LTTPage.tsx index ebeebb3..79edf2f 100644 --- a/frontend/src/pages/LTTPage.tsx +++ b/frontend/src/pages/LTTPage.tsx @@ -1,5 +1,6 @@ import React from 'react' import { Film } from 'lucide-react' +import { Group, Panel, Separator } from 'react-resizable-panels' import { useQueryDocument } from '../lib/queries' import { QueryInput } from '../components/QueryInput' import { ExtractedQuestionsDisplay } from '../components/ExtractedQuestionsDisplay' @@ -24,22 +25,35 @@ export const LTTPage: React.FC = () => { } return ( -
-
- -
-
- - -
-
- -
+
+ + +
+
+ +
+
+ + +
+
+
+ + +
+ + + +
+ +
+
+
) } diff --git a/frontend/src/test/setup.ts b/frontend/src/test/setup.ts index c44951a..88dbc9e 100644 --- a/frontend/src/test/setup.ts +++ b/frontend/src/test/setup.ts @@ -1 +1,12 @@ import '@testing-library/jest-dom' + +global.ResizeObserver = class ResizeObserver { + observe() {} + unobserve() {} + disconnect() {} +} + +global.DOMRect = class DOMRect { + x = 0; y = 0; width = 0; height = 0; top = 0; right = 0; bottom = 0; left = 0 + static fromRect() { return new DOMRect() } +}