MiniProgramInteractionRequest.fromJson constructor

MiniProgramInteractionRequest.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory MiniProgramInteractionRequest.fromJson(Map<String, dynamic> json) {
  if (json.keys.any(
        (key) => !const {
          'requestId',
          'sessionId',
          'revision',
          'action',
          'targetId',
          'text',
        }.contains(key),
      ) ||
      json['requestId'] is! String ||
      json['sessionId'] is! String ||
      json['revision'] is! int ||
      (json['targetId'] != null && json['targetId'] is! String) ||
      (json['text'] != null && json['text'] is! String)) {
    throw const FormatException('Invalid interaction request.');
  }
  return MiniProgramInteractionRequest(
    requestId: json['requestId'] as String,
    sessionId: json['sessionId'] as String,
    revision: json['revision'] as int,
    action: MiniProgramInteractionAction.parse(json['action']),
    targetId: json['targetId'] as String?,
    text: json['text'] as String?,
  );
}