kopia lustrzana https://github.com/bugout-dev/moonstream
Lint, remove useLayoutEffect
rodzic
ae8bdd9fca
commit
1534230b75
|
@ -1,279 +1,262 @@
|
|||
import React, { useEffect, useState, useLayoutEffect } from "react";
|
||||
import { useStatus } from "../../src/core/hooks";
|
||||
import {
|
||||
Heading,
|
||||
Text,
|
||||
Flex,
|
||||
Spacer,
|
||||
Stack,
|
||||
chakra,
|
||||
useMediaQuery,
|
||||
useBreakpointValue
|
||||
Heading,
|
||||
Text,
|
||||
Flex,
|
||||
Spacer,
|
||||
Stack,
|
||||
chakra,
|
||||
useMediaQuery,
|
||||
useBreakpointValue,
|
||||
} from "@chakra-ui/react";
|
||||
import { AWS_ASSETS_PATH } from "../../src/core/constants";
|
||||
|
||||
const assets = {
|
||||
background720: `${AWS_ASSETS_PATH}/product-background-720x405.png`,
|
||||
background1920: `${AWS_ASSETS_PATH}/product-background-720x405.png`,
|
||||
background2880: `${AWS_ASSETS_PATH}/product-background-720x405.png`,
|
||||
background3840: `${AWS_ASSETS_PATH}/product-background-720x405.png`
|
||||
background720: `${AWS_ASSETS_PATH}/product-background-720x405.png`,
|
||||
background1920: `${AWS_ASSETS_PATH}/product-background-720x405.png`,
|
||||
background2880: `${AWS_ASSETS_PATH}/product-background-720x405.png`,
|
||||
background3840: `${AWS_ASSETS_PATH}/product-background-720x405.png`,
|
||||
};
|
||||
|
||||
const Status = () => {
|
||||
const healthyStatusText = "Available";
|
||||
const downStatusText = "Disabled";
|
||||
const healthyStatusColor = "green.900";
|
||||
const downStatusColor = "red.600";
|
||||
const healthyStatusText = "Available";
|
||||
const downStatusText = "Unavailable";
|
||||
const healthyStatusColor = "green.900";
|
||||
const downStatusColor = "red.600";
|
||||
|
||||
const {
|
||||
apiServerStatus,
|
||||
apiServerData,
|
||||
crawlersServerStatus,
|
||||
crawlersServerData,
|
||||
gethStatus,
|
||||
gethData,
|
||||
crawlersStatus,
|
||||
crawlersData,
|
||||
dbServerStatus,
|
||||
dbServerData,
|
||||
latestBlockDBStatus,
|
||||
latestBlockDBData
|
||||
} = useStatus();
|
||||
const [apiServerDataStatus, setAPIServerDataStatus] = useState({
|
||||
color: downStatusColor,
|
||||
text: downStatusText
|
||||
});
|
||||
const [crawlersServerDataStatus, setCrawlersServerDataStatus] = useState({
|
||||
color: downStatusColor,
|
||||
text: downStatusText
|
||||
});
|
||||
const [txpoolDataStatus, setTxpoolDataStatus] = useState(null);
|
||||
const [trendingDataStatus, setTrendingDataStatus] = useState(null);
|
||||
const [gethDataStatus, setGethDataStatus] = useState(null);
|
||||
const [dbServerDataStatus, setDBServerDataStatus] = useState({
|
||||
color: downStatusColor,
|
||||
text: downStatusText
|
||||
});
|
||||
const [latestBlockDBDataStatus, setLatestBlockDBDataStatus] =
|
||||
useState(null);
|
||||
const shortTimestamp = (rawTimestamp) => {
|
||||
return rawTimestamp.replace(/^.+T/, "").replace(/\..+/, "");
|
||||
};
|
||||
|
||||
const [background, setBackground] = useState("background720");
|
||||
const [backgroundLoaded720, setBackgroundLoaded720] = useState(false);
|
||||
const [backgroundLoaded1920, setBackgroundLoaded1920] = useState(false);
|
||||
const [backgroundLoaded2880, setBackgroundLoaded2880] = useState(false);
|
||||
const [backgroundLoaded3840, setBackgroundLoaded3840] = useState(false);
|
||||
const {
|
||||
apiServerStatus,
|
||||
apiServerData,
|
||||
crawlersServerStatus,
|
||||
crawlersServerData,
|
||||
gethStatus,
|
||||
gethData,
|
||||
crawlersStatus,
|
||||
crawlersData,
|
||||
dbServerStatus,
|
||||
dbServerData,
|
||||
latestBlockDBStatus,
|
||||
latestBlockDBData,
|
||||
} = useStatus();
|
||||
|
||||
const [
|
||||
isLargerThan720px,
|
||||
isLargerThan1920px,
|
||||
isLargerThan2880px,
|
||||
isLargerThan3840px
|
||||
] = useMediaQuery([
|
||||
"(min-width: 720px)",
|
||||
"(min-width: 1920px)",
|
||||
"(min-width: 2880px)",
|
||||
"(min-width: 3840px)"
|
||||
]);
|
||||
const [background, setBackground] = useState("background720");
|
||||
const [backgroundLoaded720, setBackgroundLoaded720] = useState(false);
|
||||
const [backgroundLoaded1920, setBackgroundLoaded1920] = useState(false);
|
||||
const [backgroundLoaded2880, setBackgroundLoaded2880] = useState(false);
|
||||
const [backgroundLoaded3840, setBackgroundLoaded3840] = useState(false);
|
||||
|
||||
useEffect(() => {
|
||||
apiServerStatus();
|
||||
crawlersServerStatus();
|
||||
gethStatus();
|
||||
dbServerStatus();
|
||||
latestBlockDBStatus();
|
||||
crawlersStatus();
|
||||
const [
|
||||
isLargerThan720px,
|
||||
isLargerThan1920px,
|
||||
isLargerThan2880px,
|
||||
isLargerThan3840px,
|
||||
] = useMediaQuery([
|
||||
"(min-width: 720px)",
|
||||
"(min-width: 1920px)",
|
||||
"(min-width: 2880px)",
|
||||
"(min-width: 3840px)",
|
||||
]);
|
||||
|
||||
assets[
|
||||
"background720"
|
||||
] = `${AWS_ASSETS_PATH}/product-background-720x405.png`;
|
||||
assets[
|
||||
"background1920"
|
||||
] = `${AWS_ASSETS_PATH}/product-background-1920x1080.png`;
|
||||
assets[
|
||||
"background2880"
|
||||
] = `${AWS_ASSETS_PATH}/product-background-2880x1620.png`;
|
||||
assets[
|
||||
"background3840"
|
||||
] = `${AWS_ASSETS_PATH}/product-background-3840x2160.png`;
|
||||
}, []);
|
||||
useEffect(() => {
|
||||
apiServerStatus();
|
||||
crawlersServerStatus();
|
||||
crawlersStatus();
|
||||
gethStatus();
|
||||
dbServerStatus();
|
||||
latestBlockDBStatus();
|
||||
|
||||
useLayoutEffect(() => {
|
||||
if (backgroundLoaded3840) {
|
||||
setBackground("background3840");
|
||||
} else if (backgroundLoaded2880) {
|
||||
setBackground("background2880");
|
||||
} else if (backgroundLoaded1920) {
|
||||
setBackground("background1920");
|
||||
} else {
|
||||
setBackground("background720");
|
||||
}
|
||||
}, [
|
||||
isLargerThan720px,
|
||||
isLargerThan1920px,
|
||||
isLargerThan2880px,
|
||||
isLargerThan3840px,
|
||||
backgroundLoaded720,
|
||||
backgroundLoaded1920,
|
||||
backgroundLoaded2880,
|
||||
backgroundLoaded3840
|
||||
]);
|
||||
assets[
|
||||
"background720"
|
||||
] = `${AWS_ASSETS_PATH}/product-background-720x405.png`;
|
||||
assets[
|
||||
"background1920"
|
||||
] = `${AWS_ASSETS_PATH}/product-background-1920x1080.png`;
|
||||
assets[
|
||||
"background2880"
|
||||
] = `${AWS_ASSETS_PATH}/product-background-2880x1620.png`;
|
||||
assets[
|
||||
"background3840"
|
||||
] = `${AWS_ASSETS_PATH}/product-background-3840x2160.png`;
|
||||
}, []);
|
||||
|
||||
useLayoutEffect(() => {
|
||||
const imageLoader720 = new Image();
|
||||
imageLoader720.src = `${AWS_ASSETS_PATH}/product-background-720x405.png`;
|
||||
imageLoader720.onload = () => {
|
||||
setBackgroundLoaded720(true);
|
||||
};
|
||||
}, []);
|
||||
useLayoutEffect(() => {
|
||||
if (backgroundLoaded3840) {
|
||||
setBackground("background3840");
|
||||
} else if (backgroundLoaded2880) {
|
||||
setBackground("background2880");
|
||||
} else if (backgroundLoaded1920) {
|
||||
setBackground("background1920");
|
||||
} else {
|
||||
setBackground("background720");
|
||||
}
|
||||
}, [
|
||||
isLargerThan720px,
|
||||
isLargerThan1920px,
|
||||
isLargerThan2880px,
|
||||
isLargerThan3840px,
|
||||
backgroundLoaded720,
|
||||
backgroundLoaded1920,
|
||||
backgroundLoaded2880,
|
||||
backgroundLoaded3840,
|
||||
]);
|
||||
|
||||
useLayoutEffect(() => {
|
||||
const imageLoader1920 = new Image();
|
||||
imageLoader1920.src = `${AWS_ASSETS_PATH}/product-background-1920x1080.png`;
|
||||
imageLoader1920.onload = () => {
|
||||
setBackgroundLoaded1920(true);
|
||||
};
|
||||
}, []);
|
||||
useLayoutEffect(() => {
|
||||
const imageLoader720 = new Image();
|
||||
imageLoader720.src = `${AWS_ASSETS_PATH}/product-background-720x405.png`;
|
||||
imageLoader720.onload = () => {
|
||||
setBackgroundLoaded720(true);
|
||||
};
|
||||
}, []);
|
||||
|
||||
useLayoutEffect(() => {
|
||||
const imageLoader2880 = new Image();
|
||||
imageLoader2880.src = `${AWS_ASSETS_PATH}/product-background-2880x1620.png`;
|
||||
imageLoader2880.onload = () => {
|
||||
setBackgroundLoaded2880(true);
|
||||
};
|
||||
}, []);
|
||||
useLayoutEffect(() => {
|
||||
const imageLoader1920 = new Image();
|
||||
imageLoader1920.src = `${AWS_ASSETS_PATH}/product-background-1920x1080.png`;
|
||||
imageLoader1920.onload = () => {
|
||||
setBackgroundLoaded1920(true);
|
||||
};
|
||||
}, []);
|
||||
|
||||
useLayoutEffect(() => {
|
||||
const imageLoader3840 = new Image();
|
||||
imageLoader3840.src = `${AWS_ASSETS_PATH}/product-background-3840x2160.png`;
|
||||
imageLoader3840.onload = () => {
|
||||
setBackgroundLoaded3840(true);
|
||||
};
|
||||
}, []);
|
||||
useLayoutEffect(() => {
|
||||
const imageLoader2880 = new Image();
|
||||
imageLoader2880.src = `${AWS_ASSETS_PATH}/product-background-2880x1620.png`;
|
||||
imageLoader2880.onload = () => {
|
||||
setBackgroundLoaded2880(true);
|
||||
};
|
||||
}, []);
|
||||
|
||||
useLayoutEffect(() => {
|
||||
if (apiServerData?.data.status == "ok") {
|
||||
setAPIServerDataStatus({
|
||||
color: healthyStatusColor,
|
||||
text: healthyStatusText
|
||||
});
|
||||
}
|
||||
if (crawlersServerData?.data.status == "ok") {
|
||||
setCrawlersServerDataStatus({
|
||||
color: healthyStatusColor,
|
||||
text: healthyStatusText
|
||||
});
|
||||
}
|
||||
if (gethData?.data?.current_block) {
|
||||
setGethDataStatus(gethData?.data?.current_block);
|
||||
}
|
||||
if (crawlersData?.data) {
|
||||
if (crawlersData?.data?.ethereum_txpool_timestamp) {
|
||||
setTxpoolDataStatus(
|
||||
crawlersData?.data?.ethereum_txpool_timestamp
|
||||
.replace(/^.+T/, "")
|
||||
.replace(/\..+/, "")
|
||||
);
|
||||
}
|
||||
if (crawlersData?.data?.ethereum_trending_timestamp) {
|
||||
setTrendingDataStatus(
|
||||
crawlersData?.data?.ethereum_trending_timestamp
|
||||
.replace(/^.+T/, "")
|
||||
.replace(/\..+/, "")
|
||||
);
|
||||
}
|
||||
}
|
||||
useLayoutEffect(() => {
|
||||
const imageLoader3840 = new Image();
|
||||
imageLoader3840.src = `${AWS_ASSETS_PATH}/product-background-3840x2160.png`;
|
||||
imageLoader3840.onload = () => {
|
||||
setBackgroundLoaded3840(true);
|
||||
};
|
||||
}, []);
|
||||
|
||||
if (dbServerData?.data?.status == "ok") {
|
||||
setDBServerDataStatus({
|
||||
color: healthyStatusColor,
|
||||
text: healthyStatusText
|
||||
});
|
||||
}
|
||||
if (latestBlockDBData?.data?.block_number) {
|
||||
setLatestBlockDBDataStatus(latestBlockDBData?.data?.block_number);
|
||||
}
|
||||
}, [apiServerData, crawlersServerData, dbServerData]);
|
||||
const margin = useBreakpointValue({
|
||||
base: "1%",
|
||||
sm: "2%",
|
||||
md: "3%",
|
||||
lg: "15%",
|
||||
xl: "20%",
|
||||
"2xl": "25%",
|
||||
});
|
||||
|
||||
const margin = useBreakpointValue({
|
||||
base: "1%",
|
||||
sm: "2%",
|
||||
md: "3%",
|
||||
lg: "15%",
|
||||
xl: "20%",
|
||||
"2xl": "25%"
|
||||
});
|
||||
|
||||
return (
|
||||
<Flex
|
||||
bgPos="bottom"
|
||||
bgColor="transparent"
|
||||
backgroundImage={`url(${assets[`${background}`]})`}
|
||||
bgSize="cover"
|
||||
// boxSize="full"
|
||||
minH="100vh"
|
||||
direction="column"
|
||||
alignItems="center"
|
||||
pb={24}
|
||||
>
|
||||
<Stack mx={margin} my={12} maxW="1700px">
|
||||
<Heading
|
||||
as="h2"
|
||||
size="md"
|
||||
placeSelf="center"
|
||||
px={12}
|
||||
py={2}
|
||||
borderTopRadius="xl"
|
||||
>
|
||||
{`Status page`}
|
||||
</Heading>
|
||||
<chakra.span pl={2} px={12} py={2} width="400px">
|
||||
<Flex mb={3}>
|
||||
<Text>Backend server</Text>
|
||||
<Spacer />
|
||||
<Text color={apiServerDataStatus.color}>
|
||||
{apiServerDataStatus.text}
|
||||
</Text>
|
||||
</Flex>
|
||||
<br />
|
||||
<Flex mb={3}>
|
||||
<Text>Crawlers server</Text>
|
||||
<Spacer />
|
||||
<Text color={crawlersServerDataStatus.color}>
|
||||
{crawlersServerDataStatus.text}
|
||||
</Text>
|
||||
</Flex>
|
||||
<Flex mb={3}>
|
||||
<Text>Latest block in Geth</Text>
|
||||
<Spacer />
|
||||
<Text>{gethDataStatus}</Text>
|
||||
</Flex>
|
||||
<Flex mb={3}>
|
||||
<Text>Txpool latest record ts</Text>
|
||||
<Spacer />
|
||||
<Text>{txpoolDataStatus}</Text>
|
||||
</Flex>
|
||||
<Flex mb={3}>
|
||||
<Text>Trending latest record ts</Text>
|
||||
<Spacer />
|
||||
<Text>{trendingDataStatus}</Text>
|
||||
</Flex>
|
||||
<br />
|
||||
<Flex mb={3}>
|
||||
<Text>Database server</Text>
|
||||
<Spacer />
|
||||
<Text color={dbServerDataStatus.color}>
|
||||
{dbServerDataStatus.text}
|
||||
</Text>
|
||||
</Flex>
|
||||
<Flex mb={3}>
|
||||
<Text>Latest block in Database</Text>
|
||||
<Spacer />
|
||||
<Text>{latestBlockDBDataStatus}</Text>
|
||||
</Flex>
|
||||
</chakra.span>
|
||||
</Stack>
|
||||
</Flex>
|
||||
);
|
||||
return (
|
||||
<Flex
|
||||
bgPos="bottom"
|
||||
bgColor="transparent"
|
||||
backgroundImage={`url(${assets[`${background}`]})`}
|
||||
bgSize="cover"
|
||||
// boxSize="full"
|
||||
minH="100vh"
|
||||
direction="column"
|
||||
alignItems="center"
|
||||
pb={24}
|
||||
>
|
||||
<Stack mx={margin} my={12} maxW="1700px">
|
||||
<Heading
|
||||
as="h2"
|
||||
size="md"
|
||||
placeSelf="center"
|
||||
px={12}
|
||||
py={2}
|
||||
borderTopRadius="xl"
|
||||
>
|
||||
{`Status page`}
|
||||
</Heading>
|
||||
<chakra.span pl={2} px={12} py={2} width="400px">
|
||||
<Flex mb={3}>
|
||||
<Text>Backend server</Text>
|
||||
<Spacer />
|
||||
<Text
|
||||
color={
|
||||
apiServerData?.data?.status == "ok"
|
||||
? healthyStatusColor
|
||||
: downStatusColor
|
||||
}
|
||||
>
|
||||
{apiServerData?.data?.status == "ok"
|
||||
? healthyStatusText
|
||||
: downStatusText}
|
||||
</Text>
|
||||
</Flex>
|
||||
<br />
|
||||
<Flex mb={3}>
|
||||
<Text>Crawlers server</Text>
|
||||
<Spacer />
|
||||
<Text
|
||||
color={
|
||||
crawlersServerData?.data?.status == "ok"
|
||||
? healthyStatusColor
|
||||
: downStatusColor
|
||||
}
|
||||
>
|
||||
{crawlersServerData?.data?.status == "ok"
|
||||
? healthyStatusText
|
||||
: downStatusText}
|
||||
</Text>
|
||||
</Flex>
|
||||
<Flex mb={3}>
|
||||
<Text>Latest block in Geth</Text>
|
||||
<Spacer />
|
||||
<Text>
|
||||
{gethData?.data?.current_block ? gethData.data.current_block : 0}
|
||||
</Text>
|
||||
</Flex>
|
||||
<Flex mb={3}>
|
||||
<Text>Txpool latest record ts</Text>
|
||||
<Spacer />
|
||||
<Text>
|
||||
{crawlersData?.data?.ethereum_txpool_timestamp
|
||||
? shortTimestamp(crawlersData?.data?.ethereum_txpool_timestamp)
|
||||
: downStatusText}
|
||||
</Text>
|
||||
</Flex>
|
||||
<Flex mb={3}>
|
||||
<Text>Trending latest record ts</Text>
|
||||
<Spacer />
|
||||
<Text>
|
||||
{crawlersData?.data?.ethereum_trending_timestamp
|
||||
? shortTimestamp(
|
||||
crawlersData?.data?.ethereum_trending_timestamp
|
||||
)
|
||||
: downStatusText}
|
||||
</Text>
|
||||
</Flex>
|
||||
<br />
|
||||
<Flex mb={3}>
|
||||
<Text>Database server</Text>
|
||||
<Spacer />
|
||||
<Text
|
||||
color={
|
||||
dbServerData?.data?.status == "ok"
|
||||
? healthyStatusColor
|
||||
: downStatusColor
|
||||
}
|
||||
>
|
||||
{dbServerData?.data?.status == "ok"
|
||||
? healthyStatusText
|
||||
: downStatusText}
|
||||
</Text>
|
||||
</Flex>
|
||||
<Flex mb={3}>
|
||||
<Text>Latest block in Database</Text>
|
||||
<Spacer />
|
||||
<Text>
|
||||
{latestBlockDBData?.data?.block_number
|
||||
? latestBlockDBData.data.block_number
|
||||
: 0}
|
||||
</Text>
|
||||
</Flex>
|
||||
</chakra.span>
|
||||
</Stack>
|
||||
</Flex>
|
||||
);
|
||||
};
|
||||
|
||||
export default Status;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
export NEXT_PUBLIC_MIXPANEL_TOKEN="<YOUR MIXPANEL TOKEN HERE>"
|
||||
export NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY="<stripe publishable key>"
|
||||
export NEXT_PUBLIC_MOONSTREAM_API_URL="<moonstream_api_url>"
|
||||
export NEXT_PUBLIC_MOONSTREAM_CRAWLERS_URL="<moonstream_crawlers_url>"
|
||||
export NEXT_PUBLIC_MOONSTREAM_ETHEREUM_CLUSTER_URL="<moonstream_crawlers_url>"
|
||||
export NEXT_PUBLIC_MOONSTREAM_DB_URL="<moonstream_db_url>"
|
||||
|
|
|
@ -3,87 +3,89 @@ import { useToast } from "./";
|
|||
import { AuthService } from "../../core/services";
|
||||
|
||||
const useStatus = () => {
|
||||
const toast = useToast();
|
||||
const toast = useToast();
|
||||
|
||||
const { mutate: apiServerStatus, data: apiServerData } = useMutation(
|
||||
AuthService.apiServerStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
}
|
||||
}
|
||||
);
|
||||
const { mutate: apiServerStatus, data: apiServerData } = useMutation(
|
||||
AuthService.apiServerStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
},
|
||||
}
|
||||
);
|
||||
|
||||
const { mutate: crawlersServerStatus, data: crawlersServerData } =
|
||||
useMutation(AuthService.crawlersServerStatus, {
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
}
|
||||
});
|
||||
const { mutate: gethStatus, data: gethData } = useMutation(
|
||||
AuthService.gethStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
}
|
||||
}
|
||||
);
|
||||
const { mutate: crawlersStatus, data: crawlersData } = useMutation(
|
||||
AuthService.crawlersStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
}
|
||||
}
|
||||
);
|
||||
const { mutate: crawlersServerStatus, data: crawlersServerData } =
|
||||
useMutation(AuthService.crawlersServerStatus, {
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
},
|
||||
});
|
||||
const { mutate: gethStatus, data: gethData } = useMutation(
|
||||
AuthService.gethStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
},
|
||||
}
|
||||
);
|
||||
const { mutate: crawlersStatus, data: crawlersData } = useMutation(
|
||||
AuthService.crawlersStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
},
|
||||
}
|
||||
);
|
||||
|
||||
const { mutate: dbServerStatus, data: dbServerData } = useMutation(
|
||||
AuthService.dbServerStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
}
|
||||
}
|
||||
);
|
||||
const { mutate: latestBlockDBStatus, data: latestBlockDBData } =
|
||||
useMutation(AuthService.latestBlockDBStatus, {
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
}
|
||||
});
|
||||
const { mutate: dbServerStatus, data: dbServerData } = useMutation(
|
||||
AuthService.dbServerStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
},
|
||||
}
|
||||
);
|
||||
const { mutate: latestBlockDBStatus, data: latestBlockDBData } = useMutation(
|
||||
AuthService.latestBlockDBStatus,
|
||||
{
|
||||
onError: (error) => {
|
||||
// toast(error, "error");
|
||||
},
|
||||
onSuccess: () => {
|
||||
// toast("Status received", "success");
|
||||
},
|
||||
}
|
||||
);
|
||||
|
||||
return {
|
||||
apiServerStatus,
|
||||
apiServerData,
|
||||
crawlersServerStatus,
|
||||
crawlersServerData,
|
||||
gethStatus,
|
||||
gethData,
|
||||
crawlersStatus,
|
||||
crawlersData,
|
||||
dbServerStatus,
|
||||
dbServerData,
|
||||
latestBlockDBStatus,
|
||||
latestBlockDBData
|
||||
};
|
||||
return {
|
||||
apiServerStatus,
|
||||
apiServerData,
|
||||
crawlersServerStatus,
|
||||
crawlersServerData,
|
||||
gethStatus,
|
||||
gethData,
|
||||
crawlersStatus,
|
||||
crawlersData,
|
||||
dbServerStatus,
|
||||
dbServerData,
|
||||
latestBlockDBStatus,
|
||||
latestBlockDBData,
|
||||
};
|
||||
};
|
||||
|
||||
export default useStatus;
|
||||
|
|
|
@ -2,7 +2,7 @@ import { http } from "../utils";
|
|||
|
||||
const API_URL = process.env.NEXT_PUBLIC_MOONSTREAM_API_URL;
|
||||
const DB_URL = process.env.NEXT_PUBLIC_MOONSTREAM_DB_URL;
|
||||
const CRAWLERS_URL = process.env.NEXT_PUBLIC_MOONSTREAM_CRAWLERS_URL;
|
||||
const CRAWLERS_URL = process.env.NEXT_PUBLIC_MOONSTREAM_ETHEREUM_CLUSTER_URL;
|
||||
export const AUTH_URL = `${API_URL}/users`;
|
||||
|
||||
export const login = ({ username, password, token_note }) => {
|
||||
|
@ -105,43 +105,43 @@ export const revokeToken = (token) => {
|
|||
};
|
||||
|
||||
export const apiServerStatus = () => {
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${API_URL}/ping`
|
||||
});
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${API_URL}/ping`,
|
||||
});
|
||||
};
|
||||
|
||||
export const crawlersServerStatus = () => {
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${CRAWLERS_URL}/ping`
|
||||
});
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${CRAWLERS_URL}/ping`,
|
||||
});
|
||||
};
|
||||
|
||||
export const gethStatus = () => {
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${CRAWLERS_URL}/status`
|
||||
});
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${CRAWLERS_URL}/status`,
|
||||
});
|
||||
};
|
||||
|
||||
export const crawlersStatus = () => {
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${API_URL}/status`
|
||||
});
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${API_URL}/status`,
|
||||
});
|
||||
};
|
||||
|
||||
export const dbServerStatus = () => {
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${DB_URL}/ping`
|
||||
});
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${DB_URL}/ping`,
|
||||
});
|
||||
};
|
||||
|
||||
export const latestBlockDBStatus = () => {
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${DB_URL}/block/latest`
|
||||
});
|
||||
return http({
|
||||
method: "GET",
|
||||
url: `${DB_URL}/block/latest`,
|
||||
});
|
||||
};
|
||||
|
|
Ładowanie…
Reference in New Issue