Amount
Component for displaying monetary valuesUsage
1import { Amount } from '@raystack/apsara'
Amount Props
Prop
Type
Examples
Basic
1<Flex gap={4}>2 <Amount value={1299} />3 <Amount value={1299} currency="EUR" locale="fr-FR" />4 <Amount value={1299} hideDecimals />5 <Amount value={1299} currencyDisplay="code" />6 <Amount value={12.99} valueInMinorUnits={false} />7 <Amount value={129999999} groupDigits />8</Flex>
Currency Variants
1<Flex gap={4}>2 <Amount value={1299} currency="JPY" />3 <Amount value={1299} currency="BHD" />4 <Amount value={1299} currency="INR" />5 <Amount value={1234} minimumFractionDigits={3} maximumFractionDigits={3} />6</Flex>
valueInMinorUnits
1<Flex gap={4}>2 <Amount value={1299} valueInMinorUnits /> {/* $12.99 */}3 <Amount value={12.99} valueInMinorUnits={false} /> {/* $12.99 */}4</Flex>
locale
1<Flex gap={4}>2 <Amount value={1299} locale="en-US" /> {/* $12.99 */}3 <Amount value={1299} currency="EUR" locale="de-DE" /> {/* 12,99 € */}4 <Amount value={1299} currency="JPY" locale="ja-JP" /> {/* ¥1,299 */}5</Flex>
hideDecimals
1<Flex gap={4}>2 <Amount value={1299} hideDecimals /> {/* $12 */}3 <Amount value={1234} hideDecimals /> {/* $12 */}4</Flex>
currencyDisplay
1<Flex gap={4}>2 <Amount value={1299} currencyDisplay="symbol" /> {/* $12.99 */}3 <Amount value={1299} currencyDisplay="code" /> {/* USD 12.99 */}4 <Amount value={1299} currencyDisplay="name" /> {/* 12.99 US dollars */}5</Flex>
groupDigits
1<Flex gap={4}>2 <Amount value={123456789} groupDigits /> {/* $1,234,567.89 */}3 <Amount value={123456789} groupDigits={false} /> {/* $1234567.89 */}4</Flex>
Large Numbers
For numbers larger than JavaScript's safe integer limit (2^53 - 1), pass the value as a string to maintain precision.
1<Flex gap={4}>2 {/* For large numbers, use string to maintain precision */}3 <Amount value="999999999999999" /> {/* $9,999,999,999,999.99 */}4 <Amount5 value="10000100091636935"6 valueInMinorUnits={false}7 hideDecimals8 />{" "}9 {/* $10,000,100,091,636,935 */}10 {/* Numbers exceeding safe integer limit will show warning in console */}11 <Amount value={999999999999999} /> {/* Will show warning */}12</Flex>
With Text
1<Flex gap={4}>2 <Text>3 Total: <Amount value={1299} />4 </Text>5 <Text>6 Discount: <Amount value={-299} />7 </Text>8 <Text>9 Tax: <Amount value={199} />10 </Text>11</Flex>