Update code comments

This commit is contained in:
Daniel Dudzic 2024-10-07 15:42:01 +02:00
parent c3bc87b1a3
commit eba3d12e4e
No known key found for this signature in database
GPG key ID: 31B40D33E3465483
2 changed files with 15 additions and 1 deletions

View file

@ -1,11 +1,20 @@
import { useState, useEffect } from '@wordpress/element';
import { log } from '../../../../ppcp-axo/resources/js/Helper/Debug';
/**
* Custom hook to load and manage the PayPal Commerce Gateway configuration.
*
* @param {Object} initialConfig - Initial configuration object.
* @return {Object} An object containing the loaded config and a boolean indicating if it's loaded.
*/
const usePayPalCommerceGateway = ( initialConfig ) => {
const [ isConfigLoaded, setIsConfigLoaded ] = useState( false );
const [ ppcpConfig, setPpcpConfig ] = useState( initialConfig );
useEffect( () => {
/**
* Function to load the PayPal Commerce Gateway configuration.
*/
const loadConfig = () => {
if ( typeof window.PayPalCommerceGateway !== 'undefined' ) {
setPpcpConfig( window.PayPalCommerceGateway );
@ -15,17 +24,22 @@ const usePayPalCommerceGateway = ( initialConfig ) => {
}
};
// Check if the DOM is still loading
if ( document.readyState === 'loading' ) {
// If it's loading, add an event listener for when the DOM is fully loaded
document.addEventListener( 'DOMContentLoaded', loadConfig );
} else {
// If it's already loaded, call the loadConfig function immediately
loadConfig();
}
// Cleanup function to remove the event listener
return () => {
document.removeEventListener( 'DOMContentLoaded', loadConfig );
};
}, [] );
// Return the loaded configuration and the loading status
return { isConfigLoaded, ppcpConfig };
};

View file

@ -5,7 +5,7 @@ import UnifiedScriptLoader from '../../../../ppcp-button/resources/js/modules/He
import { STORE_NAME } from '../stores/axoStore';
/**
* Custom hook to load the PayPal script using UnifiedScriptLoader.
* Custom hook to load the PayPal script.
*
* @param {string} namespace - Namespace for the PayPal script.
* @param {Object} ppcpConfig - Configuration object for PayPal script.