nitro-react/src/views/shared/currency-icon/CurrencyIcon.tsx

22 lines
656 B
TypeScript
Raw Normal View History

2021-07-21 11:31:36 +02:00
import { FC, useMemo } from 'react';
2021-06-23 10:05:23 +02:00
import { GetConfiguration } from '../../../api';
2021-04-16 05:42:00 +02:00
import { CurrencyIconProps } from './CurrencyIcon.types';
2021-06-12 04:53:56 +02:00
export const CurrencyIcon: FC<CurrencyIconProps> = props =>
2021-04-16 05:42:00 +02:00
{
2021-07-21 11:31:36 +02:00
const { type = '', className = '', style = {}, ...rest } = props;
const urlString = useMemo(() =>
{
let url = GetConfiguration<string>('currency.asset.icon.url', '');
2021-04-16 05:42:00 +02:00
2021-07-21 11:31:36 +02:00
url = url.replace('%type%', type.toString());
2021-04-16 05:42:00 +02:00
2021-07-21 11:31:36 +02:00
return `url(${ url })`;
}, [ type ]);
2021-04-16 05:42:00 +02:00
return (
2021-07-21 11:31:36 +02:00
<div className={ 'nitro-currency-icon ' + className } style={ { ...style, backgroundImage: urlString } } { ...rest } />
2021-04-16 05:42:00 +02:00
);
}