32 lines
744 B
TypeScript
32 lines
744 B
TypeScript
import Decimal from 'decimal.js'
|
|
import useLocalStorageState from 'hooks/useLocalStorageState'
|
|
import { PRIVACY_MODE } from 'utils/constants'
|
|
import { formatCurrencyValue, formatNumericValue } from 'utils/numbers'
|
|
|
|
const FormatNumericValue = ({
|
|
classNames,
|
|
value,
|
|
decimals,
|
|
isUsd,
|
|
roundUp,
|
|
}: {
|
|
classNames?: string
|
|
value: Decimal | number | string
|
|
decimals?: number
|
|
isUsd?: boolean
|
|
roundUp?: boolean
|
|
}) => {
|
|
const [privacyMode] = useLocalStorageState(PRIVACY_MODE)
|
|
return (
|
|
<span className={classNames}>
|
|
{isUsd
|
|
? privacyMode
|
|
? '****'
|
|
: formatCurrencyValue(value, decimals)
|
|
: formatNumericValue(value, decimals, roundUp)}
|
|
</span>
|
|
)
|
|
}
|
|
|
|
export default FormatNumericValue
|