group static method

List<RawTransaction> group(
  1. List<RawTransaction> transactions, [
  2. Address? address
])

Group a list of transactions and assign them with a group id.

An optional sender address can be specified which transaction return. Throws an AlgorandException when unable to calculate a group id.

Implementation

static List<RawTransaction> group(List<RawTransaction> transactions,
    [Address? address]) {
  // Calculate the group id and assign to each transaction
  final groupId = computeGroupId(transactions);
  final groupedTransactions = <RawTransaction>[];
  for (var transaction in transactions) {
    if (address == null || address == transaction.sender) {
      transaction.assignGroupId(groupId);
      groupedTransactions.add(transaction);
    }
  }

  return groupedTransactions;
}