import {
Block,
BlockProps,
HeadingMedium,
LabelLarge,
Mats,
mergeOverrides,
Skeleton,
useStyletron,
} from "@mezo-org/mezo-clay"
import React from "react"
import DefaultAvatar from "../../../assets/DefaultAvatar"
import { useGetCurrentAccount } from "../../../hooks"
import { formatNumberToCompactString } from "../../../utils/numbers"
import AccountError from "./AccountError"
import { usePassportContext } from "../../../hooks/usePassportContext"
import SlotNumber from "../SlotNumber"
const DOT_DELIMITER_REGEX = /(?=\.)/
function WelcomeBlockSkeleton() {
const [, theme] = useStyletron()
return (
)
}
type WelcomeBlockProps = BlockProps
export default function WelcomeBlock(props: WelcomeBlockProps) {
const { overrides, ...restProps } = props
const { accountDataRefetchInterval } = usePassportContext()
const { data, isError, isPending } = useGetCurrentAccount({
staleTime: accountDataRefetchInterval,
refetchInterval: accountDataRefetchInterval,
})
const [, theme] = useStyletron()
if (isError) {
return (
)
}
if (isPending) {
return
}
const [mezoId, mezoIdSuffix] = (data.mezoId ?? "").split(DOT_DELIMITER_REGEX)
return (
{mezoId && mezoIdSuffix && (
{mezoId}
{mezoIdSuffix}
)}
{data.totalMats}
{" "}
mats
)
}