normalizeSuiAddress function
Perform the following operations:
- Make the address lower case
- Prepend
0x
if the string does not start with0x
. - Add more zeros if the length of the address(excluding
0x
) is less thanSUI_ADDRESS_LENGTH
WARNING: if the address value itself starts with 0x
, e.g., 0x0x
, the default behavior
is to treat the first 0x
not as part of the address. The default behavior can be overridden by
setting forceAdd0x
to true
Implementation
String normalizeSuiAddress(
String value,
[bool forceAdd0x = false]
) {
String address = value.toLowerCase();
if (!forceAdd0x && address.startsWith('0x')) {
address = address.substring(2);
}
return "0x${address.padLeft(SUI_ADDRESS_LENGTH * 2, '0')}";
}