diff --git a/ui/package-lock.json b/ui/package-lock.json index 0496b3c92149c3e45e028294939317a706f84168..e7ca9f01ec66822d154f885f01deadaf112f9913 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -15,6 +15,7 @@ "devDependencies": { "@eslint/js": "^9.35.0", "@playwright/test": "^1.40.0", + "@types/node": "^22.0.0", "@types/react": "^18.2.0", "@types/react-dom": "^18.2.0", "@typescript-eslint/eslint-plugin": "^8.43.0", @@ -777,6 +778,16 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/node": { + "version": "22.19.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.3.tgz", + "integrity": "sha512-1N9SBnWYOJTrNZCdh/yJE+t910Y128BoyY+zBLWhL3r0TYzlTmFdXrPwHL9DyFZmlEXNQQolTZh3KHV31QDhyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, "node_modules/@types/prop-types": { "version": "15.7.15", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz", @@ -790,6 +801,7 @@ "integrity": "sha512-RFA/bURkcKzx/X9oumPG9Vp3D3JUgus/d0b67KB0t5S/raciymilkOa66olh78MUI92QLbEJevO7rvqU/kjwKA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -841,6 +853,7 @@ "integrity": "sha512-n1H6IcDhmmUEG7TNVSspGmiHHutt7iVKtZwRppD7e04wha5MrkV1h3pti9xQLcCMt6YWsncpoT0HMjkH1FNwWQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "8.46.0", "@typescript-eslint/types": "8.46.0", @@ -1046,6 +1059,7 @@ "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -1801,6 +1815,7 @@ "integrity": "sha512-XyLmROnACWqSxiGYArdef1fItQd47weqB7iwtfr9JHwRrqIXZdcFMvvEcL9xHCmL0SNsOvF0c42lWyM1U5dgig==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.1", @@ -3528,6 +3543,7 @@ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "license": "MIT", + "peer": true, "dependencies": { "loose-envify": "^1.1.0" }, @@ -4612,6 +4628,7 @@ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -4663,6 +4680,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", diff --git a/ui/package.json b/ui/package.json index 8ffb417236975058a1cc7d8ba501fd5e629747f0..c5138965ee9e56cb50b083cdf44cdcbbde11dcf4 100644 --- a/ui/package.json +++ b/ui/package.json @@ -26,6 +26,7 @@ }, "devDependencies": { "@eslint/js": "^9.35.0", + "@types/node": "^22.0.0", "@playwright/test": "^1.40.0", "@types/react": "^18.2.0", "@types/react-dom": "^18.2.0", diff --git a/ui/src/components/Message.tsx b/ui/src/components/Message.tsx index 41207bc7f92a8b46dab13e6e879e4a95522276ef..566d1221e054b1a7dbaaa2f3890e6473ffd4b8be 100644 --- a/ui/src/components/Message.tsx +++ b/ui/src/components/Message.tsx @@ -112,7 +112,7 @@ function Message({ message, onOpenDiffViewer }: MessageProps) { // Context menu state const [contextMenu, setContextMenu] = useState<{ x: number; y: number } | null>(null); const [showUsageModal, setShowUsageModal] = useState(false); - const [longPressTimer, setLongPressTimer] = useState(null); + const [longPressTimer, setLongPressTimer] = useState | null>(null); const messageRef = useRef(null); // Parse usage data if available (only for agent messages)