]> git.localhorst.tv Git - alttp.git/blobdiff - resources/js/components/pages/AosSeed.js
add helmet
[alttp.git] / resources / js / components / pages / AosSeed.js
index e3cfda8f93b6a8f3e6b754b6007691d1e0254eb3..ece8406ea69774b6f7965625f8e4decbe25d3e59 100644 (file)
@@ -1,5 +1,6 @@
 import axios from 'axios';
 import React, { useCallback, useEffect, useState } from 'react';
+import { Helmet } from 'react-helmet';
 import { useParams } from 'react-router-dom';
 
 import NotFound from './NotFound';
@@ -24,7 +25,6 @@ const AosSeed = () => {
                                setError(null);
                                setLoading(false);
                                setSeed(response.data);
-                               window.document.title = response.data.hash;
                        })
                        .catch(error => {
                                setError(error);
@@ -78,6 +78,11 @@ const AosSeed = () => {
                };
        }, [hash, seed]);
 
+       const retry = useCallback(async () => {
+               await axios.post(`/api/aos-seed/${hash}/retry`);
+               setSeed(seed => ({ ...seed, status: 'pending' }));
+       });
+
        if (loading) {
                return <Loading />;
        }
@@ -91,7 +96,12 @@ const AosSeed = () => {
        }
 
        return <ErrorBoundary>
-               <Seed patch={patch} seed={seed} />
+               <Helmet>
+                       {seed ?
+                               <title>{seed.hash}</title>
+                       : null}
+               </Helmet>
+               <Seed onRetry={retry} patch={patch} seed={seed} />
        </ErrorBoundary>;
 };