Skip to content

Commit

Permalink
Refactor initializeDropins to re-load on prerenderingchange
Browse files Browse the repository at this point in the history
  • Loading branch information
fnhipster committed Mar 3, 2025
1 parent b39066e commit f6c8b70
Showing 1 changed file with 29 additions and 22 deletions.
51 changes: 29 additions & 22 deletions scripts/initializers/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,33 +33,40 @@ const persistCartDataInSession = (data) => {
};

export default async function initializeDropins() {
// Set auth headers on authenticated event
events.on('authenticated', setAuthHeaders);
// Cache cart data in session storage
events.on('cart/data', persistCartDataInSession, { eager: true });
const init = async () => {
// Set auth headers on authenticated event
events.on('authenticated', setAuthHeaders);
// Cache cart data in session storage
events.on('cart/data', persistCartDataInSession, { eager: true });

// on page load, check if user is authenticated
const token = getUserTokenCookie();
// set auth headers
setAuthHeaders(!!token);
// emit authenticated event if token has changed
events.emit('authenticated', !!token);
// on page load, check if user is authenticated
const token = getUserTokenCookie();
// set auth headers
setAuthHeaders(!!token);
// emit authenticated event if token has changed
events.emit('authenticated', !!token);

// Event Bus Logger
events.enableLogger(true);
// Set Fetch Endpoint (Global)
setEndpoint(await getConfigValue('commerce-core-endpoint'));

// Event Bus Logger
events.enableLogger(true);
// Set Fetch Endpoint (Global)
setEndpoint(await getConfigValue('commerce-core-endpoint'));
// Initialize Global Drop-ins
await import('./auth.js');
import('./cart.js');

events.on('eds/lcp', async () => {
// Recaptcha
await import('@dropins/tools/recaptcha.js').then(({ setConfig }) => {
setConfig();
events.on('eds/lcp', async () => {
// Recaptcha
await import('@dropins/tools/recaptcha.js').then(({ setConfig }) => {
setConfig();
});
});
});
};

// re-initialize on prerendering changes
document.addEventListener('prerenderingchange', initializeDropins);

// Initialize Global Drop-ins
await import('./auth.js');
import('./cart.js');
return init();
}

export function initializeDropin(cb) {
Expand Down

0 comments on commit f6c8b70

Please sign in to comment.