UNPKG

@gechiui/block-editor

Version:
61 lines (55 loc) 1.27 kB
/** * External dependencies */ import { View, Text } from 'react-native'; /** * GeChiUI dependencies */ import { Icon } from '@gechiui/components'; import { withPreferredColorScheme } from '@gechiui/compose'; import { normalizeIconObject } from '@gechiui/blocks'; /** * Internal dependencies */ import styles from './style.scss'; function Warning( { title, message, icon, iconClass, preferredColorScheme, getStylesFromColorScheme, ...viewProps } ) { icon = icon && normalizeIconObject( icon ); const internalIconClass = 'warning-icon' + '-' + preferredColorScheme; const titleStyle = getStylesFromColorScheme( styles.title, styles.titleDark ); const messageStyle = getStylesFromColorScheme( styles.message, styles.messageDark ); return ( <View style={ getStylesFromColorScheme( styles.container, styles.containerDark ) } { ...viewProps } > { icon && ( <View style={ styles.icon }> <Icon className={ iconClass || internalIconClass } icon={ icon && icon.src ? icon.src : icon } /> </View> ) } { title && <Text style={ titleStyle }>{ title }</Text> } { message && <Text style={ messageStyle }>{ message }</Text> } </View> ); } export default withPreferredColorScheme( Warning );