1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-26 12:29:06 +01:00
metamask-extension/ui/components/component-library/icon/icon.tsx
Dhruv 744dfc9e38
Part of #18714: Replacing deprecated constants in Icon folder (#19250)
* Replacing deprecated constants in Icon folder

* Requested changes

---------

Co-authored-by: Garrett Bear <gwhisten@gmail.com>
2023-05-25 13:53:31 -07:00

36 lines
878 B
TypeScript

import React from 'react';
import classnames from 'classnames';
import Box from '../../ui/box/box';
import { IconColor, Display } from '../../../helpers/constants/design-system';
import { IconProps, IconSize } from './icon.types';
export const Icon = ({
name,
size = IconSize.Md,
color = IconColor.inherit,
className = '',
style,
...props
}: IconProps) => (
<Box
className={classnames(className, 'mm-icon', `mm-icon--size-${size}`)}
as="span"
display={Display.InlineBlock}
color={color}
style={{
/**
* To reduce the possibility of injection attacks
* the icon component uses mask-image instead of rendering
* the svg directly.
*/
maskImage: `url('./images/icons/${String(name)}.svg')`,
WebkitMaskImage: `url('./images/icons/${String(name)}.svg')`,
...style,
}}
{...props}
/>
);