/** * Internal dependencies */ import { loadAlternative, loadUntestedControl } from './alternative-loading'; import { exportTrackingApi, markContentAsReady, maybeStartTracking, } from './tracking'; import { getSession, maybeLoadCheckerScript, setNabReferrer, } from './utils/helpers'; void ( async function (): Promise< void > { setNabReferrer(); await maybeLoadCheckerScript(); exportTrackingApi( 'awaiting-session' ); const session = await getSession(); if ( ! session ) { exportTrackingApi( 'missing-session' ); await loadUntestedControl(); markContentAsReady( undefined, false ); return; } exportTrackingApi( 'awaiting-variant' ); const loaded = await loadAlternative( session ); maybeStartTracking( session, loaded ); markContentAsReady( session, loaded ); } )();