Path: blob/1.0-develop/resources/scripts/components/elements/dialog/DialogIcon.tsx
10260 views
import React, { useContext, useEffect } from 'react';1import { CheckIcon, ExclamationIcon, InformationCircleIcon, ShieldExclamationIcon } from '@heroicons/react/outline';2import classNames from 'classnames';3import { DialogContext, DialogIconProps, styles } from './';45const icons = {6danger: ShieldExclamationIcon,7warning: ExclamationIcon,8success: CheckIcon,9info: InformationCircleIcon,10};1112export default ({ type, position, className }: DialogIconProps) => {13const { setIcon, setIconPosition } = useContext(DialogContext);1415useEffect(() => {16const Icon = icons[type];1718setIcon(19<div className={classNames(styles.dialog_icon, styles[type], className)}>20<Icon className={'w-6 h-6'} />21</div>22);23}, [type, className]);2425useEffect(() => {26setIconPosition(position);27}, [position]);2829return null;30};313233