package com.prodhack.moscow2025.domain.usecase.resumes

import androidx.paging.PagingData
import com.prodhack.moscow2025.domain.interfaces.resumes.ResumeRepository
import com.prodhack.moscow2025.domain.models.ExperienceType
import com.prodhack.moscow2025.domain.models.ResumeModel
import com.prodhack.moscow2025.domain.utils.RemotePagingWrapper
import kotlinx.coroutines.flow.flow
import org.koin.core.annotation.Single

@Single
class LoadResumeListUseCase(private val resumeRepository: ResumeRepository) {
	operator fun invoke(): RemotePagingWrapper<ResumeModel> = resumeRepository.loadResumeList()

	// Mocked data
//	operator fun invoke(): RemotePagingWrapper<ResumeModel> = flow {
//		emit(
//			PagingData.from(
//				listOf(
//					ResumeModel(
//						id = "iajxioasdkmcaolsd,c",
//						position = "Android разработчик",
//						about = "Ну оооочень крутой андроид разраб, с огромным количеством опыта. " +
//								"И нет это я не про себя, это просто какие-то данные," +
//								" чтобы проверить, что это чудовище работает",
//						skills = listOf(
//							"Android SDK",
//							"Kotlin",
//							"Room",
//							"Ktor"
//						),
//						experienceType = ExperienceType.Between3And6,
//						city = "Moscow",
//						experience = listOf(),
//						education = listOf(),
//						projects = listOf(),
//						prediction = Pair(200000, 230000),
//						recommendedSkills = listOf("KMP")
//					)
//				)
//			)
//		)
//	}
}
