toCborMap method

MapBuilder toCborMap({
  1. bool forJson = false,
  2. bool base64 = false,
})

Implementation

MapBuilder toCborMap({bool forJson = false, bool base64 = false}) {
  final mapBuilder = MapBuilder.builder();
  //0:vkeyWitnesses key
  if (vkeyWitnesses.isNotEmpty) {
    if (forJson) {
      mapBuilder.writeString('vkeyWitnesses');
    } else {
      mapBuilder.writeInt(0);
    }
    final inListBuilder = ListBuilder.builder();
    for (var witness in vkeyWitnesses) {
      inListBuilder.addBuilderOutput(
          witness.toCborList(forJson: forJson, base64: base64).getData());
    }
    mapBuilder.addBuilderOutput(inListBuilder.getData()); //value
  }
  //1:nativeScripts key
  if (nativeScripts.isNotEmpty) {
    if (forJson) {
      mapBuilder.writeString('nativeScripts');
    } else {
      mapBuilder.writeInt(1);
    }
    final outListBuilder = ListBuilder.builder();
    for (var script in nativeScripts) {
      outListBuilder
          .addBuilderOutput(script.toCborList(forJson: forJson).getData());
    }
    mapBuilder.addBuilderOutput(outListBuilder.getData()); //value
  }
  return mapBuilder;
}