Amount
Amount выводит сумму в формате валюты: знак валюты, разряды и два знака после запятой по правилам locale. Отрицательная сумма окрашивается в цвет опасности, положительная и нулевая — цветом текста. Компонент только форматирует: он не считает, не округляет сверх формата валюты и не показывает знак «+».
Статус: experimental · в системе с 2026-09 · интерактивность: none (нет)
Когда использовать
- Баланс, стоимость и списание в сводке, таблице и карточке: «$322.94», «−$12.00».
- Строка итога под списком расходов.
- Сумма в подписи контрола: «Пополнить на $50».
Не использовать:
- Числа без валюты — проценты, счётчики, количество — это обычный текст с табличными цифрами.
- Сумма, которую вводят, — это Input Number.
- Прогресс к цели — это Meter или Progress.
Альтернативы:
input-number— сумма, которую вводит человекmeter— доля от предела, а не сумма
Суммы
Положительная, нулевая и отрицательная суммы в долларах.
$322.94 $0.00 -$12.00
<!--
🟢
Положительная, нулевая и отрицательная суммы в долларах: отрицательная
окрашена в цвет опасности, остальные — цветом текста.
-->
<script>
import Amount from "$lib/ui/Amount.svelte";
</script>
<div style="display: flex; gap: var(--sp-2); font-size: var(--fs-m);">
<Amount value={322.94} />
<Amount value={0} />
<Amount value={-12} />
</div>
Валюта и локаль
Евро и рубли с разрядами по локали.
1.234.567,50 € 98 000,00 ₽
<!--
🟢
Евро и рубли: разряды, знак валюты и его положение задаёт локаль.
-->
<script>
import Amount from "$lib/ui/Amount.svelte";
</script>
<div style="display: flex; gap: var(--sp-2); font-size: var(--fs-m);">
<Amount value={1234567.5} currency="EUR" locale="de-DE" />
<Amount value={98000} currency="RUB" locale="ru-RU" />
</div>