mirror of
https://github.com/datahub-project/datahub.git
synced 2025-10-10 08:26:39 +00:00
25 lines
862 B
TypeScript
25 lines
862 B
TypeScript
![]() |
import React from 'react';
|
||
|
import { useEntityRegistry } from '../../../../useEntityRegistry';
|
||
|
import { PlatformIcon } from '../../../../search/filters/utils';
|
||
|
import { Entity } from '../../../../../types.generated';
|
||
|
import { IconStyleType } from '../../../Entity';
|
||
|
import { ANTD_GRAY } from '../../constants';
|
||
|
|
||
|
interface Props {
|
||
|
entity: Entity;
|
||
|
size?: number;
|
||
|
}
|
||
|
|
||
|
export default function EntityIcon({ entity, size = 14 }: Props) {
|
||
|
const entityRegistry = useEntityRegistry();
|
||
|
const genericEntityProps = entityRegistry.getGenericEntityProperties(entity.type, entity);
|
||
|
const logoUrl = genericEntityProps?.platform?.properties?.logoUrl;
|
||
|
const icon = logoUrl ? (
|
||
|
<PlatformIcon src={logoUrl} size={size} />
|
||
|
) : (
|
||
|
entityRegistry.getIcon(entity.type, size, IconStyleType.ACCENT, ANTD_GRAY[9])
|
||
|
);
|
||
|
|
||
|
return <>{icon}</>;
|
||
|
}
|