import { Button, Card, GridLayout, SearchInput } from '@sd/ui'; import { Heading } from '../Layout'; // extensions should cache their logos in the app data folder interface ExtensionItemData { name: string; uuid: string; platforms: ['windows' | 'macOS' | 'linux']; installed: boolean; description: string; logoUri: string; } const extensions: ExtensionItemData[] = [ { name: 'Apple Photos', uuid: 'com.apple.photos', installed: true, platforms: ['macOS'], description: 'Import photos and videos with metadata from Apple Photos.', logoUri: 'https://apple.com/apple-logo.png' }, { name: 'Twitch VOD Archiver', uuid: 'com.apple.photos', installed: false, platforms: ['macOS'], description: 'Apple Photos is a photo management application for Mac.', logoUri: 'https://apple.com/apple-logo.png' }, { name: 'Shared Clipboard', uuid: 'com.apple.photos', installed: false, platforms: ['macOS'], description: 'Apple Photos is a photo management application for Mac.', logoUri: 'https://apple.com/apple-logo.png' } ]; function ExtensionItem(props: { extension: ExtensionItemData }) { const { installed, name, description } = props.extension; return (

{name}

{description}

); } export const Component = () => { // const { data: volumes } = useBridgeQuery('GetVolumes'); return ( <> } /> {extensions.map((extension) => ( ))} ); };