import { useMemo } from "react"; import { Flex, Grid, Text, rawTheme } from "@webstudio-is/design-system"; import type { DashboardProject } from "@webstudio-is/dashboard"; import { createImageLoader } from "@webstudio-is/image"; import { EmptyState } from "./empty-state"; import { Panel } from "../shared/panel"; import { ProjectCard, ProjectTemplateCard } from "./project-card"; import { CreateProject } from "./project-dialogs"; type ProjectsProps = { projects: Array; projectTemplates: Array; hasProPlan: boolean; publisherHost: string; imageBaseUrl: string; }; export const Projects = ({ projects, projectTemplates, hasProPlan, publisherHost, imageBaseUrl, }: ProjectsProps) => { const imageLoader = useMemo( () => createImageLoader({ imageBaseUrl }), [imageBaseUrl] ); return ( Projects {projects.length !== 0 && } {projects.length === 0 && } {projects.map((project) => { return ( ); })} {projectTemplates.length > 0 && ( Templates {projectTemplates.map((project) => { return ( ); })} )} ); };