Server IP : 172.67.158.161 / Your IP : 3.135.212.195 Web Server : LiteSpeed System : Linux business53.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : giankuin ( 1871) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/proc/thread-self/root/home/giankuin/thietke365.net/wp-content/plugins/woocommerce/packages/woocommerce-blocks/assets/js/base/hooks/ |
Upload File : |
/** * External dependencies */ import { useRef, useEffect } from '@wordpress/element'; interface Validation< T > { ( value: T, previousValue: T | undefined ): boolean; } /** * Use Previous based on https://usehooks.com/useprevious/. * * @param {*} value * @param {Function} [validation] Function that needs to validate for the value * to be updated. */ export function usePrevious< T >( value: T, validation?: Validation< T > ): T | undefined { const ref = useRef< T >(); useEffect( () => { if ( ref.current !== value && ( ! validation || validation( value, ref.current ) ) ) { ref.current = value; } }, [ value, validation ] ); return ref.current; }