package com.all.pdfreader.pro.app.model

import android.os.Parcelable
import kotlinx.parcelize.Parcelize

/**
 * 拆分pdf，被选中使用的结构
 */
@Parcelize
data class PdfSelectedPagesItem(
    val filePath: String,
    var fileName: String,             // 文件名
    val pages: List<PdfPageItem> // 所有页的数据
): Parcelable {
    /**
     * 获取已选中的页面列表
     */
    fun selectedPages(): List<PdfPageItem> =
        pages.filter { it.isSelected }.sortedBy { it.pageIndex }

    /**
     * 获取已选中的页码字符串，例如 "1,2,3,4,6"
     */
    fun selectedPageNumbersString(): String =
        selectedPages().joinToString(",") { (it.pageIndex + 1).toString() }

    /**
     * 获取第一个图片，没有返回空字符串
     */
    fun getFirstThumbPath(): String = pages.first().previewFilePath ?: ""
}
