toApplicationArguments method
Convert an array of arguments like "str:arg1,str:arg2" into a properly converted byte array.
Implementation
List<Uint8List> toApplicationArguments() {
final arguments = split(',').map((arg) {
final parts = arg.split(':');
switch (parts[0]) {
case 'str':
return Uint8List.fromList(utf8.encode(parts[1]));
case 'int':
return BigIntEncoder.encodeUint64(BigInt.parse(parts[1]));
case 'addr':
final address = Address.fromAlgorandAddress(parts[1]);
return address.toBytes();
default:
throw AlgorandException(message: 'Does not support conversion');
}
}).toList();
return arguments;
}