saleor-dashboard/src/components/MoneyRange/utils.ts
2023-03-20 13:06:33 +01:00

43 lines
913 B
TypeScript

import { IMoney } from "@dashboard/utils/intl";
import { IntlShape } from "react-intl";
import { Locale } from "../Locale";
import { formatMoney, formatMoneyRange } from "../Money";
export const getMoneyRange = (
locale: Locale,
intl: IntlShape,
from?: IMoney,
to?: IMoney,
): string => {
if (from && to) {
return from.amount === to.amount
? formatMoney(from, locale)
: formatMoneyRange(from, to, locale);
}
if (from && !to) {
return intl.formatMessage(
{
id: "lW5uJO",
defaultMessage: "from {money}",
description: "money",
},
{
money: formatMoney(from, locale),
},
);
}
if (!from && to) {
return intl.formatMessage(
{
id: "hptDxW",
defaultMessage: "to {money}",
description: "money",
},
{
money: formatMoney(to, locale),
},
);
}
return "-";
};