import React from 'react';
import l from './lang';

function number(n: number | string, maximumFractionDigits: number) {
  const num = new Intl.NumberFormat(l, {
    maximumFractionDigits: maximumFractionDigits
  }).format(n as number);

  if (num === 'NaN') {
    return n;
  }

  return num;
}

type NumberProps = {
  value: number | string;
  digits: number;
  [x: string]: any;
};

export const Number: React.FC<NumberProps> = ({ value, digits, ...props }) => (
  <span {...props}>{number(value, digits)}</span>
);
