diff --git a/packages/react-headless/text-field/package.json b/packages/react-headless/text-field/package.json index b02578880..b81cf71b7 100644 --- a/packages/react-headless/text-field/package.json +++ b/packages/react-headless/text-field/package.json @@ -25,6 +25,7 @@ "build": "nanobundle build" }, "dependencies": { + "@radix-ui/react-use-callback-ref": "^1.1.0", "@radix-ui/react-use-controllable-state": "1.0.1", "@seed-design/react-utils": "0.0.0-alpha-20241030023710", "unicode-segmenter": "^0.11.2" diff --git a/packages/utils/react-utils/src/index.ts b/packages/utils/react-utils/src/index.ts index bda18d04e..c5792d340 100644 --- a/packages/utils/react-utils/src/index.ts +++ b/packages/utils/react-utils/src/index.ts @@ -1,4 +1 @@ export * from "./dom"; - -export * from "./useLatestRef"; -export * from "./useEvent"; diff --git a/packages/utils/react-utils/src/useEvent.ts b/packages/utils/react-utils/src/useEvent.ts deleted file mode 100644 index 4c6138383..000000000 --- a/packages/utils/react-utils/src/useEvent.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { useCallback } from "react"; -import { useLatestRef } from "./useLatestRef"; - -// biome-ignore lint/suspicious/noExplicitAny: -type AnyFunction = (...args: any[]) => any; - -export function useEvent(callback: T | undefined): T { - const callbackRef = useLatestRef(callback); - - return useCallback( - // biome-ignore lint/suspicious/noExplicitAny: - (...args: any[]) => { - return callbackRef.current?.(...args); - }, - [callbackRef], - ) as T; -} diff --git a/packages/utils/react-utils/src/useLatestRef.ts b/packages/utils/react-utils/src/useLatestRef.ts deleted file mode 100644 index 33051e4b6..000000000 --- a/packages/utils/react-utils/src/useLatestRef.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { useRef } from "react"; - -export function useLatestRef(value: T) { - const ref = useRef(value); - ref.current = value; - return ref; -} diff --git a/yarn.lock b/yarn.lock index 3f3830918..78e8e9969 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5867,7 +5867,7 @@ __metadata: languageName: node linkType: hard -"@radix-ui/react-use-callback-ref@npm:1.1.0": +"@radix-ui/react-use-callback-ref@npm:1.1.0, @radix-ui/react-use-callback-ref@npm:^1.1.0": version: 1.1.0 resolution: "@radix-ui/react-use-callback-ref@npm:1.1.0" peerDependencies: @@ -6436,6 +6436,7 @@ __metadata: version: 0.0.0-use.local resolution: "@seed-design/react-text-field@workspace:packages/react-headless/text-field" dependencies: + "@radix-ui/react-use-callback-ref": ^1.1.0 "@radix-ui/react-use-controllable-state": 1.0.1 "@seed-design/react-utils": 0.0.0-alpha-20241030023710 nanobundle: ^1.6.0