class MyCourseModel { MyCourseModel({ this.status, this.error, required this.data, }); final int? status; final bool? error; final List> data; factory MyCourseModel.fromJson(Map json) => MyCourseModel( status: json["status"], error: json["error"], data: List>.from(json["data"].map((x) => List.from( x.map((x) => DataMyCourseModel.fromJson(x))))), ); Map toJson() => { "status": status, "error": error, "data": List.from( data.map((x) => List.from(x.map((x) => x.toJson())))), }; } class DataMyCourseModel { DataMyCourseModel({ this.courseId, this.instructorId, this.instructor, this.title, this.thumbnail, required this.rating, this.fotoProfile, this.totalProgress, }); final String? courseId; final String? instructorId; final String? instructor; final String? title; final String? thumbnail; final List rating; final dynamic fotoProfile; final int? totalProgress; factory DataMyCourseModel.fromJson(Map json) => DataMyCourseModel( courseId: json["course_id"], instructorId: json["instructor_id"], instructor: json["instructor"], title: json["title"], thumbnail: json["thumbnail"], rating: json['rating'] == [] ? [] : List.from(json["rating"].map((x) => Rating.fromJson(x))), fotoProfile: json["foto_profile"], totalProgress: json["total_progress"], ); Map toJson() => { "course_id": courseId, "instructor_id": instructorId, "instructor": instructor, "title": title, "thumbnail": thumbnail, "rating": List.from(rating.map((x) => x.toJson())), "foto_profile": fotoProfile, "total_progress": totalProgress, }; } class Rating { Rating({ this.ratableId, this.rating, this.review, }); final String? ratableId; final String? rating; final String? review; factory Rating.fromJson(Map json) => Rating( ratableId: json["ratable_id"], rating: json["rating"], review: json["review"], ); Map toJson() => { "ratable_id": ratableId, "rating": rating, "review": review, }; }