signAndWrapAndJsonEncode function

String signAndWrapAndJsonEncode(
  1. AtClient atClient,
  2. Map payload
)

Implementation

String signAndWrapAndJsonEncode(AtClient atClient, Map payload) {
  Map envelope = {'payload': payload};

  final AtSigningInput signingInput = AtSigningInput(jsonEncode(payload))
    ..signingMode = AtSigningMode.data;
  final AtSigningResult sr = atClient.atChops!.sign(signingInput);

  final String signature = sr.result.toString();
  envelope['signature'] = signature;
  envelope['hashingAlgo'] = sr.atSigningMetaData.hashingAlgoType!.name;
  envelope['signingAlgo'] = sr.atSigningMetaData.signingAlgoType!.name;
  return jsonEncode(envelope);
}