sendMessage method

  1. @Deprecated('Prefer JS-side sendMessage bridges; string eval is unsafe')
void sendMessage({
  1. required String channelName,
  2. required List<String> args,
  3. String? uuid,
})

Dart → JS message helper. Prefer not to inject untrusted strings into evaluate; use registered bridges + sendMessage from JS instead.

Implementation

@Deprecated('Prefer JS-side sendMessage bridges; string eval is unsafe')
void sendMessage({
  required String channelName,
  required List<String> args,
  String? uuid,
}) {
  final safeChannel = jsonEncode(channelName);
  final safeArgs = jsonEncode(args);
  if (uuid != null) {
    final safeUuid = jsonEncode(uuid);
    evaluate(
      "DART_TO_QUICKJS_CHANNEL_sendMessage($safeChannel, $safeArgs, $safeUuid);",
    );
  } else {
    evaluate(
      "DART_TO_QUICKJS_CHANNEL_sendMessage($safeChannel, $safeArgs);",
    );
  }
}