import {useEffect, useState} from 'react';

export function useStableArray<TType>(
    items?: Array<TType>
): Array<TType> | undefined {
    const [stableArray, setStableArray] = useState<Array<TType>>(items);

    useEffect(() => {
        if (JSON.stringify(items) !== JSON.stringify(stableArray)) {
            setStableArray(items);
        }
    }, [items, stableArray]);

    return stableArray;
}