encodeUnsigned method

Uint8List encodeUnsigned(
  1. Uint8List callData
)

Create an unsigned extrinsic (for inherents or unsigned transactions)

Implementation

Uint8List encodeUnsigned(Uint8List callData) {
  final output = ByteOutput();

  // Version byte (0x04 for unsigned V4)
  final versionByte = _EXTRINSIC_VERSION & _VERSION_MASK;
  output.pushByte(versionByte);

  // Just the call data for unsigned
  output.write(callData);

  // Add compact length prefix
  final extrinsicBytes = output.toBytes();
  final finalOutput = ByteOutput();
  CompactCodec.codec.encodeTo(extrinsicBytes.length, finalOutput);
  finalOutput.write(extrinsicBytes);

  return finalOutput.toBytes();
}