2023-12-01 22:45:42 +00:00
|
|
|
import { useEffect } from 'react';
|
|
|
|
|
import { useRecoilState } from 'recoil';
|
|
|
|
|
|
2023-12-01 21:06:38 +00:00
|
|
|
import { useFindManyObjectMetadataItems } from '@/object-metadata/hooks/useFindManyObjectMetadataItems';
|
2023-12-01 22:45:42 +00:00
|
|
|
import { objectMetadataItemsState } from '@/object-metadata/states/objectMetadataItemsState';
|
|
|
|
|
import { isDeeplyEqual } from '~/utils/isDeeplyEqual';
|
2023-12-01 21:06:38 +00:00
|
|
|
|
|
|
|
|
export const ObjectMetadataItemsLoadEffect = () => {
|
2023-12-01 22:45:42 +00:00
|
|
|
const { objectMetadataItems: newObjectMetadataItems } =
|
|
|
|
|
useFindManyObjectMetadataItems();
|
|
|
|
|
|
|
|
|
|
const [objectMetadataItems, setObjectMetadataItems] = useRecoilState(
|
2024-03-20 13:21:58 +00:00
|
|
|
objectMetadataItemsState,
|
2023-12-01 22:45:42 +00:00
|
|
|
);
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
|
if (!isDeeplyEqual(objectMetadataItems, newObjectMetadataItems)) {
|
|
|
|
|
setObjectMetadataItems(newObjectMetadataItems);
|
|
|
|
|
}
|
|
|
|
|
}, [newObjectMetadataItems, objectMetadataItems, setObjectMetadataItems]);
|
2023-12-01 21:06:38 +00:00
|
|
|
|
|
|
|
|
return <></>;
|
|
|
|
|
};
|