buyAlias method Null safety

Future<MsgBuyAliasResponse> buyAlias(
  1. String alias,
  2. [ResponseCallback<MsgBuyAliasResponse>? callback]
)

Purchasing a Subdomain

Purchases a new .snr/ domain for the current account if the alias is available. A succesful transaction will return a MsgBuyAliasResponse.

final res = await MotorFlutter.to.buyAlias('hulahoop');
if (res == null) {
   throw Exception('Failed to buy alias');
}

// Print all owned domains
for (final alias in res.aliases) {
    if(!alias.isForSale) {
       print(alias.name); // prints: hulahoop.snr or hulahoop
   }
}

Next Steps

Implementation

Future<MsgBuyAliasResponse> buyAlias(String alias, [ResponseCallback<MsgBuyAliasResponse>? callback]) async {
  final resp = await MotorFlutterPlatform.instance.buyAlias(MsgBuyAlias(
    name: alias,
    creator: address.value,
  ));

  if (resp == null) {
    throw UnmarshalException<MsgBuyAliasResponse>();
  }

  domains.addAll(resp.whoIs.alias);
  domains.refresh();
  callback?.call(resp);
  return resp;
}