encodeWithBase method

String encodeWithBase(
  1. Multibase? base
)

Encodes the CID using the requested base.

CIDv0 is always returned as base58btc regardless of the requested base. CIDv1 defaults to base32 when base is null.

Implementation

String encodeWithBase(mb.Multibase? base) {
  if (version == 0) {
    final mhBytes = multihash.toBytes();
    final encoded = MultibaseUtils.encode(mb.Multibase.base58btc, mhBytes);
    return encoded.substring(1);
  }

  final bytes = toBytes();
  final baseType = base ?? multibaseType ?? mb.Multibase.base32;
  return MultibaseUtils.encode(baseType, bytes);
}