@assistant-ui/react
Version:
Typescript/React library for AI Chat
33 lines • 913 B
JavaScript
import { useCallbackRef } from "@radix-ui/react-use-callback-ref";
import { useCallback } from "react";
import { useManagedRef } from "./useManagedRef";
const useOnResizeContent = (callback) => {
const callbackRef = useCallbackRef(callback);
const refCallback = useCallback(
(el) => {
const resizeObserver = new ResizeObserver(() => {
callbackRef();
});
const mutationObserver = new MutationObserver(() => {
callbackRef();
});
resizeObserver.observe(el);
mutationObserver.observe(el, {
childList: true,
subtree: true,
attributes: true,
characterData: true
});
return () => {
resizeObserver.disconnect();
mutationObserver.disconnect();
};
},
[callbackRef]
);
return useManagedRef(refCallback);
};
export {
useOnResizeContent
};
//# sourceMappingURL=useOnResizeContent.js.map