Closes https://github.com/twentyhq/private-issues/issues/226 https://github.com/user-attachments/assets/cee78080-6dda-4102-9595-d32971cf9104
28 lines
662 B
TypeScript
28 lines
662 B
TypeScript
import { useCallback, useState } from 'react';
|
|
|
|
export const useCurrentContentId = <T>() => {
|
|
const [currentContentId, setCurrentContentId] = useState<T | null>(null);
|
|
|
|
const [previousContentId, setPreviousContentId] = useState<T | null>(null);
|
|
|
|
const handleContentChange = useCallback(
|
|
(key: T) => {
|
|
setPreviousContentId(currentContentId);
|
|
setCurrentContentId(key);
|
|
},
|
|
[currentContentId],
|
|
);
|
|
|
|
const handleResetContent = useCallback(() => {
|
|
setPreviousContentId(null);
|
|
setCurrentContentId(null);
|
|
}, []);
|
|
|
|
return {
|
|
previousContentId,
|
|
currentContentId,
|
|
handleContentChange,
|
|
handleResetContent,
|
|
};
|
|
};
|