aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2025-09-14 09:48:52 +0000
committerMohamed Bassem <me@mbassem.com>2025-09-14 09:49:18 +0000
commitd173b101e3c9d48d59d380f4433dbea53dae5c89 (patch)
treed11d9b34a9903b44af1f5ac97ed2e0c4659b67e9
parent820b7e655a670cf8b8e3f7ad8bb1eb487ee20405 (diff)
downloadkarakeep-d173b101e3c9d48d59d380f4433dbea53dae5c89.tar.zst
fix(web): fix error when attempting to merge tags. fixes #1938
-rw-r--r--apps/web/components/dashboard/tags/TagPill.tsx5
-rw-r--r--apps/web/package.json2
-rw-r--r--pnpm-lock.yaml18
3 files changed, 17 insertions, 8 deletions
diff --git a/apps/web/components/dashboard/tags/TagPill.tsx b/apps/web/components/dashboard/tags/TagPill.tsx
index 81d700cd..2da97b2e 100644
--- a/apps/web/components/dashboard/tags/TagPill.tsx
+++ b/apps/web/components/dashboard/tags/TagPill.tsx
@@ -1,4 +1,4 @@
-import React, { useState } from "react";
+import React, { useRef, useState } from "react";
import Link from "next/link";
import { Button } from "@/components/ui/button";
import { Separator } from "@/components/ui/separator";
@@ -23,6 +23,7 @@ export function TagPill({
onOpenDialog: (tag: { id: string; name: string }) => void;
}) {
const [isHovered, setIsHovered] = useState(false);
+ const draggableRef = useRef<HTMLDivElement>(null);
const handleMouseOver = () => setIsHovered(true);
const handleMouseOut = () => setIsHovered(false);
@@ -74,6 +75,7 @@ export function TagPill({
onFocus={handleMouseOver}
onMouseOut={handleMouseOut}
onBlur={handleMouseOut}
+ ref={draggableRef}
>
<Link
className={
@@ -111,6 +113,7 @@ export function TagPill({
disabled={!isDraggable}
defaultClassNameDragging={"position-relative z-10 pointer-events-none"}
position={{ x: 0, y: 0 }}
+ nodeRef={draggableRef}
>
{pill}
</Draggable>
diff --git a/apps/web/package.json b/apps/web/package.json
index 7e9fe9d9..c18884cb 100644
--- a/apps/web/package.json
+++ b/apps/web/package.json
@@ -78,7 +78,7 @@
"react": "^19.1.0",
"react-day-picker": "^9.7.0",
"react-dom": "^19.1.0",
- "react-draggable": "^4.4.6",
+ "react-draggable": "^4.5.0",
"react-dropzone": "^14.2.3",
"react-error-boundary": "^5.0.0",
"react-hook-form": "^7.57.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index f26433d1..55040814 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -673,8 +673,8 @@ importers:
specifier: ^19.1.0
version: 19.1.0(react@19.1.0)
react-draggable:
- specifier: ^4.4.6
- version: 4.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
+ specifier: ^4.5.0
+ version: 4.5.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
react-dropzone:
specifier: ^14.2.3
version: 14.2.3(react@19.1.0)
@@ -6877,6 +6877,10 @@ packages:
resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==}
engines: {node: '>=6'}
+ clsx@2.1.1:
+ resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
+ engines: {node: '>=6'}
+
cmdk@1.1.1:
resolution: {integrity: sha512-Vsv7kFaXm+ptHDMZ7izaRsP70GgrW9NBNGswt9OZaVBLlE0SNpDq8eu/VGXyF9r7M0azK3Wy7OlYXsuyYLFzHg==}
peerDependencies:
@@ -12136,8 +12140,8 @@ packages:
peerDependencies:
react: ^19.1.0
- react-draggable@4.4.6:
- resolution: {integrity: sha512-LtY5Xw1zTPqHkVmtM3X8MUOxNDOUhv/khTgBgrUvwaS064bwVvxT+q5El0uUFNx5IEPKXuRejr7UqLwBIg5pdw==}
+ react-draggable@4.5.0:
+ resolution: {integrity: sha512-VC+HBLEZ0XJxnOxVAZsdRi8rD04Iz3SiiKOoYzamjylUcju/hP9np/aZdLHf/7WOD268WMoNJMvYfB5yAK45cw==}
peerDependencies:
react: '>= 16.3.0'
react-dom: '>= 16.3.0'
@@ -22105,6 +22109,8 @@ snapshots:
clsx@2.1.0: {}
+ clsx@2.1.1: {}
+
cmdk@1.1.1(@types/react-dom@19.1.6(@types/react@19.1.8))(@types/react@19.1.8)(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
dependencies:
'@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.8)(react@19.1.0)
@@ -28310,9 +28316,9 @@ snapshots:
react: 19.1.0
scheduler: 0.26.0
- react-draggable@4.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
+ react-draggable@4.5.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
dependencies:
- clsx: 1.2.1
+ clsx: 2.1.1
prop-types: 15.8.1
react: 19.1.0
react-dom: 19.1.0(react@19.1.0)