/* * Copyright (c) 2015 Nordic Semiconductor ASA * * SPDX-License-Identifier: LicenseRef-Nordic-4-Clause */ import React from 'react'; import { useSelector } from 'react-redux'; import Card from '../Card/Card'; import { deviceInfo } from '../Device/deviceInfo/deviceInfo'; import { selectedDevice, selectedDeviceInfo } from '../Device/deviceSlice'; import AboutButton from './AboutButton'; import Section from './Section'; const memorySize = (memoryInBytes: number) => { if (memoryInBytes == null) { return 'Unknown'; } return `${memoryInBytes / 1024}KiB`; }; export interface DeviceCardProps { className?: string; } export default ({ className }: DeviceCardProps) => { const device = useSelector(selectedDevice); const info = useSelector(selectedDeviceInfo); if (device == null) { return (
); } const pca = device.devkit?.boardVersion; const { name, cores, website } = deviceInfo(device); return (
{name || 'Unknown'}
{device.serialNumber}
{pca || 'Unknown'}
{cores || 'Unknown'}
{info?.hwInfo && ( <>
{memorySize(info.hwInfo.ramSize)}
{memorySize(info.hwInfo.romSize)}
)}
); };