package xyz.pixelatedw.recipe.data import android.content.Context import android.graphics.Bitmap import android.graphics.BitmapFactory import androidx.core.net.toUri import androidx.room.Dao import androidx.room.Entity import androidx.room.Insert import androidx.room.OnConflictStrategy import androidx.room.PrimaryKey import java.io.File @Entity data class Recipe( @PrimaryKey val title: String, val preview: String?, val lastModified: Long, val content: String ) { fun previewImage(ctx: Context): Bitmap? { if (this.preview != null) { val file = File(ctx.filesDir, this.preview) if (file.exists()) { ctx.contentResolver.openInputStream(file.toUri()).use { return BitmapFactory.decodeStream(it) } } } return null } } @Dao interface RecipeDao { @Insert(onConflict = OnConflictStrategy.REPLACE) fun insert(recipe: Recipe) }