import { ArrowForwardIcon } from "@chakra-ui/icons"; import { Button, Flex, Heading, Skeleton, Text, useColorModeValue, VStack } from "@chakra-ui/react"; import { __ } from "@wordpress/i18n"; import React, { useEffect, useState } from "react"; import { apiGet, apiPost } from "../../api/gettingStartedApi"; interface FinishLinks { dashboard?: string; } const FinishStep: React.FC = () => { const [isLoadingData, setIsLoadingData] = useState(true); const [isSaving, setIsSaving] = useState(false); const [links, setLinks] = useState({}); const textColor = useColorModeValue("gray.800", "white"); const subtextColor = useColorModeValue("gray.600", "gray.300"); useEffect(() => { const loadFinishData = async () => { try { setIsLoadingData(true); const response = await apiGet("/finish"); if (response.links) setLinks(response.links); } catch (e) { console.error("Failed to load finish data:", e); } finally { setIsLoadingData(false); } }; loadFinishData(); }, []); const handleGoToDashboard = async () => { try { setIsSaving(true); await apiPost("/finish", {}); if (links.dashboard) window.location.href = links.dashboard; } catch (e) { console.error("Failed to complete action:", e); } finally { setIsSaving(false); } }; return ( <> {__("Congratulations! 🎉", "user-registration")} {/* Subtitle */} {__("Setup complete !", "user-registration")} {__( "We have created all the pages you need and your site is ready to go. You can customize everything from the ", "user-registration" )}
{__("URM dashboard.", "user-registration")}
{/* Title */} {/* Action */} {isLoadingData ? ( ) : ( )} ); }; export default FinishStep;