import { Button } from '@wordpress/components'; import { useState } from '@wordpress/element'; import { useI18n } from '@wordpress/react-i18n'; import classNames from 'classnames'; import { useTourKitContext } from '../../../index'; import thumbsDown from '../icons/thumbs_down'; import thumbsUp from '../icons/thumbs_up'; import type { WpcomConfig } from '../../../index'; const WpcomTourKitRating: React.FunctionComponent = () => { const [ tempRating, setTempRating ] = useState< 'thumbs-up' | 'thumbs-down' >(); const context = useTourKitContext(); const config = context.config as unknown as WpcomConfig; const tourRating = config.options?.tourRating?.useTourRating?.() ?? tempRating; const { __ } = useI18n(); let isDisabled = false; if ( ! config.options?.tourRating?.enabled ) { return null; } // check is on tempRating to allow rerating in a restarted tour if ( ! isDisabled && tempRating !== undefined ) { isDisabled = true; } const rateTour = ( isThumbsUp: boolean ) => { if ( isDisabled ) { return; } const rating = isThumbsUp ? 'thumbs-up' : 'thumbs-down'; if ( rating !== tourRating ) { isDisabled = true; setTempRating( rating ); config.options?.tourRating?.onTourRate?.( rating ); } }; return ( <>

{ __( 'Did you find this guide helpful?', __i18n_text_domain__ ) }

); }; export default WpcomTourKitRating;