Demos
Default numbers
<P> <NumberFormat.Number value="12345" srLabel="Total:" /> <NumberFormat.Number>-12345678.9</NumberFormat.Number> <NumberFormat.Number prefix={<b>prefix</b>} suffix="suffix"> -12345678.9 </NumberFormat.Number> <NumberFormat.Number decimals={1}>-1234.54321</NumberFormat.Number> <NumberFormat.Number decimals={2} copySelection={false}> -1234 </NumberFormat.Number> <NumberFormat.Number decimals={2}>invalid</NumberFormat.Number> </P>
Currency
<P> <NumberFormat.Currency>12345</NumberFormat.Currency> <NumberFormat.Currency currencyPosition="before" value={-12345678.9} /> <NumberFormat.Currency value={-12345678.95} decimals={0} /> <NumberFormat.Currency value={-12345678.9} currencyDisplay="code" /> <NumberFormat.Currency value={-12345678.9} currencyDisplay={false} /> <NumberFormat.Currency decimals={2}>invalid</NumberFormat.Currency> </P>
Hero-style values
For prominent values, use Stat with Stat.Currency and Stat.Percent.
<Stat.Currency value={12345} currency="NOK" suffix="/mnd" signDisplay="always" mainSize="x-large" auxiliarySize="x-small" />
Compact (shorten) numbers
Shorten numbers should only be used for numbers above 100 000. A small k for thousand is not a Norwegian standard, and should not be used in formal contexts.
<P> <NumberFormat.Number compact decimals={1}> 1234 </NumberFormat.Number> <NumberFormat.Number compact decimals={1} value={123456} /> <NumberFormat.Number compact="short" decimals={2} value={-1723967.38} /> <NumberFormat.Number compact="long" decimals={3} value={-1234567.9876} /> <NumberFormat.Currency compact="long" value={12345} decimals={1} currencyDisplay="name" /> <NumberFormat.Number compact value={123455678912} decimals={3} /> </P>
Percentage
<P> <NumberFormat.Percent value="12.34" /> <NumberFormat.Percent>-12.34</NumberFormat.Percent> <NumberFormat.Percent decimals={1}>-12.34</NumberFormat.Percent> </P>
Phone
By using selectAll={false} you disable the auto-select all feature.
<P> <NumberFormat.PhoneNumber value="99999999" /> <NumberFormat.PhoneNumber value="+4799999999" /> <NumberFormat.PhoneNumber value="004799999999" /> <NumberFormat.PhoneNumber value="+4780022222" link="sms" /> <NumberFormat.PhoneNumber value="+47116000" selectAll={false} /> <NumberFormat.PhoneNumber value="+4702000" /> </P>
Bank Account number (Kontonummer)
<P> <NumberFormat.BankAccountNumber value="20001234567" /> </P>
National Identification number (Fødselsnummer)
<P> <NumberFormat.NationalIdentityNumber value="18089212345" /> </P>
Organization number (Organisasjonsnummer)
<P> <NumberFormat.OrganizationNumber value="123456789" suffix="MVA" /> </P>
Numbers and currencies in different locales
Numbers
Currencies
<H3>Numbers</H3> <P> <NumberFormat.Number locale="nb-NO" value="-12345678.9" /> <NumberFormat.Number locale="en-GB" value="-12345678.9" /> <NumberFormat.Number locale="de-DE" value="-12345678.9" /> <NumberFormat.Number locale="de-CH" value="-12345678.9" /> <NumberFormat.Number locale="fr-CH" value="-12345678.9" /> </P> <H3>Currencies</H3> <P> <NumberFormat.Currency locale="nb-NO" value="-12345.6" /> <NumberFormat.Currency locale="en-GB" value="-12345.6" /> <NumberFormat.Currency locale="de-DE" value="-12345.6" /> <NumberFormat.Currency locale="de-CH" value="-12345.6" /> <NumberFormat.Currency locale="fr-CH" value="-12345.6" /> </P>
NumberFormat and spacing
The NumberFormat uses display: inline-block; in order to make the spacing system to work.
texttexttext
<span>text</span> <NumberFormat.Currency value="1234" left right /> <span>text</span> <NumberFormat.Currency value="5678" left right /> <span>text</span>
Sign display
Control when to display the sign for numbers using the signDisplay property. Options include always, exceptZero, negative, and never.
signDisplay="auto"
signDisplay="always"
signDisplay="never"
signDisplay="negative"
signDisplay="exceptZero"
<H3>signDisplay="auto"</H3> <P> <NumberFormat.Number signDisplay="auto" value={1234} /> <NumberFormat.Number signDisplay="auto" value={-1234} /> <NumberFormat.Number signDisplay="auto" value={0} /> </P> <H3>signDisplay="always"</H3> <P> <NumberFormat.Number signDisplay="always" value={1234} /> <NumberFormat.Number signDisplay="always" value={-1234} /> <NumberFormat.Number signDisplay="always" value={0} /> </P> <H3>signDisplay="never"</H3> <P> <NumberFormat.Number signDisplay="never" value={1234} /> <NumberFormat.Number signDisplay="never" value={-1234} /> <NumberFormat.Number signDisplay="never" value={0} /> </P> <H3>signDisplay="negative"</H3> <P> <NumberFormat.Number signDisplay="negative" value={1234} /> <NumberFormat.Number signDisplay="negative" value={-1234} /> <NumberFormat.Number signDisplay="negative" value={0} /> </P> <H3>signDisplay="exceptZero"</H3> <P> <NumberFormat.Number signDisplay="exceptZero" value={1234} /> <NumberFormat.Number signDisplay="exceptZero" value={-1234} /> <NumberFormat.Number signDisplay="exceptZero" value={0} /> </P>
Using the Provider with NumberFormat
In this example every NumberFormat will receive the Provider defined properties, including cleanCopyValue.
<Provider value={{ NumberFormat: { currency: true, rounding: 'omit', cleanCopyValue: true, }, }} > <P> <NumberFormat.Currency>12345</NumberFormat.Currency> <NumberFormat.Currency value={-12345.123} decimals={0} /> <NumberFormat.Currency value={-12345678.955} currencyPosition="before" /> </P> </Provider>
Monospace
By using the monospace property you can set the font to DNB Mono Regular
<NumberFormat.Currency value="123456" locale="en-GB" currency="NOK" monospace />