signMessageRequest method

  1. @override
Future<String> signMessageRequest(
  1. String message, {
  2. required IReownAppKitModal modalService,
})
override

Implementation

@override
Future<String> signMessageRequest(
  String message, {
  required IReownAppKitModal modalService,
}) async {
  if (!enabled) throw Exception('siweConfig not enabled');
  //
  String chainId = AuthSignature.getChainIdFromMessage(message);
  if (!NamespaceUtils.isValidChainId(chainId)) {
    chainId = 'eip155:$chainId';
  }
  final address = AuthSignature.getAddressFromMessage(message);
  final bytes = utf8.encode(message);
  final encoded = hex.encode(bytes);
  //
  _appKit.core.logger.d('[$runtimeType] signMessageRequest() called');

  return await modalService.request(
    topic: modalService.session!.topic,
    chainId: chainId,
    request: SessionRequestParams(
      method: 'personal_sign',
      params: ['0x$encoded', address],
    ),
  );
}