toUnit static method
Converts a decimal string to a base unit (BigInt) value.
Implementation
static BigInt toUnit({
required String amount,
required int decimals,
bool enforceMaxDecimals = true,
}) {
BigRational? dec = BigRational.tryParseDecimaal(amount);
if (dec == null) {
throw AmountConverterException(
'Invalid amount format: cannot parse the input string.',
details: {"amount": amount});
}
if (enforceMaxDecimals && dec.scale > decimals) {
throw AmountConverterException(
'Invalid amount format: too many decimal places.');
}
dec = dec * _AmountConverterConstants.fromDecimalNumber(decimals);
return dec.toBigInt();
}