ghost-portal/packages/react-hooks/src/useLoadingDelay.ts
2020-09-17 16:46:46 +02:00

19 lines
509 B
TypeScript

// Copyright 2017-2020 @polkadot/react-hooks authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { useEffect, useState } from 'react';
import useIsMountedRef from './useIsMountedRef';
export default function useLoadingDelay (delay = 100): boolean {
const mountedRef = useIsMountedRef();
const [isLoading, setIsLoading] = useState(true);
useEffect((): void => {
setTimeout((): void => {
mountedRef.current && setIsLoading(false);
}, delay);
});
return isLoading;
}