import { useQuery } from "@tanstack/solid-query"; import { styled } from "styled-system/jsx"; import { Dialog, DialogProps, Profile } from "@revolt/ui"; import { useModals } from ".."; import { Modals } from "../types"; export function UserProfileModal( props: DialogProps & Modals & { type: "user_profile" }, ) { const { openModal } = useModals(); const query = useQuery(() => ({ queryKey: ["profile", props.user.id], queryFn: () => props.user.fetchProfile(), })); return ( openModal({ type: "image_viewer", file: query.data!.banner! }) : undefined } onClickAvatar={(e) => { e.stopPropagation(); if (props.user.avatar) { openModal({ type: "image_viewer", file: props.user.avatar }); } }} /> ); } const Grid = styled("div", { base: { display: "grid", gap: "var(--gap-md)", padding: "var(--gap-md)", gridTemplateColumns: "repeat(3, 1fr)", }, });