package org.wikipedia.gallery;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;

import com.google.gson.annotations.SerializedName;

import org.apache.commons.lang3.StringUtils;

import java.io.Serializable;

@SuppressWarnings("unused")
public class MediaListItem implements Serializable {
    @Nullable private String title;
    @SerializedName("section_id") private int sectionId;
    @Nullable private String type;
    @Nullable private TextInfo caption;
    private boolean showInGallery;

    public MediaListItem() {
    }

    public MediaListItem(@NonNull String title) {
        this.title = title;
    }

    @NonNull
    public String getType() {
        return StringUtils.defaultString(type);
    }

    @Nullable
    public TextInfo getCaption() {
        return caption;
    }

    public boolean showInGallery() {
        return showInGallery;
    }

    @NonNull
    public String getTitle() {
        return StringUtils.defaultString(title);
    }
}

@@ -225,16 +225,69 @@
 lizable;
+%0Aimport java.util.Collections;%0Aimport java.util.List;
 %0A%0A@Suppr
@@ -563,16 +563,91 @@
 Gallery;
+%0A    @Nullable @SerializedName(%22srcset%22) private List%3CImageSrcSet%3E srcSets;
 %0A%0A    pu
@@ -1053,24 +1053,24 @@
 etTitle() %7B%0A
-
         retu
@@ -1111,11 +1111,459 @@
 );%0A    %7D
+%0A%0A    @NonNull%0A    public List%3CImageSrcSet%3E getSrcSets() %7B%0A        return srcSets != null ? srcSets : Collections.emptyList();%0A    %7D%0A%0A    public class ImageSrcSet implements Serializable %7B%0A        @Nullable private String src;%0A        @Nullable private String scale;%0A%0A        @Nullable%0A        public String getSrc() %7B%0A            return src;%0A        %7D%0A%0A        @Nullable%0A        public String getScale() %7B%0A            return scale;%0A        %7D%0A    %7D
 %0A%7D%0A

Add src set data class for media-list endpoint