Server IP : 172.67.158.161 / Your IP : 18.218.213.240 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/thread-self/root/home/giankuin/sieuthiweb.com.vn/wp-content/plugins/woocommerce/packages/woocommerce-blocks/assets/js/base/context/cart-checkout/billing/ |
Upload File : |
/** * External dependencies */ import { createContext, useContext, useState, useCallback, } from '@wordpress/element'; /** * Internal dependencies */ import { DEFAULT_STATE, DEFAULT_BILLING_CONTEXT_DATA } from './constants'; /** * @typedef {import('@woocommerce/type-defs/contexts').BillingDataContext} BillingDataContext */ const BillingDataContext = createContext( DEFAULT_BILLING_CONTEXT_DATA ); /** * @return {BillingDataContext} Returns data and functions related to billing. */ export const useBillingDataContext = () => { return useContext( BillingDataContext ); }; export const BillingDataProvider = ( { children } ) => { const [ billingData, setBillingDataState ] = useState( DEFAULT_STATE ); const setBillingData = useCallback( ( newData ) => { setBillingDataState( ( prevState ) => ( { ...prevState, ...newData, } ) ); }, [] ); /** * @type {BillingDataContext} */ const billingDataValue = { billingData, setBillingData, }; return ( <BillingDataContext.Provider value={ billingDataValue }> { children } </BillingDataContext.Provider> ); };