Commit 83f125fd by Aleksandr

clean code

parent 5137c6cf
package com.isidroid.c23
import kotlin.jvm.Throws
class SpotHasNoPrintProfilesException(m: String? = null): Throwable(m)
class JobNotFoundException(m: String? = null): Throwable(m)
\ No newline at end of file
......@@ -7,15 +7,15 @@ import androidx.room.Room
import androidx.room.RoomDatabase
import androidx.room.TypeConverters
import com.isidroid.job.data.source.local.JobDao
import com.isidroid.job_sender.data.source.local.SendJobDao
import com.isidroid.job.model.PrintJob
import com.isidroid.job_sender.data.source.local.SendJobDao
import com.isidroid.job_sender.domain.model.PrintJobSender
import com.isidroid.spot.data.source.local.dao.PrintProfileDao
import com.isidroid.spot.model.PrintProfile
import com.isidroid.session.data.source.local.SessionDao
import com.isidroid.session.model.Session
import com.isidroid.spot.model.Spot
import com.isidroid.spot.data.source.local.dao.PrintProfileDao
import com.isidroid.spot.data.source.local.dao.SpotDao
import com.isidroid.spot.model.PrintProfile
import com.isidroid.spot.model.Spot
@Database(
version = 3,
......
......@@ -3,7 +3,6 @@ package com.isidroid.c23.data.source.network
import okhttp3.CacheControl
import okhttp3.Interceptor
import okhttp3.Response
import timber.log.Timber
class CacheControlInterceptor : Interceptor {
override fun intercept(chain: Interceptor.Chain): Response {
......
......@@ -3,26 +3,15 @@ package com.isidroid.c23.di
import android.content.Context
import android.content.SharedPreferences
import androidx.preference.PreferenceManager
import com.google.gson.Gson
import com.google.gson.GsonBuilder
import com.isidroid.c23.data.source.network.AuthInterceptor
import com.isidroid.c23.data.source.network.CacheControlInterceptor
import com.isidroid.c23.ext.isDebug
import com.isidroid.c23.ext.isMock
import com.isidroid.core.DiDebuggableBuild
import com.isidroid.core.DiMock
import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.android.qualifiers.ApplicationContext
import dagger.hilt.components.SingletonComponent
import com.isidroid.c23.ext.isMock
import com.isidroid.c23.utils.DateDeserializer
import com.isidroid.core.DiDebuggableBuild
import com.isidroid.network.ApiCacheControlInterceptor
import com.isidroid.network.ApiServerUrl
import com.isidroid.network.ApiTokenInterceptor
import com.isidroid.session.repository.SessionRepository
import okhttp3.Interceptor
import java.util.Date
import javax.inject.Singleton
@InstallIn(SingletonComponent::class)
......
......@@ -2,17 +2,14 @@ package com.isidroid.c23.domain.use_case
import android.content.Context
import android.net.Uri
import androidx.core.app.ActivityCompat
import androidx.documentfile.provider.DocumentFile
import com.isidroid.c23.ext.hasNotificationPermission
import com.isidroid.core.FlowResult
import com.isidroid.rendering.constant.RenderConstant
import com.isidroid.spot.model.RichSpot
import com.isidroid.spot.repository.ActiveSpotRepository
import com.isidroid.utils.copyToPublicFolder
import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.flow.flow
import timber.log.Timber
import java.io.File
import javax.inject.Inject
import javax.inject.Singleton
......
......@@ -2,11 +2,10 @@ package com.isidroid.c23.domain.use_case
import android.content.Context
import com.isidroid.c23.data.source.local.AppDataBase
import com.isidroid.job_sender.SendJobWorker
import com.isidroid.c23.ext.isDebug
import com.isidroid.c23.ui.screen.home.HomeContract
import com.isidroid.core.DiMock
import com.isidroid.core.FlowResult
import com.isidroid.job_sender.SendJobWorker
import com.isidroid.session.repository.SessionRepository
import com.isidroid.spot.repository.ActiveSpotRepository
import dagger.hilt.android.qualifiers.ApplicationContext
......
......@@ -6,10 +6,10 @@ import android.net.Uri
import androidx.compose.ui.unit.IntSize
import com.isidroid.c23.R
import com.isidroid.c23.SpotHasNoPrintProfilesException
import com.isidroid.job_sender.SendJobWorker
import com.isidroid.c23.ext.transformToBitmapFiles
import com.isidroid.core.FlowResult
import com.isidroid.job.repository.JobRepository
import com.isidroid.job_sender.SendJobWorker
import com.isidroid.rendering.constant.PrintOrientation
import com.isidroid.rendering.constant.PrintSize
import com.isidroid.rendering.model.RenderResult
......
......@@ -10,11 +10,7 @@ import androidx.navigation.NavHostController
import androidx.navigation.NavType
import androidx.navigation.compose.NavHost
import androidx.navigation.navArgument
import com.isidroid.c23.ui.navigation.Content
import com.isidroid.c23.ui.navigation.Home
import com.isidroid.c23.ui.navigation.Map
import com.isidroid.c23.ui.navigation.PrintJobs
import com.isidroid.c23.ui.navigation.RenderPreview
val String?.isEdgeToEdge
get() = !arrayOf(
......
......@@ -2,8 +2,6 @@ package com.isidroid.c23.ui._component
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.RowScope
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.rounded.KeyboardArrowLeft
import androidx.compose.material3.CenterAlignedTopAppBar
......@@ -16,7 +14,6 @@ import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
@OptIn(ExperimentalMaterial3Api::class)
......
......@@ -9,8 +9,6 @@ import com.isidroid.c23.ui.navigation.routeRenderPreview
import com.isidroid.c23.ui.screen.content.ContentContract
import com.isidroid.c23.ui.screen.content.ContentScreen
import com.isidroid.c23.ui.screen.content.ContentViewModel
import com.isidroid.c23.ui.screen.home.HomeScreen
import com.isidroid.c23.ui.screen.home.HomeViewModel
import com.isidroid.core.ext.navigateSingleTopTo
@Composable
......
......@@ -2,34 +2,21 @@ package com.isidroid.c23.ui.screen.details
import androidx.activity.compose.BackHandler
import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.consumeWindowInsets
import androidx.compose.foundation.layout.displayCutout
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.ime
import androidx.compose.foundation.layout.navigationBars
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.statusBars
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.Button
import androidx.compose.material.Icon
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.rounded.Close
import androidx.compose.material3.BottomSheetDefaults
import androidx.compose.material3.Card
import androidx.compose.material3.CardDefaults
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.ModalBottomSheet
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.material3.TopAppBar
import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.material3.rememberModalBottomSheetState
import androidx.compose.runtime.Composable
......@@ -56,12 +43,10 @@ import com.isidroid.c23.ui._component.TopAppBarComponent
import com.isidroid.c23.ui.screen.details.component.PrintCodeComponent
import com.isidroid.c23.ui.screen.map.MapContract
import com.isidroid.c23.ui.screen.map._components.TPMapComponent
import com.isidroid.c23.ui.theme.AppTheme
import com.isidroid.core.vm.SIDE_EFFECTS_KEY
import com.isidroid.ui.maps.model.MapMarker
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.StateFlow
import timber.log.Timber
@OptIn(ExperimentalMaterial3Api::class)
@Composable
......
package com.isidroid.c23.ui.screen.home
import androidx.activity.compose.rememberLauncherForActivityResult
import androidx.activity.result.contract.ActivityResultContracts
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.Button
import androidx.compose.material3.Card
import androidx.compose.material3.CardDefaults
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.State
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.layout.onGloballyPositioned
import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.dp
import androidx.constraintlayout.compose.ConstraintLayout
import androidx.constraintlayout.compose.Dimension
import coil.compose.rememberAsyncImagePainter
import com.airbnb.lottie.compose.LottieAnimation
import com.airbnb.lottie.compose.LottieCompositionSpec
import com.airbnb.lottie.compose.LottieConstants
import com.airbnb.lottie.compose.animateLottieCompositionAsState
import com.airbnb.lottie.compose.rememberLottieComposition
import com.isidroid.c23.R
import com.isidroid.core.vm.SIDE_EFFECTS_KEY
import com.isidroid.render_preview.RenderPreviewComponent
import kotlinx.coroutines.flow.Flow
import timber.log.Timber
@Composable
fun HomeScreen(
......
......@@ -3,8 +3,8 @@ package com.isidroid.c23.ui.screen.map._components
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import com.isidroid.c23.ui.screen.map.MapContract
import com.isidroid.ui.maps.model.MapMarker
import com.isidroid.ui.maps.MapsComponent
import com.isidroid.ui.maps.model.MapMarker
import kotlinx.coroutines.flow.StateFlow
@Composable
......
......@@ -4,7 +4,6 @@ import com.isidroid.c23.domain.dto.PrintJobListItem
import com.isidroid.core.vm.ViewEvent
import com.isidroid.core.vm.ViewSideEffect
import com.isidroid.core.vm.ViewState
import com.isidroid.job_sender.domain.dto.JobSenderResult
class PrintJobsContract {
sealed interface Event : ViewEvent {
......
package com.isidroid.c23.ui.screen.render_preview
import android.net.Uri
import androidx.compose.runtime.Stable
import androidx.compose.ui.unit.IntSize
import com.isidroid.core.vm.ViewEvent
......
......@@ -33,7 +33,6 @@ import androidx.constraintlayout.compose.ConstraintLayout
import androidx.constraintlayout.compose.Dimension
import com.isidroid.c23.R
import com.isidroid.c23.ui._component.TopAppBarComponent
import com.isidroid.rendering.model.RenderResult
import com.isidroid.c23.ui.screen.render_preview._component.PagerPreviewComponent
import com.isidroid.c23.ui.screen.render_preview._component.PaperInfoComponent
import com.isidroid.c23.ui.screen.render_preview._component.PreviewFooterComponent
......@@ -44,6 +43,7 @@ import com.isidroid.c23.ui.screen.render_preview._component.PrintProfileListSele
import com.isidroid.c23.ui.screen.render_preview._component.PrintSizeModalComponent
import com.isidroid.c23.ui.screen.render_preview._component.SpotHasNotPrintProfilesComponent
import com.isidroid.core.vm.SIDE_EFFECTS_KEY
import com.isidroid.rendering.model.RenderResult
import com.isidroid.spot.model.PrintProfile
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.StateFlow
......
......@@ -7,22 +7,19 @@ import androidx.lifecycle.SavedStateHandle
import androidx.lifecycle.viewModelScope
import com.isidroid.c23.constant.Argument
import com.isidroid.c23.domain.use_case.RenderUseCase
import com.isidroid.rendering.model.RenderResult
import com.isidroid.c23.ext.isDebug
import com.isidroid.c23.ext.renderPreviewDefaultSettings
import com.isidroid.core.FlowResult
import com.isidroid.core.vm.BaseViewModel
import com.isidroid.rendering.constant.PrintOrientation
import com.isidroid.rendering.constant.PrintSize
import com.isidroid.rendering.constant.orientationName
import com.isidroid.rendering.constant.printSizeName
import com.isidroid.rendering.model.RenderResult
import com.isidroid.spot.model.RichSpot
import com.isidroid.utils.catchTimber
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asStateFlow
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.flow.filterNotNull
import kotlinx.coroutines.flow.flowOn
import kotlinx.coroutines.launch
......
......@@ -29,10 +29,10 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import com.isidroid.rendering.model.RenderResult
import com.isidroid.c23.ui.screen.render_preview.RenderContract
import com.isidroid.render_preview.RenderPlaceholderComponent
import com.isidroid.render_preview.RenderPreviewComponent
import com.isidroid.rendering.model.RenderResult
import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.flow.distinctUntilChanged
......
......@@ -6,13 +6,11 @@ import androidx.compose.foundation.Image
import androidx.compose.foundation.border
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.sizeIn
......@@ -24,24 +22,18 @@ import androidx.compose.material.Icon
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.rounded.Check
import androidx.compose.material.icons.rounded.Close
import androidx.compose.material3.Button
import androidx.compose.material3.TopAppBar
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.ModalBottomSheet
import androidx.compose.material3.ModalBottomSheetDefaults
import androidx.compose.material3.OutlinedButton
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar
import androidx.compose.material3.rememberModalBottomSheetState
import androidx.compose.runtime.Composable
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.ColorFilter
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight
......@@ -54,7 +46,6 @@ import com.isidroid.rendering.constant.PrintOrientation
import com.isidroid.rendering.constant.PrintSize
import com.isidroid.spot.model.PrintProfile
import com.isidroid.utils.asCost
import kotlinx.coroutines.launch
@Composable
internal fun PrintSizeModalComponent(
......
package com.isidroid.c23.ui.theme
import android.app.Activity
import android.os.Build
import android.view.WindowManager
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.darkColorScheme
import androidx.compose.material3.dynamicDarkColorScheme
import androidx.compose.material3.dynamicLightColorScheme
import androidx.compose.material3.lightColorScheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.SideEffect
import androidx.compose.ui.graphics.toArgb
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.platform.LocalView
import androidx.core.content.ContextCompat
import androidx.core.view.ViewCompat
import androidx.core.view.WindowCompat
private val LightColorScheme = lightColorScheme(
......
......@@ -4,7 +4,6 @@ import androidx.compose.material3.Typography
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.text.font.Font
import androidx.compose.ui.text.font.FontFamily
import androidx.compose.ui.text.font.FontStyle
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.sp
import com.isidroid.c23.R
......
......@@ -3,10 +3,10 @@ package com.isidroid.c23.utils
import com.google.gson.JsonDeserializationContext
import com.google.gson.JsonDeserializer
import com.google.gson.JsonElement
import java.lang.reflect.Type
import java.text.SimpleDateFormat
import java.util.Date
import java.util.Locale
import java.lang.reflect.Type
class DateDeserializer : JsonDeserializer<Date?> {
......
package com.isidroid.job_sender.data.source.remote
import com.isidroid.core.DiMock
import com.isidroid.job_sender.data.source.remote.api.ApiCommand
import com.isidroid.job_sender.data.source.remote.api.ApiUpload
import com.isidroid.network.ProgressEmittingRequestBody
import kotlinx.coroutines.delay
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.MediaType.Companion.toMediaTypeOrNull
import okhttp3.MultipartBody
import okhttp3.RequestBody
import okhttp3.RequestBody.Companion.asRequestBody
import java.io.File
import javax.inject.Inject
......
......@@ -2,7 +2,6 @@ package com.isidroid.job_sender.data.source.remote.api
import okhttp3.ResponseBody
import retrofit2.Call
import retrofit2.http.Body
import retrofit2.http.Field
import retrofit2.http.FormUrlEncoded
import retrofit2.http.Header
......
package com.isidroid.job_sender.domain.dto
import com.isidroid.job.constant.JobStatus
import com.isidroid.job.model.PrintJob
sealed interface JobSenderResult {
data class RenderProgress(val position: Int, val total: Int) : JobSenderResult
......
......@@ -3,10 +3,7 @@ package com.isidroid.job_sender.domain.use_case
import com.isidroid.core.DiMock
import com.isidroid.job.constant.JobStatus
import com.isidroid.job.constant.SendJobStatus
import com.isidroid.job.constant.jobStatusName
import com.isidroid.job.constant.sendJobStatusName
import com.isidroid.job_sender.repository.JobSendRepository
import timber.log.Timber
import javax.inject.Inject
import javax.inject.Singleton
......
......@@ -2,7 +2,6 @@ package com.isidroid.job_sender.ext
import android.content.Context
import android.graphics.BitmapFactory
import com.isidroid.job.constant.JobStatus
import com.isidroid.job.constant.SendJobStatus
import com.isidroid.job.model.PrintJob
import com.isidroid.job_sender.RenderBitmapProfileException
......@@ -18,7 +17,6 @@ import com.isidroid.utils.createTempFile
import com.isidroid.utils.md5
import com.isidroid.utils.saveToFile
import java.io.File
import java.util.UUID
internal fun renderBitmapForPrint(
context: Context,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment