Commit 6c87e86a authored by tom's avatar tom

marketplace: support dark mode logo version

parent 1edd2885
...@@ -3,6 +3,7 @@ export type MarketplaceAppPreview = { ...@@ -3,6 +3,7 @@ export type MarketplaceAppPreview = {
external?: boolean; external?: boolean;
title: string; title: string;
logo: string; logo: string;
logoDarkMode?: string;
shortDescription: string; shortDescription: string;
categories: Array<string>; categories: Array<string>;
url: string; url: string;
......
...@@ -22,6 +22,7 @@ const MarketplaceAppCard = ({ ...@@ -22,6 +22,7 @@ const MarketplaceAppCard = ({
external, external,
title, title,
logo, logo,
logoDarkMode,
shortDescription, shortDescription,
categories, categories,
onInfoClick, onInfoClick,
...@@ -39,6 +40,8 @@ const MarketplaceAppCard = ({ ...@@ -39,6 +40,8 @@ const MarketplaceAppCard = ({
onFavoriteClick(id, isFavorite); onFavoriteClick(id, isFavorite);
}, [ onFavoriteClick, id, isFavorite ]); }, [ onFavoriteClick, id, isFavorite ]);
const logoUrl = useColorModeValue(logo, logoDarkMode || logo);
return ( return (
<LinkBox <LinkBox
_hover={{ _hover={{
...@@ -73,7 +76,7 @@ const MarketplaceAppCard = ({ ...@@ -73,7 +76,7 @@ const MarketplaceAppCard = ({
justifyContent="center" justifyContent="center"
> >
<Image <Image
src={ logo } src={ logoUrl }
alt={ `${ title } app icon` } alt={ `${ title } app icon` }
/> />
</Box> </Box>
......
import { import {
Box, Flex, Heading, Icon, IconButton, Image, Link, List, Modal, ModalBody, Box, Flex, Heading, Icon, IconButton, Image, Link, List, Modal, ModalBody,
ModalCloseButton, ModalContent, ModalFooter, ModalHeader, ModalOverlay, Tag, Text, ModalCloseButton, ModalContent, ModalFooter, ModalHeader, ModalOverlay, Tag, Text, useColorModeValue,
} from '@chakra-ui/react'; } from '@chakra-ui/react';
import React, { useCallback } from 'react'; import React, { useCallback } from 'react';
...@@ -41,6 +41,7 @@ const MarketplaceAppModal = ({ ...@@ -41,6 +41,7 @@ const MarketplaceAppModal = ({
telegram, telegram,
twitter, twitter,
logo, logo,
logoDarkMode,
categories, categories,
} = data; } = data;
...@@ -64,6 +65,7 @@ const MarketplaceAppModal = ({ ...@@ -64,6 +65,7 @@ const MarketplaceAppModal = ({
}, [ onFavoriteClick, data.id, isFavorite ]); }, [ onFavoriteClick, data.id, isFavorite ]);
const isMobile = useIsMobile(); const isMobile = useIsMobile();
const logoUrl = useColorModeValue(logo, logoDarkMode || logo);
return ( return (
<Modal <Modal
...@@ -89,7 +91,7 @@ const MarketplaceAppModal = ({ ...@@ -89,7 +91,7 @@ const MarketplaceAppModal = ({
gridRow={{ base: '1 / 3', sm: '1 / 4' }} gridRow={{ base: '1 / 3', sm: '1 / 4' }}
> >
<Image <Image
src={ logo } src={ logoUrl }
alt={ `${ title } app icon` } alt={ `${ title } app icon` }
/> />
</Flex> </Flex>
......
...@@ -36,6 +36,7 @@ const MarketplaceList = ({ apps, onAppClick, favoriteApps, onFavoriteClick }: Pr ...@@ -36,6 +36,7 @@ const MarketplaceList = ({ apps, onAppClick, favoriteApps, onFavoriteClick }: Pr
url={ app.url } url={ app.url }
title={ app.title } title={ app.title }
logo={ app.logo } logo={ app.logo }
logoDarkMode={ app.logoDarkMode }
shortDescription={ app.shortDescription } shortDescription={ app.shortDescription }
categories={ app.categories } categories={ app.categories }
isFavorite={ favoriteApps.includes(app.id) } isFavorite={ favoriteApps.includes(app.id) }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment