33
44import React , { ReactElement } from 'react'
55
6- import { Box } from '@mui/system'
6+ import { Box , SxProps } from '@mui/system'
77import { Link as LinkRouter } from 'react-router-dom'
88import { THEME_EXTRA } from '../../../helpers/theme'
99import { Typography } from '@mui/material'
@@ -30,6 +30,8 @@ interface OwnProps {
3030 font ?: 'primary' | 'mono'
3131 small ?: boolean
3232 bottomMargin ?: boolean
33+ block ?: boolean
34+ sx ?: SxProps
3335 children : ReactElement | ( string | ReactElement ) [ ] | string | string [ ] | number | undefined | null
3436 onClick ?: ( ) => void
3537}
@@ -56,7 +58,9 @@ const MqText: React.FC<MqTextProps> = ({
5658 highlight,
5759 color,
5860 small,
61+ block,
5962 onClick,
63+ sx,
6064} ) => {
6165 const theme = createTheme ( useTheme ( ) )
6266
@@ -87,6 +91,9 @@ const MqText: React.FC<MqTextProps> = ({
8791 bold : {
8892 fontWeight : 700 ,
8993 } ,
94+ block : {
95+ display : 'block' ,
96+ } ,
9097 subdued : {
9198 color : THEME_EXTRA . typography . subdued ,
9299 } ,
@@ -140,6 +147,7 @@ const MqText: React.FC<MqTextProps> = ({
140147 inline ? classesObject . inline : { } ,
141148 small ? classesObject . small : { } ,
142149 link ? classesObject . link : { } ,
150+ block ? classesObject . block : { } ,
143151 paragraph ? classesObject . paragraph : { } ,
144152 subheading ? classesObject . subheading : { } ,
145153 overflowHidden ? classesObject . overflowHidden : { }
@@ -154,7 +162,10 @@ const MqText: React.FC<MqTextProps> = ({
154162 < Typography
155163 onClick = { onClick }
156164 variant = 'h4'
157- sx = { Object . assign ( classesObject . root , classesObject . heading , conditionalClasses ) }
165+ sx = { {
166+ ...Object . assign ( classesObject . root , classesObject . heading , conditionalClasses ) ,
167+ ...sx ,
168+ } }
158169 style = { style }
159170 >
160171 { children }
@@ -170,7 +181,10 @@ const MqText: React.FC<MqTextProps> = ({
170181 >
171182 < Box
172183 component = 'span'
173- sx = { Object . assign ( classesObject . root , classesObject . link , conditionalClasses ) }
184+ sx = { {
185+ ...Object . assign ( classesObject . root , classesObject . link , conditionalClasses ) ,
186+ ...sx ,
187+ } }
174188 >
175189 { children }
176190 </ Box >
@@ -183,7 +197,10 @@ const MqText: React.FC<MqTextProps> = ({
183197 href = { href }
184198 target = { '_blank' }
185199 rel = 'noopener noreferrer'
186- sx = { Object . assign ( classesObject . root , classesObject . link , conditionalClasses ) }
200+ sx = { {
201+ ...Object . assign ( classesObject . root , classesObject . link , conditionalClasses ) ,
202+ ...sx ,
203+ } }
187204 >
188205 { children }
189206 </ Link >
@@ -192,7 +209,7 @@ const MqText: React.FC<MqTextProps> = ({
192209 return (
193210 < Box
194211 onClick = { onClick }
195- sx = { Object . assign ( classesObject . root , conditionalClasses ) }
212+ sx = { { ... Object . assign ( classesObject . root , conditionalClasses ) , ... sx } }
196213 style = { style }
197214 >
198215 { children }
0 commit comments