/** * External dependencies */ import { registerPlugin } from '@wordpress/plugins'; import { WooOnboardingTask } from '@woocommerce/onboarding'; import { useSelect } from '@wordpress/data'; import { ONBOARDING_STORE_NAME } from '@woocommerce/data'; import { useEffect, useState } from '@wordpress/element'; const DeprecatedWooOnboardingTaskFills = () => { const [ deprecatedTasks, setDeprecatedTasks ] = useState( [] ); const { isResolving, taskLists } = useSelect( ( select ) => { return { isResolving: select( ONBOARDING_STORE_NAME ).isResolving( 'getTaskLists' ), taskLists: select( ONBOARDING_STORE_NAME ).getTaskLists(), }; } ); useEffect( () => { if ( taskLists && taskLists.length > 0 ) { const deprecatedTasksWithContainer = []; for ( const tasklist of taskLists ) { for ( const task of tasklist.tasks ) { if ( task.isDeprecated && task.container ) { deprecatedTasksWithContainer.push( task ); } } } setDeprecatedTasks( deprecatedTasksWithContainer ); } }, [ taskLists ] ); if ( isResolving ) { return null; } return ( <> { deprecatedTasks.map( ( task ) => ( { ( { onComplete } ) => task.container } ) ) } ); }; registerPlugin( 'wc-admin-deprecated-task-container', { scope: 'woocommerce-tasks', render: () => , } );