/** * WordPress dependencies */ import apiFetch from '@safe-wordpress/api-fetch'; import { dispatch, select } from '@safe-wordpress/data'; /** * Internal dependencies */ import { store as NAB_DATA } from '../../index'; import type { State } from '../../types'; export async function getOptimizationScore(): Promise< void > { return loadRecommendationEngineData(); } export async function getOpportunities(): Promise< void > { return loadRecommendationEngineData(); } // ======= // HELPERS // ======= async function loadRecommendationEngineData(): Promise< void > { if ( select( NAB_DATA ).isRecommendationEngineDataLoaded() ) { return; } try { const response = await apiFetch< Partial< State[ 'recommendationEngine' ] > >( { path: '/nab/v1/recommendation-engine', } ); await dispatch( NAB_DATA ).initRecommendationEngineData( response ); } catch ( _ ) {} }