diff --git a/src/frontend/src/pages/StorePage/components/market-card.tsx b/src/frontend/src/pages/StorePage/components/market-card.tsx index 5a578c84e..f8c5991fd 100644 --- a/src/frontend/src/pages/StorePage/components/market-card.tsx +++ b/src/frontend/src/pages/StorePage/components/market-card.tsx @@ -23,7 +23,13 @@ import { storeComponent } from "../../../types/store"; import cloneFLowWithParent from "../../../utils/storeUtils"; import { classNames } from "../../../utils/utils"; -export const MarketCardComponent = ({ data }: { data: storeComponent }) => { +export const MarketCardComponent = ({ + data, + authorized, +}: { + data: storeComponent; + authorized: boolean; +}) => { const { savedFlows } = useContext(StoreContext); const [added, setAdded] = useState(savedFlows.has(data.id) ? true : false); const [loading, setLoading] = useState(false); @@ -32,6 +38,7 @@ export const MarketCardComponent = ({ data }: { data: storeComponent }) => { const flowData = useRef(); const [liked_by_user, setLiked_by_user] = useState(data.liked_by_user); const [likes_count, setLikes_count] = useState(data.liked_by_count ?? 0); + const [hovering, setHovering] = useState(false); useEffect(() => { setAdded(savedFlows.has(data.id) ? true : false); @@ -116,7 +123,15 @@ export const MarketCardComponent = ({ data }: { data: storeComponent }) => { }; return ( - + { + setHovering(true); + }} + onMouseLeave={() => { + setHovering(false); + }} + className="group relative flex flex-col justify-between overflow-hidden transition-all hover:shadow-md" + >
@@ -172,31 +187,46 @@ export const MarketCardComponent = ({ data }: { data: storeComponent }) => { ))}
- + - + diff --git a/src/frontend/src/pages/StorePage/index.tsx b/src/frontend/src/pages/StorePage/index.tsx index 5cb4e5649..4203100c3 100644 --- a/src/frontend/src/pages/StorePage/index.tsx +++ b/src/frontend/src/pages/StorePage/index.tsx @@ -76,14 +76,19 @@ export default function StorePage(): JSX.Element { setLoadingSaved(true); getStoreSavedComponents() .then((data) => { - let savedIds = new Set(); - let results = data?.results ?? []; - results.forEach((flow) => { - savedIds.add(flow.id); - }); - setSavedFlows(savedIds); - setErrorApiKey(false); - setLoadingSaved(false); + if (data?.authorized === false) { + setErrorApiKey(true); + setSavedFlows(new Set()); + } else { + let savedIds = new Set(); + let results = data?.results ?? []; + results.forEach((flow) => { + savedIds.add(flow.id); + }); + setSavedFlows(savedIds); + setErrorApiKey(false); + setLoadingSaved(false); + } }) .catch((err) => { setSavedFlows(new Set()); @@ -291,7 +296,11 @@ export default function StorePage(): JSX.Element { searchData.map((item, idx) => { return ( <> - + ); })