File "use-throw-error.ts"

Full Path: /home/vantageo/public_html/cache/cache/cache/cache/cache/.wp-cli/wp-content/plugins/woocommerce/packages/woocommerce-blocks/assets/js/base/hooks/use-throw-error.ts
File size: 509 bytes
MIME-type: text/x-java
Charset: utf-8

/**
 * External dependencies
 */
import { useState, useCallback } from '@wordpress/element';

/**
 * Helper method for throwing an error in a React Hook.
 *
 * @see https://github.com/facebook/react/issues/14981
 *
 * @return {function(Object)} A function receiving the error that will be thrown.
 */
export const useThrowError = (): ( ( error: Error ) => void ) => {
	const [ , setState ] = useState();
	return useCallback( ( error: Error ): void => {
		setState( () => {
			throw error;
		} );
	}, [] );
};